前言¶
DeepSeek Harness (DSH) 的设计理念是「一切皆插件」。在构建复杂的工作流或智能体时,如何让 AI 持续维护知识库、避免遗忘上下文,是开发中的核心痛点。dsh-llm-wiki 旨在解决这一问题,它是一个工作区范围、本地优先的 LLM Wiki 插件。
插件介绍¶
名称:dsh-llm-wiki
维护者:wangning19940904
类别:记忆
许可:MIT
该插件通过将当前工作区的目录结构作为知识来源,构建本地持久化的索引。它不依赖外部服务,数据完全存储在本地,并基于工作区的绝对路径进行隔离。
核心功能¶
-
数据隔离与源文件
插件基于exec.agent.session.header.cwd的规范真实路径进行数据隔离。Markdown 和 TXT 文件作为唯一的数据源,插件维护的索引文件可随时删除重建。 -
混合检索
搜索引擎结合了 384 维特征哈希嵌入、PostgreSQL 全文搜索、CJK 子串回退以及[[wikilink]]图信号,并使用倒数排名融合(RRF)算法生成最终结果。 -
知识图谱
插件从 Wiki 链接和同页实体共现中确定性地构建图边,支持探索实体、关系和最多三跳的路径。 -
安全维护
插件提供基于 Agent 的维护工具。写入操作使用 SHA-256 哈希校验,防止意外覆盖,且所有维护操作均在正常会话日志中可见,没有隐藏的嵌套模型调用。
安装与启用¶
在安装前,请确保环境满足以下要求:
* Node.js ^22.19.0 或 >=24.0.0
* pnpm 11
* DeepSeek Harness 0.1.0-rc.6 或兼容版本
使用官方命令安装插件:
dsh plugin --profile headless add github:wangning19940904/dsh-llm-wiki
注意:该插件使用 TypeScript 源码,安装时依赖 prepare 脚本。如果安装报告插件构建被忽略,需要在 profile 的 pnpm-workspace.yaml 中添加:
allowBuilds:
dsh-llm-wiki: true
典型用法¶
插件提供了一组工具供 Agent 调用:
llm_wiki_search:在 Agent 回答前,先检索现有知识库。llm_wiki_import:将工作区内的相对.md、.markdown和.txt文件复制到raw/docs目录。llm_wiki_ingest:更新派生的索引,新文件或修改过的文件会附带日志记录。llm_wiki_read:读取源文件内容(限制readMaxBytes)。llm_wiki_write:将源页面写入wiki/sources、wiki/entities或wiki/concepts目录。llm_wiki_graph:探索实体、关系和路径。
适用场景与注意事项¶
该插件适合需要在本地持久化知识、且对隐私和离线行为有要求的场景。
- 局限性:当前版本无 Web UI、MCP 服务器、Trace 系统、后台模型任务、PDF/图片转换或独立 CLI。
- 文件支持:仅支持本地 UTF-8 编码的 Markdown 和文本文件。
- 向量策略:使用特征哈希而非神经嵌入模型,优先保证可预测的离线行为,而非语义质量。
总结¶
dsh-llm-wiki 通过提供一套工具链,让 Harness Agent 能够自主管理本地 Wiki。它解决了工作区级数据隔离和检索的问题,适合作为 DeepSeek Harness 开发中的记忆层组件。