把过去写过的 Spec、坏味道、设计模式、防线、Landing Zone、Agentic Coding 串成一条完整的线。
大多数关于 AI Coding 的讨论都在说同一套话:AI 代码有漏洞、要做 Code Review、要写 Spec。这些都是对的,但没说到根上。
根上的问题是:AI 生成的代码,即使逻辑正确、没有 bug,你也没法直接放进项目里。
一个最常见的场景:你让 AI 写一个"创建订单"的接口。它很快写出来了——功能正确、能跑通测试、没有明显 bug。但你看了代码之后说"这没法用"。
原因不是代码有错。而是——项目用 SQLAlchemy + Repository 模式,AI 写了裸 SQL;项目用 structlog,AI 用了 print;项目有统一的 ApiResponse.success(),AI 自己包了一个 {"code": 200, "data": ...}。
AI 写的代码"不属于这个项目"。这不是质量问题,是融入问题。
过去一年,我在 20 多家企业的一线培训和咨询中反复验证了一个结论:企业 AI Coding 落地成功与否,不取决于选了什么工具、买了多少 License,而取决于有没有一套让 AI 理解你项目的方法论。
这篇文章把这套方法论讲清楚。分六个部分,是从问题到体系的完整路径。
在开处方之前,先搞清楚问题长什么样。坏味道不是 Bug——它们不会让系统立即崩溃,但会在每次迭代中累积摩擦。等到问题爆发,修复成本已经指数级增长。
这七个维度不是孤立的。上下文问题会导致规范问题,规范问题会放大编排问题,编排问题最终体现为质量和度量问题。这是一条因果链。
有了诊断,再看处方。21 个设计模式(PATs:Patterns for AI Coding Transformation)不是"AI 怎么写代码"的技巧,而是"企业怎么搭建 AI Coding 体系"的架构决策。按四个治理层面展开。
解决的核心问题是"Spec 做戏"和"字段漂移"。
这五个模式的共同逻辑:意图不能被"传话",必须被"锁定"。
解决的核心问题是"上下文腐蚀"和"知识孤岛"。
这五个模式的共同逻辑:上下文不是越多越好,而是要分层、可信、可追溯。
解决的核心问题是"Agent 越权"和"无审查闭环"。
这六个模式的共同逻辑:Agent 的能力越大,护栏就要越明确。
这四层之间不是并列关系,而是一条流水线:
意图层(锁定目标)→ 上下文层(管理知识边界)→ 控制层(装上护栏)→ 评审层(自动质量防线)意图层和上下文层管"输入质量",控制层管"过程质量",评审层管"输出质量"。
有了诊断和处方,第一个实操问题是:企业上手 AI Coding 之前,到底要准备什么?
答案是三层地基。它们是逐层递进、每层带来质变的关系。
AGENTS.md 放在项目根目录,AI 每次对话自动加载。最少包含五个部分:
关键不只是"写了 AGENTS.md",而是每次 AI 犯了新类型的错误,就更新它。一个月后,AGENTS.md 覆盖了 AI 可能犯的大多数"不融合"错误。
AGENTS.md 定义了规矩,但规矩是抽象的。AI 需要看到具体的代码范例才能准确理解"你要的是什么样子"。
做法很简单:建立 5-10 个"标杆文件"——写得最好的 Route、Service、Repository、Model、Test。每次给 AI 任务时指定"参照 src/repositories/order_repository.py的写法"。
LLM 本质上是模式匹配引擎——你给它一个模式范例,它复制得非常精确。这比任何抽象的规则描述都有效。
Spec 不是 PPT 级的文档。它必须是结构化、可验证、能直接驱动的。
最少需要:
三层地基的递进逻辑:有了约束,AI 的输出才有下限。有了上下文,AI 的输出才贴合你的架构。有了规格,AI 的输出才对题。
地基铺好之后,还需要一套运行时的质量防线。AI 编码的速度是人的 5-10 倍,传统的 Code Review 跟不上。防线要装在流程里,而不是靠人盯着。
L0 写时约束(Spec、Rules) → 源头干净
L1 IDE 检查(语法、类型) → 即时反馈
L2 Pre-commit Hook(Lint、单元测试) → 提交前拦截
L3 AI Hook(敏感信息检查、危险命令拦截) → 过程防错
L4 PR 门禁(AI Review + 人工 Review) → 合入前终检拦截危险命令:AI 有时候会在写代码时执行 Shell 命令。PreToolUse Hook 可以拦截 rm -rf /、DROP TABLE、mkfs等操作。不是限制 AI 的能力,而是确保关键操作有人确认。
Prompt 敏感信息检查:工程师会在 Prompt 中粘贴包含客户数据的日志、API Key 的配置文件。UserPromptSubmit Hook 可以在提交到云端之前拦截,避免合规事故。
自动格式化:AI 生成的代码缩进、换行可能和项目规范不一致。PostToolUse Hook 在 AI 写完文件后自动跑 prettier或 eslint --fix。
投入 15 分钟部署三个脚本,给所有 AI 生成的代码装上一套自动化的安全检查。这不是锦上添花,是上生产之前的必需品。
当前面四部分(诊断→处方→地基→防线)都到位了,你会进入下一个阶段:不再一行行地写代码,而是指挥一个 AI 团队。
模式 1:Prompt Chaining(顺序链)。多个 Agent 依次接力:Agent 1 编码 → Agent 2 审查 → Agent 3 修复。
模式 2:Routing(路由)。一个 Router 判断任务类型,分配给专门的 Specialist——CRUD 任务给 CRUD 专家,重构任务给重构专家。
模式 3:Parallelization(并行)。无依赖的子任务同时执行。关键是先定义好共享的 API 契约,再分头执行。
模式 4:Orchestrator + Workers(编排器 + 工作者)。这是大型 Agentic 系统的核心——Orchestrator 拆分任务、分配、监控、汇总,Workers 各自执行子任务。
模式 5:Evaluator-Optimizer(评估器-优化器)。一个 Agent 生成,另一个专门找茬,循环改进。这是质量最高的模式。
如果你的 AI Coding 能力阶梯是 G1-G6:
工具是皮,模式是骨。先长骨头,再贴皮。
这是所有问题的根源。解决方法不是让 AI 更聪明,而是告诉它你的规矩(Rules)、给它看你的范例(标杆文件)、一次只让它做一件事(任务拆小)、每次错误都更新规矩(正向循环)。
这个反直觉的结论已经被数据验证。AI 变得越强,输出的代码就越"像模像样"——但"像模像样"和"业务正确"是两回事。Spec 是人和 AI 之间的契约。不需要写几千字,半页到一页结构化描述就够。关键是它能被验证。
Vibe Coding(凭直觉直接生成代码)在原型阶段效率极高。但 GitClear 分析 2.11 亿行代码后发现:三个月后,代码搅动率上升 41%,重构活动下降 60%。Vibe Coding 是原型的好朋友,生产系统的敌人。Spec 不是让你写得更快,是让你少返工。
AI 犯了错 → 分析根因 → 更新 Rules → 下次 AI 不再犯。这个闭环是企业 AI Coding 能力持续提升的唯一路径。唯一需要追踪的指标是 AI 代码首次 Review 通过率。从 20% 做到 85%+,就是方法论从无到有的过程。
┌──────────────────────────────┐
│ Agentic Coding(G5-G6) │
│ 多 Agent 编排 · 自主执行 │
├──────────────────────────────┤
│ 四层质量防线(L0-L4) │
│ Hooks · Pre-commit · Gate │
├──────────────────────────────┤
│ Spec-Driven Development │
│ 意图锁定 · API 契约 · RTM │
├──────────────────────────────┤
│ Landing Zone 三层地基 │
│ 约束层 · 上下文层 · 规格层 │
├──────────────────────────────┤
│ 21 PATs 设计模式 │
│ 意图 · 上下文 · 控制 · 评审 │
├──────────────────────────────┤
│ 7 Smells 诊断框架 │
│ 上下文 · 规范 · 编排 · 质量 │
│ 知识 · 度量 · 组织 │
└──────────────────────────────┘
从下往上:先诊断问题(坏味道),再开处方(设计模式),铺地基(Landing Zone),建立契约(Spec),装上防线(Hooks + Gate),最后进阶到多 Agent 协作(Agentic Coding)。
AI Coding 的上半场是用工具替代打字,下半场是用方法论约束智能。上半场跑得快的人很多,下半场跑得对的人才会留下。
本文整合了 MumuCoding 方法论体系中关于坏味道诊断、设计模式处方、Landing Zone 地基、Spec-Driven 开发、四层质量防线和 Agentic Coding 实战的核心内容。