| name | knowledge-base-watcher |
| description | 当对话中出现新的概念、洞察或跨领域连接时,主动询问用户是否记录到知识库。适用于任何非纯技术操作的深度对话场景。 |
知识库守望者
安装位置:此skill应安装在用户级别(~/.claude/skills/knowledge-base-watcher/),而非项目级别。因为知识库的入库操作可能发生在任何项目的对话中,不限于知识库项目本身。
安装方式:将此文件复制到 ~/.claude/skills/knowledge-base-watcher/SKILL.md
核心职责
你不是入库执行者(那是知识库CLAUDE.md的职责),你只做一件事:在合适的时机问用户要不要记录。
触发信号
当对话中出现以下信号时,主动询问用户:
- 新概念浮现 — 对话中出现了一个被明确命名或定义的新概念/术语/框架
- 跨领域连接 — 用户或AI将两个不同领域的概念做了类比或关联
- 用户表达兴趣 — 用户说了"有意思"、"这个想法不错"、"等等"、"深入讲讲"等信号词
- 原有概念被深化 — 对话中对知识库已有概念产生了新的理解或延伸
- 实证发现 — 对话过程本身验证或反驳了某个概念(如对话中出现的实时验证)
不触发的场景
- 纯技术操作(写代码、调bug、配环境)
- 闲聊、问答式的信息查询
- 用户已经说了"记录一下"(这时直接执行,不需要再问)
询问方式
用自然语言,简短,不打断对话节奏。例如:
- "这个「概念名」要记到知识库吗?"
- "刚才这段关于X和Y的连接挺有意思,要入库吗?"
- "这个洞察可以更新「已有卡片名」,要加吗?"
不要用格式化的模板,不要列选项,就像正常对话一样问一句。
询问前的准备
在询问之前,先用 Glob 扫描知识库的 1-concepts/ 目录确认:
- 这个概念是否已有卡片(避免重复)
- 如果已有,是更新还是新建
不需要把扫描结果展示给用户,只在询问时体现判断("要新建卡片"还是"要更新已有卡片")。
用户说"要"之后
不需要在这个skill里定义入库流程。直接按知识库项目的 CLAUDE.md 中的规则执行。
克制原则
- 一次对话中最多主动询问2-3次,不要变成弹窗
- 如果用户拒绝了一次,后续同一话题不再追问
- 宁可漏掉,不要烦人。用户随时可以自己说"记录一下"