← すべての記事

Claude Code + Cursor:30セッションの併用から学んだこと

Claude Code単体、Cursor単体、そして両方を併用した30回の開発セッションを比較・記録しました。併用ワークフローでは、どちらか一方のツールだけを使った場合と比べて実装時間が約40%短縮されました。ただし、各ツールの強みに合わせてタスクを適切に割り振った場合に限ります。1

TL;DR

Claude Codeはターミナル操作、複数ファイルにまたがる変更、エージェントへのタスク委任に優れています。Cursorはインライン補完、単一ファイルの素早い編集、リアルタイムのコード提案に優れています。blakecrosley.comClaude Codeのフックシステム、そして複数のiOSアプリを構築した30セッションを通じて、明確な役割分担が見えてきました。Claude Codeは広範な作業(アーキテクチャ、複数ファイルのリファクタリング、テスト、デプロイ)に、Cursorは深い作業(単一ファイルの実装、インライン提案、ビジュアルなdiffレビュー)に向いています。この組み合わせにより、どちらか一方のツールに不得意な領域を無理に任せる際のコンテキストスイッチのオーバーヘッドを解消できます。


各ツールが得意とする領域

Claude Codeの強み

機能 Claude Codeが優れている理由 実際の使用例
複数ファイルのリファクタリング コードベース全体を読み取り、計画を立て、編集できる 審議システムの8つのPythonモジュールを1セッションでリファクタリング
ターミナル操作 git、テスト、ビルドへの直接的なシェルアクセス 12モジュールのブログリンター、pytestスイート、git操作の実行
エージェントへの委任 サブエージェントが独立したタスクを並列処理 3つの探索エージェントがCSSデータを収集している間に執筆作業
リサーチと探索 Glob、grep、readツールによるコードベースの理解 95個のフックファイルからライフサイクルイベントパターンを検索
カスタム自動化 フック、スキル、コマンドによるワークフロー自動化 95個のフック、44個のスキルで品質・安全性チェックを自動化

Cursorの強み

機能 Cursorが優れている理由 実際の使用例
インライン補完 入力中にリアルタイムで提案 SwiftUIビューの実装、@Observableパターンの補完
単一ファイルの素早い編集 エディタ内での高速かつ正確な変更 critical.cssのCSSプロパティ調整
ビジュアルなdiffレビュー 適用前にサイドバイサイドで変更をプレビュー 生成されたHTMLテンプレートの変更レビュー
Tab補完フロー エディタを離れずに提案を承認・却下 Pythonの関数本体の記述

3つの実際のワークフロー例

例1:ブログ品質システム(Claude Code → Cursor → Claude Code)

タスク: 引用検証機能付きの12モジュールブログリンターを構築する。

Claude Code(アーキテクチャ、45分): 既存のcontent.pyを読み取り、モジュール構造を設計し、6つの初期モジュール(メタデータ検証、脚注チェック、コードブロック言語検出)を含むblog_lint.pyを作成、blog-lint.pyにCLIを組み込み、初期テストを実行しました。

Cursor(実装の磨き上げ、20分): citation-no-url検出の正規表現パターンを改良し、ONLINE_PATTERNSのマッチングを調整し、学術論文の引用とWeb参照のエッジケース処理を追加しました。Cursorのインライン補完は正規表現の反復作業に優れていました。パターンの一部を入力して提案を承認・却下する方が、Claude Codeにパターンを説明するよりも速かったです。

Claude Code(検証、15分): テストスイート全体(77テスト)を実行し、正規表現の改良で発生した3つの失敗を修正し、33件すべてのブログ記事をリントし、コミットを作成しました。

合計:80分。 Claude Code単体での推定:100分。Cursor単体での推定:150分以上(Cursorは複数ファイルにまたがるテストインフラの構築が苦手です)。

例2:iOS SwiftUIビュー(Cursor → Claude Code)

タスク: Ace Citizenship用のスペースドリピティション(間隔反復)カードビューを構築する。

Cursor(実装、30分): SwiftUIビュー全体を構築しました。カードのフリップアニメーション、進捗インジケーター、回答表示の機能です。SwiftUIはフレームワークとして一貫したパターンを持つため、Cursorのインライン補完が効果的に機能します。@ObservableNavigationStack、モディファイアチェーンのTab補完は自然な操作感でした。

Claude Code(統合、10分): ビューをナビゲーションフローに組み込み、SwiftDataクエリを追加し、ビルドを実行し、ビューモデルとデータモデル間の型の不一致を修正しました。

合計:40分。 このタスクは作業の75%が単一ファイルだったため、Cursorが大部分を担いました。

例3:フックインフラ(Claude Codeが主体)

タスク: スポーン予算トラッキング付きのrecursion-guard.shを構築する。

Claude Code(実装の100%): このタスクは完全に複数ファイルにまたがる作業でした。14個のJSON設定ファイルの読み取り、フックスクリプトの編集、セッション開始時の初期化の更新、複数のエージェントスポーンシナリオでのテスト、48個のbash統合テストでの検証です。ここではCursorは価値を発揮しません。作業が多くのファイルにまたがり、ターミナル操作(テストスクリプトの実行、フック出力の確認、JSON設定の読み込み検証)が必要だからです。


併用がうまくいかない場面

失敗1:ツール間のコンテキストのずれ

Claude Codeがファイルシステムを変更すると、Cursorはエディタ上でその変更を確認できます。しかし、Cursorのコンテキスト(.cursorrules、開いているファイル、最近の編集)は、Claude Codeが行ったアーキテクチャ上の判断を把握していません。CursorのMDCファイルが更新されていなかったため、Claude Codeが確立したばかりのアーキテクチャと矛盾するパターンをCursorが提案してきたことがありました。

対処法: Claude Codeでアーキテクチャセッションを行った後、Cursorに切り替える前に.cursorrulesや関連するMDCファイルを新しいパターンで更新します。2〜3分のオーバーヘッドが発生しますが、Cursorが新しいアーキテクチャに反する提案をすることを防げます。

失敗2:ファイル編集の競合

両方のツールが同じファイルを編集できます。Claude Codeがcontent.pyを変更した後、同じファイル内の関数を微調整するためにCursorに切り替えると、Cursorが編集前の状態に基づいた変更を提案することがあります(インデックスが更新されていないため)。結果として、手動での解決が必要な競合が発生します。

対処法: Claude Codeがファイルを編集した後、Cursorでそのファイルを閉じて再度開きます。または、複数の編集が必要な場合はClaude Codeでファイル全体を処理します。

失敗3:ターミナル中心のタスクは分割に向かない

頻繁なターミナル操作が必要なタスク(テスト失敗のデバッグ、シェルスクリプトの反復修正、ビルドの実行)では、Cursorの出番はまったくありません。デバッグの途中で1行の修正のためにCursorに切り替えると、ウィンドウ切り替えのオーバーヘッドが入力時間の節約を上回ります。

ルール: ターミナルコマンドが3回以上必要なタスクでは、タスク全体をClaude Codeで完結させます。


セッションデータの概要

指標 Claude Code単体 Cursor単体 併用
複数ファイルタスク(平均時間) 45分 90分 50分
単一ファイルタスク(平均時間) 15分 8分 8分
ターミナル中心のタスク 30分 該当なし 30分
コンテキスト設定のオーバーヘッド 2分 1分 5分
アーキテクチャ+磨き上げタスク 60分 80分 40分

併用ワークフローが最も効果を発揮するのは「アーキテクチャ+磨き上げ」タスクです。Claude Codeが構造的な作業を、Cursorが細部の作業を担当します。併用ワークフローではタスクごとに3〜5分のコンテキストスイッチのオーバーヘッドが発生するため、10分未満のタスクでは分割のメリットがありません。2


現在のタスク分担

タスクの種類 ツール 理由
複数ファイルのリファクタリング Claude Code コードベース全体を読み取り・編集できる
テストの作成とデバッグ Claude Code テスト実行にターミナルが必要
Git操作 Claude Code シェルへの直接アクセス
SwiftUIビューの実装 Cursor 優れたインライン補完
CSSプロパティの調整 Cursor エディタでのビジュアルフィードバック
単一関数の実装 Cursor Tab補完フロー
フック・スクリプト開発 Claude Code ターミナル中心、複数設定ファイル
ブログ記事の執筆 Claude Code 複数ファイルのリンティングと検証
正規表現パターンの反復修正 Cursor インライン反復が高速

重要なポイント

両方のツールを導入する開発者の方へ: - 複数ファイル、ターミナルコマンド、自律的なタスク実行が関わる作業にはClaude Codeを使います - 単一ファイルの編集、インライン補完、ビジュアルなdiffレビューにはCursorを使います - アーキテクチャ変更後は共有コンテキストファイル(CLAUDE.md、.cursorrules)を更新し、コンテキストのずれを防ぎます - 10分未満のタスクではツールの分割はメリットがありません。コンテキストスイッチのオーバーヘッドが節約時間を上回ります

AIツーリングを評価するチームリーダーの方へ: - これらのツールはワークフローの異なるフェーズに対応しています。どちらか一方だけを評価すると、併用による価値を見逃します - チームの作業におけるアーキテクチャと磨き上げの比率を把握することで、併用ワークフローの効果を推定できます


参考


  1. 筆者によるワークフロー分析。Claude Code単体、Cursor単体、併用の30回の開発セッションを比較。blakecrosley.com、Ace Citizenship iOSアプリ、Claude Codeフックインフラにまたがるセッションを記録(2025〜2026年)。 

  2. 筆者のセッションデータ。コンテキストスイッチのオーバーヘッドはツール切り替えごとに3〜5分と計測されており、10分未満のタスクの分割は非効率です。