前言¶
在 DeepSeek Harness(DSH)裏跑會話時,經常需要同時看回合數、token、TTFT、緩存命中、上下文水位和任務狀態,有時還要查 OpenCode Go 用量或 DeepSeek 高峯計價窗口。這些信息如果散落在終端、日誌或外部頁面裏,切換成本會比較高。
下面介紹的 dsh-widgets 是 DeepSeek Harness Web UI 的右側組件插件,把這些信息集中放到會話頁右側,並允許從設置中安裝、排序和調整組件。
這是什麼¶
dsh-widgets 由 Physicolor 維護,定位爲 DeepSeek Harness 的右側組件系統。
已覈實材料顯示,它是一個基於 Cordis composition model 的持久 DSH bundle 插件,許可證爲 MIT。它主要解決三類問題:
- 展示 DSH Web UI 會話運行指標,例如 turns、LLM/tool time、TTFT、rate、cache hits、tokens。
- 提供 task、context、heatmap、quote 等常用組件。
- 支持從
Settings > Components安裝、排序和調整組件,並內置組件市場。
核心功能¶
即時會話指標¶
dsh-widgets 提供右側 widget rail,用於展示即時會話統計,包括:
- turns
- LLM/tool time
- TTFT
- rate
- cache hits
- tokens
這些信息適合放在會話旁邊查看,減少對終端、日誌或外部頁面的切換。
常用組件¶
除即時指標外,已覈實的功能還包括:
- task widget
- context widget
- heatmap widget
- quote widget
- peak pricing widget,用於展示 DeepSeek peak-pricing windows
- OpenCode Go quota / usage 展示
其中,OpenCode Go quota / usage 通過 same-origin host proxy 獲取,使用 DSH credentials。
多列網格與 2x4 長卡¶
組件欄支持多列網格佈局,可配置爲:
1列2列4列
已覈實材料中,默認列數爲 2 列。組件還支持 2x4 長卡形態,以及 per-instance sizing,因此同一個組件可以按不同尺寸安裝和調整。
連續放大效果¶
dsh-widgets 提供 continuous magnification wave。
可以在 Settings → Components → Realtime follow 中切換該效果。開啓後,右側組件在指針移動時會產生連續放大反饋,而不是簡單的整欄放大。
內置組件市場¶
插件內置 component marketplace,支持:
- 瀏覽組件
- 搜索組件
- 預覽組件
- 按
widget@size安裝組件
已安裝組件支持 reorderable、resizable,並可在 Settings > Components 中繼續管理。
可擴展組件註冊表¶
dsh-widgets 提供 extensible widget registry,並採用 build-time discovery。
也就是說,新增組件不是直接手寫維護一份註冊表,而是按 widget unit 的方式擴展,構建時再生成註冊表。後文會在典型用法中給出相關命令。
安裝與啓用¶
當前已覈實材料中未提供官方 DSH 插件安裝命令,因此本文不給出拼接命令。
接入前可以先覈對以下信息:
- 支持:
DeepSeek Harness 0.1.x - Peer dependency:
@deepseek-ai/cordis ^4.0.1 - 許可證:
MIT
啓用後,widget rail 的配置會持久化到:
profiles/web/dsh-widgets-state.json
如果使用 OpenCode Go quota / usage,需要準備 DSH credentials。宿主側會註冊 same-origin proxy routes,瀏覽器端不發起跨域請求。
典型用法¶
1、設置列布局¶
先在 Settings > Components 中設置右側組件欄的列數。
可選值爲:
1
2
4
已覈實材料中,默認列數爲 2 列。
2、安裝組件¶
打開內置的 Component Marketplace,可以瀏覽、搜索和預覽組件。
安裝時按 widget@size 選擇,例如同一個 widget 可以按不同尺寸安裝。安裝完成後,可以在已安裝列表中繼續排序或調整尺寸。
3、切換放大效果¶
如果需要 continuous magnification wave,可以進入:
Settings → Components → Realtime follow
在這裏切換該效果。關閉後,組件欄回到常規展示狀態。
4、查看 OpenCode Go 用量¶
OpenCode Go quota / usage 依賴 DSH credentials,並經由 same-origin host proxy 獲取。
啓用後,瀏覽器不發起跨域請求。使用流程是先準備 DSH credentials,再在組件欄中查看相關 quota / usage 組件。
5、開發自檢¶
如果需要在本地驗證網站或組件狀態,可以運行:
node website/verify.mjs
這一步用於執行 website self-verification。
如果擴展了 widget 相關代碼,需要重新生成註冊表:
pnpm build
pnpm check:registry
pnpm build 會再生 registry。pnpm check:registry 會在 registry stale 時報錯,便於及時發現註冊表未更新的問題。
適用場景與注意¶
適合以下場景:
- 需要在 DSH Web UI 右側查看 turns、LLM/tool time、TTFT、rate、cache hits、tokens 等會話指標。
- 需要把 task、context、heatmap、quote 等組件放在同一側欄管理。
- 需要查看 OpenCode Go quota / usage。
- 需要按
widget@size安裝、排序和調整組件。 - 需要基於 extensible widget registry 擴展新的 widget unit。
使用前注意:
- 插件以當前 DSH 進程權限運行,安裝前應檢查源碼與許可證。
- 已覈實材料未提供官方 DSH 插件安裝命令,不要憑倉庫名自行拼接安裝命令。
- OpenCode Go quota / usage 依賴 same-origin proxy 和 DSH credentials。
- Peak pricing 時刻表當前是 hard-coded,custom schedule 在路線圖中。
- 組件欄配置會寫入
profiles/web/dsh-widgets-state.json。 - 社區目錄是獨立站點,不等同於 DeepSeek 或幻方的官方應用商店。
結尾¶
dsh-widgets 的價值在於把 DSH 會話中常用的運行指標、組件管理、用量展示和高峯計價信息集中到右側組件欄,減少開發者在多個頁面之間來回切換。
目錄頁:
https://www.skillhub.cn/plugins/Physicolor/dsh-widgets
GitHub:
https://github.com/Physicolor/dsh-widgets