Koolbase CLI
Deploy and manage your Koolbase functions, cron schedules, and more from the terminal.
Installation
One line — detects your platform, verifies the checksum, installs to /usr/local/bin:
curl -fsSL https://get.koolbase.com/install.sh | shTo install somewhere else (no sudo), set KOOLBASE_INSTALL_DIR. Binaries are also downloadable directly — the manifest at get.koolbase.com/latest.json lists every platform artifact with its sha256.
Verify the installation:
koolbase versionPlatform support
The CLI runs on macOS (Apple Silicon and Intel) and Linux (x64 and arm64). Most features are platform-independent; iOS-specific tooling requires macOS:
| Feature | macOS | Linux |
|---|---|---|
| Auth, projects, functions, deploy | ✓ | ✓ |
| API keys & MCP server | ✓ | ✓ |
| Android Code Push | ✓ | ✓ |
| iOS Code Push authoring | ✓ | — |
Updating
Re-run the install command any time to upgrade to the latest version — it replaces your existing binary in place:
curl -fsSL https://get.koolbase.com/install.sh | shCheck your version with koolbase version.
Newer commands and flags — such as koolbase login --github, koolbase connect, and koolbase logout — are only available after updating. If a command reports an unknown flag or subcommand, update first and try again.
Login
Authenticate with your Koolbase account. Uses the same credentials as the dashboard at app.koolbase.com.
koolbase loginYour session token is saved to ~/.koolbase/config.json. Check which account you're logged in as at any time — verified live against the API:
koolbase whoamiFor programmatic access (the MCP server, CI, scripts), mint an API key — the secret is shown once:
koolbase keys create --name my-key --scope readScopes: read, write, admin. Manage with koolbase keys list and koolbase keys revoke.
Quick start
# Login
koolbase login
# Deploy a TypeScript function
koolbase deploy send-email --file ./send_email.ts --project <project_id>
# Deploy a Dart function
koolbase deploy process-order --file ./process.dart --project <project_id>
# List functions
koolbase functions list --project <project_id>
# Invoke a function
koolbase invoke send-email --project <project_id> --data '{"to":"[email protected]"}'
# View logs
koolbase logs send-email --project <project_id>
# Add a cron schedule
koolbase crons add send-email --cron "0 9 * * *" --project <project_id>Config file
The CLI stores your session in ~/.koolbase/config.json. You can set a default project ID to avoid passing --project on every command:
{
"api_key": "your-session-token",
"email": "[email protected]",
"base_url": "https://api.koolbase.com",
"project_id": "your-default-project-id"
}