关于 cross-agent-install-smoke
cross-agent-install-smoke 是用于检查增量技能同步的仓库技能,不会修改正在使用的 harness 安装。它默认执行 dry-run 检查,并提供仅在临时 HOME 中运行的可选冒烟测试。
主要功能
- 01dry-run JSON 断言
- 02可选的临时 HOME 冒烟测试
- 03通过 INSTALL_SMOKE=1 控制阶段
- 04验证所选阶段的脚本
适用场景
- 01在 CI 或本地检查技能同步 JSON
- 02不使用实际 HOME 测试安装行为
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ wyattowalsh/ agents --skill cross-agent-install-smoke安装后在 Claude Code 中输入/cross-agent-install-smoke确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
evals/evals.jsonscripts/check.pydry_run.pylocal_smoke.pyscripts/asset_toolkit/validate_hooks.py详细介绍
跨 Agent 安装冒烟测试
验证增量技能同步,不修改正在使用的运行环境安装。
**范围:**仅进行安装冒烟测试。除非维护者明确要求,否则不要运行实时应用安装。
调度
| $ARGUMENTS | 操作 |
|---|---|
空 / phase1 / dry-run | 运行阶段 1 的 dry-run JSON 断言 |
phase2 / local / smoke | 运行阶段 2 的临时 HOME 冒烟测试(需要 INSTALL_SMOKE=1) |
all | 运行阶段 1,然后在满足门控条件时运行阶段 2 |
help | 显示各阶段、门控条件和命令示例 |
阶段 1 — Dry-Run JSON
从仓库根目录运行确定性检查器:
uv run python skills/cross-agent-install-smoke/scripts/dry_run.py
阶段 1 会执行仓库的技能同步 dry-run 命令并断言:
- 顶层键:
ok、mode、inventory_count、include_installed、agents mode为dry-run- 每个 Agent 条目都包含
agent以及分组字段missing、already_present、unresolved、skipped - 分组字段可以是旧版字符串列表,也可以是紧凑对象
{count, sample, truncated}(Wave 1b+ 默认 JSON) - 如果存在,可选分组(
projection_ensure、projection_blocked、store_missing、internal_projection、pin_blocked)使用相同格式
通过标准:脚本以 0 退出,并向 stdout 输出 JSON 摘要。阶段 1 仅执行 dry-run,绝不使用 --apply。
阶段 2 — 临时 HOME 冒烟测试
阶段 2 为可选操作,只会修改临时主目录。
INSTALL_SMOKE=1 uv run python skills/cross-agent-install-smoke/scripts/local_smoke.py
脚本会:
- 除非设置了
INSTALL_SMOKE=1,否则拒绝运行 - 在临时目录下创建隔离的
HOME - 对仓库运行仓库验证命令
- 运行单个运行环境的技能同步 dry-run JSON 探测
- 清理临时主目录
切勿将阶段 2 指向生产环境的主目录。
验证约定
uv run python skills/cross-agent-install-smoke/scripts/check.py
INSTALL_SMOKE=1 uv run python skills/cross-agent-install-smoke/scripts/check.py
完成标准:
- 阶段 1(
dry_run.py)在 CI 和本地维护者运行中以0退出。 - 只有设置了
INSTALL_SMOKE=1时才运行阶段 2。 scripts/check.py针对所选阶段门控条件以0退出。
关键规则
- 默认执行 dry-run;不要通过此技能应用实时安装。
- 将技能同步 JSON 视为证据,而非对仓库策略的权威依据。
- 在建议进行跨运行环境的安装协调前,先运行阶段 1。
- 阶段 2 必须以
INSTALL_SMOKE=1和一次性临时HOME为门控条件。 - 报告运行环境特定的清单错误,且不得掩盖顶层的
ok: false。
评论
支持 Markdown