前言¶
DeepSeek Harness (DSH) 採用插件化架構,允許用戶通過擴展功能來增強桌面客戶端的體驗。在使用 OpenCode Go 服務時,確認剩餘額度通常需要切換頁面或查看側邊欄,這打斷了工作流。本插件旨在解決這一痛點,直接在 Web UI 的輸入框下方展示額度信息,使開發者無需離開當前頁面即可監控用量。
插件介紹¶
插件名稱:blibilijojo/dsh-plugin-opencode-go-quota
維護者:blibilijojo
許可證:MIT
類別:客戶端
這是一個 DSH 插件,用於在 Web UI 的 composer dock 中顯示 OpenCode Go 的三個額度窗口:5 小時滾動、本週和本月。插件通過宿主原生樣式渲染,確保與 DSH 自帶的膠囊組件視覺統一。
核心功能¶
-
三個額度膠囊顯示
在輸入框下方的 dock 區域顯示三個 pill,分別對應 5 小時滾動、本週和本月額度。默認狀態下不佔用額外行高,與 DSH 自帶的統計信息並排顯示。 -
顏色狀態指示
額度膠囊的顏色會根據使用量變化:
- 灰色:使用率 < 70%
- 黃色:使用率 >= 70% 且 < 90%
- 紅色:使用率 >= 90% -
詳情浮層
點擊任意膠囊可打開浮層,顯示詳細的進度條、百分比以及各自的重置時間。關閉浮層的方式爲點擊外部區域或按Esc鍵。 -
設置開關與配置
插件提供了設置開關,可控制是否在輸入框下方顯示膠囊。在設置頁的 OpenCode Go 頁面中,可以填寫或清除 API Key。 -
API Key 安全管理
API Key 存儲在 DSH 的憑證庫中(鍵名爲OPENCODE_GO_API_KEY),不寫入設置文件。瀏覽器端僅能獲取脫敏提示(如oc_sk_…D4K),密鑰僅在 Host 進程中使用。 -
架構分離
插件採用前後端分離架構:Host 進程負責憑證解析、網關請求和路由處理;瀏覽器端僅負責渲染和 UI 交互。
安裝與啓用¶
- 將本倉庫克隆或下載到本地任意目錄。
- 打開 DeepSeek Harness(桌面版或
dsh web)。 - 在插件管理器中執行以下命令安裝本地 bundle:
plugin_manager action: install_bundle
target: <本倉庫的絕對路徑>
安裝完成後刷新頁面,若已配置 Key,三個額度膠囊將立即出現在輸入框下方。
配置方法¶
- 打開 DSH 設置,找到「智能體預設」下的「OpenCode Go」頁面。
- 在「API Key」輸入框中粘貼你的
oc_sk_...密鑰,點擊保存。 - 三個額度 pill 會立即顯示在輸入框下方。
- 若需隱藏,可關閉「顯示額度」開關。
工作原理¶
插件通過 DSH 的 webServer 註冊路由,與內置插件使用相同的 Host/Origin 校驗機制。Host 進程負責處理憑證解析、調用 OpenCode 網關接口 GET /zen/go/v1/usage 以及緩存數據。瀏覽器端通過注入的方式掛載到 conversation.composer.dock,僅負責渲染三個 pill 和設置頁。
主要文件包括:
- index.js:Host 半邊邏輯,處理憑證、網關請求及路由。
- client.js:瀏覽器半邊邏輯,負責渲染膠囊與浮層。
- package.json:聲明插件清單與注入點。
注意事項與限制¶
-
代碼修改生效
修改 Host 半邊代碼(如index.js)後,必須重啓 DSH 才能生效。DSH 會緩存已加載的 Host 模塊,僅修改瀏覽器端代碼(client.js)時刷新頁面即可。 -
訂閱類型支持
本插件僅支持 OpenCode Go / Go Plus 訂閱的額度窗口。不支持 Zen 餘額。 -
接口依賴
插件依賴 OpenCode 網關接口GET /zen/go/v1/usage。若上游接口調整路徑或返回結構,插件功能可能受影響,需同步更新。 -
密鑰管理
密鑰存儲在憑證庫中,卸載插件不會自動清除。如需刪除,可在設置頁點擊「清除密鑰」,或手動刪除憑證庫中的對應條目。
總結¶
該插件通過在 composer dock 中集成額度監控功能,簡化了開發者查看 OpenCode Go 用量的流程。其宿主原生樣式和清晰的配置界面,使其成爲 DSH 生態中實用的工具之一。
項目地址:https://github.com/blibilijojo/dsh-plugin-opencode-go-quota