@spences10/pi-skills 0.0.5 → 0.0.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.
package/README.md CHANGED
@@ -56,8 +56,10 @@ detect local edits and upstream changes.
56
56
  /skills defaults all-disabled
57
57
  ```
58
58
 
59
- With a UI available, `/skills` opens an interactive manager. In
60
- headless mode, use the subcommands directly.
59
+ With a UI available, `/skills` opens a modal home menu for managing,
60
+ importing, syncing, refreshing, and setting default policy. The no-arg
61
+ `import`, `sync`, and `defaults` subcommands use modal pickers/forms
62
+ in interactive mode. In headless mode, use the subcommands directly.
61
63
 
62
64
  ## Skill enablement
63
65
 
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { show_settings_modal } from '@spences10/pi-tui-modal';
1
+ import { show_picker_modal, show_settings_modal, show_text_modal, } from '@spences10/pi-tui-modal';
2
2
  import { create_skills_manager, } from './manager.js';
3
3
  export { create_skills_manager } from './manager.js';
4
4
  const ENABLED = '● enabled';
@@ -126,19 +126,342 @@ function sets_equal(a, b) {
126
126
  }
127
127
  return true;
128
128
  }
129
+ async function show_skills_home_modal(ctx, managed_count, importable_count) {
130
+ return await show_picker_modal(ctx, {
131
+ title: 'Skills',
132
+ subtitle: `${managed_count} managed • ${importable_count} importable`,
133
+ items: [
134
+ {
135
+ value: 'manage',
136
+ label: 'Manage skills',
137
+ description: 'Enable, disable, import, and sync skills',
138
+ },
139
+ {
140
+ value: 'browse',
141
+ label: 'Browse details',
142
+ description: 'Open read-only detail views for discovered skills',
143
+ },
144
+ {
145
+ value: 'import',
146
+ label: 'Import skill',
147
+ description: 'Copy an external skill into Pi-native storage',
148
+ },
149
+ {
150
+ value: 'sync',
151
+ label: 'Sync imported skill',
152
+ description: 'Update an imported skill from its upstream source',
153
+ },
154
+ {
155
+ value: 'refresh',
156
+ label: 'Refresh discovery',
157
+ description: 'Rescan managed and importable skills',
158
+ },
159
+ {
160
+ value: 'defaults',
161
+ label: 'Default policy',
162
+ description: 'Choose whether new skills default enabled or disabled',
163
+ },
164
+ ],
165
+ footer: 'enter opens • esc close/back',
166
+ });
167
+ }
168
+ async function show_skills_manager_modal(ctx, mgr) {
169
+ const discovered = sort_skills(mgr.discover());
170
+ const importable = sort_skills(mgr.discover_importable());
171
+ if (discovered.length === 0 && importable.length === 0) {
172
+ ctx.ui.notify('No managed or importable skills found');
173
+ return false;
174
+ }
175
+ const initial_enabled = new Set(discovered
176
+ .filter((skill) => skill.enabled)
177
+ .map((skill) => skill.key));
178
+ const current_enabled = new Set(initial_enabled);
179
+ const queued_imports = new Set();
180
+ let reload_notice = null;
181
+ const managed_items = discovered.map(to_setting_item);
182
+ const importable_items = importable.map((skill) => to_importable_setting_item(discovered, skill));
183
+ const all_items = [];
184
+ if (managed_items.length > 0) {
185
+ all_items.push({
186
+ id: '__header_managed__',
187
+ label: `── Managed (${managed_items.length}) ──`,
188
+ description: '',
189
+ currentValue: '',
190
+ });
191
+ all_items.push(...managed_items);
192
+ }
193
+ if (importable_items.length > 0) {
194
+ all_items.push({
195
+ id: '__header_importable__',
196
+ label: `── Importable (${importable_items.length}) ──`,
197
+ description: '',
198
+ currentValue: '',
199
+ });
200
+ all_items.push(...importable_items);
201
+ }
202
+ const metadata_by_id = new Map(all_items.map((item) => [item.id, item.description ?? '']));
203
+ for (const item of all_items) {
204
+ if (!item.id.startsWith('__header_'))
205
+ item.description = '';
206
+ }
207
+ const managed_keys = new Set(discovered.map((skill) => skill.key));
208
+ const importable_map = new Map(importable.map((skill) => [skill.key, skill]));
209
+ await show_settings_modal(ctx, {
210
+ title: 'Skills',
211
+ subtitle: () => {
212
+ const enabled = current_enabled.size;
213
+ const disabled = discovered.length - enabled;
214
+ const queued = queued_imports.size;
215
+ const parts = [`${enabled} enabled`, `${disabled} disabled`];
216
+ if (importable.length > 0)
217
+ parts.push(`${importable.length} importable`);
218
+ if (queued > 0)
219
+ parts.push(`${queued} queued for import`);
220
+ return parts.join(' • ');
221
+ },
222
+ items: all_items,
223
+ max_visible: Math.min(Math.max(all_items.length + 4, 8), 12),
224
+ enable_search: true,
225
+ metadata: (item) => item ? metadata_by_id.get(item.id)?.split('\n') : undefined,
226
+ on_change: (id, new_value) => {
227
+ if (id.startsWith('__header_'))
228
+ return;
229
+ if (managed_keys.has(id)) {
230
+ if (new_value === ENABLED) {
231
+ current_enabled.add(id);
232
+ mgr.enable(id);
233
+ }
234
+ else {
235
+ current_enabled.delete(id);
236
+ mgr.disable(id);
237
+ }
238
+ return;
239
+ }
240
+ const import_skill = importable_map.get(id);
241
+ if (!import_skill)
242
+ return;
243
+ const state = get_importable_state(discovered, import_skill);
244
+ if (state.action === 'import') {
245
+ if (new_value === ENABLED)
246
+ queued_imports.add(id);
247
+ else
248
+ queued_imports.delete(id);
249
+ return;
250
+ }
251
+ if (state.action !== 'sync')
252
+ return;
253
+ const imported_skill = find_matching_imported_skill(discovered, import_skill);
254
+ if (!imported_skill) {
255
+ ctx.ui.notify(`Imported copy for ${import_skill.name} was not found`, 'warning');
256
+ return;
257
+ }
258
+ try {
259
+ const result = mgr.sync_skill(imported_skill.key);
260
+ if (result.changed) {
261
+ reload_notice = `Synced ${import_skill.name}. Reloading...`;
262
+ return true;
263
+ }
264
+ ctx.ui.notify(`${import_skill.name} is already up to date.`, 'info');
265
+ }
266
+ catch (error) {
267
+ ctx.ui.notify(error instanceof Error ? error.message : String(error), 'warning');
268
+ }
269
+ },
270
+ });
271
+ if (queued_imports.size > 0) {
272
+ const imported_names = [];
273
+ for (const key of queued_imports) {
274
+ try {
275
+ mgr.import_skill(key);
276
+ imported_names.push(key);
277
+ }
278
+ catch (error) {
279
+ ctx.ui.notify(error instanceof Error ? error.message : String(error), 'warning');
280
+ }
281
+ }
282
+ if (imported_names.length > 0) {
283
+ reload_notice = `Imported ${imported_names.length} skill(s). Reloading...`;
284
+ }
285
+ }
286
+ if (reload_notice) {
287
+ ctx.ui.notify(reload_notice, 'info');
288
+ await ctx.reload();
289
+ return true;
290
+ }
291
+ if (!sets_equal(initial_enabled, current_enabled)) {
292
+ ctx.ui.notify('Reloading to apply updated skills...', 'info');
293
+ await ctx.reload();
294
+ return true;
295
+ }
296
+ return false;
297
+ }
298
+ function skill_status(skill) {
299
+ if (skill.kind === 'external')
300
+ return 'importable';
301
+ return skill.enabled ? 'enabled' : 'disabled';
302
+ }
303
+ function format_skill_detail(skill) {
304
+ const lines = [
305
+ `# ${skill.name}`,
306
+ '',
307
+ `Status: ${skill_status(skill)}`,
308
+ `Source: ${skill.source}`,
309
+ `Key: ${skill.key}`,
310
+ `Kind: ${skill.kind}`,
311
+ '',
312
+ skill.description,
313
+ '',
314
+ `Base directory: ${skill.baseDir}`,
315
+ `Skill file: ${skill.skillPath}`,
316
+ ];
317
+ if (skill.plugin) {
318
+ lines.push('', 'Plugin', `- ID: ${skill.plugin.pluginId}`, `- Version: ${skill.plugin.version}`, `- Install path: ${skill.plugin.installPath}`);
319
+ if (skill.plugin.gitCommitSha) {
320
+ lines.push(`- Commit: ${skill.plugin.gitCommitSha}`);
321
+ }
322
+ }
323
+ if (skill.import_meta) {
324
+ lines.push('', 'Import metadata', `- Upstream source: ${skill.import_meta.source}`, `- Imported at: ${skill.import_meta.imported_at}`, `- Last synced at: ${skill.import_meta.last_synced_at}`, `- Upstream path: ${skill.import_meta.upstream_skill_path}`);
325
+ if (skill.import_meta.upstream_version) {
326
+ lines.push(`- Upstream version: ${skill.import_meta.upstream_version}`);
327
+ }
328
+ if (skill.import_meta.upstream_git_commit_sha) {
329
+ lines.push(`- Upstream commit: ${skill.import_meta.upstream_git_commit_sha}`);
330
+ }
331
+ }
332
+ return lines.join('\n');
333
+ }
334
+ function format_skill_list(skills) {
335
+ if (skills.length === 0)
336
+ return 'No skills found.';
337
+ return sort_skills(skills)
338
+ .map((skill) => `${skill_status(skill).padEnd(10)} ${skill.name} (${skill.key})`)
339
+ .join('\n');
340
+ }
341
+ function find_skill(skills, key_or_name) {
342
+ const query = key_or_name.trim();
343
+ const exact_key = skills.find((skill) => skill.key === query);
344
+ if (exact_key)
345
+ return exact_key;
346
+ const exact_name = skills.filter((skill) => skill.name === query);
347
+ if (exact_name.length === 1)
348
+ return exact_name[0];
349
+ if (exact_name.length > 1) {
350
+ throw new Error(`Multiple skills named ${query}. Use an exact key instead.`);
351
+ }
352
+ const lower = query.toLowerCase();
353
+ const fuzzy = skills.filter((skill) => skill.key.toLowerCase() === lower ||
354
+ skill.name.toLowerCase() === lower);
355
+ if (fuzzy.length === 1)
356
+ return fuzzy[0];
357
+ if (fuzzy.length > 1) {
358
+ throw new Error(`Multiple skills matched ${query}. Use an exact key instead.`);
359
+ }
360
+ throw new Error(`Unknown skill: ${query}`);
361
+ }
362
+ async function pick_skill(ctx, options) {
363
+ return await show_picker_modal(ctx, {
364
+ title: options.title,
365
+ subtitle: options.subtitle,
366
+ items: options.skills.map((skill) => ({
367
+ value: skill.key,
368
+ label: skill.name,
369
+ description: `${skill_status(skill)} • ${skill.source} • ${skill.key}`,
370
+ })),
371
+ empty_message: options.empty_message,
372
+ });
373
+ }
374
+ async function show_skill_detail_modal(ctx, skill) {
375
+ await show_text_modal(ctx, {
376
+ title: skill.name,
377
+ subtitle: `${skill_status(skill)} • ${skill.source}`,
378
+ text: format_skill_detail(skill),
379
+ });
380
+ }
381
+ async function show_skill_list_modal(ctx, mgr) {
382
+ while (true) {
383
+ const skills = sort_skills([
384
+ ...mgr.discover(),
385
+ ...mgr.discover_importable(),
386
+ ]);
387
+ const key = await pick_skill(ctx, {
388
+ title: 'Browse skills',
389
+ subtitle: `${mgr.discover().length} managed • ${mgr.discover_importable().length} importable`,
390
+ skills,
391
+ empty_message: 'No skills found',
392
+ });
393
+ if (!key)
394
+ return;
395
+ await show_skill_detail_modal(ctx, find_skill(skills, key));
396
+ }
397
+ }
398
+ async function show_refresh_summary(ctx, mgr) {
399
+ mgr.refresh();
400
+ await show_text_modal(ctx, {
401
+ title: 'Skills refreshed',
402
+ text: `${mgr.discover().length} managed skills\n${mgr.discover_importable().length} importable skills found`,
403
+ });
404
+ }
405
+ async function show_defaults_modal(ctx, mgr) {
406
+ const selected = await show_picker_modal(ctx, {
407
+ title: 'Skill default policy',
408
+ subtitle: 'Choose how newly discovered skills start',
409
+ items: [
410
+ {
411
+ value: 'all-enabled',
412
+ label: 'All enabled',
413
+ description: 'New skills are enabled by default',
414
+ },
415
+ {
416
+ value: 'all-disabled',
417
+ label: 'All disabled',
418
+ description: 'New skills require explicit enablement',
419
+ },
420
+ ],
421
+ });
422
+ if (!selected)
423
+ return;
424
+ mgr.set_defaults(selected);
425
+ await show_text_modal(ctx, {
426
+ title: 'Skill defaults updated',
427
+ text: `Default policy: ${selected}`,
428
+ });
429
+ }
129
430
  // Default export for Pi Package / additionalExtensionPaths loading
130
431
  export default async function skills(pi) {
131
432
  const mgr = create_skills_manager();
132
- const subs = ['import', 'sync', 'refresh', 'defaults'];
433
+ const subs = [
434
+ 'list',
435
+ 'show',
436
+ 'import',
437
+ 'sync',
438
+ 'refresh',
439
+ 'defaults',
440
+ ];
133
441
  pi.registerCommand('skills', {
134
442
  description: 'Manage pi-native skills and import external skills',
135
443
  getArgumentCompletions: (prefix) => {
136
- const parts = prefix.trim().split(/\s+/);
137
- if (parts.length <= 1) {
444
+ const parts = prefix.trimStart().split(/\s+/);
445
+ const has_trailing_space = /\s$/.test(prefix);
446
+ if (parts.length <= 1 && !has_trailing_space) {
138
447
  return subs
139
448
  .filter((s) => s.startsWith(parts[0] || ''))
140
449
  .map((s) => ({ value: s, label: s }));
141
450
  }
451
+ if (parts[0] === 'show') {
452
+ const q = parts.slice(1).join(' ').toLowerCase();
453
+ return sort_skills([
454
+ ...mgr.discover(),
455
+ ...mgr.discover_importable(),
456
+ ])
457
+ .filter((s) => s.key.toLowerCase().includes(q) ||
458
+ s.name.toLowerCase().includes(q))
459
+ .slice(0, 20)
460
+ .map((s) => ({
461
+ value: `${parts[0]} ${s.key}`,
462
+ label: s.key,
463
+ }));
464
+ }
142
465
  if (parts[0] === 'import') {
143
466
  const q = parts.slice(1).join(' ').toLowerCase();
144
467
  return sort_skills(mgr.discover_importable())
@@ -168,127 +491,62 @@ export default async function skills(pi) {
168
491
  handler: async (args, ctx) => {
169
492
  const trimmed = args.trim();
170
493
  if (!trimmed && ctx.hasUI) {
171
- const discovered = sort_skills(mgr.discover());
172
- const importable = sort_skills(mgr.discover_importable());
173
- if (discovered.length === 0 && importable.length === 0) {
174
- ctx.ui.notify('No managed or importable skills found');
175
- return;
176
- }
177
- const initial_enabled = new Set(discovered
178
- .filter((skill) => skill.enabled)
179
- .map((skill) => skill.key));
180
- const current_enabled = new Set(initial_enabled);
181
- const queued_imports = new Set();
182
- let reload_notice = null;
183
- const managed_items = discovered.map(to_setting_item);
184
- const importable_items = importable.map((skill) => to_importable_setting_item(discovered, skill));
185
- const all_items = [];
186
- if (managed_items.length > 0) {
187
- all_items.push({
188
- id: '__header_managed__',
189
- label: `── Managed (${managed_items.length}) ──`,
190
- description: '',
191
- currentValue: '',
192
- });
193
- all_items.push(...managed_items);
194
- }
195
- if (importable_items.length > 0) {
196
- all_items.push({
197
- id: '__header_importable__',
198
- label: `── Importable (${importable_items.length}) ──`,
199
- description: '',
200
- currentValue: '',
201
- });
202
- all_items.push(...importable_items);
203
- }
204
- const metadata_by_id = new Map(all_items.map((item) => [item.id, item.description ?? '']));
205
- for (const item of all_items) {
206
- if (!item.id.startsWith('__header_'))
207
- item.description = '';
208
- }
209
- const managed_keys = new Set(discovered.map((s) => s.key));
210
- const importable_map = new Map(importable.map((s) => [s.key, s]));
211
- await show_settings_modal(ctx, {
212
- title: 'Skills',
213
- subtitle: () => {
214
- const enabled = current_enabled.size;
215
- const disabled = discovered.length - enabled;
216
- const queued = queued_imports.size;
217
- const parts = [
218
- `${enabled} enabled`,
219
- `${disabled} disabled`,
220
- ];
221
- if (importable.length > 0) {
222
- parts.push(`${importable.length} importable`);
223
- }
224
- if (queued > 0) {
225
- parts.push(`${queued} queued for import`);
226
- }
227
- return parts.join(' • ');
228
- },
229
- items: all_items,
230
- max_visible: Math.min(Math.max(all_items.length + 4, 8), 12),
231
- enable_search: true,
232
- metadata: (item) => item
233
- ? metadata_by_id.get(item.id)?.split('\n')
234
- : undefined,
235
- on_change: (id, new_value) => {
236
- if (id.startsWith('__header_'))
494
+ while (true) {
495
+ const managed_count = mgr.discover().length;
496
+ const importable_count = mgr.discover_importable().length;
497
+ const selected = await show_skills_home_modal(ctx, managed_count, importable_count);
498
+ if (!selected)
499
+ return;
500
+ if (selected === 'manage') {
501
+ if (await show_skills_manager_modal(ctx, mgr))
237
502
  return;
238
- if (managed_keys.has(id)) {
239
- if (new_value === ENABLED) {
240
- current_enabled.add(id);
241
- mgr.enable(id);
242
- }
243
- else {
244
- current_enabled.delete(id);
245
- mgr.disable(id);
246
- }
503
+ }
504
+ else if (selected === 'browse') {
505
+ await show_skill_list_modal(ctx, mgr);
506
+ }
507
+ else if (selected === 'import') {
508
+ const key = await pick_skill(ctx, {
509
+ title: 'Import skill',
510
+ subtitle: 'Copy an external skill into Pi-native storage',
511
+ skills: sort_skills(mgr.discover_importable()),
512
+ empty_message: 'No importable skills found',
513
+ });
514
+ if (!key)
515
+ continue;
516
+ try {
517
+ const result = mgr.import_skill(key);
518
+ ctx.ui.notify(`Imported ${key} to ${result.skillDir}. Reloading...`, 'info');
519
+ await ctx.reload();
247
520
  return;
248
521
  }
249
- const import_skill = importable_map.get(id);
250
- if (!import_skill)
251
- return;
252
- const state = get_importable_state(discovered, import_skill);
253
- if (state.action === 'import') {
254
- if (new_value === ENABLED) {
255
- queued_imports.add(id);
256
- }
257
- else {
258
- queued_imports.delete(id);
259
- }
260
- return;
522
+ catch (error) {
523
+ ctx.ui.notify(error instanceof Error
524
+ ? error.message
525
+ : String(error), 'warning');
261
526
  }
262
- if (state.action === 'sync') {
263
- const imported_skill = find_matching_imported_skill(discovered, import_skill);
264
- if (!imported_skill) {
265
- ctx.ui.notify(`Imported copy for ${import_skill.name} was not found`, 'warning');
527
+ }
528
+ else if (selected === 'sync') {
529
+ const key = await pick_skill(ctx, {
530
+ title: 'Sync imported skill',
531
+ subtitle: 'Update an imported skill from its upstream source',
532
+ skills: sort_skills(mgr
533
+ .discover()
534
+ .filter((skill) => Boolean(skill.import_meta))),
535
+ empty_message: 'No imported skills found',
536
+ });
537
+ if (!key)
538
+ continue;
539
+ try {
540
+ const result = mgr.sync_skill(key);
541
+ if (result.changed) {
542
+ ctx.ui.notify(`Synced ${key}. Reloading...`, 'info');
543
+ await ctx.reload();
266
544
  return;
267
545
  }
268
- try {
269
- const result = mgr.sync_skill(imported_skill.key);
270
- if (result.changed) {
271
- reload_notice = `Synced ${import_skill.name}. Reloading...`;
272
- return true;
273
- }
274
- else {
275
- ctx.ui.notify(`${import_skill.name} is already up to date.`, 'info');
276
- }
277
- }
278
- catch (error) {
279
- ctx.ui.notify(error instanceof Error
280
- ? error.message
281
- : String(error), 'warning');
282
- }
283
- }
284
- },
285
- });
286
- if (queued_imports.size > 0) {
287
- const imported_names = [];
288
- for (const key of queued_imports) {
289
- try {
290
- mgr.import_skill(key);
291
- imported_names.push(key);
546
+ await show_text_modal(ctx, {
547
+ title: 'Skill already up to date',
548
+ text: `${key} is already up to date.`,
549
+ });
292
550
  }
293
551
  catch (error) {
294
552
  ctx.ui.notify(error instanceof Error
@@ -296,33 +554,85 @@ export default async function skills(pi) {
296
554
  : String(error), 'warning');
297
555
  }
298
556
  }
299
- if (imported_names.length > 0) {
300
- reload_notice = `Imported ${imported_names.length} skill(s). Reloading...`;
557
+ else if (selected === 'refresh') {
558
+ await show_refresh_summary(ctx, mgr);
559
+ }
560
+ else if (selected === 'defaults') {
561
+ await show_defaults_modal(ctx, mgr);
301
562
  }
302
563
  }
303
- if (reload_notice) {
304
- ctx.ui.notify(reload_notice, 'info');
305
- await ctx.reload();
306
- return;
307
- }
308
- if (!sets_equal(initial_enabled, current_enabled)) {
309
- ctx.ui.notify('Reloading to apply updated skills...', 'info');
310
- await ctx.reload();
311
- return;
312
- }
313
- return;
314
564
  }
315
565
  const [sub, ...rest] = (trimmed || 'list').split(/\s+/);
316
566
  const arg = rest.join(' ');
317
567
  switch (sub) {
568
+ case 'list': {
569
+ const skills = [
570
+ ...mgr.discover(),
571
+ ...mgr.discover_importable(),
572
+ ];
573
+ if (ctx.hasUI) {
574
+ await show_skill_list_modal(ctx, mgr);
575
+ }
576
+ else {
577
+ ctx.ui.notify(format_skill_list(skills));
578
+ }
579
+ break;
580
+ }
581
+ case 'show': {
582
+ const skills = [
583
+ ...mgr.discover(),
584
+ ...mgr.discover_importable(),
585
+ ];
586
+ let target = arg;
587
+ if (!target && ctx.hasUI) {
588
+ target =
589
+ (await pick_skill(ctx, {
590
+ title: 'Show skill details',
591
+ subtitle: 'Open a read-only skill detail view',
592
+ skills: sort_skills(skills),
593
+ empty_message: 'No skills found',
594
+ })) ?? '';
595
+ if (!target)
596
+ return;
597
+ }
598
+ if (!target) {
599
+ ctx.ui.notify('Usage: /skills show <key|name>', 'warning');
600
+ return;
601
+ }
602
+ try {
603
+ const skill = find_skill(skills, target);
604
+ if (ctx.hasUI) {
605
+ await show_skill_detail_modal(ctx, skill);
606
+ }
607
+ else {
608
+ ctx.ui.notify(format_skill_detail(skill));
609
+ }
610
+ }
611
+ catch (error) {
612
+ ctx.ui.notify(error instanceof Error ? error.message : String(error), 'warning');
613
+ }
614
+ break;
615
+ }
318
616
  case 'import': {
319
- if (!arg) {
617
+ let target = arg;
618
+ if (!target && ctx.hasUI) {
619
+ target =
620
+ (await pick_skill(ctx, {
621
+ title: 'Import skill',
622
+ subtitle: 'Copy an external skill into Pi-native storage',
623
+ skills: sort_skills(mgr.discover_importable()),
624
+ empty_message: 'No importable skills found',
625
+ })) ?? '';
626
+ if (!target)
627
+ return;
628
+ }
629
+ if (!target) {
320
630
  ctx.ui.notify('Usage: /skills import <key|name>', 'warning');
321
631
  return;
322
632
  }
323
633
  try {
324
- const result = mgr.import_skill(arg);
325
- ctx.ui.notify(`Imported ${arg} to ${result.skillDir}. Reloading...`, 'info');
634
+ const result = mgr.import_skill(target);
635
+ ctx.ui.notify(`Imported ${target} to ${result.skillDir}. Reloading...`, 'info');
326
636
  await ctx.reload();
327
637
  return;
328
638
  }
@@ -332,17 +642,39 @@ export default async function skills(pi) {
332
642
  }
333
643
  }
334
644
  case 'sync': {
335
- if (!arg) {
645
+ let target = arg;
646
+ if (!target && ctx.hasUI) {
647
+ target =
648
+ (await pick_skill(ctx, {
649
+ title: 'Sync imported skill',
650
+ subtitle: 'Update an imported skill from its upstream source',
651
+ skills: sort_skills(mgr
652
+ .discover()
653
+ .filter((skill) => Boolean(skill.import_meta))),
654
+ empty_message: 'No imported skills found',
655
+ })) ?? '';
656
+ if (!target)
657
+ return;
658
+ }
659
+ if (!target) {
336
660
  ctx.ui.notify('Usage: /skills sync <key|name>', 'warning');
337
661
  return;
338
662
  }
339
663
  try {
340
- const result = mgr.sync_skill(arg);
341
- ctx.ui.notify(result.changed
342
- ? `Synced ${arg}. Reloading...`
343
- : `${arg} is already up to date.`, 'info');
664
+ const result = mgr.sync_skill(target);
344
665
  if (result.changed) {
666
+ ctx.ui.notify(`Synced ${target}. Reloading...`, 'info');
345
667
  await ctx.reload();
668
+ return;
669
+ }
670
+ if (ctx.hasUI) {
671
+ await show_text_modal(ctx, {
672
+ title: 'Skill already up to date',
673
+ text: `${target} is already up to date.`,
674
+ });
675
+ }
676
+ else {
677
+ ctx.ui.notify(`${target} is already up to date.`, 'info');
346
678
  }
347
679
  return;
348
680
  }
@@ -352,17 +684,33 @@ export default async function skills(pi) {
352
684
  }
353
685
  }
354
686
  case 'refresh': {
687
+ if (ctx.hasUI) {
688
+ await show_refresh_summary(ctx, mgr);
689
+ break;
690
+ }
355
691
  mgr.refresh();
356
692
  ctx.ui.notify(`Rescanned: ${mgr.discover().length} managed skills, ${mgr.discover_importable().length} importable skills found`);
357
693
  break;
358
694
  }
359
695
  case 'defaults': {
696
+ if (!arg && ctx.hasUI) {
697
+ await show_defaults_modal(ctx, mgr);
698
+ break;
699
+ }
360
700
  if (arg !== 'all-enabled' && arg !== 'all-disabled') {
361
701
  ctx.ui.notify('Usage: /skills defaults <all-enabled|all-disabled>', 'warning');
362
702
  return;
363
703
  }
364
704
  mgr.set_defaults(arg);
365
- ctx.ui.notify(`Default policy: ${arg}`);
705
+ if (ctx.hasUI) {
706
+ await show_text_modal(ctx, {
707
+ title: 'Skill defaults updated',
708
+ text: `Default policy: ${arg}`,
709
+ });
710
+ }
711
+ else {
712
+ ctx.ui.notify(`Default policy: ${arg}`);
713
+ }
366
714
  break;
367
715
  }
368
716
  default:
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spences10/pi-skills",
3
- "version": "0.0.5",
3
+ "version": "0.0.7",
4
4
  "description": "Pi extension for managing and importing Agent Skills from Pi, Claude, and plugin sources",
5
5
  "keywords": [
6
6
  "agent-skills",
@@ -32,13 +32,13 @@
32
32
  "access": "public"
33
33
  },
34
34
  "dependencies": {
35
- "@mariozechner/pi-coding-agent": "^0.70.6",
36
- "@mariozechner/pi-tui": "^0.70.6",
37
- "@spences10/pi-tui-modal": "0.0.2"
35
+ "@mariozechner/pi-coding-agent": "^0.71.1",
36
+ "@mariozechner/pi-tui": "^0.71.1",
37
+ "@spences10/pi-tui-modal": "0.0.4"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@types/node": "^25.6.0",
41
- "typescript": "^6.0.0",
41
+ "typescript": "^6.0.3",
42
42
  "vitest": "^4.1.5"
43
43
  },
44
44
  "engines": {