@embrasure/cli
v0.1.5
Published
Set up Embrasure MCP for Claude Code, Codex, Cursor, and data agents.
Readme
Embrasure CLI
Terminal tools for Embrasure pipeline work: YAML plans, dbt review runs, scheduled pipeline health, diagnosis, and PR handoff.
Install
Public npm distribution:
npm install -g @embrasure/cliDogfood fallback from this repo:
pnpm --filter @embrasure/cli build
node apps/cli/dist/index.js --helpRelease
Publish the runtime dependency first, then the CLI:
pnpm --filter @embrasure/api-client publish --access public
pnpm --filter @embrasure/cli publish --access publicThe published packages only include built dist files and package metadata, not the TypeScript sources, tests, or monorepo.
First Run
Run the auth command and finish sign-in in the browser:
embrasure auth
embrasure doctor
embrasure pipeline init --dbtIf you are already signed in, embrasure auth shows the saved account, API, workspace, token fingerprint, and logout command.
If you need a manual token path:
embrasure auth token set <token>
embrasure workspaces use <workspace_id>CLI config is stored in ~/.embrasure/config.json with file mode 0600. The CLI masks token values in normal output.
On macOS and Linux with libsecret, the CLI stores browser-session credentials in the system credential store and keeps only non-secret session metadata in the config file. Browser-session access and refresh tokens must both be stored in the system credential store. Manually supplied static tokens may still fall back to the local config file when no supported credential store is available.
When a browser-backed session is saved, it is used before EMBRASURE_API_TOKEN; the environment token is a fallback for standalone/debug use, while --token remains the explicit per-command override.
Use embrasure auth logout to remove the saved local token.
Maintenance
embrasure doctor
embrasure update
embrasure config list
embrasure completion install zshdoctor checks for a newer npm release and prints the update command when one exists. Update checks are skipped in CI and when EMBRASURE_SKIP_UPDATE_CHECK=1 or NO_UPDATE_NOTIFIER=1 is set.
Pipeline Workflow
embrasure pipeline validate -f embrasure.pipeline.yaml
embrasure pipeline explain -f embrasure.pipeline.yaml
embrasure pipeline plan -f embrasure.pipeline.yaml
embrasure pipeline apply -f embrasure.pipeline.yaml --watchFor Git-backed dbt projects, changes are staged in Embrasure first. Open a PR explicitly:
embrasure pipeline pr --project <project_id>Metabase Migration
Audit an extracted Metabase serialization export before importing anything:
embrasure metabase audit --path ./metabase-export --report metabase-migration-report.jsonImport supported artifacts into the current Embrasure workspace. Imports are dry-run by default; pass --yes to create dashboards, verified queries, and context seeds.
embrasure metabase import \
--path ./metabase-export \
--connector <connector_id> \
--semantic-model <semantic_model_id> \
--report metabase-migration-report.json \
--yesFor Metabase instances without a local serialization export, use REST extraction:
METABASE_API_KEY=... embrasure metabase audit --metabase-url https://metabase.example.comThe migration tool preserves native SQL cards, maps common SQL-backed dashboard cards to Embrasure dashboard specs, writes Metabase models/metrics/glossary/table metadata as context seeds, and reports MBQL/query-builder cards or unsupported visualizations with manual follow-up reasons.
