概览
@local/deepseek-peak-indicator
README / ZH
插件文档
DeepSeek 峰谷时段指示器
一个轻量的 DeepSeek Harness 插件,直接在侧边栏底部显示当前 DeepSeek API 定价时段——峰时(Peak) 或谷时(Off-Peak)——从应用启动即可见,无需打开任何 Session。点击它可查看距离下次定价切换的 倒计时。
插件不需要 API 密钥,不发起网络请求,也不轮询任何内容:时段完全由本地时钟和一个内置且已核实的 中国节假日日历在本地计算得出。
Peak 指的是官方 API 定价时段,与服务器拥塞或服务健康状况无关。 指示器只报告 DeepSeek 规定的计费时段,不对 API 负载、延迟或可用性作任何说明。峰时适用较高的 峰时费率,谷时则为半价费率。
安装
需要 DeepSeek Harness Desktop v0.2.1-rc.5——本版本正是针对该版本构建并验证的。无需额外的 运行时、构建步骤或 npm 依赖。
dsh plugin --profile web add github:jalilahmad/deepseek-peak-indicator
安装后重新加载 Harness Web GUI(或重启 DeepSeek Harness Desktop)。在支持 HMR 的 harness 上, 通常刷新页面即可。
改用插件管理器安装
- 在 Harness 侧边栏打开 Plugins。
- 选择 Add plugin → Install a third-party plugin。
- 输入规格
github:jalilahmad/deepseek-peak-indicator并安装。 - 确认该 bundle 已切换为 On,然后重新加载页面。
功能特性
- 一眼即知,三种状态——🟢
OFF-PEAK、🔴PEAK、⚪UNKNOWN。 - 下次切换倒计时——弹出层以整小时和整分钟显示剩余时间。
- 边界准确——状态恰好在官方时段边界切换;倒计时每分钟刷新一次,切换本身由精确定时器完成。
- 始终在场——位于 root 作用域的侧边栏底部条目,在任何 Session、Conversation 或 Composer 打开之前就已存在。
- 感知节假日——2025 与 2026 年的中国法定节假日日期均已核实;未核实的年份会如实报告为 UNKNOWN,绝不猜测。
- 时区安全——时段按 UTC 判定,节假日日期按中国标准时间判定,所有换算都使用浏览器的 IANA
Intl数据库(无硬编码偏移,对夏令时安全)。 - 小巧且私密——一个客户端 bundle、一个 Host 行、一个 60 秒定时器外加一个切换定时器;无 API 密钥、无后端、无数据库、无遥测、无网络轮询。
- 生命周期干净——定时器、监听器、观察器和样式在卸载时全部释放;重新加载只会创建一个指示器。
截图
以下截图均来自运行本插件的 DeepSeek Harness Desktop v0.2.1-rc.5 的真实画面。为保护隐私,工作区名称 与会话标题已做模糊处理。
完整应用——侧边栏底部的指示器

带极简弹出层的 OFF-PEAK

插件管理器中的插件条目

PEAK 与 UNKNOWN 截图仍待补充,因为这两种状态需要拍摄时并不存在的真实时段条件:PEAK 只出现 在官方工作日峰时窗口内,UNKNOWN 只在当年中国法定节假日日历尚未核实时出现。它们将在下一个真实 PEAK 时段之后补充;具体条件与拍摄步骤见 docs/screenshots/SCREENSHOTS_NEEDED.md。
工作原理
指示器注册在 sidebar.footer.action 中——这是随附的 @deepseek-ai/dsh-client-ui-sidebar 包
所声明的、位于 Settings 旁边的 root 作用域列表插槽。它属于常驻的应用外壳,因此不依赖 Session、
Conversation 或 Composer。侧边栏展开时显示一个小胶囊(圆点 + 标签);56 px 窄栏则显示只有圆点的
紧凑形态。
状态
| 状态 | 含义 |
|---|---|
| 🔴 PEAK | 处于官方峰时窗口内、日期为周一至周五,且该日期不是已核实的中国法定节假日。适用较高的 API 价格。 |
| 🟢 OFF-PEAK | 其他所有情况:不在两个每日峰时窗口内、处于周末,或处于已核实的中国法定节假日。适用半价 API 价格。 |
| ⚪ UNKNOWN | 处于工作日峰时窗口内,但该年份的本地节假日日历未核实(缺失、未发布或格式错误)。插件拒绝猜测。 |
周末全天为谷时,包括周末调休上班日,这遵循 DeepSeek 关于周末和节假日“全天”谷时的表述。
极简弹出层
点击指示器;再次点击、按 Escape,或点击外部即可关闭。弹出层恰好只有两行:
🔴 PEAK
Off-Peak starts in: 2h 13m
🟢 OFF-PEAK
Peak starts in: 61h 29m
⚪ UNKNOWN
Next transition cannot be reliably determined.
倒计时仅显示整小时和整分钟(绝不显示秒)。它每分钟刷新一次,而一个精确的切换定时器会在官方边界翻转 状态。如果当前时段的结束时间会落在节假日日历尚未核实的年份,插件会显示 UNKNOWN 那一行,而不是 编造一个倒计时。
时区处理
- 峰时窗口按 UTC 的当日分钟数比较。
- 中国节假日日期按该时刻的
Asia/Shanghai日历日期查表。 - 中国午夜边界由该时区经
Intl推导(对Asia/Shanghai而言即 16:00 UTC)——是计算得出的, 而非硬编码。 - bundle 保留了基于 IANA 的夏令时安全辅助函数,并以
Asia/Kabul作为默认显示时区 (client.js中的DISPLAY_TIME_ZONE);当前的极简弹出层有意只显示时长,因此 时区处理不影响显示内容,只影响正确性。
定价时段
依据官方 DeepSeek 定价文档:
| 时段 | 时间(UTC) | 价格 |
|---|---|---|
| 峰时 | 周一至周五,01:00–04:00 与 06:00–10:00——不含中国法定节假日 | 完整峰时价格 |
| 谷时 | 其他所有小时、周末,以及中国法定节假日全天 | 峰时价格的一半 |
对应北京时间:09:00–12:00 与 14:00–18:00。根据官方变更日志,峰谷定价自 2026-08-16 16:00 UTC 起引入;请始终在官方定价页面确认当前数值。
官方来源:DeepSeek 定价 · 中文定价页面 · 变更日志。
中国法定节假日
节假日日期保存在可编辑的 holidays.json 中,并由
tools/sync-holidays.mjs 内联进浏览器 bundle(浏览器 bundle 在运行时
无法读取同级文件)。
- 2025 与 2026 已依据国务院公告核实 (2025 年、 2026 年)。
- 仅当存在
verified: true、非空的官方source,且包含格式良好、真实的日历日期时,该年才计为 已核实。 - 2027 被有意设为未核实——本版本准备时,年度节假日安排尚未公布。因此 2027 年的工作日峰时窗口会 显示 UNKNOWN;周末和谷时小时仍然确定。
- 没有已核实数据的年份绝不会产生错误的 PEAK。
要新增年份:编辑 holidays.json,运行 node tools/sync-holidays.mjs,然后运行测试。
隐私与架构
- 无 API 密钥。 插件从不请求、存储或使用 API 密钥。
- 无后端、无数据库、无存储。 没有服务器组件,也没有账户访问。
- 无网络请求、无轮询、无遥测。
client.js中不含fetch、XMLHttpRequest、WebSocket、EventSource或动态import();它只读取本地时钟和内置的节假日表。 - 仓库中无密文。 不含密钥、令牌、个人路径或机器相关状态。
- 插件通用提示。 与所有 DSH 插件一样,插件代码以 Harness 应用的本地权限运行。安装前请审阅 源代码;详情与问题报告见 SECURITY.md。
该插件是一个 DSH bundle,Host 一半为空,浏览器侧为 Client 一半:
package.json声明dsh.bundle(插入 Loader 行的 Cordis patch)与dsh.client(浏览器入口)。cordis.patch.yml插入该插件行;index.js是一个有意为空的apply()。client.js注册惰性模块工厂,添加语言词典,并通过ctx.slots把指示器注册进sidebar.footer.action。- 一个墙钟状态、一个 60 秒间隔和一个精确切换定时器驱动 UI;它们都在插槽条目卸载时被清理。
完整设计、状态算法、切换搜索和清理规则见 docs/architecture.md。
兼容性与已知限制
- 仅测试过 DeepSeek Harness Desktop v0.2.1-rc.5(Windows)。 不声称兼容其他 DSH 版本、客户端
和平台;
engines.dsh固定了已测试的版本,因此未经测试的运行时会被拒绝,而不是盲目加载。 - Windows 折叠侧边栏。 在 Windows 标题栏布局下,随附的侧边栏外壳在侧边栏折叠时会隐藏其整个 页脚(包括随附的 Settings 控件),因此指示器在默认展开的侧边栏中可见,但在折叠状态下不可见。 在外壳确实渲染页脚的 56 px 窄栏中,会使用只有圆点的紧凑形态。
- 2027 年节假日数据。 在官方公告发布并更新日历之前,2027 年的工作日峰时窗口会显示 UNKNOWN。周末和非峰时小时仍然确定。
- 包名。 该 bundle 保留其已安装身份
@local/deepseek-peak-indicator;它从 GitHub 分发, 未发布到 npm。安装命令使用的是仓库规格。 - 截图。 已提供三张真实截图;PEAK 与 UNKNOWN 截图需要真实的时段条件,仍待补充。见 截图 与 SCREENSHOTS_NEEDED.md。
更新与卸载
更新——DeepSeek Harness 不会就地更新任意从 GitHub 安装的 bundle:
- 打开 Plugins,找到 DeepSeek Peak Indicator,选择 Remove
(或执行
dsh plugin --profile web remove @local/deepseek-peak-indicator)。 - 用安装中的同一条命令重新安装。
- 重新加载 Web GUI。
卸载——Plugins → DeepSeek Peak Indicator → Remove,或:
dsh plugin --profile web remove @local/deepseek-peak-indicator
该插件除自身 bundle 之外不存储任何内容,因此卸载后不会留下数据。
开发
没有构建步骤,也没有依赖。仓库中仅有的 Node.js 脚本是测试套件和节假日同步工具。
deepseek-peak-indicator/
├── client.js # 浏览器一半:时段核心、侧边栏指示器、弹出层、定时器
├── index.js # 空的 Host 一半(Loader 行)
├── package.json # bundle 清单,dsh.bundle / dsh.client,元数据
├── cordis.patch.yml # 插入插件行的 Loader patch
├── holidays.json # 可编辑的中国法定节假日日历
├── icon.svg # 上一版插件图标(保留作备份)
├── locale/ # 插件显示元数据(en、zh)
├── tools/sync-holidays.mjs # 把 holidays.json 内联进 client.js
├── test/schedule.test.mjs # 22 个 Node 测试(时段、弹出层、注册)
├── docs/ # 架构、marketplace 说明、截图指引
├── assets/ # README 横幅、运行时插件图标、marketplace 图标
├── screenshots.json # marketplace 商店截图列表
├── README.md · README.fa.md · README.zh-CN.md
├── CHANGELOG.md · CONTRIBUTING.md · SECURITY.md · LICENSE
└── .gitignore · .gitattributes
其中 assets/readme-banner.png 是 README 头图横幅。assets/icon-512.png(512×512 PNG,58.6 KiB,
低于 DSH 的 256 KiB 插件图标上限)是运行时插件图标,通过现有的 ./icon 清单导出提供,并已在
Plugin Manager 中实时验证。icon.svg 保留为上一版图标/备份,assets/icon-180.png 仍作为较小的
marketplace 备用图标。
运行测试:
node --test test/schedule.test.mjs
预期结果:22 个测试,22 通过,0 失败(已在 Node.js v24.21.0 上验证,这是 DeepSeek Harness Desktop v0.2.1-rc.5 内置的运行时)。该测试套件覆盖两个峰时窗口、谷时小时、周末与调休上班日、 节假日覆盖、2027 年未发布时的 UNKNOWN 状态、精确的切换时刻、倒计时格式、两行弹出层模型、 宽/紧凑两种形态、单一插槽注册、由 Intl 推导的中国午夜边界,以及对畸形日期的拒绝。
本地开发安装:
git clone https://github.com/jalilahmad/deepseek-peak-indicator.git
dsh plugin --profile web add <absolute-path-to-checkout>
欢迎贡献——见 CONTRIBUTING.md 与 SECURITY.md。架构说明见
docs/architecture.md;marketplace/提交说明见
docs/marketplaces.md。
许可证、作者与致谢
MIT © 2026 Jalil Ahmad Fazeli · @jalilahmad · 仓库 · 问题反馈
这是一个独立的社区插件,与 DeepSeek 无隶属关系。
致谢与官方来源:
- 插件遵循官方 DeepSeek Harness 的 bundle/Cordis 插件模型
(
dsh.bundlepatch +dsh.client浏览器一半 +ctx.slots注册)。 - 定价规则:DeepSeek API 定价 与 中文版; 引入日期:变更日志。
- 中国法定节假日安排:2025 与 2026 年国务院公告(链接见上)。
Intl/IANA 时区数据来自浏览器运行时;react与react-dom由 Harness 浏览器模块表提供。 未内置任何第三方源代码。- 图标与 README 横幅均为本插件原创素材。
