SB C&Sの最新技術情報 発信サイト

C&S ENGINEER VOICE

SB C&S

Devinは任せる、Windsurfは一緒に進める!AI開発支援ツールの使い分け

Cognition
2026.05.28

はじめに

こんにちは。
SB C&Sの佐藤です。

昨今、AIを活用した開発支援ツールが広がる中で開発現場では「どのツールを、どの場面で使うべきか」がAI×アプリケーション開発の重要なポイントになっています。
CognitionのDevinとWindsurfについても、どちらもソフトウェア開発を支援する製品ですが、役割は同じではありません。概要としては、Devinは開発タスクを委任するAIソフトウェアエンジニア、Windsurfは開発者がIDE上でAIと協働するためのAI搭載IDEとなっています。

本記事では、DevinとWindsurfを優劣で比較するのではなく、開発タスクの性質に応じた使い分けの考え方を整理します。

目次

DevinとWindsurfの基本的な違い

Devinに任せやすいタスク

Windsurfで進めやすいタスク

使い分けの判断基準

WindsurfとDevinが協業するワークフロー

まとめ

DevinとWindsurfの基本的な違い

DevinとWindsurfの違いは、開発者との関わり方にあります。

「コードの作成、実行、テストを自律的に進めるAIソフトウェアエンジニア」であるDevinは、目的や完了条件を与えたうえで、実装、検証、プルリクエスト作成までを任せる使い方に適しています。
公式ドキュメントでは、チケット対応、機能実装、バグ修正、アプリケーションのテスト、コードマイグレーション、リファクタリング、モダナイズ、ユニットテスト作成、ドキュメント整備などがユースケースとして挙げられています。

「IDE内でコードの理解、修正、質問応答、ツール呼び出しを支援するエージェント型AIアシスタント」であるWindsurfは、これまでの開発ワークフローはそのままに、開発者がIDE上でコードを確認しながらAIに質問したり、実装方針を相談したり、変更を段階的に依頼したりする使い方に適しています。
またCascade機能では、ChatモードとCodeモードを使い分けながら、開発中の文脈を踏まえて作業を支援することも可能です。

整理すると、Devinは「任せる」ための製品、Windsurfは「一緒に進める」ための製品です。

役割.png

Devinに任せやすいタスク

Devinに任せやすいのは、ゴールが明確で、成果物をレビューしやすいタスクです。
ここでいう「任せやすい」とは、人間の確認が不要という意味ではありません。作業の目的、対象範囲、完了条件、検証方法をあらかじめ定義しやすい(機械的な判断が可能)という意味です。

代表的な例として、次のような作業があります。

  • 言語やフレームワークのバージョンアップ
  • 脆弱性対応に伴う依存関係の更新
  • データベース(DB)カラム追加に伴うモデル、API、テストの修正
  • 再現条件が分かっているバグの調査と修正
  • 既存仕様に沿ったユニットテストの追加
  • コードベースをもとにしたドキュメント整備

これらに共通するのは、「この条件を満たすプルリクエストを作成してほしい」と依頼しやすい点です。
たとえば、Devinには次のように依頼できます。

このリポジトリのJava 25対応を行ってください。

完了条件は以下です。

- 依存関係をJava 25に更新する
- 変更がある箇所を修正する
- 既存テストが通ることを確認する
- 必要に応じて追加テストを作成する
- 変更内容と確認結果をプルリクエスト本文に記載する

Devinを使う際は、「最新化してください」「いい感じに修正してください」のような依頼よりも、完了条件まで含めて依頼する方が成果物を確認しやすくなります。
難しいタスクの場合はいきなり実装を任せるのではなく、調査、方針整理、実装の順に分けると扱いやすくなります。

Windsurfで進めやすいタスク

Windsurfで進めやすいのは、開発者が判断を挟みながら進めたいタスクです。
たとえば、新規機能の設計、大規模改修、UI/UXの調整、複雑な技術要件の検討、既存コードの読み解き、開発中のエラー修正などが該当します。これらの作業では、最初からゴールや実装方法が完全に固まっているとは限りません。コードを読み、影響範囲を見ながら、途中で方針を調整する場面が多くあります。

Windsurfは、従来の開発フローを置き換えるというより、IDE上で行っている調査、設計、実装、修正、確認の流れにAIを組み込む製品と考えると分かりやすくなります。
たとえば、最初はコード変更を行わず、調査だけを依頼できます。

まず、この機能に関連するファイルと処理の流れを整理してください。
そのうえで、影響範囲、実装方針、テスト観点を提案してください。
この時点ではコード変更は行わず、方針を確認してから進めます。

方針を確認した後で、実装範囲を絞って依頼します。

提案された方針のうち、APIレスポンスの型追加と画面表示部分の修正だけを実装してください。 既存の命名規則に合わせ、変更後にLintエラーがないか確認してください。

このように、Windsurfでは調査、方針整理、実装、確認を段階的に進めやすい点が特徴です。

使い分けの判断基準

DevinとWindsurfを使い分ける際は作業の難しさではなく、人間の判断がどの程度必要かを見ると整理しやすくなります。

Devinを使いやすいのは、次の条件に当てはまる作業です。

  • ゴールが明確である
  • 作業範囲を限定できる
  • 完了条件を書ける
  • 検証方法を指定できる
  • プルリクエストとしてレビューできる
  • 途中の判断が比較的少ない

一方、Windsurfを使いやすいのは、次の条件に当てはまる作業です。

  • 要件を詰めながら進めたい
  • 影響範囲を確認しながら変更したい
  • 設計判断が必要である
  • UIやユーザー体験を見ながら調整したい
  • 実装途中で方針が変わる可能性がある
  • 開発者が手元のIDEで確認しながら進めたい

単純に「定型作業はDevin、複雑な作業はWindsurf」と分けると実態とずれる場合があります。Devinでも一定の複雑さを持つ実装は扱えますし、Windsurfでも小さな修正や調査に活用できます。
より実務的には、「任せられる状態まで整理できたタスクはDevin」「整理しながら進めるタスクはWindsurf」と考えるのが適切と考えられます

WindsurfとDevinが協業するワークフロー

DevinとWindsurfは、別々に使い分けるだけではありません!WindsurfとDevinを協業させるワークフローも重要になっています。

Windsurf 2.0において、WindsurfからDevinの呼び出しが可能になりました。
Cognitionの公式ブログでは、Windsurf上でコードベースを理解し、計画を作成し、その内容をDevinに送って実装させる流れも言及されています。
この流れでは、まずWindsurfでコードベースを確認し、Cascadeと一緒に実装方針を整理します。その後、作業単位をDevinに渡し、Devinが実装、テスト、プルリクエスト作成を進めます。作成された差分はWindsurf上で確認し、必要に応じてローカルで微修正します。

Windsurfで状況を把握しDevinに渡せる粒度までタスクを整理することで、開発者は実装作業そのものだけでなく、作業の切り出し方やレビュー観点に集中しやすくなります。
大きな開発作業をいきなりDevinに任せるのではなく、まずWindsurfで影響範囲や実装方針を整理し、Devinに渡しやすい単位へ分解する。この進め方は、実務上のリスクを抑えながらAIエージェントを活用するうえで有効です。

このような使い方以外にも、1つのプロジェクトにおいて

  • 新規機能開発:Windsurf
  • アップデート対応:Devin

のように、内容によって人間の担当者を分けるように、AIツールも使い分けることができます。
Windsurfという1つのツールから、役割の異なるツールを簡単に呼び出せることで、作業効率もグンと上がりそうです。

まとめ

実際の開発現場でDevinとWindsurfを使い分けるうえで重要なのは、「AIに何をさせるか」よりも「人間がどこで判断するか」を明確にすることであると感じました。

Devinは、うまく使えれば実装作業の一部を切り出して任せられる存在になります。
ただし、任せるためにはタスクの粒度、完了条件、検証方法を人間が整理する必要があります。
技術者の役割は、単にプロンプトを書くことではなく、レビュー可能な単位に作業を分解し、期待する成果物を明確にすることに移っていきます。

一方Windsurfは、開発者の思考や判断に近い場所で支援するツールです。
コードを読みながら調査し、方針を相談し、小さく実装して確認する流れは、従来の開発作業に近い感覚で進められます。
そのため、要件が曖昧な段階や、既存コードの理解が必要な場面では、Windsurfの方が扱いやすいケースがあります。

これらを踏まえると、AIの進化により手を動かしてコードを書く時間の一部はAIに移せますが、その分、何を任せるか、どこまで任せるか、どの観点で確認するかを設計する力がより重要になると言えます。
またプログラミング工程のみでなく、CI/CDのような周辺ワークフローと全体でとらえることで、更にAI活用を加速することができます。こういった部分をどのように設計するかも技術者の腕の見せ所です!

AI×アプリケーション開発に関わるツールは他にも数多く存在します。
是非現状と照らし合わせ、「何をどこにどこまでどう組み込むか」を検討してみてください!

開発(DevOps)に関わる情報はこちらから

著者紹介

SB C&S株式会社
ICT事業本部 技術本部 技術統括部 第2技術部 2課
佐藤 梨花

勤怠管理システムの開発(使用言語:Java)に約8年間従事。
現在はエンジニア時の経験を活かしたDevOpsやDX推進のプリセールスとして業務に精励しています。