前言¶
DSH(DeepSeek Harness)的理念是「一切皆插件」。對智能體開發者來說,插件多了以後,問題不只是裝哪個,而是當前 DSH 進程裏有哪些插件、哪些工具在跑、哪個插件可以安全卸載。
jelly-000/dsh-3d-plugin-graph 是一個 web 客戶端插件。它讀取當前 Cordis runtime,把插件拓撲渲染成可旋轉、縮放、拖拽的 3D 圖。節點、邊和狀態來自運行時;無可用來源時纔會使用 offline demo fallback。插件目錄是獨立站點,不是 DeepSeek / 幻方官方應用商店。
這是什麼¶
先交代定位和基本信息:
- 插件名:
jelly-000/dsh-3d-plugin-graph - 維護者:
jelly-000 - 許可證:
MIT - 版本:
0.1.0 - 客戶端平臺:
web;dsh.client.platform和dshClient.platform均爲web - 作用:在 DSH web UI 中提供一個「插件圖譜」入口,用於查看即時插件拓撲、工具活動、連接狀態,並執行插件啓用 / 禁用操作。
核心功能¶
即時運行時數據¶
下面介紹它讀取哪些數據。插件從運行中的 Cordis runtime 獲取節點、邊、服務與工具面:
ctx.loader.entriesctx.reflect.storectx.tools.schemastools/resultevents
當沒有可用來源時,它會回退到 offline demo fallback,避免打開後變成空頁面。
交互方式¶
圖譜支持常見的 3D 操作:
- 拖拽空白區域:
orbit Shift/ 右鍵拖拽:pan- 滾輪:
zoom,並錨定在光標位置 - 拖拽節點:帶物理效果地移動節點
- 標籤:支持
label LOD,根據距離和遮擋調整顯示
插件操作¶
這個插件不只是看:
- 卸載需要
double confirmation。 - 卸載實現爲
entry.update({disabled:true}),後續不會auto re-insertion。 - 服務端 guard 會拒絕核心基礎設施(
loader/include/isolate)、圖插件自身,以及級聯會命中圖的卸載操作。 - 重新啓用是一次操作。
狀態與活動¶
- live tool-execution log
- connection-state pill
- runtime flow effects
前端與可訪問性¶
- single-file UI,zero external dependencies,no CDN,no build step
- 支持
prefers-reduced-motion - 支持
focus-visibleoutlines - 使用
aria-liveannouncements - 使用
color-scheme: dark
安全¶
安全姿態包括:
- CSP meta tag
X-Content-Type-Options: nosniff- 對進入
innerHTML的服務端字符串使用esc() - 針對
XSS/prototype-pollution/malformed-state的對抗測試
性能¶
自動化 170-node synthetic load 測試中,mean frame gap ≈ 17 ms。
安裝與啓用¶
先確認環境:需要一個帶 web profile 的 DSH 安裝。
然後執行安裝命令:
dsh plugin --profile web add https://github.com/jelly-000/dsh-3d-plugin-graph
接着重啓 web profile,或讓 HMR 生效。本地開發時,也可以把 add 指向目錄而不是 URL。
經過上面的步驟,打開 DSH web UI,右下角會出現「插件圖譜」浮標。
典型用法¶
打開圖譜¶
可以從 DSH web UI 的浮標進入,也可以直接訪問:
- 圖譜 UI:
http://127.0.0.1:3080/plugins/dsh-3d-plugin-graph/ - Live state JSON:
http://127.0.0.1:3080/plugins/dsh-3d-plugin-graph/state
啓用或禁用插件¶
接口形狀如下,action 可爲 plug 或 unplug:
POST /plugins/dsh-3d-plugin-graph/action
{
"action": "unplug",
"id": "plugin-xxx"
}
啓用時把 action 改爲 plug。
常用控制¶
- 拖拽空白區域:
orbitcamera Shift/ 右鍵拖拽:pan- 滾輪:
zoom,錨定在光標處 - 拖拽節點:移動節點
- 單擊節點:select 並查看詳情
- 雙擊節點:focus
- 雙擊空白區域:reset view
R:reset viewEsc:close popup / confirmation- 搜索框:fuzzy plugin search
開發與測試¶
倉庫提供以下命令:
npm install
npm run verify
npm run test:ui
npm run test:security
npm run test:perf
這些測試套件可以在沒有 live DSH instance 的情況下運行,依賴 mock servers 和 real headless Chrome。
適用場景與注意¶
適合:
- 正在維護 DSH 插件系統的開發者
- 需要查看當前 web profile 中插件運行狀態、工具活動和連接狀態的人
- 在卸載插件前想確認服務端 guard 和級聯影響的場景
注意:
- 插件以當前
dsh進程權限運行。 - 它會讀取 runtime 數據,並能執行
plug/unplug,安裝前應檢查源碼、依賴和MIT許可證。 offline demo fallback只保證界面可打開,不代表當前 DSH 真實狀態。- 服務端 guard 會拒絕某些卸載請求;如果卸載被拒絕,優先覈對目標插件是否屬於核心基礎設施或會命中圖本身。
結尾¶
dsh-3d-plugin-graph 的價值,是把 DSH 插件生態的 live 狀態放在一個 3D 界面裏:可看節點、可看工具活動、可執行插件操作,並且把安全 guard 放在服務端。