Comment utiliser Windsurf avec Fabapp AI
Connecter Windsurf à votre compte
Windsurf a son propre fichier de configuration MCP, et le panneau de plugins de l'éditeur vous l'ouvre. Le bloc est le même :
{ "mcpServers": { "fabapp": { "command": "npx", "args": ["-y", "@fabappai/cli", "mcp"] } } }
Après l'enregistrement, Windsurf propose de recharger les serveurs. Les outils Fabapp apparaissent alors dans la liste du panneau.
Ce qu'il vous faut
Node 20 ou plus récent, un compte Fabapp au forfait Builder ou au-dessus, et une seule connexion :
npx @fabappai/cli login
La credential va dans le trousseau du système. Elle n'est jamais affichée et se révoque depuis un seul endroit, dans le panneau.
Le cycle
npx @fabappai/cli create "Ma boutique"
npx @fabappai/cli dev
dev assemble l'app sur votre machine avec le modèle même dont la plateforme se sert pour publier, installe les
dépendances et lance le serveur local. Avec ça qui tourne, demandez ce que vous feriez à la main : lire la
définition, créer les entités, écrire les écrans. Ensuite :
npx @fabappai/cli deploy
Il envoie ce que vous avez changé puis publie, dans cet ordre. Publier avant d'envoyer publierait ce qui est sur le serveur, et votre travail resterait derrière.
Ce qui change avec Windsurf
Le flux de Windsurf est une longue conversation avec l'agent, et ce qui rend le plus ici, c'est de laisser dev
tourner à côté. Chaque changement d'écran se voit dans le navigateur ; chaque changement de schema fait que l'app
locale voit les nouveaux champs sans que vous publiiez quoi que ce soit.
Une note sur les crédits qui prête souvent à confusion : les crédits Windsurf et les crédits Fabapp sont deux choses différentes. Windsurf facture l'usage de son modèle. Fabapp facture des crédits de création quand l'IA de la plateforme génère du code, ce qui n'est pas le cas quand c'est votre assistant qui écrit. Par le chemin MCP, ce que votre compte Fabapp consomme, c'est le forfait, pas du crédit de génération.
Quoi lui demander
« Lis la documentation de la plateforme avant d'écrire le schema. » Les types de champ sont une liste fermée et tout autre est refusé ; les règles d'accès sont la seule chose entre les données d'une app et le public.
« Lis la définition actuelle avant de la changer. » Sans le schema en main, un id de modèle erroné répond 404 et un champ inventé répond 422.
« Le schema d'abord, les écrans ensuite. » Le SDK est généré à partir du modèle de données.