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년 7월 13일