Reasonix 子智能体:在 DSH 里把单次任务委派给本机 Reasonix

前言

DeepSeek Harness(DSH)里主代理擅长编排对话与工具,但有些任务更适合交给另一套本地智能体栈:独立会话、沿用对方自己的模型与沙箱策略。官方已有「Codex 子智能体」「Claude Code 子智能体」等同类能力;若你本机已安装 Reasonix,可以用社区插件 Reasonix 子智能体(仓库 SivanCola/dsh-subagent-reasonix)通过 Agent Client Protocol(ACP)把单个任务委派给 Reasonix,用法与上述子智能体插件一致。

下面介绍插件定位、安装方式、对话里的典型用法,以及配置与安全上的注意点。事实以仓库 README 与 package.json 为准;插件在 SkillHub 目录 分类为「工作流」,由维护者 SivanCola 发布。

这是什么

Reasonix 子智能体是 DSH 的纯配置 bundle 插件(无自有 JS 代码):在 profile 的 Cordis 补丁里挂载通用 ACP 提供方,每次委派启动新的 reasonix acp 进程,并暴露全局工具 subagent_reasonix。Reasonix 使用 ~/.reasonix 下的原生配置与鉴权,模型、provider、沙箱与写入范围不经过 DSH 二次封装。

一句话:A DeepSeek Harness plugin that delegates one task to your local Reasonix over the Agent Client Protocol, using Reasonix’s native authentication and settings.

前置条件

安装与使用前需满足:

  1. DeepSeek Harness 0.2.1-rc.2(插件依赖 @deepseek-ai/dsh-subagent-acp 锁定为同版本;DSH 升级后插件需同步发版)。
  2. 本机已安装 Reasonix,且 DSH 宿主能在 PATH 中找到 reasonix(Desktop 会读取登录 shell 的 PATH)。
  3. Reasonix 已完成模型与密钥配置(reasonix setup),可用 reasonix doctor 自检。

核心功能

  • 全局工具 subagent_reasonix:装好后默认启用,对所有 agent 可见;主代理调用后先返回子智能体 id,Reasonix 在当前会话工作目录新建会话独立执行,完成后以通知形式把最终答案带回对话。
  • 一次委派、全新会话:Reasonix 看不到你与 DSH 的对话历史;任务描述需自洽(路径、验收标准、完成条件)。不能在同一委派里追问;中间步骤在 ~/.reasonix/sessions/,不回传 DSH。
  • 实现方式:cordis.patch.yml 插入两项——subagent-reasonix(@deepseek-ai/dsh-subagent-acp)与 tool-subagent-reasonix(@deepseek-ai/dsh-tool-subagent)。ACP 提供方会清理父进程里疑似凭据的环境变量,不影响 Reasonix 读自己的配置。

安装与启用

Desktop / Web 插件页:插件 → 添加插件 → 安装第三方插件,填入:

github:SivanCola/dsh-subagent-reasonix

命令行(<profile> 换成你的 profile 名):

dsh plugin --profile <profile> add github:SivanCola/dsh-subagent-reasonix

装完后重启该 profile(Desktop 需重启应用)。插件默认启用。

社区目录 SkillHub 与 DeepSeek / 幻方无官方从属关系,仅为第三方插件收录站点;安装前建议浏览 GitHub 仓库 源码与 MIT 许可。插件以当前 DSH 进程权限运行,子智能体侧的实际边界取决于 Reasonix 的沙箱与写入范围设置。

典型用法

在对话里明确要求 DSH 使用 subagent_reasonix,并把任务写完整。README 示例:

用 subagent_reasonix 让 Reasonix 去做:给 src/utils/date.ts 的 formatDate 补单元测试,跑通 npm test 后告诉我结果。

流程简述:

  1. DSH 调用 subagent_reasonix,先返回子智能体 id。
  2. Reasonix 在工作目录新建会话并执行任务。
  3. 完成后最终答案作为通知回到对话,DSH 再继续回复。

若遇到父代理用 sleep 阻塞等待(见下文已知问题),可在请求里补充:启动后直接结束本轮,等完成通知。

调整配置

需在 profile 的 cordis.patch.yml 中按 id 覆盖;覆盖会替换整个 config,需写全。PATH 找不到 reasonix 时可指定绝对路径,并可用 reasonix acp --help 中的参数收紧行为,例如:

- id: subagent-reasonix
  config:
    providerName: reasonix
    command: /absolute/path/to/reasonix   # PATH 里找不到 reasonix 时
    args: [acp, --workspace-only, --sandbox-bash, enforce]   # 收紧写入范围与 bash 沙箱
    permission: allow

args 还可包含 --model、--profile economy|balanced|delivery 等(以 reasonix acp --help 为准)。

安全与权限

permission: allow 会自动批准 Reasonix 的所有权限请求(子智能体无人值守)。若 Reasonix 关闭了 bash 沙箱,子智能体执行的命令不受沙箱限制;需要时可按上文加上 --workspace-only 与 --sandbox-bash enforce。

已知问题与兼容性

  • dsh-external/issues#668:父代理可能不知道如何等待外部子代理,或用 sleep 阻塞,导致结果晚到。
  • dsh-external/issues#669:DSH 的 ACP 提供方可能把子智能体的过程说明与最终答案拼在一起回传。

插件当前包版本为 0.1.0(见 package.json)。

结尾

若你已在 DSH 里使用其他 ACP 子智能体,Reasonix 子智能体只是把委派端换成本机 Reasonix,任务写法与验收习惯可以保持一致:写清路径、步骤与「怎样算完成」。更多信息见 SkillHub 目录页 与 GitHub:SivanCola/dsh-subagent-reasonix。

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

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

小夜