Skip to content

Commit fe39af5

Browse files
address Dustin's review
- Drop the -experimental suffix model entirely. Skills install under their plain names; the install dir is `~/.claude/skills/<name>/`. Stable+experimental collisions are resolved upstream by renaming (not by suffixing), and the manifest generator raises if a collision shows up. - Update README install instructions to the new top-level `databricks aitools install [name] --experimental` surface (was the legacy `databricks experimental aitools skills install ...` path). - Trim the experimental/README "Provenance & sync model" section per Dustin's L113/L126 asks — the long-term deprecation plan lives in ai-dev-kit when it's ready, not here. - Apply Dustin's L78 wording suggestion for the "previously experimental" callout. - Add @cankoklu-db and @yogesh-dbx as Code Owners on /experimental/. - Fix the databricks-pipelines manifest description: "Databricks Spark Declarative Pipelines (SDP) for ETL and streaming". - Drop the broken n8n-to-databricks cross-reference in databricks-ai-functions/4-document-processing-pipeline.md (the referenced skill does not exist). Paired with the cli-side suffix removal in databricks/cli#5243. Co-authored-by: Isaac
1 parent d3bed7c commit fe39af5

6 files changed

Lines changed: 23 additions & 68 deletions

File tree

.github/CODEOWNERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,6 @@
1313
# Required-Code-Owner-Review branch protection alongside the d-a-s
1414
# maintainers. All confirmed Databricks employees via Slack lookup at
1515
# import time (Field Engineering / SSA / Strategy & Execution).
16-
/experimental/ @lennartkats-db @simonfaltum @databricks/eng-apps-devex @calreynolds @dustinvannoy-db @malcolndandaro @auschoi96 @jacksandom @QuentinAmbard @NatyraB @jiteshsoni @scottDBX1886 @alexmillerdb
16+
/experimental/ @lennartkats-db @simonfaltum @databricks/eng-apps-devex @calreynolds @dustinvannoy-db @malcolndandaro @auschoi96 @jacksandom @QuentinAmbard @NatyraB @jiteshsoni @scottDBX1886 @alexmillerdb @cankoklu-db @yogesh-dbx
1717

1818
/.github/CODEOWNERS @lennartkats-db @simonfaltum @fjakobs

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,10 @@ on a **best-effort basis**.
4747
- Experimental skills are **not officially supported** — they may be used, but
4848
do not follow the same review / quality bar as the stable skills under
4949
[`skills/`](./skills/).
50-
- They are **not installed by default** by `databricks experimental aitools
51-
skills install`. Pass `--experimental` to install all of them, or install
52-
a specific one by name (with the `-experimental` suffix and the flag —
53-
e.g. `databricks-iceberg-experimental --experimental`).
50+
- They are **not installed by default** by `databricks aitools install`.
51+
Pass `--experimental` to install all of them, or install a specific one
52+
by name (with the `--experimental` flag — e.g. `databricks aitools install
53+
databricks-iceberg --experimental`).
5454
- See [`experimental/README.md`](./experimental/README.md) for the full list
5555
and caveats.
5656

experimental/README.md

Lines changed: 11 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,8 @@
88
> - They do not follow the same review / quality bar as the skills in
99
> [`../skills/`](../skills/).
1010
> - They may be out of date relative to upstream `ai-dev-kit`.
11-
> - The on-disk install path always carries a `-experimental` suffix so
12-
> experimental skills never collide with stable skills of the same name
13-
> (see the install-path note below).
14-
> - They are not installed by `databricks experimental aitools skills install`
15-
> by default — you have to opt in (see the root README).
11+
> - They are not installed by `databricks aitools install` by default —
12+
> you have to opt in (see the root README).
1613
>
1714
> File issues against this directory in this repo; do not file issues against
1815
> `ai-dev-kit` for skills installed via `databricks-agent-skills`.
@@ -29,17 +26,12 @@ These experimental skills are **not** installed by default. To install them via
2926

3027
```bash
3128
# Install all experimental skills at once
32-
databricks experimental aitools skills install --experimental
29+
databricks aitools install --experimental
3330

34-
# Install a single experimental skill by name (note the -experimental suffix)
35-
databricks experimental aitools skills install databricks-iceberg-experimental --experimental
31+
# Install a single experimental skill by name
32+
databricks aitools install databricks-iceberg --experimental
3633
```
3734

38-
The names in this directory don't carry the `-experimental` suffix — that's
39-
added at install time so the on-disk skills directory unambiguously
40-
distinguishes experimental from stable. e.g. `databricks-iceberg` in this
41-
repo installs to `~/.claude/skills/databricks-iceberg-experimental/`.
42-
4335
See the root [README](../README.md) for details on the stable install path.
4436

4537
## Available Skills
@@ -75,52 +67,18 @@ See the root [README](../README.md) for details on the stable install path.
7567
> - **Lakebase Postgres** (projects, branching, synced tables, autoscaling) — use stable [`databricks-lakebase`](../skills/databricks-lakebase/)
7668
> - **CLI auth / profiles / workspace config** — use stable [`databricks-core`](../skills/databricks-core/)
7769
>
78-
> Previously experimental copies of these (`databricks-bundles`, `databricks-lakebase-autoscale`, `databricks-config`) were dropped — they duplicated the stable skills without adding new content.
70+
> Previously experimental copies of these (`databricks-bundles`, `databricks-lakebase-autoscale`, `databricks-config`) were already merged with the stable skills.
7971
8072
### 📚 Reference
8173
- **databricks-docs** - Documentation index via llms.txt
8274

83-
## Provenance & sync model
75+
## Provenance
8476

8577
These skills are imported as a snapshot from
8678
[`databricks-solutions/ai-dev-kit/databricks-skills/`](https://github.com/databricks-solutions/ai-dev-kit/tree/main/databricks-skills).
8779

8880
**Source SHA**: [`7b07f18`](https://github.com/databricks-solutions/ai-dev-kit/commit/7b07f18b6efb7ff0ac011d3fe81b435eb3cd793a)
89-
on the `experimental` branch of `databricks-solutions/ai-dev-kit`
90-
the merge commit of [a-d-k PR #533](https://github.com/databricks-solutions/ai-dev-kit/pull/533)
91-
into `experimental`. The PR #533 change set, now part of `experimental`:
92-
93-
- `databricks-app-python``databricks-apps-python` rename (folder,
94-
baselines, manifests, install scripts, cross-skill mentions) so it
95-
does not collide with d-a-s's own `databricks-apps`. The other
96-
name collisions from this import were resolved by merging or
97-
dropping the experimental copy: `databricks-jobs` was merged into
98-
the stable skill (TODO #1a), and `databricks-model-serving` was
99-
dropped from the import (TODO #1b).
100-
- `databricks-apps-python/SKILL.md` leads with AppKit (TypeScript +
101-
React SDK) as the recommended approach for new apps; Python
102-
frameworks (Dash, Streamlit, Gradio, Flask, FastAPI, Reflex) are
103-
demoted to an explicit alternative.
104-
- `install.sh` / `install.ps1` upstream changes wiring a-d-k to
105-
install d-a-s skills via a single GitHub tree call (out of scope
106-
for this snapshot, not imported here — only `databricks-skills/`
107-
content is mirrored).
108-
109-
**Note**: the `experimental` branch of a-d-k previously removed
110-
`databricks-lakebase-provisioned`, which is why it is not present in
111-
this import. `databricks-model-serving` and
112-
`databricks-spark-declarative-pipelines` are intentionally excluded
113-
from this snapshot — see TODOs #1b and #5 on the import PR.
114-
115-
The full set of paths brought in is tracked by the import commit on
116-
this branch.
117-
118-
**Transition phase (until `ai-dev-kit` skills are locked):**
119-
- Source of truth is **upstream `ai-dev-kit`**. New work and bug fixes go there.
120-
- This directory receives **periodic manual re-syncs** — someone opens a PR
121-
to bring drift from upstream into `experimental/`.
122-
123-
**Post-lock (after `ai-dev-kit` skill contributions are stopped):**
124-
- Source of truth is **this repo**. New work and bug fixes go directly to
125-
`experimental/<skill>/`.
126-
- `ai-dev-kit/databricks-skills/` becomes read-only and points here.
81+
on the `experimental` branch of `databricks-solutions/ai-dev-kit`.
82+
83+
While `ai-dev-kit` is the upstream source, this directory receives periodic
84+
manual re-syncs.

experimental/databricks-ai-functions/4-document-processing-pipeline.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22

33
End-to-end patterns for building batch document processing pipelines using AI Functions in a Lakeflow Declarative Pipeline (DLT). Covers function selection, `config.yml` centralization, error handling, and guidance on near-real-time variants with DSPy or LangChain.
44

5-
> For workflow migration context (e.g., migrating from n8n, LangChain, or other orchestration tools), see the companion skill `n8n-to-databricks`.
6-
75
---
86

97
## Function Selection for Document Pipelines

manifest.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"version": "2",
3-
"updated_at": "2026-05-19T14:54:40Z",
3+
"updated_at": "2026-05-20T15:27:57Z",
44
"skills": {
55
"databricks-apps": {
66
"version": "0.1.1",
@@ -107,7 +107,7 @@
107107
},
108108
"databricks-pipelines": {
109109
"version": "0.1.0",
110-
"description": "Databricks Pipelines (DLT) for ETL and streaming",
110+
"description": "Databricks Spark Declarative Pipelines (SDP) for ETL and streaming",
111111
"repo_dir": "skills",
112112
"updated_at": "2026-05-12T15:39:50Z",
113113
"files": [
@@ -187,7 +187,7 @@
187187
"version": "0.0.1",
188188
"description": "Use 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 \u2192 chunk \u2192 index \u2192 query).",
189189
"repo_dir": "experimental",
190-
"updated_at": "2026-05-15T09:44:54Z",
190+
"updated_at": "2026-05-20T15:27:46Z",
191191
"files": [
192192
"1-task-functions.md",
193193
"2-ai-query.md",

scripts/skills.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
"description": "Databricks Model Serving endpoint management",
4242
},
4343
"databricks-pipelines": {
44-
"description": "Databricks Pipelines (DLT) for ETL and streaming",
44+
"description": "Databricks Spark Declarative Pipelines (SDP) for ETL and streaming",
4545
},
4646
"databricks-serverless-migration": {
4747
"description": "Migrate Databricks workloads from classic compute to serverless compute, including compatibility checks and concrete fixes",
@@ -326,10 +326,9 @@ def _add_skill(skills: dict, entry: tuple[str, dict]) -> None:
326326
name, skill = entry
327327
if name in skills:
328328
# Stable + experimental copies of the same logical skill can't coexist
329-
# in one map. The cli applies a "-experimental" suffix to install-side
330-
# keys at install time, but the manifest itself stores the natural
331-
# repo-dir name. If a collision shows up, resolve it upstream (rename
332-
# one of the two) before regenerating.
329+
# in one map. The cli installs each entry under its plain skill name,
330+
# so a future collision must be resolved upstream (rename one of the
331+
# two, or merge them) before regenerating.
333332
raise ValueError(
334333
f"Duplicate skill name '{name}': present under both '{STABLE_REPO_DIR}/' "
335334
f"and '{EXPERIMENTAL_REPO_DIR}/'. Rename one to disambiguate."

0 commit comments

Comments
 (0)