GitLab Duo Agent 活用術 第2弾: もうチャットすら不要?「Developerフロー」が実現する理想的なAI駆動開発

はじめに

対象とする読者

本記事は、以下のような方を対象としています。

  • 前回の記事を読み、GitLab Duo Agent の基本的な使い方を把握している方
  • 「チャットで指示を出すのは少し面倒、もっと自動化したい」と感じている方
  • イシュー管理とコード修正を厳密に紐づける仕組みを考えている方

前提知識として、Git、Terraform、AWS Lambdaを使用したアプリ開発の流れの基礎知識があることを想定しています。

記事のゴール

この記事は、前回の「対話型(Duo Chat経由)」とは異なる、「イシュー起点(Developerフロー)」による自動修正の流れをマスターすることを目指したいと思います。

この記事を書こうと思ったきっかけ

前回の記事では、GitLabのAI機能である Duo Chat の Agentic mode を利用して、対話形式でコード修正~マージリクエスト作成をやってみました。
その後、Duo Agent の「Developerフロー」という機能を利用しても同じようなことができると分かったので、今回はこれについて書いていきたいと思います。


Developerフローによるアプリ開発

【前提】サンプルアプリとプロジェクト(リポジトリ)について

まず前提として、今回サンプルのアプリとして使用するものは前回の記事と同様となります。
詳細については、前回の記事の「【前提】サンプルアプリとプロジェクト(リポジトリ)について」を参照してください。

では、Developerフローの機能を利用して実際にアプリを修正してみましょう。

Step 1:まずはイシューを作成

アプリのプロジェクト(リポジトリ)で新規イシューを作成します。その際、イシューの詳細には、以下のようにこのイシューでの変更点の詳細を記入します。

- reacji に "raised_hands" を追加する。
- 投稿文を "あなたは「{text}」と言っていました。" に変更する。

GitLab のようなソースコード管理ツールでは、アプリケーションへの変更はイシューで紐づけて管理するのが一般的です。
そのため、前回のようにイシューがない状態でいきなりコード修正から始めるのは、開発プロセスとしてはあまり好ましくなく、今回のようにまずイシューを作成しておく方が適切でしょう。

Step 2:「Generate MR with Duo」を押して待つだけ

イシューを作成すると、イシュー画面の右上に「Generate MR with Duo」というボタンが表示されると思いますので、それをクリックします。

ボタンに一瞬スピナーアイコンが出ますが、その後は特に動きはありません。しかし、バックグラウンドでは処理が動いています。
左側メニューの Project > Sessions で状況を確認することができます。

実行中のセッションをクリックすると処理の詳細が確認できます。
どういった処理をしているか確認してみることにします。

(1) まずは調査

ファイル一覧を取得したり、コード内を検索したりなど、様々な処理が動いているようです。

(2) 調査結果のまとめ

しばらく見ていると、イシューのコンテキスト分析の結果が表示されました。
今回の変更に関する要件の整理や、現時点でのコード状態、このプロジェクトの今までの変更履歴などがまとめられています。

(3) 変更計画のまとめ

それに続いて、具体的なタスク内容や推奨事項、ゴール分析もまとめられています。

(4) 変更タスクを実行して結果表示

変更計画に基づき、実際のタスクが開始され、しばらくすると変更内容と次ステップに関する案内が表示されました。

(5) マージリクエストを作成

あとは下部の方にある「To create a merge request for workloads/xxxxxxxxxxxx, visit:
remote: https://~」のリンクにアクセスすると、マージリクエスト作成画面に遷移するので、必要に応じて詳細などを記入してマージリクエストを作成します。

前回の記事のやり方とは違い、今回のやり方だとマージリクエストの詳細には何も記入されないため、レビュアーとしては変更点が分かり辛そうです。ただし、先に作成したイシューへのリンクがタイトル内にあるため、変更点に関してはリンク先のイシュー自体を見ればある程度分かりますし、場合によっては先ほどのセッションの詳細ログを参照すれば、何をどうしたかが明確に残っていますので、そのリンクを貼っておくというルールにしても良いと思います。

Step 3:コードの再修正が必要な場合はAIへフィードバック

今回の修正は、Developerフローが現在のコード状態や過去の変更履歴を隅々まで確認してくれたおかげか、一発で期待するコードに修正されました。
ただし毎回期待する通りになるとも限らないので、その場合は前回のやり方と同様にマージリクエスト画面などで Duo Chat の Agentic mode を通じて対話的にコード修正を依頼すれば良いと思います。

以降のレビューやマージ、動作確認などは前回のやり方と同様でOKです。


まとめ

前回の記事では「AIエージェントとの対話」の楽しさと可能性をお伝えしましたが、今回の「Developerフロー」は、より規律ある自動化であると感じました。

学んだことの整理

  • 「イシュー」が最適な指示書になる: チャットで都度説明しなくても、イシューに書いた背景や要件をAIが深く読み取ってくれ、開発プロセスの正攻法に即した最適な指示書となる。
  • 「Session」ログによるプロセスの可視化: AIが「どのファイルを探し、何を検討したか」がすべて記録される。前回のチャット形式よりも、AIの「思考プロセス」を事後検証しやすく、信頼性が高い。
  • コンテキスト理解の深化: 前回の対話型では漏れがちだった「プロジェクト全体の過去の変更履歴」まで考慮した修正案が出るため、よりプロジェクトの文脈に沿ったコードが生成される。
  • ハイブリッドな使い分けがベスト: 大きな修正は「Developerフロー」で一気に、微調整は前回の「Agentic mode」で対話的に。この2つを組み合わせることで、AI駆動開発の効率は最大化する。

イシューを立ててボタンを押す。たったそれだけで、AIがプロジェクトの歴史を読み解き、最適な修正を提案してくれる。そんな「AIが開発プロセスに溶け込む」体験を、ぜひ皆さんのリポジトリでも試してみてください。

新規CTA