跳转到内容

模式

在 Plan / Build 等模式间切换工作流。

本节是对模式(modes)的高层说明,结合 TUI 文档中的用法一起使用。

OpenCode 提供多种“模式”(Mode),用来控制当前交互是偏“规划”还是“直接修改”。最常用的两个是:

  • Plan 模式:只生成计划和说明,不直接改代码;
  • Build 模式:可以实际改文件、运行命令、执行工具。

你可以在 TUI 右下角看到当前模式,并通过 Tab 等快捷键快速切换。


Plan 模式

Plan 模式适合:

  • 设计新功能;
  • 规划重构步骤;
  • 在大改动前先让 Agent 写出执行方案。

在 Plan 模式下,OpenCode 会:

  • 侧重生成“计划文档”(例如任务分解、影响分析、实现思路);
  • 默认避免直接编辑文件或运行高风险命令;
  • 引导你先确认方案是否合理,再进入 Build 模式执行。

你可以:

  1. 切换到 Plan 模式(见下文“模式切换”);
  2. 用自然语言描述你要做的功能或重构;
  3. 多轮补充细节、让它迭代计划;
  4. 当方案满意后,再切回 Build 模式让它“按计划执行”。

Build 模式

Build 模式是日常编码时最常用的模式,它允许:

  • 编辑/创建文件;
  • 运行 bash 命令;
  • 使用 LSP、MCP 等各种工具;
  • 直接把计划落实为实际改动。

典型流程:

  1. 先在 Plan 模式下让 OpenCode写出计划;
  2. 切回 Build 模式;
  3. 告诉它“按这个计划执行”;
  4. 然后再用 /undo / /redo 管理改动(详见 TUI 文档)。

模式切换

在 TUI 中,你可以通过以下方式切换模式:

  • 使用 Tab(或对应的模式切换快捷键);
  • 打开 /help 或命令面板查看“mode”相关命令;
  • 某些自定义命令也可以内部指定切换到 Plan / Build。

切换模式不会丢失当前会话,只是改变之后消息的“执行权限”和行为倾向。


与 Agents / Permissions 的关系

模式(modes)和 Agent / Permissions 是三个不同维度:

  • Agent 决定“谁”在执行(系统提示词、专长、可用工具);
  • Mode 决定“执行策略”(只规划 vs 允许修改);
  • Permissions 决定“具体操作是否需要确认”(如 bash / edit)。

常见搭配:

  • plan Agent + Plan 模式下,做高层设计;
  • build Agent + Build 模式下,实际改代码;
  • 利用 Permissions 把高危操作设为 ask,即便在 Build 模式下也需要你点击确认。

最佳实践

  • 大改动前:先 Plan 再 Build;
  • 不确定范围的重构:在 Plan 模式里让 Agent 列出受影响文件,再人工确认;
  • 团队协作:可以约定“先提交 Plan / 再执行 Build”的流程,把 Plan 当作轻量设计文档。