# Deep dive into OpenCode's tool system architecture OpenCode 实现了 45+ 个工具(`packages/opencode/src/tool/`),包括 bash、edit、read、write、grep、glob 等。 ## 探索方向 - 工具注册和发现机制(`tool/registry.ts`) - 工具的权限控制和沙箱隔离 - 批量工具执行(`batch.ts`)的实现 - LSP 集成工具(`lsp.ts`)如何与语言服务器通信 - 工具描述文件(`.txt` 文件)如何生成 AI 提示词 - 工具的 schema 定义和验证 ## 价值 了解如何构建可扩展的 AI Agent 工具系统 ## 相关文件 - `packages/opencode/src/tool/` (45+ tool implementations) - `packages/opencode/src/tool/registry.ts` - `packages/opencode/src/tool/batch.ts` - `packages/opencode/src/tool/lsp.ts` - `packages/opencode/src/tool/schema.ts` ## 工具列表示例 ``` apply_patch, bash, batch, codesearch, edit, glob, grep, ls, lsp, multiedit, plan, question, read, skill, task, todo, webfetch, websearch, write, 等 ```
Deep dive into OpenCode's tool system architecture
OpenCode 实现了 45+ 个工具(
packages/opencode/src/tool/),包括 bash、edit、read、write、grep、glob 等。探索方向
tool/registry.ts)batch.ts)的实现lsp.ts)如何与语言服务器通信.txt文件)如何生成 AI 提示词价值
了解如何构建可扩展的 AI Agent 工具系统
相关文件
packages/opencode/src/tool/(45+ tool implementations)packages/opencode/src/tool/registry.tspackages/opencode/src/tool/batch.tspackages/opencode/src/tool/lsp.tspackages/opencode/src/tool/schema.ts工具列表示例