Chapter 27

Run One Task Through Three Products

The products have different interfaces and configuration, but the verifiable workflow can stay the same. Compare not model impressions but scope, controls, evidence, and the convenience of your environment.

The same stages across the three products look like this.

Stage · Codex · Claude Code · Cursor

  • Persistent instructions - AGENTS.md; CLAUDE.md; .cursor/rules/*.mdc or AGENTS.md
  • Plan - Plan mode; Plan permission mode; Plan Mode
  • Reusable workflow - .agents/skills; .claude/skills; .agents/skills or .cursor/skills
  • Deterministic event - Codex hooks; Claude hooks; .cursor/hooks.json
  • Non-interactive - codex exec; claude -p; agent -p
  • Git isolation - Worktrees; A plain Git worktree or an isolated environment; Agents Window and worktree commands

The key to a fair comparison is the same acceptance contract, independent of the product.

goal: percentage discount uses 0..100 units
read: src/discount.js, tests/discount.test.js
write: src/discount.js only
constraints: preserve API, no dependencies
verify: failing baseline, focused test, full check
report: diff, exact commands, exit codes, residual risk

To pick the primary surface for your task and see where the controls differ, use the lab.

Interactive lab 5

Choose the primary surface

Compare Codex CLI and Claude Code on the same contract; the Cursor CLI also supports an interactive agent.
Make the final choice by accepted patches, rework, review time, and scope violations on your own tasks.

Evaluate on your own repository by discipline, not by one demo: take 10 similar already-solved tasks, give the same contract and the same permissions, record accepted diff, rework, elapsed time, commands, and scope violations, and don't change product, model, prompt, and environment at once.

There's no universal winner. Codex is convenient in its CLI, app, and cloud surfaces, Claude Code is deeply integrated into the terminal workflow and extension system, Cursor combines editor, indexing, and agent UI. The outcome depends on the repository, team controls, platform, and task type - choose the primary tool by your workflow.

The tool is chosen. But not everything is worth automating - only a stable, bounded workflow.

Links