前言¶
用 DeepSeek Harness(dsh)跑多 Bot 協作時,成員狀態、消息流水和 token 消耗分散在本地 JSON、會話日誌裏。要判斷「誰在跑、任務怎麼交接、哪臺 Bot 最費 token」,往往得來回翻文件或依賴零散日誌。dsbot-monitoring 是社區維護的 dsh 插件,把 dsh 已落盤的數據整理成一塊只讀大屏,並在客戶端左側導航增加「作戰室」入口;它不產生新數據,也不向公網發請求。
這是什麼¶
dsbot-monitoring(GitHub:HaoGengfa/dsbot-monitoring)由維護者 HaoGengfa 發佈,分類爲客戶端插件。簡介與倉庫說明一致:爲 DS Bot 團隊提供實時作戰室——活動密度、消息流、任務交接與各 Bot 的 token 用量,全部從本機 dsh 狀態與會話日誌讀取。
插件當前版本爲 0.1.0,許可證 MIT。社區目錄頁見 SkillHub 條目;該站點爲獨立生態目錄,與 DeepSeek / 幻方無官方從屬關係。
核心功能¶
安裝並重啓 dsh 後,可從導航進入作戰室,或直接訪問靜態頁面(前綴 /bot-stage)。數據約每 1 秒刷新;頁面隨主題深色底,純前端看板。
作戰室視圖(stage.html)¶
面向「現場」:主 Bot 與成員拓撲、連線隨活動高亮;最近 60 分鐘活躍度曲線;帶時間戳的派活與回執日誌流(自動上滾);每位成員一張思考卡(狀態、輪次/步驟、工具調用、最近一段已落盤推理);統計條(輪次、輸出/輸入/緩存 token、工具調用次數及佔比);按輸出 token 排序的成員排行。
數據看板視圖(neural.html)¶
面向「彙總」:文檔稱共 17 塊統計面板,包括活躍度、今日時段、回執時延、能力雷達、工具與角色分佈、協作環、成員產出佔比、單輪效率、當前步進、狀態與效率、羣維度、事件構成與流轉、異常與失敗、日誌流等。兩視圖在同一頁面頂欄切換,右側顯示實時/快照狀態、時間與全屏。
復盤回放¶
可選時間窗把真實歷史按原始時刻重放:成員卡、派活回執、思考內容隨時間軸更新;支持暫停、拖進度、調速(10×–300×)。回放數據經 GET /bot-stage/api/replay?from=&to= 拉取。
HTTP 接口(只讀爲主)¶
路由掛在 dsh webServer,前綴 /bot-stage:
| 方法 | 路徑 | 說明 |
|---|---|---|
| GET | /bot-stage/api/live |
實時快照 |
| GET | /bot-stage/api/replay?from=&to= |
回放事件 |
| POST | /bot-stage/api/tasks/confirm |
標記任務已確認 |
| GET | /bot-stage/* |
靜態 HTML 等 |
任務確認狀態寫入插件目錄下 data/task-confirm.json,不向 dsh 核心狀態文件寫入。
安裝與啓用¶
插件在 dsh 啓動時加載,安裝後須重啓 dsh,否則導航不會出現「作戰室」。
從 GitHub 安裝(推薦)¶
dsh plugin --profile <profile 名> add github:<你的 GitHub 用戶名>/dsbot-monitoring
說明:README 佔位爲「你的 GitHub 用戶名」;若倉庫在 HaoGengfa 名下,安裝時需用你 fork 或有權引用的 github:所有者/dsbot-monitoring 形式,與本地 dsh 插件源約定一致。
本地目錄安裝(開發)¶
dsh plugin --profile <profile 名> add /path/to/dsbot-monitoring
裝完後重啓 dsh,檢查左側導航是否多出「作戰室」,設置頁是否多一張說明卡。
環境與版本¶
| 項 | 要求 |
|---|---|
| dsh | >=0.2.0-rc.2 |
| Node | ^22.19.0 \|\| >=24.0.0 |
package.json 的 engines.dsh 與 peerDependencies 聲明瞭上述範圍。dsh 對版本不匹配會靜默跳過插件(日誌無明確報錯)。若確需在不兼容版本上試用,可顯式豁免(有崩潰風險,先備份 profile):
dsh plugin allow-version --profile <profile 名> dsbot-monitoring@0.1.0 --accept-risk
典型用法¶
1、重啓 dsh 後點左側「作戰室」,或瀏覽器打開:
<你的 dsh 地址>/bot-stage/stage.html # 作戰室
<你的 dsh 地址>/bot-stage/neural.html # 數據看板
2、在頂欄切換「作戰室」與「數據看板」,觀察綠色「實時」或黃色「快照」狀態。
3、需要覈對歷史協作過程時,使用復盤回放並調節倍速。
4、對需人工確認的任務,通過頁面觸發確認(對應 POST /bot-stage/api/tasks/confirm),id 記入插件自有 data/task-confirm.json。
開發前端時直接改 public/ 下文件並刷新即可(靜態資源 Cache-Control: no-store);改 index.mjs 等 Node 側後需重啓 dsh。本地聯調建議 dsh plugin add <本地路徑> 安裝插件目錄。
數據來源與隱私¶
全部只讀本機路徑:
| 路徑 | 內容 |
|---|---|
~/.dsh/bot/state.json |
成員、顏色、消息、羣聊、任務 |
~/.dsh/bot/inflight.json |
運行中成員、開始時間、排隊 |
~/.dsh/sessions/<項目>/<會話>/session.v4.jsonl.zstd |
輪次、步驟、工具、推理、usage |
<插件目錄>/data/task-confirm.json |
已確認任務 id |
會話日誌爲分幀 zstd:插件只讀尾部約 320 KB、最多解壓 56 幀,未變則複用緩存。隱私上文檔寫明:本機處理、不外發請求、不改被讀的 dsh 文件(除插件自己的確認狀態)。
適用場景與注意¶
適合:本地或多 Bot 團隊需要一屏觀察拓撲、日誌、token 與回放,且已使用 dsh >=0.2.0-rc.2 的場景。
邊界(README 已知說明):
- 思考區展示的是已落盤推理,非逐字流式;進行中語句須等寫入日誌纔出現。
- 「進行中」依
inflight.json,輪間可能短暫顯示空閒。 - 讀不到輪次開頭時,進度可能只顯示「第 N 步」。
- token 累計與會話
usage對齊官方sessionStats口徑;日誌格式變更時數值可能不一致。
安全:插件以當前 dsh 進程權限讀取 ~/.dsh 與會話目錄。安裝前應查看 源碼倉庫 與 MIT 許可證,僅在信任的 profile 中啓用。
結尾¶
dsbot-monitoring 把 dsh 已有的 Bot 狀態與會話日誌收成作戰室與數據看板兩條視圖,並支持歷史復盤,適合需要本地可觀測、零外發的 DS Bot 協作排障與復盤。目錄介紹見 SkillHub,源碼與完整說明見 GitHub:HaoGengfa/dsbot-monitoring。