Vai al contenuto principale
K

dsh-shared-kb

kunjienie50-creator/dsh-shared-kb

Team shared knowledge base: one member runs a zero-dependency Hub, everyone else installs this plugin and joins with one invite code. Uploads are filed into ten categories with a summary, confidence and points; 15 agent tools let members upload, search, recall, comment and read them. Important items are pinned with a hand-written recommendation until the member has read them, and each account also gets a private local library, collections, a weekly digest and version diffs.

Installazione

dsh plugin --profile web add github:kunjienie50-creator/dsh-shared-kb

README

dsh-shared-kb

团队共享知识库:你的电脑当 Hub,其他人只装一个插件、粘一个邀请码。素材统一按 inbox-triage 规范整理,所有人的 AI 都能检索。

你的电脑(Hub,文件都在这)                成员 A / B / C / D 的 DSH
┌────────────────────────────┐           ┌──────────────────────────┐
│  hub.js · 8787             │◀── HTTP ──│ 侧栏「共享知识库」        │
│  raw/ + docs/ + 搜索 + 成员 │           │ 上传 / 搜索 / 阅读        │
│  管理:成员、删除、统计     │           │ 模型工具 skb_*            │
└────────────────────────────┘           └──────────────────────────┘
  • Hub 零第三方依赖,node hub.js 就能跑;数据就在你的电脑上。
  • 每人一个令牌,文档自动署名;你是管理员,可增删成员、轮换令牌、删除任何文档/素材。
  • 上传的文本会调用上传者自己的模型,按你的 inbox-triage 规范整理(十类、≤10 字总结、置信度、2~4 条要点、sha256 查重);失败进「待整理」,agent 可补做。
  • 随插件自动安装 4 个技能:shared-kb(团队版收件箱)+ 你原来的 long-dialogue-knowledge、controversy-analysis、idea-synthesis。
  • 重要资料置顶:谁都可以把一篇标成「重要」并手写推荐语,全员会看到醒目提醒,读过才能自己取消置顶。
  • 私有库:不想上团队库的(隐私、草稿)存进本机 ~/.dsh/shared-kb-private,永不上传;检索时会一起命中并标注 🔒。
  • 收藏夹 / 评论 @ / 周报 / 批量 / 版本对比:跟账号走,换设备同步。

一、你:在自己的电脑上启动 Hub

需要 Node.js 20+;这台电脑装过 DSH 的话通常已经带了 Node。

双击启动(推荐)

  • macOS:install/启动知识库.command
  • Windows:install/启动知识库.bat

第一次会让你输入管理员名字,然后打印成员访问地址和插件安装地址。窗口别关,关了就是停服务。

或命令行

node hub.js --data ~/.dsh-shared-kb --add-member 你的名字 --admin --url http://<这台电脑的局域网IP>:8787
node hub.js --data ~/.dsh-shared-kb --port 8787 --host 0.0.0.0 --url http://<局域网IP>:8787

把 http://<局域网IP>:8787 换成其他成员真能访问的地址:同一个 Wi-Fi 用局域网 IP,异地用 Tailscale / 内网穿透。不要把 8787 直接暴露到公网,令牌就是全部权限。

二、成员:装插件 → 粘邀请码

两步,没有配置文件、没有命令行。

1. 装插件

三种方式,任选其一:

  • 市场(上架后):在 dshmarket 里搜「共享知识库」安装。
  • GitHub:插件页「添加 / 安装」粘贴 github:kunjienie50-creator/dsh-shared-kb。
  • Hub 直连:粘贴 http://<你的Hub地址>:8787/install/dsh-shared-kb-0.3.0.tgz。

装完按提示重启 DSH。

2. 粘邀请码

打开侧栏的书本图标「共享知识库」→ 把管理员发的邀请码(skb1.…)粘进去 → 连接。

邀请码里包含 Hub 地址、令牌和你的名字,所以只此一处。

三、你:管理员操作

侧栏「共享知识库」→ 右上角 管理:

能做什么说明
看概览文档数、待整理数、成员数、占用空间、分类分布
加成员填名字 → 生成邀请码 → 复制发给对方(微信即可)
移除成员立即失去访问;不能移除自己,至少保留一个管理员
换令牌旧令牌立刻失效,重新生成邀请码
设对外地址邀请码里用的地址,必须是成员能访问的 Hub 地址
删文档任何人的文档都能删(带历史版本)
清理素材「标记无用」记原因,或删除未成文的原始素材
统计按十类看分布

管理员也可以在对话里让 AI 调 skb_admin 做同样的事。

四、成员日常怎么用

  • 收东西:把文件拖进「共享知识库」页面(或点「上传素材」多选),或直接对 AI 说「把这个存进团队库」。截图、发票、名片、合同、PDF、一段文字都行。
  • 上传前选归属:☁ 团队共享 还是 🔒 仅自己可见;还可以勾「先不整理」把原件直接存成待整理(不消耗模型),之后点「整理」再让 AI 处理。
  • 查东西:页面搜索,或直接问 AI(它会先 skb_recall 拿摘要要点,不够再 skb_search,最后才 skb_read)。
  • 筛:按分类、上传者、重要性、归属(团队/私有/全部)、排序筛;分类给错了直接在详情页的下拉里改。
  • 标重要:详情页「★ 标为重要」→ 必须手写推荐语(≥10 字),全员的页面顶部会出现红色提醒,读过才能取消。
  • 收藏:「☆ 收藏」→ 建多个收藏夹,左栏收藏夹 tab 里管理。
  • 评论 / @:详情页底部评论;正文写 @成员名 会让对方看到 @ 未读。
  • 版本:「历史版本」看每次正文改动,按行对比,可回滚;两人同时改会有冲突提示,不会互相覆盖。
  • 批量:右上角「批量」→ 全选后批量下载(打成一个 zip)或批量删除;非管理员只能删自己创建的。
  • 周报:每周首次打开页面自动弹「本周知识库简报」(新增多少、哪些重要、谁贡献最多),点知道了就不再弹。
  • 整理待整理:说「把待整理的整理一下」,AI 会按规范补做。
  • 成文:长对话、争议、灵感分别用对应的三个技能,产出后说「存进团队库」。

五、规范化规则(来自你的 inbox-triage)

  • 分类只取十类之一 + 99_待分类;判据是「将来拿它干什么」。
  • summary ≤10 字、能独立看懂,像文件名;禁用「关于」「一张」「截图」「其他」「杂项」。
  • points 2~4 条短句,可带 - [ ] 待办。
  • confidence 高/中/低;拿不准进 99_待分类 并写低。
  • 同一 sha256 只存一份,重复上传直接返回已有文档。
  • 原件(raw)不可变;正文只写提取内容,不编造。

规则细节在 skills/shared-kb/,随插件自动装到 ~/.dsh/skills/。

六、工具

工具作用
skb_recall先查这个:一个主题一次拿回多篇的摘要+要点,最省上下文
skb_search检索(compact=true 只回目录;可按分类、上传者、重要性筛;私有库一起搜)
skb_read读全文(读团队库文档会同时记「已读」,读过才能取消置顶)
skb_list列最近 / 按分类、标签、上传者、重要性、排序
skb_upload上传原件,返回 rawId、预览、是否重复;支持 scope、pending、important+recommend
skb_commit写入整理后的文档(唯一成文入口,支持 baseVersion 冲突检测)
skb_inbox列待整理(团队 + 本机私有)
skb_read_raw读待整理素材
skb_status连接状态、角色、数量、未读重要资料、@ 未读
skb_recommend标为重要资料(必须手写 10~200 字推荐语)
skb_collect收藏夹:建、改名、删、放入/移出
skb_comment评论:看、发(@成员名 会提醒对方)、删
skb_weekly本周简报:新增、更新、重要、分类与作者分布
skb_private本机私有库:列、读、写、删、统计
skb_admin管理员:统计、成员、删文档/素材、批量删除、审计日志

七、备份与维护

  • 备份:整个数据目录打包即可(~/.dsh-shared-kb,含 config.json、state.json、docs/、comments/、raw/)。私有库在各自机器的 ~/.dsh/shared-kb-private,要备份得各自备份。
  • 成员管理也可以在命令行:--add-member、--remove-member、--rotate、--list-members。
  • 改库名:node hub.js --data <目录> --rename "新名字"。
  • 升级:替换 hub.js 等文件后重启 Hub;插件在各自 DSH 里重新安装同版本即可。

八、限制与取舍

  • 适合 5~20 人;单进程文件存储,上千篇后建议换 SQLite FTS5。
  • 目前自动整理只处理纯文本;PDF/Word/扫描件由 agent 先用 office/OCR 技能转文本再入库。
  • 没有实时协同编辑;并发靠「新建 + 冲突显式标注」,不覆盖。
  • 检索不做向量库(RAG),是有意的:
    • 会让 hub.js 从零依赖变成要外部 embedding 服务或本地模型,一条命令就能跑的前提没了;
    • 省的不是真正吃上下文的那块——大头是「塞整篇正文」,向量只省了挑选,读正文还得读;
    • 单号、金额、日期、合同编号这类精确串,现在的二元组 + 字段加权比向量更稳;
    • 现在的规模(几十到几百篇)用不上它;
    • 已经有更便宜的路径:skb_recall(一次拿多篇摘要+要点)→ skb_search(compact=true)(只回目录)→ 才 skb_read。 若将来真的到几千篇且语义检索成为瓶颈,再作为可选模块(--embed 开关)加,不进核心。

Plugin correlati