dsh-autocompose
描述任务,选择插件,再决定临时使用还是长期保留。
AutoCompose 根据任务识别所需能力,从已有的 DSH 插件中选择组合,并展示版本、权限声明与兼容性检查结果。你可以在临时环境中执行一次任务,也可以把方案中的插件直接安装到当前 DSH 主环境,供后续任务使用。
它组装的是已有插件,不生成插件代码。生成方案和安装插件都不调用模型;只有执行任务时才调用模型。
安装 · 第一次使用 · 安装到主环境 · 配置与命令行 · 常见问题
安装
当前版本适配 DSH 0.2.0-rc.2,要求 Node.js >=22.19。
在 DSH 插件管理页的安装框中输入:
dsh-autocompose@0.3.0
也可以粘贴仓库地址:
https://github.com/Han-1413141/dsh-autocompose
使用 Desktop 命令行安装:
dsh plugin --profile desktop add dsh-autocompose@0.3.0 --save-exact --ignore-scripts
Web 用户把 desktop 改为 web。按 DSH 提示刷新页面或重启后,打开侧边栏的 “自组装”。插件复用现有 DSH 运行时,安装时不下载另一套 DSH,也无需允许构建脚本。
第一次使用
- 输入任务和工作目录。 例如“读取项目中的 PDF,提取需求并检查相关代码”。目录填写任务文件所在文件夹的完整路径。
- 点击“生成方案”。 查看识别出的能力、选中的插件和版本。搜索候选的能力来自包说明,实际效果需要运行验证。
- 处理缺项或冲突。 页面会列出缺少的能力和兼容性问题;缺项未解决时不能运行或安装。可以调整任务,或指定候选目录。
- 选择使用方式。 临时使用选“检查并运行”;希望后续任务也能使用这些插件,选“安装到主环境”。两种方式都会先展示确认内容。
| 临时运行 | 安装到主环境 | |
|---|---|---|
| 适合什么情况 | 先试用组合,或只完成这一次任务 | 长期使用这组插件 |
| 插件安装在哪里 | 独立的临时 DSH_HOME,使用 sdk profile |
当前打开 AutoCompose 的 profile |
| 是否执行输入的任务 | 是,需要模型配置和凭据 | 否,仅安装并启用插件 |
| 结束后如何处理 | 默认清理,可勾选保留 | 持续保留,可在 DSH 插件管理中停用或卸载 |
代码、Git、联网检索和终端等能力可能已由官方基础环境提供。如果方案只包含基础能力,页面会显示“无需额外安装”。PDF、浏览器、视觉和记忆等能力是否可用,取决于能否找到满足要求的插件。
安装到主环境
这里的“主环境”指 当前运行 AutoCompose 的 DSH profile:在 Desktop 中通常是 desktop,在 Web 中通常是 web。确认弹窗会显示实际 profile 名称和完整目录。
直接安装
- 生成或打开一个可用方案,点击 “安装到主环境”。
- 检查弹窗中的目标目录、插件名称、版本变化和权限声明。每个插件会标明“新增”“替换版本”“启用”或“已就绪,直接复用”。
- 点击 “确认安装并启用”。如果与主环境中已有插件存在已知冲突,确认按钮会禁用,并显示原因。
- 查看结果和 “安装记录”。DSH 要求重启时,页面会明确提示;重启后再使用这些插件。

图中插件来自临时测试环境,用于演示安装预览。
安装使用 DSH 官方插件管理接口,固定到方案中的精确版本。开始变更前,会保存主环境的包清单、锁文件和相关配置;安装后再次检查包的版本、声明与兼容性,再按依赖顺序启用。已有同版本且已启用的插件直接复用;已有其他版本会明确显示版本替换。官方核心组件、AutoCompose 和 Compat Guardian 不作为方案中的替换目标。
安装期间可以切换页面。“停止安装”会请求取消当前下载,并停止后续操作;已经完成的安装和启用会保留。失败时记录会逐项显示处理状态,便于重试或在 DSH 插件管理中清理。多插件安装不是一次整体事务,配置备份也不是整个插件目录的快照。
主环境中的插件使用宿主权限。临时任务的“只读”设置不限制主环境插件;插件声明的权限用于展示和检查,不是对第三方代码的操作系统级隔离。
先试用,再保留
先选择“检查并运行”,确认组合适合任务后,在 “运行记录” 中点击 “查看方案与安装选项”,再选择“安装到主环境”。安装前会重新检查当前环境。
这一步按方案重新安装插件包,不复制临时环境中的凭据、会话、模型配置或插件运行数据。需要配置的插件仍在主环境中按其说明配置。
临时运行
在方案下方选择任务目录权限:默认 只读;开发或修复任务可以选择 允许修改。点击“检查并运行”,核对目录和插件后确认。
任务由 DSH 后台执行,切换页面后继续运行。页面展示准备、安装、检查、执行和清理进度,支持取消;结束后保存回复和清理结果。勾选“保留临时环境”可留下该次环境排查问题。
默认模型为 deepseek-official / deepseek-v4-flash。子进程保留必要的系统与代理环境变量,默认额外转发 DEEPSEEK_API_KEY。Desktop 的登录状态不会自动复制为临时环境凭据。使用其他模型或 provider 时,先阅读模型与凭据配置。规划和主环境安装无需模型凭据。
预设与对话操作
保存为预设会保存任务目录和插件的精确版本。复用预设时会重新检查兼容性,不自动安装,也不自动追踪 latest。
你也可以在 DSH 对话中提出:
为读取 PDF 并检查代码生成插件方案,先让我查看,再把选中的插件安装到当前环境。
autocompose 工具依次使用 plan → install_preview → install。实际安装经过 DSH 的批准流程,临时执行使用 run。工具参数与 CLI 用法见配置与命令行。
常见问题
为什么没有找到所需插件?
自动发现依赖 npm 搜索、包的 DSH bundle 声明和版本要求。包未发布、缺少 bundle 声明、能力说明不足或存在兼容性错误,都可能无法进入方案。可以在固定候选目录中明确指定已发布的包、版本和能力,再重新生成方案。
临时运行成功后,为什么主环境里没有这些插件?
临时运行使用独立环境,默认结束后清理。需要保留到主环境时,打开该方案,选择“安装到主环境”。
为什么提示安装预览失效?
预览生成后,插件列表或配置发生了变化,或者 DSH 已重启、该预览已使用。重新点击“安装到主环境”即可获取新的检查结果。插件发布内容变化时,需要重新生成整个方案。
安装只完成了一部分,怎么办?
打开“安装记录”查看每个插件的状态和错误。处理冲突、网络或构建授权问题后重新预览:已安装并启用的同版本插件会复用;不需要保留的插件可在 DSH 插件管理中停用或卸载。AutoCompose 不自动删除已经成功安装的插件。
安装 AutoCompose 时出现 Git 构建被拦截或 NPM_TOKEN 提示?
ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 通常来自固定到 0.2.0 的旧 Git 提交。改用本页的 npm 包名或当前仓库地址;从 0.2.1 起仓库包含编译产物,安装不需要构建许可。Failed to replace env in config: ${NPM_TOKEN} 是 npm 配置变量提示;安装公开的 AutoCompose 包不需要 npm Token。
开发与验证
本仓库可独立构建,无需检出配套插件:
npm ci --ignore-scripts
npm run typecheck
npm test
npm run build
npm run test:host
npm run test:main-install
npm run preview
发布前运行 npm run pack:release。源码修改需同时提交重新生成的 lib/;CI 核对产物与源码,并在禁止构建脚本的全新 profile 中验证 Git 安装。主环境安装测试使用临时 profile 和无业务逻辑的测试插件,不修改日常 DSH 环境。
配置与命令行 · 故障覆盖表 · 验证记录 · 版本记录 · 问题反馈
配套插件:dsh-compat-guardian,用于检查和处理已安装插件的兼容性问题。两者可分别安装。
No comments yet. Be the first to write one.