← 返回文章

教程 / 8 MIN READ

项目知识不是总结:怎样让下一位执行者真正接得住

项目文档的目标不是描述“做过什么”,而是让后来者看见事实源、当前状态、验证证据、失败路径和下一步动作。

Published
2026/08/30
Updated
2026/08/30
Series
知识系统工程

很多项目留下了大量聊天记录,却没有一个人能准确回答:现在做到哪里?哪个文件才是事实源?上一次为什么失败?如果换一个人或 Agent,应该从哪一步继续?

这不是“缺少总结”,而是缺少可执行的知识结构。

我在 OpenDeepWiki / AACR 项目里尝试解决的,不是让 AI 为代码自动写一批看起来完整的说明,而是让散落项目进入一个可验证、可恢复的知识流程。

文件系统是事实源,聊天只是线索

聊天很适合记录意图和临时判断,却会受到上下文截断、任务切换和版本变化影响。长期项目必须把关键状态落回文件系统:README、状态页、决策记录、验证报告、运行手册和变更日志。

这意味着一次任务结束时,不能只说“已经完成”。还要更新:

  • 实际改变了哪些文件;
  • 运行了哪些验证;
  • 哪些结果通过、哪些仍然阻塞;
  • 是否引入了新的依赖或风险;
  • 下一位执行者从哪里开始。

当聊天与文件冲突时,应优先相信可检查的文件和运行证据。

导入项目之前,先缩小噪声与风险

一个真实代码项目可能包含 .git、依赖目录、缓存、模型、构建产物和秘密配置。如果原样送进文档生成系统,不仅浪费上下文,还可能泄露不该进入知识库的内容。

因此,导入流程先创建隔离副本,明确排除规则,再以只读方式挂载。先用一个小型自有项目做 Smoke,确认路径、编码、目录扫描和文档落盘都正常,再处理更大的代码库。

“能读到所有文件”不是优势。只读取完成任务所需的最小集合,通常更安全,也更容易得到高信噪比结果。

自动生成文档之后,还必须检查完整度

生成界面显示“100%”,不代表文档真的完整。一次长任务中,进度计数已经走到末尾,但数据库检查发现只有部分页面真正写入,其余任务因超时而没有持久化。

因此,验收不能依赖一个进度条。至少要交叉检查:

  1. 目录项数量与实际文档数量是否一致;
  2. 每个目录项是否关联了非空正文;
  3. 处理日志里是否存在超时、配额或写入失败;
  4. 思维导图、引用和跨页链接是否真实生成;
  5. 随机抽取的页面是否以源码为依据,而不是合理猜测。

自动生成只是生产步骤,完整度检查才是交付步骤。

失败记录应该能直接导向恢复

好的失败记录不是一段报错截图。它应该包含:失败对象、最后成功位置、已保存资产、缺失清单、可能原因、恢复前置条件和推荐命令。

在模型配额耗尽、长任务超时或工具调用不兼容时,我会先保护已经成功的文档和数据库快照,再把缺失页面导出为清单。下一次可以只恢复缺失部分,而不是覆盖此前高成本生成的结果。

这也是“可恢复”比“自动重跑”更重要的原因。无条件重跑可能花费更多成本,还会丢掉诊断现场。

轻量结构可以先解决 80% 的交接问题

完整知识图谱很有吸引力,但在底层图谱生成不稳定时,项目不必停在概念上。目录、文档链接、显式依赖、状态标签和完整度报告已经可以形成一个轻量图谱:人能看到模块关系,也能定位缺口。

先交付一个可验证的 v0.1,再逐步增加语义关系和自动推理,通常比等待“完美知识大脑”更有价值。

判断交接是否成功的一个简单测试

把项目交给一个不了解前情的人或 Agent,不补充口头背景,看它能否在合理时间内回答:

目标是什么?当前事实是什么?哪些已经验证?哪些不能宣称完成?下一步最小安全动作是什么?

如果它能回答并继续工作,文档才真正完成了交接。项目知识不是对过去的纪念,而是下一次行动的基础设施。

From idea to evidence

在真实案例里看“接得住”。

AI 产品 · E3OpenDeepWiki / AACR

把散落在代码、文档和历史记录里的项目事实,变成下一位开发者或 Agent 可以验证并继续执行的知识系统。

查看案例 →

AI 辅助说明:Eric 提出知识系统目标与验收要求;AI 参与工程实施、文档生成和本文整理,结论以项目文件与验证记录为依据。