CLI Base44
Créez et gérez des applications Base44 (projets) avec l’outil CLI Base44.⚡ ACTION IMMÉDIATE REQUISE - À lire en premier
Cette compétence s’active à toute mention de « base44 » ou lorsqu’un dossierbase44/ existe. Ne lisez PAS les fichiers de documentation et ne recherchez PAS sur le web avant d’agir.
Votre première action DOIT être :
- Vérifier si
base44/config.jsoncexiste dans le répertoire courant - Si OUI (scénario projet existant) :
- Transférer à la compétence base44-sdk pour l’implémentation
- Cette compétence ne gère que les commandes CLI (login, deploy, entities push)
- Si NON, choisir entre deux chemins d’initialisation :
- Application provisionnée — l’application Base44 existe déjà car elle vient d’être provisionnée via un flux Stripe Projects / projects.dev, OU
BASE44_APP_ID(ouBASE44_PROJECTS_BASE44_APP_ID) est présent dans l’environnement ou un fichier.env/.env.local:- Exécutez
npx base44 scaffoldpour configurer les fichiers locaux de cette application existante - N’exécutez PAS
npx base44 create— cela crée une seconde application en double. Consultez scaffold.md.
- Exécutez
- Nouveau projet — aucune application n’existe encore et aucune n’a été provisionnée :
- Cette compétence (base44-cli) traite la requête ; guidez l’utilisateur avec
npx base44 create - N’activez PAS encore base44-sdk
- Cette compétence (base44-cli) traite la requête ; guidez l’utilisateur avec
- Application provisionnée — l’application Base44 existe déjà car elle vient d’être provisionnée via un flux Stripe Projects / projects.dev, OU
Critique : installation locale uniquement
N’appelez JAMAISbase44 directement. Le CLI est installé localement en tant que dépendance de développement et doit être invoqué via un gestionnaire de paquets :
npx base44 <command>(npm - recommandé)yarn base44 <command>(yarn)pnpm base44 <command>(pnpm)
base44 login
BON : npx base44 login
OBLIGATOIRE : vérification d’authentification au démarrage de session
CRITIQUE : au tout début de chaque session IA lorsque cette compétence est activée, vous DEVEZ :-
Vérifier le statut d’authentification en exécutant :
-
Si l’utilisateur est connecté (la commande réussit et affiche un e-mail) :
- Continuez avec la tâche demandée
-
Si l’utilisateur n’est PAS connecté (la commande échoue ou affiche une erreur) :
- ARRÊTEZ immédiatement
- N’effectuez AUCUNE opération CLI
- Demandez à l’utilisateur de se connecter manuellement en exécutant :
BASE44_ACCESS_TOKEN / BASE44_REFRESH_TOKEN qu’il injecte (les noms préfixés BASE44_PROJECTS_* sont normalisés automatiquement). Dans ce cas, npx base44 whoami réussit déjà et vous n’avez pas besoin d’un npx base44 login interactif.
Aperçu
Le CLI Base44 fournit des outils en ligne de commande pour l’authentification, la création de projets, la gestion des entités et le déploiement d’applications Base44. Il est agnostique du framework et fonctionne avec les frameworks front-end populaires comme Vite, Next.js et Create React App, Svelte, Vue, etc.Quand utiliser cette compétence par rapport à base44-sdk
Utilisez base44-cli quand :- Créer un NOUVEAU projet Base44 à partir de zéro
- Initialiser un projet dans un répertoire vide
- Configurer les fichiers locaux d’une application existante provisionnée en externe (par exemple, via un flux Stripe Projects / projects.dev) → utilisez
scaffold - Le répertoire ne contient pas
base44/config.jsonc - L’utilisateur mentionne : « créer un nouveau projet », « initialiser un projet », « configurer un projet », « démarrer une nouvelle application Base44 »
- Déployer, pousser des entités ou s’authentifier via le CLI
- Travailler avec des commandes CLI (
npx base44 ...)
- Construire des fonctionnalités dans un projet Base44 EXISTANT
base44/config.jsoncexiste déjà- Écrire du code JavaScript/TypeScript utilisant le SDK Base44
- Implémenter des fonctionnalités, composants ou features
- L’utilisateur mentionne : « implémenter », « construire une fonctionnalité », « ajouter une fonctionnalité », « écrire du code »
base44-cliest un prérequis debase44-sdkpour les nouveaux projets- Si l’utilisateur veut « créer une application » et qu’aucun projet Base44 n’existe, utilisez d’abord
base44-cli base44-sdksuppose qu’un projet Base44 est déjà initialisé
- SI (l’utilisateur mentionne « créer/construire une application » OU « faire un projet ») :
- SI (
base44/config.jsoncexiste) : → Utilisez base44-sdk (le projet existe, construisez des fonctionnalités) - SINON SI (l’application a été provisionnée en externe —
BASE44_APP_ID/BASE44_PROJECTS_BASE44_APP_IDdéfini, ou un flux Stripe Projects / projects.dev vient de s’exécuter) : → Utilisez base44-cli →npx base44 scaffold(configurez les fichiers locaux pour l’application existante ; ne faites PAScreate) - SINON :
→ Utilisez base44-cli →
npx base44 create(initialisation d’un nouveau projet nécessaire)
- SI (
Structure du projet
Un projet Base44 combine un projet front-end standard avec un dossier de configurationbase44/ :
base44/config.jsonc- Nom du projet, description, paramètres de build du sitebase44/entities/*.jsonc- Schémas de modèle de données (voir la section Schéma d’entité)base44/functions/*/entry.ts- Point d’entrée d’une fonction backendbase44/agents/*.jsonc- Configurations d’agents (facultatif)base44/.types/types.d.ts- Types TypeScript auto-générés pour les entités, fonctions et agents (créés parnpx base44 types generate)base44/connectors/*.jsonc- Configurations de connecteurs OAuth (facultatif)src/api/base44Client.js- Client SDK préconfiguré pour l’usage front-end
Installation
Installez le CLI Base44 comme dépendance de développement dans votre projet :base44. Installez toujours sans spécification de version pour obtenir la dernière.
Puis exécutez les commandes avec npx :
npx base44. Vous pouvez aussi utiliser yarn base44 ou pnpm base44 si vous préférez.
Option globale --app-id
Le CLI dispose d’une option globale --app-id <id> pour les commandes qui n’ont besoin que d’un contexte d’application, pas des fichiers de projet locaux.
Ordre de résolution : flag --app-id → variable d’environnement BASE44_APP_ID → base44/.app.jsonc local
C’est utile pour inspecter une application ou opérer dessus sans passer dans un répertoire de projet lié. Exemples courants :
--app-id pour les commandes à portée application comme exec et logs.
N’utilisez pas --app-id pour les commandes qui ont besoin de fichiers de projet locaux :
base44 createcrée une nouvelle application, elle rejette donc--app-idbase44 devs’exécute depuis un projet local lié, elle rejette donc--app-idbase44 deploynécessite toujours un répertoire de projet local car elle lit les ressources locales
Commandes disponibles
Authentification
Gestion de projet
Développement
Déploiement
Gestion des entités
Schéma d’entité (référence rapide)
Suivez TOUJOURS exactement cette structure lors de la création de fichiers d’entités : Nommage des fichiers :base44/entities/{kebab-case-name}.jsonc (par exemple, team-member.jsonc pour TeamMember)
Modèle de schéma :
string, number, integer, boolean, array, object, binary
Formats de chaîne : date, date-time, time, email, uri, hostname, ipv4, ipv6, uuid, file, regex, richtext
Pour les enums : ajoutez "enum": ["value1", "value2"] et éventuellement "default": "value1"
Noms d’entités : doivent être alphanumériques uniquement (motif : /^[a-zA-Z0-9]+$/)
Pour la documentation complète, consultez entities-create.md.
Gestion des fonctions
Gestion des agents
Les agents sont des assistants IA conversationnels qui peuvent interagir avec les utilisateurs, accéder aux entités de votre application et appeler des fonctions backend. Utilisez ces commandes pour gérer les configurations d’agents.
Note : les commandes d’agents effectuent une synchronisation complète — pousser remplace tous les agents distants par les locaux, et récupérer remplace tous les agents locaux par les distants.
Schéma d’agent (référence rapide)
Nommage des fichiers :base44/agents/{agent_name}.jsonc (par exemple, support_agent.jsonc)
Modèle de schéma :
- Les noms d’agents doivent correspondre au motif :
/^[a-z0-9_]+$/(alphanumérique en minuscules avec underscores, 1 à 100 caractères) - Valides :
support_agent,order_bot - Invalides :
Support-Agent,OrderBot
name, description, instructions
Champs facultatifs : tool_configs (par défaut []), whatsapp_greeting
Types de configs d’outils :
- Outils d’entité :
entity_name+allowed_operations(tableau parmi :read,create,update,delete) - Outils de fonction backend :
function_name+description
Gestion des connecteurs
Les connecteurs permettent à votre application de se connecter à des services externes (Google Calendar, Slack, Stripe, etc.). La plupart utilisent OAuth pour fournir aux fonctions backend des jetons d’accès leur permettant d’appeler des API externes. Stripe fait exception — il est provisionné automatiquement côté serveur sans flux OAuth dans le navigateur.
Note : les commandes de connecteurs effectuent une synchronisation complète — pousser remplace tous les connecteurs distants par les locaux (et déclenche OAuth pour les nouveaux connecteurs OAuth), et récupérer remplace tous les connecteurs locaux par les distants.
Schéma de connecteur (référence rapide)
Nommage des fichiers :base44/connectors/{type}.jsonc (par exemple, googlecalendar.jsonc, slack.jsonc)
Modèle de schéma :
type
Champs facultatifs : scopes (par défaut [])
Types de connecteurs disponibles : exécutez npx base44 connectors list-available pour voir tous les types d’intégration pris en charge.
Note : stripe est aussi un type de connecteur valide mais n’est pas renvoyé par list-available. Traitez-le comme un type pris en charge — il est provisionné automatiquement par Base44 sans flux OAuth dans le navigateur. Consultez connectors-create.md pour plus de détails.
Pour la documentation complète, consultez connectors-create.md.
Configuration d’authentification
Gérez les paramètres d’authentification de votre application (par exemple, connexion par nom d’utilisateur et mot de passe). La configuration d’authentification est stockée dansbase44/auth/ et synchronisée avec Base44 via auth push/auth pull.
Note : la config d’authentification est aussi déployée dans le cadre de
base44 deploy.
Gestion des secrets
Gérez les secrets du projet (variables d’environnement stockées de manière sécurisée dans Base44). Ces commandes sont masquées de la sortie--help mais sont pleinement fonctionnelles.
Exécution de scripts
Exécutez des scripts ponctuels sur votre application avec le SDK Base44 préauthentifié. Utilisez-la pour effectuer des opérations CRUD sur des entités (base44.entities.MyEntity.list/create/update/delete), appeler des fonctions backend (base44.functions.invoke("myFunction", args)), invoquer des agents, ou accéder à toute autre ressource exposée par le SDK — sans déployer de fonction complète. Utile pour les migrations de données, opérations en masse, débogage et workflows scriptés.
Génération de types
Sortie :
base44/.types/types.d.ts — augmente le module @base44/sdk avec des registres typés (EntityTypeRegistry, FunctionNameRegistry, AgentNameRegistry, ConnectorTypeRegistry).
Aucune authentification requise. S’exécute entièrement en local. Met automatiquement à jour tsconfig.json pour inclure les types générés.
Gestion du site
SPA uniquement : l’hébergement Base44 prend en charge les Single Page Applications avec un unique point d’entrée
index.html. Toutes les routes sont servies depuis index.html (routage côté client).
Démarrage rapide
-
Installez le CLI dans votre projet :
-
Authentifiez-vous auprès de Base44 :
-
Créez un nouveau projet (fournissez TOUJOURS un nom et le flag
--path) : -
Lancez le développement local :
-
Buildez et déployez tout :
npx base44 entities push- Pousser uniquement les entitésnpx base44 functions deploy- Déployer uniquement les fonctionsnpx base44 functions delete <name>- Supprimer une fonction déployéenpx base44 functions list- Lister toutes les fonctions déployéesnpx base44 functions pull- Récupérer les fonctions déployées vers des fichiers locauxnpx base44 agents push- Pousser uniquement les agentsnpx base44 connectors pull- Récupérer les connecteurs de Base44npx base44 connectors push- Pousser uniquement les connecteursnpx base44 auth pull- Récupérer la config d’authentification de Base44npx base44 auth push- Pousser uniquement la config d’authentificationnpx base44 site deploy -y- Déployer uniquement le site
Workflows courants
Créer un nouveau projet
⚠️ OBLIGATOIRE : avant d’exécuterbase44 create, vous DEVEZ lire create.md pour :
- Sélection de modèle - Choisir le bon modèle (
backend-and-clientvsbackend-only) - Workflow correct - Chaque modèle requiert des étapes de configuration différentes
- Pièges courants - Éviter les erreurs de création de dossier qui causent des échecs
Lier un projet existant
Lancer le développement local
base44 dev lance aussi votre front-end, vérifiez que base44/config.jsonc a bien site.serveCommand défini (par exemple, "serveCommand": "npm run dev"). Lorsque ce champ est présent, base44 dev lance le backend et le front-end ensemble.
Déployer tous les changements
Générer les types TypeScript
base44/.types/types.d.ts avec des registres typés pour le module @base44/sdk. Exécutez-la après avoir modifié entités, fonctions, agents ou connecteurs pour garder vos types synchronisés. Aucune authentification requise.
Déployer des ressources individuelles
Ouvrir le tableau de bord
Authentification
La plupart des commandes nécessitent une authentification. Si vous n’êtes pas connecté, le CLI vous invitera automatiquement à vous connecter. Votre session est stockée localement et persiste entre les sessions CLI.Dépannage
Cette page a été traduite à l’aide de l’IA. Pour les informations les plus précises et à jour, consultez la version anglaise.