Built-in tools registered in the default tool registry. Each tool includes a description, input schema, output format, risk level, concurrency, and example usage.
Returns input text unchanged. Used for runtime and SDK smoke tests.
- Risk: read
- Concurrency: parallel_safe
- Permission (default): allowed in all modes
{ "text": "string" }{ "text": "string" }{ "name": "echo", "input": { "text": "hello world" } }Read a UTF-8 workspace file after path and secret-like subject checks.
- Risk: read
- Concurrency: parallel_safe
- Subject: workspace_path from
pathinput field
{ "path": "relative/path/to/file.txt" }{ "path": "relative/path/to/file.txt", "content": "file contents" }- Path must be relative and stay under the session workspace.
- Secret-like paths (
.env, files containingsecret,token,credential,private_key) require approval or are denied in safe mode. - Absolute paths and path traversal (
..) are rejected.
Write UTF-8 content to a workspace file after path and permission checks.
- Risk: write
- Concurrency: exclusive
- Subject: workspace_path from
pathinput field
{ "path": "relative/path/to/file.txt", "content": "new file contents" }{ "path": "relative/path/to/file.txt", "bytes": 18 }- Creates parent directories if they do not exist.
- Same path restrictions as
read_fileapply. - Requires approval in default and safe modes.
Perform exact-string replacement in a file. The old_string must match exactly and be unique within the file.
- Risk: write
- Concurrency: exclusive
- Subject: workspace_path from
pathinput field
{
"path": "relative/path/to/file.txt",
"old_string": "text to find",
"new_string": "replacement text",
"replace_all": false
}{ "path": "relative/path/to/file.txt", "replacements": 1 }replace_alldefaults tofalse. Whenfalse, the old_string must appear exactly once.- When
replace_allistrue, all occurrences are replaced andreplacementsreflects the count. - Same path restrictions as
read_fileapply.
Find files matching a glob pattern. Returns paths sorted by modification time (most recent first).
- Risk: read
- Concurrency: parallel_safe
- Subject: workspace_path from
pathinput field (directory accepted)
{ "path": ".", "pattern": "**/*.rs" }{ "files": ["src/main.rs", "src/lib.rs"], "count": 2 }pathdefaults to.(current directory).- Results are limited to 500 files.
- Skips
.git,target, andnode_modulesdirectories.
Search file contents using regex patterns. Supports content, files_with_matches, and count output modes.
- Risk: read
- Concurrency: parallel_safe
- Subject: workspace_path from
pathinput field (directory accepted)
{
"path": ".",
"pattern": "fn main",
"output_mode": "content",
"glob": "*.rs",
"head_limit": 200
}{
"matches": ["src/main.rs:1:fn main() {"],
"count": 1
}{ "files": ["src/main.rs"], "count": 1 }{
"entries": [{ "file": "src/main.rs", "count": 1 }],
"total_files": 1
}pathdefaults to..output_modedefaults tocontent. Options:content,files_with_matches,count.globis an optional file filter (e.g.*.rs).head_limitdefaults to 200.- Uses the
regexcrate for pattern matching.
Execute a PowerShell command after destructive-command classification.
- Risk: shell
- Concurrency: exclusive
- Subject: powershell_command from
commandinput field
{
"command": "Write-Output hello",
"timeout": 120,
"run_in_background": false
}{
"command": "Write-Output hello",
"stdout": "hello\r\n",
"stderr": "",
"exit_code": 0,
"success": true
}- Destructive commands (
Remove-Item,rm,del /s,erase /s,Clear-Content,Format-Volume,Stop-Computer) are hard-denied in every permission mode, including Yolo. timeoutdefaults to 120 seconds, capped at 600 seconds.run_in_backgroundreturns a placeholder response (background execution not yet implemented).- Requires approval in default and auto modes. Denied in safe mode. Allowed in Yolo mode.