Devin AI: 自律型AIエージェントによる開発プロセスの支援
はじめに
FastDOCTORでフロントエンドエンジニアとして働いている和田です。
普段はReactを使ったWebアプリケーション開発を担当していますが、最近は私の頼れるパートナーであるDevin AIと開発を進めています。Devin AIは、ソフトウェア開発の分野で注目を集めている最新のAIエージェントで、まるで優秀な同僚のように自分で考えて開発タスクをこなしてくれる心強い存在です。
この記事では、私の相棒Devin AIとの日々の仕事の進め方や、具体的な活用シーン、そして今後の可能性についてご紹介していきます。
Devinの代弁者としての活動シーン
※ここで紹介しているのは2025年6月25日時点のDevin2です。
Devin AIの主な特徴
- 言葉で指示するだけで: コードを書いたり、バグを直したり、テストしたり、デプロイしたり、はたまたピザの注文をしたりと、ソフトウェア開発にとらわれないAIエージェントです。
- 自律性: 「これお願い!」って言えば、自分で計画を立てて、開発タスクを淡々と実行してくれます。
- コード理解と生成: 独自のリポジトリ毎のwikiを元に、既存のコードと連携しながら、質の高いコードを作ってくれます。Claude Sonnet 3.7なのにwikiを持っていることである程度質の良いコードを書いてくれる印象。
- ブラウザ機能: 自分のブラウザを持っていて、ローカル環境でアプリを立ち上げて、UIテストなんかの動作確認も行ってくれます。Playwrightで動いているらしくカメラのモック方法をナレッジに入れておけばカメラも使えます。
- ナレッジ蓄積: レビューで指摘されたこととか、エラーをどう直したかとか、そういう情報(ナレッジ)をどんどん覚えて、AI自身がさらに賢くなっていきます。(ただしたまにナレッジ情報を無視して突き進む時があります)
- 既存ツールとの連携: JiraやSlackなど、普段使っている開発ツールとも連携できるので、面倒なタスクも自動で進めてくれます。
Devin AIの活用事例
Devin AIは、いろんな開発業務で活躍しています。実際にどのように使用しているか紹介したいと思います。
DevinWiki
Devinが自動的にリポジトリに対してWikiを作成し効率的に作業を行ってくれます。
DevinがClaudeSonnet3.7のわりには、良い提案とコードを書いてくれるのはたぶんここのおかげと勝手に思っていて、このやり方は今では色んなリポジトリで真似をさせてもらってます。
DevinWiki内でリポジトリに対して質問すると、そのwikiを元に柔軟に応えてくれます。
https://app.devin.ai/wiki から設定可能
コードレビューの効率化
wikiをもとにレビューしてくれているようで、通常のレビューAIよりも親身なコードレビューをしてくれます。
また弊社Devinの大きな特徴としては 「人間レビューの必要性」 を独自に判断し書き込んでもらっています。
軽量、テストだけ追加、など動作チェックだけでいいようなPRに対して”人間のレビューは必要ない”と判断してくれます。うちのチームではそれを元に本当に必要なさそうならレビュアーなしでマージを許可しています。
お願い例
https://github.com/xxx/pull/xxx レビューして
Jira連携によるタスク自動化
JiraチケットにDevin AIのラベルを付けるだけで、Devin AIがタスクを分析して「こうしませんか?」という提案してくれます。その提案をOKすると、Devin AIが自動でコーディングしてPRまで作成してくれるんです。
これの良いところはリポジトリを横断して提案をしてくれるところです。
例えばフロントとAPIが別リポジトリの場合、どちらの実装計画も同時に考えてもらえます。タスクが大きい場合はそれを元にJiraのAIに子タスクを作ってもらったりできるので、タスク着手の一手目にとりあえずDevinラベル付けておくみたいな事をしたりしています。
Jiraチケットに"devin"ラベルを付与するだけ
実際にDevinにやってもらった作業
- ”ユニットテストができていないファイルを調べ、1ファイル1タスクでタスク化できていること”という適当なタスクにdevinラベルを付与
- 子チケットは作成はしてくれなかったけど、提案までしてくれました。
- 一つ一つチケットコピペしながら作成し、devinラベルを貼る
- 作業開始ボタンをポチポチ。
- 大量のPRレビューが送られてくるので、Approveもしくは変更依頼
人間の行ったことは、ラベルの付与とコピペ作業とコードレビューでした。
独自のブラウザ機能
Devin AIは独自のブラウザ機能を使って、ローカル環境でアプリケーションを起動し、UIテストや動作確認ができます。
特に状態の最後の方の動作チェックや、その状態を作成したりしてくれるのがとても助かっています。
複雑な入力フォームを経由しないと再現できないようなテストシナリオでも、Devin AIは文句を言わずに、適切な文字列、例えば名前なら”foo”など適当な文字列ではなく”花子 太郎”などを入力して、必要な状態を自動で作り出してくれます。
リリース前の確認支援
リリース時のPR確認では、Devin AIが影響範囲の特定や確認項目の洗い出しに役立ちます。
リリースPRのコードからの依存関係を分析して、人間みたいにざっくりとした影響範囲ではなく、どの画面や機能に影響があるかを提示してくれるので、QAの作業も効率アップ!リリース品質も上がります。
お願い例
https://github.com/xxx/pull/xxx このPRはリリースPRなんだけど、リリース前にソースコードから確認すべきページと機能を洗い出して
Devin AIとCursor, ClaudeCodeとの比較
Devin AIはCursorなどと比較して、より自律的に動いてくれるのが大きな違いです。
Cursorが人の操作が必要な場面が多いのに対して、Devin AIは言葉で指示するだけでタスクを実行してくれるので、開発者が手を動かす手間を最小限に抑えられます。
ClaudeCodeと似ていますが、大きな違いとしてリポジトリ横断の考え方ができるAIエージェントです。そのためAPIが別のリポジトリにあったとしても横断的な設計を立案してくれます。
今現在のチケット運用方法
- Jira起票
- とりあえずdevin付けて意見を聞いてみる
- 簡単そうならDevinにそのまま依頼、少し複雑そうならCursor/ClaudeCodeで人間介入
今後の展望と課題
Devin AIは現在Claude Sonnet 3.7で動いているらしく、比較的小規模なタスクでは高い精度を発揮しています。
ただ大規模な計画書作成や複雑なシステム環境の立ち上げなど、もっと難しいタスクへの対応には、まだ課題があるように感じます。
将来的にClaude 4.0になった際には、Devin AIの活用がさらに広がるだろうと期待しています。
Devin AIは、日々の開発業務を効率化し、開発者の生産性を向上させる可能性を秘めています。今後のさらなる進化から目が離せません!
Discussion