こんにちは、ジェネラティブエージェンツの西見です。
「完全自律型AIエンジニア」という触れ込みと、その印象的なティザー動画で一躍有名になったDevinが、2024年12月10日にGAしました。
それからしばらく経ったこともあって、X上でもチラホラと日本企業におけるDevin採用報告が聞こえてくるようになり、「こんなタスクには使えた😆」「簡単なタスクにハマり続けて使えない、金もったいない😭」といったポストがよく見られるようになりました。
正直なところ、月500ドルは高いなぁ・・・*1なんて思っていたのですが、弊社も多分に漏れず猫の手も借りたい状況なのもあって、2025年1月22日からDevin(猫の手)を採用してみました。それからちょうど1ヶ月が経ったので、弊社の開発状況にどんな変化があったのかを振り返って、レポートしてみたいと思います。
GitHubアクティビティの分析
振り返りにあたっては、GitHubのorgができた2024年6月1日から、Devinを採用して1ヶ月経った2025年2月22日までのアクティビティを集計してみました*2。集計対象は自社開発のものに限り、受託開発のものは含めていません。
図1に示すのは、人間が行った作業を表す human と、AIが行った作業を表す ai のアクティビティを、以下の3つの観点で月別集計し、それぞれ積み上げグラフにプロットしたものです。
- プルリクエストした回数(Number of PRs by User Type)
- プルリクエストがマージされた回数(Number of Merged PRs by User Type)
- イシューを登録した回数(Number of Issues by User Type)
参考情報として、最下部にorgに関与していた人数の月別集計結果も追加しています。
2024年7月は頑張りすぎていたのか、人間の頑張りが外れ値になっていますが、Devinが参画した1月から全てのグラフで ai の関与が大きくなっていることが分かります。
プルリクエストの推移 (1, 2)
orgができてから、それなりに ai はプルリクエストを送っていたようですが、実際のところ2024年9月まではあまりマージされなかったようです。2024年10月あたりから ai によるプルリクエストの総量が増え、それに伴って少しずつマージされた数も増えていることが分かりますが、基本的には human が開発の主力になっています。
Devinが参画した2025年1月もそこまで ai の関与は増えていないですが、2025年2月はプルリクエストの数もマージされた数も急上昇しています。プルリクエストが処理された数だけで言えば、妙に頑張っていた2024年7月に届くような数になっています。
イシューの推移(3)
そもそも関係人数が少ないのもあってイシューの単位が大きくなりがちであり、月別のイシュー登録数は少ない傾向にあります。その一方で2025年1月から human による登録数も ai による登録数も上昇しており、これはできるだけ細かいタスクを ai に振っていこうという組織的な意思決定が影響しています。
プルリクエストの質的な分析
プルリクエストの内容をカテゴリ分けすると、大体以下に分類されることが分かりました。これはどのリポジトリでもこんな感じに収斂するのではないかなと思います。
- ライブラリ依存関係の更新(dependency update)
- ドキュメント作成・更新(docs)
- 新機能追加(feature)
- バグ修正(bugfix)
- リファクタリング・内部的改善(refactor / chore)
- UI/UXデザイン変更(ui / design)
- 大きなアーキテクチャ変更(major changes / architecture)
1. ライブラリ依存関係の更新(dependency update)
外部パッケージやライブラリのバージョンを最新に保つため、パッケージ管理ファイル(例: requirements.txt、package.jsonなど)を更新する作業です。
大体がdependabotによるプルリクエストだったようですが、Dockerイメージに関する変更のみ人間が行うことが多かったようです。Dockerイメージの動作確認をAIに担当させることが難しいため、人間が担当していたものだと予測されます。
AIに最大限仕事を任せていくには、AI自身が自律的にテストを行いやすいアーキテクチャを選択していくことが重要だと思われます。
2. ドキュメント作成・更新(docs)
システムの利用方法、変更履歴、リリースノート、ガイドラインなど、開発および運用に必要な情報を文章化して整理・更新する作業です。
Devinに新しいニュースの定期的な探索を任せているのと、会社Webサイトの更新はDevin以前にもAIエージェントに任せていたのもあり、比較的この類いの更新はAI中心で行われているようです。ちなみに現在のWeb更新は大体Devinがやっていますが、とても便利です。Web更新の作業なんてメンバーに依頼したら死ぬほど嫌がられると思うのですが、Devinにだったら気軽にお願いできるので、これだけでもDevinを採用した価値があるなと考えています。メンバーに雑用をお願いできなくて、結局全ての雑用が自分に回ってくる全経営者にオススメしたいです。
一方で、人間によるドキュメント更新は環境構築やデプロイについての内容に集中しているようです。インフラ周りは、完全に人間が試行錯誤する領域になっているようでした。
3. 新機能追加(feature)
ユーザーやシステムの要求に応じ、新たな機能やサービス、連携機能などを実装する作業です。
AIはkintone連携、microCMS連携、CLIサポートなど、具体的かつ小さめのプルリクエストを上げ続ける一方で、人間はTerraformの整備といったInfrastructure as Codeや、テナント機能、課金機能といった大きめのプルリクエストを中心に上げる傾向があったようです。
AIによるプルリクエストは必ず取り込まれる、ということはなく、何となくこれってどう実装したら良いかな?ぐらいのノリでプルリクエストを上げてもらって、それを土台に詳細実装について話し合う、といったことも行われていたようです。人間でこれをやったらケンカになりそうですが、雑にお願いできるのはAIだからこその利点だと言えそうです。
4. バグ修正(bugfix)
システムの不具合、エラー、予期しない動作を修正する作業です。
AIによるバグ修正は比較的少数のようでした。不具合を再現するデータや手順を詳細に伝えればAIでも作業が可能だとは思うのですが、再現データを作る時点でそのまま手元で修正してしまった方が早い可能性があり、あまりAIに任せる気にならないのが実状だと思われます。
というわけで、バグ修正は基本的に人間主体の活動でした。
5. リファクタリング・内部的改善(refactor / chore)
コードの整理、構造の改善、不要な冗長性の削除、内部的な設定の統一など、保守性や可読性、パフォーマンス向上を目的とした内部改善作業です。
こちらも基本的には人間主体の活動で、AIによるプルリクエストは少数でした。人間の活動でも、コードの改善を主目的としたプルリクエストはあまりなく、インフラレベルの改善が主になっているようでした。これはそもそもコードレベルのリファクタリングはプルリクエスト時の相互レビューで行われるため、わざわざコードのリファクタリングを作業として分割して行う必要がないことが要因と考えられます。
6. UI/UXデザイン変更(ui / design)
ユーザーインターフェースの見た目や操作性を向上させるため、レイアウト、アニメーション、カラー、フォントなど、視覚的・操作的側面の調整を行う作業です。
こちらも基本的に人間主体の活動でした。AIを活用するとしてもCursor ComposorやWindsurf Cascadeを利用して、手元で確認しながら行う形になるかと思います。Devinにも画像を渡して、それを参考に開発を進めてもらう機能はありますが、作業の信頼性は低く、Devinに依頼しても、依頼にかけた時間が徒労に終わる可能性があるからだと思われます。作業完了時にスクリーンショットを撮影してプルリクエストに添付してくれるような機能があれば、ちょっとしたUI変更について依頼できる可能性はあります。
7. 大きなアーキテクチャ変更(major changes / architecture)
システム全体の設計やインフラ構成、デプロイ方法など、基本的な構造や運用方法を大幅に変更する作業です。
こちらも人間主体の活動だと思いきや、自動テスト可能な領域についてはAIが担当することもあったようです。ただ自動テストの難しいインフラ系の領域や、新しいサービスとの連携でリスクが読みづらい領域については人間が担当していました。
イシューの質的な分析
2024年12月までは一般的なイシューが発行され続けてきていましたが、2025年1月にDevinを採用してからは、Devin向けの開発内容解説がイシューとして登録されるようになりました。2025年1月からAI由来のイシューが見られるようになったのが、特徴的ですね。その他、社内で新しい試みがスタートした影響も相まって、2025年1月からのイシュー発行の総量が増えています。
これはDevinを使う上でのテクニックにはなりますが、Devinにはイシューを読み書きする能力があるので、ある程度まとまった情報を投げる際にはイシューを活用すると、GitHubにDevinへの依頼内容も集まる形になるので、人間側も情報を把握しやすくなります。
まとめ
Devin導入後の1ヶ月間で、AIは依存関係更新、定型的なドキュメント更新、小規模な機能追加といった自律的検証が可能な細かいタスクにおいて成果を出すことができました。一方、インフラ関連や大規模な設計変更、複雑なバグ修正、UI変更など、AI自身が自律的に検証できない領域については人間が主に担当していました。
マネジメントの観点では、AI自身が自律的に検証できるアーキテクチャをどのように設計できるかが、今後さらに多くのタスクをAIに任せる鍵となりそうです。ソフトウェア環境を仮想環境で立ち上げることができさえすれば、Computer Useなどを利用して操作フローを自己検証することも可能そうです。
例えばNext.js + FastAPIの構成だとフロントエンドとバックエンドの両方を立ち上げる場合に負荷が大きそうですが、人間によるメンテナンスでは作業負荷の大きいモックデータの整備にはLLMによる合成データを使うようにして、フロントエンドとバックエンドを個別に立ち上げられるようにするといった工夫をすることで、AIによる自律的検証の幅を拡げていくことが有効ではないかと考えています。
以上を踏まえて、総じて重要なのは、AIをいかにマネジメントするかだと思う一方で、より開発力を上げていくためには、自社ドメインの開発力を底上げするAIエージェントを自社開発していく方向性も考えられます。
ソフトウェアの受託開発で食ってる会社が生き残るには、良いAIエージェントを作るか、AIエージェントのマネジメント技法を卓越させるかの2択になると思われ。
— 西見 公宏 | Generative Agents (@mah_lab) 2025年2月22日
幸い、Clineのようなソフトウェア開発を代行してくれるAIエージェントもOSSとして公開されているので、このようなコードベースのコードリーディングを通じて「ソフトウェアアーキテクチャ」としてのAIエージェントを深く理解することが、一般的なプログラマのキャリアとしても重要になって来るのではないかと感じています。
また、エビデンスベースで効果的なアーキテクチャを探求するためには論文読みも重要だと考えており、プログラマ向けにAI系論文の読み方を紹介するイベントの開催を3月末あたりを目標にAIDBさんと企画中です。近日中に公開できればと思いますので、ご期待ください!
Devinのリファラルリンク
ここまで読んでくださってありがとうございます。もしここまで読んでDevinに興味を持たれた場合は、下記のリンクよりユーザー登録を頂けると100ACU(作業時間1,500分相当)のボーナスが得られますので、ぜひご活用ください。私も100ACUいただけるので、嬉しいです!
現場からは以上です。