mcpField
D
databricks-core

databricks-core

github.com/databricks云与 DevOps3731.8k 次安装今天更新
代码仓库

关于 databricks-core

用于 Databricks CLI、身份验证、配置文件和数据探索的核心技能。它指导环境设置与配置文件选择,并将特定产品任务和自然语言数据发现引导至专用 Databricks 技能。

主要功能

  1. 01检查并更新 CLI 前置条件
  2. 02指导 CLI 身份验证
  3. 03要求用户选择配置文件
  4. 04探索架构并执行 SQL 查询
  5. 05将任务转交专用 Databricks 技能

适用场景

  1. 01设置或排查 Databricks CLI 访问
  2. 02执行操作前选择工作区配置文件
  3. 03查看表架构并查询数据

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/databricks/databricks-agent-skills --skill databricks-core

安装后在 Claude Code 中输入/databricks-core确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

databricks-cli-auth.md
databricks-cli-install.md
manual-data-exploration.md
agents/
openai.yaml
assets/
databricks.svg

详细介绍

Databricks

Databricks CLI、身份验证和数据探索的核心技能。

产品技能

针对特定产品,请使用专用技能:

  • databricks-jobs - Lakeflow Jobs 开发与部署
  • databricks-pipelines - Lakeflow Spark Declarative Pipelines(批处理和流式数据管道)
  • databricks-serverless - 作业和管道的计算选型(无服务器、性能模式、经典模式回退)
  • databricks-apps - 全栈 TypeScript 应用开发与部署
  • databricks-lakebase - Lakebase Postgres Autoscaling 项目管理
  • databricks-model-serving - Model Serving 端点管理与推理

对于数据发现、探索和查询生成——查找表、回答有关数据的自然语言问题或生成 SQL——请使用 databricks-data-discovery(它会先询问 Genie One,再回退到手动 探索)。如果尚未安装,请使用以下 AI 工具命令以及 手动数据探索。

前提条件

  1. 已安装 CLI 且为最新版本:CLI 必须为 >= v1.0.0。仅仅安装了 CLI,但 版本过旧,并不算“够用”——必须升级,不能绕过。

    • 运行 CLI 安装中的最低版本检查。 如果检查结果为 UPGRADE 或 INSTALL:立即停止,并按照该参考文件进行升级或安装——不要 继续操作,也不要告诉用户他们的 CLI 没问题。
    • 如果其他技能将你引导至此处进行升级(它需要比 v1.0.0 更新的 CLI,例如 databricks-setup-local 需要 v1.16.0),则该技能已检测到版本差距。通过 v1.0.0 最低版本检查还不够:请按照更新/修复流程安装最新稳定版,以满足任一技能的最低版本要求。
    • 注意:在沙盒环境(Cursor IDE、容器)中,安装命令会在工作区之外写入内容,因此可能会被阻止。请向用户提供安装命令,并请他们在自己的终端中运行。
    • 例外: 如果 CLI 安装被阻止(沙盒容器、受限环境),请询问用户是否要在 shell 中存在 DATABRICKS_HOST 和 DATABRICKS_TOKEN 环境变量时,改用直接调用 REST API。请参阅 Databricks REST API 文档。
  2. 已通过身份验证:databricks auth profiles

配置文件选择 - 至关重要

绝不要自动选择配置文件。

  1. 列出配置文件:databricks auth profiles
  2. 向用户展示所有配置文件及其工作区 URL
  3. 让用户选择(即使只有一个配置文件)
  4. 根据需要提供创建新配置文件的选项

Claude Code - 重要

每条 Bash 命令都会在独立的 shell 会话中运行。

# 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!

数据探索 — 使用 AI 工具

请使用这些工具,而不要手动浏览目录/架构/表:

# 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>

名称必须原样使用。 完全按照给定名称使用目录/架构/表名——绝不要将连字符改为下划线,也不要以其他方式规范化名称。在 SQL 中,对于包含特殊字符的名称部分,请使用反引号括起来(例如 `my-catalog`.schema.table);不加引号的连字符会导致解析错误。

这些命令是执行已知 SQL 和数据剖析的一等工具——不需要 Genie。对于自然语言数据问题、查找无法确定位置的数据,或根据问题生成查询,如果已安装,请优先使用 databricks-data-discovery 技能(见上文)。有关完整的命令列表、引号规则和故障排除,请参阅手动数据探索。

快速参考

⚠️ 至关重要:某些命令使用位置参数,而不是标志

# 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>

故障排除

错误解决方案
cannot configure default credentials使用 --profile 标志,或先进行身份验证
configuration does not support OAuth tokens此命令需要 OAuth(例如,databricks apps logs)。使用 databricks auth login --host <URL> --profile <PROFILE> 重新进行身份验证。参阅 CLI 身份验证。
PERMISSION_DENIED检查工作区/UC 权限
RESOURCE_DOES_NOT_EXIST验证资源名称/ID 和配置文件

按任务分类的必读内容

任务继续之前请先阅读
首次设置CLI 安装
身份验证问题/新工作区CLI 身份验证
浏览表/架构手动数据探索(或使用已安装的 databricks-data-discovery)
部署作业/管道使用 /databricks-dabs

参考指南

评论

支持 Markdown