Knowledge

单一事实源——当 AI 做了大部分工作,你靠什么守住一致性

单一事实源——当 AI 做了大部分工作,你靠什么守住一致性

封面图:AI 辅助开发中的单一事实源

大部分任务已经交给 AI 了,人不参与执行,漂移发生时你根本不知道。第一天就建一份事实源文档——这份你自己维护的、简单的、只读的文档,是所有下游产物的唯一锚点。

问题的本质:漂移发生在你不在场的时候

现在的工作模式是这样的:你提一个需求,AI 帮你写代码、生成配置、创建脚本。项目 A 做完了,项目 B 也做完了,项目 C 也做完了。每个项目 AI 都”按照你的要求”完成了,但你回头一看——三个项目的同类逻辑互相矛盾,命名不一致,配置各不相同。

问题不在于 AI 单次生成的质量,而在于一个更隐蔽的事实:大部分任务由 AI 完成,你作为 human 不参与执行过程。漂移发生在你不在场的时候,所以你无法感知。

更危险的是,当你最终发现漂移时,它可能已经发生了很久了。三个月前的一个会话里,AI 改了一条规则,你当时没有察觉。之后所有基于那条规则的产物都在错误的基础上继续生长。等到你在某个项目里撞上了问题,回头追溯时才发现——根源在三个月前,中间所有项目都受到了影响。没有事实源文档,你甚至无法确定最初正确的版本是什么,只能靠记忆和猜测去回滚。


解决方案:第一天就建事实源文档

这是整篇最重要的一个行动:任何任务启动的第一天,就建一份简单的事实源文档,写清楚你对这个任务的核心规则和约束。

不是等出了问题再补,不是等做完再回头写文档——是第一天,第一次让 AI 帮你干活之前,先把事实源建好。因为你从第一天起就不在场,漂移从第一天就开始。

这份文档有几个关键特征:

  1. 你是唯一的作者——每一条规则、每一个约束都是你明确做出的决定。AI 不应该自行修改它。
  2. 它必须简单——简单的东西才容易被完整执行。如果你一开始就把文档写得很复杂,AI 在实现时会更容易”简化”你的意图、跳过某些细节。
  3. 它是只读的——任何修改必须由你确认和批准后才能执行。一旦 AI 在你不知情的情况下改了这份文档,所有下游产物都会悄悄偏离你的意图。
  4. 它适用于任何任务——不只是写代码。任何由 AI 辅助完成的任务——生成配置、创建文档、处理数据——都应该在第一天就有一份对应的简单事实源。

为什么?因为 AI 做了大部分工作,而你不在场。 你在会话 A 里定的规则,到了会话 B 可能已经被 AI “优化”掉了。你没法逐行审查每一次输出,所以你需要一个锚点——一份你自己写的、简单的、AI 不敢动的文档——来保证所有下游产物最终都能回到你的意图上来。


具体实现:Knowledge → Skill → Script

这里用一个三层结构来演示这个原则,但它只是众多实现方式中的一种。

层 是什么 职责
Knowledge 你维护的事实源文档 定义”是什么”——规范、约束、设计原则
Skill AI 的指令文件 定义”怎么做”——引用 Knowledge,给出实现步骤
Script AI 的生成物 定义”做什么”——调用 Skill 完成具体任务

控制流:Knowledge → Skill → Script,其中 Knowledge 由你控制,Skill 由 AI 写,Script 由 AI 生成。

假设你的团队有多个项目都需要创建 release repo。你定义了一份 Knowledge 文档:

# Release Repo 规范
- visibility: public(必须)
- 必须启用 Issues
- 禁用 wiki 和 discussions
- description 来源:config.yaml 的 publish_stage_0 文案

然后你写了一个 Skill,引用这份 Knowledge,按步骤创建 repo 并配置。项目 A 和项目 B 都调用同一个 Skill,结果一致。

当项目 A 跑完后发现 info.yaml 和 config.yaml 的 description 不一致——你不需要去改项目 A 的脚本,而是去修订 Skill,让它统一取 config.yaml。修订时对照 Knowledge 文档:如果 Knowledge 里已经定义了,那是 Skill 实现不够严谨;如果没定义清楚,你先补 Knowledge,再改 Skill。Knowledge 始终是唯一事实源。


为什么不能反过来

有人会想:能不能先有 AI 的生成物,再从中提取规则,最后归纳出事实源?理论上可以,但实践中这条路走不通:

正确的方向永远是:先有你定义的事实源,再有 AI 的实现,最后有 AI 的生成物。


核查清单


总结

  1. 第一天就建事实源文档——漂移从第一天就开始了,你不能等到出问题再补。
  2. 这个事实源是你唯一能控制的东西——它简单、只读、你亲手维护。AI 的所有产物都回到这份文档来对齐,不符合的都值得检查。
  3. 事实源是只读的——AI 不得自行修改,任何改动必须由 human 确认批准。否则漂移会发生得悄无声息。

下次开始任何任务时,第一天就建这份文档——把你最核心的一个规范写进去,保持简单,保持只读,让 AI 的所有产物都回到这份文档来对齐。

📖 Read in English

← Back to all articles