Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Fix Elixir/Phoenix code until Codex CLI review comes back clean — bounded review, fix, verify loop before opening a PR. Use when codex is installed and you want an external cross-model critic on your changes before pushing.
.claude/skills/oliver-kriska-codex-loop/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | 590% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 119% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 30% | 0% |
| case-17 | ✗→✓ | ▲ Improved | 18% | 0% |
| case-18 | ✗→✓ | ▲ Improved | 35% | 0% |
Critic→Refiner loop with the Codex CLI as external critic: review → fix approved findings → verify → re-review, until codex is clean or rounds run out. Codex reviews; Claude fixes. Complements /phx:review (Claude panel) — run either or both before a PR.
/phx:codex-loop # diff vs default branch, interactive
/phx:codex-loop --uncommitted # staged + unstaged + untracked
/phx:codex-loop --base develop # explicit base branch
/phx:codex-loop --auto # auto-approve P0/P1/P2, skip P3
/phx:codex-loop --max-rounds 2 # default 3costs codex quota; report remaining findings instead of looping on
mix compile --warnings-as-errors + testsmust pass before burning a codex round on broken code
violate an Iron Law, with explanation in the round report
fixed, declined (with reason), or deferred-by-user
/phx:review as the codex-free alternative; never crash
Run command -v codex. If missing: STOP. Show the install hint (brew install codex or npm i -g @openai/codex, then codex login; codex doctor to diagnose) and suggest /phx:review.
Then two cheap checks that save review rounds:
git status --short, only when using --base): codexinspects working-tree state too and WILL flag local dirt (stray edits, dirty submodules) as findings. Surface the dirt and ask: clean/stash first, or proceed knowing round 1 may spend findings on it.
AGENTS.md has no ## Review guidelinessection, note once that /phx:init installs the Elixir rubric that steers codex priorities — then proceed (it works without, on defaults).
--base/--uncommitted) → use as given--base {default}--uncommitted--max-rounds, default 3)timeout: 600000(large diffs run 10+ min). On timeout with the process alive: ONE until [ -f {out} ]; do sleep 5; done wait — never poll-spam or pkill a running review (quota is spent either way). ALWAYS silence the streams — only the -o file matters (10k+ lines otherwise):
bash codex exec review --base {branch} --ephemeral \ -o /tmp/codex-round-{n}.md > /tmp/codex-round-{n}.log 2>&1
NEVER pass custom instructions with a diff-mode flag — the CLI rejects the combination; the rubric comes from AGENTS.md ## Review guidelines (/phx:init). Parse the output file, NOT the exit code (0 even with findings). Recipes: ${CLAUDE_SKILL_DIR}/references/codex-cli.md.
- [P{n}] bullets meansCLEAN → go to Step 4.
(# | P | file:line | title | proposed action) as visible response text BEFORE any AskUserQuestion call — a table composed only in thinking never renders. Then ask approve-or-skip per finding (AskUserQuestion). With --auto: approve P0/P1/P2, skip P3 (list skipped in the round report).
against Iron Laws first (Law 4).
bash mix format {changed_files} && \ mix compile --warnings-as-errors && mix test {affected_tests}
If verification fails 3 times, STOP with a BLOCKER report — do not burn another codex round on broken code.
markdown## Codex Loop Report — {CLEAN | MAX ROUNDS REACHED | BLOCKED} Rounds: {n}/{max} | Fixed: {n} | Declined (Iron Law): {n} | Deferred: {n} {per-round: findings → outcome} {remaining findings if not CLEAN}
On CLEAN: suggest /phx:compound for non-obvious fixes, then commit/PR. On MAX ROUNDS: list remaining findings; offer /phx:plan to convert them into a follow-up plan.
textimplement → /phx:codex-loop (YOU ARE HERE) → clean → commit/PR → /phx:watch-pr --codex ↑ or arrive from /phx:review --codex verdict REQUIRES CHANGES
${CLAUDE_SKILL_DIR}/references/codex-cli.md — invocation recipes, parsepatterns, verified gotchas (CLI 0.142.5)
Other measured skills in the registry, with their headline benchmark lift.