skillpkg-cli 0.5.4 → 0.5.7

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.
Files changed (41) hide show
  1. package/dist/cli.d.ts.map +1 -1
  2. package/dist/cli.js +28 -15
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/config.d.ts +37 -0
  5. package/dist/commands/config.d.ts.map +1 -0
  6. package/dist/commands/config.js +238 -0
  7. package/dist/commands/config.js.map +1 -0
  8. package/dist/commands/doctor.d.ts +11 -0
  9. package/dist/commands/doctor.d.ts.map +1 -0
  10. package/dist/commands/doctor.js +154 -0
  11. package/dist/commands/doctor.js.map +1 -0
  12. package/dist/commands/info.d.ts +2 -2
  13. package/dist/commands/info.d.ts.map +1 -1
  14. package/dist/commands/info.js.map +1 -1
  15. package/dist/commands/init.d.ts +4 -0
  16. package/dist/commands/init.d.ts.map +1 -1
  17. package/dist/commands/init.js +456 -75
  18. package/dist/commands/init.js.map +1 -1
  19. package/dist/commands/install.d.ts +2 -0
  20. package/dist/commands/install.d.ts.map +1 -1
  21. package/dist/commands/install.js +79 -10
  22. package/dist/commands/install.js.map +1 -1
  23. package/dist/commands/login.d.ts +2 -2
  24. package/dist/commands/login.d.ts.map +1 -1
  25. package/dist/commands/login.js.map +1 -1
  26. package/dist/commands/publish.d.ts +2 -2
  27. package/dist/commands/publish.d.ts.map +1 -1
  28. package/dist/commands/publish.js.map +1 -1
  29. package/dist/commands/search.d.ts +3 -2
  30. package/dist/commands/search.d.ts.map +1 -1
  31. package/dist/commands/search.js +97 -31
  32. package/dist/commands/search.js.map +1 -1
  33. package/dist/commands/uninstall.d.ts +1 -0
  34. package/dist/commands/uninstall.d.ts.map +1 -1
  35. package/dist/commands/uninstall.js +26 -0
  36. package/dist/commands/uninstall.js.map +1 -1
  37. package/dist/index.js +13 -0
  38. package/dist/index.js.map +1 -1
  39. package/package.json +8 -7
  40. package/dist/commands/sync.d.ts +0 -10
  41. package/dist/commands/sync.js +0 -161
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkBzC;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAkKvD"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmBzC;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+KvD"}
package/dist/cli.js CHANGED
@@ -2,28 +2,33 @@ import { initCommand } from './commands/init.js';
2
2
  import { installCommand } from './commands/install.js';
3
3
  import { listCommand } from './commands/list.js';
4
4
  import { uninstallCommand } from './commands/uninstall.js';
5
- import { syncCommand } from './commands/sync.js';
6
5
  import { importCommand } from './commands/import.js';
7
6
  import { exportCommand } from './commands/export.js';
8
7
  import { searchCommand } from './commands/search.js';
9
8
  import { infoCommand } from './commands/info.js';
9
+ import { configCommand } from './commands/config.js';
10
10
  // Registry commands - hidden until public registry is available
11
11
  // import { loginCommand, logoutCommand, whoamiCommand } from './commands/login.js';
12
12
  // import { publishCommand } from './commands/publish.js';
13
13
  import { depsCommand, whyCommand, treeCommand } from './commands/deps.js';
14
14
  import { statusCommand } from './commands/status.js';
15
15
  import { newCommand } from './commands/new.js';
16
+ import { doctorCommand } from './commands/doctor.js';
16
17
  // import { migrateCommand } from './commands/migrate.js'; // Hidden until needed
17
18
  /**
18
19
  * Register all CLI commands
19
20
  */
20
21
  export function registerCommands(program) {
21
- // init - Initialize a skillpkg project
22
+ // init - Initialize a skillpkg project with Claude Code configuration
22
23
  program
23
24
  .command('init')
24
- .description('Initialize a skillpkg project (create skillpkg.json)')
25
+ .description('Initialize Claude Code configuration (skillpkg.json + rules + memory)')
25
26
  .option('-y, --yes', 'Use default values without prompts')
26
27
  .option('-n, --name <name>', 'Project name')
28
+ .option('-p, --preset <preset>', 'Use preset (minimal, standard, full, custom)')
29
+ .option('-d, --domain <domain>', 'Add domain-specific rules (frontend, backend, fullstack, devops)')
30
+ .option('-t, --template <template>', 'Use custom template from GitHub')
31
+ .option('-i, --install', 'Auto-install skills after init')
27
32
  .action(initCommand);
28
33
  // new - Create a new skill
29
34
  program
@@ -38,6 +43,8 @@ export function registerCommands(program) {
38
43
  .description('Install a skill from registry or local path')
39
44
  .option('-g, --global', 'Install globally')
40
45
  .option('--registry <url>', 'Use custom registry')
46
+ .option('--dry-run', 'Show what would be installed without making changes')
47
+ .option('--essential-only', 'Install only SKILL.md without additional files (scripts, references)')
41
48
  .action(installCommand);
42
49
  // list - List installed skills
43
50
  program
@@ -55,14 +62,14 @@ export function registerCommands(program) {
55
62
  .option('-g, --global', 'Uninstall from global store')
56
63
  .option('-c, --clean', 'Also remove synced files from all platforms')
57
64
  .option('-f, --force', 'Force uninstall even if other skills depend on it')
65
+ .option('--dry-run', 'Show what would be removed without making changes')
58
66
  .action(uninstallCommand);
59
- // sync - Sync skills to platforms
67
+ // config - Manage global configuration
60
68
  program
61
- .command('sync [skill]')
62
- .description('Sync skills to AI platforms')
63
- .option('-t, --target <platforms>', 'Target platforms (comma-separated)')
64
- .option('--dry-run', 'Show what would be synced without making changes')
65
- .action(syncCommand);
69
+ .command('config [subcommand] [key] [value]')
70
+ .description('Manage global skillpkg configuration')
71
+ .option('--json', 'Output as JSON')
72
+ .action(configCommand);
66
73
  // import - Import skills from platform formats
67
74
  program
68
75
  .command('import [path]')
@@ -82,15 +89,13 @@ export function registerCommands(program) {
82
89
  .option('-a, --all', 'Export all skills')
83
90
  .option('--overwrite', 'Overwrite existing files')
84
91
  .action(exportCommand);
85
- // search - Search for skills in the registry
92
+ // search - Multi-source skill discovery
86
93
  program
87
94
  .command('search <query>')
88
- .description('Search for skills in the registry')
89
- .option('-l, --limit <number>', 'Number of results per page', '20')
90
- .option('-p, --page <number>', 'Page number', '1')
91
- .option('-s, --sort <field>', 'Sort by (relevance, downloads, updated, name)')
95
+ .description('Search for skills across multiple sources')
96
+ .option('-l, --limit <number>', 'Maximum results to return', '20')
97
+ .option('-s, --source <source>', 'Source to search (local, skillsmp, awesome, github, all)')
92
98
  .option('--json', 'Output as JSON')
93
- .option('--registry <url>', 'Use custom registry')
94
99
  .action(searchCommand);
95
100
  // info - Get detailed information about a skill
96
101
  program
@@ -152,6 +157,14 @@ export function registerCommands(program) {
152
157
  .description('Show overall project status (skills, MCP, sync)')
153
158
  .option('--json', 'Output as JSON')
154
159
  .action(statusCommand);
160
+ // doctor - Diagnose and repair state
161
+ program
162
+ .command('doctor')
163
+ .description('Diagnose and repair skillpkg state inconsistencies')
164
+ .option('--fix', 'Automatically fix detected issues')
165
+ .option('--dry-run', 'Show what would be fixed without making changes')
166
+ .option('--json', 'Output as JSON')
167
+ .action(doctorCommand);
155
168
  // migrate - Migrate from v1.x to v2.0
156
169
  // Hidden: Not registered in CLI until public release needs migration support
157
170
  // To enable: uncomment the command registration below
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * config list - Show all configuration
3
+ */
4
+ export declare function configListCommand(): Promise<void>;
5
+ /**
6
+ * config get - Get a specific config value
7
+ */
8
+ export declare function configGetCommand(key: string): Promise<void>;
9
+ /**
10
+ * config set - Set a config value
11
+ */
12
+ export declare function configSetCommand(key: string, value: string): Promise<void>;
13
+ /**
14
+ * config reset - Reset config to defaults
15
+ */
16
+ export declare function configResetCommand(): Promise<void>;
17
+ interface SyncTargetsOptions {
18
+ json?: boolean;
19
+ }
20
+ /**
21
+ * config sync-targets - List auto-sync targets
22
+ */
23
+ export declare function syncTargetsListCommand(options: SyncTargetsOptions): Promise<void>;
24
+ /**
25
+ * config sync-targets add - Add an auto-sync target
26
+ */
27
+ export declare function syncTargetsAddCommand(target: string): Promise<void>;
28
+ /**
29
+ * config sync-targets remove - Remove an auto-sync target
30
+ */
31
+ export declare function syncTargetsRemoveCommand(target: string): Promise<void>;
32
+ /**
33
+ * Main config command router
34
+ */
35
+ export declare function configCommand(subcommand: string | undefined, keyOrTarget: string | undefined, value: string | undefined, options: SyncTargetsOptions): Promise<void>;
36
+ export {};
37
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAqBA;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAuBvD;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBjE;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBhF;AAED;;GAEG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAKxD;AAED,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsCvF;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA6BzE;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAe5E;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAuDf"}
@@ -0,0 +1,238 @@
1
+ /**
2
+ * config command - Manage global skillpkg configuration
3
+ *
4
+ * Subcommands:
5
+ * - config get <key> - Get a config value
6
+ * - config set <key> <value> - Set a config value
7
+ * - config list - List all config values
8
+ * - config sync-targets - List auto-sync targets
9
+ * - config sync-targets add <target> - Add an auto-sync target
10
+ * - config sync-targets remove <target> - Remove an auto-sync target
11
+ */
12
+ import { loadConfig, saveConfig, getDefaultConfig, getGlobalDir, getImplementedTargets, } from 'skillpkg-core';
13
+ import { logger, colors } from '../ui/index.js';
14
+ /**
15
+ * config list - Show all configuration
16
+ */
17
+ export async function configListCommand() {
18
+ const globalDir = getGlobalDir();
19
+ const config = await loadConfig(globalDir);
20
+ logger.header('Global Configuration');
21
+ logger.blank();
22
+ logger.log(`${colors.cyan('registry')}: ${config.registry}`);
23
+ logger.log(`${colors.cyan('autoSync')}: ${config.autoSync}`);
24
+ logger.blank();
25
+ logger.log(`${colors.cyan('autoSyncTargets')}:`);
26
+ const targets = Object.entries(config.autoSyncTargets);
27
+ if (targets.length === 0) {
28
+ logger.log(' (none)');
29
+ }
30
+ else {
31
+ for (const [target, enabled] of targets) {
32
+ const status = enabled ? colors.green('✓') : colors.dim('✗');
33
+ logger.log(` ${status} ${target}`);
34
+ }
35
+ }
36
+ logger.blank();
37
+ }
38
+ /**
39
+ * config get - Get a specific config value
40
+ */
41
+ export async function configGetCommand(key) {
42
+ const globalDir = getGlobalDir();
43
+ const config = await loadConfig(globalDir);
44
+ if (key === 'autoSyncTargets') {
45
+ const targets = Object.entries(config.autoSyncTargets)
46
+ .filter(([_, enabled]) => enabled)
47
+ .map(([target]) => target);
48
+ logger.log(targets.join(', ') || '(none)');
49
+ return;
50
+ }
51
+ const value = config[key];
52
+ if (value === undefined) {
53
+ logger.error(`Unknown config key: ${key}`);
54
+ process.exit(1);
55
+ }
56
+ if (typeof value === 'object') {
57
+ logger.log(JSON.stringify(value, null, 2));
58
+ }
59
+ else {
60
+ logger.log(String(value));
61
+ }
62
+ }
63
+ /**
64
+ * config set - Set a config value
65
+ */
66
+ export async function configSetCommand(key, value) {
67
+ const globalDir = getGlobalDir();
68
+ const config = await loadConfig(globalDir);
69
+ if (key === 'autoSync') {
70
+ config.autoSync = value === 'true' || value === '1';
71
+ }
72
+ else if (key === 'registry') {
73
+ config.registry = value;
74
+ }
75
+ else {
76
+ logger.error(`Cannot set config key: ${key}`);
77
+ logger.log('Settable keys: autoSync, registry');
78
+ logger.log(`For autoSyncTargets, use ${colors.cyan('skillpkg config sync-targets add/remove')}`);
79
+ process.exit(1);
80
+ }
81
+ await saveConfig(globalDir, config);
82
+ logger.success(`Set ${key} = ${value}`);
83
+ }
84
+ /**
85
+ * config reset - Reset config to defaults
86
+ */
87
+ export async function configResetCommand() {
88
+ const globalDir = getGlobalDir();
89
+ const defaultConfig = getDefaultConfig();
90
+ await saveConfig(globalDir, defaultConfig);
91
+ logger.success('Configuration reset to defaults');
92
+ }
93
+ /**
94
+ * config sync-targets - List auto-sync targets
95
+ */
96
+ export async function syncTargetsListCommand(options) {
97
+ const globalDir = getGlobalDir();
98
+ const config = await loadConfig(globalDir);
99
+ const implementedTargets = getImplementedTargets();
100
+ const implementedIds = new Set(implementedTargets.map((t) => t.id));
101
+ if (options.json) {
102
+ logger.log(JSON.stringify(config.autoSyncTargets, null, 2));
103
+ return;
104
+ }
105
+ logger.header('Auto-Sync Targets');
106
+ logger.blank();
107
+ const enabledTargets = Object.entries(config.autoSyncTargets)
108
+ .filter(([_, enabled]) => enabled)
109
+ .map(([target]) => target);
110
+ if (enabledTargets.length === 0) {
111
+ logger.log('No auto-sync targets configured.');
112
+ logger.log(`Use ${colors.cyan('skillpkg config sync-targets add <target>')} to add one.`);
113
+ }
114
+ else {
115
+ logger.log('Enabled targets:');
116
+ for (const target of enabledTargets) {
117
+ const implemented = implementedIds.has(target);
118
+ const status = implemented ? '' : colors.dim(' (not implemented)');
119
+ logger.item(`${colors.cyan(target)}${status}`);
120
+ }
121
+ }
122
+ logger.blank();
123
+ logger.log('Available targets:');
124
+ for (const t of implementedTargets) {
125
+ const enabled = config.autoSyncTargets[t.id];
126
+ const status = enabled ? colors.green(' (enabled)') : '';
127
+ logger.item(`${colors.cyan(t.id)} - ${t.description}${status}`);
128
+ }
129
+ logger.blank();
130
+ }
131
+ /**
132
+ * config sync-targets add - Add an auto-sync target
133
+ */
134
+ export async function syncTargetsAddCommand(target) {
135
+ const globalDir = getGlobalDir();
136
+ const config = await loadConfig(globalDir);
137
+ const implementedTargets = getImplementedTargets();
138
+ const implementedIds = implementedTargets.map((t) => t.id);
139
+ // Validate target
140
+ if (!implementedIds.includes(target)) {
141
+ logger.error(`Unknown or not implemented target: ${target}`);
142
+ logger.blank();
143
+ logger.log('Available targets:');
144
+ for (const t of implementedTargets) {
145
+ logger.item(`${colors.cyan(t.id)} - ${t.description}`);
146
+ }
147
+ process.exit(1);
148
+ }
149
+ // Check if already enabled
150
+ if (config.autoSyncTargets[target]) {
151
+ logger.warn(`Target ${colors.cyan(target)} is already enabled`);
152
+ return;
153
+ }
154
+ // Add target
155
+ config.autoSyncTargets[target] = true;
156
+ await saveConfig(globalDir, config);
157
+ logger.success(`Added auto-sync target: ${colors.cyan(target)}`);
158
+ logger.log('Skills will be synced to this target after install/update.');
159
+ }
160
+ /**
161
+ * config sync-targets remove - Remove an auto-sync target
162
+ */
163
+ export async function syncTargetsRemoveCommand(target) {
164
+ const globalDir = getGlobalDir();
165
+ const config = await loadConfig(globalDir);
166
+ // Check if target exists
167
+ if (!config.autoSyncTargets[target]) {
168
+ logger.warn(`Target ${colors.cyan(target)} is not in auto-sync targets`);
169
+ return;
170
+ }
171
+ // Remove target
172
+ delete config.autoSyncTargets[target];
173
+ await saveConfig(globalDir, config);
174
+ logger.success(`Removed auto-sync target: ${colors.cyan(target)}`);
175
+ }
176
+ /**
177
+ * Main config command router
178
+ */
179
+ export async function configCommand(subcommand, keyOrTarget, value, options) {
180
+ // Handle sync-targets subcommand
181
+ if (subcommand === 'sync-targets') {
182
+ if (!keyOrTarget) {
183
+ await syncTargetsListCommand(options);
184
+ }
185
+ else if (keyOrTarget === 'add' && value) {
186
+ await syncTargetsAddCommand(value);
187
+ }
188
+ else if (keyOrTarget === 'remove' && value) {
189
+ await syncTargetsRemoveCommand(value);
190
+ }
191
+ else if (keyOrTarget === 'add' || keyOrTarget === 'remove') {
192
+ logger.error(`Usage: skillpkg config sync-targets ${keyOrTarget} <target>`);
193
+ process.exit(1);
194
+ }
195
+ else {
196
+ // keyOrTarget is actually the target to add (shorthand)
197
+ await syncTargetsAddCommand(keyOrTarget);
198
+ }
199
+ return;
200
+ }
201
+ // Handle other subcommands
202
+ switch (subcommand) {
203
+ case 'list':
204
+ case undefined:
205
+ await configListCommand();
206
+ break;
207
+ case 'get':
208
+ if (!keyOrTarget) {
209
+ logger.error('Usage: skillpkg config get <key>');
210
+ process.exit(1);
211
+ }
212
+ await configGetCommand(keyOrTarget);
213
+ break;
214
+ case 'set':
215
+ if (!keyOrTarget || value === undefined) {
216
+ logger.error('Usage: skillpkg config set <key> <value>');
217
+ process.exit(1);
218
+ }
219
+ await configSetCommand(keyOrTarget, value);
220
+ break;
221
+ case 'reset':
222
+ await configResetCommand();
223
+ break;
224
+ default:
225
+ logger.error(`Unknown subcommand: ${subcommand}`);
226
+ logger.blank();
227
+ logger.log('Available subcommands:');
228
+ logger.item(`${colors.cyan('list')} - List all configuration`);
229
+ logger.item(`${colors.cyan('get <key>')} - Get a config value`);
230
+ logger.item(`${colors.cyan('set <key> <value>')} - Set a config value`);
231
+ logger.item(`${colors.cyan('sync-targets')} - List auto-sync targets`);
232
+ logger.item(`${colors.cyan('sync-targets add <target>')} - Add auto-sync target`);
233
+ logger.item(`${colors.cyan('sync-targets remove <target>')} - Remove auto-sync target`);
234
+ logger.item(`${colors.cyan('reset')} - Reset to defaults`);
235
+ process.exit(1);
236
+ }
237
+ }
238
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ interface DoctorOptions {
2
+ fix?: boolean;
3
+ dryRun?: boolean;
4
+ json?: boolean;
5
+ }
6
+ /**
7
+ * doctor command handler
8
+ */
9
+ export declare function doctorCommand(options: DoctorOptions): Promise<void>;
10
+ export {};
11
+ //# sourceMappingURL=doctor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAeA,UAAU,aAAa;IACrB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAuJzE"}
@@ -0,0 +1,154 @@
1
+ /**
2
+ * doctor command - Diagnose and repair skillpkg state
3
+ *
4
+ * Detects inconsistencies between state.json, registry.json, and disk files,
5
+ * and provides options to repair them.
6
+ */
7
+ import { createDoctor, createStateManager, createConfigManager, createLocalStore, } from 'skillpkg-core';
8
+ import { logger, colors } from '../ui/index.js';
9
+ /**
10
+ * doctor command handler
11
+ */
12
+ export async function doctorCommand(options) {
13
+ const cwd = process.cwd();
14
+ const stateManager = createStateManager();
15
+ const configManager = createConfigManager();
16
+ const storeManager = createLocalStore();
17
+ // Check if store is initialized
18
+ if (!(await storeManager.isInitialized())) {
19
+ if (options.json) {
20
+ console.log(JSON.stringify({ healthy: true, issues: [], message: 'No skillpkg store found' }));
21
+ }
22
+ else {
23
+ logger.info('No skillpkg store found');
24
+ logger.log(`Run ${colors.cyan('skillpkg install <skill>')} to install skills`);
25
+ }
26
+ return;
27
+ }
28
+ const doctor = createDoctor(stateManager, configManager, storeManager);
29
+ // Run diagnosis
30
+ const diagnosis = await doctor.diagnose(cwd);
31
+ // JSON output mode
32
+ if (options.json) {
33
+ console.log(JSON.stringify(diagnosis, null, 2));
34
+ if (options.fix && !options.dryRun) {
35
+ const repairResult = await doctor.repair(cwd, {
36
+ removeOrphans: true,
37
+ dryRun: options.dryRun,
38
+ });
39
+ console.log(JSON.stringify({ diagnosis, repair: repairResult }, null, 2));
40
+ }
41
+ return;
42
+ }
43
+ // Human-readable output
44
+ logger.header('skillpkg Doctor');
45
+ logger.blank();
46
+ // Stats
47
+ logger.log(colors.bold('Status'));
48
+ logger.item(`State entries: ${colors.cyan(String(diagnosis.stats.stateCount))}`);
49
+ logger.item(`Registry entries: ${colors.cyan(String(diagnosis.stats.registryCount))}`);
50
+ logger.item(`Disk skills: ${colors.cyan(String(diagnosis.stats.diskCount))}`);
51
+ logger.item(`Synced: ${colors.cyan(String(diagnosis.stats.syncedCount))}`);
52
+ logger.blank();
53
+ // Health status
54
+ if (diagnosis.healthy) {
55
+ logger.success('✓ Everything looks healthy!');
56
+ logger.blank();
57
+ return;
58
+ }
59
+ // Show issues
60
+ logger.log(colors.bold('Issues Found'));
61
+ logger.blank();
62
+ // Group issues by severity
63
+ const errors = diagnosis.issues.filter(i => i.severity === 'error');
64
+ const warnings = diagnosis.issues.filter(i => i.severity === 'warning');
65
+ const infos = diagnosis.issues.filter(i => i.severity === 'info');
66
+ if (errors.length > 0) {
67
+ logger.log(colors.red(`✗ ${errors.length} Error(s)`));
68
+ for (const issue of errors) {
69
+ printIssue(issue);
70
+ }
71
+ logger.blank();
72
+ }
73
+ if (warnings.length > 0) {
74
+ logger.log(colors.yellow(`⚠ ${warnings.length} Warning(s)`));
75
+ for (const issue of warnings) {
76
+ printIssue(issue);
77
+ }
78
+ logger.blank();
79
+ }
80
+ if (infos.length > 0) {
81
+ logger.log(colors.dim(`ℹ ${infos.length} Info`));
82
+ for (const issue of infos) {
83
+ printIssue(issue);
84
+ }
85
+ logger.blank();
86
+ }
87
+ // Offer repair
88
+ const fixableCount = diagnosis.issues.filter(i => i.autoFixable).length;
89
+ if (!options.fix) {
90
+ if (fixableCount > 0) {
91
+ logger.log(colors.dim('─'.repeat(50)));
92
+ logger.log(`${colors.cyan(String(fixableCount))} issue(s) can be auto-fixed.`);
93
+ logger.log(`Run ${colors.cyan('skillpkg doctor --fix')} to repair.`);
94
+ logger.log(`Run ${colors.cyan('skillpkg doctor --fix --dry-run')} to preview changes.`);
95
+ }
96
+ logger.blank();
97
+ process.exit(errors.length > 0 ? 1 : 0);
98
+ return;
99
+ }
100
+ // Perform repair
101
+ logger.log(colors.bold('Repairing...'));
102
+ logger.blank();
103
+ const repairResult = await doctor.repair(cwd, {
104
+ removeOrphans: true,
105
+ dryRun: options.dryRun,
106
+ });
107
+ if (options.dryRun) {
108
+ logger.warn('Dry run - no changes made');
109
+ logger.blank();
110
+ }
111
+ // Show actions
112
+ if (repairResult.actions.length > 0) {
113
+ for (const action of repairResult.actions) {
114
+ const icon = options.dryRun ? colors.dim('○') : colors.green('✓');
115
+ logger.log(` ${icon} ${action.description}`);
116
+ }
117
+ logger.blank();
118
+ }
119
+ // Show errors
120
+ if (repairResult.errors.length > 0) {
121
+ logger.error('Some repairs failed:');
122
+ for (const error of repairResult.errors) {
123
+ logger.log(` ${colors.red('×')} ${error}`);
124
+ }
125
+ logger.blank();
126
+ }
127
+ // Summary
128
+ if (options.dryRun) {
129
+ logger.log(`Would fix: ${colors.green(String(repairResult.actions.length))} issue(s)`);
130
+ }
131
+ else {
132
+ logger.log(`Fixed: ${colors.green(String(repairResult.issuesFixed))}, ` +
133
+ `Remaining: ${colors.yellow(String(repairResult.issuesRemaining))}`);
134
+ }
135
+ logger.blank();
136
+ if (!repairResult.success) {
137
+ process.exit(1);
138
+ }
139
+ }
140
+ /**
141
+ * Print a single issue
142
+ */
143
+ function printIssue(issue) {
144
+ const icon = issue.severity === 'error'
145
+ ? colors.red('×')
146
+ : issue.severity === 'warning'
147
+ ? colors.yellow('!')
148
+ : colors.dim('•');
149
+ const fixable = issue.autoFixable ? colors.dim(' [auto-fixable]') : '';
150
+ logger.log(` ${icon} ${colors.cyan(issue.skillName)}${fixable}`);
151
+ logger.log(` ${issue.message}`);
152
+ logger.log(` ${colors.dim(`→ ${issue.suggestion}`)}`);
153
+ }
154
+ //# sourceMappingURL=doctor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- interface InfoCommandOptions {
1
+ interface InfoOptions {
2
2
  json?: boolean;
3
3
  global?: boolean;
4
4
  }
5
5
  /**
6
6
  * info command handler
7
7
  */
8
- export declare function infoCommand(skillName: string | undefined, options: InfoCommandOptions): Promise<void>;
8
+ export declare function infoCommand(skillName: string | undefined, options: InfoOptions): Promise<void>;
9
9
  export {};
10
10
  //# sourceMappingURL=info.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../src/commands/info.ts"],"names":[],"mappings":"AAMA,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAiGf"}
1
+ {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../src/commands/info.ts"],"names":[],"mappings":"AAMA,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC,CAiGf"}