定时任务 LittleBlackTong/dsh-plugin-cron
DeepSeek 客户端v0.2.10一个面向 DeepSeek Harness 的 cron 调度插件:按 cron 表达式为 agent…
35.6/100
综合分
1
GitHub 星标
342
npm 周下载
—/5
用户评分
数据截至 2026/9/29 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/LittleBlackTong/dsh-plugin-cron.git状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
生态插件
可安装,未声明 dsh 能力
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 36 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包dsh-plugin-cron-scheduler @ 0.2.10
✓Node 引擎要求 >=18 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/11/1 22:53:11
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件发起外部网络请求
查看扫描证据(共 11 处,展示前 11 条)
- 发起网络请求lib/client.js:172
fetch(SESSIONS_URL) - 发起网络请求lib/client.js:191
fetch(isEdit ? `${JOBS_URL}/${job.id}` : JOBS_URL, { - 发起网络请求lib/client.js:234
fetch(`${JOBS_URL}/${job.id}`, { method: 'DELETE' }) - 发起网络请求lib/client.js:298
fetch(JOBS_URL) - 发起网络请求lib/client.js:319
fetch(`${JOBS_URL}/${job.id}`, { - 发起网络请求lib/client.js:332
fetch(`${JOBS_URL}/${job.id}/run`, { method: 'POST' }) - 读取本地文件lib/store.js:84
if (!existsSync(this.path)) return - 读取本地文件lib/store.js:85
const raw = JSON.parse(readFileSync(this.path, 'utf8')) - 写入本地文件lib/store.js:103
mkdirSync(dirname(this.path), { recursive: true }) - 写入本地文件lib/store.js:105
writeFileSync(tmp, JSON.stringify(this.jobs, null, 2) + '\n') - 写入本地文件lib/store.js:106
renameSync(tmp, this.path)
扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 按cron表达式调度
- 面向agent定时触发
README
由 DeepSeek 最新模型翻译生成dsh-plugin-cron-scheduler
一个面向 DeepSeek Harness 的 cron 调度插件:按 cron 表达式为 agent 任务排班——可通过自然语言或侧边栏 UI 完成——每个任务在合适的时间向目标会话注入一条用户消息,触发完整的 agent 轮次。
DeepSeek Harness 的「定时任务」插件:按 cron 表达式给 agent 排班——到点往目标会话注入一条 user 消息,触发完整一轮 agent 执行(调工具、写文件、拉数据、生成报告,什么都行)。创建方式双通道:对话里自然语言说一句,或侧边栏底部「定时任务」列表里点「新建」。
怎么工作
- Host 平面:持久化 JSON store(/cron-jobs.json,原子写)+ 每任务一条 ctx.timer 定时链 + 到点 agent.followup() 注入合成 user 消息(source.kind === 'plugin')。
- 会话策略:
- new(默认):每次触发开一个新会话,干净隔离;
- fixed:绑定指定会话,累积上下文。绑定会话时是下拉选择(列出所有存活会话的标题),不用手填 session id。
- 错过不补跑:DSH 不是常驻服务,进程关闭期间的 tick 直接跳过,重启后从当前时间往后算,绝不开机风暴。
展开完整文档(README 剩余 1 节)
dsh-plugin-cron-scheduler
一个面向 DeepSeek Harness 的 cron 调度插件:按 cron 表达式为 agent 任务排班——可通过自然语言或侧边栏 UI 完成——每个任务在合适的时间向目标会话注入一条用户消息,触发完整的 agent 轮次。
DeepSeek Harness 的「定时任务」插件:按 cron 表达式给 agent 排班——到点往目标会话注入一条 user 消息,触发完整一轮 agent 执行(调工具、写文件、拉数据、生成报告,什么都行)。创建方式双通道:对话里自然语言说一句,或侧边栏底部「定时任务」列表里点「新建」。
怎么工作
- Host 平面:持久化 JSON store(/cron-jobs.json,原子写)+ 每任务一条 ctx.timer 定时链 + 到点 agent.followup() 注入合成 user 消息(source.kind === 'plugin')。
- 会话策略:
- new(默认):每次触发开一个新会话,干净隔离;
- fixed:绑定指定会话,累积上下文。绑定会话时是下拉选择(列出所有存活会话的标题),不用手填 session id。
- 错过不补跑:DSH 不是常驻服务,进程关闭期间的 tick 直接跳过,重启后从当前时间往后算,绝不开机风暴。
- 并发保护:同一任务上一次触发还没结束,新 tick 跳过并记 skippedAt,不重复执行。
- 执行历史(v0.2.0):每次触发记录 lastRunStatus(成功/失败/跳过)+ 错误信息 + runCount,侧边栏列表里直接看到「上次: 成功 2026-09-09 10:30」,失败还会显示错误摘要。
- 手动触发(v0.2.0):列表里「跑」按钮或对话里 cron_manage run 立即执行一次,不改变既定排班。
- 双通道创建:cron_manage 工具(对话自然语言)+ 侧边栏 UI(表单),共享同一套 Host CRUD。
- UI 位置:注册到侧边栏底部(sidebar.footer.action,新 id cron-hotplug),任务列表直接内联显示在侧栏里(新建/编辑/删除/启停/立即运行都在其中),与 Cordis Plugin 面板并列,不覆盖、不替换它。任务多时列表在容器内滚动,不会撑爆侧栏。
- 自适应(v0.2.9):侧栏宽度可拖动,列表按容器实测宽度自动分档(ResizeObserver),任何宽度都不溢出、编/删 始终可点:
| 容器宽度 | 显示 |
| ≥ 300px | 名称 + Cron 表达式 + 上次状态 + 编/删 |
| 220–299px | 名称 + 状态 + 编/删(表达式收进 tooltip) |
| v0.2.8 曾把列表搬到 shell.overlay 弹层(footer 只留入口),v0.2.9 按反馈回退为内联列表,自适应能力保留。
安装
dsh plugin --profile add dsh-plugin-cron-scheduler
(包内置 dsh.bundle manifest,dsh plugin add 自动挂进 profile 的 bundles 层;dsh-market 里的一键安装同此通道。)
重启 DSH 后生效。之后在侧边栏底部「定时任务」列表里管理任务,保存即生效(无需重启)。
⚠️ 不要再往 profile 的 cordis.patch.yml 里手写 - insert: {id: dsh-cron, ...}:那会与 bundle manifest 的自动挂载产生两条同名 entry,整个 profile 会以 duplicate loader entry id "dsh-cron" 启动失败。运行期任务数据走 /cron-jobs.json;覆盖 composition 键(如 configFile)用不带 insert 的 id 覆盖条目。
对话用法(自然语言)
阿周:每周一 10:30 帮我导出上一周的 ZDP 数据小蓝:(调用 cron_manage 工具)已创建「每周导出ZDP上周数据」,下次执行:下周一 10:30
支持的 cron_manage action:create / list / update / delete / toggle / run。
cron 表达式是标准 5 字段(分 时 日 月 周):
│ │ │ │ └─ 周几 (0-7,0 和 7 = 周日) │ │ │ └─── 月 (1-12) │ │ └───── 日 (1-31) │ └─────── 时 (0-23) └───────── 分 (0-59)
支持单值、范围(1-5)、步进(/5)、列表(1,3,5)、通配()。例:
| 表达式 | 含义 |
| 0 10 * * | 每天 10:00 |
| 30 10 * 1 | 每周一 10:30 |
| /5 * * | 每 5 分钟 |
| 0 17 * 5 | 每周五 17:00 |
配置
| 键 | 默认 | 含义 |
| configFile | /cron-jobs.json | 任务数据文件路径(仅 composition 配置) |
| cwd | process.cwd() | new 策略新建会话的工作目录 |
⚠️ 新建会话(new 策略)必须补齐三样,否则那个 agent 一定是残的:
| 缺什么 | 后果 |
| agent preset(agentPresets.mount) | 工具集退化成空的全局层——只剩全局注册的工具,没有 shell/read 等标准工具 |
| 模型选择(agentDefaultModel + 装钩子) | persona 段的 {{model}} 取不到值,第一轮直接报错 |
| cwd(meta.cwd) | persona 段的 {{cwd}} 取不到值,第一轮直接报错 |
插件会自动补齐这三样(默认 preset / 默认模型 / cwd 不配则用 process.cwd())。
为什么不用 settings 面板的通用 namespace?DSH 的 settings wire 只服务一张硬编码白名单(WEB_SETTINGS_NAMESPACES),插件无法把自有 namespace 暴露给浏览器写入。本插件因此在 host 自建了 /api/cron/ 路由,侧边栏 UI 直连该路由。
HTTP API
| Method | Path | 说明 |
| GET | /api/cron/jobs | 列出全部任务 |
| POST | /api/cron/jobs | 新建任务 |
| PUT | /api/cron/jobs/:id | 更新任务 |
| DELETE | /api/cron/jobs/:id | 删除任务 |
| POST | /api/cron/jobs/:id/run | 立即运行一次 |
| GET | /api/cron/sessions | 列出存活会话(固定会话下拉用) |
| GET | /api/cron/events | SSE 推送 jobs-changed |
开发
node --test 'test/.test.js'
已知边界
- 任务只在 DSH 进程活着时存在(app 关了就停,错过不补跑)。
- nextRunAt / skippedAt 是易失字段(进程内),重启后按当前时间重新计算。
- 固定会话若绑定了一个已不存在的会话,触发时会自动新建并回写 fixedSessionId。
- 到点触发需要目标 session 能启动 agent(有 agent 工厂 + 持久化后端);无可用 agent 时记为「失败」并记录原因,不会崩溃。
- 版本要求:DSH session format v4(官方 DeepSeek Harness 0.1.7+)。注入消息的 source 使用 producer-owned kind plugin:cron;v4 拒绝 v3 的 {kind:'plugin', plugin:'cron'} wrapper,报 format v4 message requires a producer-owned source kind(被包成 code: "UNKNOWN",界面显示为 ... source kind UNKNOWN)。v4 与 v3 白名单互斥,无法同时兼容两版;0.2.9 及更早版本在 v4 上会触发该错误。
License
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
LittleBlackTong/dsh-plugin-cron
一个面向 DeepSeek Harness 的 cron 调度插件:按 cron 表达式为 agent…
相关插件 · 其他
模型破甲清洗YuJunZhiXue/dsh-purge
⚔️ DeepSeek Harness 网络安全红队工具dsh-purge
★ 16,148已汉化DeepSeek 客户端
73
女娲蒸馏alchaincyf/nuwa-skill
输入名人名字,提炼其思维模型与决策方式供你调用
★ 37,308已汉化DSH
72
逆向分析桥接Fanqi89/dsh-rea
REA(Reverse Engineer Anything)MCP 桥接,用来把 REA 逆向工具接入 DSH 插件
★ 51已汉化DSH
72
语音女友beiyege-01/dsh-voice-ai-girlfriend
语音 AI 女友Voice AI girlfriend for DeepSeek Harness:Whisper…
★ 888已汉化DSH
71.6
红队越狱测试套件Minglink/dsh-infinite-gen-5
DeepSeek v4.1 flash 逆向工具无限五代 求 Star 收藏 ⭐欢迎大家提交项目的改进
★ 3,759已汉化DSH
71.4
协同办公空间dream-num/univer-workspace
一个让人类与 AI Agent 共同创作、协作和审阅的开源 Office 工作空间。
★ 2,266已汉化DSH
70.7