dsh-tidewatch:DeepSeek API 高峯/低谷時段與賬戶餘額懸浮面板

DeepSeek Harness 插件開發者常需關注 API 價格波動與賬戶餘額。若在開發過程中出現計費高峯,可能導致請求失敗;餘額不足亦會中斷工作流。dsh-tidewatch 旨在解決這一痛點,將時段狀態與餘額信息直接集成到開發環境界面中。

這是什麼

該插件是一個 DeepSeek Harness 插件,在頁面右上角顯示 DeepSeek API 高峯/低谷時段、倒計時與賬戶餘額的懸浮卡片。

核心功能

  • 實時時段狀態燈:根據 DeepSeek 官方計價規則判定當前是高峯期還是低谷期。高峯時段爲北京時間週一至週五 09:00-12:00、14:00-18:00;其餘爲低谷時段,價格減半。
  • 北京時鐘 + 倒計時:顯示距下一時段切換還有多久,每秒更新。
  • 賬戶餘額:配置 API Key 後查詢餘額,每 5 分鐘自動刷新。
  • 可拖拽、可摺疊:標題欄拖動定位,點“-”收起。

安裝與啓用

插件提供兩種形態:

  • 常駐插件:開機即在,所有會話。使用命令安裝:
    dsh plugin --profile web add /path/to/dsh-tidewatch
裝載後會自動應用包內的 `cordis.patch.yml`,重啓 profile 生效。
  • 動態插件:僅當前會話,進程內。在 DSH 會話中用 cordis_define 定義,再用 cordis_run 激活。動態插件只存在於當前進程內存,DSH 重啓即消失,長期使用建議使用方案 A。

配置 API Key

插件默認複用 harness 配置的模型憑據,解析順序如下:

  1. 當前生效模型所屬 provider 的憑據引用 —— 由 agentDefaultModel.currentSelection() 得到 provider id,再用 llm.listConfigurableProviders() 定位配置對象,讀取其 apiKeyEnv。
  2. 用戶在面板裏手動保存的 Key(環境變量 DSH_PLUGIN_DEEPSEEK_KEY)。
  3. 兜底環境變量 DEEPSEEK_API_KEY。

面板頂部會顯示當前模型與 provider,並提供數據源下拉框,選中即可切換數據源。

安全說明

  • Key 永不回傳瀏覽器:前端只拿到憑據引用名、來源與可用性,以及餘額數值。
  • 餘額請求由 Host 執行:Key 經環境變量傳遞,不出現在命令行、不寫入日誌。
  • 餘額接口限制:只有 DeepSeek 系提供(<baseURL>/user/balance);其餘 provider 會被標記爲不支持。

技術實現

插件使用 connection.fetch 註冊路由(POST /api/dsh-tidewatch),而非 connection.rpc。這是由於當前宿主實現的注入限制,rpc.handle 內部訪問 owner.webServer 時必然拋出錯誤,導致路由註冊失敗。connection.fetch 的註冊路徑不經過 owner.webServer,故不受影響。

生效方式

  • 客戶端半邊(lib/client.js):改動後刷新頁面即可,無構建步驟。
  • 宿主半邊(lib/index.js / lib/tide.js):改動需重啓 DSH profile。

目錄與倉庫

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

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

小夜