@fabric-harness/databricks 0.15.0 → 0.18.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/dist/agent.d.ts +45 -0
- package/dist/agent.d.ts.map +1 -0
- package/dist/agent.js +206 -0
- package/dist/agent.js.map +1 -0
- package/dist/ai.d.ts +19 -0
- package/dist/ai.d.ts.map +1 -0
- package/dist/ai.js +22 -0
- package/dist/ai.js.map +1 -0
- package/dist/client.d.ts +37 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +110 -0
- package/dist/client.js.map +1 -0
- package/dist/consumption.d.ts +45 -0
- package/dist/consumption.d.ts.map +1 -0
- package/dist/consumption.js +85 -0
- package/dist/consumption.js.map +1 -0
- package/dist/cost-budget-actuals.d.ts +27 -0
- package/dist/cost-budget-actuals.d.ts.map +1 -0
- package/dist/cost-budget-actuals.js +265 -0
- package/dist/cost-budget-actuals.js.map +1 -0
- package/dist/embeddings.d.ts +18 -0
- package/dist/embeddings.d.ts.map +1 -0
- package/dist/embeddings.js +24 -0
- package/dist/embeddings.js.map +1 -0
- package/dist/feature-serving.d.ts +17 -0
- package/dist/feature-serving.d.ts.map +1 -0
- package/dist/feature-serving.js +29 -0
- package/dist/feature-serving.js.map +1 -0
- package/dist/genie.d.ts +22 -0
- package/dist/genie.d.ts.map +1 -0
- package/dist/genie.js +60 -0
- package/dist/genie.js.map +1 -0
- package/dist/governance.d.ts +66 -0
- package/dist/governance.d.ts.map +1 -0
- package/dist/governance.js +111 -0
- package/dist/governance.js.map +1 -0
- package/dist/identity.d.ts +38 -0
- package/dist/identity.d.ts.map +1 -0
- package/dist/identity.js +56 -0
- package/dist/identity.js.map +1 -0
- package/dist/index.d.ts +131 -80
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +105 -227
- package/dist/index.js.map +1 -1
- package/dist/lakebase.d.ts +49 -0
- package/dist/lakebase.d.ts.map +1 -0
- package/dist/lakebase.js +25 -0
- package/dist/lakebase.js.map +1 -0
- package/dist/lakeflow.d.ts +28 -0
- package/dist/lakeflow.d.ts.map +1 -0
- package/dist/lakeflow.js +75 -0
- package/dist/lakeflow.js.map +1 -0
- package/dist/mock-provider.d.ts +26 -0
- package/dist/mock-provider.d.ts.map +1 -0
- package/dist/mock-provider.js +66 -0
- package/dist/mock-provider.js.map +1 -0
- package/dist/model.d.ts +29 -0
- package/dist/model.d.ts.map +1 -0
- package/dist/model.js +50 -0
- package/dist/model.js.map +1 -0
- package/dist/sql-exec.d.ts +17 -0
- package/dist/sql-exec.d.ts.map +1 -0
- package/dist/sql-exec.js +36 -0
- package/dist/sql-exec.js.map +1 -0
- package/dist/sql-sandbox.d.ts +1 -1
- package/dist/sql-sandbox.d.ts.map +1 -1
- package/dist/sql-sandbox.js +1 -1
- package/dist/sql-sandbox.js.map +1 -1
- package/dist/tools.d.ts +71 -0
- package/dist/tools.d.ts.map +1 -0
- package/dist/tools.js +176 -0
- package/dist/tools.js.map +1 -0
- package/dist/vector-search.d.ts +24 -0
- package/dist/vector-search.d.ts.map +1 -0
- package/dist/vector-search.js +63 -0
- package/dist/vector-search.js.map +1 -0
- package/package.json +14 -2
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { redactJson } from '@fabric-harness/sdk';
|
|
2
|
+
function metaString(tool, key) {
|
|
3
|
+
const value = tool.metadata?.[key];
|
|
4
|
+
return typeof value === 'string' ? value : undefined;
|
|
5
|
+
}
|
|
6
|
+
function inputString(input, key) {
|
|
7
|
+
if (input && typeof input === 'object' && key in input) {
|
|
8
|
+
const value = input[key];
|
|
9
|
+
if (typeof value === 'string')
|
|
10
|
+
return value;
|
|
11
|
+
}
|
|
12
|
+
return undefined;
|
|
13
|
+
}
|
|
14
|
+
/** Wraps one Databricks tool to stamp lineage/audit and enforce the optional catalog allowlist. */
|
|
15
|
+
export function withGovernance(tool, options = {}) {
|
|
16
|
+
const inner = tool.execute;
|
|
17
|
+
if (!inner)
|
|
18
|
+
return tool;
|
|
19
|
+
const now = options.now ?? (() => new Date());
|
|
20
|
+
return {
|
|
21
|
+
...tool,
|
|
22
|
+
metadata: { ...(tool.metadata ?? {}), governed: true },
|
|
23
|
+
async execute(input, context) {
|
|
24
|
+
const catalog = inputString(input, 'catalog');
|
|
25
|
+
const schema = inputString(input, 'schema');
|
|
26
|
+
if (options.catalogs && catalog && !options.catalogs.includes(catalog)) {
|
|
27
|
+
throw new Error(`databricks governance: catalog "${catalog}" is not in the allowed list (${options.catalogs.join(', ')}).`);
|
|
28
|
+
}
|
|
29
|
+
const startedAt = now().toISOString();
|
|
30
|
+
const service = metaString(tool, 'service');
|
|
31
|
+
const provider = metaString(tool, 'provider');
|
|
32
|
+
const base = {
|
|
33
|
+
tool: tool.name,
|
|
34
|
+
...(service !== undefined ? { service } : {}),
|
|
35
|
+
...(provider !== undefined ? { provider } : {}),
|
|
36
|
+
...(options.principal !== undefined ? { principal: options.principal } : {}),
|
|
37
|
+
...(catalog !== undefined ? { catalog } : {}),
|
|
38
|
+
...(schema !== undefined ? { schema } : {}),
|
|
39
|
+
// Redact secret-ish keys before the input enters the audit/lineage record.
|
|
40
|
+
input: redactJson((input ?? {})),
|
|
41
|
+
startedAt,
|
|
42
|
+
};
|
|
43
|
+
try {
|
|
44
|
+
const result = await inner(input, context);
|
|
45
|
+
options.onLineage?.({ ...base, finishedAt: now().toISOString(), ok: true });
|
|
46
|
+
return result;
|
|
47
|
+
}
|
|
48
|
+
catch (error) {
|
|
49
|
+
options.onLineage?.({ ...base, finishedAt: now().toISOString(), ok: false, error: error instanceof Error ? error.message : String(error) });
|
|
50
|
+
throw error;
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
/** Wraps a set of Databricks tools with {@link withGovernance}. */
|
|
56
|
+
export function withGovernanceTools(tools, options = {}) {
|
|
57
|
+
return tools.map((tool) => withGovernance(tool, options));
|
|
58
|
+
}
|
|
59
|
+
function shouldGate(tool, services) {
|
|
60
|
+
if (services)
|
|
61
|
+
return services.includes(metaString(tool, 'service') ?? '');
|
|
62
|
+
const effect = tool.metadata?.effect;
|
|
63
|
+
return effect === 'write' || effect === 'execute';
|
|
64
|
+
}
|
|
65
|
+
/** Builds approval rules (one per gated tool) for `CapabilityPolicy.toolPolicy.approvalRules`. */
|
|
66
|
+
export function databricksApprovalRules(tools, options) {
|
|
67
|
+
return tools
|
|
68
|
+
.filter((tool) => shouldGate(tool, options.services))
|
|
69
|
+
.map((tool) => ({
|
|
70
|
+
pattern: tool.name,
|
|
71
|
+
audience: options.audience,
|
|
72
|
+
// ${name} is templated by the policy layer at request time — keep it literal here.
|
|
73
|
+
reason: options.reason ?? 'Databricks ${name} requires data-steward approval.',
|
|
74
|
+
...(options.ttlSeconds !== undefined ? { ttlSeconds: options.ttlSeconds } : {}),
|
|
75
|
+
}));
|
|
76
|
+
}
|
|
77
|
+
function toHostPatterns(host) {
|
|
78
|
+
if (!host)
|
|
79
|
+
return [];
|
|
80
|
+
const list = Array.isArray(host) ? host : [host];
|
|
81
|
+
return list.map((entry) => {
|
|
82
|
+
try {
|
|
83
|
+
return new URL(entry.includes('://') ? entry : `https://${entry}`).host;
|
|
84
|
+
}
|
|
85
|
+
catch {
|
|
86
|
+
return entry;
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Assembles a `CapabilityPolicy` for a Databricks tool set: approval routing for sensitive
|
|
92
|
+
* operations (if `stewardAudience` is set) plus an egress allowlist pinned to the workspace host(s).
|
|
93
|
+
* Used by the `databricks()` bundle; can also be merged into an agent's own policy.
|
|
94
|
+
*/
|
|
95
|
+
export function databricksGovernancePolicy(options) {
|
|
96
|
+
const policy = {};
|
|
97
|
+
if (options.stewardAudience) {
|
|
98
|
+
policy.toolPolicy = {
|
|
99
|
+
approvalRules: databricksApprovalRules(options.tools, {
|
|
100
|
+
audience: options.stewardAudience,
|
|
101
|
+
...(options.approvalServices ? { services: options.approvalServices } : {}),
|
|
102
|
+
...(options.ttlSeconds !== undefined ? { ttlSeconds: options.ttlSeconds } : {}),
|
|
103
|
+
}),
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
const hosts = toHostPatterns(options.host);
|
|
107
|
+
if (hosts.length > 0)
|
|
108
|
+
policy.network = { mode: 'allowlist', hosts };
|
|
109
|
+
return policy;
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=governance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"governance.js","sourceRoot":"","sources":["../src/governance.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A bearer-token resolver awaited per request. Shape matches what {@link DatabricksRestClient},
|
|
3
|
+
* {@link databricksFoundationModelProvider} (via `tokenProvider`), and the Lakebase store accept,
|
|
4
|
+
* so a single principal threads through model calls, data calls, and state.
|
|
5
|
+
*/
|
|
6
|
+
export type DatabricksTokenProvider = () => Promise<string>;
|
|
7
|
+
export type DatabricksPrincipal =
|
|
8
|
+
/** Personal access token. Dev / single-user only. */
|
|
9
|
+
{
|
|
10
|
+
kind: 'pat';
|
|
11
|
+
token: string;
|
|
12
|
+
label?: string;
|
|
13
|
+
}
|
|
14
|
+
/** OAuth machine-to-machine (client-credentials). The agent acts as one governed identity. */
|
|
15
|
+
| {
|
|
16
|
+
kind: 'service-principal';
|
|
17
|
+
host: string;
|
|
18
|
+
clientId: string;
|
|
19
|
+
clientSecret: string;
|
|
20
|
+
/** OAuth scope; defaults to `all-apis`. */
|
|
21
|
+
scope?: string;
|
|
22
|
+
/** Refresh this many seconds before expiry to avoid using a token that expires mid-flight. Default 60. */
|
|
23
|
+
refreshSkewSeconds?: number;
|
|
24
|
+
fetchImpl?: typeof fetch;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* On-behalf-of a specific end user. The caller binds the user's token resolver (e.g. from a
|
|
28
|
+
* channel `actor`), so Unity Catalog enforces *that human's* grants. The resolver is responsible
|
|
29
|
+
* for its own caching/refresh.
|
|
30
|
+
*/
|
|
31
|
+
| {
|
|
32
|
+
kind: 'on-behalf-of';
|
|
33
|
+
userToken: () => string | Promise<string>;
|
|
34
|
+
label?: string;
|
|
35
|
+
};
|
|
36
|
+
/** Builds a cached, auto-refreshing token provider for a Databricks principal. */
|
|
37
|
+
export declare function databricksIdentity(principal: DatabricksPrincipal): DatabricksTokenProvider;
|
|
38
|
+
//# sourceMappingURL=identity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;AAE5D,MAAM,MAAM,mBAAmB;AAC7B,qDAAqD;AACnD;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE;AAChD,8FAA8F;GAC5F;IACE,IAAI,EAAE,mBAAmB,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0GAA0G;IAC1G,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AACH;;;;GAIG;GACD;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,SAAS,EAAE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAQxF,kFAAkF;AAClF,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,mBAAmB,GAAG,uBAAuB,CAU1F"}
|
package/dist/identity.js
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { redactText } from '@fabric-harness/sdk';
|
|
2
|
+
/** Builds a cached, auto-refreshing token provider for a Databricks principal. */
|
|
3
|
+
export function databricksIdentity(principal) {
|
|
4
|
+
if (principal.kind === 'pat') {
|
|
5
|
+
const { token } = principal;
|
|
6
|
+
return async () => token;
|
|
7
|
+
}
|
|
8
|
+
if (principal.kind === 'on-behalf-of') {
|
|
9
|
+
const { userToken } = principal;
|
|
10
|
+
return async () => userToken();
|
|
11
|
+
}
|
|
12
|
+
return servicePrincipalProvider(principal);
|
|
13
|
+
}
|
|
14
|
+
function servicePrincipalProvider(principal) {
|
|
15
|
+
const host = principal.host.replace(/\/$/, '');
|
|
16
|
+
const scope = principal.scope ?? 'all-apis';
|
|
17
|
+
const skewMs = (principal.refreshSkewSeconds ?? 60) * 1000;
|
|
18
|
+
const fetchImpl = principal.fetchImpl ?? fetch;
|
|
19
|
+
const basic = base64(`${principal.clientId}:${principal.clientSecret}`);
|
|
20
|
+
let cached;
|
|
21
|
+
let inflight;
|
|
22
|
+
const refresh = async () => {
|
|
23
|
+
const response = await fetchImpl(`${host}/oidc/v1/token`, {
|
|
24
|
+
method: 'POST',
|
|
25
|
+
headers: {
|
|
26
|
+
authorization: `Basic ${basic}`,
|
|
27
|
+
'content-type': 'application/x-www-form-urlencoded',
|
|
28
|
+
},
|
|
29
|
+
body: `grant_type=client_credentials&scope=${encodeURIComponent(scope)}`,
|
|
30
|
+
});
|
|
31
|
+
if (!response.ok) {
|
|
32
|
+
const text = redactText(await response.text(), { additionalSecrets: [principal.clientSecret] });
|
|
33
|
+
throw new Error(`databricks oauth: ${response.status} ${response.statusText}: ${text.slice(0, 500)}`);
|
|
34
|
+
}
|
|
35
|
+
const json = (await response.json());
|
|
36
|
+
if (!json.access_token)
|
|
37
|
+
throw new Error('databricks oauth: response missing access_token.');
|
|
38
|
+
const ttlMs = (json.expires_in ?? 3600) * 1000;
|
|
39
|
+
cached = { token: json.access_token, refreshAtMs: Date.now() + Math.max(0, ttlMs - skewMs) };
|
|
40
|
+
return json.access_token;
|
|
41
|
+
};
|
|
42
|
+
return async () => {
|
|
43
|
+
if (cached && Date.now() < cached.refreshAtMs)
|
|
44
|
+
return cached.token;
|
|
45
|
+
// Dedupe concurrent refreshes so a burst of requests triggers a single token exchange.
|
|
46
|
+
if (!inflight)
|
|
47
|
+
inflight = refresh().finally(() => { inflight = undefined; });
|
|
48
|
+
return inflight;
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
function base64(value) {
|
|
52
|
+
if (typeof Buffer !== 'undefined')
|
|
53
|
+
return Buffer.from(value, 'utf8').toString('base64');
|
|
54
|
+
return btoa(value);
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=identity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,85 +1,136 @@
|
|
|
1
|
-
import type { FilesystemSource,
|
|
2
|
-
|
|
1
|
+
import type { CapabilityPolicy, EmbeddingProvider, FilesystemSource, ModelProvider, Retriever, SessionStore, ToolDef } from '@fabric-harness/sdk';
|
|
2
|
+
import { DatabricksRestClient } from './client.js';
|
|
3
|
+
import type { DatabricksWorkspaceSourceOptions } from './tools.js';
|
|
4
|
+
import type { DatabricksPrincipal, DatabricksTokenProvider } from './identity.js';
|
|
5
|
+
import type { DatabricksLineageRecord } from './governance.js';
|
|
6
|
+
import type { LakebaseClient, LakebasePoolFactory } from './lakebase.js';
|
|
7
|
+
import type { DatabricksConsumption } from './consumption.js';
|
|
8
|
+
export { DatabricksRestClient, createDatabricksClient, waitForDatabricksRun, waitForDatabricksStatement } from './client.js';
|
|
9
|
+
export type { DatabricksClientOptions, DatabricksWaitOptions } from './client.js';
|
|
10
|
+
export { databricksSqlTool, databricksRunJobTool, databricksNotebookTool, databricksMlflowLogMetricTool, databricksMlflowLogParamTool, unityCatalogTablesTool, databricksTableInfoTool, databricksWorkspaceSource } from './tools.js';
|
|
11
|
+
export type { DatabricksSqlToolOptions, DatabricksWorkspaceSourceOptions } from './tools.js';
|
|
12
|
+
export { databricksFoundationModelProvider, registerDatabricksModelProvider } from './model.js';
|
|
13
|
+
export type { DatabricksModelOptions } from './model.js';
|
|
14
|
+
export { databricksIdentity } from './identity.js';
|
|
15
|
+
export type { DatabricksPrincipal, DatabricksTokenProvider } from './identity.js';
|
|
16
|
+
export { withGovernance, withGovernanceTools, databricksApprovalRules, databricksGovernancePolicy } from './governance.js';
|
|
17
|
+
export type { DatabricksGovernanceOptions, DatabricksLineageRecord, DatabricksApprovalRuleOptions, DatabricksGovernancePolicyOptions } from './governance.js';
|
|
18
|
+
export { lakebaseClient } from './lakebase.js';
|
|
19
|
+
export type { LakebaseClient, LakebaseClientOptions, LakebasePoolConfig, LakebasePoolFactory } from './lakebase.js';
|
|
20
|
+
export { databricksEmbeddings } from './embeddings.js';
|
|
21
|
+
export type { DatabricksEmbeddingsOptions } from './embeddings.js';
|
|
22
|
+
export { databricksVectorSearch } from './vector-search.js';
|
|
23
|
+
export type { DatabricksVectorSearchOptions } from './vector-search.js';
|
|
24
|
+
export { databricksAiQueryTool } from './ai.js';
|
|
25
|
+
export type { DatabricksAiQueryToolOptions } from './ai.js';
|
|
26
|
+
export { databricksGenieTool } from './genie.js';
|
|
27
|
+
export type { DatabricksGenieToolOptions } from './genie.js';
|
|
28
|
+
export { databricksLakeflowTools, databricksPipelineListTool, databricksPipelineStatusTool, databricksPipelineStartTool, databricksPipelineStopTool } from './lakeflow.js';
|
|
29
|
+
export { databricksConsumption, databricksConsumptionTool } from './consumption.js';
|
|
30
|
+
export type { ConsumptionGroupBy, ConsumptionSummary, ConsumptionSummaryOptions, DatabricksConsumption, DatabricksConsumptionOptions, DatabricksConsumptionToolOptions } from './consumption.js';
|
|
31
|
+
export { databricksActualCostSource, databricksTenantCostLimit } from './cost-budget-actuals.js';
|
|
32
|
+
export type { DatabricksActualCostSourceOptions } from './cost-budget-actuals.js';
|
|
33
|
+
export { databricksFeatureLookupTool } from './feature-serving.js';
|
|
34
|
+
export type { DatabricksFeatureLookupToolOptions } from './feature-serving.js';
|
|
35
|
+
export { databricksAgent, defineDatabricksAgent, resolveToolRefs } from './agent.js';
|
|
36
|
+
export type { DatabricksAgentOptions, DefineDatabricksAgentOptions } from './agent.js';
|
|
37
|
+
export { MockDatabricksModelProvider } from './mock-provider.js';
|
|
38
|
+
export type { MockDatabricksModelProviderOptions } from './mock-provider.js';
|
|
39
|
+
export interface DatabricksBundleConfig {
|
|
40
|
+
/** Workspace host, e.g. https://adb-1234567890.0.cloud.databricks.com */
|
|
3
41
|
host: string;
|
|
4
|
-
|
|
42
|
+
/** Acting identity — UC enforces this principal's grants on every call. */
|
|
43
|
+
principal: DatabricksPrincipal;
|
|
44
|
+
/** Default serving-endpoint name for the returned model provider. */
|
|
45
|
+
model?: string;
|
|
46
|
+
/** SQL Warehouse id; when set, a governed `databricks_sql` tool is included. */
|
|
47
|
+
warehouseId?: string;
|
|
48
|
+
/** Extra Databricks tools to include; governed alongside the defaults. */
|
|
49
|
+
tools?: ToolDef[];
|
|
50
|
+
governance?: {
|
|
51
|
+
/** When set, sensitive (write/execute) tools route to this approval audience. */
|
|
52
|
+
stewardAudience?: string;
|
|
53
|
+
approvalServices?: string[];
|
|
54
|
+
/** Belt-and-suspenders catalog allowlist enforced before tool execution (UC stays source of truth). */
|
|
55
|
+
catalogs?: string[];
|
|
56
|
+
approvalTtlSeconds?: number;
|
|
57
|
+
/** Label recorded in lineage for the acting principal (never a token). */
|
|
58
|
+
principalLabel?: string;
|
|
59
|
+
/** Sink for audit/lineage records; wire to OTel / onEvent at the app layer. */
|
|
60
|
+
onLineage?: (record: DatabricksLineageRecord) => void;
|
|
61
|
+
};
|
|
62
|
+
/** Lakebase (managed Postgres) connection for durable session/journal state. */
|
|
63
|
+
lakebase?: {
|
|
64
|
+
host: string;
|
|
65
|
+
database: string;
|
|
66
|
+
user: string;
|
|
67
|
+
port?: number;
|
|
68
|
+
ssl?: boolean | {
|
|
69
|
+
rejectUnauthorized?: boolean;
|
|
70
|
+
};
|
|
71
|
+
poolFactory?: LakebasePoolFactory;
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* Builds a SessionStore from the Lakebase client. Injected so this package stays decoupled from
|
|
75
|
+
* `@fabric-harness/node` — e.g. `(client) => new PostgresSessionStore({ client })`.
|
|
76
|
+
*/
|
|
77
|
+
sessionStoreFactory?: (client: LakebaseClient) => SessionStore;
|
|
78
|
+
/** Mosaic AI Vector Search for RAG. Adds a governed `search` tool and exposes `retriever`. */
|
|
79
|
+
vectorSearch?: {
|
|
80
|
+
/** Full index name `catalog.schema.index`. */
|
|
81
|
+
index: string;
|
|
82
|
+
/** Column holding the chunk text. */
|
|
83
|
+
textColumn: string;
|
|
84
|
+
columns?: string[];
|
|
85
|
+
idColumn?: string;
|
|
86
|
+
/** `'text'` (managed-embedding index, default) or `'vector'` (self-managed; requires `embeddingEndpoint`). */
|
|
87
|
+
queryType?: 'text' | 'vector';
|
|
88
|
+
/** Serving-endpoint name for query embeddings (required for `queryType: 'vector'`). */
|
|
89
|
+
embeddingEndpoint?: string;
|
|
90
|
+
/** Override the search tool name (default `search`). */
|
|
91
|
+
searchToolName?: string;
|
|
92
|
+
};
|
|
93
|
+
/** Add the governed `ai_query` tool (in-warehouse model inference). Requires `warehouseId`. */
|
|
94
|
+
aiFunctions?: boolean;
|
|
95
|
+
/** Add the governed Genie tool for natural-language analytics over a Genie space. */
|
|
96
|
+
genie?: {
|
|
97
|
+
spaceId: string;
|
|
98
|
+
};
|
|
99
|
+
/** Add governed Lakeflow pipeline tools (list/status read; start/stop execute). */
|
|
100
|
+
lakeflow?: boolean;
|
|
101
|
+
/** Add the System-Tables consumption tool + expose `bundle.consumption`. Requires `warehouseId`. */
|
|
102
|
+
consumption?: boolean;
|
|
103
|
+
/** Add a governed low-latency feature-lookup tool against a Feature Serving endpoint. */
|
|
104
|
+
featureServing?: {
|
|
105
|
+
endpoint: string;
|
|
106
|
+
};
|
|
5
107
|
fetchImpl?: typeof fetch;
|
|
6
108
|
}
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
109
|
+
export interface DatabricksBundle {
|
|
110
|
+
/** Rotating token provider shared by the model provider, REST client, and Lakebase client. */
|
|
111
|
+
identity: DatabricksTokenProvider;
|
|
112
|
+
modelProvider: ModelProvider;
|
|
113
|
+
client: DatabricksRestClient;
|
|
114
|
+
/** Governed Databricks tools (lineage-stamped, catalog-allowlisted). */
|
|
115
|
+
tools: ToolDef[];
|
|
116
|
+
/** Approval routing + egress allowlist for the tool set. Merge into the agent's policy. */
|
|
117
|
+
policy: CapabilityPolicy;
|
|
118
|
+
lakebase?: LakebaseClient;
|
|
119
|
+
store?: SessionStore;
|
|
120
|
+
/** Mount Databricks workspace files as a read-only context source. */
|
|
121
|
+
workspaceSource: (rootPath: string, options?: DatabricksWorkspaceSourceOptions) => FilesystemSource;
|
|
122
|
+
/** Vector Search retriever, when `vectorSearch` is configured. */
|
|
123
|
+
retriever?: Retriever;
|
|
124
|
+
/** Query-embedding provider, when `vectorSearch.embeddingEndpoint` is configured. */
|
|
125
|
+
embeddings?: EmbeddingProvider;
|
|
126
|
+
/** System-Tables consumption reporter, when `consumption` is enabled (needs `warehouseId`). */
|
|
127
|
+
consumption?: DatabricksConsumption;
|
|
15
128
|
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
export declare function
|
|
23
|
-
export interface DatabricksSqlToolOptions {
|
|
24
|
-
warehouseId: string;
|
|
25
|
-
name?: string;
|
|
26
|
-
description?: string;
|
|
27
|
-
waitTimeout?: string;
|
|
28
|
-
disposition?: 'INLINE' | 'EXTERNAL_LINKS';
|
|
29
|
-
}
|
|
30
|
-
export declare function databricksSqlTool(client: DatabricksRestClient, options: DatabricksSqlToolOptions): ToolDef<{
|
|
31
|
-
statement: string;
|
|
32
|
-
catalog?: string;
|
|
33
|
-
schema?: string;
|
|
34
|
-
}, unknown>;
|
|
35
|
-
export declare function databricksRunJobTool(client: DatabricksRestClient, options?: {
|
|
36
|
-
name?: string;
|
|
37
|
-
description?: string;
|
|
38
|
-
}): ToolDef<{
|
|
39
|
-
jobId: number;
|
|
40
|
-
notebookParams?: JsonObject;
|
|
41
|
-
pythonParams?: string[];
|
|
42
|
-
jarParams?: string[];
|
|
43
|
-
}, unknown>;
|
|
44
|
-
export declare function databricksNotebookTool(client: DatabricksRestClient, options?: {
|
|
45
|
-
name?: string;
|
|
46
|
-
description?: string;
|
|
47
|
-
existingClusterId?: string;
|
|
48
|
-
}): ToolDef<{
|
|
49
|
-
notebookPath: string;
|
|
50
|
-
baseParameters?: JsonObject;
|
|
51
|
-
runName?: string;
|
|
52
|
-
}, unknown>;
|
|
53
|
-
export declare function databricksMlflowLogMetricTool(client: DatabricksRestClient, options?: {
|
|
54
|
-
name?: string;
|
|
55
|
-
description?: string;
|
|
56
|
-
}): ToolDef<{
|
|
57
|
-
runId: string;
|
|
58
|
-
key: string;
|
|
59
|
-
value: number;
|
|
60
|
-
step?: number;
|
|
61
|
-
timestamp?: number;
|
|
62
|
-
}, unknown>;
|
|
63
|
-
export declare function databricksMlflowLogParamTool(client: DatabricksRestClient, options?: {
|
|
64
|
-
name?: string;
|
|
65
|
-
description?: string;
|
|
66
|
-
}): ToolDef<{
|
|
67
|
-
runId: string;
|
|
68
|
-
key: string;
|
|
69
|
-
value: string;
|
|
70
|
-
}, unknown>;
|
|
71
|
-
export declare function unityCatalogTablesTool(client: DatabricksRestClient, options?: {
|
|
72
|
-
name?: string;
|
|
73
|
-
description?: string;
|
|
74
|
-
}): ToolDef<{
|
|
75
|
-
catalog: string;
|
|
76
|
-
schema: string;
|
|
77
|
-
}, unknown>;
|
|
78
|
-
export interface DatabricksWorkspaceSourceOptions {
|
|
79
|
-
name?: string;
|
|
80
|
-
include?: (path: string) => boolean;
|
|
81
|
-
recursive?: boolean;
|
|
82
|
-
format?: 'SOURCE' | 'HTML' | 'JUPYTER' | 'DBC';
|
|
83
|
-
}
|
|
84
|
-
export declare function databricksWorkspaceSource(client: DatabricksRestClient, rootPath: string, options?: DatabricksWorkspaceSourceOptions): FilesystemSource;
|
|
129
|
+
/**
|
|
130
|
+
* One-call wiring for a Databricks-native agent: model serving, a UC principal threaded through
|
|
131
|
+
* model + data + state, governed tools, an approval/egress policy, and (optionally) Lakebase-backed
|
|
132
|
+
* durable state. Also registers `databricks/*` + `mosaic-ai/*` model refs. Everything is layered on
|
|
133
|
+
* Unity Catalog — never a replacement for it.
|
|
134
|
+
*/
|
|
135
|
+
export declare function databricks(config: DatabricksBundleConfig): DatabricksBundle;
|
|
85
136
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAElJ,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,YAAY,CAAC;AAEnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAGlF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAE/D,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAOzE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAM9D,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAC7H,YAAY,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,6BAA6B,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AACtO,YAAY,EAAE,wBAAwB,EAAE,gCAAgC,EAAE,MAAM,YAAY,CAAC;AAE7F,OAAO,EAAE,iCAAiC,EAAE,+BAA+B,EAAE,MAAM,YAAY,CAAC;AAChG,YAAY,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC3H,YAAY,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,iCAAiC,EAAE,MAAM,iBAAiB,CAAC;AAC9J,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpH,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,YAAY,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,YAAY,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,YAAY,EAAE,4BAA4B,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,YAAY,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3K,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AACpF,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AACjM,OAAO,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACjG,YAAY,EAAE,iCAAiC,EAAE,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,YAAY,EAAE,kCAAkC,EAAE,MAAM,sBAAsB,CAAC;AAE/E,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACrF,YAAY,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AACvF,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,YAAY,EAAE,kCAAkC,EAAE,MAAM,oBAAoB,CAAC;AAE7E,MAAM,WAAW,sBAAsB;IACrC,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,SAAS,EAAE,mBAAmB,CAAC;IAC/B,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gFAAgF;IAChF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;IAClB,UAAU,CAAC,EAAE;QACX,iFAAiF;QACjF,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC5B,uGAAuG;QACvG,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,0EAA0E;QAC1E,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,+EAA+E;QAC/E,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,CAAC;KACvD,CAAC;IACF,gFAAgF;IAChF,QAAQ,CAAC,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,OAAO,GAAG;YAAE,kBAAkB,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;QACjD,WAAW,CAAC,EAAE,mBAAmB,CAAC;KACnC,CAAC;IACF;;;OAGG;IACH,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,YAAY,CAAC;IAC/D,8FAA8F;IAC9F,YAAY,CAAC,EAAE;QACb,8CAA8C;QAC9C,KAAK,EAAE,MAAM,CAAC;QACd,qCAAqC;QACrC,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,8GAA8G;QAC9G,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;QAC9B,uFAAuF;QACvF,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,wDAAwD;QACxD,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,+FAA+F;IAC/F,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qFAAqF;IACrF,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5B,mFAAmF;IACnF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oGAAoG;IACpG,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,yFAAyF;IACzF,cAAc,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,8FAA8F;IAC9F,QAAQ,EAAE,uBAAuB,CAAC;IAClC,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,oBAAoB,CAAC;IAC7B,wEAAwE;IACxE,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,2FAA2F;IAC3F,MAAM,EAAE,gBAAgB,CAAC;IACzB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,sEAAsE;IACtE,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gCAAgC,KAAK,gBAAgB,CAAC;IACpG,kEAAkE;IAClE,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,qFAAqF;IACrF,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,+FAA+F;IAC/F,WAAW,CAAC,EAAE,qBAAqB,CAAC;CACrC;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,sBAAsB,GAAG,gBAAgB,CAqE3E"}
|