知枢 KnowHub
面向 DeepSeek Harness 的项目知识中心
概述
知枢(dsh-knowhub)是 DeepSeek Harness(DSH)的插件,在工作区侧边栏提供中文知识中心面板。它针对一个具体问题:项目知识长期分散于对话记录、零散 Markdown 文档与个人记忆之中,难以检索、无法验证,修改后也难以追溯。 插件以本地 SQLite 与文件系统为存储底座,将知识生产拆分为四个环节:生成候选 → 人工审核 → 批准生效 → 版本留档。模型可以提出内容,但只有经使用者批准的内容才会进入正式知识库,也才会进入后续对话的上下文。
核心能力
1. 仓库文档自动生成(Repo Wiki)
扫描项目目录,依据语言构成、目录结构与关键配置文件生成 Wiki 草稿,覆盖项目总览、技术栈与依赖、模块划分与待确认事项。提供经济、平衡、质量三档生成策略,分别对应不同的文件数量上限、上下文长度与模型调用次数。
2. 增量更新
优先基于 Git 检出识别变更(包含已提交内容与工作区改动),无 Git 时回退至内容哈希比对。仅对受影响的文档发起重新生成;已批准文档不会被直接覆盖,模型产出以候选形式进入审核队列。
3. 审核队列
候选、冲突、待审核草稿与已过时知识统一排列,支持按类型、关键词与来源筛选,显示真实条目总数,并支持按提交时间或更新时间排序。支持批量批准(单次上限 50 条,逐条返回处理结果)、编辑后批准,以及冲突的人工合并(合并结果以独立版本入库)。
4. 文档对比
审核时以统一视图或并排视图展示差异,新增内容以绿色标记、删除内容以红色标记,阅读方式与代码 diff 一致。仅有一个版本的知识整体标记为新增。
5. 版本历史
所有修改以追加方式记录,并保留写作来源(模型生成、人工编辑、合并、导入)。任意历史版本均可查看、对比与恢复。
6. 知识类型与来源标注
支持 Wiki、决策、约定、问题、待办、偏好、记忆七类知识。每条知识附带来源证据与验证状态(观察事实、推断、假设、未验证),便于区分事实与推测。
7. 中文检索
基于 SQLite FTS5 与 trigram 分词,支持两字中文词检索;提供类型与标签筛选、结果分页与重复内容合并,命中结果附带高亮片段。
8. 上下文注入
将已批准知识的摘要注入模型系统提示,按全局记忆与项目记忆分别控制;摘要字符数与标题数量均可配置,默认保持在千字以内,避免挤占对话上下文。
9. 自动提炼(默认关闭)
在对话回合结束时提取可复用的结论并生成候选,进入审核队列。可配置最小字符阈值与冷却时间;开启后每轮对话收尾最多增加一次模型调用。
10. 备份、恢复与迁移
数据全部存储于本地 SQLite 与文件系统,不采集数据、不向外部发送。提供自动备份、恢复前预览(列出将恢复的知识库、文档与版本数量,以及与现有内容的同名重叠情况)、存储目录迁移(迁移前后校验知识库与文档数量,并支持回滚)与运行环境诊断。
11. Markdown 导入导出
支持整库导出为 Markdown 文件,便于纳入版本控制或迁移至其他工具;亦支持导入任意 Markdown 文档,导入内容一律以草稿状态落库,须经审核方可生效。
系统要求
| 项目 | 要求 |
|---|---|
| DeepSeek Harness | 0.2.x |
| Node.js | 22.19+ 或 24+ |
| 模型 | 一个已注册的模型 Provider |
安装与启动
# 安装插件
dsh plugin --profile knowhub add dsh-knowhub
# 启动带插件的实例
dsh --profile knowhub --port 29961 --no-open
启动后打开终端中输出的访问地址,在侧边栏选择「知枢」即可进入知识中心。
从源码安装(适用于已获取本仓库的场景):
dsh plugin --profile knowhub add file:"<本仓库绝对路径>"
使用流程
- 创建知识库:选择生效范围(工作区级仅当前项目可见,用户级跨项目共享),并绑定用于生成内容的模型。
- 初始化 Wiki:启动初始化任务,生成结果进入待审核队列,逐条审核批准后成为正式知识。
- 日常使用:已批准知识可在对话中被检索与注入;也可通过
knowledge_search主动查询、通过knowledge_propose主动记录。
与常见方案的对比
| 常见做法 | 知枢 KnowHub |
|---|---|
| 知识留存于对话记录,跨会话后失效 | 落库存储,可检索,跨会话可用 |
| 模型输出直接进入上下文 | 先形成草稿,审核通过后生效 |
| 修改无记录,误改无法追溯 | 追加式版本历史,任意版本可回退 |
| 文档与代码变更不同步 | 由 Git 变更驱动增量更新 |
| 知识绑定在单一模型或工具上 | 本地 SQLite 存储,可导出为 Markdown |
| 中文分词受限,短词检索失败 | FTS5 trigram 分词,支持两字检索 |
设计原则与安全边界
- 知识正文视为数据而非指令:注入与检索结果均明确标注来源,不执行知识内容中的命令。
- 不读取凭证信息:扫描时默认排除密钥与敏感文件,不跟随符号链接,不执行被扫描仓库中的脚本。
- 不静默覆盖:已批准内容代表使用者的最终决定,模型只能提交候选。
- 操作可逆:版本可回退,备份可恢复(恢复前提供预览),存储迁移具备校验与回滚路径。
常见问题
是否必须使用 Git?
不是。有 Git 时基于变更检出,无 Git 时基于内容哈希比对,后者精度与效率略低,但可正常使用。
是否会影响对话响应速度?
注入摘要默认控制在千字以内;自动提炼默认关闭,开启后每轮对话收尾最多增加一次模型调用。
模型能否自行修改知识?
不能。模型只能提交候选,批准权限仅属于使用者。批量批准、编辑后批准与冲突合并均在审核页完成。
数据存储在哪里?
默认存储于 ~/.dsh/knowledge-center 下的 SQLite 库与文件,可导出为 Markdown,也可通过迁移功能转移至其他目录。
相关链接
- npm:www.npmjs.com/package/dsh…
- 源码与更新记录:github.com/Mw-HbCK/dsh…
- 许可证:MIT
附:项目简介
知枢 KnowHub 是 DeepSeek Harness 的中文知识中心插件。它为仓库自动生成项目 Wiki,并在代码变更后增量更新受影响文档;模型产出以候选形式进入审核队列,经人工批准后方可作为正式知识使用,并可随时回退到任意历史版本。知识支持中文短词检索与按作用域注入对话上下文,数据以本地 SQLite 存储,亦可导出为 Markdown。安装命令:
dsh plugin --profile knowhub add dsh-knowhub,主页:www.npmjs.com/package/dsh…。