| name | knowledge-priming |
| description | 加载项目特定的上下文——技术栈、架构概览、目录布局、可信来源和约定——以便所有 skills 在了解这个项目实际是什么的情况下运行。当存在知识基线文档,或用户询问项目的技术栈、架构、约定、框架、目录布局时说'tell me about this project'、'what are we using?'、'what's our stack?'或'what framework is this?'时使用。使用 knowledge-priming-refiner 创建知识基线文档。 |
Knowledge Priming(知识基线加载)
目的
AI 默认 = 互联网平均水平。无项目上下文 → 猜测框架、发明约定、生成的代码不匹配技术栈。知识基线修复:在设计/实现/审查之前加载简洁的项目身份文档。
不教授编码原则(clean-code)、结构规则(architecture)、领域建模(domain-driven-design)。回答不同的问题:"这个项目是什么?"——技术栈、架构风格、目录布局、可信文档、其他 skills 无法从代码中推断的约定。
配置解析
- 在仓库根目录查找
.lattice/config.yaml
- 如果找到,检查
paths.knowledge_base 获取自定义文档路径
- 如果文档存在于该路径,读取 + 应用为环境项目上下文
- 如果未找到配置/路径/文档——参见"当不存在文档时"
无内置默认值。每个项目身份都是独特的——对于"你的项目是什么"没有合理的通用默认值。知识基线文档由 knowledge-priming-refiner skill 创建或手动编写。
当不存在文档时
如果在配置解析期间未找到知识基线文档,通知用户:
未找到项目知识基线。没有它,AI skills 基于对技术栈、架构、约定的通用假设工作。
要创建一个,触发 knowledge-priming-refiner skill——引导式访谈(~10 个问题)生成简洁文档(~50 行)。创建后,每个 Lattice skill 都将其作为环境上下文使用。
也可以手动创建 .lattice/standards/knowledge-base.md 并在 .lattice/config.yaml 的 paths.knowledge_base 下引用。
此消息为信息性,不阻塞。所有 skills 在没有知识基线的情况下继续工作——只是在没有项目特定上下文的情况下运行。
文档包含的内容
来自 knowledge-priming-refiner 的知识基线文档有 5 个部分:
| # | 部分 | 捕获内容 |
|---|
| 1 | 架构概览 | 大局:什么类型的应用、主要组件、如何交互 |
| 2 | 技术栈和版本 | 具体技术及版本号,包括"非 X"澄清 |
| 3 | 精选知识来源 | 官方文档、可信博客、团队依赖的内部参考(最多 5-10 个) |
| 4 | 项目结构 | 显示各部分位置的目录布局 |
| 5 | 项目约定 | 其他 skills 无法推断的项目特定约定的简要说明 |
文档故意精简——聚焦内容少于 50 行。每个 token 都在为 context window 竞争,所以知识基线捕获最重要的内容,省略其他 skills 已处理的内容。
如何使用
当加载知识基线文档时,它成为所有 skills 的环境上下文。任何 compose 此 atom 的 molecule 在设计/实现/审查工作之前首先加载它。使用示例:
- 设计 molecules 在实际技术栈 + 架构基础上做出设计决策——提出的组件适合真实项目结构而非通用模式
- 实现 molecules 生成匹配项目框架、特定版本 API、目录约定、命名模式的代码
- 审查 molecules 根据项目实际标准评估变更——标记与记录约定的偏差而非通用最佳实践
知识基线是始终开启的上下文。不同于基于触碰的代码激活的条件 atoms(DDD、secure-coding、test-quality),知识基线应用于每次交互,因为项目身份始终相关。
范围边界
知识基线捕获项目身份 + 技术上下文。有意排除其他 atoms 涵盖的关注点:
| 关注点 | 归属位置 | 不在此处 |
|---|
| 编码风格、命名原则、函数设计 | clean-code atom | 无代码示例,无命名规则 |
| 架构层、依赖方向 | architecture atom | 无结构规则 |
| 领域建模、aggregate 设计 | domain-driven-design atom | 无 DDD 模式 |
| 输入验证、注入防护 | secure-coding atom | 无安全规则 |
| 测试结构、断言质量 | test-quality atom | 无测试模式 |
如果内容教授如何编写代码,应属于上述 atoms。知识基线回答*"我们使用什么?"——而非"我们应该如何编写?"*
与其他 Skills 的集成
此 atom 被所有三个 molecules compose:
design-blueprint ——在开始时加载知识基线,在实际技术栈 + 架构基础上进行设计
code-forge ——加载知识基线以告知实现决策、框架特定模式、目录放置
review ——加载知识基线以根据项目特定约定 + 技术栈约束评估变更
当被 molecule compose 时,知识基线在开始时加载一次,在整个工作流中保持活跃。当单独使用时,在首次引用项目上下文时加载。