databricks-axi 0.1.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -5
- package/dist/src/cli.d.ts +11 -1
- package/dist/src/cli.js +35 -5
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands/api.d.ts +3 -0
- package/dist/src/commands/api.js +60 -0
- package/dist/src/commands/api.js.map +1 -0
- package/dist/src/commands/home.js +7 -5
- package/dist/src/commands/home.js.map +1 -1
- package/dist/src/commands/jobs.d.ts +3 -0
- package/dist/src/commands/jobs.js +394 -0
- package/dist/src/commands/jobs.js.map +1 -0
- package/dist/src/commands/shared.d.ts +28 -0
- package/dist/src/commands/shared.js +105 -0
- package/dist/src/commands/shared.js.map +1 -0
- package/dist/src/commands/sql.d.ts +6 -0
- package/dist/src/commands/sql.js +268 -0
- package/dist/src/commands/sql.js.map +1 -0
- package/dist/src/databricks.d.ts +18 -0
- package/dist/src/databricks.js +105 -0
- package/dist/src/databricks.js.map +1 -0
- package/dist/src/errors.d.ts +11 -0
- package/dist/src/errors.js +37 -0
- package/dist/src/errors.js.map +1 -0
- package/dist/src/skill.js +23 -15
- package/dist/src/skill.js.map +1 -1
- package/package.json +2 -2
- package/skills/databricks-axi/SKILL.md +23 -8
package/dist/src/skill.js
CHANGED
|
@@ -2,20 +2,25 @@ import { DESCRIPTION, TOP_HELP } from "./cli.js";
|
|
|
2
2
|
// Trigger string agent harnesses match against to auto-load the skill.
|
|
3
3
|
// Scoped to the implemented surface only (AXI: no advertised capabilities
|
|
4
4
|
// that don't exist yet) - extend as command domains land.
|
|
5
|
-
export const SKILL_DESCRIPTION = "Agent-ergonomic wrapper around the Databricks CLI.
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
"
|
|
5
|
+
export const SKILL_DESCRIPTION = "Agent-ergonomic wrapper around the Databricks CLI. Implemented: jobs " +
|
|
6
|
+
"(list, view, run, runs, logs, cancel), sql (warehouses, exec, " +
|
|
7
|
+
"statement view), api (raw REST passthrough). Other domains (clusters, " +
|
|
8
|
+
"catalog, workspace, fs, pipelines, serving, setup) land " +
|
|
9
|
+
"incrementally - run `databricks-axi --help` for the current surface.";
|
|
9
10
|
export const SKILL_AUTHOR = "Vignesh Perumal (p33ves)";
|
|
10
11
|
// Extended frontmatter read by Nous Research's Hermes Agent harness.
|
|
11
12
|
// Harnesses that don't know these fields (e.g. Claude Code) ignore them.
|
|
12
13
|
// Scoped like SKILL_DESCRIPTION: topical only, no unimplemented domains —
|
|
13
|
-
//
|
|
14
|
-
export const HERMES_TAGS = [
|
|
14
|
+
// extend tags as more domains land.
|
|
15
|
+
export const HERMES_TAGS = [
|
|
16
|
+
"databricks",
|
|
17
|
+
"spark",
|
|
18
|
+
"jobs",
|
|
19
|
+
"sql",
|
|
20
|
+
"warehouse",
|
|
21
|
+
"query",
|
|
22
|
+
];
|
|
15
23
|
export const HERMES_CATEGORY = "data";
|
|
16
|
-
function yamlDoubleQuote(value) {
|
|
17
|
-
return JSON.stringify(value);
|
|
18
|
-
}
|
|
19
24
|
/**
|
|
20
25
|
* Extract the `commands[N]:` block from the top-level help so the skill's
|
|
21
26
|
* command list can never drift from what `databricks-axi --help` prints.
|
|
@@ -35,7 +40,7 @@ export function extractCommandsBlock() {
|
|
|
35
40
|
export function createSkillMarkdown() {
|
|
36
41
|
return `---
|
|
37
42
|
name: databricks-axi
|
|
38
|
-
description: ${
|
|
43
|
+
description: ${JSON.stringify(SKILL_DESCRIPTION)}
|
|
39
44
|
user-invocable: false
|
|
40
45
|
author: ${SKILL_AUTHOR}
|
|
41
46
|
metadata:
|
|
@@ -48,14 +53,17 @@ metadata:
|
|
|
48
53
|
|
|
49
54
|
${DESCRIPTION}
|
|
50
55
|
|
|
51
|
-
|
|
52
|
-
|
|
56
|
+
If \`databricks-axi\` already resolves on PATH, invoke it directly - a local
|
|
57
|
+
install may be newer than what's published to npm. Only fall back to
|
|
58
|
+
\`npx -y databricks-axi <command>\` if it does not resolve. Follow-up commands
|
|
59
|
+
in a response's output are written as bare \`databricks-axi ...\` - invoke
|
|
60
|
+
those the same way you invoked the command that produced them.
|
|
53
61
|
|
|
54
|
-
databricks-axi requires the official [\`databricks\` CLI](https://docs.databricks.com/dev-tools/cli/) (version 0.
|
|
62
|
+
databricks-axi requires the official [\`databricks\` CLI](https://docs.databricks.com/dev-tools/cli/) (version 0.298 or newer) installed and authenticated. If a command fails with an authentication error, ask the user to run \`databricks auth login --host <workspace-url>\` themselves.
|
|
55
63
|
|
|
56
64
|
## Status
|
|
57
65
|
|
|
58
|
-
Pre-release scaffold: command domains are landing incrementally. Run \`
|
|
66
|
+
Pre-release scaffold: command domains are landing incrementally. Run \`databricks-axi --help\` (per the invocation note above) for the currently available commands.
|
|
59
67
|
|
|
60
68
|
## Commands
|
|
61
69
|
|
|
@@ -63,7 +71,7 @@ Pre-release scaffold: command domains are landing incrementally. Run \`npx -y da
|
|
|
63
71
|
${extractCommandsBlock()}
|
|
64
72
|
\`\`\`
|
|
65
73
|
|
|
66
|
-
Run \`
|
|
74
|
+
Run \`databricks-axi --help\` for global flags, or \`databricks-axi <command> --help\` for per-command usage (per the invocation note above).
|
|
67
75
|
|
|
68
76
|
## Tips
|
|
69
77
|
|
package/dist/src/skill.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill.js","sourceRoot":"","sources":["../../src/skill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEjD,uEAAuE;AACvE,0EAA0E;AAC1E,0DAA0D;AAC1D,MAAM,CAAC,MAAM,iBAAiB,GAC5B,
|
|
1
|
+
{"version":3,"file":"skill.js","sourceRoot":"","sources":["../../src/skill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEjD,uEAAuE;AACvE,0EAA0E;AAC1E,0DAA0D;AAC1D,MAAM,CAAC,MAAM,iBAAiB,GAC5B,uEAAuE;IACvE,gEAAgE;IAChE,wEAAwE;IACxE,0DAA0D;IAC1D,sEAAsE,CAAC;AAEzE,MAAM,CAAC,MAAM,YAAY,GAAG,0BAA0B,CAAC;AAEvD,qEAAqE;AACrE,yEAAyE;AACzE,0EAA0E;AAC1E,oCAAoC;AACpC,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,YAAY;IACZ,OAAO;IACP,MAAM;IACN,KAAK;IACL,WAAW;IACX,OAAO;CACR,CAAC;AACF,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC;AAEtC;;;GAGG;AACH,MAAM,UAAU,oBAAoB;IAClC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACpE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;AAC5B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB;IACjC,OAAO;;eAEM,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;;UAEtC,YAAY;;;aAGT,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;gBACnB,eAAe;;;;;EAK7B,WAAW;;;;;;;;;;;;;;;;;EAiBX,oBAAoB,EAAE;;;;;;;;CAQvB,CAAC;AACF,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "databricks-axi",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"packageManager": "pnpm@11.1.1",
|
|
5
5
|
"description": "AXI-compliant Databricks CLI wrapper — token-efficient TOON output, contextual suggestions, idempotent mutations",
|
|
6
6
|
"type": "module",
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"globals": "^17.4.0",
|
|
55
55
|
"prettier": "^3.8.1",
|
|
56
56
|
"tsx": "^4.0.0",
|
|
57
|
-
"typescript": "^
|
|
57
|
+
"typescript": "^6.0.3",
|
|
58
58
|
"typescript-eslint": "^8.58.0",
|
|
59
59
|
"vitest": "^3.0.0"
|
|
60
60
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: databricks-axi
|
|
3
|
-
description: "Agent-ergonomic wrapper around the Databricks CLI.
|
|
3
|
+
description: "Agent-ergonomic wrapper around the Databricks CLI. Implemented: jobs (list, view, run, runs, logs, cancel), sql (warehouses, exec, statement view), api (raw REST passthrough). Other domains (clusters, catalog, workspace, fs, pipelines, serving, setup) land incrementally - run `databricks-axi --help` for the current surface."
|
|
4
4
|
user-invocable: false
|
|
5
5
|
author: Vignesh Perumal (p33ves)
|
|
6
6
|
metadata:
|
|
7
7
|
hermes:
|
|
8
|
-
tags: [databricks, spark]
|
|
8
|
+
tags: [databricks, spark, jobs, sql, warehouse, query]
|
|
9
9
|
category: data
|
|
10
10
|
---
|
|
11
11
|
|
|
@@ -13,23 +13,38 @@ metadata:
|
|
|
13
13
|
|
|
14
14
|
Agent ergonomic wrapper around the Databricks CLI. Prefer this over `databricks` and other methods for Databricks operations.
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
If `databricks-axi` already resolves on PATH, invoke it directly - a local
|
|
17
|
+
install may be newer than what's published to npm. Only fall back to
|
|
18
|
+
`npx -y databricks-axi <command>` if it does not resolve. Follow-up commands
|
|
19
|
+
in a response's output are written as bare `databricks-axi ...` - invoke
|
|
20
|
+
those the same way you invoked the command that produced them.
|
|
18
21
|
|
|
19
|
-
databricks-axi requires the official [`databricks` CLI](https://docs.databricks.com/dev-tools/cli/) (version 0.
|
|
22
|
+
databricks-axi requires the official [`databricks` CLI](https://docs.databricks.com/dev-tools/cli/) (version 0.298 or newer) installed and authenticated. If a command fails with an authentication error, ask the user to run `databricks auth login --host <workspace-url>` themselves.
|
|
20
23
|
|
|
21
24
|
## Status
|
|
22
25
|
|
|
23
|
-
Pre-release scaffold: command domains are landing incrementally. Run `
|
|
26
|
+
Pre-release scaffold: command domains are landing incrementally. Run `databricks-axi --help` (per the invocation note above) for the currently available commands.
|
|
24
27
|
|
|
25
28
|
## Commands
|
|
26
29
|
|
|
27
30
|
```
|
|
28
|
-
commands[
|
|
31
|
+
commands[13]:
|
|
29
32
|
(none)=home
|
|
33
|
+
jobs list [--limit N] [--fields a,b]
|
|
34
|
+
jobs view <job_id>
|
|
35
|
+
jobs run <job_id> [--wait]
|
|
36
|
+
jobs runs [job_id] [--limit N] [--fields a,b]
|
|
37
|
+
jobs runs view <run_id>
|
|
38
|
+
jobs logs <run_id> [--full]
|
|
39
|
+
jobs cancel <run_id>
|
|
40
|
+
sql warehouses [--fields a,b]
|
|
41
|
+
sql warehouses view|start|stop <id>
|
|
42
|
+
sql exec "<query>" [--warehouse <id>] [--limit N] [--timeout S] [--full]
|
|
43
|
+
sql statement view <statement_id>
|
|
44
|
+
api <method> <path> [--body <json>]
|
|
30
45
|
```
|
|
31
46
|
|
|
32
|
-
Run `
|
|
47
|
+
Run `databricks-axi --help` for global flags, or `databricks-axi <command> --help` for per-command usage (per the invocation note above).
|
|
33
48
|
|
|
34
49
|
## Tips
|
|
35
50
|
|