Variables et secrets
Vos clés et vos mots de passe sont gardés chiffrés par while, jamais dans le code ni dans while.yaml. Ils arrivent à votre appli à la mise en ligne suivante.
Mis à jour le 9 novembre 2026.
Vous, à votre agent : Ajoute la variable LOG_LEVEL=info.
Ce que votre agent écrit
Votre agent l’écrit dans while.yaml, à la racine de votre appli :
services:
- name: web
port: 3000
env:
MODE: demo
STRIPE_KEY: { secret: paiement/cle }
CLE_API: { secret: api/cle, file: true }
Quand vous en servir
Servez-vous-en pour toute clé et tout mot de passe : jamais dans while.yaml, jamais dans le code.
Comment ça marche
Vos clés et vos mots de passe se posent avec set_env, ou se référencent dans while.yaml, et while les garde chiffrés dans son coffre. Ils arrivent à l’appli à la mise en ligne suivante, en variable ou en fichier dans /run/secrets/<NOM>.
Ce qu’il faut savoir
Un secret posé en fichier (file: true) n’arrive jamais en variable. L’appli le lit dans /run/secrets/<NOM> (en Node avec readFile, en Python avec Path.read_text, en Go avec os.ReadFile), en retirant le saut de ligne final s’il y en a un. Les variables que while pose lui-même, comme DATABASE_URL ou les adresses des connexions, gardent leur nom.
Dans un projet lié à une connexion fédérée dont la case « valider chaque mise en production » est cochée, un secret n’arrive jamais en variable d’environnement : set_env et la mise en production le refusent, et il se pose en fichier. Dans ce projet, les variables sont toutes en clair, et montrées à la personne qui valide.
Les outils MCP de votre agent
Votre agent s’en occupe avec l’outil set_env.