入门教程 · Lesson 05
完成第一次安全会话
认识 Plan、文件引用与会话命令,让 OpenCode 先观察、再计划、最后做一个可验证的小修改。
完成后你能:
- 识别 OpenCode 的高频命令与输入语法
- 把目标、范围和验收标准写进任务
- 先使用只读探索,再授权修改
- 用 Git Diff 与命令结果验证交付
第一次会话不做完整网站。我们只让 Agent 改进 README,并观察从指令到证据的整个过程。
先认识高频命令与输入语法
OpenCode 的斜杠命令用于控制会话;@ 和 ! 则把文件或命令结果带进当前上下文。先记住下面这些,不需要一次全部使用:
| 输入 | 作用 | 什么时候用 |
|---|---|---|
Tab 切到 Plan |
切换到只读规划 Agent | 大改动前先探索、比较方案,不授权编辑 |
/init |
扫描仓库并创建或更新 AGENTS.md |
建立项目长期规则;下一课再实际执行 |
@README.md |
精确引用文件并加入当前上下文 | 明确告诉 Agent 应重点阅读什么 |
!git status |
直接运行 Shell,并把输出加入会话 | 快速提供仓库状态、测试或诊断证据 |
/compact |
总结当前长会话,释放上下文空间 | 任务仍要继续,但对话已经很长 |
/new |
开始一个空白新会话;别名是 /clear |
当前任务已经结束,要切换到新目标 |
/sessions |
查看并恢复旧会话;别名是 /resume |
回到之前尚未结束的任务 |
/models |
查看和选择可用模型 | Provider 已连接,需要切换模型时 |
/undo、/redo |
撤销或重做最近一轮消息及文件改动 | Agent 改错且仓库处于 Git 管理下 |
/help |
打开当前版本的帮助 | 忘记命令或快捷键时 |
命令和快捷键会随版本变化。使用前可在 /help 中确认,也可核对 OpenCode TUI 官方文档。
第一步:只读探索
在仓库中启动 OpenCode:
cd "$HOME/workspace/vibe_coding_guide"
opencode
按 Tab 切换到 Plan,然后输入:
先不要修改文件。
请检查当前仓库结构、@README.md 和 Git 状态,然后说明:
1. 这个项目现在有什么;
2. 下一步最小、可验证的改进是什么;
3. 你准备读取和修改哪些文件。
好的回复应该承认仓库几乎为空,并把范围限制在 README。若它声称看到了不存在的文件,先指出事实,不要继续授权。
你也可以直接输入 !git status,把未经模型转述的 Git 输出加入会话。它适合补充证据,但不能替代你最后在独立终端中的人工核对。
第二步:给出完整任务
目标:把 README 改成当前 Vibe Coding 教程项目说明。
范围:只允许修改 README.md,不创建其他文件,不安装依赖。
内容:教程目标、课程结构、技术约束、完成定义。
验收:
1. Markdown 结构清晰;
2. 不包含真实姓名、密钥或内部地址;
3. 修改后展示 git diff;
4. 不执行 git commit。
请先给出 3 步计划,等我确认后再修改。
先阅读计划。只有计划符合范围,才回复“按计划执行”。
第三步:自己查看证据
退出或另开终端:
git status
git diff -- README.md
逐行检查:
- 只修改了 README;
- 内容符合目标;
- 没有虚构已经完成的网站功能;
- 没有敏感信息。
如果不满意,不要只说“再好一点”。指出具体差异,例如“完成定义必须写成可勾选的四项,并删除没有证据的完成描述”。
第四步:接受并提交
确认内容后:
git add README.md
git commit -m "Clarify tutorial project README"
git status
任务结束后怎样处理会话
- 任务还没结束、但上下文已经很长:使用
/compact; - README 任务已结束,准备开始无关任务:使用
/new; - 以后想回到这次会话:使用
/sessions或/resume; - Agent 最近一轮修改方向完全错误:先检查
git diff,再决定是否使用/undo。
不要把 /compact 当成新会话:它保留任务连续性,只压缩历史。也不要把 /new 当成删除记录:旧会话仍可从会话列表恢复。
如果 Agent 越界
先停止当前动作,再用 git status 和 git diff 确认影响。不要立刻运行 Agent 建议的清理命令。如果只有未提交文件修改,可以逐个决定保留或恢复;涉及安装、网络或系统文件时,记录命令并联系管理员。
完成检查