DeepSeek Harness (DSH) 采用插件化架构。对于需要定期执行任务(例如定时查看 CI 状态)的场景,现有机制通常依赖持续的人工干预或依赖已存在的会话。dsh-plugin-scheduled-tasks 插件旨在解决这一问题,它允许通过预设的触发规则,在指定时间自动新建会话并发起一轮对话。该插件由 Jeff1573 维护。
核心功能¶
- 自动新建会话并发起一轮对话,无需人工守候。
- 支持每天、每周、固定间隔三种触发规则(最短间隔 5 分钟)。
- 支持 IANA 时区计算及夏令时跳变。
- 内置「无人值守」权限预设(
scheduled),限定在工作区内且不会停下来征求批准。 - 支持多种通知渠道:Bark / 企业微信 / ntfy / Server酱 / Telegram / 飞书 / 钉钉 / 任意 Webhook。
- 支持在对话中通过工具管理任务。
- 自带 bundle patch,安装后无需手动修改配置文件。
安装与启用¶
前提是已安装 DeepSeek Harness(npx @deepseek-ai/dsh web 或全局安装)。
推荐使用一条命令完成安装:
dsh plugin --profile web add github:Jeff1573/dsh-plugin-scheduled-tasks
安装完成后重启 dsh web 即可生效。插件自带 cordis.patch.yml,会自动完成注册,无需手动干预。
使用方法¶
重启后,侧边栏底部会出现「定时任务」入口。
- 新建任务:点击「新建任务」,必填项包括触发时间(每天/每周/间隔)、任务名称以及希望 dsh 执行的内容。
- 高级选项:展开「高级选项」,建议将权限预设设置为「无人值守」(即
scheduled),否则定时运行可能会卡在审批环节。可设置工作目录、运行超时(默认 30 分钟)及失败重试策略。 - 执行与查看:任务列表中可进行「立即运行」或「暂停/编辑」。运行历史中会记录每次执行的状态(成功/失败/超时),点击即可进入对应会话。
- 通知设置:在面板中配置通知,支持 Bark、企业微信等多种渠道。通知内容可包含模型回复摘要(默认前 200 字)。
注意事项¶
- 本插件不发布到 npm registry,只从 Git 安装。
- 任务数据存储在
~/.dsh/storages/scheduled_tasks.json。 - 企业微信群机器人有频率限制(约 20 条/分钟),高频任务建议仅失败时通知。
- 个人微信没有官方发送接口,需通过企业微信或 Server酱 等服务中转。
- 通知地址(如 Webhook)会保存在
~/.dsh/.credentials.yaml的SCHEDULED_TASKS_NOTIFY_URL字段中。 - 侧边栏入口及工具
scheduled_task_*均位于根 context,每个会话均可访问。