ai-devkit 0.8.1 → 0.9.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/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +24 -24
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/memory.d.ts.map +1 -1
- package/dist/commands/memory.js +6 -9
- package/dist/commands/memory.js.map +1 -1
- package/dist/commands/phase.js +7 -7
- package/dist/commands/phase.js.map +1 -1
- package/dist/commands/setup.js +16 -16
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/skill.d.ts.map +1 -1
- package/dist/commands/skill.js +32 -20
- package/dist/commands/skill.js.map +1 -1
- package/dist/lib/SkillManager.d.ts +31 -0
- package/dist/lib/SkillManager.d.ts.map +1 -1
- package/dist/lib/SkillManager.js +159 -26
- package/dist/lib/SkillManager.js.map +1 -1
- package/dist/util/git.d.ts +12 -0
- package/dist/util/git.d.ts.map +1 -1
- package/dist/util/git.js +28 -0
- package/dist/util/git.js.map +1 -1
- package/dist/util/terminal-ui.d.ts +122 -0
- package/dist/util/terminal-ui.d.ts.map +1 -0
- package/dist/util/terminal-ui.js +176 -0
- package/dist/util/terminal-ui.js.map +1 -0
- package/package.json +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAuB,MAAM,UAAU,CAAC;AAmChE,UAAU,WAAW;IACnB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,iBAqHrD"}
|
package/dist/commands/init.js
CHANGED
|
@@ -6,13 +6,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.initCommand = initCommand;
|
|
7
7
|
const child_process_1 = require("child_process");
|
|
8
8
|
const inquirer_1 = __importDefault(require("inquirer"));
|
|
9
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
10
9
|
const Config_1 = require("../lib/Config");
|
|
11
10
|
const TemplateManager_1 = require("../lib/TemplateManager");
|
|
12
11
|
const EnvironmentSelector_1 = require("../lib/EnvironmentSelector");
|
|
13
12
|
const PhaseSelector_1 = require("../lib/PhaseSelector");
|
|
14
13
|
const types_1 = require("../types");
|
|
15
14
|
const env_js_1 = require("../util/env.js");
|
|
15
|
+
const terminal_ui_1 = require("../util/terminal-ui");
|
|
16
16
|
function isGitAvailable() {
|
|
17
17
|
try {
|
|
18
18
|
(0, child_process_1.execSync)('git --version', { stdio: 'ignore' });
|
|
@@ -24,7 +24,7 @@ function isGitAvailable() {
|
|
|
24
24
|
}
|
|
25
25
|
function ensureGitRepository() {
|
|
26
26
|
if (!isGitAvailable()) {
|
|
27
|
-
|
|
27
|
+
terminal_ui_1.ui.warning('Git is not installed or not available on the PATH. Skipping repository initialization.');
|
|
28
28
|
return;
|
|
29
29
|
}
|
|
30
30
|
try {
|
|
@@ -33,10 +33,10 @@ function ensureGitRepository() {
|
|
|
33
33
|
catch {
|
|
34
34
|
try {
|
|
35
35
|
(0, child_process_1.execSync)('git init', { stdio: 'ignore' });
|
|
36
|
-
|
|
36
|
+
terminal_ui_1.ui.success('Initialized a new git repository');
|
|
37
37
|
}
|
|
38
38
|
catch (error) {
|
|
39
|
-
|
|
39
|
+
terminal_ui_1.ui.error(`Failed to initialize git repository: ${error instanceof Error ? error.message : error}`);
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
42
|
}
|
|
@@ -56,22 +56,22 @@ async function initCommand(options) {
|
|
|
56
56
|
}
|
|
57
57
|
]);
|
|
58
58
|
if (!shouldContinue) {
|
|
59
|
-
|
|
59
|
+
terminal_ui_1.ui.warning('Initialization cancelled.');
|
|
60
60
|
return;
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
63
|
let selectedEnvironments = options.environment || [];
|
|
64
64
|
if (selectedEnvironments.length === 0) {
|
|
65
|
-
|
|
65
|
+
terminal_ui_1.ui.info('AI Environment Setup');
|
|
66
66
|
selectedEnvironments = await environmentSelector.selectEnvironments();
|
|
67
67
|
}
|
|
68
68
|
if (selectedEnvironments.length === 0) {
|
|
69
|
-
|
|
69
|
+
terminal_ui_1.ui.warning('No environments selected. Initialization cancelled.');
|
|
70
70
|
return;
|
|
71
71
|
}
|
|
72
72
|
for (const envCode of selectedEnvironments) {
|
|
73
73
|
if (!(0, env_js_1.isValidEnvironmentCode)(envCode)) {
|
|
74
|
-
|
|
74
|
+
terminal_ui_1.ui.error(`Invalid environment code: ${envCode}`);
|
|
75
75
|
return;
|
|
76
76
|
}
|
|
77
77
|
}
|
|
@@ -83,32 +83,32 @@ async function initCommand(options) {
|
|
|
83
83
|
}
|
|
84
84
|
let shouldProceedWithSetup = true;
|
|
85
85
|
if (existingEnvironments.length > 0) {
|
|
86
|
-
|
|
86
|
+
terminal_ui_1.ui.warning(`The following environments are already set up: ${existingEnvironments.join(', ')}`);
|
|
87
87
|
shouldProceedWithSetup = await environmentSelector.confirmOverride(existingEnvironments);
|
|
88
88
|
}
|
|
89
89
|
if (!shouldProceedWithSetup) {
|
|
90
|
-
|
|
90
|
+
terminal_ui_1.ui.warning('Environment setup cancelled.');
|
|
91
91
|
return;
|
|
92
92
|
}
|
|
93
93
|
const selectedPhases = await phaseSelector.selectPhases(options.all, options.phases);
|
|
94
94
|
if (selectedPhases.length === 0) {
|
|
95
|
-
|
|
95
|
+
terminal_ui_1.ui.warning('No phases selected. Nothing to initialize.');
|
|
96
96
|
return;
|
|
97
97
|
}
|
|
98
|
-
|
|
98
|
+
terminal_ui_1.ui.text('Initializing AI DevKit...', { breakline: true });
|
|
99
99
|
let config = await configManager.read();
|
|
100
100
|
if (!config) {
|
|
101
101
|
config = await configManager.create();
|
|
102
|
-
|
|
102
|
+
terminal_ui_1.ui.success('Created configuration file');
|
|
103
103
|
}
|
|
104
104
|
await configManager.setEnvironments(selectedEnvironments);
|
|
105
|
-
|
|
105
|
+
terminal_ui_1.ui.success('Updated configuration with selected environments');
|
|
106
106
|
environmentSelector.displaySelectionSummary(selectedEnvironments);
|
|
107
107
|
phaseSelector.displaySelectionSummary(selectedPhases);
|
|
108
|
-
|
|
108
|
+
terminal_ui_1.ui.text('Setting up environment templates...', { breakline: true });
|
|
109
109
|
const envFiles = await templateManager.setupMultipleEnvironments(selectedEnvironments);
|
|
110
110
|
envFiles.forEach(file => {
|
|
111
|
-
|
|
111
|
+
terminal_ui_1.ui.success(`Created ${file}`);
|
|
112
112
|
});
|
|
113
113
|
for (const phase of selectedPhases) {
|
|
114
114
|
const exists = await templateManager.fileExists(phase);
|
|
@@ -127,17 +127,17 @@ async function initCommand(options) {
|
|
|
127
127
|
if (shouldCopy) {
|
|
128
128
|
await templateManager.copyPhaseTemplate(phase);
|
|
129
129
|
await configManager.addPhase(phase);
|
|
130
|
-
|
|
130
|
+
terminal_ui_1.ui.success(`Created ${phase} phase`);
|
|
131
131
|
}
|
|
132
132
|
else {
|
|
133
|
-
|
|
133
|
+
terminal_ui_1.ui.warning(`Skipped ${phase} phase`);
|
|
134
134
|
}
|
|
135
135
|
}
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
136
|
+
terminal_ui_1.ui.text('AI DevKit initialized successfully!', { breakline: true });
|
|
137
|
+
terminal_ui_1.ui.info('Next steps:');
|
|
138
|
+
terminal_ui_1.ui.text(' • Review and customize templates in docs/ai/');
|
|
139
|
+
terminal_ui_1.ui.text(' • Your AI environments are ready to use with the generated configurations');
|
|
140
|
+
terminal_ui_1.ui.text(' • Run `ai-devkit phase <name>` to add more phases later');
|
|
141
|
+
terminal_ui_1.ui.text(' • Run `ai-devkit init` again to add more environments\n');
|
|
142
142
|
}
|
|
143
143
|
//# sourceMappingURL=init.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/commands/memory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/commands/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKzC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA2C5D"}
|
package/dist/commands/memory.js
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.registerMemoryCommand = registerMemoryCommand;
|
|
7
|
-
const
|
|
8
|
-
const
|
|
4
|
+
const memory_1 = require("@ai-devkit/memory");
|
|
5
|
+
const terminal_ui_1 = require("../util/terminal-ui");
|
|
9
6
|
function registerMemoryCommand(program) {
|
|
10
7
|
const memoryCommand = program
|
|
11
8
|
.command('memory')
|
|
@@ -19,12 +16,12 @@ function registerMemoryCommand(program) {
|
|
|
19
16
|
.option('-s, --scope <scope>', 'Scope: global, project:<name>, or repo:<name>', 'global')
|
|
20
17
|
.action((options) => {
|
|
21
18
|
try {
|
|
22
|
-
const result = (0,
|
|
19
|
+
const result = (0, memory_1.memoryStoreCommand)(options);
|
|
23
20
|
console.log(JSON.stringify(result, null, 2));
|
|
24
21
|
}
|
|
25
22
|
catch (error) {
|
|
26
23
|
const message = error instanceof Error ? error.message : String(error);
|
|
27
|
-
|
|
24
|
+
terminal_ui_1.ui.error(message);
|
|
28
25
|
process.exit(1);
|
|
29
26
|
}
|
|
30
27
|
});
|
|
@@ -37,7 +34,7 @@ function registerMemoryCommand(program) {
|
|
|
37
34
|
.option('-l, --limit <limit>', 'Maximum results (1-20)', '5')
|
|
38
35
|
.action((options) => {
|
|
39
36
|
try {
|
|
40
|
-
const result = (0,
|
|
37
|
+
const result = (0, memory_1.memorySearchCommand)({
|
|
41
38
|
...options,
|
|
42
39
|
limit: options.limit ? parseInt(options.limit, 10) : 5
|
|
43
40
|
});
|
|
@@ -45,7 +42,7 @@ function registerMemoryCommand(program) {
|
|
|
45
42
|
}
|
|
46
43
|
catch (error) {
|
|
47
44
|
const message = error instanceof Error ? error.message : String(error);
|
|
48
|
-
|
|
45
|
+
terminal_ui_1.ui.error(message);
|
|
49
46
|
process.exit(1);
|
|
50
47
|
}
|
|
51
48
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/commands/memory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/commands/memory.ts"],"names":[],"mappings":";;AAKA,sDA2CC;AA/CD,8CAA4E;AAE5E,qDAAyC;AAEzC,SAAgB,qBAAqB,CAAC,OAAgB;IACpD,MAAM,aAAa,GAAG,OAAO;SAC1B,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,4CAA4C,CAAC,CAAC;IAE7D,aAAa;SACV,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,4BAA4B,CAAC;SACzC,cAAc,CAAC,qBAAqB,EAAE,4CAA4C,CAAC;SACnF,cAAc,CAAC,yBAAyB,EAAE,+CAA+C,CAAC;SAC1F,MAAM,CAAC,eAAe,EAAE,4CAA4C,CAAC;SACrE,MAAM,CAAC,qBAAqB,EAAE,+CAA+C,EAAE,QAAQ,CAAC;SACxF,MAAM,CAAC,CAAC,OAA2B,EAAE,EAAE;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAA,2BAAkB,EAAC,OAAO,CAAC,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,gBAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,aAAa;SACV,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,4BAA4B,CAAC;SACzC,cAAc,CAAC,qBAAqB,EAAE,4BAA4B,CAAC;SACnE,MAAM,CAAC,eAAe,EAAE,+CAA+C,CAAC;SACxE,MAAM,CAAC,qBAAqB,EAAE,cAAc,CAAC;SAC7C,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,EAAE,GAAG,CAAC;SAC5D,MAAM,CAAC,CAAC,OAAiD,EAAE,EAAE;QAC5D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAA,4BAAmB,EAAC;gBACjC,GAAG,OAAO;gBACV,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aACvD,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,gBAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
|
package/dist/commands/phase.js
CHANGED
|
@@ -5,15 +5,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.phaseCommand = phaseCommand;
|
|
7
7
|
const inquirer_1 = __importDefault(require("inquirer"));
|
|
8
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
9
8
|
const Config_1 = require("../lib/Config");
|
|
10
9
|
const TemplateManager_1 = require("../lib/TemplateManager");
|
|
11
10
|
const types_1 = require("../types");
|
|
11
|
+
const terminal_ui_1 = require("../util/terminal-ui");
|
|
12
12
|
async function phaseCommand(phaseName) {
|
|
13
13
|
const configManager = new Config_1.ConfigManager();
|
|
14
14
|
const templateManager = new TemplateManager_1.TemplateManager();
|
|
15
15
|
if (!(await configManager.exists())) {
|
|
16
|
-
|
|
16
|
+
terminal_ui_1.ui.error('AI DevKit not initialized. Run `ai-devkit init` first.');
|
|
17
17
|
return;
|
|
18
18
|
}
|
|
19
19
|
let phase;
|
|
@@ -21,14 +21,14 @@ async function phaseCommand(phaseName) {
|
|
|
21
21
|
phase = phaseName;
|
|
22
22
|
}
|
|
23
23
|
else if (phaseName) {
|
|
24
|
-
|
|
24
|
+
terminal_ui_1.ui.error(`Unknown phase "${phaseName}". Available phases: ${types_1.AVAILABLE_PHASES.join(', ')}`);
|
|
25
25
|
return;
|
|
26
26
|
}
|
|
27
27
|
else {
|
|
28
28
|
const config = await configManager.read();
|
|
29
29
|
const availableToAdd = types_1.AVAILABLE_PHASES.filter(p => !config?.initializedPhases.includes(p));
|
|
30
30
|
if (availableToAdd.length === 0) {
|
|
31
|
-
|
|
31
|
+
terminal_ui_1.ui.warning('All phases are already initialized.');
|
|
32
32
|
const { shouldReinitialize } = await inquirer_1.default.prompt([
|
|
33
33
|
{
|
|
34
34
|
type: 'confirm',
|
|
@@ -68,12 +68,12 @@ async function phaseCommand(phaseName) {
|
|
|
68
68
|
shouldCopy = overwrite;
|
|
69
69
|
}
|
|
70
70
|
if (!shouldCopy) {
|
|
71
|
-
|
|
71
|
+
terminal_ui_1.ui.warning(`Cancelled adding ${phase} phase.`);
|
|
72
72
|
return;
|
|
73
73
|
}
|
|
74
74
|
const file = await templateManager.copyPhaseTemplate(phase);
|
|
75
75
|
await configManager.addPhase(phase);
|
|
76
|
-
|
|
77
|
-
|
|
76
|
+
terminal_ui_1.ui.success(`${types_1.PHASE_DISPLAY_NAMES[phase]} created successfully!`);
|
|
77
|
+
terminal_ui_1.ui.info(` Location: ${file}\n`);
|
|
78
78
|
}
|
|
79
79
|
//# sourceMappingURL=phase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phase.js","sourceRoot":"","sources":["../../src/commands/phase.ts"],"names":[],"mappings":";;;;;AAMA,oCA2EC;AAjFD,wDAAgC;AAChC,
|
|
1
|
+
{"version":3,"file":"phase.js","sourceRoot":"","sources":["../../src/commands/phase.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/setup.js
CHANGED
|
@@ -38,15 +38,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.setupCommand = setupCommand;
|
|
40
40
|
const inquirer_1 = __importDefault(require("inquirer"));
|
|
41
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
42
41
|
const path = __importStar(require("path"));
|
|
43
42
|
const TemplateManager_1 = require("../lib/TemplateManager");
|
|
44
43
|
const EnvironmentSelector_1 = require("../lib/EnvironmentSelector");
|
|
45
44
|
const env_1 = require("../util/env");
|
|
45
|
+
const terminal_ui_1 = require("../util/terminal-ui");
|
|
46
46
|
async function setupCommand(options) {
|
|
47
47
|
if (!options.global) {
|
|
48
|
-
|
|
49
|
-
|
|
48
|
+
terminal_ui_1.ui.warning('Please use --global flag to set up global commands.');
|
|
49
|
+
terminal_ui_1.ui.info('Usage: ai-devkit setup --global');
|
|
50
50
|
return;
|
|
51
51
|
}
|
|
52
52
|
await setupGlobalCommands();
|
|
@@ -54,29 +54,29 @@ async function setupCommand(options) {
|
|
|
54
54
|
async function setupGlobalCommands() {
|
|
55
55
|
const templateManager = new TemplateManager_1.TemplateManager();
|
|
56
56
|
const environmentSelector = new EnvironmentSelector_1.EnvironmentSelector();
|
|
57
|
-
|
|
58
|
-
|
|
57
|
+
terminal_ui_1.ui.info('Global Setup\n');
|
|
58
|
+
terminal_ui_1.ui.info('This will copy AI DevKit commands to your global environment folders.\n');
|
|
59
59
|
const selectedEnvironments = await environmentSelector.selectGlobalEnvironments();
|
|
60
60
|
if (selectedEnvironments.length === 0) {
|
|
61
|
-
|
|
61
|
+
terminal_ui_1.ui.warning('No environments selected. Setup cancelled.');
|
|
62
62
|
return;
|
|
63
63
|
}
|
|
64
64
|
environmentSelector.displaySelectionSummary(selectedEnvironments);
|
|
65
65
|
for (const envCode of selectedEnvironments) {
|
|
66
66
|
await processGlobalEnvironment(envCode, templateManager);
|
|
67
67
|
}
|
|
68
|
-
|
|
69
|
-
|
|
68
|
+
terminal_ui_1.ui.success('\nGlobal setup completed successfully!\n');
|
|
69
|
+
terminal_ui_1.ui.info('Your commands are now available globally for the selected environments.');
|
|
70
70
|
}
|
|
71
71
|
async function processGlobalEnvironment(envCode, templateManager) {
|
|
72
72
|
const envName = (0, env_1.getEnvironmentDisplayName)(envCode);
|
|
73
73
|
const env = (0, env_1.getEnvironment)(envCode);
|
|
74
74
|
if (!env || !env.globalCommandPath) {
|
|
75
|
-
|
|
75
|
+
terminal_ui_1.ui.error(`${envName} does not support global setup.`);
|
|
76
76
|
return;
|
|
77
77
|
}
|
|
78
|
-
|
|
79
|
-
|
|
78
|
+
terminal_ui_1.ui.info(`\nSetting up ${envName}...`);
|
|
79
|
+
terminal_ui_1.ui.info(` Global path: ~/${env.globalCommandPath}`);
|
|
80
80
|
const commandsExist = await templateManager.checkGlobalCommandsExist(envCode);
|
|
81
81
|
if (commandsExist) {
|
|
82
82
|
const { shouldOverwrite } = await inquirer_1.default.prompt([
|
|
@@ -88,24 +88,24 @@ async function processGlobalEnvironment(envCode, templateManager) {
|
|
|
88
88
|
}
|
|
89
89
|
]);
|
|
90
90
|
if (!shouldOverwrite) {
|
|
91
|
-
|
|
91
|
+
terminal_ui_1.ui.warning(`Skipped ${envName} (files already exist)`);
|
|
92
92
|
return;
|
|
93
93
|
}
|
|
94
94
|
}
|
|
95
95
|
try {
|
|
96
96
|
const copiedFiles = await templateManager.copyCommandsToGlobal(envCode);
|
|
97
|
-
|
|
97
|
+
terminal_ui_1.ui.success(`Copied ${copiedFiles.length} commands to ${envName} global folder`);
|
|
98
98
|
copiedFiles.forEach(file => {
|
|
99
99
|
const fileName = path.basename(file);
|
|
100
|
-
|
|
100
|
+
terminal_ui_1.ui.info(` • ${fileName}`);
|
|
101
101
|
});
|
|
102
102
|
}
|
|
103
103
|
catch (error) {
|
|
104
104
|
if (error instanceof Error) {
|
|
105
|
-
|
|
105
|
+
terminal_ui_1.ui.error(`Failed to set up ${envName}: ${error.message}`);
|
|
106
106
|
}
|
|
107
107
|
else {
|
|
108
|
-
|
|
108
|
+
terminal_ui_1.ui.error(`Failed to set up ${envName}`);
|
|
109
109
|
}
|
|
110
110
|
}
|
|
111
111
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,oCAQC;AApBD,wDAAgC;AAChC,
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../../src/commands/skill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../../src/commands/skill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAqF3D"}
|
package/dist/commands/skill.js
CHANGED
|
@@ -7,6 +7,7 @@ exports.registerSkillCommand = registerSkillCommand;
|
|
|
7
7
|
const chalk_1 = __importDefault(require("chalk"));
|
|
8
8
|
const Config_1 = require("../lib/Config");
|
|
9
9
|
const SkillManager_1 = require("../lib/SkillManager");
|
|
10
|
+
const terminal_ui_1 = require("../util/terminal-ui");
|
|
10
11
|
function registerSkillCommand(program) {
|
|
11
12
|
const skillCommand = program
|
|
12
13
|
.command('skill')
|
|
@@ -21,7 +22,7 @@ function registerSkillCommand(program) {
|
|
|
21
22
|
await skillManager.addSkill(registryRepo, skillName);
|
|
22
23
|
}
|
|
23
24
|
catch (error) {
|
|
24
|
-
|
|
25
|
+
terminal_ui_1.ui.error(`Failed to add skill: ${error.message}`);
|
|
25
26
|
process.exit(1);
|
|
26
27
|
}
|
|
27
28
|
});
|
|
@@ -34,28 +35,25 @@ function registerSkillCommand(program) {
|
|
|
34
35
|
const skillManager = new SkillManager_1.SkillManager(configManager);
|
|
35
36
|
const skills = await skillManager.listSkills();
|
|
36
37
|
if (skills.length === 0) {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
terminal_ui_1.ui.warning('No skills installed in this project.');
|
|
39
|
+
terminal_ui_1.ui.info('Install a skill with: ai-devkit skill add <registry>/<repo> <skill-name>');
|
|
40
|
+
process.exit(0);
|
|
40
41
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
console.log(' ' +
|
|
51
|
-
chalk_1.default.cyan(skill.name.padEnd(maxNameLength + 2)) +
|
|
52
|
-
chalk_1.default.dim(skill.registry.padEnd(maxRegistryLength + 2)) +
|
|
53
|
-
chalk_1.default.green(skill.environments.join(', ')));
|
|
42
|
+
terminal_ui_1.ui.text('Installed Skills:', { breakline: true });
|
|
43
|
+
terminal_ui_1.ui.table({
|
|
44
|
+
headers: ['Skill Name', 'Registry', 'Environments'],
|
|
45
|
+
rows: skills.map(skill => [
|
|
46
|
+
skill.name,
|
|
47
|
+
skill.registry,
|
|
48
|
+
skill.environments.join(', ')
|
|
49
|
+
]),
|
|
50
|
+
columnStyles: [chalk_1.default.cyan, chalk_1.default.dim, chalk_1.default.green]
|
|
54
51
|
});
|
|
55
|
-
|
|
52
|
+
terminal_ui_1.ui.text(`Total: ${skills.length} skill(s)`, { breakline: true });
|
|
53
|
+
process.exit(0);
|
|
56
54
|
}
|
|
57
55
|
catch (error) {
|
|
58
|
-
|
|
56
|
+
terminal_ui_1.ui.error(`Failed to list skills: ${error.message}`);
|
|
59
57
|
process.exit(1);
|
|
60
58
|
}
|
|
61
59
|
});
|
|
@@ -69,7 +67,21 @@ function registerSkillCommand(program) {
|
|
|
69
67
|
await skillManager.removeSkill(skillName);
|
|
70
68
|
}
|
|
71
69
|
catch (error) {
|
|
72
|
-
|
|
70
|
+
terminal_ui_1.ui.error(`Failed to remove skill: ${error.message}`);
|
|
71
|
+
process.exit(1);
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
skillCommand
|
|
75
|
+
.command('update [registry-id]')
|
|
76
|
+
.description('Update skills from registries (e.g., ai-devkit skill update or ai-devkit skill update anthropic/skills)')
|
|
77
|
+
.action(async (registryId) => {
|
|
78
|
+
try {
|
|
79
|
+
const configManager = new Config_1.ConfigManager();
|
|
80
|
+
const skillManager = new SkillManager_1.SkillManager(configManager);
|
|
81
|
+
await skillManager.updateSkills(registryId);
|
|
82
|
+
}
|
|
83
|
+
catch (error) {
|
|
84
|
+
terminal_ui_1.ui.error(`Failed to update skills: ${error.message}`);
|
|
73
85
|
process.exit(1);
|
|
74
86
|
}
|
|
75
87
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill.js","sourceRoot":"","sources":["../../src/commands/skill.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"skill.js","sourceRoot":"","sources":["../../src/commands/skill.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,19 @@ interface InstalledSkill {
|
|
|
6
6
|
registry: string;
|
|
7
7
|
environments: string[];
|
|
8
8
|
}
|
|
9
|
+
interface UpdateResult {
|
|
10
|
+
registryId: string;
|
|
11
|
+
status: 'success' | 'skipped' | 'error';
|
|
12
|
+
message: string;
|
|
13
|
+
error?: Error;
|
|
14
|
+
}
|
|
15
|
+
interface UpdateSummary {
|
|
16
|
+
total: number;
|
|
17
|
+
successful: number;
|
|
18
|
+
skipped: number;
|
|
19
|
+
failed: number;
|
|
20
|
+
results: UpdateResult[];
|
|
21
|
+
}
|
|
9
22
|
export declare class SkillManager {
|
|
10
23
|
private configManager;
|
|
11
24
|
private environmentSelector;
|
|
@@ -26,11 +39,29 @@ export declare class SkillManager {
|
|
|
26
39
|
* @param skillName - Name of the skill to remove
|
|
27
40
|
*/
|
|
28
41
|
removeSkill(skillName: string): Promise<void>;
|
|
42
|
+
/**
|
|
43
|
+
* Update skills from registries
|
|
44
|
+
* @param registryId - Optional specific registry to update (e.g., "anthropic/skills")
|
|
45
|
+
* @returns UpdateSummary with detailed results
|
|
46
|
+
*/
|
|
47
|
+
updateSkills(registryId?: string): Promise<UpdateSummary>;
|
|
29
48
|
private fetchDefaultRegistry;
|
|
30
49
|
private fetchMergedRegistry;
|
|
31
50
|
private getInstallationTargets;
|
|
32
51
|
private cloneRepositoryToCache;
|
|
33
52
|
private filterSkillCapableEnvironments;
|
|
53
|
+
/**
|
|
54
|
+
* Display update summary with colored output
|
|
55
|
+
* @param summary - UpdateSummary to display
|
|
56
|
+
*/
|
|
57
|
+
private displayUpdateSummary;
|
|
58
|
+
/**
|
|
59
|
+
* Update a single registry
|
|
60
|
+
* @param registryPath - Absolute path to registry directory
|
|
61
|
+
* @param registryId - Registry identifier (e.g., "anthropic/skills")
|
|
62
|
+
* @returns UpdateResult with status and message
|
|
63
|
+
*/
|
|
64
|
+
private updateRegistry;
|
|
34
65
|
}
|
|
35
66
|
export {};
|
|
36
67
|
//# sourceMappingURL=SkillManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkillManager.d.ts","sourceRoot":"","sources":["../../src/lib/SkillManager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"SkillManager.d.ts","sourceRoot":"","sources":["../../src/lib/SkillManager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAa5D,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,UAAU,YAAY;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,YAAY,EAAE,CAAC;CACzB;AAED,qBAAa,YAAY;IAErB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,mBAAmB;IAC3B,OAAO,CAAC,mBAAmB;gBAFnB,aAAa,EAAE,aAAa,EAC5B,mBAAmB,GAAE,mBAA+C,EACpE,mBAAmB,GAAE,mBAA+C;IAG9E;;;;OAIG;IACG,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoFpE;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IA8D7C;;;OAGG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsCnD;;;;OAIG;IACG,YAAY,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;YAqEjD,oBAAoB;YAuBpB,mBAAmB;IAoBjC,OAAO,CAAC,sBAAsB;YAiBhB,sBAAsB;IAqBpC,OAAO,CAAC,8BAA8B;IAOtC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA8B5B;;;;;OAKG;YACW,cAAc;CA0B7B"}
|