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.svg" alt="Measured on agentmods" 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.07083 |
| Opus 5 | $0.00000 | $0.03542 |
| Sonnet 5 | $0.00000 | $0.01417 |
| Haiku 4.5 | $0.00000 | $0.00708 |
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 8d 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 — 769 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 |
off | Run full local E2E suite in parallel with CI after push |
--reset-env |
off | Reset local E2E environment (fixtures) before local runs |
--compose-file <path> |
dev.docker-compose.yml | Docker Compose file for local E2E (use build.docker-compose.yml to match CI exactly) |
--flaky-retry N |
0 | Re-run suspected flaky tests N times before diagnosing |
--skip-local-validate |
off | Skip local validation (push immediately after fix) |
--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.
- 8d 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 (251 stars, last pushed yesterday), licensed MPL-2.0. It costs nothing until one of its globs matches a file; then it loads 7,083 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
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.
analyst
Use when performing local analyst review before pushing PR changes. Assesses code quality, impact analysis, and maintainability.
release
Standalone SDK release command for the BUILD repo. Not a workspace phase — runs independently after any number of implement/redteam cycles. Handles PyPI publishing, documentation deployment, and CI management for the kailash Python SDK and its framework packages.
cf-scaffold-project
Scaffold a Cloudflare project — Worker, Pages, or Worker+D1+R2 starter — with Wrangler config, Terraform skeleton, and GitHub Actions deploy using scoped API tokens.