Base44 CLI
Base44 CLI ツールを使用して Base44 アプリ (プロジェクト) を作成・管理します。⚡ 即時アクション必須 - まずこれを読む
このスキルは “base44” への言及があった場合、またはbase44/ フォルダーが存在する場合に有効化されます。行動する前にドキュメントファイルを読んだり Web を検索したりしないでください。
最初のアクションは必ず以下のとおりです:
- カレントディレクトリに
base44/config.jsoncが存在するか確認する - 存在する 場合 (既存プロジェクトのシナリオ):
- base44-sdk スキルへ引き継いで実装する
- このスキルは CLI コマンド (login、deploy、entities push) のみを扱います
- 存在しない 場合、次の 2 つの初期化パスから決定する:
- プロビジョニング済みアプリ — Stripe Projects / projects.dev フローを通じてプロビジョニングされたため Base44 アプリがすでに存在する、または
BASE44_APP_ID(もしくはBASE44_PROJECTS_BASE44_APP_ID) が環境または.env/.env.localファイルに存在する場合:npx base44 scaffoldを実行して、既存の アプリのローカルファイルをセットアップしますnpx base44 createは実行しないでください — 重複した 2 つ目のアプリが作成されます。scaffold.md を参照してください。
- 新規プロジェクト — アプリがまだ存在せず、プロビジョニングもされていない場合:
- このスキル (base44-cli) がリクエストを処理し、ユーザーに
npx base44 createを案内します - base44-sdk はまだ有効化しないでください
- このスキル (base44-cli) がリクエストを処理し、ユーザーに
- プロビジョニング済みアプリ — Stripe Projects / projects.dev フローを通じてプロビジョニングされたため Base44 アプリがすでに存在する、または
重要: ローカルインストールのみ
base44 を直接呼び出してはいけません。CLI は開発依存関係としてローカルにインストールされ、パッケージマネージャー経由でアクセスする必要があります:
npx base44 <command>(npm - 推奨)yarn base44 <command>(yarn)pnpm base44 <command>(pnpm)
base44 login
正: npx base44 login
必須: セッション開始時の認証チェック
重要: このスキルが有効化された AI セッションの開始時に、必ず以下を実行してください:-
認証状態を確認 するには次を実行します:
-
ユーザーがログイン済み の場合 (コマンドが成功し、メールアドレスが表示される):
- リクエストされたタスクを続行します
-
ユーザーがログインしていない 場合 (コマンドが失敗またはエラーを表示する):
- 直ちに停止します
- CLI 操作を 一切実行しません
- ユーザーに手動でログインするよう依頼します 次のコマンドを実行してもらいます:
BASE44_ACCESS_TOKEN / BASE44_REFRESH_TOKEN 環境変数から認証をシードします (BASE44_PROJECTS_* プレフィックス付きの名前は自動的に正規化されます)。この場合、npx base44 whoami はすでに成功しており、対話的な npx base44 login は 不要 です。
概要
Base44 CLI は、認証、プロジェクトの作成、エンティティの管理、Base44 アプリケーションのデプロイのためのコマンドラインツールを提供します。フレームワーク非依存で、Vite、Next.js、Create React App、Svelte、Vue などの主要なフロントエンドフレームワークで動作します。このスキルと base44-sdk の使い分け
base44-cli を使う場合:- 新規 の Base44 プロジェクトをゼロから作成する
- 空のディレクトリでプロジェクトを初期化する
- 外部でプロビジョニングされた 既存 アプリ (例: Stripe Projects / projects.dev フロー経由) のローカルファイルをセットアップする →
scaffoldを使用 - ディレクトリに
base44/config.jsoncが存在しない - ユーザーの発言: 「新しいプロジェクトを作成」「プロジェクトを初期化」「プロジェクトをセットアップ」「新しい Base44 アプリを開始」
- CLI 経由でデプロイ、エンティティのプッシュ、認証を行う
- CLI コマンド (
npx base44 ...) を扱う
- 既存の Base44 プロジェクトで機能を構築する
base44/config.jsoncがすでに存在する- Base44 SDK を使って JavaScript/TypeScript コードを書く
- 機能、コンポーネント、フィーチャーを実装する
- ユーザーの発言: 「実装する」「機能を構築する」「機能を追加する」「コードを書く」
base44-cliは新規プロジェクトにおけるbase44-sdkの 前提条件 です- ユーザーが「アプリを作成」したく、Base44 プロジェクトが存在しない場合は、まず
base44-cliを使用します base44-sdkは Base44 プロジェクトがすでに初期化されていることを前提とします
- IF (ユーザーが「アプリを作成/構築」または「プロジェクトを作る」と発言):
- IF (
base44/config.jsoncが存在): → base44-sdk を使用 (プロジェクトが存在するため機能を構築) - ELSE IF (アプリが外部でプロビジョニング済み —
BASE44_APP_ID/BASE44_PROJECTS_BASE44_APP_IDが設定されている、または Stripe Projects / projects.dev フローが実行された直後): → base44-cli →npx base44 scaffoldを使用 (既存アプリのローカルファイルをセットアップ;createは行わない) - ELSE:
→ base44-cli →
npx base44 createを使用 (新規プロジェクト初期化が必要)
- IF (
プロジェクト構造
Base44 プロジェクトは、標準的なフロントエンドプロジェクトとbase44/ 構成フォルダーを組み合わせたものです:
base44/config.jsonc- プロジェクト名、説明、サイトのビルド設定base44/entities/*.jsonc- データモデルスキーマ (Entity Schema セクションを参照)base44/functions/*/entry.ts- バックエンド関数のエントリーポイントbase44/agents/*.jsonc- エージェント構成 (オプション)base44/.types/types.d.ts- エンティティ、関数、エージェント用の自動生成 TypeScript 型 (npx base44 types generateで生成)base44/connectors/*.jsonc- OAuth コネクタ構成 (オプション)src/api/base44Client.js- フロントエンドで使用する事前構成済み SDK クライアント
| プロパティ | 説明 | デフォルト |
|---|---|---|
name | プロジェクト名 (必須) | - |
description | プロジェクトの説明 | - |
entitiesDir | エンティティスキーマのディレクトリ | "entities" |
functionsDir | バックエンド関数のディレクトリ | "functions" |
agentsDir | エージェント構成のディレクトリ | "agents" |
connectorsDir | コネクタ構成のディレクトリ | "connectors" |
site.installCommand | 依存関係のインストールコマンド | - |
site.buildCommand | プロジェクトをビルドするコマンド | - |
site.serveCommand | 開発サーバーを実行するコマンド | - |
site.outputDirectory | デプロイ用ビルド出力ディレクトリ | - |
インストール
Base44 CLI をプロジェクトの開発依存関係としてインストールします:base44 パッケージのバージョンを推測またはハードコードしないでください。最新版を取得するために、バージョン指定子なしで常にインストールしてください。
その後、npx を使ってコマンドを実行します:
npx base44 を使用します。必要に応じて yarn base44 または pnpm base44 も使用できます。
グローバル --app-id オプション
CLI にはグローバル --app-id <id> オプションがあり、ローカルプロジェクトファイルではなくアプリコンテキストのみが必要なコマンドで使用します。
解決順序: --app-id フラグ → BASE44_APP_ID 環境変数 → ローカルの base44/.app.jsonc
これは、リンクされたプロジェクトディレクトリに切り替えずにアプリを検査または操作したい場合に便利です。よくある例:
--app-id は exec や logs のようなアプリスコープコマンドで使用します。
ローカルプロジェクトファイルが必要なコマンドでは --app-id を使用 しない でください:
base44 createは新しいアプリを作成するため--app-idを拒否しますbase44 devはリンクされたローカルプロジェクトから実行するため--app-idを拒否しますbase44 deployはローカルリソースを読み取るため、依然としてローカルプロジェクトディレクトリが必要です
利用可能なコマンド
認証
| コマンド | 説明 | リファレンス |
|---|---|---|
base44 login | デバイスコードフローで Base44 に認証 | auth-login.md |
base44 logout | 現在のデバイスからログアウト | auth-logout.md |
base44 whoami | 現在認証済みのユーザーを表示 | auth-whoami.md |
プロジェクト管理
| コマンド | 説明 | リファレンス |
|---|---|---|
base44 create | テンプレートから新規 Base44 プロジェクトを作成 | create.md ⚠️ 必読 |
base44 scaffold | 既存 Base44 アプリ (アプリ ID 指定) のローカルプロジェクトをスキャフォールド | scaffold.md |
base44 link | 既存のローカルプロジェクトを Base44 にリンク | link.md |
base44 eject | 既存 Base44 プロジェクトのコードをダウンロード | eject.md |
base44 dashboard open | ブラウザーでアプリダッシュボードを開く | dashboard.md |
開発
| コマンド | 説明 | リファレンス |
|---|---|---|
base44 dev | Base44 バックエンドのローカル開発を開始 (site.serveCommand が設定されている場合はフロントエンドも起動) | dev.md |
デプロイ
| コマンド | 説明 | リファレンス |
|---|---|---|
base44 deploy | すべてのリソース (entities、functions、agents、connectors、認証設定、サイト) をデプロイ | deploy.md |
エンティティ管理
| アクション / コマンド | 説明 | リファレンス |
|---|---|---|
| Create Entities | base44/entities フォルダーにエンティティを定義 | entities-create.md |
base44 entities push | ローカルエンティティを Base44 にプッシュ | entities-push.md |
| RLS Patterns | 行レベルセキュリティの例と演算子 | rls-examples.md ⚠️ RLS 用に必読 |
エンティティスキーマ (クイックリファレンス)
エンティティファイルを作成する際は必ずこの正確な構造に従ってください: ファイル命名:base44/entities/{kebab-case-name}.jsonc (例: TeamMember の場合は team-member.jsonc)
スキーマテンプレート:
string, number, integer, boolean, array, object, binary
文字列フォーマット: date, date-time, time, email, uri, hostname, ipv4, ipv6, uuid, file, regex, richtext
列挙型の場合: "enum": ["value1", "value2"] を追加し、オプションで "default": "value1" を指定
エンティティ名: 英数字のみ (パターン: /^[a-zA-Z0-9]+$/)
完全なドキュメントは entities-create.md を参照してください。
関数管理
| アクション / コマンド | 説明 | リファレンス |
|---|---|---|
| Create Functions | base44/functions に関数を定義 | functions-create.md |
base44 functions deploy [names...] [--force] | ローカル関数を Base44 にデプロイ; 特定の関数のみ対象にしたり、削除された関数を整理したりできる | functions-deploy.md |
base44 functions delete <names...> | 1 つ以上のデプロイ済み関数を Base44 から削除 | functions-delete.md |
base44 functions list | Base44 リモートにデプロイ済みのすべての関数を一覧表示 | functions-list.md |
base44 functions pull [name] | デプロイ済み関数を Base44 からローカルファイルへプル | functions-pull.md |
エージェント管理
エージェントはユーザーと対話し、アプリのエンティティにアクセスし、バックエンド関数を呼び出せる会話型 AI アシスタントです。これらのコマンドでエージェント構成を管理します。| アクション / コマンド | 説明 | リファレンス |
|---|---|---|
| Create Agents | base44/agents フォルダーにエージェントを定義 | 下記の Agent Schema を参照 |
base44 agents pull | リモートのエージェントをローカルファイルにプル | agents-pull.md |
base44 agents push | ローカルエージェントを Base44 にプッシュ | agents-push.md |
エージェントスキーマ (クイックリファレンス)
ファイル命名:base44/agents/{agent_name}.jsonc (例: support_agent.jsonc)
スキーマテンプレート:
- エージェント名はパターン
/^[a-z0-9_]+$/に一致する必要があります (小文字英数字とアンダースコア、1-100 文字) - 有効:
support_agent,order_bot - 無効:
Support-Agent,OrderBot
name, description, instructions
オプションフィールド: tool_configs (デフォルトは []), whatsapp_greeting
Tool config の種類:
- Entity tools:
entity_name+allowed_operations(配列:read,create,update,delete) - Backend function tools:
function_name+description
コネクタ管理
コネクタを使うと、アプリを外部サービス (Google Calendar、Slack、Stripe など) に接続できます。ほとんどのコネクタは OAuth を使用し、バックエンド関数が外部 API を呼び出すためのアクセストークンを提供します。Stripe は例外で、サーバー側で自動的にプロビジョニングされ、OAuth のブラウザーフローはありません。| アクション / コマンド | 説明 | リファレンス |
|---|---|---|
| Create Connectors | base44/connectors フォルダーにコネクタを定義 | connectors-create.md |
base44 connectors list-available | Base44 で利用可能なすべてのインテグレーションタイプを一覧表示 | connectors-list-available.md |
base44 connectors pull | リモートコネクタをローカルファイルにプル | connectors-pull.md |
base44 connectors push | ローカルコネクタを Base44 にプッシュ | connectors-push.md |
コネクタスキーマ (クイックリファレンス)
ファイル命名:base44/connectors/{type}.jsonc (例: googlecalendar.jsonc, slack.jsonc)
スキーマテンプレート:
type
オプションフィールド: scopes (デフォルトは [])
利用可能なコネクタタイプ: サポートされているすべてのインテグレーションタイプを見るには npx base44 connectors list-available を実行してください。
注意: stripe も有効なコネクタタイプですが、list-available からは返されません。サポートされているタイプとして扱ってください — Base44 によって自動的にプロビジョニングされ、OAuth ブラウザーフローはありません。詳細は connectors-create.md を参照してください。
完全なドキュメントは connectors-create.md を参照してください。
認証設定
アプリの認証設定 (例: ユーザー名 & パスワードログイン) を管理します。認証設定はbase44/auth/ に保存され、auth push/auth pull を介して Base44 と同期されます。
| コマンド | 説明 | リファレンス |
|---|---|---|
base44 auth password-login <enable|disable> | ユーザー名 & パスワード認証を有効/無効化 | auth-password-login.md |
base44 auth social-login <provider> <enable|disable> | ソーシャルログイン (google、microsoft、facebook、apple) を有効/無効化 | auth-social-login.md |
base44 auth sso <enable|disable> | SSO ID プロバイダー (google、microsoft、github、okta、custom) を構成 | auth-sso.md |
base44 auth pull | 認証設定を Base44 からローカルファイルにプル | auth-pull.md |
base44 auth push | ローカルの認証設定を Base44 にプッシュ | auth-push.md |
base44 deploy の一部としてもデプロイされます。
シークレット管理
プロジェクトのシークレット (Base44 に安全に保存された環境変数) を管理します。これらのコマンドは--help 出力からは隠されていますが、完全に機能します。
| コマンド | 説明 | リファレンス |
|---|---|---|
base44 secrets list | すべてのシークレット名を一覧表示 | secrets-list.md |
base44 secrets set | 1 つ以上のシークレットを設定 (KEY=VALUE または —env-file) | secrets-set.md |
base44 secrets delete <key> | シークレットを名前で削除 | secrets-delete.md |
スクリプト実行
Base44 SDK が事前認証された状態で、アプリに対してワンオフのスクリプトを実行します。これを使うと、エンティティの CRUD 操作 (base44.entities.MyEntity.list/create/update/delete)、バックエンド関数の呼び出し (base44.functions.invoke("myFunction", args))、エージェントの呼び出し、SDK が公開する他のリソースへのアクセスを、フル関数のデプロイなしで実行できます。データ移行、一括操作、デバッグ、スクリプト化されたワークフローに便利です。
| コマンド | 説明 | リファレンス |
|---|---|---|
base44 exec | Base44 SDK が事前認証された状態でスクリプト (stdin 経由) を実行 | exec.md |
型生成
| コマンド | 説明 | リファレンス |
|---|---|---|
base44 types generate | エンティティ、関数、エージェント、コネクタから TypeScript 型 (types.d.ts) を生成 | types-generate.md |
base44/.types/types.d.ts — 型付きレジストリ (EntityTypeRegistry, FunctionNameRegistry, AgentNameRegistry, ConnectorTypeRegistry) で @base44/sdk モジュールを拡張します。
認証不要。 完全にローカルで実行されます。生成された型を含めるように tsconfig.json を自動で更新します。
サイト管理
| コマンド | 説明 | リファレンス |
|---|---|---|
base44 site deploy | ビルド済みサイトファイルを Base44 ホスティングにデプロイ | site-deploy.md |
base44 site open | デプロイされたサイトをブラウザーで開く | site-open.md |
index.html エントリーポイントを持つシングルページアプリケーションをサポートします。すべてのルートは index.html から配信されます (クライアントサイドルーティング)。
クイックスタート
-
プロジェクトに CLI をインストール:
-
Base44 に認証:
-
新規プロジェクトを作成 (常に name と
--pathフラグを指定): -
ローカル開発を実行:
-
ビルドしてすべてをデプロイ:
npx base44 entities push- エンティティのみプッシュnpx base44 functions deploy- 関数のみデプロイnpx base44 functions delete <name>- デプロイ済み関数を削除npx base44 functions list- すべてのデプロイ済み関数を一覧表示npx base44 functions pull- デプロイ済み関数をローカルファイルにプルnpx base44 agents push- エージェントのみプッシュnpx base44 connectors pull- Base44 からコネクタをプルnpx base44 connectors push- コネクタのみプッシュnpx base44 auth pull- Base44 から認証設定をプルnpx base44 auth push- 認証設定のみプッシュnpx base44 site deploy -y- サイトのみデプロイ
一般的なワークフロー
新規プロジェクトの作成
⚠️ 必須:base44 create を実行する前に、必ず create.md を読んでください:
- テンプレート選択 - 正しいテンプレート (
backend-and-clientとbackend-only) を選択 - 正しいワークフロー - テンプレートごとに必要なセットアップ手順が異なります
- よくある落とし穴 - 失敗の原因となるフォルダー作成エラーを回避
既存プロジェクトのリンク
ローカル開発の実行
base44 dev でフロントエンドも実行したい場合は、base44/config.jsonc に site.serveCommand が正しく設定されているか (例: "serveCommand": "npm run dev") を確認してください。そのフィールドが存在すると、base44 dev はバックエンドとフロントエンドを同時に実行します。
すべての変更のデプロイ
TypeScript 型の生成
base44/.types/types.d.ts が作成され、@base44/sdk モジュールの型付きレジストリが提供されます。エンティティ、関数、エージェント、コネクタを変更した後にこれを実行して、型を同期状態に保ちます。認証は不要です。
個別リソースのデプロイ
ダッシュボードを開く
認証
ほとんどのコマンドは認証を必要とします。ログインしていない場合、CLI は自動的にログインを促します。セッションはローカルに保存され、CLI セッションをまたいで永続化されます。トラブルシューティング
| エラー | 解決策 |
|---|---|
| Not authenticated | 最初に npx base44 login を実行してください |
| No entities found | base44/entities/ ディレクトリにエンティティが存在するか確認してください |
| Entity not recognized | ファイル名が kebab-case であることを確認 (例: TeamMember.jsonc ではなく team-member.jsonc) |
| No functions found | base44/functions/ に entry.ts または entry.js を持つ関数が存在するか確認 |
| No agents found | base44/agents/ ディレクトリに有効な .jsonc 構成を持つエージェントが存在するか確認 |
| Invalid agent name | エージェント名は小文字英数字とアンダースコアのみである必要があります |
| No connectors found | base44/connectors/ ディレクトリに有効な .jsonc 構成を持つコネクタが存在するか確認 |
| Invalid connector type | 有効なタイプを見るには npx base44 connectors list-available を実行してください |
| Duplicate connector type | 各コネクタタイプはプロジェクトごとに 1 度しか定義できません |
| Connector authorization timeout | npx base44 connectors push を再実行し、ブラウザーで OAuth フローを完了してください |
| No site configuration found | プロジェクト設定で site.outputDirectory が構成されているか確認してください |
| Site deployment fails | 先に npm run build を実行し、ビルドが成功しているか確認してください |
| Update available message | アップデートを促された場合は npm install -g base44@latest を実行 (ローカルインストールの場合は npx を使用) |
このページは AI を使用して翻訳されました。最も正確で最新の情報については、英語版 を参照してください。

