Code Reader
首页
帮助
设计文档
首页
帮助
设计文档
  • Tools 索引

Tools 索引

本目录包含 OpenCode 所有可用工具的详细文档。

概述

OpenCode 提供了丰富的工具集,支持 AI 助手执行各种操作,包括文件操作、命令执行、Web 交互、代码搜索等。每个工具都有明确的参数定义、执行逻辑和返回格式。

工具分类

文件操作(7 个)

这些工具用于读取、写入、编辑和搜索文件。

工具说明文档
read读取文件内容read.md
write写入文件内容write.md
edit编辑文件(基于行号)edit.md
apply-patch应用补丁(diff 格式)apply-patch.md
glob文件模式匹配glob.md
grep内容搜索grep.md
ls目录列表ls.md

典型场景:

  • 读取配置文件和源代码
  • 创建和修改文件
  • 搜索特定内容或文件
  • 应用代码变更(补丁)

命令执行(2 个)

这些工具用于在系统中执行 Shell 命令。

工具说明文档
bash执行 Shell 命令bash.md
batch批处理命令(实验性)batch.md

典型场景:

  • 运行构建、测试和部署命令
  • 执行 Git 操作
  • 管理依赖和包管理器

Agent 通信(1 个)

支持 Agent 之间通信的工具。

工具说明文档
task启动子 Agenttask.md

Web 操作(2 个)

与 Web 服务交互的工具。

工具说明文档
webfetch获取 Web 内容webfetch.md
websearchWeb 搜索websearch.md

代码搜索(1 个)

语义化代码搜索工具。

工具说明文档
codesearch语义代码搜索codesearch.md

任务管理(2 个)

用于管理待办事项列表的工具。

工具说明文档
todowrite写入 Todotodowrite.md
todoread读取 Todotodoread.md

用户交互(1 个)

与用户进行交互的工具。

工具说明文档
question向用户提问question.md

高级功能(3 个)

高级和特殊用途的工具。

工具说明文档
skill技能系统skill.md
lspLSP 工具(实验性)lsp.md
multiedit多文件编辑multiedit.md

内部/实验性(4 个)

内部使用或实验性的工具。

工具说明文档
invalid错误处理invalid.md
external-directory外部目录权限external-directory.md
plan-enter进入计划模式plan-enter.md
plan-exit退出计划模式plan-exit.md

典型场景:

  • 委派子任务给专门的 Agent
  • 并行执行多个独立任务
  • 实现任务拆分和并行处理

Web 操作(2 个)

与 Web 服务交互的工具。

工具说明文档
webfetch获取 Web 内容webfetch.md
websearchWeb 搜索websearch.md

典型场景:

  • 获取文档和 API 文档
  • 搜索技术问题和解决方案
  • 下载资源文件

代码搜索(1 个)

语义化代码搜索工具。

工具说明文档
codesearch语义代码搜索codesearch.md

典型场景:

  • 查找代码模式和实现
  • 搜索最佳实践
  • 定位函数和类的使用示例

任务管理(2 个)

用于管理待办事项列表的工具。

工具说明文档
todowrite写入 Todotodowrite.md
todoread读取 Todotodoread.md

典型场景:

  • 追踪任务进度
  • 管理开发任务列表
  • 组织复杂的开发工作流

用户交互(1 个)

与用户进行交互的工具。

工具说明文档
question向用户提问question.md

典型场景:

  • 请求用户确认或选择
  • 收集用户偏好
  • 澄清模糊的需求

高级功能(3 个)

高级和特殊用途的工具。

工具说明文档
skill技能系统skill.md
lspLSP 工具(实验性)lsp.md
multiedit多文件编辑multiedit.md

典型场景:

  • 重用预定义的技能
  • LSP 集成(代码补全、诊断)
  • 批量编辑多个文件

内部/实验性(4 个)

内部使用或实验性的工具。

工具说明文档
invalid错误处理invalid.md
external-directory外部目录权限external-directory.md
plan-enter进入计划模式plan-enter.md
plan-exit退出计划模式plan-exit.md

典型场景:

  • 错误处理和工具回退
  • 访问外部目录权限管理
  • 计划模式的工作流

工具总览表

ID名称分类文档
invalidinvalid内部invalid.md
bashbash命令执行bash.md
readread文件操作read.md
globglob文件操作glob.md
grepgrep文件操作grep.md
editedit文件操作edit.md
writewrite文件操作write.md
tasktaskAgent 通信task.md
webfetchwebfetchWeb 操作webfetch.md
todowritetodowrite任务管理todowrite.md
todoreadtodoread任务管理todoread.md
websearchwebsearchWeb 操作websearch.md
codesearchcodesearch代码搜索codesearch.md
skillskill高级功能skill.md
apply-patchapply-patch文件操作apply-patch.md
questionquestion用户交互question.md
lsplsp高级功能lsp.md
batchbatch命令执行batch.md
multieditmultiedit高级功能multiedit.md
external-directoryexternal-directory内部external-directory.md
plan-enterplan-enter内部plan-enter.md
plan-exitplan-exit内部plan-exit.md

使用指南

选择合适的工具

1. 文件操作

  • 读取文件:使用 read
  • 写入文件:使用 write 或 edit
  • 搜索文件:使用 glob
  • 搜索内容:使用 grep
  • 应用变更:使用 apply-patch

2. 命令执行

  • 一般命令:使用 bash
  • 批处理:使用 batch(实验性)

3. Web 交互

  • 获取内容:使用 webfetch
  • 搜索信息:使用 websearch

4. Agent 协作

  • 委派任务:使用 task

5. 代码搜索

  • 语义搜索:使用 codesearch

6. 任务管理

  • 管理 Todo:使用 todowrite 和 todoread

7. 用户交互

  • 提问用户:使用 question

工具组合模式

模式 1:读取 → 分析 → 修改

read → grep → edit → write

模式 2:搜索 → 批处理

glob → bash (multiple files) → task (parallel processing)

模式 3:Web 获取 → 处理

websearch → webfetch → write

模式 4:用户确认 → 执行

question → bash (based on answer)

相关文档

  • Tool System - Tool 系统实现机制
  • Agent - Agent 配置
  • Permission - 权限系统
  • Plugin - 插件系统

变更历史

版本变更内容日期
v1初始工具索引-