前言¶
在 DSH(DeepSeek Harness)环境中,直接使用官方 API 时,高峰时段往往会导致计费激增或请求阻塞。deepseek-peak-blocker 插件旨在对发往 api.deepseek.com 的请求进行智能管控。它通过混合架构(Host 进程拦截与计数,浏览器渲染 UI)在高峰时段(北京时间,UTC+8)对请求进行拦截、计数与提醒。该插件由 zisekongling 维护,遵循 MIT 许可证。
核心功能¶
本插件提供以下核心能力:
- 高峰时段拦截:在预设的高峰窗口内,新请求会被阻拦。浏览器会弹出模态框,展示时段属性与剩余时间,并提供“继续执行”、“取消请求”和“放行本次会话”的操作。
- 顶部主动提醒:当时段从低谷切换至高峰,且当前有活跃请求时,顶部会滑入横幅提醒,10 秒后自动淡出。
- 右下角状态面板:面板实时刷新,显示时段指示灯、拦截状态、剩余时间及活跃请求数。支持拖动标题栏、收起为胶囊、调整大小与透明度。
- 斜杠命令:
/bypass:获得当前会话的一次性豁免令牌,令牌用后即失效(仅存内存)。/status:在聊天窗口回复面板的实时状态。
- 长任务判定与精确计数:拦截判定基于请求发起瞬间的快照;SDK 网络重试视为新请求独立判定。计数逻辑在
llm/stream进出成对维护,无泄漏。
安装与配置¶
本插件作为 DSH bundle 插件,可通过官方命令安装。安装后需重启 DSH 以加载 bundle。
安装命令:
dsh plugin --profile web add "github:zisekongling/deepseek-peak-blocker#main"
更新或卸载:
# 更新
dsh plugin --profile web update deepseek-peak-blocker
# 卸载
dsh plugin --profile web remove deepseek-peak-blocker
配置参数(位于 settings.yaml 或设置界面):
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
peakHours |
string[] | ["09:00-12:00", "14:00-18:00"] |
北京时间高峰时段(UTC+8) |
bufferMinutes |
number | 0 |
高峰前后缓冲分钟数,0 表示关闭 |
blockMessage |
string | 当前为 DeepSeek API 高峰时段,是否继续请求? |
模态框正文 |
cancelMessage |
string | 请求已被用户取消。 |
取消时的错误提示 |
peakNotification |
string | ⏰ 已进入 API 高峰时段,当前有对话正在进行,请注意响应速度可能受影响。 |
顶部横幅文案 |
使用说明¶
- 查看状态:输入
/status可查看面板的四项实时状态。 - 豁免请求:输入
/bypass可获取令牌,在高峰时段绕过模态框直接放行。 - 面板设置:按住状态面板标题栏可拖动;点击齿轮图标打开独立设置浮层,调整面板大小(60%-160%)与透明度(30%-100%)。
- 生效规则:插件仅在工作日(周一至周五)的 UTC+8 时段生效。周六、周日全天视为低谷,完全放行。
注意事项¶
- 内存存储:
/bypass令牌与状态记录仅存于进程内存,插件重启后令牌会清空。 - 代理识别:若将
api.deepseek.com反代并注册为新 provider,插件无法识别并拦截。仅修改官方适配器的 baseURL 环境变量不会改变路由标识,仍会被拦截。 - 超时处理:模态框若 30 分钟(
decisionTimeoutMs)无人应答,会自动取消该请求。 - 架构限制:所有 API 请求由 Host 进程发起,浏览器不直接调用
api.deepseek.com。
结语¶
deepseek-peak-blocker 为 DSH 用户提供了精细化的官方 API 高峰管控能力。通过拦截、计数与友好的 UI 交互,帮助开发者在工作日合理规划 API 调用。
- 目录页:deepseek-peak-blocker
- GitHub 仓库:zisekongling/deepseek-peak-blocker