Skip to main content
このページは AI コーディングエージェントスキルの一部で、人間ではなくエージェント向けに書かれています。人間向けの Base44 ドキュメントは デベロッパードキュメント を参照してください。

Base44 CLI

Base44 CLI ツールを使用して Base44 アプリ (プロジェクト) を作成・管理します。

⚡ 即時アクション必須 - まずこれを読む

このスキルは “base44” への言及があった場合、または base44/ フォルダーが存在する場合に有効化されます。行動する前にドキュメントファイルを読んだり Web を検索したりしないでください。 最初のアクションは必ず以下のとおりです:
  1. カレントディレクトリに base44/config.jsonc が存在するか確認する
  2. 存在する 場合 (既存プロジェクトのシナリオ):
    • base44-sdk スキルへ引き継いで実装する
    • このスキルは CLI コマンド (login、deploy、entities push) のみを扱います
  3. 存在しない 場合、次の 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 は開発依存関係としてローカルにインストールされ、パッケージマネージャー経由でアクセスする必要があります:
  • npx base44 <command> (npm - 推奨)
  • yarn base44 <command> (yarn)
  • pnpm base44 <command> (pnpm)
誤: base44 login 正: npx base44 login

必須: セッション開始時の認証チェック

重要: このスキルが有効化された AI セッションの開始時に、必ず以下を実行してください:
  1. 認証状態を確認 するには次を実行します:
  2. ユーザーがログイン済み の場合 (コマンドが成功し、メールアドレスが表示される):
    • リクエストされたタスクを続行します
  3. ユーザーがログインしていない 場合 (コマンドが失敗またはエラーを表示する):
    • 直ちに停止します
    • CLI 操作を 一切実行しません
    • ユーザーに手動でログインするよう依頼します 次のコマンドを実行してもらいます:
このチェックは必須で、他の Base44 CLI コマンドを実行する前に必ず行ってください。 Stripe Projects / projects.dev 経由でプロビジョニング済みですか? そのフローでプロビジョニングされた場合、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-sdk を使う場合:
  • 既存の 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-clinpx base44 scaffold を使用 (既存アプリのローカルファイルをセットアップ; create は行わない)
    • ELSE: → base44-clinpx base44 create を使用 (新規プロジェクト初期化が必要)

プロジェクト構造

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 クライアント
config.jsonc の例:
Config プロパティ:

インストール

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-idexeclogs のようなアプリスコープコマンドで使用します。 ローカルプロジェクトファイルが必要なコマンドでは --app-id を使用 しない でください:
  • base44 create は新しいアプリを作成するため --app-id を拒否します
  • base44 dev はリンクされたローカルプロジェクトから実行するため --app-id を拒否します
  • base44 deploy はローカルリソースを読み取るため、依然としてローカルプロジェクトディレクトリが必要です

利用可能なコマンド

認証

プロジェクト管理

開発

デプロイ

エンティティ管理

エンティティスキーマ (クイックリファレンス)

エンティティファイルを作成する際は必ずこの正確な構造に従ってください: ファイル命名: 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 を参照してください。

関数管理

エージェント管理

エージェントはユーザーと対話し、アプリのエンティティにアクセスし、バックエンド関数を呼び出せる会話型 AI アシスタントです。これらのコマンドでエージェント構成を管理します。 注意: エージェントコマンドは完全同期を行います - プッシュはすべてのリモートエージェントをローカルのもので置き換え、プルはすべてのローカルエージェントをリモートのもので置き換えます。

エージェントスキーマ (クイックリファレンス)

ファイル命名: 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 のブラウザーフローはありません。 注意: コネクタコマンドは完全同期を行います - プッシュはすべてのリモートコネクタをローカルのもので置き換え (新しい OAuth コネクタでは OAuth をトリガー)、プルはすべてのローカルコネクタをリモートのもので置き換えます。

コネクタスキーマ (クイックリファレンス)

ファイル命名: 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 deploy の一部としてもデプロイされます。

シークレット管理

プロジェクトのシークレット (Base44 に安全に保存された環境変数) を管理します。これらのコマンドは --help 出力からは隠されていますが、完全に機能します。

スクリプト実行

Base44 SDK が事前認証された状態で、アプリに対してワンオフのスクリプトを実行します。これを使うと、エンティティの CRUD 操作 (base44.entities.MyEntity.list/create/update/delete)、バックエンド関数の呼び出し (base44.functions.invoke("myFunction", args))、エージェントの呼び出し、SDK が公開する他のリソースへのアクセスを、フル関数のデプロイなしで実行できます。データ移行、一括操作、デバッグ、スクリプト化されたワークフローに便利です。

型生成

出力: base44/.types/types.d.ts — 型付きレジストリ (EntityTypeRegistry, FunctionNameRegistry, AgentNameRegistry, ConnectorTypeRegistry) で @base44/sdk モジュールを拡張します。 認証不要。 完全にローカルで実行されます。生成された型を含めるように tsconfig.json を自動で更新します。

サイト管理

SPA のみ: Base44 ホスティングは単一 index.html エントリーポイントを持つシングルページアプリケーションをサポートします。すべてのルートは index.html から配信されます (クライアントサイドルーティング)。

クイックスタート

  1. プロジェクトに CLI をインストール:
  2. Base44 に認証:
  3. 新規プロジェクトを作成 (常に name と --path フラグを指定):
  4. ローカル開発を実行:
  5. ビルドしてすべてをデプロイ:
または個別のリソースをデプロイ:
  • 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-clientbackend-only) を選択
  • 正しいワークフロー - テンプレートごとに必要なセットアップ手順が異なります
  • よくある落とし穴 - 失敗の原因となるフォルダー作成エラーを回避
create.md の指示に従わないと、プロジェクトのスキャフォールディングが壊れます。

既存プロジェクトのリンク

ローカル開発の実行

base44 dev でフロントエンドも実行したい場合は、base44/config.jsoncsite.serveCommand が正しく設定されているか (例: "serveCommand": "npm run dev") を確認してください。そのフィールドが存在すると、base44 dev はバックエンドとフロントエンドを同時に実行します。

すべての変更のデプロイ

TypeScript 型の生成

これにより base44/.types/types.d.ts が作成され、@base44/sdk モジュールの型付きレジストリが提供されます。エンティティ、関数、エージェント、コネクタを変更した後にこれを実行して、型を同期状態に保ちます。認証は不要です。

個別リソースのデプロイ

ダッシュボードを開く

認証

ほとんどのコマンドは認証を必要とします。ログインしていない場合、CLI は自動的にログインを促します。セッションはローカルに保存され、CLI セッションをまたいで永続化されます。

トラブルシューティング

このページは AI を使用して翻訳されました。最も正確で最新の情報については、英語版 を参照してください。