Skip to main content

エージェント型 AI を Enterprise のソフトウェア開発ライフサイクルに統合する

エージェントを使って Enterprise の生産性をどのように向上させることができるかを説明します。

GitHub での AI エージェントについて

Enterprise の開発者は、AI をペア プログラミング ツールとして使うことに慣れている場合があります。 このモデルでは、開発者は同期的に動作する AI アシスタントを使用し、プロジェクトの開発フェーズ中にコードの提案を受け取ります。

AI エージェントは同僚のプログラマーのような役割を果たします。 エージェントは次のことができます。

  • テストの実行やバックログの問題の修正などの非同期タスクを実行し、人間が介入する必要性を減らします。
  • リリース後のアイデア提供や最適化など、開発フェーズを超えてワークフローを支援します。

エージェントと共同作業すると、従業員は高レベルの計画といった他の優先度の高い作業に取り組む時間を増やすことができ、開発者以外の役割のユーザーは AI を活用して自然言語プロンプトの機能をいっそう高めることができます。

GitHub Copilot のエージェント型 AI 機能は GitHub の凝集性の高いプラットフォームに統合されて、さまざまなサード パーティ製ツールを採用する場合より、いっそう合理化されたユーザー エクスペリエンスや、簡素化されたライセンスとガバナンスの制御を提供します。

シナリオ例

以下では、あなたは傘専門の小売店である Mona's のエンジニアリング マネージャーであるとします。 あなたのチームは、AI を搭載したウィジェットを会社のオンライン ストアに追加する作業を担当しています。 そのウィジェットは、ユーザーの場所とその地域の天気の傾向などの要因に基づいて調整されたレコメンデーションを作成して、顧客が適切な傘を選ぶのを助けます。

厳しい期限に間に合わせるため、あなたはチームの開発者と開発者以外の両方について、プロセスの各ステージの期間を短縮しようと考えています。 また、新しい機能がロールアウトされた後は、チームがメンテナンス タスクに忙殺されないようにすることも望んでいます。

メモ

GitHub の AI 搭載プラットフォームは継続的に拡張されています。 この記事で説明する機能の一部は、まだ パブリック プレビュー 段階で既定では Enterprise で有効にできない場合があります。 各機能のリソースについては、「エージェント型 AI の使用を開始する」セクションをご覧ください。

1.Copilot Chat を使用して計画する

  1. 計画を始めるため、製品マネージャーは Copilot Chat (https://github.com/copilot) を使って作業します。

    Copilot に高レベルの質問をして、新機能に必要な開発作業を把握します。 Copilot がプロジェクトに関する重要なコンテキストにアクセスできるようにするため、モックアップ ファイルをアップロードして、コードベースが格納されているリポジトリにリンクします。

  2. PM は、Copilot を使って必要なタスクの概要を得たら、作業の各部分に関する issue の作成を Copilot に依頼します。

    Copilot のイマーシブ ビューで issue のドラフトが作成されたら、PM は issue を手直ししてリポジトリに発行できます。

    PM は、一部の issue を非必須またはメンテナンスとしてマークします。 これらは、Copilot コーディング エージェント に対するよい候補になる可能性があります。

    イマーシブ モードの Copilot Chat のスクリーンショット。 Copilot は、優先順位を付けられた一連の issue の作成を続けるかどうかをユーザーに確認します。

2.GitHub Models とエージェント モードを使用して作成する

  1. PM は結果を開発者と共有し、モデルのコストと有効性に基づいて、調整された傘のレコメンデーションを提供する最適な AI モデルを見つけることから始めるよう開発者に依頼します。

  2. 開発者は、ジョブに適したいくつかの AI モデルとそれぞれの長所と短所を推奨するよう、Copilot Chat に求めます。 役に立つコンテキストを提供するため、開発者は GitHub Docs の記事「タスクに適した AI モデルの選択」の情報を検討するよう Copilot に指示します。

  3. 候補リストから 1 つのモデルを選ぶため、開発者は GitHub Models のプレイグラウンドを使って、モデル間で同じプロンプトからの結果を比較します。 時間を節約するため、モデルごとに個別に API キーを設定する必要がないよう、単一のプラットフォームでモデルをテストします。

    2 つのモデルを併置してプロンプトを送信するためのウィンドウを含む GitHub Models のプレイグラウンドのスクリーンショット。

  4. モデルが決まったら、開発者は VS Code でコードを開きます。

  5. 開発者は、新しいウィジェットのコードを書き始めます。 作業を迅速に進めるため、Copilot Chat の "Ask" モードと "Edit" モードを使って、構文の質問を行い、高レベルの提案を得ます。

    ヒント

    開発者は最適な方法で AI を使用しますが、そのエクスペリエンスは organization で制御できます。 たとえば、次のようなことができます。

    • コンプライアンス要件を満たし、コストを管理するため、開発者が開発作業に使用できるモデルを制御します
    • Copilot Chat の範囲から特定のファイルを除外します
    • 他のユーザーのメリットのため、GitHub Models でテストされた有効なプロンプトを保存します
  6. 開発者は、コードを記述したら、エージェント モードに切り替え、コードを複数の異なる関数にリファクタリングして読みやすくするよう、Copilot に指示します。

    エージェント モードの Copilot は、より自律的に動作して、複数のファイルを更新し、開発者の認可を得て、依存関係のインストールやテストの実行といったアクションのためのコマンドを実行することができます。

    VS Code での Copilot Chat ペインのスクリーンショット。 Copilot は、リンティング コマンドを実行するアクセス許可をユーザーに求めています。

    ヒント

    カスタム指示ファイルをリポジトリに追加して、より一貫性のあるエクスペリエンスを作成できます。 たとえば、このファイルは、エージェント モードで確立された名前付け規則を使用し、organization の標準に従ってコードのビルド、テスト、リントを行うための正しいコマンドを実行するのに役立ちます。

  7. 開発者はエージェントの作業の相違を確認し、保持するコードを選びます。

3.MCP サーバーを使用してテストする

  1. コードが完成したら、開発者はブラウザー内の自動テスト サービスである Playwright を使って、サイトのローカル ビルドでテストを実行する必要があります。

    • リポジトリ管理者が Playwright 用の Model Context Protocol (MCP) サーバーを追加すると、Copilot エージェントに Playwright と統合するための定義済みのインターフェイスが提供されます。
    • 開発者は、.feature ファイル内のテスト シナリオの概要を示すよう Copilot に頼んでから、ブラウザーでテストを実行するよう Copilot に指示します。
    • エージェント モードの Copilot は、ブラウザーを開いて UI 内の異なる要素をクリックし、そのアクションを承認するよう開発者に求めます。 開発者がブラウザーでテストを監視すると、Copilot は失敗したテストを示して、コードの修正を提案します。
  2. 開発者は、テストに満足したら、GitHub で作業の pull request を開くようエージェント モードに指示します。

    ヒント

    GitHub MCP サーバーが有効になっていると、Copilot はコマンドを実行し、既に指定されているタイトルと説明を使って VS Code から直接 pull request を開くことができます。

4. Copilot コード レビュー

を使用してレビューする

  1. リポジトリの所有者は、リポジトリでの Copilot による自動コード レビューを構成してあります。 Copilot は pull request に関する初期レビューを行って、バグと潜在的なパフォーマンスの問題を明らかにし、pull request が人間のレビュー担当者の手に渡る前に開発者がそれを修正できるようにします。
  2. 開発者の同僚が pull request をレビューして承認します。 作業はマージできる状態になります。

5.Copilot コーディング エージェント を使用して最適化する

  1. リリースの後、製品マネージャーは顧客からのフィードバックを収集し、さらに信頼性の高い気象データ用 API に切り替えて、ウィジェットの提案を改善する機会を特定します。 製品マネージャーはこの変更を実装するための issue を作成し、GitHub で直接 Copilot にそれを割り当てます

  2. Copilot コーディング エージェント はバックグラウンドで動作して pull request を開きます。製品マネージャーはそれをレビュー準備完了とマークします。

    Copilot コーディング エージェント によって作成された pull request のスクリーンショット。

  3. 開発者が Copilot の pull request をレビューしてフィードバックを残すと、Copilot がそれを組み込みます。 最後に、開発者は pull request をマージします。

    ヒント

    Copilot コーディング エージェント には既定のガードレールがあります。 たとえば、Copilot は自分で pull request をマージすることはできません。 ユーザーは、リポジトリ ルールセットを使って、ターゲット ブランチに対する追加の保護を定義できます。

  4. 開発者は、後で別の機能の作業中に、AI ウィジェットのコードに小さなバグがあることに気付きます。 コンテキストの切り替えを避けるため、開発者は Copilot に対して VS Code から直接 pull request を開くよう指示します。

    @github Create a PR for the widget function to correctly validate that the user's age is a positive integer.

  5. Copilot はバックグラウンドで動作して GitHub で pull request を開き、別の開発者がレビューできるようにします。

6.Copilot Autofix を使用してセキュリティ保護する

  1. 管理者はリポジトリで code scanning を有効にしており、code scanning のアラートでコードに潜在的な脆弱性があることが示されます。

  2. セキュリティ マネージャーは、脆弱性の修正を自動的に提案するよう Copilot Autofix に要求します。開発者はそれをレビューして承認します。

    GitHub.com でのコード スキャンのアラートのスクリーンショット。 [Generate fix] というラベルのボタンがオレンジ色の枠線で囲まれています。

エージェント型 AI の使用を開始する

Copilot にサインアップする

この記事で説明されている機能を使い始めるには、次の表のリンクをお使いください。

エージェント型 AI 機能をワークストリームに効果的に統合するには、効果的なトレーニング、ガバナンス、カルチャの転換に投資する必要があります。 大規模なロールアウトの前に、複数の部署を対象とするコーホートを使ってエージェントの機能を試し、フィードバックを収集することをお勧めします。

メモ

これらの機能の一部では、Premium リクエストが使われます。 「Premium リクエストについて」を参照してください。

機能詳細
Copilot Chat のイマーシブ ビューGitHub で GitHub Copilot に質問をする
Copilot Chat エージェント モードVS Code でエージェント モードを使用する
コンテンツの除外GitHub Copilot からのコンテンツの除外
MCP サーバー (パブリック プレビュー)モデル コンテキスト プロトコル (MCP) を使用した Copilot Chat の拡張
GitHub Models プレイグラウンド (パブリック プレビュー)Prototyping with AI models
カスタム指示GitHub Copilot のリポジトリ カスタム命令を追加する
Copilot コード レビューCopilot を使って自動コード レビューを構成する
Copilot コーディング エージェント (パブリック プレビュー)Organization 内で Copilot コーディング エージェント を効果的に使う
Copilot Autofixコード スキャンの既定セットアップの構成