词元之母TOK.MOM - 平台充值汇率 1:1 即 1 人民币充值到账 1 美元,支持一个 Key 调用近 600+ 海内外模型,限时特价模型低至 1 折,欢迎上岸!
💡 一句话总结:Plan Agent 只读分析,Build Agent 读写执行。按 Tab 切换。

确保你已经完成以下事项:
@ 提及(详见 3.2 认识 Agent)| Agent | 类型 | 说明 |
|---|---|---|
| Build | Primary | 默认助手,所有工具可用,适合开发工作 |
| Plan | Primary | 受限助手,权限询问,适合分析和规划 |
| 权限 | Plan Agent | Build Agent |
|---|---|---|
edit(写/改文件) | deny(禁止源代码,仅允许计划文件) | allow |
bash(执行命令) | allow | allow |
read、grep、glob 等 | allow | allow |
⚠️ 注意:Plan Agent 可以编辑 .opencode/plans/*.md计划文件,但不能编辑项目源代码。
| 你的需求 | 推荐模式 | 原因 |
|---|---|---|
| 写新功能 | Build | 直接开发效率高 |
| 修简单 Bug | Build | 影响范围明确 |
| 重构核心模块 | 先 Plan 后 Build | 先分析影响,再动手 |
| 学习新代码库 | Plan | 安全探索,不会误改 |
| 不确定改动影响 | Plan | 分析完再决定 |
| 快速原型验证 | Build | 迭代速度优先 |
| 团队协作任务 | 先 Plan 后 Build | 计划可审核,执行可追溯 |
| 代码审查 | Plan | 只读 分析,不修改 |
| 工具 | 说明 |
|---|---|
read | 读取文件内容 |
grep | 搜索文件内容 |
glob | 按模式查找文件 |
list | 列出目录内容 |
webfetch | 获取网页内容 |
| 工具 | 说明 |
|---|---|
write | 创建新文件 |
edit | 修改现有文件 |
bash | 执行 Shell 命令 |
opencode.jsonc 中配置:{
"$schema": "https://opencode.ai/config.json",
"agent": {
// Build Agent 配置
"build": {
"mode": "primary",
"model": "anthropic/claude-opus-4-5-thinking",
"temperature": 0.3,
"permission": {
"edit": "allow",
"bash": "allow"
}
},
// Plan Agent 配置
"plan": {
"mode": "primary",
"model": "anthropic/claude-opus-4-5-thinking",
"temperature": 0.1,
"permission": {
"edit": {
"*": "deny", // 禁止编辑所有源代码
".opencode/plans/*.md": "allow" // 只允许编辑计划文件
},
"bash": "allow"
}
}
}
}model:使用的模型,格式为 provider/model-idtemperature:控制随机性(0-1),值越低越专注permission.edit:文件编辑权限"allow":允许编辑"deny":禁止编辑{ "*": "deny", ".opencode/plans/*.md": "allow" }permission.bash:命令执行权限(allow/deny)💡 提示:配置文件支持 JSONC 格式,可以添加 //注释。
Plan 或 Build。Plan。@src/main.ts 分析这个文件的结构,列出所有函数和它们的作用read 工具读取文件,分析结构。由于 Plan Agent 被禁止编辑源代码,AI 不会直接修改文件。Build。给 @src/main.ts 添加详细的 JSDoc 注释edit 工具修改文件,添加注释。你可以审核更改后决定是否接受。/undo| 你说的话 | AI 会做什么 |
|---|---|
| "用 TODO 跟踪进度" | 创建任务列表,逐步更新状态 |
| "分步骤完成" | 自动拆分任务,边做边更新 |
| "当前进度怎么样?" | 汇报已完成/进行中/待处理 |
你: 帮我重构用户认证模块,用 TODO 跟踪进度
AI: 好的,我先创建任务列表:
✅ 1. 分析现有代码结构
🔄 2. 设计新的认证流程
⏳ 3. 重写认证逻辑
⏳ 4. 更新测试用例
⏳ 5. 验证功能
开始执行第一项...
你: 当前进度?
AI: 让我查看一下...
✅ 1. 分析现有代码结构(已完成)
✅ 2. 设计新的认证流程(已完成)
🔄 3. 重写认证逻辑(进行中,预计 5 分钟)
⏳ 4. 更新测试用例
⏳ 5. 验证功能💡 原理:AI 内部有 todoread和todowrite工具。你不用管工具细节,只需要在提示词里说"用 TODO 跟踪"即可。
全部通过才能继续
.opencode/plans/*.md 计划文件| 现象 | 原因 | 解决 |
|---|---|---|
| 想让 AI 改文件但没改 | 可能在 Plan Agent,它被禁止编辑源代码 | 按 Tab 切换到 Build |
| AI 改了不该改的文件 | 在 Build Agent,权限是 allow | 用 /undo 撤销,下次用 Plan 先分析 |
| Plan Agent 无法编辑源代码 | 这是设计如此,Plan 只能编辑计划文件 | 切换到 Build 执行修改 |
temperature(如 0.1),输出更专注和确定;Build Agent 使用中等值(如 0.3),在专注和创造力之间平衡。{
"agent": {
"plan": {
"steps": 5 // 最多 5 次工具调用
}
}
}agent_cycle 键绑定:{
"keybinds": {
"agent_cycle": "tab", // 切换到下一个 Agent(默认值)
"agent_cycle_reverse": "shift+tab" // 切换到上一个 Agent(默认值)
}
}OPENCODE_EXPERIMENTAL=true 或 OPENCODE_EXPERIMENTAL_PLAN_MODE=true| 工具 | 作用 | 可用 Agent |
|---|---|---|
plan_enter | 进入 Plan 模式 | Build Agent 可用 |
plan_exit | 退出 Plan 模式,回到 Build | Plan Agent 可用 |
你: 这个模块需要重构,先帮我分析一下,不要直接改
AI: [调用 plan_enter 工具]
→ 弹出确认框:是否切换到 Plan 模式?
→ 你选择 Yes
→ AI 在 Plan 模式下分析代码
→ 生成计划文件 .opencode/plans/xxx.md
你: 计划看起来不错,开始实施吧
AI: [调用 plan_exit 工具]
→ 弹出确认框:是否切换到 Build 模式?
→ 你选择 Yes
→ AI 在 Build 模式下执行修改.opencode/plans/*.md),不能修改源代码。这确保了"规划"和"执行"的安全隔离。| 级别 | 路径 | 说明 |
|---|---|---|
| 项目级 | .opencode/plans/<created>-<slug>.md | 保存在项目目录,跟随项目 |
| 全局级 | ~/.local/share/opencode/plans/<created>-<slug>.md | 保存在全局目录,跨项目共享 |
created是创建时间戳,slug是计划标题的 URL 友好格式。例如:1736854321-refactor-auth.md
.opencode/plans/~/.local/share/opencode/plans/💡 这些功能进阶时再深入,当前阶段了解即可。
agent_cycle)在 Agents 之间切换.opencode/plans/*.md 计划文件更新时间:2026-02-14
| 功能 | 文件路径 | 行号 |
|---|---|---|
| Build Agent 定义 | packages/opencode/src/agent/agent.ts | 77-91 |
| Plan Agent 定义 | packages/opencode/src/agent/agent.ts | 92-114 |
| 默认权限规则 | packages/opencode/src/agent/agent.ts | 55-73 |
| plan_enter 工具 | packages/opencode/src/tool/plan.ts | 75-130 |
| plan_exit 工具 | packages/opencode/src/tool/plan.ts | 20-73 |
| Plan 模式提示词 | packages/opencode/src/session/prompt.ts | 1451-1455 |
plan_enter:从 Build 切换到 Plan 的工具plan_exit:从 Plan 切换到 Build 的工具allow:允许执行deny:拒绝执行ask:询问用户确认下一课我们将认识 Agent 系统,学会调用不同专家完成任务。