DeepSeek Harness Automations 插件 (dsh-automations)

前言

DeepSeek Harness (DSH) 的核心能力在于交互式的会话与智能体运行。当需要处理部署级别的定时任务,或者在后台静默执行固定的操作流程时,现有的交互模式显得不够直接。syncended/deepseek-harness-automations 插件正是为此设计的,它为 DSH 提供了持久化、可配置的 Cron 任务调度能力。

插件定位

这是一个由 syncended 维护的 DSH 插件,旨在为 DeepSeek Harness 插件生态提供标准的 Cron 调度支持。每个任务的触发都会启动一个新的、持久化的 Harness Agent,并连接到指定的工作区、模型路由、智能体预设和权限预设。

核心功能

该插件提供了一套完整的调度与执行控制机制:

  • 调度支持:支持标准的五字段 Cron 表达式,并支持 UTC 或 IANA 时区。
  • 精细化配置:每个任务可独立配置工作区、提供商/模型、推理力度、智能体预设和权限预设。
  • 任务管理:支持启用/禁用、立即运行、编辑、删除、取消,以及查看最近的运行历史。
  • 重叠与误触发策略:
    • 重叠策略:skip(跳过)、queue(排队)、allow(允许并发)。
    • 误触发策略:skip(标记为跳过)、run-once(合并执行)。
  • 状态管理:使用原子操作管理所有者私有的状态文件(默认位于 $DSH_HOME/automations/state)。
  • 执行快照:提供不可变的执行快照和 Occurrence Key,确保重放安全的准入控制。
  • 可扩展执行器:支持扩展执行器注册表(MVP 版本包含 agent)。

安装与启用

安装前请确保满足以下环境要求:
* Node.js 22 或更新版本。
* DeepSeek Harness 版本 0.1.1-rc.2 或兼容版本,且 dsh web profile 可正常工作。

使用官方 npm 包安装:

dsh plugin --profile web add @syncended/dsh-automations

安装或升级后,请重启 dsh web 进程,刷新页面,然后通过主侧边栏的 Automations 或 Settings → Automations 进入管理界面。

配置与使用

在创建任务时,建议先创建一个小型的禁用任务,保存后使用 Run now 功能验证选定的模型、工作区和权限预设。

调度设置

  • 简单模式:支持 Minutes、Hourly、Daily、Weekdays、Weekly。
  • 自定义模式:选择 Custom 可暴露原始的五字段 Cron 表达式(minute hour day-of-month month day-of-week)。
  • 时区:支持 UTC 或 IANA 时区(如 Europe/Berlin)。

任务配置

  • Workspace:选择现有工作区或手动输入绝对路径,该路径将作为 Agent 的当前工作目录和 workspace-write 根目录。
  • Agent & Access:配置 Prompt(用户消息)、模型选择、推理力度、智能体预设和权限预设。
  • 高级设置:在折叠的 Advanced 区域可配置超时时间、重叠策略和误触发策略。

插件配置

对于本地 Web profile,默认配置通常足够。如需调整,请编辑 $DSH_HOME/profiles/web/cordis.patch.yml 中的 automations 配置项。修改后需重启 Host。

- id: automations
  config:
    maxConcurrentRuns: 2
    historyLimit: 1000
    misfireGraceMs: 60000
    maxOutputChars: 65536
    allowedProjectRoots:
      - /home/me/projects
    # 可选:指定状态文件路径
    # statePath: /absolute/private/path/state.json

配置项说明:
* allowedProjectRoots:留空表示接受 Harness 主机账户可解析的任何目录。若 Web 界面暴露在受信任机器之外,建议配置具体根目录。路径通过 realpath 规范化处理。
* 数值范围:maxConcurrentRuns 1-32,historyLimit 10-10,000,misfireGraceMs 0-86,400,000,maxOutputChars 1024-1,048,576。

注意事项

  • 版本兼容:MVP 阶段兼容 @deepseek-ai/dsh 0.1.1-rc.2 和 0.1.2-rc.1。
  • 单主机限制:当前 Worker 为单主机模式。
  • 崩溃处理:Cron 入口和运行历史是持久化的。如果主机在运行过程中崩溃,已启动的运行任务不会被重试(会被标记为 interrupted),这是为了避免在网络或文件操作中产生静默的重复副作用。
  • Exactly-once:该插件不提供 Exactly-once 执行语义。需要 Exactly-once 的外部副作用必须在任务本身或目标系统中实现幂等性。
  • 权限控制:danger-full-access 仅在作业作者选择配置了该权限的预设时可用。
  • API 访问:管理 API 需要 JSON 格式数据及自定义的 Same-Origin Mutation Header。它继承 DSH Web 服务器的信任边界,无独立的认证层。

结语

syncended/deepseek-harness-automations 为 DeepSeek Harness 提供了可靠的调度基础设施。它解决了在无活跃会话时启动新工作区任务的需求,通过精细的权限和状态控制,适合构建自动化的运维或数据处理流程。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜