Tools
Learn how Bob uses specialized tools to read files, edit code, run commands, and interact with your development environment.
Tool workflow
When you work with Bob, it determines the appropriate actions. For each step, Bob will:
- Select the appropriate tool based on your request
- Present the tool with its parameters for your review
- Run the approved tool and show you the results
- Continue this process until your task is complete
Tool categories
Bob's tools are grouped by their primary function. Understanding these categories helps you see how Bob performs different tasks.
Read tools
Read tools let Bob access file content and understand code structure without making changes.
| Tool | Purpose | Example use |
|---|---|---|
read_file | Read the contents of one or more files | View configuration files, examine source code |
search_files | Search across files using regex | Find TODOs, locate function definitions |
list_files | List files and directories | Explore project structure, find file types |
list_code_definition_names | Extract class, function, and method names | Get an overview of code organization |
Bob uses read tools when your request involves reviewing code, searching for patterns, or examining project structure.
Write tools
Write tools let Bob create new files or modify existing code.
| Tool | Purpose | Example use |
|---|---|---|
write_to_file | Create a new file or overwrite an existing file | Generate new components, create configuration files |
apply_diff | Apply targeted changes to specific parts of a file | Update function logic, fix bugs, refactor code |
insert_content | Insert content at a specific position in a file | Add imports, insert new functions |
Bob uses write tools when your request involves creating files, implementing features, fixing bugs, or refactoring code.
Command tools
Command tools let Bob run commands and perform system operations.
| Tool | Purpose | Example use |
|---|---|---|
execute_command | Run CLI commands in your workspace | Install dependencies, run tests, build projects |
Bob uses command tools when your request involves running commands, installing packages, running scripts, or performing system operations.
MCP tools
MCP tools let Bob extend its capabilities through connected Model Context Protocol (MCP) servers.
| Tool | Purpose | Example use |
|---|---|---|
use_mcp_tool | Access tools provided by connected MCP servers | Query databases, interact with APIs, access external services |
Bob uses MCP tools when your request involves capabilities provided by configured MCP servers.
Mode tools
Mode tools let Bob switch between different modes for specialized tasks.
| Tool | Purpose | Example use |
|---|---|---|
switch_mode | Change to a different mode (Code, Plan, Ask, etc.) | Switch to Plan mode for architecture design, Code mode for implementation |
Bob uses mode tools when your request is better handled by a different mode and its specialized capabilities.
Question tools
Question tools let Bob gather additional information needed to complete tasks.
| Tool | Purpose | Example use |
|---|---|---|
ask_followup_question | Request clarification or additional detail | Ask about preferred implementation approach, request missing information |
Bob uses question tools when your request requires more information or clarification before Bob can proceed.