Skip to content

CLI Cheatsheet

Reference index of every bifrost CLI command — auth, sync, entity mutations, imports, and direct execution.

The bifrost CLI is the canonical surface for authenticating, syncing local files, mutating platform entities, and invoking workflows. Run bifrost help for the live command list or bifrost <command> --help for any command’s full flag set. The tables below cover every command in the current CLI surface.

Refs (organization, role, integration, workflow, etc.) accept either a UUID or a name. Workflow refs additionally accept the path::func locator. Ambiguous names fail loudly with the candidate list.

CommandDescriptionExample
bifrost login [--url <api-url>]Authenticate via device authorization (browser flow).bifrost login --url https://app.gobifrost.com
bifrost login --no-browserSame flow but print the URL instead of opening it.bifrost login -n
bifrost logoutRemove the stored credential file.bifrost logout

Tokens land in ~/.bifrost/credentials.json and refresh automatically. BIFROST_DEV_URL sets the default --url.

CommandDescriptionExample
bifrost sync [path]Bidirectional TUI: review and choose push/pull/delete/skip per file.bifrost sync
bifrost push [path]Alias for sync defaulting to push direction.bifrost push apps/my-app
bifrost pull [path]Alias for sync defaulting to pull direction.bifrost pull
bifrost watch [path]Watch the workspace and auto-push on save. Requires a .bifrost/ workspace.bifrost watch
... --mirrorMirror mode: also delete platform files that are missing locally.bifrost push apps/my-app --mirror
... --validateRun app validation after push.bifrost push apps/my-app --validate
... --forceSkip confirmation prompts and use default actions.bifrost sync --force

Watch only syncs code (apps/, workflows/*.py); it does not push .bifrost/ manifest content. Use bifrost export/import to move manifest state across environments.

CommandDescriptionExample
bifrost workflows listList accessible workflows.bifrost workflows list
bifrost workflows get <ref>Show a workflow by UUID, name, or path::func.bifrost workflows get billing.run
bifrost workflows register --path <file> --function-name <name> [--org <ref>]Index a @workflow/@tool/@data_provider function so the platform can execute it.bifrost workflows register --path workflows/billing.py --function-name run
bifrost workflows update <ref> [--name ...] [--description ...] ...Patch editable workflow fields.bifrost workflows update billing.run --description "Run billing"
bifrost workflows delete <ref> [--force]Delete the workflow’s source function. --force bypasses dependent-form/agent guard.bifrost workflows delete billing.run
bifrost workflows grant-role <ref> <role>Grant a role access to a workflow.bifrost workflows grant-role billing.run analyst
bifrost workflows revoke-role <ref> <role>Revoke a role’s access to a workflow.bifrost workflows revoke-role billing.run analyst
bifrost workflows list-orphanedList workflows whose backing file or function is missing.bifrost workflows list-orphaned
bifrost workflows replace <ref> --path <file> --function-name <name> [--allow-type-change]Repoint an orphaned workflow at a new file/function.bifrost workflows replace billing.run --path workflows/billing-v2.py --function-name run
CommandDescriptionExample
bifrost forms listList forms.bifrost forms list
bifrost forms get <ref>Show a form by UUID or name.bifrost forms get onboarding
bifrost forms create --name ... --workflow <ref> [--form-schema @file.yaml] ...Create a form. --form-schema accepts JSON or @path.bifrost forms create --name onboarding --workflow onboarding.run --form-schema @form.yaml
bifrost forms update <ref> [--name ...] [--form-schema ...] ...Patch a form.bifrost forms update onboarding --description "New hire intake"
bifrost forms delete <ref>Soft-delete a form (sets inactive).bifrost forms delete onboarding
CommandDescriptionExample
bifrost agents listList AI agents.bifrost agents list
bifrost agents get <ref>Show an agent by UUID or name.bifrost agents get triage
bifrost agents create --name ... --system-prompt ... [--tools @tools.yaml] ...Create an agent.bifrost agents create --name triage --system-prompt "You are..."
bifrost agents update <ref> [--system-prompt ...] [--tools ...] ...Patch an agent’s prompt, tools, or settings.bifrost agents update triage --temperature 0.2
bifrost agents delete <ref>Delete an agent.bifrost agents delete triage
CommandDescriptionExample
bifrost apps listList applications.bifrost apps list
bifrost apps get <ref>Show an app by slug, UUID, or name.bifrost apps get billing-dashboard
bifrost apps create --name ... --repo-path apps/my-app [--deps @package.json] ...Create an app, optionally seeding npm deps.bifrost apps create --name billing --repo-path apps/billing --deps @package.json
bifrost apps update <ref> [--name ...] [--access-level ...] ...Patch app metadata directly (no draft step).bifrost apps update billing --access-level authenticated
bifrost apps set-deps <ref> --deps <json or @file>Replace the app’s npm dependencies.bifrost apps set-deps billing --deps @package.json
bifrost apps replace <ref> --repo-path <path> [--force]Repoint the app’s source directory.bifrost apps replace billing --repo-path apps/billing-v2
bifrost apps delete <ref>Delete an app.bifrost apps delete billing
CommandDescriptionExample
bifrost configs listList configuration entries.bifrost configs list
bifrost configs get <ref>Show one entry by UUID or key.bifrost configs get external_api_key
bifrost configs set <key> --value <val> [--organization <ref>] [--type secret|string|...]Idempotent upsert by (key, organization).bifrost configs set api_key --value secret123 --type secret
bifrost configs create --key ... --value ... [--type ...] [--organization ...]Create a new config row.bifrost configs create --key region --value us-east-1
bifrost configs update <ref> [--value ...] [--type ...] [--description ...]Update existing config. Omitted --value preserves the stored value.bifrost configs update region --value us-west-2
bifrost configs delete <ref> [--confirm]Delete a config. --confirm required for secret type.bifrost configs delete api_key --confirm
CommandDescriptionExample
bifrost integrations listList integrations.bifrost integrations list
bifrost integrations get <ref>Show an integration with mappings + OAuth config.bifrost integrations get halopsa
bifrost integrations create --name ... [--config-schema @schema.yaml] ...Create an integration.bifrost integrations create --name halopsa --config-schema @halopsa.yaml
bifrost integrations update <ref> [--config-schema ...] [--force-remove-keys]Update; refuses key removal without --force-remove-keys (cascades).bifrost integrations update halopsa --config-schema @halopsa-v2.yaml
bifrost integrations add-mapping <integration-ref> --organization <ref> --entity-id <id> [--oauth-token-id ...]Bind an integration to an org with the external entity_id.bifrost integrations add-mapping halopsa --organization acme --entity-id 12345
bifrost integrations update-mapping <integration-ref> --organization <ref> [--entity-id ...] [--oauth-token-id ...]Update an existing mapping.bifrost integrations update-mapping halopsa --organization acme --entity-id 67890

Event sources and subscriptions. There is no top-level events delete — use bifrost api DELETE /api/events/... for removal.

CommandDescriptionExample
bifrost events list-sourcesList event sources.bifrost events list-sources
bifrost events get-source <ref>Show an event source by UUID or name.bifrost events get-source ticket-created
bifrost events create-source --name ... --source-type ... [--hmac-secret ...]Create an event source.bifrost events create-source --name ticket-created --source-type webhook
bifrost events update-source <ref> [--name ...] [--hmac-secret ...]Update an event source.bifrost events update-source ticket-created --hmac-secret @secret.txt
bifrost events list-subscriptions <source-ref>List subscriptions on a source.bifrost events list-subscriptions ticket-created
bifrost events get-subscription <source-ref> <subscription-id>Show one subscription.bifrost events get-subscription ticket-created <uuid>
bifrost events subscribe <source-ref> (--workflow <ref> | --agent <ref>) [--filter ...]Subscribe a workflow or agent to a source.bifrost events subscribe ticket-created --workflow process-ticket
bifrost events update-subscription <source-ref> <subscription-id> [--filter ...]Update filter/delivery fields. Target type/workflow/agent are immutable — recreate to change.bifrost events update-subscription ticket-created <uuid> --filter '{"priority":"high"}'
CommandDescriptionExample
bifrost tables listList tables.bifrost tables list
bifrost tables get <ref>Show a table by UUID or name.bifrost tables get clients
bifrost tables create --name ... [--description ...]Create a table.bifrost tables create --name clients
bifrost tables update <ref> [--name ...] [--description ...]Update a table. Renaming warns; grep workflows/apps first.bifrost tables update clients --description "Active clients"
bifrost tables delete <ref>Delete the table and all its documents (irreversible).bifrost tables delete clients
CommandDescriptionExample
bifrost orgs listList organizations.bifrost orgs list
bifrost orgs get <ref>Show an organization.bifrost orgs get acme
bifrost orgs create --name ...Create an organization.bifrost orgs create --name acme
bifrost orgs update <ref> [--name ...]Update organization fields.bifrost orgs update acme --name acme-corp
bifrost orgs delete <ref>Soft-delete an organization.bifrost orgs delete acme
bifrost roles listList roles.bifrost roles list
bifrost roles get <ref>Show a role.bifrost roles get analyst
bifrost roles create --name ... [--description ...]Create a role.bifrost roles create --name analyst
bifrost roles update <ref> [--name ...] [--description ...]Update a role.bifrost roles update analyst --description "Read-only access"
bifrost roles delete <ref>Delete a role.bifrost roles delete analyst

.bifrost/ is export-only — these commands are how you move state between environments.

CommandDescriptionExample
bifrost export <out-dir>Full-fidelity workspace dump (manifest + workflows/ + apps/).bifrost export ./snapshot
bifrost export <out-dir> --portableSame dump with env-specific fields scrubbed; writes bundle.meta.yaml.bifrost export ./bundle --portable
bifrost export <out-dir> --workspace <path>Use a non-cwd workspace as the source.bifrost export ./bundle --workspace ~/code/bifrost
bifrost import <bundle-dir>Apply a bundle with the interactive review TUI.bifrost import ./bundle
bifrost import <bundle-dir> --org <uuid>Required when applying a portable bundle (--role-mode name is the default).bifrost import ./bundle --org 1234-...
bifrost import <bundle-dir> --role-mode name|uuidHow to interpret role refs in the bundle.bifrost import ./bundle --org 1234-... --role-mode name
bifrost import <bundle-dir> --dry-runPrint the diff and exit.bifrost import ./bundle --dry-run
bifrost import <bundle-dir> --forceSkip the review TUI; apply everything.bifrost import ./bundle --force
bifrost import <bundle-dir> --delete-removedDelete entities present in the target but absent from the bundle.bifrost import ./bundle --delete-removed
CommandDescriptionExample
bifrost run <file> -w <name> [-p '<json>']Run a @workflow-decorated function locally; prints JSON.bifrost run workflow.py -w greet -p '{"name":"World"}'
bifrost run <file> --interactiveOpen a browser-based parameter form against the platform.bifrost run workflow.py --interactive
bifrost run <file> -w <name> --org <uuid>Run scoped to a specific organization.bifrost run workflow.py -w greet --org 1234-...
bifrost run <file> -w <name> --verboseSurface decorator warnings and SDK logs.bifrost run workflow.py -w greet -v
bifrost api <METHOD> <endpoint> [json or @file]Authenticated request to any API endpoint.bifrost api GET /api/workflows
bifrost api POST <endpoint> @body.jsonSend a JSON body from a file.bifrost api POST /api/files/push @payload.json

Operations against the platform-managed git working tree (/tmp/git).

CommandDescription
bifrost git fetchRegenerate manifest from DB, fetch remote, show status.
bifrost git statusShow changed files and ahead/behind counts.
bifrost git commit -m "<msg>"Regenerate manifest, stage, preflight, commit.
bifrost git pushPull remote, push local, import entities (deploy).
bifrost git diff <path>Show file diff.
bifrost git resolve <path>=keep_local|keep_remote [...]Resolve merge conflicts.
bifrost git discard <path> [...]Discard working-tree changes.
CommandDescriptionExample
bifrost --version, bifrost -VPrint the installed CLI version.bifrost --version
bifrost help, bifrost --helpTop-level help.bifrost help
bifrost <command> --helpPer-command help (full flag set).bifrost forms create --help
bifrost migrate-imports [path] [--dry-run] [--yes]Rewrite legacy from bifrost import ... lines for components/lucide/router.bifrost migrate-imports apps/my-app --dry-run