Configuration
Chaque paramètre présenté ici est contrôlé par l'opérateur et lu depuis l'environnement au démarrage. Aucun n'est accessible via les entrées de l'appelant ou les sorties du modèle — cette séparation est un principe fondamental, pas un détail d'implémentation.
La configuration est validée au démarrage, avec blocage en cas d'erreur. Une fonctionnalité activée sans le stockage dont elle dépend ne passe pas silencieusement en mode dégradé : le serveur refuse de démarrer et indique la variable manquante. Un échec de démarrage signifie que cette protection fonctionne comme prévu.
Authentification#
| Variable | Obligatoire | Notes |
|---|---|---|
SQUAD_MCP_AUDIENCE | oui | L'audience attendue dans les jetons destinés au serveur de ressources. Aucune valeur par défaut — sans audience définie, un serveur accepterait des jetons émis pour n'importe quelle ressource. |
SQUAD_MCP_ALLOWED_ISSUERS | — | Liste des émetteurs autorisés, séparés par des virgules. |
SQUAD_MCP_ALLOWED_TENANTS | — | Liste des locataires autorisés, séparés par des virgules. |
SQUAD_MCP_ALLOWED_ORIGINS | — | Liste d'autorisation stricte. La valeur littérale * est rejetée au démarrage. |
Backend du modèle#
| Variable | Par défaut | Notes |
|---|---|---|
SQUAD_MCP_MODEL_ENDPOINT | — | Doit également apparaître dans la liste d'autorisation ci-dessous, sinon le démarrage échoue. |
SQUAD_MCP_ALLOWED_MODEL_ENDPOINTS | — | Les seuls points de terminaison que ce serveur est autorisé à appeler. Protection contre l'exfiltration. |
SQUAD_MCP_MODEL_DEPLOYMENT | — | Le nom du déploiement Azure OpenAI. |
SQUAD_MCP_MODEL_API_VERSION | 2024-10-21 | |
SQUAD_MCP_TENANT_CONCURRENCY | valeur intégrée | Nombre maximal d'exécutions simultanées par locataire. |
SQUAD_MCP_TENANT_COST_CEILING_USD | valeur intégrée | Plafond de dépenses par locataire. Définissez-le avant d'ouvrir l'accès à de vrais utilisateurs. |
SQUAD_MCP_SESSION_IDLE_MS | valeur intégrée | Éviction des sessions inactives. |
Le pipeline asynchrone#
| Variable | Par défaut | Notes |
|---|---|---|
SQUAD_MCP_REMOTE_PIPELINE_ENABLED | false | Désactivé par défaut. Par défaut, seuls les outils consultatifs sont exposés à distance. |
SQUAD_MCP_RUN_STATE_BACKEND | file | file (réplica unique) ou table (Azure Table, comparaison et échange CAS entre réplicas). |
SQUAD_MCP_RUN_STATE_DIR | — | Requis pour le backend file. |
SQUAD_MCP_STORAGE_ACCOUNT | — | Requis pour le backend table, les rendus, la mémoire et le stockage des contenus dépassant la limite. |
SQUAD_MCP_RUN_TABLE_NAME | squadruns | |
SQUAD_MCP_WORKER_ENABLED | false | Worker en arrière-plan pour les exécutions dépassant environ quatre minutes. Nécessite le backend table. |
SQUAD_MCP_RUN_ENCRYPTION_KEY_B64 | — | Clé encodée en Base64. Lorsqu'elle est définie, les artefacts de chaque étape, le verdict du conseil et les champs request/context de l'appelant sont chiffrés au repos en AES-256-GCM. |
SQUAD_MCP_ADVISORY_AUTOPILOT_ENABLED | false | Permet aux exécutions exclusivement consultatives de se poursuivre sans surveillance. Restreint le point de contrôle, sans jamais le supprimer pour les rôles à impact. |
SQUAD_MCP_ADVISORY_AUTOPILOT_ENABLED ne permet pas de contourner un point de contrôle. Il s'applique uniquement aux exécutions dont les rôles ne réalisent aucune action à impact. Une exécution faisant intervenir un exécuteur de backlog, un déployeur, un auteur IaC ou des diagnostics Azure reste suspendue dans l'attente d'un opérateur, quelle que soit la valeur de ce paramètre.
Mémoire du squad#
Le serveur écrit la même arborescence .copilot-tracking/squad/ que celle produite localement par le squad — notes de recherche, plans, verdicts, registre des exécutions. Une exécution distante laisse ainsi la même trace persistante qu'une exécution locale, et l'historique peut être relu automatiquement lors de l'exécution suivante, au lieu d'être ressaisi dans l'invite.
| Variable | Par défaut | Notes |
|---|---|---|
SQUAD_MCP_ENABLE_MEMORY | false | Paramètre d'activation principal des outils du service d'accès à la mémoire. |
SQUAD_MCP_MEMORY_BACKEND | table | table, file ou graph. |
SQUAD_MCP_MEMORY_TABLE_NAME | squadmemory | |
SQUAD_MCP_MEMORY_DIR | — | Requis pour le backend file. |
SQUAD_MCP_MEMORY_GRAPH_DRIVE_ID | — | Requis pour graph : la bibliothèque de documents SharePoint ou OneDrive. |
SQUAD_MCP_MEMORY_GRAPH_ROOT_PATH | — | Chemin du dossier dans cette bibliothèque. |
SQUAD_MCP_MEMORY_GRAPH_ENCRYPT | false | Chiffrement au niveau des champs avant l'envoi du contenu à Graph. |
SQUAD_MCP_MEMORY_AUTO_ENABLED | false | Écrit automatiquement la mémoire au fil de l'exécution, plutôt que lors d'un appel d'outil explicite. |
SQUAD_MCP_MEMORY_DEFAULT_PROJECT | default | Format kebab-case en minuscules ; il s'agit d'un segment de partition du stockage. |
SQUAD_MCP_ENABLE_ARTIFACTS | false | Conserve le registre du squad — team.md, routing.md, state.json et les journaux en ajout seul. Nécessite la mémoire. |
Plusieurs destinations à la fois#
SQUAD_MCP_MEMORY_TARGETS accepte un tableau JSON de destinations nommées, et SQUAD_MCP_MEMORY_DEFAULT_TARGET désigne celle à utiliser lorsque l'appelant n'en choisit aucune. Les noms des destinations sont au format kebab-case en minuscules, car l'appelant les utilise pour sélectionner une destination. Un même déploiement peut ainsi desservir, par exemple, une bibliothèque SharePoint d'ingénierie et une bibliothèque distincte destinée aux clients, sans que l'appelant puisse franchir la séparation entre les deux.
Stockage des contenus volumineux dans des blobs#
La taille des entités de table est limitée ; sans mécanisme de débordement, l'écriture d'un artefact volumineux échouerait. Avec SQUAD_MCP_MEMORY_OVERFLOW_ENABLED, tout contenu dépassant SQUAD_MCP_MEMORY_OVERFLOW_THRESHOLD_BYTES (32 Kio par défaut) est stocké dans SQUAD_MCP_MEMORY_OVERFLOW_CONTAINER, tandis qu'un pointeur est conservé dans l'entité.
Rendu déterministe#
| Variable | Par défaut | Notes |
|---|---|---|
SQUAD_MCP_ENABLE_RENDER_PPTX | false | Active squad_render_pptx. |
SQUAD_MCP_RENDER_PYTHON_PATH | — | Requis lorsque le rendu est activé — l'interpréteur utilisé pour python-pptx, intégré à l'image. |
SQUAD_MCP_RENDER_SCRIPTS_DIR | — | Requis lorsque le rendu est activé. |
SQUAD_MCP_RENDER_BLOB_CONTAINER | renders | |
SQUAD_MCP_RENDER_SAS_TTL_MINUTES | 60 | Durée de validité du SAS de délégation utilisateur. Le SAS n'est jamais consigné dans les journaux. |
SQUAD_MCP_RENDER_BRAND_TEMPLATE_PATH | — | Modèle .pptx facultatif aux couleurs de la marque. |
Outils métier#
| Variable | Par défaut | Notes |
|---|---|---|
SQUAD_MCP_ENABLE_BUSINESS_TOOLS | false | Active squad_business_plan et squad_backlog. Nécessite un point de terminaison de modèle. |
Cette liste présente les paramètres disponibles, et non la procédure de déploiement. Le raccordement précis des paramètres, les références Key Vault et les paramètres Bicep sont décrits dans host/RUNBOOK.md.