从 "与熊搏斗" 的直觉编程,到穿上 "工程化的鞋子"
如何用 AI 重写 30 年历史、50 万行代码的 Java 游戏客户端
AI 经常声称任务完成("I'm done"),但实际上并未完成,或者 UI 还是坏的。仅仅看代码 Diff (Diffs are boring) 无法发现视觉错误(如地图闪烁、UI 错位)。
不仅仅是任务管理,而是 Agent 的 "外挂大脑"
传统的 Markdown 计划文档容易变得冗长且模糊。Beads 将每个任务转化为一个 Issue。
特性: 每个任务都有唯一的 ID (如 Y-444)、标题、标签和依赖关系。这是 "Google Maps for Plans"。
不同于 Jira (云端),Beads 坚持 Local-First。
机制: 使用 SQLite 本地存储,但数据同步到 Git Repo 中。这意味着任务历史与代码历史同构,作为永久的 "Ledger" (账本) 记录。
Beads 充当 Session 之间的桥梁。它管理 "Current Work" (当前工作),连接 "Future Work" (积压) 和 "Past Work" (历史)。
这解决了 Context Window 耗尽后,Agent "失忆" 的问题。
Steve 强调这不需要学习新技能,只需要让 Agent 去安装。
当 Context Window 即将耗尽或 Session 结束时,必须执行的标准清理程序
Agent 更新 Beads 中的任务状态,详细记录进度,并将 SQLite 状态同步到 Git。
清理所有临时分支、Stash 和未提交的更改。保持工作区整洁。
删除调试过程中生成的临时文件、日志和测试工件。
关键步骤: AI 必须根据当前进度,为"明天的自己"写一段 Prompt。这段 Prompt 包含了上下文接力棒,告诉下一个 Session 的 AI 应该从哪里开始。
飞机安全降落。第二天早上,你只需复制粘贴生成的 Prompt,即可无缝继续。
工程师角色的转变与新的瓶颈
Steve 曾写过 "Death of the Junior Developer"。但他现在的观点有所更新:
当编写代码不再是瓶颈,审查 (Review) 和合并 (Merge) 就成了最大的堵点。