Agent 工程纪律

通过强制执行工程工作流来约束 coding agent 行为的方法论,核心是让 Agent 少猜、少自信胡写、少写完再补测试。

#type / concept #status / evergreen #tech / ai

[!info] related notes

Agent 工程纪律

一句话定义

Agent 工程纪律是通过强制执行系统化的开发工作流来约束 coding agent 行为的方法论,目标是把 Agent 从”会写代码的聊天机器人”变成”按工程流程工作的开发协作者”。

为什么需要

普通 coding agent 的默认行为是拿到需求直接写代码。这种模式在简单任务上能用,但在真实项目中容易产生 8 类失败模式:

失败模式典型表现后果
没问清楚就写需求有歧义直接假设做出来不是用户要的
计划太粗”加个功能”一步到位多文件改动出错难定位
直接在 main 上改不开分支出问题难回滚
写完才补测试先实现后测试测试只是验证实现而非定义行为
猜 bug 原因”可能是 X,改改看”引入新问题
上下文污染长会话里连续改早期决策被后期上下文覆盖
自己写自己验写完自己说”测试通过”需求偏差无人发现
声称完成但没验证”做完了”但没跑测试实际没完成

纪律机制

每种失败模式对应一种强制约束:

没问清楚就写      → 先澄清需求,一次一个问题
计划太粗          → 写详细计划,具体到文件和代码
直接在 main 上改   → 开隔离分支/worktree
写完才补测试      → 先写失败测试(TDD)
猜 bug 原因       → 系统化调查,找根因再修
上下文污染        → 每个任务用干净的子 Agent
自己写自己验      → 实现者和审查者分离
声称完成但没验证   → 完成前必须跑测试验证

为什么在 AI 时代更重要

AI 很会写”像对的代码”,但不一定真的对。这让工程纪律从” nice to have”升级成必要约束:

  • TDD 变成可执行规格和自动验收器
  • 设计文档变成防止需求偏离的锚点
  • 代码审查变成防止幻觉代码的最后一道关
  • 隔离分支变成限制错误影响范围的沙箱

与传统工程实践的关系

Agent 工程纪律不是发明新方法,而是把已有的工程实践(TDD、code review、设计文档、分支管理)强制化、自动化。

传统场景下这些实践靠团队文化和个人习惯维持;在 Agent 场景下,它们需要被编码成 Agent 必须遵守的规则,因为 Agent 没有”职业素养”来主动坚持。

最小记忆方式

Agent 工程纪律 = 把优秀工程师的自觉行为固化成 Agent 的强制流程。

创建于 2026/5/27 更新于 2026/5/27