dsh-plugin-whale-fenggu:在 DSH 裏盯住 DeepSeek 峯谷計價時段

前言

DeepSeek 官方 V4 從 2026-08-17 起按北京時間峯谷計價:高峯貴、低谷便宜。09:00、12:00、14:00、18:00 這幾個邊界不難記,難的是長任務跑着跑着忘了看錶——重活撞進高峯,token 花銷就上去了。自己記時段是一種辦法;更省心的做法是讓一個常駐組件替你盯表,在切換前提前喊你。本文介紹的 dsh-plugin-whale-fenggu 就是這樣一個插件。

DSH 的理念是「一切皆插件」,這類小工具正好走插件體系。

這是什麼

dsh-plugin-whale-fenggu(藍色大肥魚 · DeepSeek 峯谷提醒)由 Mungbean-Cake 維護,MIT 許可證,當前版本 1.1.0。它是一個面向 DSH Web GUI 的純前端、零依賴插件:按北京時間即時判斷 DeepSeek 峯谷計價時段,在屏幕角落掛一塊「小肥魚」卡片,顯示當前時段、北京時間與距下次切換的倒計時,並在切換前按設定提前量彈出站內 toast。

名字裏的「梁文峯 / 梁文谷」是社區梗。項目 README 裏解釋了出處:DeepSeek 創始人叫梁文峯,官方 V4 按北京時間峯谷計價,於是社區把高峯時段稱作「梁文峯」(貴),低谷時段稱作「梁文谷」(便宜),插件沿用了這套叫法。

時段規則

插件按北京時間區分兩個時段:

  • 高峯(梁文峯):09:00–12:00、14:00–18:00,價格貴
  • 低谷(梁文谷):其餘時間,價格便宜

實現上,時區用 Intl.DateTimeFormat('Asia/Shanghai') 取北京時間(該時區無夏令時,與官方規則一致);每日以 09:00 / 12:00 / 14:00 / 18:00 爲邊界,高峯取左閉右開區間 [09:00,12:00) 與 [14:00,18:00)。牆鍾時間被編碼爲統一 epoch 再比較,取下一個邊界算出剩餘分鐘數,這就是卡片上倒計時的來源。

核心功能

卡片與提前提醒

  • 即時播報:卡片常駐顯示當前是梁文峯還是梁文谷,附北京時間與距切換倒計時。
  • 提前提醒:切換前 N 分鐘在屏幕下方彈出站內 toast,默認提前 10 分鐘,可設 1–120 分鐘。
  • 防重複:每次時段切換按「日期 + 目標時段」記錄,只提醒一次。
  • 手動操作:點 📢 手動播報當前時段,點 🧪 測試提醒樣式,不用真等到切換點。

拖動與位置記憶

按住卡片的空白處(頭部、貼士區)可以拖到屏幕任意位置,座標自動記錄爲 {x,y}。配置以 Cookie + localStorage 雙寫,存儲鍵爲 whaleFengguReminder:config:Cookie 不區分端口,所以 DSH Desktop 每次啓動換端口,位置和設置也不丟;localStorage 兜底記錄當前端口下的狀態。

健壯性上做了幾件事:拖動座標做淨化處理,防止 NaN 之類非法值導致卡片離屏;組件被外部移除後,靠 20 秒一次的自愈巡檢重建;單點錯誤用 try/catch 隔離,不拖垮頁面其他部分;全局用 __WHALE_FENGGU__ 去重,避免重複注入出現兩個卡片。

配置項

點卡片上的 ⚙️ 按鈕打開設置面板,可調項如下:

鍵 默認 說明
enabled true 總開關
leadMinutes 10 切換前提前提醒分鐘數(1–120)
position left 預設位置:左下 / 右下
pos null 自定義座標,拖動後自動記錄
opacity 0.95 卡片透明度(0.2–1,滑塊調節)
visible true 顯示開關,關掉後縮成小魚圓點,點擊恢復
minimal false 極簡模式,只顯示當前狀態
toast true 站內 toast 提醒開關
tips true 省 token 小貼士輪播開關
lastNotified {} 已提醒記錄,自動維護,用於防重複

另外幾點:

  • 設置面板內置省 token 指南:合併請求、長會話開新檔、高峯少跑重活等;卡片上還有小貼士輪播。
  • UI 跟隨 blue-fantasy(藍色幻想)皮膚風格:靛藍紫調、毛玻璃、圓角、漂浮動畫。
  • 組件內置 UI 微調 CSS:隱藏「插件市場」底部按鈕、讓餘額徽章獨佔一行(後者配合餘額監控插件使用),正式安裝後隨插件一併生效。

安裝

前提:需要 DSH Desktop(或 dsh web profile),且 DeepSeek 官方 V4 峯谷定價已生效(2026-08-17 起)。

方式 A:正式安裝(推薦)

dsh plugin --profile web add <本項目路徑>

把 <本項目路徑> 換成本地克隆或解壓後的項目目錄。安裝由 dsh plugin 寫入 lockfile 與受保護事務,重啓後不丟。裝完重啓 DSH Desktop,再按 Ctrl+Shift+R 強制刷新頁面即可看到卡片。

Windows 桌面端注意:安裝前先完全退出 DSH Desktop(包括托盤圖標),否則 pnpm 會因文件佔用報 EPERM。

方式 B:過渡注入(不想裝插件時)

項目自帶 lib/widget.raw.js,是一個自包含的 IIFE,無任何依賴,自帶去重與 DOM ready 處理。把它整段粘貼進任意一個已加載的客戶端插件即可。README 給的例子是餘額監控插件 @rainronin/dsh-balance-monitor:

// balance-monitor/lib/client.js 的工廠函數內、return module.exports 之前:
// 粘貼 lib/widget.raw.js 的全部內容

保存後刷新頁面即生效。

這個方式的代價要說清楚:node_modules 被 pnpm 重鏈時(比如安裝、更新其他插件),注入內容會被還原,需要重新注入,或者回頭改用正式安裝。

典型用法

1、啓動後,左下角(默認位置)出現小肥魚卡片,即時顯示當前時段與倒計時。
2、按住卡片頭部或貼士區,拖到不擋視線的位置。
3、點 ⚙️ 打開設置面板:調提前提醒分鐘數、切換預設位置或使用拖動後的自定義座標、開關各類功能;點 🔄 一鍵復位回左下角。
4、點 📢 聽一次手動播報,點 🧪 預覽提醒 toast 的樣式。
5、到切換時間前 N 分鐘,屏幕下方彈出提示 toast;每個時段切換隻提醒一次。

適用場景與注意

適合誰:在 DSH Desktop / web profile 裏跑任務、在意峯谷差價、不想自己記時段邊界的人;如果已經在用 blue-fantasy 皮膚,卡片的視覺風格也是配套的。

使用前有幾點要留意:

  • 插件以當前 dsh 進程的權限運行。安裝任何第三方插件前,建議先讀一遍源碼、確認許可證(本項目爲 MIT)符合自己的要求,再決定是否裝入。
  • 過渡注入不等於正式安裝,pnpm 重鏈後會失效,別把它當長期方案。
  • 卡片不見了,排查順序:先 Ctrl+Shift+R 強制刷新;如果用的是過渡注入,多半是被重鏈還原了,重新注入或改用正式安裝。
  • 更詳細的原理、排錯與貢獻說明見倉庫內的 docs/TUTORIAL.md。

小結

dsh-plugin-whale-fenggu 做的事情不復雜:把峯谷時段表變成一塊帶漂浮動畫的常駐卡片,在你快忘記的時候提前喊一聲,順帶塞幾條省 token 的建議。純前端、零依賴,接入成本低。如果你經常需要掐着時段安排任務,可以裝一個試試。

項目地址:

  • GitHub:https://github.com/Mungbean-Cake/dsh-plugin-whale-fenggu
  • 社區目錄頁:https://www.skillhub.cn/plugins/Mungbean-Cake/dsh-plugin-whale-fenggu

注:社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。

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

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

小夜