Aller au contenu

Mettre en ligne une API NestJS depuis votre agent IA, par MCP

Votre agent IA a écrit votre API NestJS. Branché à while par MCP, il la met aussi en ligne, en HTTPS, sans toucher à son code.

Par Aloïs Oddon, cofondateur de Nextmap. Faits relevés le 2 novembre 2026.

Voir en Markdown

Prérequis

  • Une API NestJS, avec ses scripts build et start:prod.
  • Un agent IA qui travaille dans un terminal : Claude Code, Codex, Cursor ou Gemini CLI.

Étape 1 : Donnez ces instructions à votre agent

Ouvrez votre agent dans le dossier de votre API, et collez-lui ces instructions :

Instructions
Connecte-toi à while avec mon compte (while.sh/agents), puis mets mon appli en ligne.

Sans compte, votre agent met votre API en ligne à l’essai, en une demande. Pour la garder, ouvrez le lien qu’il vous donne et créez votre compte.

Avec votre compte, votre agent ajoute lui-même le serveur MCP de while. S’il vous le demande, relancez-le. Au premier appel à while, une page s’ouvre dans votre navigateur. Dans Claude Code, si elle ne s’ouvre pas, tapez /mcp, choisissez while, puis Authenticate. Sur cette page, choisissez votre appli, ou « Une nouvelle appli », puis cliquez sur Autoriser.

Étape 2 : Ouvrez votre API

Votre agent vous donne l’adresse de votre API, par exemple https://mon-api.while.cloud, en HTTPS.

Ce que fait votre agent

Il écrit while.yaml à la racine de votre API :

while.yaml
apiVersion: while/v1
project: mon-api
services:
  - name: web
    port: 3000
    health:
      path: /

Le port 3000 est celui d’un projet NestJS neuf, dont main.ts lit d’abord la variable PORT2. Votre API est construite, ses tests tournent, puis elle démarre avec start:prod. Le projet de départ officiel est passé tel quel, en une minute1.

Ajouter une base de données

Vous, à votre agent : Ajoute une base PostgreSQL.

Votre agent déclare la base dans while.yaml, et son adresse arrive à votre code dans DATABASE_URL. Elle est sauvegardée chaque jour, et revient à un instant précis si besoin.

Aller plus vite avec un cache

Vous, à votre agent : Ajoute un cache pour les pages les plus lues.

Votre agent déclare un cache compatible Redis, branché à votre code avec son mot de passe.

Réserver votre API à vos collègues

Vous, à votre agent : Réserve l’API aux personnes de l’entreprise.

Votre agent ajoute deux lignes au service :

while.yaml
    access: internal
    email_domains: [acme.fr]

Une fois votre Google Workspace ou Microsoft 365 relié à while, avec l’offre Pro, vos collègues l’ouvrent avec leur compte habituel, et votre code reçoit leur nom et leur adresse électronique, sans page de connexion à écrire.

Passer sur votre propre domaine

Vous, à votre agent : Mets l’API sur api.acme.fr.

Votre agent déclare le domaine, vous ajoutez les enregistrements DNS qu’il vous donne, et le certificat HTTPS suit.

Voir une nouvelle version avant de la mettre en ligne

Vous, à votre agent : Montre-moi la nouvelle version avant de la mettre en ligne.

Votre agent ouvre une prévisualisation, à son adresse à elle, avec ses propres données. Vous la regardez, puis il la met en production.

Revenir à la version d’avant

Vous, à votre agent : Reviens à la version d’avant.

Dans les 30 minutes qui suivent une mise en ligne, la version d’avant revient en une seconde. Ensuite, en quelques secondes. Une fois la version d’avant revenue, votre agent lit ce qui a cassé dans les journaux de while, corrige et remet en ligne.

Dans la doc : Bases PostgreSQL, Cache Valkey (Redis), Tâches planifiées, Accès interne, Domaine personnalisé et Prévisualisations.

Prochaines étapes

Sources

  1. NestJS, le projet de départ en TypeScript et ses scripts (build, start:prod), consulté le 2 novembre 2026
  2. NestJS, les premiers pas (main.ts, le port 3000 ou la variable PORT), consulté le 2 novembre 2026

Questions

Faut-il changer les scripts de mon projet ?

Non, le script start:prod de NestJS est lancé en priorité, comme dans le projet de départ.

Mes tests tournent-ils ?

Oui, à chaque mise en ligne, et une version qui échoue ne remplace pas celle d’avant.

Prisma ou TypeORM ?

Les deux lisent l’adresse de la base dans DATABASE_URL.

Branchez votre agent, il s’occupe du reste

À coller dans votre agent

Lis while.sh/agents, puis mets mon appli en ligne avec while.

Copier les instructions

Pas besoin de compte pour essayer : votre appli est en ligne tout de suite. Pour la garder, connectez-vous.

Un projet pour votre entreprise ? Parlez à l’équipe : hello@while.sh