关于 heyeddi-ci-runners
用于配置 HeyEddi CI runner 路径的技能,帮助根据仓库情况选择 GHA + Spot 或密封的 `pipeline:` 作业。它强调检查执行证据,不把配置或 YAML lint 误称为作业已运行。
主要功能
- 01选择 GHA 或密封 pipeline
- 02配置 GHA 的 Spot 路由
- 03检查仓库语言与命令
- 04编写受限的 pipeline 作业
- 05核验执行声明的证据
适用场景
- 01为已有 GitHub Actions 的仓库配置 Spot 路由
- 02为无 GHA 的仓库设计密封作业
- 03检查 CI 执行状态是否有证据支持
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ heyeddi-com/ heyeddi-ci-skills --skill heyeddi-ci-runners安装后在 Claude Code 中输入/heyeddi-ci-runners确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
manifest.jsoncontext/ANTI_PATTERNS.mdEXAMPLES.mdPROSE_ANTI_SLOP.mdVOCABULARY.mdreference/runners.mdscripts/_skill_cli.pyassert_runners_claims.pyassert_runners_placeholder.pyinspect_repo.pyload_policy_contract.py详细介绍
HeyEddi CI 运行器
Spot 已上线。帮助用户接入正确的运行器路径,绝不编造执行情况。
两种作业类型(不要合并)
| 类型 | 位置 | 检查名称 | 使用时机 |
|---|---|---|---|
| GHA on Spot | .github/workflows/*.yml + 工作区 gha_spot_mode | 同名工作流 Check | 已有 Actions 的仓库(默认) |
密封的 pipeline: | eddi-ci.yaml 中的 pipeline: 作业 | HeyEddi Runner: {job_id} | 没有(或只有极少量)GHA,或需要专门的密封检查 |
**黄金规则:**不要在 GHA 和 pipeline: 中重复相同的测试或构建。优先选择 GHA + Spot 路由;保留 pipeline: {}。
产品文档:https://ci.heyeddi.com/docs · hub 镜像:参见 reference/runners.md。
优先使用 GHA overflow / always
- 确认存在
.github/workflows/(或用户希望使用基于 Actions 的 CI)。 - 确保每个 Linux 作业都使用:
runs-on: ${{ vars.HEYEDDI_RUNS_ON || 'ubuntu-latest' }}
- 告知用户在 ci.heyeddi.com 上将工作区的 Runners 模式设为:
overflow— 优先使用 GitHub 分钟数;耗尽后使用 Spot JITalways— 从首次运行起就在 Spot 上运行 Linux 作业off— 仅使用托管运行器
- 将
eddi-ci.yaml保持为仅 Reviewer,并设置pipeline: {}(使用@heyeddi-ci-config)。 - 限制:仅限 Linux;私有仓库;工作区需预付费/具备使用资格;平台紧急停止开关由运维负责。Overflow 的可靠性仍可能存在缺口——不要承诺“始终有效”。
密封的 pipeline:(高级 / 无 GHA)
load_policy_contract— 仅使用动态配置项。inspect_repo— 使用有证据支持的命令和路径前缀;绝不编造pytest/npm test。- 明确征得用户同意(运行器时间需付费)。
- 编写 argv 安全的
run(不使用 shell 运算符、sudo、curl、wget),使用目录中的image,并在可能时设置filter.paths。 - 工作区具备使用资格且 Spot 环境处于运行状态时,作业会在 Spot 上运行;并创建
HeyEddi Runner: {job_id}Checks。
创建/更新的决策关卡优先使用 @heyeddi-ci-config。
证据规则(强制)
- 作业可以在具备使用资格且 Spot 基础设施可用时运行。
- 只有在有 Check / Spot 证据(
HeyEddi Runner: …、工作流 Check 结论、Ops/日志)时,才能说作业确实运行了。 - YAML lint ≠ 已执行。无法确认时 → 如实说明,并使用
@heyeddi-ci-fails。 - 任何暗示已执行的总结之前,都要运行:
assert_runners_claims --check --agent-text "<your summary>"
Pipeline
load_policy_contract
inspect_repo
→ choose GHA-first vs sealed pipeline (never both for the same CI)
→ wire HEYEDDI_RUNS_ON hook and/or author pipeline: jobs
assert_runners_claims --check --agent-text "<your summary>"
工具
| 工具 | 用途 |
|---|---|
load_policy_contract | 动态配置项 / 指南 |
inspect_repo | 语言 + 有证据支持的命令 |
assert_runners_claims | 阻止无依据的执行声明 |
安全
- YAML 中绝不放置机密
- 绝不编造测试命令
- 绝不使用
auto_merge - 未经授权合并,绝不合并
- 绝不声称 AI 与运行器的时间线存在关联(即将推出)
评论
支持 Markdown