Base44 CLI
Base44-Apps (Projekte) mit dem Base44-CLI-Tool erstellen und verwalten.⚡ SOFORTIGE HANDLUNG ERFORDERLICH — Lies das zuerst
Dieser Skill aktiviert sich bei jeder Erwähnung von “base44” oder wenn einbase44/-Ordner existiert. Lies keine Dokumentationsdateien und suche nicht im Web, bevor du handelst.
Deine erste Aktion MUSS sein:
- Prüfe, ob
base44/config.jsoncim aktuellen Verzeichnis existiert - Wenn JA (bestehendes Projektszenario):
- Übergib an den base44-sdk-Skill zur Implementierung
- Dieser Skill behandelt nur CLI-Befehle (login, deploy, entities push)
- Wenn NEIN, entscheide zwischen zwei Initialisierungspfaden:
- Bereitgestellte App — die Base44-App existiert bereits, weil sie gerade über einen Stripe Projects / projects.dev-Flow bereitgestellt wurde, ODER
BASE44_APP_ID(oderBASE44_PROJECTS_BASE44_APP_ID) ist in der Umgebung oder in einer.env/.env.local-Datei vorhanden:- Führe
npx base44 scaffoldaus, um lokale Dateien für die bestehende App einzurichten - Führe NICHT
npx base44 createaus — das erzeugt eine zweite, doppelte App. Siehe scaffold.md.
- Führe
- Neues Projekt — es existiert noch keine App und es wurde keine bereitgestellt:
- Dieser Skill (base44-cli) übernimmt die Anfrage; führe den Nutzer durch
npx base44 create - Aktiviere base44-sdk noch NICHT
- Dieser Skill (base44-cli) übernimmt die Anfrage; führe den Nutzer durch
- Bereitgestellte App — die Base44-App existiert bereits, weil sie gerade über einen Stripe Projects / projects.dev-Flow bereitgestellt wurde, ODER
Kritisch: Nur lokale Installation
Rufebase44 NIEMALS direkt auf. Die CLI wird lokal als Dev-Abhängigkeit installiert und muss über einen Paketmanager aufgerufen werden:
npx base44 <command>(npm — empfohlen)yarn base44 <command>(yarn)pnpm base44 <command>(pnpm)
base44 login
RICHTIG: npx base44 login
VERPFLICHTEND: Authentifizierungsprüfung zu Sitzungsbeginn
KRITISCH: Ganz zu Beginn jeder KI-Sitzung, in der dieser Skill aktiviert wird, MUSST du:-
Authentifizierungsstatus prüfen durch:
-
Wenn der Nutzer eingeloggt ist (Befehl erfolgreich, zeigt eine E-Mail):
- Fahre mit der Aufgabe fort
-
Wenn der Nutzer NICHT eingeloggt ist (Befehl schlägt fehl oder zeigt einen Fehler):
- STOPPE sofort
- Fahre NICHT mit CLI-Operationen fort
- Fordere den Nutzer auf, sich manuell einzuloggen mit:
BASE44_ACCESS_TOKEN / BASE44_REFRESH_TOKEN, die injiziert werden (die BASE44_PROJECTS_*-präfixierten Namen werden automatisch normalisiert). In diesem Fall ist npx base44 whoami bereits erfolgreich und du brauchst kein interaktives npx base44 login.
Überblick
Die Base44-CLI bietet Kommandozeilen-Tools für Authentifizierung, Projekterstellung, Entitätenverwaltung und Deployment von Base44-Anwendungen. Sie ist Framework-agnostisch und funktioniert mit gängigen Frontend-Frameworks wie Vite, Next.js, Create React App, Svelte, Vue und mehr.Wann diesen Skill vs base44-sdk verwenden
Verwende base44-cli, wenn:- Du ein NEUES Base44-Projekt von Grund auf erstellst
- Du ein Projekt in einem leeren Verzeichnis initialisierst
- Du lokale Dateien für eine bestehende App einrichtest, die extern bereitgestellt wurde (z. B. über einen Stripe Projects / projects.dev-Flow) → verwende
scaffold - Im Verzeichnis
base44/config.jsoncfehlt - Der Nutzer erwähnt: “neues Projekt erstellen”, “Projekt initialisieren”, “Projekt einrichten”, “neue Base44-App starten”
- Du deployst, Entitäten pushst oder dich per CLI authentifizierst
- Du mit CLI-Befehlen arbeitest (
npx base44 ...)
- Du Funktionen in einem BESTEHENDEN Base44-Projekt baust
base44/config.jsoncbereits existiert- Du JavaScript/TypeScript-Code mit dem Base44-SDK schreibst
- Du Funktionalität, Komponenten oder Features implementierst
- Der Nutzer erwähnt: “implementieren”, “Feature bauen”, “Funktionalität hinzufügen”, “Code schreiben”
base44-cliist eine Voraussetzung fürbase44-sdkin neuen Projekten- Wenn der Nutzer “eine App erstellen” möchte und kein Base44-Projekt existiert, verwende zuerst
base44-cli base44-sdksetzt voraus, dass ein Base44-Projekt bereits initialisiert ist
- WENN (Nutzer erwähnt “App erstellen/bauen” ODER “Projekt machen”):
- WENN (
base44/config.jsoncexistiert): → Verwende base44-sdk (Projekt existiert, Features bauen) - SONST WENN (App wurde extern bereitgestellt —
BASE44_APP_ID/BASE44_PROJECTS_BASE44_APP_IDgesetzt oder ein Stripe Projects / projects.dev-Flow ist gerade gelaufen): → Verwende base44-cli →npx base44 scaffold(lokale Dateien für bestehende App einrichten; NICHTcreate) - SONST:
→ Verwende base44-cli →
npx base44 create(neue Projektinitialisierung nötig)
- WENN (
Projektstruktur
Ein Base44-Projekt kombiniert ein standardmäßiges Frontend-Projekt mit einembase44/-Konfigurationsordner:
base44/config.jsonc— Projektname, Beschreibung, Site-Build-Einstellungenbase44/entities/*.jsonc— Datenmodell-Schemas (siehe Abschnitt Entitätsschema)base44/functions/*/entry.ts— Einstiegspunkt der Backend-Funktionbase44/agents/*.jsonc— Agent-Konfigurationen (optional)base44/.types/types.d.ts— automatisch generierte TypeScript-Typen für Entitäten, Funktionen und Agenten (erstellt vonnpx base44 types generate)base44/connectors/*.jsonc— OAuth-Connector-Konfigurationen (optional)src/api/base44Client.js— vorkonfigurierter SDK-Client zur Frontend-Nutzung
| Property | Beschreibung | Standard |
|---|---|---|
name | Projektname (erforderlich) | - |
description | Projektbeschreibung | - |
entitiesDir | Verzeichnis für Entitäts-Schemas | "entities" |
functionsDir | Verzeichnis für Backend-Funktionen | "functions" |
agentsDir | Verzeichnis für Agent-Konfigurationen | "agents" |
connectorsDir | Verzeichnis für Connector-Konfigurationen | "connectors" |
site.installCommand | Befehl zur Installation der Abhängigkeiten | - |
site.buildCommand | Befehl zum Bauen des Projekts | - |
site.serveCommand | Befehl zum Ausführen des Dev-Servers | - |
site.outputDirectory | Build-Ausgabeverzeichnis für Deployment | - |
Installation
Installiere die Base44-CLI als Dev-Abhängigkeit in deinem Projekt:base44-Pakets an oder codiere sie fest. Installiere immer ohne Versionsspezifizierer, um die neueste Version zu erhalten.
Führe Befehle dann mit npx aus:
npx base44. Du kannst bei Bedarf auch yarn base44 oder pnpm base44 verwenden.
Globale Option --app-id
Die CLI hat eine globale Option --app-id <id> für Befehle, die nur einen App-Kontext, aber keine lokalen Projektdateien benötigen.
Auflösungsreihenfolge: --app-id-Flag → Umgebungsvariable BASE44_APP_ID → lokale base44/.app.jsonc
Das ist nützlich, wenn du eine App inspizieren oder darauf operieren möchtest, ohne in ein verknüpftes Projektverzeichnis zu wechseln. Häufige Beispiele:
--app-id für App-bezogene Befehle wie exec und logs.
Verwende --app-id nicht für Befehle, die lokale Projektdateien benötigen:
base44 createerstellt eine neue App und lehnt--app-idabbase44 devläuft aus einem verknüpften lokalen Projekt und lehnt--app-idabbase44 deploybenötigt weiterhin ein lokales Projektverzeichnis, da es lokale Ressourcen liest
Verfügbare Befehle
Authentifizierung
| Befehl | Beschreibung | Referenz |
|---|---|---|
base44 login | Bei Base44 mit dem Device-Code-Flow authentifizieren | auth-login.md |
base44 logout | Vom aktuellen Gerät abmelden | auth-logout.md |
base44 whoami | Aktuell authentifizierten Nutzer anzeigen | auth-whoami.md |
Projektmanagement
| Befehl | Beschreibung | Referenz |
|---|---|---|
base44 create | Ein neues Base44-Projekt aus einem Template erstellen | create.md ⚠️ MUSS GELESEN WERDEN |
base44 scaffold | Lokales Projekt für eine bestehende Base44-App scaffolden (per App-ID) | scaffold.md |
base44 link | Ein bestehendes lokales Projekt mit Base44 verknüpfen | link.md |
base44 eject | Den Code für ein bestehendes Base44-Projekt herunterladen | eject.md |
base44 dashboard open | Das App-Dashboard im Browser öffnen | dashboard.md |
Entwicklung
| Befehl | Beschreibung | Referenz |
|---|---|---|
base44 dev | Lokale Entwicklung für dein Base44-Backend starten und, falls site.serveCommand konfiguriert ist, auch für dein Frontend | dev.md |
Deployment
| Befehl | Beschreibung | Referenz |
|---|---|---|
base44 deploy | Alle Ressourcen deployen (Entitäten, Funktionen, Agenten, Connectors, Auth-Konfiguration und Site) | deploy.md |
Entitätsverwaltung
| Aktion / Befehl | Beschreibung | Referenz |
|---|---|---|
| Entitäten erstellen | Entitäten im Ordner base44/entities definieren | entities-create.md |
base44 entities push | Lokale Entitäten zu Base44 pushen | entities-push.md |
| RLS-Muster | Row-Level-Security-Beispiele und -Operatoren | rls-examples.md ⚠️ FÜR RLS LESEN |
Entitäts-Schema (Schnellreferenz)
Folge beim Erstellen von Entitätsdateien IMMER dieser exakten Struktur: Dateiname:base44/entities/{kebab-case-name}.jsonc (z. B. team-member.jsonc für TeamMember)
Schema-Template:
string, number, integer, boolean, array, object, binary
String-Formate: date, date-time, time, email, uri, hostname, ipv4, ipv6, uuid, file, regex, richtext
Für Enums: Füge "enum": ["value1", "value2"] und optional "default": "value1" hinzu
Entitätsnamen: Nur alphanumerisch (Muster: /^[a-zA-Z0-9]+$/)
Für die vollständige Dokumentation siehe entities-create.md.
Funktionsverwaltung
| Aktion / Befehl | Beschreibung | Referenz |
|---|---|---|
| Funktionen erstellen | Funktionen in base44/functions definieren | functions-create.md |
base44 functions deploy [names...] [--force] | Lokale Funktionen zu Base44 deployen; optional bestimmte Funktionen anvisieren oder entfernte bereinigen | functions-deploy.md |
base44 functions delete <names...> | Eine oder mehrere deployte Funktionen aus Base44 löschen | functions-delete.md |
base44 functions list | Alle auf Base44-Remote deployten Funktionen auflisten | functions-list.md |
base44 functions pull [name] | Deployte Funktionen von Base44 in lokale Dateien ziehen | functions-pull.md |
Agenten-Verwaltung
Agenten sind konversationelle KI-Assistenten, die mit Nutzern interagieren, auf Entitäten deiner App zugreifen und Backend-Funktionen aufrufen können. Verwende diese Befehle, um Agenten-Konfigurationen zu verwalten.| Aktion / Befehl | Beschreibung | Referenz |
|---|---|---|
| Agenten erstellen | Agenten im Ordner base44/agents definieren | Siehe Agenten-Schema unten |
base44 agents pull | Remote-Agenten in lokale Dateien ziehen | agents-pull.md |
base44 agents push | Lokale Agenten zu Base44 pushen | agents-push.md |
Agenten-Schema (Schnellreferenz)
Dateiname:base44/agents/{agent_name}.jsonc (z. B. support_agent.jsonc)
Schema-Template:
- Agentennamen müssen dem Muster entsprechen:
/^[a-z0-9_]+$/(kleingeschrieben, alphanumerisch mit Unterstrichen, 1–100 Zeichen) - Gültig:
support_agent,order_bot - Ungültig:
Support-Agent,OrderBot
name, description, instructions
Optionale Felder: tool_configs (Standardwert []), whatsapp_greeting
Tool-Config-Typen:
- Entity-Tools:
entity_name+allowed_operations(Array aus:read,create,update,delete) - Backend-Function-Tools:
function_name+description
Connector-Verwaltung
Connectors verbinden deine App mit externen Diensten (Google Calendar, Slack, Stripe usw.). Die meisten Connectors nutzen OAuth, um Backend-Funktionen Access-Tokens für externe APIs bereitzustellen. Stripe ist die Ausnahme — es wird serverseitig automatisch bereitgestellt, ohne OAuth-Browser-Flow.| Aktion / Befehl | Beschreibung | Referenz |
|---|---|---|
| Connectors erstellen | Connectors im Ordner base44/connectors definieren | connectors-create.md |
base44 connectors list-available | Alle verfügbaren Integrationstypen von Base44 auflisten | connectors-list-available.md |
base44 connectors pull | Remote-Connectors in lokale Dateien ziehen | connectors-pull.md |
base44 connectors push | Lokale Connectors zu Base44 pushen | connectors-push.md |
Connector-Schema (Schnellreferenz)
Dateiname:base44/connectors/{type}.jsonc (z. B. googlecalendar.jsonc, slack.jsonc)
Schema-Template:
type
Optionale Felder: scopes (Standardwert [])
Verfügbare Connector-Typen: Führe npx base44 connectors list-available aus, um alle unterstützten Integrationstypen zu sehen.
Hinweis: stripe ist auch ein gültiger Connector-Typ, wird aber nicht von list-available zurückgegeben. Behandle ihn als unterstützten Typ — er wird von Base44 automatisch ohne OAuth-Browser-Flow bereitgestellt. Siehe connectors-create.md für Details.
Für die vollständige Dokumentation siehe connectors-create.md.
Auth-Konfiguration
Verwalte die Authentifizierungseinstellungen deiner App (z. B. Login mit Benutzername und Passwort). Die Auth-Konfiguration wird inbase44/auth/ gespeichert und über auth push/auth pull mit Base44 synchronisiert.
| Befehl | Beschreibung | Referenz |
|---|---|---|
base44 auth password-login <enable|disable> | Authentifizierung per Benutzername und Passwort aktivieren oder deaktivieren | auth-password-login.md |
base44 auth social-login <provider> <enable|disable> | Social-Login aktivieren oder deaktivieren (google, microsoft, facebook, apple) | auth-social-login.md |
base44 auth sso <enable|disable> | SSO-Identitätsanbieter konfigurieren (google, microsoft, github, okta, custom) | auth-sso.md |
base44 auth pull | Auth-Konfiguration von Base44 in lokale Dateien ziehen | auth-pull.md |
base44 auth push | Lokale Auth-Konfiguration zu Base44 pushen | auth-push.md |
base44 deploy deployt.
Secrets-Verwaltung
Verwalte Projekt-Secrets (Umgebungsvariablen, die sicher in Base44 gespeichert sind). Diese Befehle sind in der--help-Ausgabe versteckt, aber voll funktionsfähig.
| Befehl | Beschreibung | Referenz |
|---|---|---|
base44 secrets list | Die Namen aller Secrets auflisten | secrets-list.md |
base44 secrets set | Ein oder mehrere Secrets setzen (KEY=VALUE oder —env-file) | secrets-set.md |
base44 secrets delete <key> | Ein Secret nach Name löschen | secrets-delete.md |
Skript-Ausführung
Führe Einzelskripte gegen deine App mit dem vorauthentifizierten Base44-SDK aus. Nutze das für CRUD-Operationen auf Entitäten (base44.entities.MyEntity.list/create/update/delete), zum Aufrufen von Backend-Funktionen (base44.functions.invoke("myFunction", args)), zum Aufrufen von Agenten oder für den Zugriff auf jede andere vom SDK bereitgestellte Ressource — ohne eine vollständige Funktion zu deployen. Nützlich für Datenmigrationen, Massenoperationen, Debugging und skriptbasierte Workflows.
| Befehl | Beschreibung | Referenz |
|---|---|---|
base44 exec | Ein Skript (über stdin) mit vorauthentifiziertem Base44-SDK ausführen | exec.md |
Typ-Generierung
| Befehl | Beschreibung | Referenz |
|---|---|---|
base44 types generate | TypeScript-Typen (types.d.ts) aus Entitäten, Funktionen, Agenten und Connectors generieren | types-generate.md |
base44/.types/types.d.ts — erweitert das Modul @base44/sdk mit typisierten Registries (EntityTypeRegistry, FunctionNameRegistry, AgentNameRegistry, ConnectorTypeRegistry).
Keine Authentifizierung erforderlich. Läuft komplett lokal. Aktualisiert tsconfig.json automatisch, um die generierten Typen einzuschließen.
Site-Verwaltung
| Befehl | Beschreibung | Referenz |
|---|---|---|
base44 site deploy | Gebaute Site-Dateien zum Base44-Hosting deployen | site-deploy.md |
base44 site open | Deployte Site im Browser öffnen | site-open.md |
index.html-Einstiegspunkt. Alle Routen werden aus index.html bedient (clientseitiges Routing).
Schnellstart
-
Installiere die CLI in deinem Projekt:
-
Authentifiziere dich bei Base44:
-
Erstelle ein neues Projekt (gib IMMER Name und
--path-Flag an): -
Führe lokale Entwicklung aus:
-
Baue und deploye alles:
npx base44 entities push— Nur Entitäten pushennpx base44 functions deploy— Nur Funktionen deployennpx base44 functions delete <name>— Eine deployte Funktion löschennpx base44 functions list— Alle deployten Funktionen auflistennpx base44 functions pull— Deployte Funktionen in lokale Dateien ziehennpx base44 agents push— Nur Agenten pushennpx base44 connectors pull— Connectors von Base44 ziehennpx base44 connectors push— Nur Connectors pushennpx base44 auth pull— Auth-Konfiguration von Base44 ziehennpx base44 auth push— Nur Auth-Konfiguration pushennpx base44 site deploy -y— Nur Site deployen
Häufige Workflows
Ein neues Projekt erstellen
⚠️ VERPFLICHTEND: Bevor dubase44 create ausführst, MUSST du create.md lesen, für:
- Template-Auswahl — Wähle das richtige Template (
backend-and-clientvsbackend-only) - Korrekter Workflow — Verschiedene Templates erfordern verschiedene Einrichtungsschritte
- Häufige Fallstricke — Vermeide Ordner-Erstellungsfehler, die zu Fehlschlägen führen
Ein bestehendes Projekt verknüpfen
Lokale Entwicklung ausführen
base44 dev auch dein Frontend ausführen soll, prüfe, dass in base44/config.jsonc site.serveCommand korrekt gesetzt ist (z. B. "serveCommand": "npm run dev"). Wenn dieses Feld vorhanden ist, führt base44 dev Backend und Frontend gemeinsam aus.
Alle Änderungen deployen
TypeScript-Typen generieren
base44/.types/types.d.ts mit typisierten Registries für das @base44/sdk-Modul. Führe das nach Änderungen an Entitäten, Funktionen, Agenten oder Connectors aus, damit deine Typen aktuell bleiben. Keine Authentifizierung erforderlich.
Einzelne Ressourcen deployen
Das Dashboard öffnen
Authentifizierung
Die meisten Befehle erfordern Authentifizierung. Wenn du nicht eingeloggt bist, fordert die CLI dich automatisch dazu auf. Deine Sitzung wird lokal gespeichert und bleibt über CLI-Sitzungen hinweg bestehen.Fehlerbehebung
| Fehler | Lösung |
|---|---|
| Not authenticated | Führe zuerst npx base44 login aus |
| No entities found | Stelle sicher, dass Entitäten im Verzeichnis base44/entities/ existieren |
| Entity not recognized | Prüfe, dass die Datei kebab-case-Benennung nutzt (z. B. team-member.jsonc, nicht TeamMember.jsonc) |
| No functions found | Stelle sicher, dass Funktionen in base44/functions/ mit entry.ts oder entry.js existieren |
| No agents found | Stelle sicher, dass Agenten im Verzeichnis base44/agents/ mit gültigen .jsonc-Konfigurationen existieren |
| Invalid agent name | Agentennamen müssen kleingeschrieben, alphanumerisch mit Unterstrichen sein |
| No connectors found | Stelle sicher, dass Connectors im Verzeichnis base44/connectors/ mit gültigen .jsonc-Konfigurationen existieren |
| Invalid connector type | Führe npx base44 connectors list-available aus, um gültige Typen zu sehen |
| Duplicate connector type | Jeder Connector-Typ darf pro Projekt nur einmal definiert werden |
| Connector authorization timeout | Führe npx base44 connectors push erneut aus und schließe den OAuth-Flow im Browser ab |
| No site configuration found | Prüfe, dass site.outputDirectory in der Projektkonfiguration konfiguriert ist |
| Site deployment fails | Stelle sicher, dass du zuerst npm run build ausgeführt hast und der Build erfolgreich war |
| Update available message | Wenn du zum Update aufgefordert wirst, führe npm install -g base44@latest aus (oder nutze npx für lokale Installationen) |
Diese Seite wurde mit KI übersetzt. Für die genauesten und aktuellsten Informationen siehe die englische Version.

