> ## Documentation Index
> Fetch the complete documentation index at: https://kawax.biz/llms.txt
> Use this file to discover all available pages before exploring further.

# Laravel Cloud - GitHub Copilot SDK pour Laravel

> Guide d'exécution de Laravel Copilot SDK sur Laravel Cloud : installation du Copilot CLI, variables d'environnement et modes stdio/TCP.

## Utilisation avec Laravel Cloud

## Installation

Dans **Settings > Deployments > Build commands**, ajoutez ce qui suit puis déployez.

```shell theme={null}
export PATH="$PATH:/var/www/.local/bin"
curl -fsSL https://gh.io/copilot-install | bash
/var/www/.local/bin/copilot --version
```

Le chemin du CLI étant `/var/www/.local/bin/copilot`, définissez dans **Custom environment variables** :

```dotenv theme={null}
COPILOT_CLI_PATH=/var/www/.local/bin/copilot
COPILOT_GITHUB_TOKEN=
```

Pour `COPILOT_GITHUB_TOKEN`, vous pouvez utiliser toute méthode d'authentification prise en charge par le Copilot CLI (`GH_TOKEN`, `GITHUB_TOKEN`, etc.).

Pour le mode stdio par défaut, cette installation suffit.

## Exploitation en mode TCP

Dans **App cluster > Background processes > Custom worker**, définissez `/var/www/.local/bin/copilot --headless --port 12345`.
Il s'exécute en continu comme processus d'arrière-plan et redémarre automatiquement lors des déploiements.

Le numéro de port est libre.

Dans **Custom environment variables**, définissez `COPILOT_URL`.

```dotenv theme={null}
COPILOT_URL=tcp://127.0.0.1:12345
# COPILOT_CLI_PATH n'est pas nécessaire en mode TCP. Si les deux sont définies, le mode TCP prend le dessus.
```

Comme le processus tourne en permanence, la consommation mémoire est élevée ; un serveur avec au moins 2 Gio de RAM peut être nécessaire.
En utilisation dans une requête HTTP, l'exécution risque de dépasser 60 secondes et d'échouer ; utilisez plutôt une file d'attente.

Sur Laravel Cloud, le mode TCP est peu praticable ; le mode stdio est recommandé.

Le Worker cluster (plan supérieur) est également possible, utile pour éviter les problèmes mémoire de l'App cluster.

## Points d'attention

* Les serveurs bon marché manquent facilement de mémoire.
* Le timeout HTTP par défaut est de 20 secondes. En cas d'échecs fréquents, portez-le jusqu'à 60 secondes.

<Info>
  Pour les dernières informations, consultez le [dépôt GitHub](https://github.com/invokable/laravel-copilot-sdk).
</Info>


## Related topics

- [GitHub Copilot SDK pour Laravel](/fr/packages/laravel-copilot-sdk/index.md)
- [GitHub Actions - GitHub Copilot SDK pour Laravel](/fr/packages/laravel-copilot-sdk/github-actions.md)
- [Démarrer - GitHub Copilot SDK pour Laravel](/fr/packages/laravel-copilot-sdk/getting-started.md)
- [Tests - GitHub Copilot SDK pour Laravel](/fr/packages/laravel-copilot-sdk/fake.md)
- [Authentification - GitHub Copilot SDK pour Laravel](/fr/packages/laravel-copilot-sdk/auth.md)
