| name | knowledge-preserve |
| description | 从当前对话中提取知识到用户指定的知识库。仅在用户显式要求保存知识、沉淀经验、更新 wiki、capture knowledge、preserve knowledge 时使用。 |
Knowledge Preserve
仅在用户显式要求保存知识时使用。不要在普通对话结束后自动写入知识库。
存储目标
优先使用用户在本轮提供的知识库路径。若用户没有提供路径,询问目标位置,不要假设固定目录。
可使用的通用约定:
| 用途 | 示例路径 |
|---|
| 团队/项目知识库 | ~/KnowledgeBase/Work |
| 个人知识库 | ~/KnowledgeBase/Personal |
Usage
/knowledge-preserve # 默认:完整原文存 raw + 自动消化到 wiki
/knowledge-preserve direct # 有隐私:raw 只存摘要,但消化完整原文到 wiki
第一步永远是确认输入人。
如目标知识库内存在开发规范、踩坑记录、ADR 或模板文件,先读取这些项目内文档。
核心逻辑
两种模式都会:
- 消化完整原文(不是摘要)
- 自动执行 knowledge-compile(质量审核 + 矛盾检测 + 重复检测)
- 写入 wiki
区别只在 raw 里存什么:
- 默认模式:raw 存完整原文(别人可查细节)
- direct 模式:raw 只存摘要日志(隐私不留痕)
路径1:默认模式(无隐私)
确认输入人 → 完整原文存 raw → 消化完整原文 → 审核+矛盾+重复 → 写 wiki
- 确认输入人
- 逐段复制完整对话原文到 raw 文件
- ⚠️ 严禁总结、严禁摘要、严禁压缩!
- 把对话中的每一轮问答(用户说了什么、Agent 回了什么)原样复制
- 包含:完整的讨论过程、代码片段、命令输出、决策讨论、报错信息
- 只去掉无意义的系统提示和重复的工具调用输出
- 如果对话很长,分段写入,每段用时间标记
- 判断标准:别人看 raw 文件时,能完整还原当时讨论了什么,不需要回去找原始对话
- 存到 原始资料/:
- 路径:
<KNOWLEDGE_BASE>/原始资料/对话记录/{输入人}/{date}-{topic}.md
- 如果同一个会话窗口已有该文件(同日期同主题),追加内容到末尾,只更新结束时间戳
- 自动执行编译(等同于 knowledge-compile):
- 先列出从对话中提取的知识点列表,展示给用户
- 等用户确认"可以写入"后才继续(这步不能跳过!)
- 质量审核:垃圾内容跳过
- 矛盾检测:与 wiki 已有文章冲突 → 问用户
- 重复检测:>80% 重叠 → 自动合并到已有文章
- 用户确认后写入 wiki 文章
- 更新索引和日志
- 标记源文件
compiled: true
raw 文件格式
---
type: conversation-extract
输入人: will
会话开始: 2026-04-12 14:30
会话结束: 2026-04-12 16:45
来源目录: __HOME__/projects/some-project
topics: [CouchDB配置, CORS问题, LiveSync]
compiled: true
tags: [conversation, will]
---
(完整对话原文...)
(完整对话原文...)
(完整对话原文...)
同窗口持续更新规则
如果同一个 CC 会话窗口多次执行 /knowledge-preserve:
- 不创建新文件,在已有文件末尾追加新内容
- 只更新
会话结束 时间戳,会话开始 不变
- 每次追加的内容用时间标记分隔
路径2:direct 模式(有隐私)
确认输入人 → 消化完整原文 → 过滤隐私 → 审核+矛盾+重复 → 写 wiki → raw 存摘要
- 确认输入人
- 分析完整对话原文(消化的是完整内容,不是摘要,确保信息量充足)
- 过滤隐私:密码/token/API key/客户数据 从 wiki 文章中去除
- 自动执行编译:
- 质量审核 → 矛盾检测 → 重复检测(同默认模式)
- 写入 wiki 文章(已脱敏)
- raw 存摘要日志(不含原文):
原始资料/对话记录/{输入人}/{date}-{topic}-摘要.md
只记录:时间戳、输入人、主题、写入了哪些 wiki 文章
Rules
- 必须确认输入人 — 不能匿名
- ⚠️ 默认模式严禁摘要 — raw 文件必须是完整对话原文,逐段复制,不得总结/压缩/概括。判断标准:别人看 raw 能完整还原讨论内容
- 两种模式都消化完整原文 — wiki 的编译从完整原文消化,不是从摘要消化
- 两种模式都自动编译到 wiki — 不需要手动跑 knowledge-compile
- 编译前必须审核 — 展示知识点列表,等用户说"可以"才写 wiki
- 同窗口追加更新 — 同一会话多次 preserve 追加到同一文件,只更新结束时间戳
- 矛盾不自动裁决,问用户
- Agent 操作记为对应人名