メモ
GitHub Copilot は AI を使用します。 間違いがないか確認してください。 「アプリケーション カード: GitHub Copilot エージェント」を参照してください。
はじめに
Slack の Copilot cloud agent 統合により、Slack ワークスペースから Copilot cloud agent を操作でき、Slack の GitHub アプリに含まれています。 Slack メッセージ、スレッド、または直接メッセージ内で、会話のコンテキストを使用して、 cloud agent セッションを開始して、調査、計画、コードの作成、問題の作成、および要求のプルを行うことができます。 また、モデルの選択、モデル コンテキスト プロトコル (MCP) サーバーの接続、複数のリポジトリ間での作業、 Copilot Memoryの利用を行うこともできます。 チームの協調的な決定は、コードに結び付け、ディスカッションがどこで行われるか、実装がどこにあるかのギャップを埋めます。
その他の Copilot 統合については、 Copilot 連携 を参照してください。
セキュリティに関する考慮事項
Slack で @mentionGitHub する前に、 Copilot cloud agent がスレッド全体を要求のコンテキストとしてキャプチャし、ディスカッションに基づいてソリューションを理解し、実装することを検討してください。 このコンテキストは、エージェントによって生成される成果物に格納されます。 コンテキストを制限する場合は、代わりに Slack の GitHub アプリに直接メッセージを送信できます。
コラボレーション セッション、アクセス許可、コード チャネル、サンドボックスを理解する
Copilotが使用する ID は、ダイレクト メッセージと共有コンテキストのどちらを操作するかによって異なります。
-
ダイレクト メッセージで Copilot を使用すると、プル要求や問題の作成などのアクションを実行したり、質問に回答したりできます。 リンクされた GitHub 個人アカウントのアクセス許可を使用して、これらのアクションを実行します。
-
グループ スレッドやチャネルなどの共有コンテキストで Copilot を使用すると、 Copilot は個人アカウントではなくアプリ ID の下に、プル要求などの成果物を作成します。
メモ
共有コンテキストで Copilot によって作成されたプル リクエストでは、アプリの ID が使用されます。 リポジトリルールセットを使用する場合、これらのプル要求は個人に起因しないため、リポジトリに少なくとも 1 つの承認が既に必要である限り、マージの前にもう 1 つの承認が必要です。 この機能は、既定では有効になっています。 「ルールセットで使用できるルール」を参照してください。
セッションに対して選択されたすべてのリポジトリへの 書き込み アクセス権を持つユーザーのみが、Copilot をトリガーしてそのセッションを変更または操作できますが、会話参加者なら誰でも入力できます。 ワークスペースのゲスト メンバーおよびリポジトリへの外部コラボレーターは、Slack で Copilot とのセッションを開始または誘導することはできません。
Copilot は、会話内のすべてのメッセージを使用して作業を通知します。 スレッド全体が成果物の意思決定コンテキストになります。
Slack コード
タスクの実行を Copilot に依頼すると、 Copilot cloud agent は Slack Code と呼ばれる専用のコード チャネルを作成します。 ここでは、必要に応じてチームメイトと一緒に、Copilot とタスクに共同で取り組むことができます。 コード チャネルが確立されたら、そのチャネルを介してのみセッションを誘導します。
Copilot は、コード チャネルを管理し、作業中のリポジトリ、ブランチ、Issue またはプル リクエストへのリンク、状態、モデルなど、セッションに関する詳細を表示します。 コード チャネルは、一度に 1 つのセッション (タスクごとに 1 つのチャネル) を対象としています。 セッションが完了すると、チャネルをアーカイブするかどうかを確認するメッセージが表示されます。 アーカイブ後、チャネルとその履歴は引き続き表示および検索可能であり、必要に応じてチャネルを再度開くことができます。
セキュリティで保護されたクラウド サンドボックス
Copilot cloud agent Slack からタスクの作業を開始すると、Copilotはセキュリティで保護されたクラウド サンドボックスで非同期的に作業を続け、準備ができたら結果を投稿します。 Slack からステアリングを維持したり、 GitHub、ターミナル、または任意のコード エディターでエージェントによって生成された成果物の作業を続行したりできます。
Prerequisites
- 有料のGitHub プランを通じてCopilotにアクセスできるCopilot アカウントが必要です。
- Slack アカウントを持ち、ワークスペースのメンバーである必要があります。
- Slack の GitHub 統合がインストールされている必要があります。 「GitHubと Slack の統合」を参照してください。
- 組織または企業(Copilot を含む)を通じて マネージド ユーザーを含む Enterprise を取得した場合、Copilot in the cloud ポリシーは既定で有効になりますが、所有者はそれをオフにできます。 Copilot では、Slack セッションは別の設定を必要としないクラウド サンドボックス内で実行されます。 「組織または企業のクラウド サンドボックスの管理」を参照してください。
GitHub アプリをGitHub アカウントに接続する
Slack で GitHub 統合を初めて使用すると、アプリによって GitHub アカウントに接続するように求められます。 プロンプトが表示されたら、既定のリポジトリを設定します。
既定のリポジトリは、プロンプトに応答するときに Copilot が使用するコンテキストを提供します。また、プロンプトでリポジトリを指定しない限り、 Copilot cloud agent セッションによって作成された問題とプル要求が開かれます。 ダイレクト メッセージの既定のリポジトリを設定することはできません。そのため、ダイレクト メッセージでは、プロンプトでリポジトリ名を指定します。
作業を開始するには:
- Slack で、GitHub アプリで直接メッセージを開くか、「
@GitHub」と入力してGitHub アプリをスレッドに@mentionします。 - プロンプトに従って GitHub アカウントに接続し、プロンプトが表示されたら、必要に応じて既定のリポジトリを設定します。
- 他に何ができるかを確認するには、スレッドで「
@GitHub help」と入力してアプリを@mentionします。
Slack で GitHub アプリを使用する
GitHub アプリのダイレクト メッセージを送信したり、スレッドで@mentionしたりできます。 ボットはメッセージに応答し、要求に基づいてタスクを実行します。
Copilot cloud agentをトリガーして動作させるには、すべての既定のリポジトリ、またはプロンプトで指定されたすべてのリポジトリへの書き込みアクセス権が必要です。 関連するリポジトリへの書き込みアクセス権がない場合でも、Slack スレッドで意見を提供することで Copilot をガイドできます。これは、Copilot cloud agent がプルリクエストで変更を行う際にコンテキストとして使用されます。
ユーザーは、Copilot cloud agentアクセス権を持つ任意のリポジトリでwriteを呼び出すことができます。 エンタープライズ所有のリポジトリの場合、管理者は Slack GitHub アプリ をインストールして構成し、Slack アプリがアクセスできるリポジトリを指定する必要があります。
GitHub Appsの構成の詳細については、AUTOTITLE を参照してください。
-
Slack で、GitHub アプリで直接メッセージを開くか、「
@GitHub」と入力してアプリをスレッドに@mentionします。 -
プロンプトを入力し、送信します。 要求の一部として、リポジトリとブランチを自然言語で記述できます。 例えば次が挙げられます。
@GitHub Add "Hello World" to the README in octo-org/octo-repo on the develop branch -
Copilot cloud agent は cloud agent セッションを開始し、 cloud agent が完了したら、予定されている変更の概要と、指定したリポジトリに作成された成果物へのリンクを返します。
GitHub通知に返信し、タスクで@GitHubをメンションすることもできます。 たとえば、失敗したワークフローを調査するか、プルリクエストの変更を説明するように依頼します。 会話とリンクされた GitHub リソースは、作業のコンテキストを提供します。
複数のリポジトリ間での作業
セッションは、同じ組織または個人アカウントが所有する最大 11 個のリポジトリで動作できます。 選択したすべてのリポジトリへの書き込みアクセス権が必要です。 タスクを開始するときにリポジトリを選択するか、プロンプト内でその名前を挙げます。 例えば次が挙げられます。
@GitHub Update the API in octo-org/service and its client in octo-org/web. Open a pull request in each repository and link the changes.
作業が開始される前に、リポジトリ セットを確認してください。 チャネルの既定値を変更すると、実行中のセッションのリポジトリではなく、新しい会話に影響します。
Copilot に関する課題を作成する
Slack から直接Copilot問題を作成するようにGitHubに依頼し、会話を実用的なタスクに変えることができます。 自然言語で必要な内容を記述するだけで、問題 Copilot 自動的に作成されます。
子と親のリレーションシップでは、1 つの問題または複数の問題を一度に作成できます。
アプリを @mention すると、作成した問題のコンテキストとして完全なスレッド履歴が使用されます。 コンテキストにフォーカスを合わせるには、新しいスレッドを開始するか、直接メッセージを送信することを検討してください。
-
Slack で、ターゲット リポジトリを指定して、1 つ以上の問題を作成するように Copilot に依頼します。
1 つの問題を作成するには:
@GitHub In octo-org/octo-repo, create a feature request to add fuzzy matching to search.複数の問題を一度に作成するには:
@GitHub In octo-org/octo-repo, open separate issues for adding fuzzy matching to search, paginating the results list, and caching search queries.子と親のリレーションシップに関する問題を作成するには:
@GitHub In octo-org/octo-repo, create an epic to redesign search, with child issues for fuzzy matching, pagination, and query caching.メモ
Copilotを使用して問題を作成できるのは、問題を作成するアクセス許可が既にあるリポジトリのみです。 この機能によって、アクセスが変更されたり、リポジトリのアクセス許可がバイパスされたりすることはありません。
-
Copilot は、各問題へのリンクを含む問題と返信を作成します。 各問題にはタイトルと説明が含まれており、プロンプトに基づいて Copilot ラベル、担当者、問題の種類などのメタデータを追加することもできます。
チャネルの既定のリポジトリを設定する
Slack チャネルごとに 1 つ以上の既定のリポジトリを設定できます。 既定のリポジトリはプロンプトに Copilot コンテキストを提供するため、作業を依頼するたびにリポジトリを指定する必要はありません。 選択できるリポジトリは、チャネルの既定の所有者によって異なります。 Copilotを使用してダイレクト メッセージの既定のリポジトリを設定することはできません。
チャネルに既定のリポジトリがない場合、Copilotそのチャネルでの最初のセッションで使用するリポジトリを既定として設定します。
メモ
既定のリポジトリとその他のチャネル設定はチャネル全体で共有されるため、そのチャネルで Copilot を使用するすべてのユーザーに変更が適用されます。
- チャネル内で、
@GitHub settingsを実行します。 - 必要に応じて、所有者を選択 または 所有者を編集 を使用して、アカウントまたは組織を選択します。
- リポジトリを選択するには、リポジトリを選択、または既存の選択については リポジトリの編集 オプションを使用します。
- 変更を保存。 最初のリポジトリはプライマリ リポジトリとしてマークされます。
リポジトリまたはブランチを指定しない場合、 Copilot はチャネルの既定のリポジトリとその既定のブランチを使用します。 新しい会話でどのリポジトリを使用するかを尋ねるように、既定のリポジトリをクリアできます。 会話でリポジトリを指定しても、チャネルの既定値が変更されたり、チャネルがリポジトリ通知にサブスクライブされたりすることはありません。
モデルの選択
Slack で開始されたセッションで Copilot cloud agent が使用するモデルを選択できます。 現在の会話についてのみモデルを変更するには、Copilot にモデルを選ぶよう依頼してください。 これにより、チャネルの既定値を変更することなく、会話のモデル (コード チャネルを含む) が変更されます。
チャネルで新しい会話の既定のモデルを設定するには:
- チャネル内で
@github settingsを実行します。 - [モデルの編集] をクリックします。
- モデルを選択してから、変更を保存してください。
チャネルのモデル設定をクリアすると、新しい会話では標準の既定のモデルが使用されます。 モデルの選択は、可用性と組織のポリシーによって異なります。 モデルの詳細情報については、「AI モデルの比較」を参照してください。
MCP サーバーの使用
リポジトリ用に構成された MCP サーバーは、Copilot がそのリポジトリで作業するときに利用できるため、GitHub での Copilot cloud agent の場合と同じ方法で構成できます。 Slack で MCP サーバーを使用するには、Copilot が動作する既定のリポジトリのいずれかで構成します。
MCP サーバーを使用する場合は、次の点に注意してください。
- あなた自身の設定で構成した MCP サーバーは、あなたが開始したセッションにのみ使用されます。
- リポジトリ管理者が、サーバー、許可されたツール、および資格情報を構成します。
- サーバーを有効にする前に、ツールとデータ アクセスを確認します。
- リポジトリの MCP 構成が無効または大きすぎるためにセッションを開始できない場合は、リポジトリ管理者に構成の修正を依頼してから、もう一度やり直してください。
Copilot cloud agentでの MCP の動作については、モデル コンテキスト プロトコル (MCP) を参照してください。 シークレットや検証など、リポジトリの MCP サーバーを設定するには、 リポジトリの MCP サーバーを構成する を参照してください。
Copilot Memory の使用
メモ
Copilot Memory は現在 パブリック プレビュー 中であり、変更される可能性があります。
Copilot Memory は、リポジトリや設定に関する情報を記憶し、時間の経過とともにより効果的に動作できるようにします。 Copilot Memory は、個々の Copilot プランに対して既定で有効になっています。 エンタープライズ管理プランと組織管理プランの場合、管理者は最初にポリシーを有効にする必要があります。 Copilot Memoryが有効になっている場合、Copilotは開始したタスクに取り組む際の記憶を自動的に保存し、後の作業に適用します。
リポジトリのファクトは、学習したリポジトリにのみ適用され、個人的な好みは自分自身のやり取りにのみ適用されます。 設定で記憶を確認および削除できます。 詳細については、「GitHub Copilot Memory について」を参照してください。
詳細については、次を参照してください。
- GitHub.com および GitHub Mobile でのGitHub Copilot - Copilot cloud agent とそのサポート方法の詳細について説明します。