dsh-cherry-kb:在 DSH Web 裏切換知識庫與記憶模式

前言

在 DeepSeek Harness(DSH)裏做帶上下文的對話,常見做法是本地維護一套知識庫目錄、用腳本做索引與檢索,再單獨控制「記憶」是否注入當前會話。若這些能力都散落在終端和配置文件裏,dsh web 的對話界面很難和真實狀態對齊:當前會話綁定了哪個庫、記憶開關在三檔裏的哪一檔,往往要切窗口或跑命令才能確認。

社區插件 dsh-cherry-kb(維護者 wanghuiym123,分類:記憶)把上述編排收進 DSH Web:在 Composer 工具欄和設置頁裏操作,Host 側通過 /dsh/kb/* 路由調用本機已有的「我的知識庫」工具鏈。它不負責分塊、FTS、向量或記憶邏輯本身,只作橋接。

這是什麼

dsh-cherry-kb 是面向 dsh web 的本地知識庫與記憶開關插件。npm 包名爲 @wanghuiym123/dsh-cherry-kb(README 對應版本 0.2.0,MIT 許可證)。

插件在 Composer 尾部工具行(模型選擇器左側)註冊兩個控件,並在 Settings 下提供兩個分區頁面;Host 半部註冊 22 條 /dsh/kb/* 路由,通過 spawn 調用三個已存在於機器上的可執行文件:

可執行文件 用途
我的知識庫/記憶開關 讀取與設置三檔記憶模式
我的知識庫/idx 狀態、來源、索引、搜索、嵌入模型、索引庫等
我的知識庫/cherry 只讀訪問 Cherry Studio 自有知識庫

知識庫根目錄解析順序:環境變量 DSH_KB_ROOT(或顯式覆蓋)優先;否則從內置 lib 向上查找包含 idx 文件的 我的知識庫 目錄。未安裝該工具鏈時插件仍可安裝並渲染 UI,但各路由會報「找不到 CLI」;包內不附帶工具鏈,也無公開分發。

核心功能

Composer 工具行

掛載槽位 conversation.input.right,與模型選擇器左側成簇,表示「本會話可見什麼」:

Seat id Order 作用
kb-chat-kb 90 選擇本會話使用的知識庫
kb-memory 100 三檔記憶開關(始終顯示當前檔位)

兩個控件共用同一 store,按鈕與設置頁上的狀態一致。

設置頁

槽位 settings.section:

Section id Order 作用
my-knowledge-base 50 來源列表、原生文件夾選擇、一鍵重建索引(分階段進度)、索引庫、按來源記憶、嵌入模型選擇、本地模型服務
cherry-studio-kb 55 Cherry Studio 知識庫的只讀視圖

Host 路由

Host 在 /dsh/kb/* 下提供 22 條路由,包括但不限於:

status  toggle  update  progress  stop  token
sources  search  select  source-memory
indexes  index-delete  rebuild-vectors  models
model/service  model/list  model/loaded  model/load  model/unload
cherry/list  cherry/search  cherry/select

寫操作需要 token;KbToken.ts 僅向 loopback 同源請求籤發。

邊界(README 明確說明)

  • Cherry Studio 知識庫只讀,由 KbCherry.ts 與 workspace 側 KbSources.ts 分離實現。
  • 添加來源僅寫入 我的知識庫/03_證據層/來源清單.json,不會自動索引。
  • 記憶開關僅由用戶在 UI 中切換,插件不會自行改動。
  • 插件不持久化自有狀態,展示內容均從 CLI 實時讀取。

安裝與啓用

先做插件安裝(命令來自倉庫 README):

dsh plugin --profile web add @wanghuiym123/dsh-cherry-kb

若知識庫不在「安裝包向上四級」的默認位置,啓動 dsh web 時指定根目錄:

DSH_KB_ROOT=/path/to/我的知識庫 dsh web

安裝前請自行查看 GitHub 倉庫 源碼與 MIT 許可證。DSH 插件以當前 dsh 進程權限運行,Host 路由會調用本機可執行文件,需確認路徑與權限符合你的環境。

典型用法

經過上面的安裝與 DSH_KB_ROOT 配置後,日常流程大致如下:

  1. 在 Composer 左側工具簇選擇本會話要用的知識庫(kb-chat-kb)。
  2. 用三檔記憶按鈕(kb-memory)設定當前會話的記憶模式;檔位與 記憶開關 CLI 一致。
  3. 打開 Settings →「我的知識庫」管理來源、觸發重建索引、查看進度、配置嵌入模型與本地模型服務。
  4. 在「Cherry Studio 知識庫」分區瀏覽或檢索 Cherry 側已有庫(只讀,不在此插件內構建或修改)。

開發與迴歸時,倉庫提供離線校驗(不依賴 dsh 進程、瀏覽器或網絡):

node scripts/verify-bundle.mjs   # client 產物 + host 路由表
node scripts/verify-host.mjs     # 針對 stub CLI 的路由處理器

README 註明:verify-host.mjs 使用 bash stub,不覆蓋真實 CLI 與 HTTP 適配層,全綠不代表端到端已通過。

適用場景與注意

適合誰: 已在本地部署「我的知識庫」工具鏈(記憶開關 / idx / cherry),並主要用 dsh web 對話、希望把庫選擇與記憶檔位放進同一界面的開發者。

不適合當作: 開箱即用的 RAG 或記憶實現;索引、檢索、嵌入均由外部 CLI 完成,無工具鏈則僅有空殼 UI。

生態說明: DSH 採用「一切皆插件」的擴展方式;SkillHub 目錄頁 爲社區收錄站點,與 DeepSeek / 幻方無官方從屬關係。

安全與信任: 安裝即允許插件 Host 代表你 spawn 上述三個可執行文件並讀寫工具鏈約定路徑(如來源清單 JSON)。請在信任維護者與源碼的前提下安裝。

結尾

dsh-cherry-kb 的價值在於:在 DSH Web 裏用兩個 Composer 控件和兩個設置頁,統一編排本機「我的知識庫」與 Cherry Studio 只讀視圖,而不重複實現索引與記憶內核。進一步瞭解可訪問目錄頁 skillhub.cn/plugins/wanghuiym123/dsh-cherry-kb 與源碼 github.com/wanghuiym123/dsh-cherry-kb。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜