🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

谷值任务计划 nwasvsad/dsh-task-plan

DeepSeek Harness
nwasvsad8 天前有提交已提供中文文档扫描:含敏感能力

白天记下待办任务,谷值时段自动并发执行并统计用量

30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/24 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add nwasvsad/dsh-task-plan
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么
dsh 原生插件 · other
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 8 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 4 处,展示前 4 条)
  • 发起网络请求
    lib/client.js:365
    const response = await fetch(`/api/task-plan/${path}`, {
  • 读取本地文件
    scripts/build-client.mjs:66
    const bundle = buildBundle(readFileSync(sourcePath, 'utf8'))
  • 写入本地文件
    scripts/build-client.mjs:67
    writeFileSync(outPath, bundle, 'utf8')
  • 执行外部命令固定命令
    scripts/verify.mjs:175
    execFileSync('pnpm', ['add', spec], { cwd: PROFILE_DIR, stdio: 'inherit', shell: true })
扫描于 2026/11/1(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

DSH 插件:错峰任务计划表,把待办任务作为并发会话运行

README

由 DeepSeek 最新模型翻译生成
dsh-task-plan DeepSeek Harness Web 插件:谷值自动执行的任务计划表。 白天在「任务计划」页面把想到的任务写进去;到谷值时段(默认北京时间 18:00)插件自动为每个待执行任务新建一个独立 Session 并发执行,并记录 token、金额、耗时与结果。 每晚的逐任务 token/金额日报已拆到独立插件 dsh-task-digest。两个插件可分别安装、启停和排障;本包不再包含日报代码、路由、定时器或页面。 查看方式 - 看单个任务:每个任务是一个普通 Session,标题固定为任务名,出现在左侧会话列表里它工作目录对应的 workspace 分组下。运行中的会话不会被折叠,始终可见;点开就是中间的实时对话(工具调用、输出),会话头部的 token-cost 徽标可看实时用量。 - 看总览:点左侧栏的「任务计划」图标,打开总看板:排队/运行/完成、耗时、token、金额、结果摘要,点「打开会话」直接跳到对应 Session。 - 回看板:在任意会话里再点左侧「任务计划」图标即可切回,页面会重新拉取状态。 功能 - 计划表:标题、说明、类型、工作目录、启用开关;持久化到本地 JSON,重启不丢。
展开完整文档(README 剩余 1 节)
dsh-task-plan

DeepSeek Harness Web 插件:谷值自动执行的任务计划表。

白天在「任务计划」页面把想到的任务写进去;到谷值时段(默认北京时间 18:00)插件自动为每个待执行任务新建一个独立 Session 并发执行,并记录 token、金额、耗时与结果。

每晚的逐任务 token/金额日报已拆到独立插件 dsh-task-digest。两个插件可分别安装、启停和排障;本包不再包含日报代码、路由、定时器或页面。

查看方式

- 看单个任务:每个任务是一个普通 Session,标题固定为任务名,出现在左侧会话列表里它工作目录对应的 workspace 分组下。运行中的会话不会被折叠,始终可见;点开就是中间的实时对话(工具调用、输出),会话头部的 token-cost 徽标可看实时用量。
- 看总览:点左侧栏的「任务计划」图标,打开总看板:排队/运行/完成、耗时、token、金额、结果摘要,点「打开会话」直接跳到对应 Session。
- 回看板:在任意会话里再点左侧「任务计划」图标即可切回,页面会重新拉取状态。

功能

- 计划表:标题、说明、类型、工作目录、启用开关;持久化到本地 JSON,重启不丢。
- 谷值自动执行:默认 18:00(北京时间)执行当天全部 pending 任务;若配置时刻落在峰时且 offPeakOnly=true,自动顺延到下一个谷值起点(12:00 或 18:00)。周末/节假日不调整。
- 并发:每个任务一个 Session,默认并发 2,可配 1–8;单个任务失败/超时不影响其他任务。
- 费用可见:任务完成后按峰/谷单价估算 token 金额,显示在任务表和结果里。
- 零常驻 token:不注册任何模型侧工具、skill 或 prompt 片段;空闲时不增加请求 token。
- 可恢复:Host 重启时把上次 queued/running 的任务标记为 interrupted 并补一条记录,不自动重跑,可在页面手动重试。

峰谷与计费口径

与 dsh-token-cost 和 dsh-task-digest 保持一致:

- 峰时 = 北京时间周一至周五(排除 holidays 配置的中国法定节假日)09:00–12:00、14:00–18:00;其余全部为谷值。
- 价格(元 / 百万 token,缓存命中 / 未命中 / 输出):
- deepseek-flash:谷 0.02 / 1 / 4,峰 0.04 / 2 / 8
- deepseek-v4-pro:谷 0.15 / 4.5 / 13.5,峰 0.3 / 9 / 27
- 每个用量样本按它自己的事件时间判峰谷;未知模型只统计 token,金额标未知。

金额是按公开单价估算,不是账单。官方调价时改 lib/tier.js 的 RATE_TABLE;日报包有一份相同规则,两包由 parity 测试防止漂移。

从 GitHub / 插件市场安装

本包是标准 DSH 组合包(dsh.bundle.patch + cordis.patch.yml),可以直接从 GitHub 安装:

推荐固定 commit,避免后续推送改变实际运行内容
dsh plugin --profile web add github:nwasvsad/dsh-task-plan#<commit>

也可以使用插件市场索引(Discover → Index sources):

https://nwasvsad.github.io/dsh-plugin-market/index.json

Git 安装会拉取源码并执行 prepare(重新构建 lib/client.js);如果 pnpm 要求构建授权,按提示把包名加入该 profile 的 pnpm-workspace.yaml 的 allowBuilds。lib/ 已提交,未授权构建时通常仍可直接加载。

安装后默认使用 $DSH_HOME/task-plan,在 profile 的 cordis.patch.yml 里按需覆盖。

本地安装(开发)

前置:已安装 dsh,并有一个可用的 Web profile(下面以 web 为例)。

cd <repo>

1) 只读校验
node scripts/verify.mjs

2) 安装进 web profile:追加 patch 行 + pnpm add
node scripts/verify.mjs --apply

3) 重启 dsh web(会结束当前会话进程,请手动执行)例如重新运行: dsh web

然后刷新 http://127.0.0.1:3080,左侧应出现「任务计划」。

--apply 会向 $DSH_HOME/profiles/web/cordis.patch.yml 追加:

dsh-task-plan: off-peak task plan
- insert:
- id: task-plan
name: dsh-task-plan
config:
dataDir: '~/.dsh/task-plan'
defaultCwd: '~'
runAt: '18:00'
offPeakOnly: true
concurrency: 2
holidays: []

如果 profile 已有该行,脚本不会覆盖,按需手动改 config。旧版 patch 里的 summaryAt 等键会被忽略,不影响本插件。

配置

| 键 | 默认 | 说明 |
| enabled | true | false 时 Host 不调度、页面显示禁用 |
| dataDir | $DSH_HOME/task-plan | plan.json 根目录 |
| defaultCwd | process.cwd() | 任务未写 cwd 时的工作目录 |
| agentPreset | 部署默认 | 任务 Session 的 preset;默认不传 |
| runAt | '18:00' | 每日自动执行时刻(北京时间) |
| offPeakOnly | true | 峰时顺延到下一个谷值起点 |
| autoRunEnabled | true | 关闭后只允许手动执行 |
| holidays | [] | 全天谷值的 YYYY-MM-DD |
| concurrency | 2 | 1–8 |
| maxTasksPerRun | 20 | 单次 run 上限,其余留到下一次/手动 |
| taskTimeoutMs | 1800000 | 单任务超时(30 分钟) |
| startTimeoutMs | 15000 | 等待 Agent 进入 running 的上限 |
| pollIntervalMs | 500 | Agent 状态轮询 |
| currency | '¥' | 金额前缀 |

非法值会回落到默认值并记日志。

数据

<dataDir>/
plan.json # 任务、最近 200 次执行、lastAutoRunDate

- plan.json 原子写(临时文件 + rename);损坏时改名 plan.json.corrupt-<ts>,以空计划启动并告警。
- 所有 HTTP 写操作与调度器共用同一串行锁。
- 旧版同目录下的 reports/ 不再使用;日报数据由 dsh-task-digest 管理。

HTTP API

全部走浏览器信任栅栏(connection.requestRejection),body ≤ 64KB。

| 方法 | 路径 | 说明 |
| GET | /api/task-plan/state | 任务、运行状态、下次执行 |
| POST | /api/task-plan/tasks | 新建任务 |
| PATCH | /api/task-plan/tasks | 修改任务(运行中只允许改标题) |
| DELETE | /api/task-plan/tasks?id= | 删除任务(运行中需先取消) |
| POST | /api/task-plan/run | {ids?} 立即执行;已有 run 时 409 |
| POST | /api/task-plan/cancel | {taskId} 取消 |

日报相关路由已移除,见 dsh-task-digest。

运行机制

1. 每 30 秒 tick 一次。
2. 自动执行条件:有 enabled && pending、当前 ≥ 当天生效 runAt、当前谷值、lastAutoRunDate !== 今天、无进行中的 run。
3. 每个任务:sessionController.create → rename 为任务标题 → prompt → 轮询 agent.status 直到 running → idle;超时则 sessionController.cancel。
4. 完成后读一次完整会话日志:按 (turn, step) 去重折叠 assistant/message 用量,按事件时间判峰谷计价,取最后一条 assistant 文本作为结果;subagents.listDescendants 的子代理用量并入父任务。
5. 任务 Session 的标题与首条 prompt 带有 [[dsh-task-plan]] 标记,日报包据此把它识别为计划任务。

注意与限制

- Host 必须常开:本插件不用 OS 计划任务;停机则当天不执行,pending 留到下一次。
- 权限审批:任务 Session 继承部署的 sandbox/approval 策略;需要人工审批的操作会挂起到超时。建议把自动任务写成无需审批的工作区操作。
- 一个任务 = 一个 Session:已完成任务不会每天自动重复;需要重复的任务请手动重试或每天新增(暂不做 recurrence)。
- 标题即会话名:Host 会 best-effort rename,失败时退回首条 prompt 自动标题。
- 不注册模型侧工具:因此没有每请求 token 开销。
- 卸载本插件不会删除历史 Session 或 plan.json;日报不受影响。

开发与测试

node scripts/build-client.mjs # 改 src/client.js 后重新生成 lib/client.js
node scripts/verify.mjs # 只读校验
npm test # 单进程单元/集成测试

源码结构:

lib/tier.js 峰谷、价格、日期/时刻 lib/usage.js 会话日志 → 用量/费用/结果/工具统计 lib/plan.js 持久化与串行锁 lib/runner.js Session 执行与完成检测 lib/scheduler.js 自动执行判定、恢复、并发 lib/routes.js HTTP 路由 lib/index.js Host 入口 src/client.js 浏览器任务页面
预览分享卡片长什么样 ↓nwasvsad/dsh-task-plan
分享 · DeepSeek Harness Hub
nwasvsad/dsh-task-plan

白天记下待办任务,谷值时段自动并发执行并统计用量

回到顶部