Is a second model worth the extra time on docs updates?
Tares challenger sessions add a second model for about 30 to 90 seconds per plan plus one Codex review per commit, billed to your OpenAI account. In advisory mode findings never block a commit, so the cost is the wait for each review and a second bill. You decide per session whether that is worth it. The full setup is in Challenge Claude Code with a second model.
How it works
In a challenger session, Claude Code plans and builds as usual, and the OpenAI Codex CLI on your laptop critiques the work. Each step has its own cost.
- Per plan: when Claude leaves plan mode, Codex critiques the plan. It takes 30 to 90 seconds, so Claude’s first reply after you approve the plan is slower. A plan critique never blocks. Only a
[P1]counts as blocking on a plan, and even then Claude is asked to revise or to tell you why it disagrees. - Per commit: after each
git commit, the plugin runs a Codex review on that commit. Each review is one more Codex run, and Tares records itsduration_secondson thechallenge_commitevent. - On the fix loop: in the default
strictmode,[P1]or[P2]findings block Claude until it fixes and amends the commit. The amended commit is reviewed again as the next round. The loop is capped at 8 rounds per commit and 5 turn ends per session.[P3]findings, Codex timeouts, errors and inconclusive reviews never block. - Per session: a session with a plan and three commits is typically five to eight Codex runs. The summarizer is one Tares agent run per session, metered like every other agent run.
The review runs on your laptop in the Claude Code hooks. Tares never calls Codex and never makes a review wait.
Set it up
-
Start Tares locally and run its MCP endpoint next to it. On Tares Cloud the instance serves the endpoint itself.
tares up tares mcp --transport streamable-http -
Install the Tares plugin for Claude Code, version 0.2 or later. Install the Codex CLI and log in. Codex is billed to your OpenAI account.
-
Set an Anthropic API key for the summarizer under Settings > Model providers or as
ANTHROPIC_API_KEY. Tares Cloud instances come with one. -
In Claude Code, say “make this a challenger session” or type
/tares:challenger. The first marked session creates the Challenger workflow project by itself. -
To keep the cost to waiting only, set the plugin option
challenger_modetoadvise. Commit findings then come back as context and never block. -
If you stay in
strictmode and disagree with a blocking finding, type/tares:challenger-waiveto waive one finding or all of them. The waiver is shipped to Tares as achallenge_waivedevent. -
To skip the challenger for the rest of a session, type
/tares:challenger off. A session you did not mark runs nothing extra.
What you get
- A clear cost model. You pay in seconds on each plan and each commit, and in Codex runs billed by OpenAI. The summarizer adds one metered Tares agent run per session.
- Findings that never block when you want them that way. In advisory mode Claude sees the review and keeps going, so a review never costs you a fix loop.
- A record of the time spent.
challenge_planandchallenge_commitevents carryduration_seconds,finding_countandblocking_count, and the Sessions list on the project page shows the plan outcome and aFindings (N)orPassbadge per reviewed commit. - A summary at the end of each session. Its five sections include cost, and its Memory proposals are only written to memory when you accept them.
- A review that does not depend on Tares being up. A Tares that is down or slow never blocks a review, and the plugin retries shipping on the next hook.
When something else fits
- If you want the second opinion without any fix loop, use advisory mode. If even the added seconds per commit are not worth it to you, leave the session unmarked, and nothing runs.
- Keep
strictmode for changes where a blocking finding is worth the extra rounds and amended commits. - If you are setting up the software factory for Claude Code instead, start with Get started.