核心概念

工具

了解 Bob Shell 如何使用专用工具从命令行读取文件、编辑代码、运行命令并与您的开发环境交互。

工具工作流程

当您用自然语言描述想要完成的任务时,Bob Shell 将:

  1. 根据您的请求选择适当的工具。
  2. 将工具及其参数呈现给您进行审查。
  3. 运行已批准的工具并向您显示结果。
  4. 持续此过程,直到您的任务完成。

工具类别

Bob Shell 的工具按主要功能分类组织。了解这些类别有助于您了解 Bob Shell 的能力及其完成任务的方式。

读取工具

访问文件内容并理解代码结构,不做任何修改。

工具用途使用示例
read_file读取一个或多个文件的内容查看配置文件、检查源代码
search_files使用正则表达式在多个文件中搜索模式查找所有 TODO 注释、定位函数定义
list_files列出指定路径中的文件和目录探索项目结构、查找特定文件类型
list_code_definition_names从源文件中提取类名、函数名和方法名了解代码组织概况

Bob Shell 何时使用读取工具: 当您要求 Bob Shell 审查代码、查找特定模式或了解项目结构时。

写入工具

精确地创建新文件或修改现有代码。

工具用途使用示例
write_to_file创建新文件或完全重写现有文件生成新组件、创建配置文件
apply_diff对文件的特定部分进行有针对性的修改更新函数逻辑、修复 bug、重构代码
insert_content在文件的特定位置添加新行添加导入、插入新函数

Bob Shell 何时使用写入工具: 当您要求 Bob Shell 创建文件、实现功能、修复 bug 或重构代码时。

命令工具

在终端中运行命令并执行系统操作。

工具用途使用示例
execute_command在工作区中运行 CLI 命令安装依赖、运行测试、构建项目

Bob Shell 何时使用命令工具: 当您要求 Bob Shell 运行命令、安装包、执行脚本或完成系统操作时。

MCP 工具

通过 Model Context Protocol 服务器扩展 Bob Shell 的能力。

工具用途使用示例
use_mcp_tool访问已连接 MCP 服务器提供的工具查询数据库、与 API 交互、访问外部服务

模式工具

在不同的 Bob Shell 模式之间切换,以完成专项任务。

工具用途使用示例
switch_mode切换到不同的模式(Agent、Plan、Ask 等)切换到 Plan 模式进行架构设计,Agent 模式进行实现

Bob Shell 何时使用模式工具: 当当前任务能从不同模式的专项能力中获益时。

问题工具

收集完成任务所需的额外信息。

工具用途使用示例
ask_followup_question向您请求澄清或额外细节询问首选实现方式、请求缺失信息

工具组

工具组是相关工具的命名集合,可以一起启用或禁用。使用工具组可以限制 Bob Shell 在特定会话中的操作范围——例如,在只读审计中阻止文件写入,或在受控环境中禁用命令执行。

可用工具组

包含的工具Agent 默认Plan 默认Ask 默认
read文件读取、搜索和列出工具
edit文件写入和 diff 工具
executeShell 命令执行工具
mcpMCP 服务器工具
skill技能相关工具
todo待办事项管理工具
subagent子代理生成工具
mode模式切换工具

禁用工具组

bob runbob chat 传递 --disable-tool-groups,并以逗号分隔的组名列表:

# 禁用命令执行和 MCP 工具
bob run --disable-tool-groups execute,mcp "Review @src/"

# 以只读模式运行
bob run --disable-tool-groups edit,execute,mcp "Summarize the codebase"

您也可以使用专用标志一次性禁用所有 MCP 服务器:

bob run --disable-mcp "Explain @app.js"
这个主题怎么样?