#Vibe Coding#AI Agent#DevOps#开源

Vibe Coding 跨会话重启摘要:让新会话从可验证现场续作

新会话只收到“继续刚才的任务”,往往会重复操作、相信旧测试或覆盖未提交改动。本文设计一份重启摘要,分开已确认事实、工作树现状、已完成步骤、未决决策与下一条安全动作。

本文要点

  • 主题聚焦:Vibe Coding、AI Agent、DevOps、开源
  • 适合人群:独立开发者、全栈工程师、AI 应用开发者
  • 核心价值:快速理解背景、实践路径、常见误区和工程建议
作者 @admin·发布于 2026年7月30日·更新于 2026年7月30日

长会话越来越慢、工具中断或工作隔夜后,开启新会话通常是正确选择。危险的是只留一句“登录跳转已经改了一半,继续”。新会话不知道“一半”包含哪些文件,不知道测试是在最后一次编辑前还是之后运行,也不知道工作树里的其他改动属于谁。它只能重新探索,或把旧叙述误当成当前事实。

重启摘要不是聊天记录的压缩版,也不是要求新模型相信上一轮模型。它是一张启动索引:标明任务合同、当前现场、证据位置和下一步,但要求接收方在写文件前重新读取易变事实。编程 Agent 到开发者的接管检查点关注 Agent 暂停后的人类接管;这里聚焦同一开发者主动切换 AI 会话时,如何避免继承失效上下文。

摘要分成事实、行动与判断

“已修复认证问题”把三种东西混在了一起:代码发生了变化,这是事实;上一会话执行了编辑,这是行动;问题已经解决,这是判断。新会话需要分别验证。事实绑定文件和 revision,行动绑定命令回执,判断绑定验收结果;没有证据的判断写成假设。

重启摘要至少包含六段:

  1. 任务目标、非目标和最新用户决定。
  2. 基线 commit、分支、工作树状态及采集时间。
  3. 已改文件与每个改动的意图,不粘贴整段代码。
  4. 已运行验证,注明命令、退出码和覆盖的工作树快照。
  5. 未决问题、被否定方案和仍需人工决定的事项。
  6. 下一条最小安全动作,以及明确禁止重复的副作用。

这六段的顺序很重要:接收方先知道为什么做,再看现场,而不是从某条失败日志开始自行推导需求。

工作树现场必须重新采集

会话结束前记录 HEAD、分支和 git status --short,并区分 staged、unstaged、untracked。若有用户原先就存在的修改,应明确标为 pre-existing, do not alter;若无法确认归属,标为 ownership unknown。不要自动 stash、reset 或提交来制造“干净现场”,因为那会改变要移交的事实。

yaml
baseline: 4f901aa
statusCapturedAt: 2026-07-30T18:20:00+08:00
changes:
  - path: src/auth/return-path.ts
    owner: current-task
    intent: 拒绝外站跳转
  - path: README.md
    owner: pre-existing
    instruction: do-not-edit

接收会话必须再次执行只读状态命令,并与摘要对比。若 HEAD、文件集合或内容已变化,旧验证结果降级为历史证据,下一步计划重新计算。大型 Monorepo 的索引新鲜度处理索引的同类问题:时间戳新不代表它属于当前代码代际。

测试结果要绑定最后一次编辑

“测试通过”没有说明是哪条命令、在哪个目录、是否需要服务、测试后有没有继续修改。为每项验证记录命令、退出码、时间、相关文件摘要或至少当时的 HEAD+dirty 标识。若上一会话在测试后又编辑,状态写 stale,不能继续报告通过。

失败也要保留,但只保留首个可行动根因、关键输出和完整日志位置。编程 Agent 命令执行回执给出了命令事实与脱敏原则;重启摘要只引用回执,不应复制可能含令牌或用户数据的原始终端输出。

已否定方案不能只写“没用”

新会话若不知道为何放弃某条路,很可能重复同一实验。记录尝试、观察结果和否定条件,例如“在页面组件修正 return URL 无效,因为服务端回调会再次覆盖;测试 rejects external returnTo 仍失败”。这不是要求永久禁止该方案;若代码或前提改变,可重新评估,但要明确变化证据。

同样,未决决策不能被摘要作者替用户拍板。把选项、影响和阻塞点留下:例如“是否允许跨子域跳转需产品确认,当前实现 fail closed”。新会话可以继续无争议的只读调查,不得把暂定选择悄悄写成最终规则。

下一步只给一个可验证动作

重启摘要不要生成十步宏大计划。指出下一条最小动作及完成判据,例如“重读回调和两个调用方,确认工作树未变化;然后只修改负向测试使它先失败”。若下一步涉及部署、数据库写入、发布或外部通知,要明确需要重新授权,不能因为上一会话曾获许可就自动复用。

接收方的启动协议可以固定为:读仓库规则,核对状态,重读任务涉及文件,抽查摘要中的两个关键事实,确认验证是否仍新鲜,再复述允许范围。只有全部一致才进入编辑。编程 Agent 的上下文预算可控制新会话载入量,任务上下文包则提供稳定的任务合同;重启摘要只记录自合同之后发生了什么。

摘要的退出条件不是文字写完,而是另一个空白会话能据此完成冷启动核对,指出哪些事实已确认、哪些已经失效,并在不重做副作用、不触碰他人改动的情况下执行下一步。做不到时,应补充证据索引,而不是继续增加叙事。

延伸阅读

Related

相关推荐