Tools & policy
Tools are registered through ToolContributor and executed through ToolExecutor. Providers only see ToolSpec schemas; the runtime owns policy checks, approval events, execution context, and result routing.
Built-in coding tools
read_fileandlist_filesfor scoped filesystem reads.grepandglobfor workspace discovery. With unrestricted filesystem access,globalso accepts absolute patterns outside the workspace.write_file,edit, andmulti_editfor edit-oriented models.apply_patchfor patch-oriented models, including the Responses freeform custom-tool channel for GPT-5.5.view_imagefor validated local or remote-runner image inspection by vision-capable models.echofor deterministic tests and simple harness checks.
Process tools
exec_commandstarts an interactive command session and returns either output or a session id.write_stdinsends input to an existing command session and polls recent output.unified_execexposes the Codex-shaped single-tool session contract over the same persistent process pool.shellruns a single shell command and returns aggregated output.
Process tools honor the configured command shell and the current turn deadline. In eval-profile runs, long process timeouts are capped before the finalization reserve so the model can still write a final answer or scoreable output.
Tool allowlists
Distributions can narrow the advertised tool set with [tools].allowlist. The runtime filters tool specs before they are sent to the model, which is useful for headless task-specific builds that should not expose generic editing or shell tools.
[tools]
allowlist = ["zerolang_skills_get", "zerolang_check", "zerolang_edit"]Extension tools
web_searchfrom the web-search router extension.taskfrom the subagent extension, with optional per-agent namespaced tools.agent_swarmfor bounded fanout of one prompt template across many items.knowledge_*tools for markdown-backed project knowledge documents.media_generate_image,media_attach, and related media artifact tools.zerolang_*graph-inspection and checked-edit tools from the Zerolang extension.- MCP tools loaded by
roder-ext-mcpfrom configured streamable HTTP servers. - Provider or product-specific tools installed by custom extensions.
Workspace and fork controls
Clients can branch agent work without teaching models about provider internals.Workspace forks expose thread and workspace fork methods, while tool execution still runs through the active policy mode and scoped workspace handles.
Policy modes
default- writes, process, and network are allowed subject to approval policy.accept_edits- edit tools are auto-approved while other risky operations still pass through policy.plan- blocks writes and process execution, requires user approval to exit.bypass- auto-approves all tools and emits a bypass warning event.
cargo run -p roder-cli -- --mode plan
cargo run -p roder-cli -- --mode accept-edits
cargo run -p roder-cli -- --yoloview_image, unified_exec, freeform apply_patch, and eval-profile persistence knobs.