Tools Overview
proto’s built-in tools are the functions the model calls to interact with your local environment. You do not call them directly — proto invokes them based on what you ask for.
How tools work
- You send a prompt.
- proto sends the prompt plus tool schemas to the model API.
- The model decides which tool to call and with what parameters.
- proto validates the call, asks for confirmation if required (based on approval mode), and executes it.
- The result is sent back to the model for the next step.
Tool categories
| Category | Tools |
|---|---|
| File System | read_file, write_file, edit, glob, grep_search, list_directory |
| Multi-File Read | read_many_files |
| Shell | run_shell_command |
| Task management | task_create, task_update, task_list, task_get, task_ready, task_output, task_stop |
| Todo | todo_write |
| Exit Plan Mode | exit_plan_mode |
| Web Fetch | web_fetch |
| Web Search | web_search |
| Memory | save_memory |
| Browser | browser — Web browser automation (requires agent-browser) |
| MCP Servers | Dynamic tools from connected MCP servers |
| Sandbox | Isolation for shell and file tools |
Confirmation and safety
- Tools that write files or run shell commands require explicit confirmation by default.
- Change the approval mode with
/approval-modeorShift+Tab. - Configure per-tool policies with hooks. See Guides → Use Hooks.
- Sandboxing further restricts what tools can do. See Guides → Sandboxing.
MCP tools
Tools from MCP servers appear alongside built-in tools. Configure servers in settings.json or with proto mcp add. See Guides → Connect via MCP.
Last updated on