databricks-dabs — Claude Code skill: ship Databricks bundles
Teaches the agent to build, validate and deploy Declarative Automation Bundles in Databricks, covering jobs, pipelines, dashboards and apps.
npx skills add databricks/databricks-agent-skills --skill databricks-dabs -a claude-codeWhat databricks-dabs does
This skill covers bundle work in Databricks from start to finish. Its reference files explain how a bundle is laid out and how databricks.yml fits together, how Spark Declarative Pipelines are configured, what schema SQL alerts expect (the API differs from other resources), how deploys and runs are done plus where logs live, and which permission levels each resource type takes. File naming follows one pattern: <name>.<resource_type>.yml. Edits to YAML keep the user's comments and structure intact.
Apps carry an extra rule. Before validating a bundle that touches an app, the agent rereads the YAML and checks the names: no bare ${bundle.target}, no short_name, no hardcoded string for a development app. On Databricks CLI 0.270.0 or newer the default pairs an app prefix with ${workspace.current_user.domain_friendly_name}; production overrides that with a stable name. Then databricks bundle validate --strict --target <target> --output json runs, and every resolved name must stay lowercase, limited to digits and hyphens, and no longer than 30 characters. A bad name, a collision after normalization, or several non-production targets in one workspace means writing a shorter distinct value into .databricks/bundle/<target>/variable-overrides.json and validating again.
Passing validation proves less than it seems. Not every invalid or unnamespaced app name is caught by the check, which is why the manual pass comes first.
What it helps with
- scaffold a new DABs bundle
- validate
databricks.ymland resources after edits - split dev and prod configuration into targets
- land an app name that is unique and under the length limit
- debug a bundle validation or deploy failure
Example prompts for the agent
- Create a DABs bundle with one job and a schedule, put the config in
databricks.yml - Validate the bundle for prod with
databricks bundle validate --strict --target prod - Add a SQL alert to the bundle following the alert schema reference
How to install databricks-dabs
1Skills CLI (Vercel)
npx skills add databricks/databricks-agent-skills --skill databricks-dabs -a claude-code2Manually: put the files in place
~/.claude/skills/databricks-dabs/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/databricks-dabs/
1Skills CLI (Vercel)
npx skills add databricks/databricks-agent-skills --skill databricks-dabs -a codex2Manually: put the files in place
.agents/skills/databricks-dabs/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add databricks/databricks-agent-skills --skill databricks-dabs -a cursor2Manually: put the files in place
.cursor/skills/databricks-dabs/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install databricks/databricks-agent-skills databricks-dabs2Manually: put the files in place
.github/skills/databricks-dabs/SKILL.md1Skills CLI (Vercel)
npx skills add databricks/databricks-agent-skills --skill databricks-dabs -a gemini-cli2Platform CLI
gemini skills install https://github.com/databricks/databricks-agent-skills --path skills/databricks-dabsManually: put the files in place
.devin/skills/databricks-dabs/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add databricks/databricks-agent-skills --skill databricks-dabs -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about databricks-dabs
How do I install databricks-dabs in Claude Code?
Run npx skills add databricks/databricks-agent-skills --skill databricks-dabs -a claude-code. The skill lands at ~/.claude/skills/databricks-dabs/SKILL.md.
What does databricks-dabs do?
It guides the agent through creating, configuring, validating and deploying DABs bundles with jobs, pipelines, dashboards, alerts, volumes and apps.
Does the skill work the same on older Databricks CLI versions?
No. Before 0.270.0 the app name variable has no default, so every developer has to set app_name explicitly instead of relying on the generated value.