dsh-llm-wiki
一个面向 DeepSeek Harness(DSH)的 Markdown-first 知识库插件。它把本地文件、目录和网页整理为可由 Git/Obsidian 直接检查的 LLM Wiki,同时保留不可变原始证据、来源版本和可追溯引用
- Stars
- 1
- Language
- TypeScript
- Created
- Aug 21, 2026
- Updated
- Aug 21, 2026
Introduction
dsh-llm-wiki
dsh-llm-wiki 是一个面向 DeepSeek Harness(DSH)的 Markdown-first 知识库插件。它把本地文件、目录和网页整理为可由 Git/Obsidian 直接检查的 LLM Wiki,同时保留不可变原始证据、来源版本和可追溯引用。
项目不是 OpenKB 的包装器。它借鉴 Karpathy LLM Wiki 的“原始证据 + 编译知识”工作流,以及 OpenKB 的多格式导入经验,并按照 DSH 的插件、工具、任务和模型能力实现。
v1 能力
- 导入目录、PDF、DOCX、PPTX、XLSX/XLS/CSV/TSV、图片、Markdown/文本/HTML/JSON/XML。
- 导入普通 HTTP(S) URL、微信公众号文章和 Twitter/X 内容。
- 通过已安装的
web-content-fetcherskill 获取公开网页;需要登录或真实浏览器时返回browser_required,由主 Agent 显式调用web-access。 - 将知识编译为摘要、概念、实体和探索页面,来源锚点随结论保存。
- 使用 SQLite FTS5 做可重建全文检索;Markdown 和原始文件才是权威数据。
- 支持来源撤回、恢复、去重、版本继承、lint 和基于证据的问答。
v1 不支持音视频、老式 .doc/.ppt、压缩包、EPUB、网页工作台或向量数据库。
仓库文档
本地开发
当前仓库的开发依赖通过 link: 指向同级的 /Users/fly/code/deepseek-harness;发布时它们是普通 peer dependencies。
cd /Users/fly/code/dsh-llm-wiki
pnpm install
pnpm run check
文档转换伴随程序需要 CPython 3.11+ 并预装锁定依赖,运行工具时绝不自动下载。macOS 自带的 Python 3.9 不满足 MarkItDown 要求:
python3.11 -m venv .venv
.venv/bin/pip install -r python/requirements.lock
网页导入还要求 DSH skill registry 能解析名为 web-content-fetcher 的本地 skill(来源:shirenchuang/web-content-fetcher)。需要登录或真实浏览器时,主 Agent 使用 eze-is/web-access;该 skill 不会被插件隐式执行,也不会被 vendored 到本仓库。
DSH 配置
构建后在 profile 或 bundle 的 cordis.yml 中挂载:
- name: dsh-llm-wiki
config:
root: .dsh/llm-wiki
pythonExecutable: /absolute/path/to/dsh-llm-wiki/.venv/bin/python
# Optional overrides; each provider/model pair must be configured together.
# compilerProvider: deepseek
# compilerModel: deepseek-chat
# visionProvider: openai
# visionModel: gpt-4.1
maxFiles: 2000
maxBytes: 1073741824
maxModelCalls: 200
maxInputTokens: 1000000
webMaxChars: 100000
webMinChars: 200
root 相对于当前 DSH workspace。首次成功写入会把语言锁为 zh-CN。
Agent 工具
插件注册六个 model-visible 工具:wiki_ingest、wiki_query、wiki_status、wiki_lint、wiki_source_retract、wiki_source_restore。导入和 lint 通过 DSH Jobs 后台执行;状态和问答同步返回。
可重建索引和物理清除只提供人工命令,不注册为 model tool:
node lib/cli.js reindex --root /absolute/workspace/.dsh/llm-wiki
node lib/cli.js purge-source --root /absolute/workspace/.dsh/llm-wiki \
--source-id src-0123456789abcdef0123 --confirm-source-id src-0123456789abcdef0123
purge-source 仅接受已经 retracted 的来源,并要求重复完整 source id;删除 raw 后不可恢复。
数据目录
.dsh/llm-wiki/
├── raw/ # 不可变来源副本和标准化证据
├── wiki/
│ ├── index.md
│ ├── log.md
│ ├── sources/
│ ├── summaries/
│ ├── concepts/
│ ├── entities/
│ └── explorations/
└── .state/ # manifest、staging、可重建 FTS 索引
安全原则
- 路径导入会先扫描再写入;目录导入要求 Agent 展示扫描摘要并获得用户批准。
.env、私钥、常见凭据文件、浏览器配置、.git和 wiki 自身目录始终拒绝。- 网页 skill 只负责获取内容;插件不读取或保存浏览器 Cookie。
- 本地解析完成后,仅标准化文本和明确选择的图片可进入模型请求。
- 物理清除原始证据不是 model tool;只能由人工维护命令完成。