Skip to main content

Cloud Sessions

Cloud Sessions は、ローカルの Copilot CLI プロセスではなく GitHub 側のホスト環境でセッションを実行する機能です。Mission Control 上でタスクが予約され、クラウド側の copilot-agent が接続して処理を進めます。 通常の Remote Sessions は「ローカルで動くセッションを GitHub Web/モバイルから見えるようにする」機能です。実行場所自体を GitHub ホスト環境にしたい場合は Cloud Sessions を使います。

前提条件

  • ユーザーが Cloud Agent を利用できる Copilot 権限を持っている
  • GitHub トークン、またはログイン済み Copilot CLI ユーザーで認証できる
  • 可能なら GitHub リポジトリ情報を関連付ける
  • 組織ポリシーでクラウド実行とリモート閲覧が許可されている

基本的な使い方

SessionConfigcloudCloudSessionOptions を指定します。リポジトリ情報は SDK 型としては任意ですが、Mission Control とクラウドエージェントに文脈を渡すため指定することを推奨します。
配列でも指定できます。

最初のプロンプトを送るタイミング

Cloud Session は 2 段階で初期化されます。session.create は Mission Control でタスクが予約された時点で戻りますが、クラウド側の copilot-agent が接続して session.start を発行するまで少し時間があります。 最初のプロンプトを確実に届けるには、先にイベントを購読し、producercopilot-agentsession.start を確認してから送信してください。
実アプリでは、キューや非同期処理側で session.start 確認後にプロンプトを送る構成にすると扱いやすいです。

Remote Sessions との違い

注意点

  • Cloud Sessions は権限と組織ポリシーの影響を受けます
  • streaming: true にすると assistant.message_delta などのリアルタイムイベントを受け取れます
  • 権限リクエストの扱いは通常セッションと同じです。Laravel 版の Facade 経由ではデフォルトで deny-all なので、必要に応じて PermissionHandler::approveSafety() などを指定してください

参考

最新情報は GitHub リポジトリ を参照してください。
最終更新日 2026年5月31日