前言¶
DeepSeek Harness 的设计理念是「一切皆插件」。在实际开发智能体工作流时,如果希望将任务调度在谷时执行以节省成本,或者避免在高峰期占用资源,需要手动控制发送时机。dsh-offpeak-job 插件提供了自动化的谷时调度能力,能够将消息排队,并在满足配置的谷时窗口时自动执行。
插件简介¶
该插件是 ganningniang 开发的 DeepSeek Harness 工作流插件。它通过在提供方配置峰/谷时段与策略,支持自定义运行窗口(每日/工作日/周末/跨日),并在 Composer 中控制运行时机。插件使用 TypeScript + React 构建 UI,状态持久化存储于 $DSH_HOME/offpeak-job/。
核心功能¶
- 提供方配置:支持按提供方配置峰/谷时段与审批策略。
- 自定义窗口:支持自定义运行窗口(每日/工作日/周末/跨日)。
- 策略控制:支持可选暂停策略与夜间升级策略。
- Composer 控制:在 Composer 中控制运行时机。
- 等待反馈:对话中显示等待条。
- 概览面板:侧边栏 Off-peak 概览面板。
- 状态存储:状态持久化存储于
$DSH_HOME/offpeak-job/。 - UI 技术栈:TypeScript + React UI。
安装与启用¶
安装插件需要使用官方提供的安装命令。安装后必须重启 DSH web 进程以应用配置。
dsh plugin --profile web add "https://github.com/ganningniang/dsh-offpeak-job/releases/latest/download/dsh-offpeak-job.tgz"
安装完成后,重启 DSH web 进程,刷新前端界面。
典型用法¶
- 配置提供方:进入提供方设置,开启 Peak / off-peak,配置窗口和审批策略,保存。
- 发送消息:在 Composer 中选择“Off-peak run”发送消息,消息会进入等待队列。
- 立即运行:使用“Start now”按钮立即运行等待中的任务。
- 查看状态:通过侧边栏 Off-peak 概览面板查看所有等待中的任务。
注意事项¶
- 主机状态:主机必须在谷时保持开启状态,否则排队任务不会自动运行。
- 检查点机制:暂停和继续并非精确的工具检查点,而是任务继续。
- 默认策略:默认夜间升级策略为“拒绝并继续”。
- 聊天限制:仅 Off-peak run 聊天遵循日历和谷时审批策略,Run now 不受影响。
- 恢复机制:发送新消息时若恢复正在等待,需先完成恢复或放弃。
- 隐私:无遥测数据,配置和等待队列存储在本地。
总结¶
该插件解决了在 DSH 中自动控制任务运行时机的问题,适合需要在特定时段执行任务以控制成本或资源的场景。配置和状态均存储在本地,不涉及网络上报。
项目地址¶
- GitHub: https://github.com/ganningniang/dsh-offpeak-job
- 目录: https://www.skillhub.cn/plugins/ganningniang/dsh-offpeak-job