プロンプトからAIエージェントへ――「AIが自律的にプログラミング」とは?
2025年に入り「生成AI」を活用したエージェントの登場が相次いでいる。ITプログラミングの世界においても、従来のプロンプトを用いた「対話型のAIによるプログラミング支援」に加え、「AIが自律的にプログラミングを行う」AIエージェントが新たに登場してきている。これらは何が異なるのか。今回はその違いや特徴について解説する。
対話型コード生成を超えるAIエージェントの登場
生成AIを用いたさまざまなサービスの中で、最も実用化が進んでいる分野のひとつがプログラミング支援でしょう。その最先端に位置するのがAIエージェントによる自律的なプログラミングの実現です。
「ChatGPT」が登場して生成AIが身近な存在になったとき、その使い方は「プロンプトを入力して結果を得る」という対話的なものでした。そして当時の技術をベースに登場したのが、「GitHub Copilot」に代表される「コーディングアシスタント」です。
例えば「Visual Studio Code」のようなコードエディタでGitHub Copilotを用いると、これからつくりたい機能を自然言語でプログラムの中にコメントとして記述するか、あるいはチャット欄に書き込むと、生成AIがそのコードを自動的に生成してくれます。
このようにコードエディタ上で生成AIと対話的にコードを生成するのが、一般的なコーディングアシスタントです。現在では「Gemini Code Assist」「Amazon Q Developer」「JetBrains AI Assistant」「Oracle Code Assist」「Cursor」「Windsurf」など、さまざまなコーディングアシスタントが登場しています。
こうした対話的のコード生成よりもさらに進化し、いま大きな注目を集めているのが「AIエージェントによる開発ツール」です。その性能は新人プログラマー並みの能力を備えていると言われています。
(引用:Publickey「AIとのペアプロへまた一歩前進、GitHub Copilot登場。AIがコメントからコード生成、書きかけのコードを補完、コードを見てテストコード自動生成など」)
ピンチアウトで拡大
新人プログラマー並みの能力を備える「Devin」
AIエージェントによる代表的な開発ツール「Devin」( https://devin.ai/ )がどんな機能を備えているのかを紹介しましょう。
Devinは人間が課題を与えると、自律的にさまざまな情報、例えばプログラミングに必要となるライブラリのドキュメントをWebブラウザで参照して、インストール方法を調べて自動的にインストールを行い、関連するAPIがあればドキュメントを参照して、それに沿ったプログラミングを行います。
さらにプログラミングしたソフトウェアのテストを実行して、エラーが表示されれば、Devinは関連しそうなコードの場所に自動的にデバッグ用のPrint文を挿入して、出力された内容からエラーの原因を探る、あるいはそのエラーメッセージを参照した上で必要な対策やデバッグを行うなど、システム構築を自律的に実現する機能を備えています。
AIエージェントには正確な定義が決められているわけではありませんが、人間のプロンプトに単純に反応するのではなく、計画を立てて情報などを集め、複数の作業や処理を行い、適切なタイミングで人間に結果を提供するといった、より複雑で時間のかかる処理が実行可能なものを一般に指しています。
「Google Jules」「GitHub Copilot Coding Agent」「Amazon Q Developerエージェント」「JetBrains Junie」「Claude Code」「Atlassian Rovo」などをはじめ、市場には多数のAIエージェント型の開発ツールがすでに登場しています。2025年後半から26年にかけては、さらに生成AIベンダーや開発ツールベンダー、クラウドベンダーなどが積極的に製品やサービスを投入してくるでしょう。
(引用:Publickey「自律型AIソフトウェアエンジニアDevin登場。Readmeを読んで環境構築、Print文を使ってデバッグなど」)
ピンチアウトで拡大
AIエージェントを使いこなせる開発組織とは
今後、AIエージェントを活用できる開発組織とそうでない開発組織とでは、ソフトウェア開発における生産性に大きな開きが出てくるでしょう。またAIエージェントを活用することで、少人数のITエンジニア組織であっても大きな成果を得ることが可能になってくると思われます。
では、AIエージェントを活用できる開発組織とはどのようなものでしょうか。それは、大量の新人プログラマーを採用して活用できる組織と似ているはずです。
つまり、新人プログラマーあるいはAIエージェントが迅速に開発に取りかかれる開発環境を整えることができるということです。さらに整然と開発が進むように、開発プロセスを整えることも重要となります。しかも、これらが自動化/コード化されていることがベストです。
一方、人間の役割はAIエージェントに適切な指示を出すことと、成果物を検証して成果物のクオリティに責任を持つことに重点が置かれてくるはずです。そのための体制を整えることが重要でしょう。
その上で、目まぐるしいスピードで進化し、さまざまなベンダーから投入される、生成AIによる開発ツールを素早くキャッチアップして適切に使いこなすことがますます肝要となります。そのための情報収集や試行錯誤を許容するカルチャーのようなものが開発組織には欠かせなくなるでしょう。
※このコラムは不定期連載です。
※会社名および商標名は、それぞれの会社の商標あるいは登録商標です。

-
新野淳一/Junichi Niino
ブログメディア「Publickey」( http://www.publickey1.jp/ )運営者。IT系の雑誌編集者、オンラインメディア発行人を経て独立。新しいオンラインメディアの可能性を追求。
