DeepSeek Harness (DSH) 插件:OpenCode Go 剩餘額度 HUD

DeepSeek Harness (DSH) 是一個插件化的平臺,允許通過組合包擴展功能。如果你正在使用 OpenCode Go,需要監控滾動 5 小時、每週和每月的剩餘額度,dsh-opencode-go-quota 插件可以自動抓取用量看板數據,將剩餘百分比以類似遊戲血條的形式顯示在對話輸入框旁,並在設置中提供完整的卡片視圖。

該插件由 weijianguizhou 維護,遵循 MIT 許可證。

核心功能

插件提供以下能力:
* 實時額度顯示:抓取並解析 OpenCode Go 的用量看板,顯示剩餘百分比。
* 對話區 HUD:在對話輸入框下方展示三檔額度(5h / Week / Month)的血條,懸停可查看重置倒計時。
* 設置卡片:在「設置 → 插件配置」中提供完整的進度條展示。
* 手動刷新:點擊按鈕即可立即觸發數據抓取,無需重啓。
* 自動更新:按配置的間隔自動抓取並解析數據。

安裝與啓用

安裝過程需要指定你使用的 DSH profile 名稱(如 web、desktop 或 tui)。

  1. 打開終端,執行安裝命令:
    dsh plugin --profile web add https://github.com/weijianguizhou/dsh-opencode-go-quota
> 將 `web` 替換爲你實際的 profile 名稱。
  1. 安裝完成後,DSH 會將此組合包追加進該 profile 的配置中。安裝步驟完成後,需要重啓相應的 profile 才能加載插件。

配置

憑據僅存儲在本地,插件優先讀取配置文件,配置文件缺省時回退至環境變量。

1. 配置文件(推薦)

在你 profile 的 cordis.patch.yml 文件中,插入以下內容:

- insert:
    - id: opencode-go-quota
      name: dsh-opencode-go-quota
      config:
        workspaceId: '你的workspaceId'
        authCookie: '你的browser-auth-cookie'
        timeoutMs: 10000
        refreshMinutes: 5

2. 環境變量(備用)

如果配置文件中未填寫憑據,插件會嘗試讀取以下環境變量:

export OPENCODE_GO_WORKSPACE_ID=...
export OPENCODE_GO_AUTH_COOKIE=...

authCookie 在插件中標記爲敏感信息,不會出現在任何日誌或響應中。

獲取憑據

authCookie 是 HttpOnly 且可能被瀏覽器 App-Bound Encryption 加密存儲,無法通過腳本自動提取,需手動獲取。

  1. 使用瀏覽器登錄 opencode.ai。
  2. 進入 Go 用量頁面(能看到 Rolling / Weekly / Monthly 的頁面)。
  3. 按 F12 打開開發者工具,切換到 Network 標籤頁,刷新頁面。
  4. 點擊列表中第一個 opencode.ai 的文檔請求(Type 爲 document)。
  5. 在右側 Headers → Request Headers 中找到 Cookie 行。
  6. 複製 auth= 後面的整段字符串。

獲取 workspaceId:查看看板 URL,格式爲 https://opencode.ai/workspace/<這一串>/go,中間段即爲 workspaceId。

注意:Cookie 通常有效期約 90 天,過期後需重新獲取。

桌面端額外步驟(重要)

在 DSH 桌面端(非 Web 服務),設置命名空間需要顯式加入 allowlist 纔會被前端讀取,否則 HUD 和卡片不會顯示。

  1. 找到桌面端安裝目錄下的文件:
    <DSH Desktop>/resources/app.asar.unpacked/node_modules/@deepseek-ai/dsh-host-apiproxy/lib/index.js
  1. 在該文件中找到 WEB_SETTINGS_NAMESPACES 數組,添加 "opencode-go-quota":
    const WEB_SETTINGS_NAMESPACES = [
      "agent-loop",
      "shell",
      "locale",
      "permission",
      "ui-conversation",
      "ui-theme",
      "web-search-deepseek",
      "opencode-go-quota",   // <-- 添加這一行
    ];
  1. 保存並重啓 DSH Desktop。

注意:桌面端更新後會覆蓋 app.asar.unpacked 目錄,此補丁需在每次更新後重新應用。

驗證是否生效

安裝並配置完成後,重啓 DSH 並進入對話界面:

  1. HUD:在輸入框下方應出現 OpenCode Go 一排血條。
  2. 設置卡片:進入「設置 → 插件配置」,應能看到「OpenCode Go 剩餘額度」卡片。

若顯示「尚未配置」,說明憑據未填寫正確;若顯示「加載失敗」,多爲 Cookie 過期或看板結構變動。

開發與構建

DSH 插件要求 ./client 導出的是預構建的 bundle(window.__ModuleLoader__.load 形式)。倉庫中的 lib/client.js 已隨提交,若修改源碼需重新構建:

npm install
npm run build
npm run check
npm test

適用場景與注意

  • 適用場景:需要頻繁查看 OpenCode Go 剩餘額度,希望在不離開對話界面的情況下監控使用情況。
  • 注意:插件以當前 DSH 進程的權限運行,安裝前建議檢查源碼。桌面端用戶務必完成 allowlist 配置步驟。

更多詳情與源碼,請訪問 GitHub 倉庫。

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

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

小夜