DeepSeek Harness Hub
← 返回列表

文献知识库UnKnownFish125/dsh-literature

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

导入文献归档原文,夜间提炼成可检索知识树

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/9/9 · 已提供中文文档

DSH literature/knowledge plugin: 文献→证据→知识管理(独立 literatum server + Web UI + agent 工具)

综合分
29.3
GitHub 分
29.3
用户评分
★ Stars
0
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add UnKnownFish125/dsh-literature
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-literature — 完整知识库与归档体系

DeepSeek Harness 的 知识库 + 归档中枢插件:管理「原料 → 归档 → 加工 → 知识」全生命周期,
与 deepmemory 专属对接(deepmemory 是原料来源之一,literature 是知识的组织者)。

定位:独立插件(deepmemory 派生,不并入 dsh-deepmemory)。
复用 deepmemory 的部署/鉴权/代理范式,存储与 API 完全独立(独立 sqlite、独立端口 6260)。

分层体系(v0.3+)

原料层(收)
├─ 文献/文档(import bibtex/doi/附件)
└─ deepmemory 专属对接(export-archive → 记忆+原始对话作为原料)

归档层(存原文,不向量化,可溯源)
├─ memory_archive(deepmemory 原料归档:memory_id 溯源锚点 + sources 脱敏原文)
└─ documents / evidence(文献原文 + 证据,位置可配置 archive.dir)

加工层(夜间)
├─ literature_nightly.py(deepseek 低谷价 + flash-0731 经 uuapi)
└─ raw → knowledge(带 source_memory_id 溯源,可读的中文提炼)

知识库(检索)
├─ knowledge_items(concept/summary/notes + 批注/使用次数/评分)
├─ categories(分类树,动态可配置深度;bias=global 全局,其余按工作区)
├─ parent_id / node_depth / node_kind(知识内部父子层级)
├─ knowledge_relations(关系边:相关/影响 等)
└─ FAISS jina 768 维向量(独立索引,语义检索 RRF 融合 FTS)

派生链:原料(记忆/文献) → 归档(原文+锚点) → 加工(夜间LLM) → 知识(树+向量) → 检索(RRF)

工作区与全局约束

| 维度 | 规则 |
|---|---|
| 知识 | 按 workspace_id 隔离(各工作区只见自己知识);读写按 ID 均校验(跨区 403/404) |
| bias | 全局行为约束库(v0.3 裁决 15):任何工作区可见全部 bias,不计入知识条数统计 |
| 统计 | count/workspaces 只算非 bias 且未归档知识 |
| 跨区访问 | 默认隔离 + 许可制 ACL(resource_acl,一期只读 viewer,见 docs/dsh-literature-acl-v05.md) |

架构

DSH Web (client.js) ──/lit-api──> Host (index.js, prefix 代理, Bearer token)
│
literature_server.py (6260, sqlite + FTS + FAISS + 附件 + 鉴权)
│
literature_domain.py(域模型 + CRUD + 图谱 + 分类树 + 隔离)
│
literature_upstream.py(deepmemory 上游只读,6260 供 kb 查询)

| 组件 | 路径 | 说明 |
|---|---|---|
| 服务端 | literature-server/literature_server.py | HTTP 路由(kb/query、kb-search、documents、knowledge、categories、graph、archive-ingest/count、attachments 签名下载) |
| 域层 | literature-server/literature_domain.py | 模型/CRUD/软删/图谱/分类树/树状知识/工作区隔离/bias 全局 |
| 向量 | literature-server/literature_vectors.py | FAISS jina 768 维(IndexFlatIP+IndexIDMap) |
| 夜间加工 | literature-server/literature_nightly.py | raw→knowledge(flash-0731,低谷价) |
| 原料 ingest | literature-server/literature_ingest.py | deepmemory export-archive → memory_archive(幂等去重) |
| 自动关系 | literature-server/literature_relations.py | 向量相似度 → knowledge_relations 边(岛群图谱数据基础) |
| 文件爬取 | literature-server/literature_upstream.py | deepmemory 上游只读共享层 |
| Web 插件 | web-plugin/(client.js 四视图 + /lit-api 代理) | 文档/知识/图谱/状况 + 配置页 |
| Agent 工具 | agent-preset/kb-plugin/plugin-v1.js | kb_query/browse/constraints/contracts/graph/archive_library |

技术栈
- Python:标准库 sqlite3 + http.server;FTS5 trigram;FAISS(向量)
- Node:@deepseek-ai/(web 插件);CJS + React.createElement(无 JSX)
- 附件存储:data/attachments/;HMAC 签名 token(5 分钟 TTL);附件路由仅凭签名(window.open 可用)

API 概览(/v1/literature/,经 /lit-api)

| 方法/路径 | 行为 |
|---|---|
| POST /documents / GET /documents?q=&workspace_id= / GET/PATCH/DELETE /documents/ | 文献 CRUD(FTS 检索 + workspace 硬过滤) |
| POST /evidence / GET/PATCH/DELETE /evidence/ | 证据 CRUD(含 zh_content 中文对照) |
| POST /knowledge / GET/PATCH/DELETE /knowledge/ | 知识 CRUD(含 annotation/use_count/rating + 树字段) |
| GET /knowledge//subtree | 知识子树(递归 CTE) |
| POST /knowledge//use / /rate | 使用次数 / 评分 |
| GET /categories / POST /categories / PATCH/DELETE /categories/ / GET /categories//subtree | 分类树 CRUD + 子树 |
| GET /kb-search / POST /kb/query | 语义检索 / N3 hybrid(本地知识+deepmemory RRF) |
| GET /kb/browse / constraints / contracts / graph | deepmemory 目录 / bias 全局约束 / 契约 / 上游图谱 |
| GET /knowledge-browse / knowledge-count / workspaces | 本地知识枚举(含归档)/ 计数(排除 bias)/ 宿主工作区(含 title) |
| POST /archive-ingest / GET /archive-count / archive-memories | 原料归档 ingest/枚举/计数 |
| POST /archive-library | 库级归档(要求 workspace_id,bias 拒归档) |
| POST /attachments / GET /attachments/?t= | 附件上传 / 签名取回(仅凭签名) |
| GET /documents//attachment-url | 生成签名下载 URL |
| GET /graph?workspace_id=&library= | 知识图谱(library 过滤 + bias 全局节点) |
| GET /config-schema / GET|POST /config | 插件配置页数据源 |

安装与部署

生产(6260 单服务)
mkdir -p /www/dsh-literature-deploy/literature-server
cp literature-server/.py /www/dsh-literature-deploy/literature-server/
systemd dsh-literature.service,LITERATURE_SERVER_PORT=6260
LITERATURE_MEMORY_URL=6230(deepmemory 上游) + LITERATURE_MEMORY_API_TOKEN_FILE
web 插件 → vendored:
/www/dsh/home/profiles/web/node_modules/.pnpm/dsh-literature@/node_modules/dsh-literature/

测试机(6263 隔离)
dsh-test-literature.service,LITERATURE_SERVER_PORT=6263,上游 6240(deepmemory 测试)。

验证
TOKEN=$(cat data/api-token)
curl -s -H "Authorization: Bearer $TOKEN" http://127.0.0.1:6260/v1/literature/knowledge-count?workspace_id=

关键决策文档
- docs/dsh-literature-model-v03.md — 分层体系 + 分类树 + 权限设计
- docs/dsh-literature-tree-knowledge-v04.md — 树状知识(方案3:分类树 + 知识分层)
- docs/dsh-literature-acl-v05.md — 跨工作区访问(默认隔离 + 许可 ACL)

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群