Cloud Sessions
Les Cloud Sessions permettent d’exécuter la session dans l’environnement hébergé par GitHub plutôt que dans un processus Copilot CLI local. La tâche est réservée dans Mission Control et lecopilot-agent côté cloud s’y connecte pour poursuivre le traitement.
Les Remote Sessions habituelles exposent, depuis le Web/mobile GitHub, une session qui tourne en local. Si vous souhaitez que l’exécution elle-même ait lieu dans l’environnement hébergé par GitHub, utilisez Cloud Sessions.
Prérequis
- L’utilisateur dispose des droits Copilot permettant d’utiliser le Cloud Agent
- Vous pouvez vous authentifier via un token GitHub ou un utilisateur Copilot CLI déjà connecté
- Si possible, associez des informations de dépôt GitHub
- La politique d’organisation autorise l’exécution dans le cloud et la consultation à distance
Utilisation de base
PassezCloudSessionOptions à la clé cloud de SessionConfig. Les informations de dépôt sont optionnelles côté type SDK, mais recommandées afin de fournir du contexte à Mission Control et à l’agent cloud.
Quand envoyer le premier prompt
Une Cloud Session s’initialise en deux étapes.session.create renvoie dès que la tâche est réservée dans Mission Control, mais il faut un court délai avant que le copilot-agent cloud se connecte et émette session.start.
Pour vous assurer que le premier prompt est bien remis, abonnez-vous aux événements en premier, puis envoyez-le uniquement après avoir constaté un session.start du copilot-agent (via producer).
session.start.
Différences avec les Remote Sessions
| Fonctionnalité | Lieu d’exécution | Usage principal |
|---|---|---|
| Remote Sessions | Local ou votre propre serveur | Visualiser/piloter une session existante depuis le Web/mobile |
| Cloud Sessions | Environnement hébergé par GitHub | Traiter sans faire tourner Copilot CLI sur le poste utilisateur ou votre serveur |
Points d’attention
- Les Cloud Sessions sont soumises aux permissions et aux politiques d’organisation
- Avec
streaming: true, vous recevez des événements temps réel commeassistant.message_delta - La gestion des requêtes de permission est identique à celle d’une session standard. Depuis la Facade Laravel, le comportement par défaut est deny-all ; utilisez au besoin
PermissionHandler::approveSafety()
Voir aussi
Pour les dernières informations, consultez le dépôt GitHub.