18
16

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Code vs Codex vs Cursor — 同一リファクタリングタスクを3ツールで検証した速度・精度・コスト比較

18
Posted at

結論: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ツールに絞るのではなく、タスク特性に応じた併用ワークフローが最強。設計→実装→レビュー→検証のフェーズごとに最適なツールを使い分けることで、速度・精度・コストのすべてを最適化できる

参考リンク


免責事項: 本記事の計測データは2025年7月時点の各ツールバージョンに基づいています。各ツールは急速にアップデートされているため、最新版では結果が異なる可能性があります。コスト概算はAPIの公開料金から算出しており、プランや利用状況により変動します。

18
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
16

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?