Mode TCP
Par défaut, le SDK démarre un nouveau processus Copilot CLI à chaque requête (mode stdio). Avec le mode TCP, vous vous connectez à un serveur Copilot CLI démarré au préalable.Avantages du mode TCP
- Meilleures performances : pas d’overhead de démarrage de processus
- Partage de ressources : un même serveur CLI peut être partagé par plusieurs processus Laravel
- Gestion de processus : peut être géré comme un processus d’arrière-plan par Laravel Forge / Laravel Cloud
- Compatible déploiement : gère le redémarrage automatique lors des déploiements
Utilisation
1. Démarrer le serveur Copilot CLI
2. Définir la variable d’environnement
tcp://est optionnel.http://ou l’absence de schéma fonctionnent aussi.- Vous pouvez ne préciser que le port. Dans ce cas, l’hôte est automatiquement
127.0.0.1. - N’indiquer que l’hôte n’est possible que pour
127.0.0.1etlocalhost. Le port par défaut est alors12345.
Fichier de configuration
Vous pouvez configurer la connexion TCP dansconfig/copilot.php.
COPILOT_URL (cli_url) et COPILOT_CLI_PATH sont définis, le mode TCP est prioritaire.
Basculer de mode à l’exécution
Normalement, le fichier de configuration détermine automatiquement mode TCP ou stdio. Vous pouvez aussi basculer explicitement dans le code.Exploitation avec Laravel Forge / Laravel Cloud
Laravel Forge
-
Créer un Daemon : dans l’interface Forge, créez un Daemon.
-
Configurer les variables d’environnement : ajoutez
COPILOT_URLà.env. - Redémarrer lors du déploiement : redémarrez le Daemon dans le script de déploiement.
Laravel Cloud
Utilisez la fonctionnalité de worker de Laravel Cloud pour l’exécuter en arrière-plan. Voir Utilisation avec Laravel Cloud pour plus de détails.Points d’attention
Sécurité
Reconnexion
La version actuelle n’a pas de mécanisme de reconnexion automatique. En cas de coupure, une exception est levée.Vérifier le mode actuel
Vous pouvez inspecter dans le code le mode utilisé par le client.Dépannage
Impossible de se connecter
- Vérifiez que le serveur Copilot CLI est démarré
- Vérifiez le bon port
- Vérifiez le pare-feu
Erreurs de timeout
Augmentez la valeurtimeout dans config/copilot.php.
Pour les dernières informations, consultez le dépôt GitHub.