dsh-nightshift:DeepSeek Harness 的夜间低峰调度插件

前言

DeepSeek Harness (DSH) 的核心设计理念是「一切皆插件」。dsh-nightshift 是一个第三方插件,旨在解决 DeepSeek 模型价格在夜间(UTC+8)显著低于白昼的问题。智能体通常在用户工作的高峰时段运行,导致计算成本高昂。该插件允许在高峰时段将任务排队,在低峰时段释放,并自动生成节省报告。

插件定位

  • 名称:dsh-nightshift
  • 所有者:mikasaxin529
  • 许可证:MIT
  • 核心价值:在高峰时段排队,在低峰时段释放,阅读节省报告。

核心功能

  • One-chip enqueue:对话输入栏中的 🌙 芯片,用于将当前草稿加入队列。默认目标为继续当前会话;新会话按钮则运行在独立会话中。
  • Peak freeze:在高峰时段窗口内停止调度。如果任务已经在运行,它将自然完成(已完成的工作不会中断)。
  • Off-peak drain:在低峰时段窗口内,一次调度一个任务,任务间间隔由 drainGapMs 控制。
  • Failure policy:根据失败原因分类处理:error/interrupted 使用指数退避重试(有上限);max-tokens 自动发送继续提示(有上限);blocked 暂停等待人工介入;aborted 视为用户取消。
  • Savings ledger:按实际发生时的价格窗口(高峰或低峰)对 token 差异进行计费,确保跨窗口和重试任务的账目准确。
  • Daily reports:当队列为空或高峰时段返回时生成报告。
  • Durable queue:支持重启恢复,重启时会重新排队未完成的任务(至少一次语义)。
  • Panel:侧边栏入口,显示窗口横幅、实时任务行、队列管理(运行/取消)、历史记录和最新报告。

安装与启用

确保已安装 DeepSeek Harness 并使用 web profile(进程必须保持驻留)。Node.js 版本需 >= 20。

执行官方安装命令:

dsh plugin --profile web add github:mikasaxin529/dsh-nightshift

安装后重启 DSH 或等待 HMR 重新加载。

配置说明

配置项位于 loader 配置的 nightshift 条目下。默认值如下:

key default meaning
timeZone Asia/Shanghai IANA 时区,用于解释窗口
peakWindows 09:00–12:00, 14:00–18:00 [start, end) 墙钟窗口;可能跨午夜;[] 表示永不高峰
peakPricePerMTok 2 高峰时段每百万 tokens 价格(请填入真实数值)
offPeakPricePerMTok 1 低峰时段每百万 tokens 价格
currency ¥ 显示货币
tickMs 30000 窗口检查 / 调度间隔
maxRetries 3 error/interrupted 轮次的重试次数
retryBaseMs 60000 指数退避基数
retryFactor 2 指数退避因子
retryMaxMs 1800000 指数退避上限
continuationLimit 3 max-tokens 情况下自动发送继续提示的最大次数
continuationPrompt 继续 继续提示的文本
drainGapMs 5000 调度之间的暂停时间
allowRunNow true 是否允许面板上的「立即运行」按钮
reportRetentionDays 30 报告保留天数
exposeTool false 预留 v1.1 (nightshift_enqueue 工具)

典型用法

在白天高峰时段编写任务,点击侧边栏的 🌙 芯片加入队列。插件会自动冻结调度。等到夜间低峰时段,插件会自动逐个处理任务。任务完成后,系统会生成一份每日节省报告。

注意事项

  • 价格简化:缓存定价是简化的,所有 token 桶均按同一窗口价格计费,报告中的节省可能较为保守。
  • 至少一次:任务在重启时会重新排队。请确保任务具有幂等性或可重运行。
  • 单任务并发:同一时间只处理一个任务。
  • 价格声明:插件不检查实际价格 API,使用你声明的 peakPricePerMTok 和 offPeakPricePerMTok。
  • 配置变更:修改配置会触发 HMR 重载。

结语

dsh-nightshift 通过将任务调度与价格窗口绑定,帮助用户在高峰时段排队、在低峰时段释放,最终获得一份成本节省报告。其开源地址为 https://github.com/mikasaxin529/dsh-nightshift。

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

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

小夜