Borrowing it
Nothing to install: this file belongs to DIGI-UW/OpenELIS-Global-2. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/DIGI-UW/OpenELIS-Global-2/develop/.specify/oe/commands/fix-ci.mdgit clone --depth 1 https://github.com/DIGI-UW/OpenELIS-Global-2Wrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/digi-uw/openelis-global-2/fix-ci)<a href="https://agentmods.dev/commands/digi-uw/openelis-global-2/fix-ci"><img src="https://agentmods.dev/badge/commands/digi-uw/openelis-global-2/fix-ci/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/commands/digi-uw/openelis-global-2/fix-ci"><img src="https://agentmods.dev/badge/commands/digi-uw/openelis-global-2/fix-ci.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.06935 |
| Opus 5.5 | $0.00000 | $0.02774 |
| Sonnet 5.5 | $0.00000 | $0.01387 |
| Haiku 4.5 | $0.00000 | $0.00694 |
Grade A, and why
fix-ci scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 17d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 741 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Fix CI
When the user invokes /fix-ci (optionally with arguments), perform an
autonomous, async-first CI remediation loop that:
- Downloads CI failure logs and artifacts (screenshots, traces)
- Diagnoses failures using evidence (logs, screenshots, code)
- Applies targeted, minimal fixes
- Validates locally before pushing
- Pushes, waits 15 minutes, and re-checks CI
- Iterates until CI is green or escalation is required
This command is action-oriented and autonomous: it runs the full loop without user interaction unless it hits an escalation boundary. The user can walk away and come back to a green CI or a clear diagnostic report.
User Input
$ARGUMENTS
Interpret arguments best-effort. Parse and validate each flag before use. Only construct shell commands using recognized flag values — never interpolate raw user text directly into shell commands. Support these patterns:
Target selection (mutually exclusive):
/fix-ci→ current branch, latest failed run/fix-ci --pr 123→ target a specific PR/fix-ci --run-id 12345678→ target a specific run/fix-ci --branch develop→ target a specific branch
Behavior options:
| Flag | Default | Description |
|---|---|---|
--max-iterations N |
5 | Max fix-push-check cycles before escalating |
--dry-run |
off | Diagnose only — no fixes, no pushes |
--local-e2e |
deprecated | Full local CI always runs in parallel after push; this legacy flag is unnecessary |
--reset-env |
deprecated | Isolated lane runners own their fresh databases; never reset the interactive stack |
--compose-file <path> |
unsupported | Use the isolated repository runners; do not override Compose layering |
--flaky-retry N |
0 | Re-run suspected flaky tests N times before diagnosing |
--skip-local-validate |
unsupported | Do not skip local validation |
--jobs <job-names> |
all | Only fix specific jobs (e.g., --jobs "E2E / Playwright / Core" or --jobs "E2E / Cypress (Deprecated) / Core") |
--notify |
off | Force NOTIFY level (always summarize, even for AUTO) |
--report-to-pr |
off | Post resolution report as a PR comment when done |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 17d ago Changed · -43 lines bffd24b60b80
- 19d ago Changed · +15 lines b3c3e2c70a69
- 1mo ago First seen · 769 lines · 0 tokens per session scan A 3162f2da2e3e
fix-ci is a command published in the GitHub repository DIGI-UW/OpenELIS-Global-2 (272 stars, last pushed today), licensed MPL-2.0. It costs nothing until one of its globs matches a file; then it loads 6,935 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other commands, from other repositories
dart-fix-ci
Command "dart-fix-ci" from dartsim/dart, covering required reading, workflow and output.
domains
Apply the CLI runtime and safety contract before executing a command. Runtime --help is authoritative.
access
Apply the CLI runtime and safety contract before executing a command. Runtime --help is authoritative.
check-release-health
Summarize the CI health of an OpenShift release using live data from the openshift-ci-mcp server.
merge-conflict-analysis
You are analyzing merge conflicts for PR #${{ pr-number }}.
security-check
Fast security baseline audit of a product — tracked secrets, unpinned/vulnerable GitHub Actions, workflow permission scope, untrusted-input triggers, MCP-config surface, and an RLS reminder. Add --live to also check the RUNNING system for drift (live RLS status, storage-bucket visibility, Security Advisors, preview…