前言¶
DeepSeek Harness(DSH)采用插件化架构,旨在扩展客户端能力。dsh-peak-alert 是一个面向 Web 客户端的纯前端插件,用于解决用户在使用 DeepSeek 模型时无法直观感知当前是否处于“峰谷定价”时段的问题。该插件通过自动识别时段并调整界面样式,帮助用户在开发或使用过程中避免在高峰时段产生不必要的成本。
时段规则¶
根据官方口径,插件基于北京时间判断时段:
- 高峰时段:周一至周五(不含中国法定节假日)的 09:00-12:00、14:00-18:00。
- 空闲时段:其余所有时间,包括周末及中国法定节假日全天。
- 价格关系:空闲时段价格为高峰时段的一半(高峰 ≈ 空闲 × 2)。
核心功能¶
-
三档提示强度
在设置 → 通用设置中,用户可选择“峰谷定价提示强度”:- 关闭:不显示时段 chip,输入卡片无染色。
- 低:仅 DeepSeek 模型显示时段 chip,输入卡片无染色。
- 中:显示时段 chip,且在高峰时段将输入卡片背景染成淡红色(带红色描边)。
- 设置持久化保存在浏览器的
localStorage中,刷新或重启后保留。
-
输入卡片高峰染色
当处于中档强度且当前模型为 DeepSeek、且处于高峰时段时,输入卡片([data-composer-card])背景会自动叠加一层淡红色,切换时段时即时变色。 -
时段 chip 显示
输入框下方的状态条会显示彩色 chip,包含当前状态、价格倍率与下次切换时间。- 高峰:红色
⚠ 高峰时段 · 价格×2 - 空闲:绿色
空闲时段 · 价格×1 - 周末:绿色
空闲时段(周末)· 价格×1 - 法定节假日:绿色
空闲时段(春节)· 价格×1 - 下次切换:自动计算并显示,会跳过周末与法定节假日。例如
周一 9/21 09:00 切高峰。悬停可查看完整说明与剩余时间,每 10 秒刷新。
- 高峰:红色
-
法定节假日识别
- 自动拉取 apisbo 法定节假日接口 数据。
- 仅取
type === "holiday"的条目,忽略type === "workday"(调休上班日)。 - 数据按年缓存至
localStorage,距年末 45 天时会提前拉取次年数据。 - 容错机制:当接口不可用时,静默退化为仅按“周一至周五”判断,chip 正常显示但提示中会注明“法定节假日数据暂不可用”。
-
DeepSeek 模型自动识别
- 自动匹配输入框右下角的模型名称,包含 “DeepSeek” 字样即判定为 DeepSeek 模型。
- 非 DeepSeek 模型在中档模式下仅显示灰色中性 chip,输入卡片不染色。
- 检测时机为页面挂载、切换会话、切换模型及窗口聚焦。
安装与启用¶
安装前请确保 pnpm 已在系统 PATH 中。
安装插件:
dsh plugin --profile web add https://github.com/zbxzbx98/dsh-peak-alert
生效步骤:
安装完成后必须重启 dsh web 并刷新页面,客户端 bundle 按启动时的哈希加载,重启后才能识别新插件。此时在高峰时段使用 DeepSeek 模型,输入卡片将呈现淡红色背景。
更新与卸载¶
更新插件:
dsh plugin --profile web update dsh-peak-alert
若更新失败(如之前固定了版本),可先移除再重新添加:
dsh plugin --profile web remove dsh-peak-alert
dsh plugin --profile web add https://github.com/zbxzbx98/dsh-peak-alert
固定版本安装:
若需固定特定版本(如 v0.1.0),可使用:
dsh plugin --profile web add github:zbxzbx98/dsh-peak-alert#v0.1.0
卸载插件:
dsh plugin --profile web remove dsh-peak-alert
技术说明¶
- 纯前端运行:所有时段计算均使用
Intl.DateTimeFormat在浏览器端完成,不依赖本机时区设置。 - 外部请求:唯一的外部请求是按年拉取节假日表(GET,仅发送年份,不携带 Cookie),请求配置为
credentials: omit。 - 本地存储:强度设置与节假日缓存均存储于浏览器的
localStorage中。 - 许可证:MIT。
- 目录页与源码:SkillHub 目录 | GitHub 仓库