mcpField
H
heyeddi-ci-runners

heyeddi-ci-runners

github.com/heyeddi-comCloud & DevOps039 installsUpdated 1d ago
Repository

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

  1. 01Choose GHA or sealed pipeline
  2. 02Configure Spot routing for GHA
  3. 03Inspect repository languages and commands
  4. 04Author constrained pipeline jobs
  5. 05Check evidence for execution claims

Use cases

  1. 01Set up Spot routing for a repository using GitHub Actions
  2. 02Design sealed jobs for a repository without GHA
  3. 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-runners

After installing, type/heyeddi-ci-runnersin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

manifest.json
context/
ANTI_PATTERNS.md
EXAMPLES.md
PROSE_ANTI_SLOP.md
VOCABULARY.md
reference/
runners.md
scripts/
_skill_cli.py
assert_runners_claims.py
assert_runners_placeholder.py
inspect_repo.py
load_policy_contract.py

Details

From the project README

HeyEddi CI Runners

Spot is shipped. Help the user wire the right runner path and never invent execution claims.

Two job kinds (do not collapse)

KindWhereCheck nameWhen to use
GHA on Spot.github/workflows/*.yml + workspace gha_spot_modeSame workflow CheckRepos that already have Actions (default)
Sealed pipeline:eddi-ci.yaml pipeline: jobsHeyEddi 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

  1. Confirm .github/workflows/ exists (or user wants Actions-based CI).
  2. Ensure every Linux job uses:
runs-on: ${{ vars.HEYEDDI_RUNS_ON || 'ubuntu-latest' }}
  1. Tell the user to set workspace Runners mode on ci.heyeddi.com:
    • overflow — GitHub minutes first; Spot JIT when exhausted
    • always — Linux jobs on Spot from the first run
    • off — hosted only
  2. Keep eddi-ci.yaml Reviewer-only with pipeline: {} (use @heyeddi-ci-config).
  3. 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)

  1. load_policy_contract — living knobs only.
  2. inspect_repo — evidenced commands + path prefixes; never invent pytest / npm test.
  3. Explicit user opt-in (billable runner time).
  4. Author argv-safe run (no shell operators, sudo, curl, wget), catalog image, filter.paths when possible.
  5. 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

ToolPurpose
load_policy_contractLiving knobs / guide
inspect_repoLanguages + evidenced commands
assert_runners_claimsBlock 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)

Comments

Markdown supported