CLI Commands

Full reference for all Koolbase CLI commands.

Auth

koolbase login

Authenticate with your Koolbase account. Prompts for email and password. Saves your session token to ~/.koolbase/config.json.

koolbase login

Functions

koolbase deploy <name>

Deploy a function from a local file. Runtime is auto-detected from the file extension — .ts deploys to Deno, .dart deploys to the Dart runtime.

--file, -fPath to the function file (.ts or .dart) — required
--project, -pProject ID
--runtime, -rOverride runtime: deno or dart
--timeoutExecution timeout in ms (default: 10000, max: 30000)
koolbase deploy send-email --file ./send_email.ts --project proj_123
koolbase deploy process --file ./process.dart --project proj_123
koolbase functions list

List all deployed functions in a project with version, runtime, timeout, and last deployed date.

--project, -pProject ID
koolbase functions list --project proj_123
koolbase invoke <name>

Invoke a deployed function with an optional JSON body. Returns the response body, status code, and log ID.

--project, -pProject ID
--data, -dJSON body to send to the function
koolbase invoke send-email --project proj_123
koolbase invoke send-email --project proj_123 --data '{"to":"user@example.com"}'
koolbase logs <name>

View recent execution logs for a function. Shows status, duration, output, and errors.

--project, -pProject ID
--limitNumber of logs to fetch (default: 20)
koolbase logs send-email --project proj_123
koolbase logs send-email --project proj_123 --limit 50

Crons

koolbase crons list

List all cron schedules in a project with their expressions, status, and last run time.

--project, -pProject ID
koolbase crons list --project proj_123
koolbase crons add <function-name>

Add a cron schedule for a deployed function using a standard 5-field cron expression.

--cronCron expression e.g. "0 9 * * *" — required
--project, -pProject ID
koolbase crons add send-email --cron "0 9 * * *" --project proj_123
koolbase crons add cleanup --cron "*/5 * * * *" --project proj_123
koolbase crons toggle <cron-id>

Enable or disable a cron schedule without deleting it.

--enableEnable the schedule
--disableDisable the schedule
--project, -pProject ID
koolbase crons toggle 18f79c3a --disable --project proj_123
koolbase crons toggle 18f79c3a --enable --project proj_123
koolbase crons delete <cron-id>

Permanently delete a cron schedule.

--project, -pProject ID
koolbase crons delete 18f79c3a-1965-44a5-8ff2-1d35ac58ede8 --project proj_123

Code Push

koolbase bundle deploy

Package a bundle directory and deploy it to your app. Creates a draft, uploads the artifact, updates the checksum, and publishes — all in one command.

--appProject (app) ID — required
--platformios or android — required
--channelChannel to deploy to (default: stable)
--base-app-versionMinimum app version that can receive this bundle — required
--max-app-versionMaximum app version that can receive this bundle — required
--bundle-dirPath to bundle directory (default: ./bundle)
--rolloutRollout percentage 0–100 (default: 100)
--dry-runValidate and package without uploading
koolbase bundle deploy   --app d2bc2c2c-fb42-4891-b758-45e48a1cd871   --platform ios   --channel stable   --base-app-version 1.2.0   --max-app-version 1.2.99   --bundle-dir ./bundle   --rollout 10
koolbase bundle list

List all bundles for an app showing version, status, platform, channel, rollout percentage, size, and created time.

--appProject (app) ID — required
koolbase bundle list --app d2bc2c2c-fb42-4891-b758-45e48a1cd871
koolbase bundle recall

Recall a published bundle. Devices on this bundle will revert to the previous version on their next cold launch.

--appProject (app) ID — required
--bundleBundle ID to recall — required
koolbase bundle recall   --app d2bc2c2c-fb42-4891-b758-45e48a1cd871   --bundle bndl_fd05c5d5-5a71-465e-8d1d-0108cc02b92c