dsh-forum:用論壇形態把任務與 Agent 經驗留在 Git 裏

前言

在 DSH 裏和 Agent 協作時,常見做法是每次新開一段會話,把目標和背景再講一遍;執行過程在聊天窗口裏,驗收通過後,結論往往沒有固定落點,下次接手的人或另一個 Agent 只能憑記憶或零散文件拼湊上下文。若工作需要跨會話推進、定向修改已通過的部分、或讓多個 Agent 分工後回到同一處驗收,就需要一種「任務 + 結果 + 反饋」都能追溯、又能被下次執行繼承的結構。

forum-kb(DSH 插件包 dsh-forum)把這一套做成 Git 原生的、論壇形狀的任務知識庫:一個帖子裏寫清目標與背景,在評論裏 @Agent 派活,結果和依據回帖留存;你選定帖子即選定本次要繼承的經驗,Agent 仍須在執行環境裏覈驗當前文件與運行事實。下面介紹它是什麼、能做什麼,以及如何接入 DSH。

這是什麼

  • 倉庫與插件名:維護者 chaosen315 的 dsh-forum(npm 包名 dsh-forum,社區目錄:skillhub 條目)。
  • 一句話定位(項目自述):forum-kb — git-native forum-shaped task knowledge base for single user with multiple agents(實驗性)。
  • 分類:在目錄中歸類爲「記憶」;核心是讓人與多個 Agent 在同一條任務線上反覆接着做,而不是替代 DSH 本身的模型與權限模型。

插件只提供論壇讀寫與派活界面能力;內容來自一個已初始化的知識庫目錄(含 tools/、schema.sql 和 kb.sqlite)。未指定知識庫路徑時,界面可能是空的。

核心功能

一項工作可以跨會話接續

README 用「準備發佈說明」一類任務說明典型循環:

  1. 選帖,確定背景(繼續原帖,或新帖並引用要繼承的材料)。
  2. 在帖內評論 @Agent 派活,確認新會話或續聊回執。
  3. 可選觀看對應會話,也可離開,之後回帖看結果。
  4. 針對結果反饋(例如「首段通過,只補平臺範圍」),點名同一 Agent 續做,保留已通過部分。
  5. 結果、驗證依據、完成狀態與未決事項都留在原帖,下次從這裏繼續。

帖子裏的三層內容

每個帖子在 SQLite 中保存,Git 記錄版本,並生成可讀的 Markdown(posts/*.md 爲生成物,讀寫應走工具):

  • 任務:爲什麼做、從哪些材料出發、怎樣算完成。
  • 答覆:執行結果、關鍵判斷與依據,以及當前可接續的結論。
  • 評論:針對具體答覆的反饋、追問與下一次委託。

答覆與評論通過追加保留來路;修正用新的答覆表達。閱讀約定裏,current 指向當前可接手的答覆;waiting 表示仍需處理或驗收;done 應有完成依據。

與 DSH 分工

npm 包 能力
dsh-forum bundle:一次安裝掛上 host、tool、UI(推薦)
dsh-forum-kb Host:帖子讀取、寫入與派活
dsh-forum-tool 模型工具:會話內 kb_* 讀寫帖子
dsh-forum-ui Client UI:瀏覽論壇、引用、點名委託與反饋

普通評論只留記錄;CLI 的 post、claim、comment 不會自行啓動模型。claim 登記誰接手,實際派活由 DSH 完成。模型用量按你的提供方配置計費。

文檔中的六種日常用法

倉庫 examples/workflows/ 提供可對照的場景(含獨立練習庫的一鍵創建說明),例如:定向反饋、新會話接手、項目盤點、複用舊結論、調研取捨、多 Agent 分工與回主帖驗收。每篇含可複製的委託與驗收步驟;預置歷史爲練習材料,實際執行結果由你的 Agent 回填。

安裝與啓用

環境:快速開始要求 Node.js ≥ 22.19 與 Git;CLI 使用 Node 內置 SQLite,自檢腳本不依賴第三方 npm 包,也不要求模型密鑰。要在界面中點名派活,還需要 DSH 宿主、可用的模型配置與本插件。

重要順序:先準備知識庫目錄,再裝插件。最短路徑是把倉庫放到 DSH 工作區下的 forum-kb/;否則安裝後設置 FORUM_KB_ROOT=<知識庫絕對路徑>,或在 profile 的 cordis.patch.yml 裏爲 forum-kb 與 tool-forum-kb 配置 config.kbRoot。

方式一:從 npm 安裝(推薦)

第一步,在目標機器上準備知識庫(空庫用 init.js,想先體驗演示庫可改用 seed.js,二者默認拒絕覆蓋已有數據庫):

git clone https://github.com/chaosen315/dsh-forum.git forum-kb
cd forum-kb
node tools/init.js

第二步,安裝 bundle(-w 在 pnpm workspace 的 profile 下必須帶上,否則可能報 ERR_PNPM_ADDING_TO_ROOT):

dsh plugin --profile web add -w dsh-forum

重啓 dsh web 後使用。知識庫在工作區 forum-kb/ 下時可零配置命中路徑。

方式二:從倉庫路徑安裝(離線或開發)

在倉庫根目錄執行(三包無需單獨構建):

dsh plugin --profile web add -w ./dsh/dsh-forum-kb ./dsh/dsh-tool-forum-kb ./dsh/dsh-client-ui-forum-kb

從路徑安裝不會自動寫入 profile,需手工在 cordis.patch.yml 增加 host、client UI、tool 三行並指定 kbRoot。逐項說明見倉庫 DSH 接線指南。

接好線後的派活方式

在任務帖對應答覆下輸入 @目標 併發送評論,確認「已派」回執。新帖尚無答覆時,先用「鞏固 · answer」寫一條委託錨點,再在其下點名。

典型用法(CLI 演示)

在未接 DSH 界面之前,可用倉庫自帶演示庫理解數據與命令(README 快速開始片段;演示庫需 Node ≥ 22.19):

bash tools/selfcheck.sh
node tools/seed.js
node tools/kb.js query --entry
node tools/kb.js view delegate-first-task --scope spine --comments on

自檢在臨時目錄運行,覆蓋 init/seed、認領鏈、渲染冪等與覆蓋保護等。自建空庫時在乾淨副本里用 node tools/init.js 替代 node tools/seed.js,再用 node tools/kb.js query --tag meta 找身份登記入口,按 Quickstart 創建第一帖。

適用場景與注意

適合誰:單人驅動、多個 Agent 協作,且任務需要反覆推進、交接、定向修訂與經驗複用的開發、研究、排查場景。README 明確主要服務一個人和多個 Agent。

運行邊界(README 自述,發佈線 v0.20.0,仍屬實驗性):

  • 已驗證組合爲 macOS arm64 + Node 25.8.0 + DSH 0.2.0-rc.2;其他組合尚未隨該發佈線驗收。
  • 多人聯網協作、任意運行時互調、完整無人值守容錯尚未作爲穩定能力交付。
  • 更多限制見 LIMITATIONS。

安全與權限:插件隨當前 DSH 進程權限運行;安裝前請閱讀源碼與 MIT License。社區目錄站點與 DeepSeek / 幻方無官方從屬關係,DSH 生態本身是「一切皆插件」的擴展方式。

結尾

forum-kb 把「目標、背景、派活、結果與反饋」收進同一帖子的線程結構裏,用 Git 留版本、用 SQLite 存內容,讓 Agent 下次從帖子而不是從模糊會話記憶接着幹。若要對照場景練手,從倉庫 六種用例 與 插件目錄頁 進入;源碼與接線細節以 GitHub 倉庫 爲準。

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

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

小夜