About heyeddi-ci-runners
A skill for wiring HeyEddi CI runner paths, helping select GHA with Spot routing or sealed `pipeline:` jobs based on repository needs. It requires evidence before claiming a job ran, distinguishing configuration or YAML lint from execution.
Key features
- 01Choose GHA or sealed pipeline
- 02Configure Spot routing for GHA
- 03Inspect repository languages and commands
- 04Author constrained pipeline jobs
- 05Check evidence for execution claims
Use cases
- 01Set up Spot routing for a repository using GitHub Actions
- 02Design sealed jobs for a repository without GHA
- 03Check whether CI execution claims are evidenced
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ heyeddi-com/ heyeddi-ci-skills --skill heyeddi-ci-runnersAfter installing, type/heyeddi-ci-runnersin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with 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.pyDetails
From the project READMEHeyEddi CI Runners
Spot is shipped. Help the user wire the right runner path and never invent execution claims.
Two job kinds (do not collapse)
| Kind | Where | Check name | When to use |
|---|---|---|---|
| GHA on Spot | .github/workflows/*.yml + workspace gha_spot_mode | Same workflow Check | Repos that already have Actions (default) |
Sealed pipeline: | eddi-ci.yaml pipeline: jobs | HeyEddi Runner: {job_id} | No (or minimal) GHA, or niche sealed checks |
Golden rule: Never duplicate the same test/build in GHA and pipeline:. Prefer GHA + Spot routing; keep pipeline: {}.
Product docs: https://ci.heyeddi.com/docs · hub mirrors: see reference/runners.md.
Prefer GHA overflow / always
- Confirm
.github/workflows/exists (or user wants Actions-based CI). - Ensure every Linux job uses:
runs-on: ${{ vars.HEYEDDI_RUNS_ON || 'ubuntu-latest' }}
- Tell the user to set workspace Runners mode on ci.heyeddi.com:
overflow— GitHub minutes first; Spot JIT when exhaustedalways— Linux jobs on Spot from the first runoff— hosted only
- Keep
eddi-ci.yamlReviewer-only withpipeline: {}(use@heyeddi-ci-config). - Limits: Linux only; private repos; prepaid/entitled workspace; platform kill switch is ops-owned. Overflow reliability can still gap — do not promise “always works.”
Sealed pipeline: (advanced / no-GHA)
load_policy_contract— living knobs only.inspect_repo— evidenced commands + path prefixes; never inventpytest/npm test.- Explicit user opt-in (billable runner time).
- Author argv-safe
run(no shell operators,sudo,curl,wget), catalogimage,filter.pathswhen possible. - Jobs run on Spot when the workspace is entitled and Spot env is live; they post
HeyEddi Runner: {job_id}Checks.
Prefer @heyeddi-ci-config for the create/update decision gate.
Evidence rule (mandatory)
- Jobs can run under entitlement + Spot substrate.
- A job did run only when you have Check / Spot evidence (
HeyEddi Runner: …, workflow Check conclusion, Ops/logs). - YAML lint ≠ execution. Unknown → say so and use
@heyeddi-ci-fails. - Before any summary that implies execution, run:
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>"
Tools
| Tool | Purpose |
|---|---|
load_policy_contract | Living knobs / guide |
inspect_repo | Languages + evidenced commands |
assert_runners_claims | Block unsubstantiated execution claims |
Safety
- Never secrets in YAML
- Never invent test commands
- Never
auto_merge - Never merge without authorize merge
- Never claim correlated AI+runner timeline (Coming soon)