前言¶
在 DeepSeek Harness(DSH)里让智能体「记住」某条信息,常见做法是把内容写进某个 Markdown 或笔记文件。这类目录往往缺少审核:原文、摘要和检索条目混在一起,事后很难核对结论是否仍与来源一致,冲突时也容易由模型自行选边。
dsh-kb-curator 是维护者 Mark-mph 发布的 DSH 组合包(bundle),向 Harness 配置里挂载只读技能 kb-curator,并附带一套无外部向量/嵌入 API 依赖的 PowerShell 知识库引擎。它把材料分层存放,并在写入可检索记忆与主题页之前,强制经过你批准提案的流程。下面介绍它解决什么问题、如何安装,以及首次落地知识库目录的步骤。
这是什么¶
dsh-kb-curator 在 npm 上的包名为 dsh-kb-curator(当前资料中版本为 0.1.2,MIT 许可证)。它不是单独的可执行应用,而是通过 cordis.patch.yml 向 profile 组合层插入一行 kb-curator 插件,由 lib/index.js 注册捆绑的只读技能;技能正文与引擎资源位于安装包内的 assets/kb-curator/。
技能教智能体维护本地三层知识库:L1 存原文库、L2 存带 [src:kb-YYYYMMDD-NNNN] 溯源标记的可检索命题、L3 存按分类汇总的主题页。任何未获批准的内容不得进入 L2/L3;在审核完成前,智能体只能写入 _inbox/、_review/queue/ 和 _system/log.jsonl 等约定位置。
社区目录 SkillHub 将其归类为「记忆」;GitHub 仓库:https://github.com/Mark-mph/dsh-kb-curator 。
核心功能¶
三层分工¶
| 层级 | 内容 | 位置 | 谁可写入 |
|---|---|---|---|
| L1 原文库 | 带固定 frontmatter 的原始 Markdown,只追加、不在原位改稿 | library/<category>/<subcategory>/<yyyy-mm-dd>-<slug>.md |
经 kb.cmd approve 等审核流程 |
| L2 检索层 | 单句命题(事实/偏好/决策/片段/技能等),可搜索 | engram SQLite,经 engram_* 工具 |
你批准提案后由智能体写入 |
| L3 主题页 | 每分类一页:综合理解、索引、未决冲突 | pages/<category>.md |
你批准提案后由智能体写入 |
设计约束包括:原文留在 L1;L2 只放提炼后的命题;L3 不放整段搬运——若需大段原文应进 L1 并链接。主题页过长(约 200 行以上)时,细节应回沉到 L1/L2。
审核闸门¶
提案状态流转为:inbox → 智能体写提案 → proposed → 你批准 → approved → 入库 → indexed;也可拒绝为 rejected,或要求修改为 needs_edit 后再回到 proposed。状态非 approved 的内容不能进入 L2/L3,不存在「先写进索引再等批」的路径。
溯源与冲突¶
引用结论需带 [src:kb-YYYYMMDD-NNNN] 指回 L1 文档。多来源矛盾时,技能定义固定仲裁顺序;顺序用尽仍无法裁决时,智能体应报告冲突而非自行选边(详见技能内 references/arbitration.md 与引擎 _system/ 规范)。
分类与引擎¶
init 会创建八个顶层分类目录:技术工程、产品业务、学术研究、生活健康、财务投资、人文社科、工具流程、未分类。子分类目录在首次批准该子分类文档时出现。引擎不调用付费嵌入或向量搜索 API,检索与整理依赖你已在 Harness 中使用的云端模型及本地 engram 存储。
组合包不声明可配置项;禁用或从组合中移除 kb-curator 行即可卸掉该技能。
安装与启用¶
运行环境需 Node.js ^22.19.0 || >=24.0.0。Peer 依赖由 Harness 解析:@deepseek-ai/cordis(资料中 README 表为 ~4.0.4,package.json 为 ^4.0.1)、@deepseek-ai/dsh-skill >=0.1.0-rc.1 <0.2.0-0。
官方安装命令如下:
dsh plugin add dsh-kb-curator
安装后会在 profile 中插入类似配置(见仓库 cordis.patch.yml):
- insert:
- id: kb-curator
name: 'dsh-kb-curator'
DSH 生态采用「一切皆插件」思路;SkillHub(https://www.skillhub.cn/plugins/Mark-mph/dsh-kb-curator)是社区目录站点,与 DeepSeek / 幻方无官方从属关系。安装前建议自行查看仓库源码与 MIT 许可证。插件与技能在当前 dsh 进程权限下运行,知识库目录应选在你可控、可备份的路径。
典型用法:首次创建知识库¶
插件不会自动替你创建知识库根目录,需自选文件夹并按 README 完成引擎拷贝与初始化。
-
定位技能资源目录
安装包内assets/kb-curator/含SKILL.md、references/与engine/。 -
整目录拷贝 engine
将engine/全部复制到你选定的知识库根;kb.ps1以$PSScriptRoot自定位,引擎落在哪,根就在哪。kb.config.json里的root字段仅供人读,程序不读取。
$KB = "D:\KnowledgeBase" # 你的根目录
Copy-Item -Recurse "<skill-base>\engine\*" $KB
必须完整复制,因 _system/ 规范与 _templates/ 在首次 init 前就要存在。
- 初始化目录树
init幂等:只创建缺失项,不覆盖已有内容。
& "$KB\kb.cmd" init
- 查看状态
只读报告根路径、磁盘阈值、待审/已批/已拒提案数、各层文件数等;不写日志、不改文件。资料建议在每次 ingest 或批量写入前执行。
& "$KB\kb.cmd" status
后续 ingest、提案审核、approve 与 engram 工具细节见技能 SKILL.md 及 references/kb-cli.md、review-workflow.md 等七份参考文档。
适用场景与注意¶
适合:希望在 DSH 对话中让智能体持续整理个人或团队材料,又要求原文不可篡改、检索条目与主题页必须经你点头后再入库;希望避免额外向量 SaaS 账单,接受本地目录 + SQLite 检索方案。
注意:
- 引擎入口为 Windows 友好的
kb.cmd/ PowerShell(kb.ps1),在 Linux 上部署知识库根目录时需自行确认 PowerShell 可用性或按引擎 README 操作。 - 磁盘_guard 与付费服务开关等阈值写在
kb.config.json,以引擎文档为准。 - 勿使用资料未给出的安装方式(例如自行拼接
dsh plugin add github:...);以 README 中的dsh plugin add dsh-kb-curator为准。
结尾¶
dsh-kb-curator 把「记忆」从随手堆文件,改成 L1/L2/L3 分层、强制人工审核、带来源标记与冲突仲裁规则的本地知识库流程;安装命令一行,知识库根目录与审核节奏仍由你掌控。
- 目录页:https://www.skillhub.cn/plugins/Mark-mph/dsh-kb-curator
- GitHub:https://github.com/Mark-mph/dsh-kb-curator