@lightdash/cli 2.336.2 → 2.337.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/.tsbuildinfo.build +1 -1
- package/dist/analytics/analytics.d.ts +1 -0
- package/dist/analytics/analytics.d.ts.map +1 -1
- package/dist/handlers/download.d.ts +8 -2
- package/dist/handlers/download.d.ts.map +1 -1
- package/dist/handlers/download.js +70 -5
- package/dist/handlers/organizationContent/index.d.ts +4 -2
- package/dist/handlers/organizationContent/index.d.ts.map +1 -1
- package/dist/handlers/organizationContent/index.js +22 -2
- package/dist/handlers/skillsAsCode.d.ts +21 -0
- package/dist/handlers/skillsAsCode.d.ts.map +1 -0
- package/dist/handlers/skillsAsCode.js +170 -0
- package/dist/index.js +6 -0
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/analytics/analytics.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/analytics/analytics.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,9 @@ export type DownloadHandlerOptions = {
|
|
|
18
18
|
apps?: string[];
|
|
19
19
|
chartTypes?: string[];
|
|
20
20
|
includeAgents?: boolean;
|
|
21
|
+
skills?: string[];
|
|
22
|
+
includeSkills?: boolean;
|
|
23
|
+
deleteSkills?: string[];
|
|
21
24
|
includeApps?: boolean;
|
|
22
25
|
includeChartTypes?: boolean;
|
|
23
26
|
appsLimit?: string;
|
|
@@ -61,7 +64,7 @@ export type DownloadHandlerOptions = {
|
|
|
61
64
|
sendInvites?: boolean;
|
|
62
65
|
};
|
|
63
66
|
declare const shouldDownloadAiAgents: ({ includeAll, includeAgents, agents, appsOnly, }: Pick<DownloadHandlerOptions, 'includeAll' | 'includeAgents' | 'agents' | 'appsOnly'>) => boolean;
|
|
64
|
-
declare const hasContentFilters: ({ spacesOnly, charts, dashboards, agents, alerts, googleSheets, scheduledDeliveries, virtualViews, externalConnections, homepages, apps, chartTypes, }: Pick<DownloadHandlerOptions, 'spacesOnly' | 'charts' | 'dashboards' | 'agents' | 'alerts' | 'googleSheets' | 'scheduledDeliveries' | 'virtualViews' | 'externalConnections' | 'homepages' | 'apps' | 'chartTypes'>) => boolean;
|
|
67
|
+
declare const hasContentFilters: ({ spacesOnly, charts, dashboards, agents, alerts, googleSheets, scheduledDeliveries, virtualViews, externalConnections, homepages, apps, chartTypes, skills, }: Pick<DownloadHandlerOptions, 'spacesOnly' | 'charts' | 'dashboards' | 'agents' | 'skills' | 'alerts' | 'googleSheets' | 'scheduledDeliveries' | 'virtualViews' | 'externalConnections' | 'homepages' | 'apps' | 'chartTypes'>) => boolean;
|
|
65
68
|
declare const parseContentFilters: (items: string[]) => string;
|
|
66
69
|
type MetadataEntry = {
|
|
67
70
|
slug: string;
|
|
@@ -108,7 +111,10 @@ declare const isExternalConnectionsUnavailableError: (error: unknown) => boolean
|
|
|
108
111
|
declare const isAiAgentsUnavailableError: (error: unknown) => boolean;
|
|
109
112
|
declare const readExternalConnectionFiles: (customPath?: string) => Promise<ExternalConnectionAsCode[]>;
|
|
110
113
|
declare const upsertExternalConnections: (projectId: string, slugs: string[], changes: Record<string, number>, force: boolean, canUpload: boolean, customPath?: string) => Promise<Record<string, number>>;
|
|
111
|
-
declare const downloadAiAgents: (projectId: string, ids: string[], implicit: boolean, customPath?: string) => Promise<
|
|
114
|
+
declare const downloadAiAgents: (projectId: string, ids: string[], implicit: boolean, customPath?: string) => Promise<{
|
|
115
|
+
downloaded: number;
|
|
116
|
+
agents: AgentAsCode[];
|
|
117
|
+
}>;
|
|
112
118
|
declare const readAiAgentFiles: (customPath?: string) => Promise<AgentAsCode[]>;
|
|
113
119
|
declare const upsertAiAgents: (projectId: string, slugs: string[], changes: Record<string, number>, force: boolean, customPath?: string, implicit?: boolean) => Promise<Record<string, number>>;
|
|
114
120
|
export declare const downloadHandler: (options: DownloadHandlerOptions) => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"download.d.ts","sourceRoot":"","sources":["../../src/handlers/download.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,WAAW,EA0BX,WAAW,EAIX,eAAe,EAGf,wBAAwB,EAoBxB,KAAK,WAAW,EACnB,MAAM,mBAAmB,CAAC;AAiB3B,OAAO,EAIH,KAAK,0BAA0B,EAClC,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"download.d.ts","sourceRoot":"","sources":["../../src/handlers/download.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,6 +32,7 @@ const homepagesAsCode_1 = require("./homepagesAsCode");
|
|
|
32
32
|
const metadataFile_1 = require("./metadataFile");
|
|
33
33
|
const organizationContent_1 = require("./organizationContent");
|
|
34
34
|
const selectProject_1 = require("./selectProject");
|
|
35
|
+
const skillsAsCode_1 = require("./skillsAsCode");
|
|
35
36
|
const spacesAsCode_1 = require("./spacesAsCode");
|
|
36
37
|
// Keys only a merged chart's merge has read in the order they are
|
|
37
38
|
// thought about; everything else stays alphabetical, so no other file moves.
|
|
@@ -61,11 +62,12 @@ const compareContentKeys = (a, b) => {
|
|
|
61
62
|
};
|
|
62
63
|
const shouldDownloadAiAgents = ({ includeAll, includeAgents, agents, appsOnly, }) => appsOnly !== true &&
|
|
63
64
|
(includeAll === true || includeAgents === true || agents.length > 0);
|
|
64
|
-
const hasContentFilters = ({ spacesOnly, charts, dashboards, agents, alerts, googleSheets, scheduledDeliveries, virtualViews, externalConnections, homepages, apps, chartTypes, }) => !spacesOnly &&
|
|
65
|
+
const hasContentFilters = ({ spacesOnly, charts, dashboards, agents, alerts, googleSheets, scheduledDeliveries, virtualViews, externalConnections, homepages, apps, chartTypes, skills = [], }) => !spacesOnly &&
|
|
65
66
|
[
|
|
66
67
|
charts,
|
|
67
68
|
dashboards,
|
|
68
69
|
agents,
|
|
70
|
+
skills,
|
|
69
71
|
alerts,
|
|
70
72
|
googleSheets,
|
|
71
73
|
scheduledDeliveries,
|
|
@@ -836,11 +838,11 @@ const downloadAiAgents = async (projectId, ids, implicit, customPath) => {
|
|
|
836
838
|
if (implicit && isAiAgentsUnavailableError(error)) {
|
|
837
839
|
globalState_1.default.log(styles.warning('Skipping AI agents: they require Lightdash Enterprise and AI agent access.'));
|
|
838
840
|
globalState_1.default.debug(`Could not download AI agents: ${(0, common_1.getErrorMessage)(error)}`);
|
|
839
|
-
return 0;
|
|
841
|
+
return { downloaded: 0, agents: [] };
|
|
840
842
|
}
|
|
841
843
|
throw error;
|
|
842
844
|
}
|
|
843
|
-
return downloaded;
|
|
845
|
+
return { downloaded, agents };
|
|
844
846
|
};
|
|
845
847
|
const readAiAgentFiles = async (customPath) => {
|
|
846
848
|
const result = await (0, resource_1.readCodeResourceFiles)({
|
|
@@ -888,10 +890,12 @@ const upsertAiAgents = async (projectId, slugs, changes, force, customPath, impl
|
|
|
888
890
|
throw error;
|
|
889
891
|
}
|
|
890
892
|
(results.warnings ?? []).forEach((warning) => globalState_1.default.log(styles.warning(` ⚠ ${warning}`)));
|
|
893
|
+
(results.failed ?? []).forEach(({ slug, message }) => globalState_1.default.log(styles.error(` ✖ ${slug}: ${message}`)));
|
|
891
894
|
const counts = {
|
|
892
895
|
'AI agents created': results.created.length,
|
|
893
896
|
'AI agents updated': results.updated.length,
|
|
894
897
|
'AI agents skipped': results.unchanged.length,
|
|
898
|
+
'AI agents failed': (results.failed ?? []).length,
|
|
895
899
|
};
|
|
896
900
|
Object.entries(counts).forEach(([key, value]) => {
|
|
897
901
|
if (value > 0)
|
|
@@ -1127,6 +1131,7 @@ const downloadHandler = async (options) => {
|
|
|
1127
1131
|
await (0, organizationContent_1.downloadOrganizationContent)({
|
|
1128
1132
|
customPath: options.path,
|
|
1129
1133
|
config,
|
|
1134
|
+
skills: options.skills ?? [],
|
|
1130
1135
|
});
|
|
1131
1136
|
return;
|
|
1132
1137
|
}
|
|
@@ -1318,6 +1323,7 @@ const downloadHandler = async (options) => {
|
|
|
1318
1323
|
dashboardAppSlugs = appSlugs;
|
|
1319
1324
|
}
|
|
1320
1325
|
}
|
|
1326
|
+
const downloadedAgents = [];
|
|
1321
1327
|
if (!options.spacesOnly && shouldDownloadAiAgents(options)) {
|
|
1322
1328
|
const implicit = includeAllOptionalContent &&
|
|
1323
1329
|
options.includeAgents !== true &&
|
|
@@ -1325,8 +1331,38 @@ const downloadHandler = async (options) => {
|
|
|
1325
1331
|
await output.runItem({
|
|
1326
1332
|
label: 'AI agents',
|
|
1327
1333
|
action: async () => {
|
|
1328
|
-
const
|
|
1329
|
-
|
|
1334
|
+
const result = await downloadAiAgents(projectId, options.agents, implicit, options.path);
|
|
1335
|
+
downloadedAgents.push(...result.agents);
|
|
1336
|
+
counts.agentsNum = result.downloaded;
|
|
1337
|
+
return result.downloaded;
|
|
1338
|
+
},
|
|
1339
|
+
detail: (total) => `${total} downloaded`,
|
|
1340
|
+
});
|
|
1341
|
+
}
|
|
1342
|
+
const skillNames = options.skills ?? [];
|
|
1343
|
+
if (!options.spacesOnly &&
|
|
1344
|
+
options.appsOnly !== true &&
|
|
1345
|
+
(options.includeSkills === true || skillNames.length > 0)) {
|
|
1346
|
+
await output.runItem({
|
|
1347
|
+
label: 'Skills',
|
|
1348
|
+
action: async () => {
|
|
1349
|
+
// A project checkout stays minimal: without explicit
|
|
1350
|
+
// names, only the skills bound to the agents just downloaded.
|
|
1351
|
+
const boundNames = skillNames.length
|
|
1352
|
+
? skillNames
|
|
1353
|
+
: [
|
|
1354
|
+
...new Set(downloadedAgents.flatMap((agent) => agent.skills ?? [])),
|
|
1355
|
+
];
|
|
1356
|
+
if (boundNames.length === 0) {
|
|
1357
|
+
counts.skillsNum = 0;
|
|
1358
|
+
return 0;
|
|
1359
|
+
}
|
|
1360
|
+
const total = await (0, skillsAsCode_1.downloadSkills)({
|
|
1361
|
+
names: boundNames,
|
|
1362
|
+
customPath: options.path,
|
|
1363
|
+
basePath: (0, contentAsCodePaths_1.getDownloadFolder)(options.path),
|
|
1364
|
+
});
|
|
1365
|
+
counts.skillsNum = total;
|
|
1330
1366
|
return total;
|
|
1331
1367
|
},
|
|
1332
1368
|
detail: (total) => `${total} downloaded`,
|
|
@@ -2166,6 +2202,8 @@ const uploadHandler = async (options) => {
|
|
|
2166
2202
|
customPath: contentPathOption,
|
|
2167
2203
|
config,
|
|
2168
2204
|
sendInvites: options.sendInvites,
|
|
2205
|
+
skills: options.skills ?? [],
|
|
2206
|
+
deleteSkills: options.deleteSkills ?? [],
|
|
2169
2207
|
});
|
|
2170
2208
|
return;
|
|
2171
2209
|
}
|
|
@@ -2779,6 +2817,33 @@ const uploadHandler = async (options) => {
|
|
|
2779
2817
|
return result.changes;
|
|
2780
2818
|
},
|
|
2781
2819
|
});
|
|
2820
|
+
// Skills go before agents: an agent's `skills:` list must resolve
|
|
2821
|
+
// against skills that already exist on the server.
|
|
2822
|
+
{
|
|
2823
|
+
const skillFilters = options.skills ?? [];
|
|
2824
|
+
const deleteSkills = options.deleteSkills ?? [];
|
|
2825
|
+
if (hasFilters &&
|
|
2826
|
+
skillFilters.length === 0 &&
|
|
2827
|
+
deleteSkills.length === 0) {
|
|
2828
|
+
globalState_1.default.log(styles.warning(`No skill filters provided, skipping`));
|
|
2829
|
+
}
|
|
2830
|
+
else {
|
|
2831
|
+
changes = await runUploadChangesPhase({
|
|
2832
|
+
output,
|
|
2833
|
+
label: 'Skills',
|
|
2834
|
+
changes,
|
|
2835
|
+
action: () => (0, skillsAsCode_1.upsertSkills)({
|
|
2836
|
+
names: skillFilters,
|
|
2837
|
+
deleteNames: deleteSkills,
|
|
2838
|
+
basePath: (0, contentAsCodePaths_1.getDownloadFolder)(contentPathOption),
|
|
2839
|
+
changes,
|
|
2840
|
+
}),
|
|
2841
|
+
onCount: (count) => {
|
|
2842
|
+
counts.skillsNum = count;
|
|
2843
|
+
},
|
|
2844
|
+
});
|
|
2845
|
+
}
|
|
2846
|
+
}
|
|
2782
2847
|
if (!options.skipAgents) {
|
|
2783
2848
|
if (hasFilters && options.agents.length === 0) {
|
|
2784
2849
|
globalState_1.default.log(styles.warning(`No AI agent filters provided, skipping`));
|
|
@@ -3,9 +3,11 @@ type OrganizationContentOptions = {
|
|
|
3
3
|
customPath?: string;
|
|
4
4
|
config: Config;
|
|
5
5
|
sendInvites?: boolean;
|
|
6
|
+
skills?: string[];
|
|
7
|
+
deleteSkills?: string[];
|
|
6
8
|
};
|
|
7
9
|
export declare const getOrganizationContentFolder: (customPath?: string) => string;
|
|
8
|
-
export declare const downloadOrganizationContent: ({ customPath, config, }: OrganizationContentOptions) => Promise<void>;
|
|
9
|
-
export declare const uploadOrganizationContent: ({ customPath, config, sendInvites, }: OrganizationContentOptions) => Promise<void>;
|
|
10
|
+
export declare const downloadOrganizationContent: ({ customPath, config, skills, }: OrganizationContentOptions) => Promise<void>;
|
|
11
|
+
export declare const uploadOrganizationContent: ({ customPath, config, sendInvites, skills, deleteSkills, }: OrganizationContentOptions) => Promise<void>;
|
|
10
12
|
export {};
|
|
11
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/handlers/organizationContent/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/handlers/organizationContent/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAsC3C,KAAK,0BAA0B,GAAG;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IAGtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B,CAAC;AAqBF,eAAO,MAAM,4BAA4B,gBAAiB,MAAM,KAAG,MAClC,CAAC;AAElC,eAAO,MAAM,2BAA2B,oCAIrC,0BAA0B,KAAG,OAAO,CAAC,IAAI,CAqH3C,CAAC;AAEF,eAAO,MAAM,yBAAyB,+DAMnC,0BAA0B,KAAG,OAAO,CAAC,IAAI,CAiN3C,CAAC"}
|
|
@@ -10,6 +10,7 @@ const contentAsCodeOutput_1 = require("../../terminal/contentAsCodeOutput");
|
|
|
10
10
|
const registry_1 = require("../contentAsCode/registry");
|
|
11
11
|
const resource_1 = require("../contentAsCode/resource");
|
|
12
12
|
const contentAsCodePaths_1 = require("../contentAsCodePaths");
|
|
13
|
+
const skillsAsCode_1 = require("../skillsAsCode");
|
|
13
14
|
const customRoles_1 = require("./customRoles");
|
|
14
15
|
const groups_1 = require("./groups");
|
|
15
16
|
const themes_1 = require("./themes");
|
|
@@ -25,7 +26,7 @@ const isGroupServiceDisabledError = (error) => error instanceof common_1.Lightda
|
|
|
25
26
|
error.message === 'Group service is not enabled';
|
|
26
27
|
const getOrganizationContentFolder = (customPath) => (0, contentAsCodePaths_1.getDownloadFolder)(customPath);
|
|
27
28
|
exports.getOrganizationContentFolder = getOrganizationContentFolder;
|
|
28
|
-
const downloadOrganizationContent = async ({ customPath, config, }) => {
|
|
29
|
+
const downloadOrganizationContent = async ({ customPath, config, skills = [], }) => {
|
|
29
30
|
const organizationUuid = config.user?.organizationUuid;
|
|
30
31
|
if (!organizationUuid) {
|
|
31
32
|
throw new common_1.AuthorizationError(`No organization selected. Log in again with 'lightdash login'.`);
|
|
@@ -78,6 +79,15 @@ const downloadOrganizationContent = async ({ customPath, config, }) => {
|
|
|
78
79
|
action: () => (0, themes_1.downloadThemes)(organizationContentPath),
|
|
79
80
|
detail: (total) => `${total} downloaded`,
|
|
80
81
|
});
|
|
82
|
+
await output.runItem({
|
|
83
|
+
label: 'Skills',
|
|
84
|
+
action: () => (0, skillsAsCode_1.downloadSkills)({
|
|
85
|
+
names: skills,
|
|
86
|
+
customPath,
|
|
87
|
+
basePath: organizationContentPath,
|
|
88
|
+
}),
|
|
89
|
+
detail: (total) => `${total} downloaded`,
|
|
90
|
+
});
|
|
81
91
|
const renderedSummary = output.complete(organizationContentPath, (Date.now() - start) / 1000);
|
|
82
92
|
if (!renderedSummary) {
|
|
83
93
|
globalState_1.default.log(styles.success(`Downloaded organization content saved to ${organizationContentPath}`));
|
|
@@ -112,7 +122,7 @@ const downloadOrganizationContent = async ({ customPath, config, }) => {
|
|
|
112
122
|
}
|
|
113
123
|
};
|
|
114
124
|
exports.downloadOrganizationContent = downloadOrganizationContent;
|
|
115
|
-
const uploadOrganizationContent = async ({ customPath, config, sendInvites = false, }) => {
|
|
125
|
+
const uploadOrganizationContent = async ({ customPath, config, sendInvites = false, skills = [], deleteSkills = [], }) => {
|
|
116
126
|
(0, registry_1.assertCodeResourceDependencyOrder)(registry_1.ORGANIZATION_CODE_RESOURCES);
|
|
117
127
|
const organizationUuid = config.user?.organizationUuid;
|
|
118
128
|
if (!organizationUuid) {
|
|
@@ -189,6 +199,16 @@ const uploadOrganizationContent = async ({ customPath, config, sendInvites = fal
|
|
|
189
199
|
throw createThemePartialUploadError(`Processed themes: ${themeSummaryMessage}`);
|
|
190
200
|
}
|
|
191
201
|
output.completeItem(themeSummaryMessage);
|
|
202
|
+
output.startItem('Skills');
|
|
203
|
+
const skillChanges = await (0, skillsAsCode_1.upsertSkills)({
|
|
204
|
+
names: skills,
|
|
205
|
+
deleteNames: deleteSkills,
|
|
206
|
+
basePath: organizationContentPath,
|
|
207
|
+
changes: {},
|
|
208
|
+
});
|
|
209
|
+
output.completeItem(Object.entries(skillChanges)
|
|
210
|
+
.map(([key, value]) => `${value} ${key.replace('Skills ', '')}`)
|
|
211
|
+
.join(', ') || 'nothing to upload', skillChanges['Skills failed'] ? 'warning' : undefined);
|
|
192
212
|
const renderedSummary = output.complete(organizationContentPath, (Date.now() - start) / 1000);
|
|
193
213
|
if (!renderedSummary) {
|
|
194
214
|
globalState_1.default.log(styles.success(`Uploaded organization content from ${organizationContentPath}`));
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type SkillAsCode } from '@lightdash/common';
|
|
2
|
+
export declare const SKILLS_FOLDER_NAME = "skills";
|
|
3
|
+
export declare const getSkillsFolder: (basePath: string) => string;
|
|
4
|
+
/** Reads every `skills/<name>/` folder: SKILL.md plus flat markdown under resources/. Other files are left alone. */
|
|
5
|
+
export declare const readSkillFolders: (basePath: string) => Promise<{
|
|
6
|
+
skills: SkillAsCode[];
|
|
7
|
+
failures: string[];
|
|
8
|
+
}>;
|
|
9
|
+
export declare const writeSkillFolders: (basePath: string, skills: SkillAsCode[]) => Promise<number>;
|
|
10
|
+
export declare const downloadSkills: ({ names, customPath, basePath, }: {
|
|
11
|
+
names: string[];
|
|
12
|
+
customPath?: string;
|
|
13
|
+
basePath: string;
|
|
14
|
+
}) => Promise<number>;
|
|
15
|
+
export declare const upsertSkills: ({ names, deleteNames, basePath, changes, }: {
|
|
16
|
+
names: string[];
|
|
17
|
+
deleteNames: string[];
|
|
18
|
+
basePath: string;
|
|
19
|
+
changes: Record<string, number>;
|
|
20
|
+
}) => Promise<Record<string, number>>;
|
|
21
|
+
//# sourceMappingURL=skillsAsCode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skillsAsCode.d.ts","sourceRoot":"","sources":["../../src/handlers/skillsAsCode.ts"],"names":[],"mappings":"AAAA,OAAO,EAWH,KAAK,WAAW,EACnB,MAAM,mBAAmB,CAAC;AAO3B,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAQ3C,eAAO,MAAM,eAAe,aAAc,MAAM,KAAG,MACR,CAAC;AAiE5C,qHAAqH;AACrH,eAAO,MAAM,gBAAgB,aACf,MAAM,KACjB,OAAO,CAAC;IAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CAevD,CAAC;AA6BF,eAAO,MAAM,iBAAiB,aAChB,MAAM,UACR,WAAW,EAAE,KACtB,OAAO,CAAC,MAAM,CAgBhB,CAAC;AAEF,eAAO,MAAM,cAAc,qCAIxB;IACC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CACpB,KAAG,OAAO,CAAC,MAAM,CA8BjB,CAAC;AAYF,eAAO,MAAM,YAAY,+CAKtB;IACC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC,KAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAqEjC,CAAC"}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.upsertSkills = exports.downloadSkills = exports.writeSkillFolders = exports.readSkillFolders = exports.getSkillsFolder = exports.SKILLS_FOLDER_NAME = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const common_1 = require("@lightdash/common");
|
|
6
|
+
const fs_1 = require("fs");
|
|
7
|
+
const path = tslib_1.__importStar(require("path"));
|
|
8
|
+
const globalState_1 = tslib_1.__importDefault(require("../globalState"));
|
|
9
|
+
const styles = tslib_1.__importStar(require("../styles"));
|
|
10
|
+
const apiClient_1 = require("./dbt/apiClient");
|
|
11
|
+
exports.SKILLS_FOLDER_NAME = 'skills';
|
|
12
|
+
const isEnoent = (error) => error.code === 'ENOENT';
|
|
13
|
+
const isSkillsDisabledError = (error) => (0, common_1.getErrorMessage)(error).includes(common_1.AI_AGENT_SKILLS_DISABLED_MESSAGE);
|
|
14
|
+
const getSkillsFolder = (basePath) => path.join(basePath, exports.SKILLS_FOLDER_NAME);
|
|
15
|
+
exports.getSkillsFolder = getSkillsFolder;
|
|
16
|
+
const listEntries = async (folder, keep) => {
|
|
17
|
+
try {
|
|
18
|
+
return (await fs_1.promises.readdir(folder, { withFileTypes: true }))
|
|
19
|
+
.filter(keep)
|
|
20
|
+
.map((entry) => entry.name)
|
|
21
|
+
.sort();
|
|
22
|
+
}
|
|
23
|
+
catch (error) {
|
|
24
|
+
if (isEnoent(error))
|
|
25
|
+
return [];
|
|
26
|
+
throw error;
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
const listDirectories = (folder) => listEntries(folder, (entry) => entry.isDirectory());
|
|
30
|
+
const listMarkdownFiles = (folder) => listEntries(folder, (entry) => entry.isFile() && entry.name.endsWith('.md'));
|
|
31
|
+
const readSkillFolder = async (folder, name) => {
|
|
32
|
+
const skillPath = path.join(folder, name);
|
|
33
|
+
let skillMarkdown;
|
|
34
|
+
try {
|
|
35
|
+
skillMarkdown = await fs_1.promises.readFile(path.join(skillPath, common_1.AI_AGENT_SKILL_FILE_NAME), 'utf8');
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
if (isEnoent(error)) {
|
|
39
|
+
return {
|
|
40
|
+
failure: `${exports.SKILLS_FOLDER_NAME}/${name}: missing ${common_1.AI_AGENT_SKILL_FILE_NAME}`,
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
throw error;
|
|
44
|
+
}
|
|
45
|
+
const resourcesPath = path.join(skillPath, common_1.AI_AGENT_SKILL_RESOURCES_DIR);
|
|
46
|
+
const resourceEntries = await Promise.all((await listMarkdownFiles(resourcesPath)).map(async (fileName) => [
|
|
47
|
+
`${common_1.AI_AGENT_SKILL_RESOURCES_DIR}/${fileName}`,
|
|
48
|
+
await fs_1.promises.readFile(path.join(resourcesPath, fileName), 'utf8'),
|
|
49
|
+
]));
|
|
50
|
+
const files = Object.fromEntries([
|
|
51
|
+
[common_1.AI_AGENT_SKILL_FILE_NAME, skillMarkdown],
|
|
52
|
+
...resourceEntries,
|
|
53
|
+
]);
|
|
54
|
+
return { skill: { name, files } };
|
|
55
|
+
};
|
|
56
|
+
/** Reads every `skills/<name>/` folder: SKILL.md plus flat markdown under resources/. Other files are left alone. */
|
|
57
|
+
const readSkillFolders = async (basePath) => {
|
|
58
|
+
const folder = (0, exports.getSkillsFolder)(basePath);
|
|
59
|
+
const results = await Promise.all((await listDirectories(folder)).map((name) => readSkillFolder(folder, name)));
|
|
60
|
+
return {
|
|
61
|
+
skills: results.flatMap((result) => 'skill' in result ? [result.skill] : []),
|
|
62
|
+
failures: results.flatMap((result) => 'failure' in result ? [result.failure] : []),
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
exports.readSkillFolders = readSkillFolders;
|
|
66
|
+
/** Writes the skill's files and removes resources it no longer has; anything else in the folder survives. */
|
|
67
|
+
const writeSkillFolder = async (folder, skill) => {
|
|
68
|
+
const skillPath = path.join(folder, skill.name);
|
|
69
|
+
const resourcesPath = path.join(skillPath, common_1.AI_AGENT_SKILL_RESOURCES_DIR);
|
|
70
|
+
const resourceFiles = Object.keys(skill.files).filter((filePath) => filePath.startsWith(`${common_1.AI_AGENT_SKILL_RESOURCES_DIR}/`));
|
|
71
|
+
await fs_1.promises.mkdir(resourceFiles.length > 0 ? resourcesPath : skillPath, {
|
|
72
|
+
recursive: true,
|
|
73
|
+
});
|
|
74
|
+
const stale = (await listMarkdownFiles(resourcesPath)).filter((fileName) => !resourceFiles.includes(`${common_1.AI_AGENT_SKILL_RESOURCES_DIR}/${fileName}`));
|
|
75
|
+
await Promise.all([
|
|
76
|
+
...stale.map((fileName) => fs_1.promises.rm(path.join(resourcesPath, fileName))),
|
|
77
|
+
...Object.entries(skill.files).map(([filePath, content]) => fs_1.promises.writeFile(path.join(skillPath, filePath), content)),
|
|
78
|
+
]);
|
|
79
|
+
};
|
|
80
|
+
const writeSkillFolders = async (basePath, skills) => {
|
|
81
|
+
// Names come from the server; only a valid skill name may become a path.
|
|
82
|
+
const safe = skills.filter((skill) => {
|
|
83
|
+
if (common_1.AI_AGENT_SKILL_NAME_PATTERN.test(skill.name))
|
|
84
|
+
return true;
|
|
85
|
+
globalState_1.default.log(styles.warning(` ⚠ Skipped skill "${skill.name}": its name is not a valid folder name`));
|
|
86
|
+
return false;
|
|
87
|
+
});
|
|
88
|
+
if (safe.length === 0)
|
|
89
|
+
return 0;
|
|
90
|
+
const folder = (0, exports.getSkillsFolder)(basePath);
|
|
91
|
+
await fs_1.promises.mkdir(folder, { recursive: true });
|
|
92
|
+
await Promise.all(safe.map((skill) => writeSkillFolder(folder, skill)));
|
|
93
|
+
return safe.length;
|
|
94
|
+
};
|
|
95
|
+
exports.writeSkillFolders = writeSkillFolders;
|
|
96
|
+
const downloadSkills = async ({ names, customPath, basePath, }) => {
|
|
97
|
+
const query = new URLSearchParams(names.map((name) => ['names', name])).toString();
|
|
98
|
+
let results;
|
|
99
|
+
try {
|
|
100
|
+
results = await (0, apiClient_1.lightdashApi)({
|
|
101
|
+
method: 'GET',
|
|
102
|
+
url: `/api/v1/aiAgents/skills/code${query ? `?${query}` : ''}`,
|
|
103
|
+
body: undefined,
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
catch (error) {
|
|
107
|
+
if (!isSkillsDisabledError(error))
|
|
108
|
+
throw error;
|
|
109
|
+
globalState_1.default.log(styles.warning(' ⚠ Skipping skills: custom agent skills are not enabled for this organization.'));
|
|
110
|
+
return 0;
|
|
111
|
+
}
|
|
112
|
+
results.missingNames.forEach((name) => globalState_1.default.log(styles.warning(` ⚠ No skill named "${name}"`)));
|
|
113
|
+
const written = await (0, exports.writeSkillFolders)(basePath, results.skills);
|
|
114
|
+
globalState_1.default.debug(`Wrote ${written} skills to ${(0, exports.getSkillsFolder)(basePath)}${customPath ? ` (${customPath})` : ''}`);
|
|
115
|
+
return written;
|
|
116
|
+
};
|
|
117
|
+
exports.downloadSkills = downloadSkills;
|
|
118
|
+
const addCounts = (changes, counts) => Object.entries(counts).reduce((acc, [key, value]) => value > 0 ? { ...acc, [key]: (acc[key] ?? 0) + value } : acc, changes);
|
|
119
|
+
const upsertSkills = async ({ names, deleteNames, basePath, changes, }) => {
|
|
120
|
+
const { skills, failures } = await (0, exports.readSkillFolders)(basePath);
|
|
121
|
+
failures.forEach((failure) => globalState_1.default.log(styles.error(` ✖ ${failure}`)));
|
|
122
|
+
const selected = names.length
|
|
123
|
+
? skills.filter((skill) => names.includes(skill.name))
|
|
124
|
+
: skills;
|
|
125
|
+
names
|
|
126
|
+
.filter((name) => !skills.some((skill) => skill.name === name))
|
|
127
|
+
.forEach((name) => globalState_1.default.log(styles.warning(` ⚠ No skill folder named "${name}"`)));
|
|
128
|
+
// The same validator the editor and the API run, so a broken folder is reported before the upload.
|
|
129
|
+
const valid = selected.filter((skill) => {
|
|
130
|
+
const result = (0, common_1.validateAiAgentSkill)({
|
|
131
|
+
files: skill.files,
|
|
132
|
+
folderName: skill.name,
|
|
133
|
+
});
|
|
134
|
+
result.errors.forEach((issue) => globalState_1.default.log(styles.error(` ✖ ${exports.SKILLS_FOLDER_NAME}/${skill.name}/${issue.path}: ${issue.message}`)));
|
|
135
|
+
return result.valid;
|
|
136
|
+
});
|
|
137
|
+
const skippedInvalid = selected.length - valid.length;
|
|
138
|
+
if (valid.length === 0 && deleteNames.length === 0) {
|
|
139
|
+
return addCounts(changes, { 'Skills failed': skippedInvalid });
|
|
140
|
+
}
|
|
141
|
+
globalState_1.default.debug(`Uploading ${valid.length} skill folders`);
|
|
142
|
+
let results;
|
|
143
|
+
try {
|
|
144
|
+
results = await (0, apiClient_1.lightdashApi)({
|
|
145
|
+
method: 'POST',
|
|
146
|
+
url: '/api/v1/aiAgents/skills/code',
|
|
147
|
+
body: JSON.stringify({
|
|
148
|
+
skills: valid,
|
|
149
|
+
deleteNames,
|
|
150
|
+
}),
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
catch (error) {
|
|
154
|
+
if (isSkillsDisabledError(error)) {
|
|
155
|
+
globalState_1.default.log(styles.warning(` ⚠ Skipped ${valid.length} skill folders: custom agent skills are not enabled for this organization.`));
|
|
156
|
+
return addCounts(changes, { 'Skills failed': skippedInvalid });
|
|
157
|
+
}
|
|
158
|
+
throw new Error(`Could not upload skills: ${(0, common_1.getErrorMessage)(error)}`);
|
|
159
|
+
}
|
|
160
|
+
results.warnings.forEach((warning) => globalState_1.default.log(styles.warning(` ⚠ ${warning}`)));
|
|
161
|
+
results.failed.forEach(({ name, message }) => globalState_1.default.log(styles.error(` ✖ ${name}: ${message}`)));
|
|
162
|
+
return addCounts(changes, {
|
|
163
|
+
'Skills created': results.created.length,
|
|
164
|
+
'Skills updated': results.updated.length,
|
|
165
|
+
'Skills skipped': results.unchanged.length,
|
|
166
|
+
'Skills deleted': results.deleted.length,
|
|
167
|
+
'Skills failed': results.failed.length + skippedInvalid,
|
|
168
|
+
});
|
|
169
|
+
};
|
|
170
|
+
exports.upsertSkills = upsertSkills;
|
package/dist/index.js
CHANGED
|
@@ -347,6 +347,8 @@ const ORGANIZATION_MODE_OPTIONS = new Set([
|
|
|
347
347
|
'path',
|
|
348
348
|
'sendInvites',
|
|
349
349
|
'verbose',
|
|
350
|
+
'skills',
|
|
351
|
+
'deleteSkills',
|
|
350
352
|
]);
|
|
351
353
|
const withOrganizationMode = (handler) => async (options, command) => {
|
|
352
354
|
if (!options.organization && options.sendInvites) {
|
|
@@ -374,6 +376,8 @@ const downloadCommand = commander_1.program
|
|
|
374
376
|
.option('-d, --dashboards <dashboards...>', 'specify dashboard slugs, uuids or urls to download', refsArgument_1.parseRefsArgument, [])
|
|
375
377
|
.option('--agents <slugs...>', 'specify AI agent slugs to download', refsArgument_1.parseRefsArgument, [])
|
|
376
378
|
.option('--include-agents', "include all of the project's AI agents (enterprise)", false)
|
|
379
|
+
.option('--skills <names...>', 'specify custom agent skill names to download', refsArgument_1.parseRefsArgument, [])
|
|
380
|
+
.option('--include-skills', 'include the custom skills bound to the downloaded AI agents (enterprise)', false)
|
|
377
381
|
.option('--alerts <slugs...>', 'specify alert slugs to download', refsArgument_1.parseRefsArgument, [])
|
|
378
382
|
.option('--virtual-views <slugs...>', 'specify virtual view slugs to download', refsArgument_1.parseRefsArgument, [])
|
|
379
383
|
.option('--google-sheets <slugs...>', 'specify Google Sheets sync slugs to download', refsArgument_1.parseRefsArgument, [])
|
|
@@ -414,6 +418,8 @@ const uploadCommand = commander_1.program
|
|
|
414
418
|
.option('-c, --charts <charts...>', 'specify chart slugs to force upload', refsArgument_1.parseRefsArgument, [])
|
|
415
419
|
.option('-d, --dashboards <dashboards...>', 'specify dashboard slugs to force upload', refsArgument_1.parseRefsArgument, [])
|
|
416
420
|
.option('--agents <slugs...>', 'specify AI agent slugs to upload', refsArgument_1.parseRefsArgument, [])
|
|
421
|
+
.option('--skills <names...>', 'specify custom agent skill names to upload', refsArgument_1.parseRefsArgument, [])
|
|
422
|
+
.option('--delete-skills <names...>', 'unbind these custom agent skills from every agent and delete them', refsArgument_1.parseRefsArgument, [])
|
|
417
423
|
.option('--alerts <slugs...>', 'specify alert slugs to upload', refsArgument_1.parseRefsArgument, [])
|
|
418
424
|
.option('--virtual-views <slugs...>', 'specify virtual view slugs to upload', refsArgument_1.parseRefsArgument, [])
|
|
419
425
|
.option('--google-sheets <slugs...>', 'specify Google Sheets sync slugs to upload', refsArgument_1.parseRefsArgument, [])
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lightdash/cli",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.337.0",
|
|
4
4
|
"description": "Lightdash CLI tool",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
"@actions/core": "1.11.1",
|
|
23
23
|
"@aws-sdk/credential-providers": "3.995.0",
|
|
24
24
|
"@casl/ability": "6.8.0",
|
|
25
|
-
"@lightdash/common": "2.
|
|
26
|
-
"@lightdash/warehouses": "2.
|
|
25
|
+
"@lightdash/common": "2.337.0",
|
|
26
|
+
"@lightdash/warehouses": "2.337.0",
|
|
27
27
|
"@sidvind/better-ajv-errors": "7.0.0",
|
|
28
28
|
"@types/columnify": "1.5.1",
|
|
29
29
|
"ajv": "8.18.0",
|