AIO Agent 配置教程:固定 Git、外部 CLI 与权限控制

在 DeepSeek Harness(DSH)以固定 Git 安装 AIO Agent 0.0.1,先禁用六个 CLI 组件并关闭自动批准,再配置单个已登录 CLI,核对会话、日志、临时图片与卸载边界。

社区整理已复核原始来源
DSH
0.2.1-rc.5
系统
Windows / macOS / Linux
风险
high
本页目录(10)
对应插件dsh-aio-agent

先查看功能、兼容性、权限和同类选择,再按本文操作。

查看插件详情 →

AIO Agent 0.0.1 将 Cursor、Claude Code、Codex、OpenCode、CodeBuddy 和 Kimi Code 接入 DSH 模式与模型菜单,每轮由本机外部 CLI 执行并把对话、工具结果和用量写回 DSH 会话。

如果你的目标是把一个已有的本机编码 CLI 接入 DSH,并先核对自动批准、工作区和会话记录边界,本教程会说明如何在 DeepSeek Harness(DSH)中准备、安装、配置、验证和回退 dsh-aio-agent。本文锁定作者仓库提交 a546722a62c8;已复核固定提交的原始资料,未进行运行实测。

对应插件:查看 dsh-aio-agent 的功能、权限与兼容性说明。先确认它适合你的工作流,再执行安装。

先关闭默认自动批准,再启用一个 CLI

AIO Agent 不是只改模型列表的界面插件。它会把任务交给本机已登录的外部 CLI,默认 permission:allow 可加入绕过审批甚至沙箱的参数。安装时保持停机,先禁用六个 CLI 组件并设置 deny,完成来源和权限核对后再决定是否另行批准实际任务验证。

先确认是否适合你

  • 分类:Agent 与工作流
  • 风险等级:high
  • 核验证据:source_reviewed
  • 兼容性边界:Node.js >=22;未声明 engines.dsh,4 项 DSH peer 均声明为 *,按宿主含预发行版本的规则接受 0.2.1-rc.5。通配范围不是作者跨版本实测承诺;本页固定 DSH 0.2.1-rc.5,静态核对所用 Session/Agent/LLM 入口,未安装或运行验证。外部 CLI 自身的版本、登录与平台兼容性另行核对。
  • 主要权限关注:启用组件即尝试启动 CLI 查询模型,Kimi 的发现还可创建临时目录中的 ACP 会话;运行任务时继承宿主环境与已有 CLI 登录态,以会话 cwd 或进程 cwd 启动子进程,可读写工作区、联网和运行命令。默认 permission:allow 会加入绕过审批/沙箱的参数;DSH 输入框访问模式不约束外部 CLI。会话日志含原消息、工具输入输出及 CLI 绑定。

如果你准备在重要工作区使用,先阅读插件详情页的权限和数据流说明;“源码已审阅”或“资料已整理”都不等于安全认证。

安装前准备

本页 DSH 命令版本: 0.2.1-rc.5。Node.js >=22;未声明 engines.dsh,4 项 DSH peer 均声明为 *,按宿主含预发行版本的规则接受 0.2.1-rc.5。通配范围不是作者跨版本实测承诺;本页固定 DSH 0.2.1-rc.5,静态核对所用 Session/Agent/LLM 入口,未安装或运行验证。外部 CLI 自身的版本、登录与平台兼容性另行核对。

  • 独立测试环境与停机备份:本页命令用独立 DSH_HOME 下的 web Profile;先停止 DSH,备份 profiles/web 的 package.json、pnpm-lock.yaml 和 cordis.patch.yml。不要挂生产目录或已有敏感会话。
  • 首次加载前禁用六个组件:bundle 默认启用六个组件并自动查询模型,permission 默认 allow。安装时保持停机,在任何加载或 --dump-config 前写入本页 disabled:true/permission:deny 的六行覆盖。
  • 一个已独立安装并登录的 CLI:实际任务验证另需站长批准。本页示例只在批准后启用 Claude Code;先由用户按厂商官方流程独立准备测试登录,不执行 README 中的全局安装器或让 DSH 帮我配置按钮。
  1. 安装 Node.js 22.19、Node.js 24 或项目当前声明支持的更高版本,并确认 pnpm 可用。
  2. 使用独立的 web Profile 和可丢弃测试工作区,不直接连接生产目录。
  3. 备份当前 Profile 配置,并记录安装前的 --dump-config 输出。
  4. 核对固定来源中的外部服务、账号、运行时和平台限制。
  5. 本页没有列出插件专属环境变量;仍需核对宿主和外部服务的凭据要求。

安装 dsh-aio-agent

52DSH 使用目录中记录的精确安装目标,避免直接跟随可能变化的默认分支:

npx --yes @deepseek-ai/[email protected] plugin --profile web add github:cocofhu/dsh-aio-agent#a546722a62c8fa64c794769af19932da788dea71

固定 Git 树已经包含全部宿主入口及客户端 JS,无 prepare/安装构建脚本,不运行作者测试或 build:logos。安装时保持 DSH 停止,首次加载或 --dump-config 前先按下方待机配置禁用 6 个 CLI 组件并设 permission:deny,再进行配置检查。不要直接启动默认 allow 配置。

插件专属配置

配置目标

  • $DSH_HOME/profiles/web/cordis.patch.yml:覆盖已有 aio-cursor、aio-claude-code、aio-codex、aio-opencode、aio-codebuddy、aio-kimi-code 的 disabled/config;不要重复 insert,也不要把 permission 写到根 aio-agent。
  • 插件 → AIO Agent → 对应 CLI → 配置:启用后可编辑 command、model、permission;保存从下一轮读取,保存后重新检测也可能触发 CLI 查询,不是静态表单。
  • DSH 进程 PATH、环境与外部 CLI 登录/会话目录:命令由宿主进程查找,工作目录不是权限围栏。CLI 继承大部分环境;Codex 运行会剔除 OPENAI_API_KEY、CODEX_API_KEY、ACP_CODEX_API_KEY 以使用自己的登录。

安装后、首次加载前:禁用全部 CLI 并拒绝权限请求

证据:固定来源(外部链接,在新标签页打开)。按上方配置目标使用本段内容;如有占位符,替换为测试值。

- id: aio-cursor
  disabled: true
  config:
    permission: deny
- id: aio-claude-code
  disabled: true
  config:
    permission: deny
- id: aio-codex
  disabled: true
  config:
    permission: deny
- id: aio-opencode
  disabled: true
  config:
    permission: deny
- id: aio-codebuddy
  disabled: true
  config:
    permission: deny
- id: aio-kimi-code
  disabled: true
  config:
    permission: deny

后续获准运行验证时:只启用 Claude Code,并保留 deny

证据:固定来源(外部链接,在新标签页打开)。按上方配置目标使用本段内容;如有占位符,替换为测试值。

- id: aio-claude-code
  disabled: false
  config:
    permission: deny
    command: ""
    model: ""

安装后设置

  1. 停机执行固定 Git 安装后,先手工合并六组件待机覆盖,再运行 --dump-config;预期 root aio-agent 仍在,六个 CLI 组件均 disabled,尚不启动外部任务。
  2. 批准运行验证并确认外部 CLI 测试登录后,只将 aio-claude-code 改为 disabled:false,其余继续禁用;保持 permission:deny。启用后模型发现会调用本机 CLI。
  3. 进入插件专属配置页,确认自动批准权限请求关闭;创建无敏感内容的测试会话,选择 Claude Code 模式与匹配的模型,不在普通 DSH 模式中混选 AIO 模型。

启用组件本身就会触发模型发现

registerCatalog 在注册后立即查询模型,不必先发送任务;Kimi Code 可在临时目录创建 ACP 会话。因此第一次启动前先应用待机覆盖。command 是本机启动程序和参数,空串使用内置命令;不要填下载器、shell 拼接或不熟悉的程序。model 空串使用后端默认值;permission 默认 allow,首次必须改为 deny。

deny 不会限制 CLI 已经获准的操作,不会覆盖用户自定义命令中的危险参数,也不把 cwd 变成文件系统围栏。Cursor、Claude Code、Codex、OpenCode、CodeBuddy 的 print 模式和 Kimi 的 ACP 模式有不同权限/续接语义,不能用一种后端的结果代替另外五种。

配置验证与成功结果

先导出配置,再启动同一版本的 DSH Web:

npx --yes @deepseek-ai/[email protected] --profile web --dump-config
npx --yes @deepseek-ai/[email protected] web
  1. 合并六组件待机覆盖后检查组合配置

    npx --yes @deepseek-ai/[email protected] --profile web --dump-config
    

    期望结果:aio-agent 及六个组件身份无重复,六个 CLI 组件保持 disabled:true/permission:deny。配置导出不是 CLI 登录、任务运行或沙箱验证。

  2. 站长另行批准后,启用一个 CLI 并检查模型菜单

    期望结果:对应模式与模型出现,其他五个模式不启用。模型列表只能说明目录查询有结果,不能证明登录、执行权限或会话续接全部正常。

  3. 另行批准后,在可丢弃目录执行一个只读最小任务

    期望结果:请求仅报告测试目录中的一个文件名,不修改文件、不运行安装器。对照 CLI 与 DSH 的文本、工具记录和 token 用量;原目录 diff 无意外修改。本次没有执行该验证。

第一次使用

  • 后续获准运行验证时,在新的 Claude Code 模式测试会话中请求:只读取当前可丢弃目录,报告一个文件名,不修改内容,不安装依赖。确认该 CLI 自身的审批/隔离设置有效后再继续。

最小任务与数据走向

首次仅核对六组件已禁用的组合配置。站长后续批准运行验证后,才启用一个已独立安装登录的 CLI,在可丢弃目录做只读任务;不要点击“让 DSH 帮我配置”自动引导安装。前五款 CLI 每轮运行 print/JSON 流,Kimi 使用 ACP;用户文本/图片将发给该 CLI 的模型服务,DSH 负责展示并写会话。

Codex/OpenCode 的文本提示可出现在进程参数中。DSH 与 CLI 分别保留会话,绑定不保证跨版本续接成功;DSH 输入框访问模式不约束 CLI。默认 allow 对 Codex 可加入 --dangerously-bypass-approvals-and-sandbox,对 OpenCode 可加入 --dangerously-skip-permissions,不要以此解决权限报错。

数据、权限与凭据

数据流: DSH 用户文本和图片 → 本机外部 CLI(JSON 流或 ACP)→ 该 CLI 配置的模型服务;CLI 回复、思考、工具调用、用量和绑定 → DSH Session/浏览器。Codex/OpenCode 的文本提示作为进程参数,其余按后端经 stdin/ACP;部分图片写入系统临时目录后 finally 清理,异常终止仍需检查残留。插件不向固定遥测端点发请求,但外部 CLI 的网络、凭据和存储规则仍生效。

权限关注: 启用组件即尝试启动 CLI 查询模型,Kimi 的发现还可创建临时目录中的 ACP 会话;运行任务时继承宿主环境与已有 CLI 登录态,以会话 cwd 或进程 cwd 启动子进程,可读写工作区、联网和运行命令。默认 permission:allow 会加入绕过审批/沙箱的参数;DSH 输入框访问模式不约束外部 CLI。会话日志含原消息、工具输入输出及 CLI 绑定。

数据存储: DSH 保存用户/助手消息、工具输入输出与 plugin:dsh-aio-agent/binding、stream、acp、permission 记录;外部 CLI 另有自己的登录、会话和缓存。非 JSON 图片写入系统临时目录的 dsh-aio-<随机 ID> 文件并尝试清理;不要把字段名脱敏当成完整的正文脱敏。

真实 Token、API Key、Cookie 和账号 ID 不应写进 Git 仓库、网页截图或公开 Issue。测试结束后撤销临时凭据。

卸载、回退与清理

停止 DSH 后,从同一个 Profile 移除包:

npx --yes @deepseek-ai/[email protected] plugin --profile web remove @cocofhu/dsh-aio-agent
  1. 先停止当前测试任务,将六个组件全部恢复 disabled:true/permission:deny,再停止 DSH;检查自己启动的 CLI 进程,停止不保证后代进程都已退出,也不回滚外部写入。
  2. 在同一测试 Profile 移除准确包名:npx --yes @deepseek-ai/[email protected] plugin --profile web remove @cocofhu/dsh-aio-agent;需要回退时整体恢复安装前 Profile 依赖、锁文件和补丁。
  3. 卸载只移除 DSH 集成,不卸载外部 CLI、不注销其账号、不删除 CLI 或 DSH 会话历史。按各自官方流程撤销测试登录、清理测试会话和临时图片,保留仍需审计的原记录。

审计记录与停止不是安全沙箱

spawn/execFile 使用 argv 而非默认 shell,但自定义 command 可以启动任意本机程序。CLI 继承环境和登录态,部分图片临时落盘;finally 会尝试清理,崩溃或强杀仍可能残留。raw frame 的 redact 只按字段名处理字符串,普通提示、工具结果和正文不保证脱敏。

print 停止会向直接子进程发送信号,ACP 使用 cancel/关闭;不能保证终止所有后代或撤销文件写入。卸载集成不会注销账号或删除 CLI 历史。本次只审阅固定源码,没有运行 CLI、作者测试或插件构建。

常见问题

npm 404、构建提示或模型列表为空

使用本页固定 Git 目标;固定树已有 JS,不运行未知 prepare/build。核对 DSH 进程 PATH、被禁用组件、CLI 版本与用户自行完成的登录;列表为空不能区分未装/未登录,列表非空也不保证可执行。

DSH 只读模式下仍发生外部写入

输入框访问模式不约束外部 CLI。permission:deny 只改变插件的请求应答/强制参数,不是只读沙箱;检查 CLI 自身权限、命令附加参数和可访问目录,先停用组件。不要改成 allow 排障。

续接失败、模式与模型不匹配或停止后仍有进程

绑定保存在 DSH 日志及 CLI 本地会话中,切后端、变启动命令或缺少 CLI 历史可能导致新会话。确认模式与模型同属一个后端;核对自己启动的进程与目录差异,不能把停止按钮当回滚。

日志中出现敏感文本或临时图片残留

字段名脱敏不覆盖普通文本、工具输入输出和全部错误。Codex/OpenCode 提示还可出现在进程参数中;不要输入密钥。按 DSH/CLI 各自流程限制访问并清理测试记录,异常退出后检查临时图片。

安装成功但页面或命令没有出现

先运行 --dump-config 确认 Bundle 已进入 web Profile,再重启 DSH Web 并硬刷新浏览器。不要通过反复扩大权限来解决加载问题。

插件运行后没有得到预期结果

把问题缩小到本页的最小验证任务,检查作者文档要求的变量、外部服务和平台限制。保存终端错误原文,并核对当前安装目标是否仍对应本页固定提交。

作者固定资料中未识别到独立故障章节。遇到插件特有错误时,应先停止 DSH、保留日志并回退插件。

固定来源证据

以下资料是本文配置结论的依据:

继续查看:返回 dsh-aio-agent 插件详情页,重新核对兼容性、权限、同类插件和来源状态。

来源与维护信息

本文根据以下原始资料整理。版本变化后,请以官方资料和页面标注的验证日期为准。

完成当前任务后

按结果继续,不要停在文章末尾

已成功

继续完成配置、验证或下一阶段任务。

继续下一步 →
仍未解决

保留现象和错误原文,再进入对应排障路径。

DSH 安装 Git 插件被 allowBuilds 阻止怎么办 →安装和管理 DeepSeek Harness(DSH)插件 →