En production, il n’y a pas de navigateur ni de elding login. Tu fournis deux variables d’environnement :
ELDING_REFRESH_TOKEN=eld_rt_... # clé de service longue durée
ELDING_SET_ID=... # identifiant du set à charger
Le SDK les lit automatiquement. Ton code applicatif ne change pas entre le développement et la production.
Méthode 1 — CLI (recommandée)
Lance une seule fois, en local, dans ton dossier projet :
elding login # si tu n'es pas encore connecté
elding init # si le projet n'est pas encore lié à un set
elding deploy
Le CLI demande un nom optionnel pour la clé, la crée, puis affiche les deux variables :
✓ Key "Mon App Production" created.
→ Visible in your dashboard under API Keys tab.
Add these 2 environment variables to your host (Vercel, etc.):
ELDING_REFRESH_TOKEN=eld_rt_...
ELDING_SET_ID=...
⚠ The key is shown only once. Copy it now.
Colle-les dans les réglages d’environnement de ton hébergeur (Vercel → Settings → Environment Variables, Railway, Render, etc.).
Ne lance pas elding deploy dans un pipeline CI aux logs publics. Le token y serait exposé.
Lance-le toujours en local et copie les valeurs manuellement dans ton hébergeur.
Méthode 2 — Dashboard
- Ouvre elding.app et va dans Clés API.
- Clique sur Nouvelle clé, donne-lui un nom et copie le
ELDING_REFRESH_TOKEN affiché une seule fois.
- Ouvre le set cible. Son ID est dans l’URL :
elding.app/vault?set=<ELDING_SET_ID>.
- Ajoute les deux variables dans les réglages d’environnement de ton hébergeur.
Que faire avec ces variables
Une fois ajoutées à ton hébergeur, le SDK fonctionne sans aucune modification du code :
// Développement : lit les secrets depuis le proxy local
// Production : lit les secrets depuis le vault via ELDING_REFRESH_TOKEN + ELDING_SET_ID
// Même code, zéro changement.
import { configure, secret } from "@elding/sdk";
const openai = new OpenAI(await configure("OPENAI_KEY", "https://api.openai.com"));
const dbUrl = await secret("DATABASE_URL");
Révoquer une clé
Va dans Clés API dans le dashboard et clique sur Révoquer à côté de la clé. Le token est invalidé immédiatement, sans redéploiement ni modification de code.