Claude Code5/5tests
- Time
- 00:48
- Cost
- $1.22
- Output tokens
- 1,820
- Extra turns
- 0
Hands-on
We give Claude Code, OpenAI Codex and Gemini CLI an identical small repository and an identical prompt, then record what each one cost and what came out. Every number is read from the tool's own usage report or from the test runner. Runs we have not performed yet say so.
Method: How we review · Protocol and fixtures are published in the project repository.
Starting from a 40-line Python package with 5 failing tests: fix CSV date parsing and a trailing blank line, add totals_by_customer(), and add a --top N CLI flag. Standard library only, tests must not be edited.
Read README.md and make all tests in tests/ pass. Do not edit the tests. Run the tests yourself before you finish.
Claude Code5/5tests
—not yet run
Gemini CLI—not yet run
| Agent | Status | Tests | Wall time | Tokens in / out | Cost | Extra turns | Diff | Model · plan |
|---|---|---|---|---|---|---|---|---|
| Claude Code | Run Oct 2, 2026 | 5/5 | 00:48 | 162 / 1,820 250,959 cached |
$1.22 reported by the tool |
0 | 2 files, +22 / −8 | claude-fable-5-1 · Headless run (claude -p) on the reviewer's account; cost shown at API list price (costBasis: list), subscription plan not applied · v2.1.284 |
| OpenAI Codex | Not yet run | |||||||
| Gemini CLI | Not yet run | |||||||
{
"duration_ms": 48154,
"duration_api_ms": 46010,
"num_turns": 8,
"total_cost_usd": 1.2184397500000002,
"usage": {
"input_tokens": 162,
"output_tokens": 1820,
"cache_read_input_tokens": 250959,
"cache_creation_input_tokens": 53154
},
"modelUsage": {
"claude-fable-5-1": {
"inputTokens": 162,
"outputTokens": 1820,
"cacheReadInputTokens": 250959,
"cacheCreationInputTokens": 53154,
"webSearchRequests": 0,
"costUSD": 1.2184397500000002,
"contextWindow": 1000000,
"maxOutputTokens": 64000,
"thinkingTokens": 201,
"canonicalModel": "claude-fable-5-1",
"provider": "firstParty",
"costBasis": "list"
}
}
} Opinion: clean argparse implementation, all 5 tests green on the first self-check. Caveats: (1) run via the non-interactive `claude -p` command with a tool allowlist (Read/Edit/Write/Bash for python and git), not the interactive TUI; (2) the reviewer's global Claude Code settings and skills were active, which a fresh install would not have; (3) the agent also removed the old "Total:" output line that no test covered.
Limits: one task, one run per agent, defaults only. This is a reproducible spot check, not a leaderboard.
compare>