← All features

Verify and reviewAvailable in v0.3.0

Build and review loop

Claude Code builds the first version; Codex CLI reviews a clean, read-only snapshot, corrects the blocking findings and reviews again. There is no fixed number of rounds: a series ends when a round approves or leaves only P2/P3 follow-ups. A repeated problem or a design choice stops the loop for your answer, and a round limit is optional.

When you need it

AI sessions can keep reviewing without an ending rule, retry the same fix in different ways, or quietly make design decisions that should be yours.

How it works

  1. oah call claude --stage initial sends the packet's brief to Claude Code. [stages] in .oah/config.toml sets which engine does each stage; the wrong engine is refused with OAH_STAGE_ENGINE_MISMATCH unless --override-stage is passed, which is recorded.
  2. oah review --task T reviews the committed work from the merge-base to HEAD in a fresh clone with agent instruction files removed. A canary proves only that Codex could read the snapshot.
  3. Findings carry a severity: P0 and P1 block, P2 and P3 are follow-ups. Each finding keeps a stable id and class across rounds.
  4. oah fix --task T has Codex correct the latest P0/P1 findings in your leased worktree and leaves the change uncommitted. You inspect the diff, commit it with Agent-Engine: codex, then run oah fix --task T --bind.
  5. The loop stops with OAH_REVIEW_NEEDS_DECISION when a finding repeats a kind an earlier correction tried to fix, or the fix needs a design or stored-format change. --decision "<what you decided>" continues and is recorded.
  6. [review] max_rounds is an optional limit; reaching it stops with OAH_REVIEW_ROUNDS_EXHAUSTED, and --extra-round continues and is recorded.

Example

Correct, re-prove and review again in the worked example (only when changes are requested).

oah wiki maintain --task hello-name
oah gates check hello-name --approve
git add -A
git commit -m "fall back to world for an empty name" -m "Agent-Engine: codex"
oah fix --task hello-name --bind
oah review --task hello-name

Requirements

  • Claude Code and Codex CLI, installed and signed in by you.
  • A committed tree: uncommitted changes to tracked files refuse with OAH_REVIEW_DIRTY_TREE.

Limits and recovery

  • The Claude-builds, Codex-reviews split comes from the author's own experience, not a measured comparison.
  • A Codex review of a Codex correction is labelled independent: no — an honest label for this engine order, not an error.
  • A converged review can still leave P2/P3 follow-ups, which are recorded.
  • If several reviewer calls in one round fail, oah stops calling the paid reviewer (OAH_REVIEW_ATTEMPTS_EXHAUSTED): read the last run's stderr.log, fix the cause, then rerun with --extra-attempt.
  • Running oah fix after convergence refuses with OAH_FIX_NOT_REQUESTED.

Original documents

Related