databricks-core
$
npx mdskill add databricks/databricks-agent-skills/databricks-coreCore skill for Databricks CLI, authentication, and data exploration.
SKILL.md
.github/skills/databricks-coreView on GitHub ↗
--- name: "databricks-core" description: "Databricks CLI operations: auth, profiles, data exploration, and bundles. Contains up-to-date guidelines for Databricks-related CLI tasks." compatibility: Requires databricks CLI (>= v0.292.0) metadata: version: "0.1.0" --- # Databricks Core skill for Databricks CLI, authentication, and data exploration. ## Product Skills For specific products, use dedicated skills: - **databricks-jobs** - Lakeflow Jobs development and deployment - **databricks-pipelines** - Lakeflow Spark Declarative Pipelines (batch and streaming data pipelines) - **databricks-apps** - Full-stack TypeScript app development and deployment - **databricks-lakebase** - Lakebase Postgres Autoscaling project management - **databricks-model-serving** - Model Serving endpoint management and inference ## Prerequisites 1. **CLI installed**: Run `databricks --version` to check. - **If the CLI is missing or outdated (< v0.292.0): STOP. Do not proceed or work around a missing CLI.** - **Read the [CLI Installation](databricks-cli-install.md) reference file and follow the instructions to guide the user through installation.** - Note: In sandboxed environments (Cursor IDE, containers), install commands write outside the workspace and may be blocked. Present the install command to the user and ask them to run it in their own terminal. - **Exception:** If CLI installation is blocked (sandboxed containers, restricted environments), ask the user whether to fall back to direct REST API calls using `DATABRICKS_HOST` and `DATABRICKS_TOKEN` environment variables if present in the shell. See the [Databricks REST API docs](https://docs.databricks.com/api/workspace/introduction). 2. **Authenticated**: `databricks auth profiles` - If not: see [CLI Authentication](databricks-cli-auth.md) ## Profile Selection - CRITICAL **NEVER auto-select a profile.** 1. List profiles: `databricks auth profiles` 2. Present ALL profiles to user with workspace URLs 3. Let user choose (even if only one exists) 4. Offer to create new profile if needed ## Claude Code - IMPORTANT Each Bash command runs in a **separate shell session**. ```bash # WORKS: --profile flag databricks apps list --profile my-workspace # WORKS: chained with && export DATABRICKS_CONFIG_PROFILE=my-workspace && databricks apps list # DOES NOT WORK: separate commands export DATABRICKS_CONFIG_PROFILE=my-workspace databricks apps list # profile not set! ``` ## Data Exploration — Use AI Tools **Use these instead of manually navigating catalogs/schemas/tables:** ```bash # discover table structure (columns, types, sample data, stats) databricks experimental aitools tools discover-schema catalog.schema.table --profile <PROFILE> # run ad-hoc SQL queries databricks experimental aitools tools query "SELECT * FROM table LIMIT 10" --profile <PROFILE> # find the default warehouse databricks experimental aitools tools get-default-warehouse --profile <PROFILE> ``` See [Data Exploration](data-exploration.md) for details. ## Quick Reference **⚠️ CRITICAL: Some commands use positional arguments, not flags** ```bash # current user databricks current-user me --profile <PROFILE> # list resources databricks apps list --profile <PROFILE> databricks jobs list --profile <PROFILE> databricks clusters list --profile <PROFILE> databricks warehouses list --profile <PROFILE> databricks pipelines list --profile <PROFILE> databricks serving-endpoints list --profile <PROFILE> # ⚠️ Unity Catalog — POSITIONAL arguments (NOT flags!) databricks catalogs list --profile <PROFILE> # ✅ CORRECT: positional args databricks schemas list <CATALOG> --profile <PROFILE> databricks tables list <CATALOG> <SCHEMA> --profile <PROFILE> databricks tables get <CATALOG>.<SCHEMA>.<TABLE> --profile <PROFILE> # ❌ WRONG: these flags/commands DON'T EXIST # databricks schemas list --catalog-name <CATALOG> ← WILL FAIL # databricks tables list --catalog <CATALOG> ← WILL FAIL # databricks sql-warehouses list ← doesn't exist, use `warehouses list` # databricks execute-statement ← doesn't exist, use `experimental aitools tools query` # databricks sql execute ← doesn't exist, use `experimental aitools tools query` # When in doubt, check help: # databricks schemas list --help # get details databricks apps get <NAME> --profile <PROFILE> databricks jobs get --job-id <ID> --profile <PROFILE> databricks clusters get --cluster-id <ID> --profile <PROFILE> # bundles databricks bundle init --profile <PROFILE> databricks bundle validate --profile <PROFILE> databricks bundle deploy -t <TARGET> --profile <PROFILE> databricks bundle run <RESOURCE> -t <TARGET> --profile <PROFILE> ``` ## Troubleshooting | Error | Solution | |-------|----------| | `cannot configure default credentials` | Use `--profile` flag or authenticate first | | `configuration does not support OAuth tokens` | The command requires OAuth (e.g., `databricks apps logs`). Re-authenticate with `databricks auth login --host <URL> --profile <PROFILE>`. See [CLI Authentication](databricks-cli-auth.md). | | `PERMISSION_DENIED` | Check workspace/UC permissions | | `RESOURCE_DOES_NOT_EXIST` | Verify resource name/id and profile | ## Required Reading by Task | Task | READ BEFORE proceeding | |------|------------------------| | First time setup | [CLI Installation](databricks-cli-install.md) | | Auth issues / new workspace | [CLI Authentication](databricks-cli-auth.md) | | Exploring tables/schemas | [Data Exploration](data-exploration.md) | | Deploying jobs/pipelines | Use `/databricks-dabs` | ## Reference Guides - [CLI Installation](databricks-cli-install.md) - [CLI Authentication](databricks-cli-auth.md) - [Data Exploration](data-exploration.md)
More from databricks/databricks-agent-skills
- databricks-agent-bricksCreate Agent Bricks: Knowledge Assistants (KA) for document Q&A and Supervisor Agents for multi-agent orchestration (MAS).
- databricks-ai-functionsUse Databricks built-in AI Functions (ai_classify, ai_extract, ai_summarize, ai_mask, ai_translate, ai_fix_grammar, ai_gen, ai_analyze_sentiment, ai_similarity, ai_parse_document, ai_query, ai_forecast) to add AI capabilities directly to SQL and PySpark pipelines without managing model endpoints. Also covers document parsing and building custom RAG pipelines (parse → chunk → index → query).
- databricks-aibi-dashboardsCreate Databricks AI/BI dashboards. Must use when creating, updating, or deploying Lakeview dashboards as Databricks Dashboard have a unique json structure. CRITICAL: You MUST test ALL SQL queries via CLI BEFORE deploying. Follow guidelines strictly.
- databricks-appsBuild apps on Databricks Apps platform. Use when asked to create dashboards, data apps, analytics tools, or visualizations. Evaluates data access patterns (analytics vs Lakebase synced tables) before scaffolding. Invoke BEFORE starting implementation.
- databricks-apps-pythonBuilds Databricks applications. Prefers AppKit (TypeScript + React SDK) for new apps; falls back to Python frameworks (Dash, Streamlit, Gradio, Flask, FastAPI, Reflex) when Python is required. Handles OAuth authorization, app resources, SQL warehouse and Lakebase connectivity, model serving, foundation model APIs, and deployment. Use when building web apps, dashboards, ML demos, or REST APIs for Databricks, or when the user mentions AppKit, Streamlit, Dash, Gradio, Flask, FastAPI, Reflex, or Databricks app.
- databricks-dabsCreate, configure, validate, deploy, run, and manage DABs — Declarative Automation Bundles (formerly Databricks Asset Bundles) — for Databricks resources including dashboards, jobs, pipelines, alerts, volumes, and apps
- databricks-dbsql>-
- databricks-docsDatabricks documentation reference via llms.txt index. Use when other skills do not cover a topic, looking up unfamiliar Databricks features, or needing authoritative docs on APIs, configurations, or platform capabilities.
- databricks-execution-compute>-
- databricks-icebergApache Iceberg tables on Databricks — Managed Iceberg tables, External Iceberg Reads (fka Uniform), Compatibility Mode, Iceberg REST Catalog (IRC), Iceberg v3, Snowflake interop, PyIceberg, OSS Spark, external engine access and credential vending. Use when creating Iceberg tables, enabling External Iceberg Reads (uniform) on Delta tables (including Streaming Tables and Materialized Views via compatibility mode), configuring external engines to read Databricks tables via Unity Catalog IRC, integrating with Snowflake catalog to read Foreign Iceberg tables