skillpkg-cli 0.2.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/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +40 -3
- package/dist/cli.js.map +1 -1
- package/dist/commands/deps.d.ts +17 -0
- package/dist/commands/deps.d.ts.map +1 -0
- package/dist/commands/deps.js +234 -0
- package/dist/commands/deps.js.map +1 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +77 -107
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/install.d.ts +1 -0
- package/dist/commands/install.d.ts.map +1 -1
- package/dist/commands/install.js +197 -142
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +47 -17
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/migrate.d.ts +10 -0
- package/dist/commands/migrate.d.ts.map +1 -0
- package/dist/commands/migrate.js +122 -0
- package/dist/commands/migrate.js.map +1 -0
- package/dist/commands/status.d.ts +9 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +180 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/sync.d.ts.map +1 -1
- package/dist/commands/sync.js +105 -127
- package/dist/commands/sync.js.map +1 -1
- package/dist/commands/uninstall.d.ts +1 -0
- package/dist/commands/uninstall.d.ts.map +1 -1
- package/dist/commands/uninstall.js +56 -12
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/index.js +0 -0
- package/package.json +8 -8
package/dist/commands/install.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* install command - Install a skill
|
|
2
|
+
* install command - Install a skill with dependency resolution
|
|
3
|
+
*
|
|
4
|
+
* v2.0: Uses new Installer module with dependency tracking
|
|
3
5
|
*
|
|
4
6
|
* Supports:
|
|
5
7
|
* - Local path: skillpkg install ./path/to/skill
|
|
@@ -10,7 +12,7 @@ import { existsSync, createReadStream } from 'fs';
|
|
|
10
12
|
import { readFile } from 'fs/promises';
|
|
11
13
|
import { join, resolve, isAbsolute } from 'path';
|
|
12
14
|
import { createGunzip } from 'zlib';
|
|
13
|
-
import { parse,
|
|
15
|
+
import { parse, createInstaller, createStateManager, createConfigManager, createLocalStore, createGlobalStore, detectSkillMd, fetchSkillMdContent, } from 'skillpkg-core';
|
|
14
16
|
import { logger, colors, withSpinner } from '../ui/index.js';
|
|
15
17
|
import * as tar from 'tar-stream';
|
|
16
18
|
/**
|
|
@@ -36,44 +38,169 @@ function parseSource(source) {
|
|
|
36
38
|
* install command handler
|
|
37
39
|
*/
|
|
38
40
|
export async function installCommand(skillArg, options) {
|
|
39
|
-
|
|
41
|
+
const cwd = process.cwd();
|
|
42
|
+
// If no skill argument, install from skillpkg.json
|
|
40
43
|
if (!skillArg) {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
44
|
+
await installFromConfig(cwd, options);
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
const { type, value } = parseSource(skillArg);
|
|
48
|
+
const source = type === 'github' ? `github:${value}` : value;
|
|
49
|
+
// Create installer with fetcher
|
|
50
|
+
const stateManager = createStateManager();
|
|
51
|
+
const configManager = createConfigManager();
|
|
52
|
+
const storeManager = options.global ? createGlobalStore() : createLocalStore();
|
|
53
|
+
const fetcher = createFetcher();
|
|
54
|
+
// Initialize store if needed
|
|
55
|
+
if (!(await storeManager.isInitialized())) {
|
|
56
|
+
await withSpinner('Initializing store', () => storeManager.init());
|
|
57
|
+
}
|
|
58
|
+
const installer = createInstaller(stateManager, configManager, storeManager, fetcher);
|
|
59
|
+
logger.info(`Installing from ${colors.cyan(skillArg)}`);
|
|
60
|
+
logger.blank();
|
|
61
|
+
// Run installation
|
|
62
|
+
const result = await withSpinner('Resolving dependencies', async () => {
|
|
63
|
+
return installer.install(cwd, source);
|
|
64
|
+
});
|
|
65
|
+
// Show results
|
|
66
|
+
logger.blank();
|
|
67
|
+
if (!result.success) {
|
|
68
|
+
logger.error('Installation failed:');
|
|
69
|
+
for (const error of result.errors) {
|
|
70
|
+
logger.log(` ${colors.red('×')} ${error}`);
|
|
45
71
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
72
|
+
process.exit(1);
|
|
73
|
+
}
|
|
74
|
+
// Show installed skills
|
|
75
|
+
const installed = result.skills.filter((s) => s.action === 'installed');
|
|
76
|
+
const updated = result.skills.filter((s) => s.action === 'updated');
|
|
77
|
+
const skipped = result.skills.filter((s) => s.action === 'skipped');
|
|
78
|
+
if (installed.length > 0) {
|
|
79
|
+
logger.success(`Installed ${installed.length} skill(s):`);
|
|
80
|
+
for (const skill of installed) {
|
|
81
|
+
const transitiveNote = skill.transitive
|
|
82
|
+
? colors.dim(` (dependency of ${skill.requiredBy})`)
|
|
83
|
+
: '';
|
|
84
|
+
logger.item(`${colors.cyan(skill.name)} ${colors.dim(`v${skill.version}`)}${transitiveNote}`);
|
|
55
85
|
}
|
|
56
86
|
}
|
|
57
|
-
|
|
87
|
+
if (updated.length > 0) {
|
|
88
|
+
logger.log(`Updated ${updated.length} skill(s):`);
|
|
89
|
+
for (const skill of updated) {
|
|
90
|
+
logger.item(`${colors.cyan(skill.name)} ${colors.dim(`v${skill.version}`)}`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
if (skipped.length > 0) {
|
|
94
|
+
logger.log(colors.dim(`Skipped ${skipped.length} already installed skill(s)`));
|
|
95
|
+
}
|
|
96
|
+
// Show MCP requirements
|
|
97
|
+
if (result.mcpRequired.length > 0) {
|
|
98
|
+
logger.blank();
|
|
99
|
+
logger.warn('MCP servers required:');
|
|
100
|
+
for (const mcp of result.mcpRequired) {
|
|
101
|
+
logger.item(`${colors.yellow(mcp)}`);
|
|
102
|
+
}
|
|
103
|
+
logger.log(colors.dim('Configure these in your skillpkg.json or install manually.'));
|
|
104
|
+
}
|
|
105
|
+
logger.blank();
|
|
106
|
+
logger.log('Next steps:');
|
|
107
|
+
logger.item(`Run ${colors.cyan('skillpkg sync')} to sync to platforms`);
|
|
108
|
+
logger.item(`Run ${colors.cyan('skillpkg tree')} to see dependency tree`);
|
|
109
|
+
logger.blank();
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Install all skills from skillpkg.json
|
|
113
|
+
*/
|
|
114
|
+
async function installFromConfig(cwd, options) {
|
|
115
|
+
const configManager = createConfigManager();
|
|
116
|
+
const config = await configManager.loadProjectConfig(cwd);
|
|
117
|
+
if (!config) {
|
|
118
|
+
logger.error('No skillpkg.json found');
|
|
119
|
+
logger.log(`Run ${colors.cyan('skillpkg init')} to create one`);
|
|
120
|
+
logger.blank();
|
|
121
|
+
logger.log('Or specify a skill to install:');
|
|
122
|
+
logger.item(`${colors.cyan('skillpkg install ./path/to/skill')} - Install from local path`);
|
|
123
|
+
logger.item(`${colors.cyan('skillpkg install github:user/repo')} - Install from GitHub`);
|
|
124
|
+
process.exit(1);
|
|
125
|
+
}
|
|
126
|
+
const skills = Object.keys(config.skills || {});
|
|
127
|
+
if (skills.length === 0) {
|
|
128
|
+
logger.warn('No skills defined in skillpkg.json');
|
|
129
|
+
logger.log(`Add skills using ${colors.cyan('skillpkg install <skill>')}`);
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
logger.info(`Installing ${skills.length} skill(s) from skillpkg.json`);
|
|
133
|
+
logger.blank();
|
|
134
|
+
const stateManager = createStateManager();
|
|
135
|
+
const storeManager = options.global ? createGlobalStore() : createLocalStore();
|
|
136
|
+
const fetcher = createFetcher();
|
|
137
|
+
// Initialize store if needed
|
|
138
|
+
if (!(await storeManager.isInitialized())) {
|
|
139
|
+
await withSpinner('Initializing store', () => storeManager.init());
|
|
140
|
+
}
|
|
141
|
+
const installer = createInstaller(stateManager, configManager, storeManager, fetcher);
|
|
142
|
+
const result = await withSpinner('Installing skills', async () => {
|
|
143
|
+
return installer.installFromConfig(cwd);
|
|
144
|
+
});
|
|
145
|
+
logger.blank();
|
|
146
|
+
if (!result.success) {
|
|
147
|
+
logger.error('Some installations failed:');
|
|
148
|
+
for (const error of result.errors) {
|
|
149
|
+
logger.log(` ${colors.red('×')} ${error}`);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
// Summary
|
|
153
|
+
const installed = result.skills.filter((s) => s.action === 'installed');
|
|
154
|
+
const skipped = result.skills.filter((s) => s.action === 'skipped');
|
|
155
|
+
logger.log(`Summary: ${colors.green(String(installed.length))} installed, ` +
|
|
156
|
+
`${colors.dim(String(skipped.length))} skipped`);
|
|
157
|
+
if (result.mcpRequired.length > 0) {
|
|
158
|
+
logger.blank();
|
|
159
|
+
logger.warn(`MCP servers required: ${result.mcpRequired.join(', ')}`);
|
|
160
|
+
}
|
|
161
|
+
logger.blank();
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Create a SkillFetcherAdapter for the installer
|
|
165
|
+
*/
|
|
166
|
+
function createFetcher() {
|
|
167
|
+
return {
|
|
168
|
+
async fetchMetadata(source) {
|
|
169
|
+
const skill = await fetchSkillFromSource(source);
|
|
170
|
+
if (!skill)
|
|
171
|
+
return null;
|
|
172
|
+
return {
|
|
173
|
+
name: skill.name,
|
|
174
|
+
version: skill.version,
|
|
175
|
+
dependencies: skill.dependencies,
|
|
176
|
+
};
|
|
177
|
+
},
|
|
178
|
+
async fetchSkill(source) {
|
|
179
|
+
return fetchSkillFromSource(source);
|
|
180
|
+
},
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Fetch skill from various sources
|
|
185
|
+
*/
|
|
186
|
+
async function fetchSkillFromSource(source) {
|
|
187
|
+
const { type, value } = parseSource(source);
|
|
58
188
|
switch (type) {
|
|
59
189
|
case 'local':
|
|
60
|
-
|
|
61
|
-
break;
|
|
190
|
+
return fetchFromLocal(value);
|
|
62
191
|
case 'github':
|
|
63
|
-
|
|
64
|
-
break;
|
|
192
|
+
return fetchFromGitHub(value);
|
|
65
193
|
case 'pack':
|
|
66
|
-
|
|
67
|
-
|
|
194
|
+
return fetchFromPack(value);
|
|
195
|
+
default:
|
|
196
|
+
return null;
|
|
68
197
|
}
|
|
69
198
|
}
|
|
70
199
|
/**
|
|
71
|
-
*
|
|
200
|
+
* Fetch skill from local path
|
|
72
201
|
*/
|
|
73
|
-
async function
|
|
74
|
-
// Resolve path
|
|
202
|
+
async function fetchFromLocal(pathArg) {
|
|
75
203
|
const skillPath = isAbsolute(pathArg) ? pathArg : resolve(process.cwd(), pathArg);
|
|
76
|
-
// Try to find skill file (SKILL.md or skill.yaml)
|
|
77
204
|
let skillContent = null;
|
|
78
205
|
let isSkillMd = false;
|
|
79
206
|
// Check for SKILL.md first
|
|
@@ -96,113 +223,71 @@ async function installFromLocal(pathArg, options) {
|
|
|
96
223
|
skillContent = await readFile(yamlPath, 'utf-8');
|
|
97
224
|
}
|
|
98
225
|
}
|
|
99
|
-
if (!skillContent)
|
|
100
|
-
|
|
101
|
-
process.exit(1);
|
|
102
|
-
}
|
|
103
|
-
// Parse skill
|
|
104
|
-
let skill;
|
|
226
|
+
if (!skillContent)
|
|
227
|
+
return null;
|
|
105
228
|
try {
|
|
106
229
|
if (isSkillMd) {
|
|
107
|
-
|
|
230
|
+
return parseSkillMd(skillContent);
|
|
108
231
|
}
|
|
109
232
|
else {
|
|
110
233
|
const result = parse(skillContent);
|
|
111
|
-
|
|
112
|
-
logger.error('Failed to parse skill.yaml:');
|
|
113
|
-
result.errors?.forEach((e) => logger.error(` ${e.message}`));
|
|
114
|
-
process.exit(1);
|
|
115
|
-
}
|
|
116
|
-
skill = result.data;
|
|
234
|
+
return result.success && result.data ? result.data : null;
|
|
117
235
|
}
|
|
118
236
|
}
|
|
119
|
-
catch
|
|
120
|
-
|
|
121
|
-
process.exit(1);
|
|
237
|
+
catch {
|
|
238
|
+
return null;
|
|
122
239
|
}
|
|
123
|
-
await installSkill(skill, options, 'local');
|
|
124
240
|
}
|
|
125
241
|
/**
|
|
126
|
-
*
|
|
242
|
+
* Fetch skill from GitHub
|
|
127
243
|
*/
|
|
128
|
-
async function
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
logger.blank();
|
|
137
|
-
logger.log('Checked locations:');
|
|
138
|
-
SKILL_MD_PATHS.forEach((p) => logger.item(colors.dim(p)));
|
|
139
|
-
logger.blank();
|
|
140
|
-
logger.log(colors.dim('Make sure the repository has a SKILL.md file with proper frontmatter (name, description).'));
|
|
141
|
-
process.exit(1);
|
|
142
|
-
}
|
|
143
|
-
// Fetch SKILL.md content
|
|
144
|
-
const content = await withSpinner('Fetching SKILL.md', async () => {
|
|
145
|
-
return fetchSkillMdContent(repo, detection.skillFile);
|
|
146
|
-
});
|
|
147
|
-
if (!content) {
|
|
148
|
-
logger.error('Failed to fetch SKILL.md content');
|
|
149
|
-
process.exit(1);
|
|
150
|
-
}
|
|
151
|
-
// Create skill object
|
|
152
|
-
const skill = {
|
|
244
|
+
async function fetchFromGitHub(repo) {
|
|
245
|
+
const detection = await detectSkillMd(repo);
|
|
246
|
+
if (!detection.hasSkill || !detection.skillFile)
|
|
247
|
+
return null;
|
|
248
|
+
const content = await fetchSkillMdContent(repo, detection.skillFile);
|
|
249
|
+
if (!content)
|
|
250
|
+
return null;
|
|
251
|
+
return {
|
|
153
252
|
schema: '1.0',
|
|
154
253
|
name: content.name,
|
|
155
254
|
version: content.version,
|
|
156
255
|
description: content.description,
|
|
157
256
|
instructions: content.instructions,
|
|
158
257
|
};
|
|
159
|
-
await installSkill(skill, options, 'import', `github:${repo}`);
|
|
160
258
|
}
|
|
161
259
|
/**
|
|
162
|
-
*
|
|
260
|
+
* Fetch skill from pack file
|
|
163
261
|
*/
|
|
164
|
-
async function
|
|
165
|
-
// Resolve path
|
|
262
|
+
async function fetchFromPack(packPath) {
|
|
166
263
|
const fullPath = isAbsolute(packPath) ? packPath : resolve(process.cwd(), packPath);
|
|
167
|
-
if (!existsSync(fullPath))
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
stream.on('end', next);
|
|
182
|
-
}
|
|
183
|
-
else {
|
|
184
|
-
stream.resume();
|
|
185
|
-
next();
|
|
186
|
-
}
|
|
187
|
-
});
|
|
188
|
-
extract.on('finish', async () => {
|
|
189
|
-
if (chunks.length === 0) {
|
|
190
|
-
reject(new Error('skill.yaml not found in pack'));
|
|
191
|
-
return;
|
|
192
|
-
}
|
|
193
|
-
const content = Buffer.concat(chunks).toString('utf-8');
|
|
194
|
-
const result = parse(content);
|
|
195
|
-
if (!result.success || !result.data) {
|
|
196
|
-
reject(new Error(`Failed to parse skill.yaml: ${result.errors?.[0]?.message}`));
|
|
197
|
-
return;
|
|
198
|
-
}
|
|
199
|
-
resolvePromise(result.data);
|
|
200
|
-
});
|
|
201
|
-
extract.on('error', reject);
|
|
202
|
-
createReadStream(fullPath).pipe(createGunzip()).pipe(extract);
|
|
264
|
+
if (!existsSync(fullPath))
|
|
265
|
+
return null;
|
|
266
|
+
const extract = tar.extract();
|
|
267
|
+
const chunks = [];
|
|
268
|
+
return new Promise((resolvePromise) => {
|
|
269
|
+
extract.on('entry', (header, stream, next) => {
|
|
270
|
+
if (header.name === 'skill.yaml' || header.name.endsWith('/skill.yaml')) {
|
|
271
|
+
stream.on('data', (chunk) => chunks.push(chunk));
|
|
272
|
+
stream.on('end', next);
|
|
273
|
+
}
|
|
274
|
+
else {
|
|
275
|
+
stream.resume();
|
|
276
|
+
next();
|
|
277
|
+
}
|
|
203
278
|
});
|
|
279
|
+
extract.on('finish', async () => {
|
|
280
|
+
if (chunks.length === 0) {
|
|
281
|
+
resolvePromise(null);
|
|
282
|
+
return;
|
|
283
|
+
}
|
|
284
|
+
const content = Buffer.concat(chunks).toString('utf-8');
|
|
285
|
+
const result = parse(content);
|
|
286
|
+
resolvePromise(result.success && result.data ? result.data : null);
|
|
287
|
+
});
|
|
288
|
+
extract.on('error', () => resolvePromise(null));
|
|
289
|
+
createReadStream(fullPath).pipe(createGunzip()).pipe(extract);
|
|
204
290
|
});
|
|
205
|
-
await installSkill(skill, options, 'local');
|
|
206
291
|
}
|
|
207
292
|
/**
|
|
208
293
|
* Parse SKILL.md content to Skill object
|
|
@@ -223,37 +308,7 @@ function parseSkillMd(content) {
|
|
|
223
308
|
version: frontmatter.version || '1.0.0',
|
|
224
309
|
description: frontmatter.description || frontmatter.metadata?.['short-description'] || '',
|
|
225
310
|
instructions: match[2],
|
|
311
|
+
dependencies: frontmatter.dependencies,
|
|
226
312
|
};
|
|
227
313
|
}
|
|
228
|
-
/**
|
|
229
|
-
* Install skill to store
|
|
230
|
-
*/
|
|
231
|
-
async function installSkill(skill, options, source, sourceUrl) {
|
|
232
|
-
// Get store
|
|
233
|
-
const store = options.global ? createGlobalStore() : createLocalStore();
|
|
234
|
-
// Initialize store if needed
|
|
235
|
-
if (!(await store.isInitialized())) {
|
|
236
|
-
await withSpinner('Initializing store', () => store.init());
|
|
237
|
-
}
|
|
238
|
-
// Check if already installed
|
|
239
|
-
if (await store.hasSkill(skill.name)) {
|
|
240
|
-
const existing = await store.getSkill(skill.name);
|
|
241
|
-
if (existing?.version === skill.version) {
|
|
242
|
-
logger.warn(`${skill.name}@${skill.version} is already installed`);
|
|
243
|
-
return;
|
|
244
|
-
}
|
|
245
|
-
logger.info(`Updating ${skill.name} from ${existing?.version} to ${skill.version}`);
|
|
246
|
-
}
|
|
247
|
-
// Install skill
|
|
248
|
-
await withSpinner(`Installing ${colors.cyan(skill.name)}@${skill.version}`, async () => {
|
|
249
|
-
await store.addSkill(skill, { source, sourceUrl });
|
|
250
|
-
});
|
|
251
|
-
logger.blank();
|
|
252
|
-
logger.success(`Installed ${colors.cyan(skill.name)}@${skill.version}`);
|
|
253
|
-
logger.blank();
|
|
254
|
-
logger.log('Next steps:');
|
|
255
|
-
logger.item(`Run ${colors.cyan('skillpkg list')} to see installed skills`);
|
|
256
|
-
logger.item(`Run ${colors.cyan('skillpkg sync')} to sync to platforms`);
|
|
257
|
-
logger.blank();
|
|
258
|
-
}
|
|
259
314
|
//# sourceMappingURL=install.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"AAaA,UAAU,WAAW;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAkDrE"}
|
package/dist/commands/list.js
CHANGED
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* list command - List installed skills
|
|
2
|
+
* list command - List installed skills with dependency info
|
|
3
|
+
*
|
|
4
|
+
* v2.0: Shows installation source and dependency information
|
|
3
5
|
*/
|
|
4
|
-
import { createGlobalStore, createLocalStore } from 'skillpkg-core';
|
|
6
|
+
import { createGlobalStore, createLocalStore, createStateManager, } from 'skillpkg-core';
|
|
5
7
|
import { logger, colors, createTable, printTable } from '../ui/index.js';
|
|
6
8
|
/**
|
|
7
9
|
* list command handler
|
|
8
10
|
*/
|
|
9
11
|
export async function listCommand(options) {
|
|
12
|
+
const cwd = process.cwd();
|
|
10
13
|
const store = options.global ? createGlobalStore() : createLocalStore();
|
|
14
|
+
const stateManager = createStateManager();
|
|
11
15
|
// Check if store is initialized
|
|
12
16
|
if (!(await store.isInitialized())) {
|
|
13
17
|
if (options.json) {
|
|
@@ -19,7 +23,7 @@ export async function listCommand(options) {
|
|
|
19
23
|
}
|
|
20
24
|
return;
|
|
21
25
|
}
|
|
22
|
-
// Get all skills
|
|
26
|
+
// Get all skills from store
|
|
23
27
|
const skills = await store.listSkills();
|
|
24
28
|
if (skills.length === 0) {
|
|
25
29
|
if (options.json) {
|
|
@@ -31,12 +35,24 @@ export async function listCommand(options) {
|
|
|
31
35
|
}
|
|
32
36
|
return;
|
|
33
37
|
}
|
|
38
|
+
// Get state for dependency info
|
|
39
|
+
const state = await stateManager.loadState(cwd);
|
|
40
|
+
// Enrich skills with state info
|
|
41
|
+
const enrichedSkills = skills.map((skill) => {
|
|
42
|
+
const skillState = state.skills[skill.name];
|
|
43
|
+
return {
|
|
44
|
+
...skill,
|
|
45
|
+
installedBy: skillState?.installed_by || 'unknown',
|
|
46
|
+
stateSource: skillState?.source || 'unknown',
|
|
47
|
+
hasDependents: Object.values(state.skills).some((s) => s.depended_by?.includes(skill.name)) || false,
|
|
48
|
+
};
|
|
49
|
+
});
|
|
34
50
|
// Output based on format
|
|
35
51
|
if (options.json) {
|
|
36
|
-
console.log(JSON.stringify({ skills }, null, 2));
|
|
52
|
+
console.log(JSON.stringify({ skills: enrichedSkills }, null, 2));
|
|
37
53
|
}
|
|
38
54
|
else {
|
|
39
|
-
printSkillTable(
|
|
55
|
+
printSkillTable(enrichedSkills, options.global);
|
|
40
56
|
}
|
|
41
57
|
}
|
|
42
58
|
/**
|
|
@@ -45,22 +61,36 @@ export async function listCommand(options) {
|
|
|
45
61
|
function printSkillTable(skills, isGlobal = false) {
|
|
46
62
|
logger.header(`Installed Skills (${isGlobal ? 'global' : 'local'})`);
|
|
47
63
|
const table = createTable({
|
|
48
|
-
head: ['Name', 'Version', '
|
|
64
|
+
head: ['Name', 'Version', 'Type', 'Description'],
|
|
65
|
+
});
|
|
66
|
+
// Sort: user-installed first, then transitive
|
|
67
|
+
const sorted = [...skills].sort((a, b) => {
|
|
68
|
+
if (a.installedBy === 'user' && b.installedBy !== 'user')
|
|
69
|
+
return -1;
|
|
70
|
+
if (a.installedBy !== 'user' && b.installedBy === 'user')
|
|
71
|
+
return 1;
|
|
72
|
+
return a.name.localeCompare(b.name);
|
|
49
73
|
});
|
|
50
|
-
for (const skill of
|
|
51
|
-
const
|
|
52
|
-
?
|
|
53
|
-
: colors.dim(
|
|
54
|
-
|
|
55
|
-
colors.cyan(skill.name)
|
|
56
|
-
skill.
|
|
57
|
-
|
|
58
|
-
syncedPlatforms,
|
|
59
|
-
]);
|
|
74
|
+
for (const skill of sorted) {
|
|
75
|
+
const typeLabel = skill.installedBy === 'user'
|
|
76
|
+
? colors.green('direct')
|
|
77
|
+
: colors.dim(`dep:${skill.installedBy}`);
|
|
78
|
+
const nameWithMarker = skill.hasDependents
|
|
79
|
+
? `${colors.cyan(skill.name)} ${colors.yellow('◆')}`
|
|
80
|
+
: colors.cyan(skill.name);
|
|
81
|
+
table.push([nameWithMarker, skill.version, typeLabel, truncate(skill.description, 35)]);
|
|
60
82
|
}
|
|
61
83
|
printTable(table);
|
|
62
84
|
logger.blank();
|
|
63
|
-
|
|
85
|
+
// Summary
|
|
86
|
+
const userInstalled = skills.filter((s) => s.installedBy === 'user').length;
|
|
87
|
+
const transitive = skills.length - userInstalled;
|
|
88
|
+
logger.log(`Total: ${colors.cyan(String(skills.length))} skill(s) ` +
|
|
89
|
+
`(${userInstalled} direct, ${transitive} transitive)`);
|
|
90
|
+
// Legend
|
|
91
|
+
if (skills.some((s) => s.hasDependents)) {
|
|
92
|
+
logger.log(colors.dim(`${colors.yellow('◆')} = has dependents`));
|
|
93
|
+
}
|
|
64
94
|
logger.blank();
|
|
65
95
|
}
|
|
66
96
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"AAeA,UAAU,cAAc;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAkI3E"}
|