# 检测通过后的安装确认

业务模块 Skill 生成并通过泛微技能检测工具后，必须询问用户是否把它安装到当前使用的智能体。安装会改变用户本机 Agent 的 skills 目录，因此不能跳过确认。

## 触发条件

只有同时满足以下条件，才进入安装确认：

- `skills/weaver-e10-<module>` 已生成或更新完成。
- 泛微技能检测工具默认 `weaver` 模式结果为 `PASS`，或仅有用户明确接受的 WARN。
- `weaver-work-cli skills list` 能读到生成后的 Skill。

检测失败、检测未运行、当前 Skill 不在 `weaver-work-cli/skills` 下、或用户尚未确认安装时，不要执行安装。

## 弹框确认

优先使用当前宿主支持的弹框、确认 UI 或用户输入工具询问：

```text
业务模块 Skill 已生成并通过检测。是否安装到当前智能体？

将安装：
- weaver-e10-shared
- weaver-e10-<module>

目标目录：<detected-agent-skills-root>
```

如果当前智能体没有弹框或确认 UI，退化为普通对话提问。无论使用哪种方式，必须得到用户明确同意后才安装；用户没有回复、关闭弹框或选择取消时，只报告生成目录和检测结果。

## 当前智能体目录

按当前宿主识别目标目录：

- Codex：优先环境变量 `CODEX_HOME` 下的 `skills` 子目录；未设置时使用用户主目录下的 `.codex/skills`（Windows PowerShell：`$env:USERPROFILE\.codex\skills`；macOS/Linux：`$HOME/.codex/skills`）。
- WorkBuddy：使用用户主目录下的 `.workbuddy/skills`（Windows PowerShell：`$env:USERPROFILE\.workbuddy\skills`；macOS/Linux：`$HOME/.workbuddy/skills`）。
- 用户显式指定目录：以用户指定为准。
- 其它智能体：只有当宿主暴露明确的本地 skills 根目录且当前进程可写时才自动安装；否则说明当前智能体不支持自动安装。

不要同时安装到多个 Agent 目录，除非用户明确要求。不要猜测隐藏目录或扫描用户主目录寻找其它 Agent。

## 打包

用户确认安装后，先生成归档，再执行安装。`scripts/package-skill.mjs` 使用纯 Node 生成 ZIP，不依赖系统 `zip`/`unzip` 命令；仓库内生成的 Skill 使用：

Windows PowerShell：

```powershell
node scripts/package-skill.mjs MODULE_NAME "C:\path\to\weaver-e10-MODULE_NAME-skill.zip"
```

macOS/Linux（bash/zsh）：

```bash
node scripts/package-skill.mjs MODULE_NAME "/path/to/weaver-e10-MODULE_NAME-skill.zip"
```

归档路径建议放在临时目录或仓库 `dist/`，最终回复说明 zip 路径和 sha256。若脚本不可用或写入目标失败，先说明无法打包；不要继续自动安装未打包产物，除非用户明确接受只做目录安装。

## 安装

用户确认后，使用 `weaver-work-cli` 自带安装命令安装当前模块。它会自动带上 shared：

Windows PowerShell：

```powershell
weaver-work-cli skills install MODULE_NAME --target-dir "C:\path\to\agent-skills"
```

macOS/Linux（bash/zsh）：

```bash
weaver-work-cli skills install MODULE_NAME --target-dir "/path/to/agent-skills"
```

如果 `weaver-work-cli` 全局命令不可用，但当前仓库已构建，可以用当前构建产物执行同等命令：

Windows PowerShell：

```powershell
node dist/index.js skills install MODULE_NAME --target-dir "C:\path\to\agent-skills"
```

macOS/Linux（bash/zsh）：

```bash
node dist/index.js skills install MODULE_NAME --target-dir "/path/to/agent-skills"
```

安装后验证目标目录中存在：

- `weaver-e10-shared/SKILL.md`
- `weaver-e10-<module>/SKILL.md`

若目标目录不可写、当前智能体不支持本地 Skill、或安装命令失败，停止并报告原因、zip 路径和手动安装命令；不要改装到其它目录。

## 完成回复

最终回复要包含：

- Skill 目录。
- 检测器结果和版本。
- 是否已打包、zip 路径和 sha256。
- 用户是否选择安装。
- 如果已安装，说明目标智能体和 skills 目录；如果未安装，说明未安装原因。
