dsh-peak-valley-reminder:DSH 裏的峯谷時段與餘額提醒

前言

DeepSeek Harness(DSH)把智能體開發收進一個可擴展的桌面/Web 客戶端。調用 DeepSeek API 時,官方按峯谷分檔計價:峯時標準價,谷時約爲 5 折;工作日在北京時間 09:00、12:00、14:00、18:00 還會切換,週末和法定節假日全天谷時。若只靠記憶或偶爾查文檔,很容易在峯時跑大批推理、或在切換點前後誤判當前檔位。

社區插件 dsh-peak-valley-reminder(維護者 Anmoku-Yomogi,SkillHub 目錄頁)在 DSH 窗口裏加兩塊常駐 UI:頂部居中的「靈動島」顯示當前峯/谷與距下次切換的倒計時,右下角一張可拖動的餘額卡顯示賬戶餘額。插件通過 Cordis 以 insert 方式掛載,非 DeepSeek 官方出品;分類爲客戶端,當前 GitHub 星標爲 1,許可證 MIT,版本 1.0.0。

下面介紹它解決什麼問題、界面如何工作,以及如何在 profile 裏用本地 link 啓用。

這是什麼

dsh-peak-valley-reminder 是面向 DSH Web 客戶端的 bundle 插件。它不替代官方定價頁,而是把「現在是什麼時段、還有多久切換、登錄賬戶還剩多少錢」壓進兩小塊界面:默認只露出頂部一個 32×32 圓點,需要時再展開;餘額單獨放在右下角,避免擋主工作區。

宿主需能提供 @deepseek-ai/dsh-api-remotes(讀餘額)、@deepseek-ai/dsh-client-locale(中英文)、@deepseek-ai/dsh-client-ui-layout(shell.overlay 槽位)。餘額來自當前登錄賬號的實時接口,資料寫明不會寫入本地文件,僅在內存中緩存約 10–30 秒(隨空閒/消耗狀態變化)。

峯谷規則(插件如何實現)

插件按 DeepSeek API 官方定價時段(北京時間 UTC+8)硬編碼邏輯:

  • 峯時:週一至週五 09:00–12:00、14:00–18:00。
  • 谷時:其餘時間(含 12:00–14:00、18:00 之後)、週末及法定節假日全天。
  • 法定節假日使用內置假日表(資料已覆蓋 2026、2027 年);節假日與週末不會出現峯時,界面也不會進入峯時紅色主題。

工作日四個切換點與「最後一小時」提醒對應關係如下(摘自倉庫說明):

時刻 變化 切換前 1 小時(08:00–09:00 等)
09:00 谷 → 峯 黃色主題 + 呼吸動效
12:00 峯 → 谷 保持紅色主題 + 呼吸
14:00 谷 → 峯 黃色主題 + 呼吸
18:00 峯 → 谷 保持紅色主題 + 呼吸

官方若調整時段或假日安排,需自行更新源碼中的 HOLIDAYS 與四個時間常量。

核心功能

頂部靈動島

收起時,窗口頂部水平居中(距上邊緣約 4px,可能與原生標題欄重疊)顯示圓點:中間實心圓表示峯/谷,外圈 2px 進度環,中心粗體等寬數字表示距下次切換的剩餘時間。

中心數字(收起)

剩餘時間 顯示
> 24 小時 天數向下取整 +「天」,如 2天
1 小時 ~ 24 小時 小時向下取整(最小 1)
< 1 小時 分鐘向上取整(1–59)

外圈進度環:剩餘不足 24 小時時表示當前整點小時內剩餘比例,整點回滿後線性遞減;≥ 24 小時時底環恆滿,併疊加約 22% 弧長的流光(2.4 秒/圈),顏色隨谷/峯爲薄荷綠或淺紅。

懸停、鍵盤聚焦或單擊(單擊可固定展開)後,圓點展開爲約 500×116、圓角 30px 的卡片:左側 16px 狀態點,中間爲時段標題與 HH:MM:SS 或「N天M小時」大號倒計時,右側爲賬戶餘額及充值/贈送明細。展開後餘額列每 60 秒刷新。Esc 可取消固定;整塊區域聲明 app-region: no-drag,避免被窗口拖拽區吞掉點擊。

顏色由「當前峯/谷」與「是否處於切換前最後一小時」決定:谷時常綠、峯時常紅;僅 谷 → 峯 的最後一小時改爲琥珀黃主題;峯 → 谷 的最後一小時仍保持紅色。收起狀態下最後一小時對圓點與中心數字有 10 秒週期的呼吸動效;prefers-reduced-motion: reduce 時會關閉呼吸、流光與展開動畫。

右下角餘額卡

默認停在右下角(right/bottom: 12px),一行如 餘額:¥10.29,可拖動,雙擊復位。刷新策略:空閒每 30 秒;任一 Pane 會話 running 時每 10 秒,且狀態切換時會立即補拉。

狀態文案包括:已加載金額、加載中、未登錄(登錄後查看)、失敗(暫不可用)。人民幣餘額成功加載後,邊框色相按 1–100 元映射紅→綠;金額越低越紅。有會話消耗時,邊框呈現兩段橙色光斑逆時針流轉(1.8 秒/圈);空閒時爲 4 秒/輪的掃光。

安裝與啓用

資料說明:當前以 profile 內本地 link 安裝,而非 dsh plugin add 一類遠程命令。安裝前請自行閱讀 GitHub 倉庫 源碼與 MIT 許可證;插件以當前 DSH 進程權限運行,並可訪問登錄態相關的餘額接口。

  1. 將倉庫放到本機目錄(README 示例爲 D:\plugins\dsh-peak-valley-reminder)。
  2. 打開 profile 目錄(桌面端默認爲 %USERPROFILE%\.dsh\profiles\desktop),編輯 package.json,增加依賴與 bundle:
{
  "dependencies": {
    "@local/dsh-peak-valley-reminder": "link:D:/plugins/dsh-peak-valley-reminder"
  },
  "dsh": {
    "profile": {
      "bundles": [
        "@local/dsh-peak-valley-reminder"
      ]
    }
  }
}

(bundles 中需保留你已有的其它條目;link: 路徑改成你本機實際路徑。)

  1. 在 profile 目錄執行:
pnpm install
  1. 重啓 DSH。啓動後應同時看到頂部居中圓點與右下角餘額卡。

插件通過 cordis.patch.yml 掛載,id 爲 dsh-peak-valley-reminder,採用 insert 方式,不覆蓋內置界面。倉庫已提交構建產物 client.js,安裝時無需執行 node build.mjs。

典型用法

日常開發中無需額外配置項:登錄 DSH 後,看頂部圓點顏色與數字即可判斷峯谷與倒計時;點開靈動島可看完整時段說明與餘額列。需要餘額始終可見又不想擋內容時,可把右下角餘額卡拖到靠邊位置,雙擊恢復默認位置。

若你修改 src/client.js 或 src/BalanceCard.js,在倉庫根目錄執行 node build.mjs 重新生成 client.js,勿直接改根目錄產物文件。

適用場景與注意

適合誰:長期在 DSH 裏調 API、關心峯谷價差、又希望餘額與時段信息常駐視野的開發者。

平臺:README 寫明目前主要在 Windows 桌面端驗證;package.json 中 client platform 爲 web,Web 端理論上可用但未完整迴歸。

生態:DSH 的理念是「一切皆插件」;SkillHub 爲社區目錄,與 DeepSeek / 幻方無官方從屬關係。本插件與 DeepSeek 官方無關,峯谷時間與假日表爲硬編碼,定價政策變更時需關注上游並自行更新插件。


經過上面的步驟,你可以在不大改工作流的前提下,把峯谷切換與賬戶餘額收進 DSH 窗口頂部的靈動島和右下角餘額卡。源碼、截圖與開發說明見 GitHub:Anmoku-Yomogi/dsh-peak-valley-reminder;分類與簡介亦可在 SkillHub 插件頁 覈對。

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

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

小夜