結論:1つのツールに絞るのは損。併用が最強です
「結局どれ使えばいいの?」に終止符を打つため、レガシーなExpressアプリのリファクタリングを3ツールに同時にやらせて、全部計測しました。
先に結論だけ言います。
- 速度:Cursor(Composer Agent)が最速
- 精度:Claude Codeが最高(テスト通過率98%)
- コスト:Codexが最安
- 最適解:タスク特性に応じた併用ワークフロー
この記事では、同一コードベース・同一プロンプトで3ツールを回し、定量データをすべて公開します。
1. 検証設計
対象コード
| 項目 | 詳細 |
|---|---|
| フレームワーク | Express.js v4系 |
| DB | MongoDB(Mongoose v6) |
| 総行数 | 約3,000行(ルート12本、モデル5つ、ミドルウェア8つ) |
| テスト | Jest + Supertest(既存テスト42件) |
| 問題点 | コールバック地獄、エラーハンドリング未統一、Fat Controller |
リファクタリングタスク(共通プロンプト)
3ツールすべてに、以下の同一指示を与えました。
このExpressアプリをリファクタリングしてください。
1. コールバックをasync/awaitに変換
2. エラーハンドリングを統一ミドルウェアに集約
3. Fat ControllerをService層に分離
4. 既存テスト42件がすべてパスすること
評価指標
計測方法
- 各ツールで3回ずつ実施し、中央値を採用
- 時間は
timeコマンド + 手動ストップウォッチを併用 - トークン消費はAPIログ / ツール内ダッシュボードから取得
- テスト通過は毎回
npm testで機械的に判定
2. Claude Code編
セットアップ
CLAUDE.md に以下を記載しました。
# CLAUDE.md
## プロジェクト概要
Express + MongoDB のREST API。Node.js v20。
## コーディング規約
- async/awaitを使用(コールバック禁止)
- エラーは AppError クラスで統一
- Service層 → Controller層 → Route の3層構成
## テスト
npm test で Jest + Supertest が走る。全件パス必須。
## 重要な依存関係
- mongoose v6(v7のAPIは使わないこと)
- express-validator でバリデーション
実行
claude "このExpressアプリをリファクタリングしてください。(以下、共通プロンプト)"
結果
| 指標 | 値 |
|---|---|
| 所要時間 | 8分32秒 |
| トークン消費 | 約148,000トークン(入出力合計) |
| コスト概算 | 約$1.85(Max Plan利用時は定額内) |
| テスト通過率 | 41/42(97.6%) |
| 手動修正回数 | 1回 |
所感
- 圧倒的なコンテキスト理解力。12ファイルにまたがる依存関係を正確に把握し、Service層の分離でimportパスを一発で正しく書いた
- 落ちた1件は、Mongooseの
lean()を追加したことでテストのオブジェクト比較が変わったため。指摘したら即修正してくれた -
CLAUDE.mdにMongooseバージョンを明記したおかげで、v7のAPIを使うミスがゼロだった - 追加で「テスト走らせて」と言うだけで自律的にデバッグサイクルを回してくれたのが強い
再度テスト実行を依頼後、42/42(100%) を達成。修正込みの実質所要時間は 9分48秒。
3. Codex編(OpenAI Codex CLI)
セットアップ
AGENTS.md に Claude Code と同等の情報を記載。
codex "このExpressアプリをリファクタリングしてください。(以下、共通プロンプト)"
実行モードは auto-edit(ファイル編集を自動許可)を使用。
結果
| 指標 | 値 |
|---|---|
| 所要時間 | 11分15秒 |
| トークン消費 | 約112,000トークン |
| コスト概算 | 約$0.92(GPT-4.1ベース) |
| テスト通過率 | 38/42(90.5%) |
| 手動修正回数 | 4回 |
所感
- コスト効率は3ツール中最良。トークン単価の低さが効いている
- ファイル単体の変換品質は高いが、ファイル間の依存解決で取りこぼしが発生。具体的には、Service層に切り出した関数のexport忘れが2箇所
- サンドボックス内で
npm testを自動実行してくれるのは便利だが、失敗時のリカバリループがClaude Codeほどスムーズではなかった - エラーハンドリングミドルウェアの統合は正確にできた
手動修正4回を経て 42/42 達成。修正込みの実質所要時間は 18分03秒。
4. Cursor編(Composer Agent)
セットアップ
.cursorrules に同等の規約を記載。Composer Agentモードで、Claude 4 Sonnetモデルを選択。
結果
| 指標 | 値 |
|---|---|
| 所要時間 | 6分48秒 |
| トークン消費 | 約135,000トークン(推定) |
| コスト概算 | 約$1.20(Pro Plan $20/月の定額内) |
| テスト通過率 | 39/42(92.9%) |
| 手動修正回数 | 3回 |
所感
- IDEとの統合が圧倒的に速い。差分プレビューを見ながら Accept/Reject できるため、体感速度は最速
- ただし、Composer Agent が途中でコンテキストウィンドウを使い切り、後半のファイルで精度が落ちた
- 具体的には、最後に処理されたルートファイル2つでService層へのリダイレクトが不完全だった
- 視覚的なdiff確認ができるのはCursorだけの強み。レビュー工数がほぼゼロ
手動修正3回を経て 42/42 達成。修正込みの実質所要時間は 12分22秒。
5. 比較表
定量データ一覧
| 指標 | Claude Code | Codex | Cursor |
|---|---|---|---|
| 初回所要時間 | 8分32秒 | 11分15秒 | 6分48秒 |
| 修正込み実質時間 | 9分48秒 | 18分03秒 | 12分22秒 |
| テスト通過率(初回) | 97.6% | 90.5% | 92.9% |
| 手動修正回数 | 1回 | 4回 | 3回 |
| トークン消費 | 148K | 112K | 135K |
| コスト概算 | $1.85 | $0.92 | $1.20 |
| コンテキスト理解 | ◎ | △ | ○ |
| 自律デバッグ | ◎ | ○ | △ |
| IDE統合 | △ | △ | ◎ |
総合評価レーダー(5点満点)
各ツールの勝ちパターン
- Claude Code:精度とコンテキスト理解で圧勝。修正込みの実質時間も最短。「正しく動くコード」を最速で得たいならこれ
- Codex:コスト最安。トークン効率が良く、単機能の変換タスクなら十分な精度
- Cursor:初回出力速度とIDE統合で最速。diff確認しながら進めたい人には最適
6. 使い分け戦略マトリクス
タスク特性 × ツール適性マトリクス
| タスク特性 | 推奨ツール | 理由 |
|---|---|---|
| 大規模リファクタリング(10+ファイル) | Claude Code | ファイル間依存の理解力が段違い |
| 単一ファイルのコード変換 | Codex | コスト効率が最良 |
| UI/フロントエンドの修正 | Cursor | diff プレビューで見た目確認しながら進められる |
| バグ修正 + テストデバッグ | Claude Code | 自律デバッグループが強力 |
| 新規機能のプロトタイピング | Cursor | IDE統合で即座にプレビュー・実行可能 |
| ドキュメント生成・コメント追加 | Codex | 低コストで大量処理に向く |
| セキュリティ監査・脆弱性修正 | Claude Code | コンテキスト全体を把握した上での修正が必要 |
7. 結論:併用こそ最強 — 具体的ワークフロー
私が実際に運用している併用フロー
ステップ1:Claude Code で骨格を作る
# CLAUDE.mdを整備してから一発実行
claude "Service層を分離してControllerをスリム化して"
大規模な構造変更は、コンテキスト理解力が高いClaude Codeに任せます。CLAUDE.md への投資が精度に直結するので、ここは手を抜かないこと。
ステップ2:Cursor で差分レビュー&微調整
Claude Code が生成した差分をCursorで開き、Composer Agent に微調整を依頼。IDE上でのdiffプレビューが活きるフェーズです。
ステップ3:Codex で定型処理を一括実行
JSDoc追加、型アノテーション、ログ文の統一など、パターン化できるタスクはCodexでコストを抑えて一気に処理。
ステップ4:Claude Code で最終検証
claude "npm testを実行して、失敗があれば修正して"
自律的にテスト→修正→再テストのループを回してくれるClaude Codeにクロージングを任せます。
月額コストの目安
| プラン | 月額 | 用途 |
|---|---|---|
| Claude Code Max Plan | $100〜200 | メインの開発作業 |
| Cursor Pro | $20 | IDE統合レビュー |
| Codex(API従量) | $10〜30 | 定型処理バッチ |
| 合計 | $130〜250 | — |
一人のエンジニアの生産性が2〜3倍になることを考えれば、十分にペイする投資だと考えています。
まとめ
- 精度最優先ならClaude Code。ファイル間依存の理解力と自律デバッグループが他を圧倒し、修正込みの実質時間でも最短だった
- コスト効率ならCodex。トークン単価の低さが効き、定型的な変換タスクでは十分な品質を出せる
- 1ツールに絞るのではなく、タスク特性に応じた併用ワークフローが最強。設計→実装→レビュー→検証のフェーズごとに最適なツールを使い分けることで、速度・精度・コストのすべてを最適化できる
参考リンク
- Claude Code 公式ドキュメント
- Claude Code CLAUDE.md ベストプラクティス
- OpenAI Codex CLI GitHub
- Cursor 公式ドキュメント
- Cursor Composer Agent
免責事項: 本記事の計測データは2025年7月時点の各ツールバージョンに基づいています。各ツールは急速にアップデートされているため、最新版では結果が異なる可能性があります。コスト概算はAPIの公開料金から算出しており、プランや利用状況により変動します。