Built-in Tools
Tools that ship with the Codebolt server. These always exist — no installation needed. Agents can use them subject to their allowlist.
For exact schemas and signatures, see Reference → Built-in Tools. This page is the overview.
Tool families
codebolt_fs — filesystem
read_file,read_many_files— read file contentswrite_file,edit_file— create or modify fileslist_files,list_directory— directory listingsearch,grep_search,fuzzy_file_search— find text or fileslist_code_definitions— symbols in a file
codebolt_git — git
status,diff,logs,branch— read operationsadd,commit,checkout,init,clone,pull,push— write operations
Also integrates with shadow git for checkpoint support.
codebolt_code — code analysis
analyze_code— semantic analysis of a fileformat— run a formatterlist_code_definitions— symbols (also available undercodebolt_fs)
codebolt_codebase — project-wide queries
codebolt_search— semantic search across the whole codebasesearch_mcp_tool— find relevant MCP tools for a task
codebolt_browser — browser control
browser_action— navigate, click, type, read page contentdebug_open_browser— open a debugger in the browser
codebolt_chat — chat integration
send_chat_message— post to the current threadget_chat_history— read prior turns
codebolt_debug — debugging
debug_add_log— inject a log pointdebug_open_browser— browser-based debugging
codebolt_memory — memory access
memory_get— read a memory entrymemory_set— write one
Wraps the memory layers with a single tool-accessible surface.
codebolt_state — run state
state_add_agent— add a sibling agent to the run state- (and other state-manipulation tools)
codebolt_agent — agent management
find— search for available agentslist— list installed agentsget_detail— inspect an agent's manifeststart— spawn a child agent run
This is how multi-agent orchestration happens at runtime.
codebolt_config — configuration
configure_mcp,configure_nrcp— set MCP server config programmatically
Tool naming conventions
The codebolt_ prefix identifies built-ins. Within a family, tools are named by verb:
codebolt_fs.read_file— verb isread_filecodebolt_git.commit— verb iscommit
Some families have legacy aliases (codebolt_basic.*, codebolt.*). The canonical names are the codebolt_<family> ones.
Tool descriptions
Every tool has a description the LLM reads to decide when to call it. You can see them with:
codebolt tool describe codebolt_fs.read_file
For custom agents, you can override these descriptions to steer behaviour — see Unified Agent → Overriding tool descriptions.
Allowlisting
Agents declare which tools they can use in their tools.allow list. Glob patterns work:
tools:
allow:
- codebolt_fs.* # all fs tools
- codebolt_git.read_* # only read-side git
- codebolt_browser.browser_action # just one
deny:
- codebolt_fs.write_file # explicit block
deny wins over allow.
Guardrail restrictions
Even when an agent's allowlist permits a tool, guardrails can block specific calls. Default guardrails include:
- No writes to
.git/,.codebolt/shadow-git/, ornode_modules. - No shell commands matching known dangerous patterns.
- No
codebolt_git.pushto protected branches. - No writes outside the workspace root.
See Guardrails & Eval (internals).
Extending the built-ins
You can't add to the built-in set without modifying the server, but you can:
- Install an MCP server that provides additional tools in a new namespace.
- Install a capability bundle that bundles tools with prompts.
- Write a hook that transparently modifies built-in tool behaviour.
See MCP Tools.