DeepSeek Harness Hub
← 返回列表

MichengAI/dsh-automation

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
⚠ 装前注意

DSH Automation — 在独立 DSH Session 中按计划执行和管理编码任务 · Schedule…

基本兼容但装前注意:未发布到 npm registry,仅可从源码安装 · 最近上游提交 2026/9/16 · 已提供中文文档

DSH Automation — 在独立 DSH Session 中按计划执行和管理编码任务 · Schedule and manage coding tasks in isolated DSH sessions

综合分
43.2
GitHub 分
43.2
用户评分
★ Stars
19
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add MichengAI/dsh-automation
未发布到 npm registry,仅可从源码安装,改用 GitHub 源安装
数据截至 2026/9/18(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查⚠ 装前注意

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

npm 包@michengai/dsh-automation(未发布到 npm,仅可源码安装)
Node 引擎要求 ^22.19.0 || >=24.0.0 · 基线 Node 22.19 满足
dsh CLI 依赖未声明 dsh 版本约束
入口文件main/exports/bin 已声明

未发布到 npm registry,仅可从源码安装

验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/18 14:30:02

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/cordis-plugin-include@deepseek-ai/dsh-agent@deepseek-ai/dsh-agent-default-model@deepseek-ai/dsh-agent-loop@deepseek-ai/dsh-agent-presets@deepseek-ai/dsh-client-connection@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-ui-conversation@deepseek-ai/dsh-client-ui-primitives@deepseek-ai/dsh-client-ui-settings@deepseek-ai/dsh-host-webserver
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

DSH Automation

在独立 DSH Session 中按计划执行编码任务

English · 更新日志 · Apache-2.0

许可证:Apache-2.0
npm package
npm 下载量
DSH Web Plugin
Node.js 22 or later

DSH Automation 是社区维护的 DeepSeek Harness(DSH)插件,并非 DeepSeek AI 官方产品。

功能概览

把需要按时重复的工作交给 DSH。你可以在设置页安排任务,也可以在对话中说明执行时间和要求,再回看每次运行的结果。

- 安排一次或重复执行:支持间隔、每小时、每天、每周、每月和自定义间隔天数。
- 选择工作环境:设置工作目录、模型、技能和权限。
- 随时调整安排:创建、暂停、恢复、立即运行或删除任务。
- 查看执行结果:在侧栏「定时」中按任务和执行时间回看会话,在设置页筛选运行记录。
- 每次独立运行:使用已保存的任务说明,不继承创建任务时的整段对话。

界面预览

工作区左侧「任务 / 频道 / 定时」分列。定时任务只出现在「定时」:

工作区定时侧栏

打开「设置 → 定时任务」可搜索、新建、暂停和查看规则:

定时任务设置页

在对话里描述任务。DSH 会按所选权限模式处理授权:

通过对话创建定时任务

创建定时任务的官方授权

确认后规则会保存,并在对话里汇总:

定时任务创建成功

执行记录留在设置页,可按天、周、月、任务或状态筛选:

执行记录

DSH 产品生态

想使用桌面工作台,可下载 DSH Codex Desktop;已有 DeepSeek Harness 环境,可按各项目 README 按需安装。以下列出 11 个自研插件;桌面端实际随附范围以对应版本的发行说明和内置清单为准。

| 插件 | 你可以用它做什么 |
| --- | --- |
| Codex UI | 整理项目与会话、搜索任务、跳转对话轮次 |
| Agency Agents | 按任务选择并召唤专业角色 |
| Skills Manager | 统一查找、启停、创建和导入本机技能 |
| Archive Manager | 搜索、恢复或清理已归档会话 |
| IM Connect | 从消息平台下任务、收回复 |
| Automation | 按计划执行任务,查看每次运行的结果 |
| BTW | 在当前上下文中临时旁问,不打断主任务 |
| Simplify | 用 /simplify 整理 Git 改动范围内的代码 |
| PUA | 引导 Agent 在失败时换方法、查原因,并在完成前验证结果 |
| Code Review | 用 /review 发起独立 Agent 代码审查,在当前会话接收报告 |
| Codex Pet | 通过桌面宠物查看会话提醒、处理工具审批和问题回答 |

前置条件

- 当前源码以 DSH 0.1.6-alpha.1 为开发和真实宿主测试基线,保留旧版 Agent 创建回调及会话列表格式的兼容。升级宿主前备份 Profile 中的自动化存储和会话目录;V3 会话不支持降级读取。
- 官方 DSH peerDependencies 精确限定为 0.1.0-rc.8 || 0.1.1-rc.2 || 0.1.2-rc.1 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1;开发依赖固定为 0.1.6-alpha.1。同一宿主中的官方包应使用一致版本。
- 其他版本不在声明兼容范围内;安装器可能提示 peer 警告,启用严格 peer 校验时会失败。支持新 rc 前需扩展版本矩阵并通过验证。
- Connection 补丁替换 Web bundle 的配置注入列表为 [webServer, webRuntime],Loader 仍会合并插件源码声明的依赖。自定义宿主若增加了其他配置注入,需在后置 Profile 补丁中保留这两项并补齐自定义依赖;本补丁不自动合并其他 bundle 的列表。
- 已可正常运行 DeepSeek Harness Web,且可在 PowerShell 中使用 dsh。
- 以下示例使用 web profile;请替换为实际目标 profile。
- 从源码安装或二次开发需要 Node.js 22.19+;仅从 npm 安装无需在任意目录执行 npm install。

安装

以下安装命令使用官方 npm 源。

让 Agent 帮你安装(推荐)

把下面这段话发给任意能够执行本机终端命令的 Agent。将 web 替换为实际使用的 profile;安装完成后,在 DSH 中使用本插件。

请将 DSH 插件 @michengai/dsh-automation 安装到本机 web profile,执行:dsh plugin --profile web add @michengai/dsh-automation@latest --registry=https://registry.npmjs.org/。安装后执行 dsh --profile web --dump-config,确认配置包含 dsh-automation,并告诉我如何重新加载 DSH 和开始使用。

从 npm 安装

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
dsh plugin --profile web add @michengai/dsh-automation@latest --registry=https://registry.npmjs.org/
dsh --profile web --dump-config

安装后重启 DSH Web,并在浏览器硬刷新。需要钉死某一版时,把 @latest 换成 @0.1.5。

在线更新

设置标题会显示当前版本和“检查更新”按钮。发现新版后,只有检测到 DSH CLI 或 Desktop 更新服务时才可使用“自动更新”;其他环境会在弹窗中提供可复制、与当前 Profile 对应的手工更新命令。

使用

打开「设置 → 定时任务」,再按下表操作:

| 目标 | 操作 | 范围 |
| --- | --- | --- |
| 创建规则 | 点击「新建定时任务」,填写名称、计划、任务说明、工作目录、模型、技能和权限。 | 当前 Host |
| 通过对话创建 | 在任意对话描述定时任务,或点击「通过对话创建」。 | 当前对话 |
| 暂停或恢复 | 使用任务卡片上的开关。 | 单条规则 |
| 立即运行 | 打开卡片菜单,选择「立即执行」。 | 单条规则 |
| 删除 | 打开卡片菜单,选择「删除任务」。运行历史会保留。 | 仅定义 |
| 查看记录 | 打开「执行记录」,再按天、周、月、任务或状态筛选。 | 当前 Host |

每次派发都使用保存的任务说明、工作区、模型和权限边界,不会复用来源对话中的批准。

权限与安全边界

| 项目 | 行为 |
| --- | --- |
| 权限 | 列表和默认值直接来自 Host 官方 permissionPresets 服务;支持 Host 注册的自定义预设。 |
| 工具调用 | 遵循 Host 的工具可用性、权限和审批检查,不额外维护固定工具白名单或禁止后台 shell;后台进程由 Host 管理。 |
| 完全访问 | 选择官方 danger-full-access 时显示与 Chat 一致的风险确认和橙色提示。 |
| 审批 | 对话创建跟随当前会话策略。Full access(never)直接创建;Workspace Write / Read Only(ask)走官方授权卡。无人值守运行仍是 fail-closed 的 never。 |
| 重试 | 已经开始的运行不会自动重试。 |
| Host 重启 | 遗留的 queued / running 会变成 failed(host_interrupted)。 |
| 并发 | 不同自动化任务不设插件级全局并发上限,同一目录下也可同时运行。旧插件级全局并发配置(插件 config 中的 maxConcurrentRuns)不再生效,与下方任务级字段不同。 |
| 最短间隔 | 自 0.1.40 起,间隔计划支持最短 1 分钟,仅接受整数分钟。恢复时仅处理补跑窗口内最近的到期点,不逐次补齐漏掉的触发。 |
| 单任务并发 | 自 0.1.40 起支持。在任务的新建/编辑页设置“并发数量”(正整数,默认 1)。同一任务的排队及运行记录共用此上限;满额时定时触发记为 skipped(overlap),手动运行返回上限提示。调低上限不取消已有运行。Agent 创建/更新工具使用 max_concurrent_runs,Web RPC 使用 maxConcurrentRuns;旧任务默认 1。 |

计划只表达未来意图,不是缓存下来的授权。

二次开发

从源码安装

适用于调试或使用未发布改动。克隆后的目录会直接作为插件安装路径:

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
Set-Location D:\Repository\deepseek-harness-plugin
git clone https://github.com/MichengAI/dsh-automation.git
Set-Location .\dsh-automation
pnpm install
pnpm test
pnpm build
dsh plugin --profile web add .
dsh --profile web --dump-config

完成后重启 DSH Web 并硬刷新浏览器。dsh plugin ... add . 会自动读取并应用 cordis.patch.yml;不要手工复制 lib 文件。

当前源码在 src,构建产物在 lib:

- src\index.ts:Host 插件、工具和 RPC。
- src\service.ts:持久化定义、时钟和运行准入。
- src\client\index.ts:设置页和对话预填。
- tests\*.test.ts:领域、周期、服务、客户端和包契约测试。

修改后运行测试、重新构建,并以本地目录安装验证:

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
pnpm check
dsh plugin --profile web add .

修改执行逻辑时必须保留 at-most-once 派发、Agent 工具的工作区边界,以及无人值守 fail-closed 审批。

验证

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
pnpm test
pnpm build

pnpm check 会连续执行类型检查、单元测试、真实宿主兼容测试和构建。pnpm test:host 不加载宿主运行时桩,使用官方 AgentLoop、Session V3 和权限服务,模型响应由本地固定适配器提供,不调用外部模型。浏览器交互和真实模型调用需另行验收。

跨插件侧栏回归可运行 pnpm test:composition 。请先构建 IM 检出目录,脚本读取其中的 lib/client.js。它执行两仓库的接入逻辑和页签注册表,覆盖归档、IM、定时及 Codex UI 的注册顺序、延迟通知与卸载接管;插槽和计时器使用模拟环境,不替代 Desktop 渲染验收,也不安装插件。该检查需要外部检出目录,独立于 pnpm check;请固定 IM revision,以便复现结果。

pnpm test:matrix 先构建发布包,再联网为上述已声明版本分别建立临时 npm 环境,执行严格 peer 安装、整棵官方依赖树版本检查、发布入口加载、真实 AgentLoop 执行和服务回归。各声明版本均通过;服务回归中的持久化枚举使用内存夹具,覆盖新旧冷会话格式,不等同于真实 Profile 的磁盘迁移验收。脚本输出证据目录,保留各版安装锁文件、测试日志和 results.json。矩阵不修改开发依赖,也不连接用户 Profile。

许可证

补充说明见 NOTICE。

本项目采用 Apache License 2.0。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群