skillspp 1.2.0 → 1.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/background-executor.js +311 -1507
- package/dist/background-executor.js.map +4 -4
- package/dist/cli.js +48 -144
- package/dist/cli.js.map +2 -2
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -185,264 +185,198 @@ var STANDARD_AGENTS = {
|
|
|
185
185
|
displayName: "Universal",
|
|
186
186
|
projectSkillsDir: ".agents/skills",
|
|
187
187
|
globalSkillsDir: ".agents/skills",
|
|
188
|
-
projectPluginsDir: ".agents/plugins/cache",
|
|
189
|
-
globalPluginsDir: ".agents/plugins/cache",
|
|
190
188
|
installMarkers: [".agents"]
|
|
191
189
|
},
|
|
192
190
|
adal: {
|
|
193
191
|
displayName: "AdaL",
|
|
194
192
|
projectSkillsDir: ".adal/skills",
|
|
195
193
|
globalSkillsDir: ".adal/skills",
|
|
196
|
-
projectPluginsDir: ".adal/plugins/cache",
|
|
197
|
-
globalPluginsDir: ".adal/plugins/cache",
|
|
198
194
|
installMarkers: [".adal"]
|
|
199
195
|
},
|
|
200
196
|
antigravity: {
|
|
201
197
|
displayName: "Antigravity",
|
|
202
198
|
projectSkillsDir: ".agent/skills",
|
|
203
199
|
globalSkillsDir: ".gemini/antigravity/skills",
|
|
204
|
-
projectPluginsDir: ".agent/plugins/cache",
|
|
205
|
-
globalPluginsDir: ".gemini/antigravity/plugins/cache",
|
|
206
200
|
installMarkers: [".gemini/antigravity"]
|
|
207
201
|
},
|
|
208
202
|
augment: {
|
|
209
203
|
displayName: "Augment",
|
|
210
204
|
projectSkillsDir: ".augment/skills",
|
|
211
205
|
globalSkillsDir: ".augment/skills",
|
|
212
|
-
projectPluginsDir: ".augment/plugins/cache",
|
|
213
|
-
globalPluginsDir: ".augment/plugins/cache",
|
|
214
206
|
installMarkers: [".augment"]
|
|
215
207
|
},
|
|
216
208
|
"claude-code": {
|
|
217
209
|
displayName: "Claude Code",
|
|
218
210
|
projectSkillsDir: ".claude/skills",
|
|
219
211
|
globalSkillsDir: ".claude/skills",
|
|
220
|
-
projectPluginsDir: ".claude/plugins/cache",
|
|
221
|
-
globalPluginsDir: ".claude/plugins/cache",
|
|
222
212
|
installMarkers: [".claude"]
|
|
223
213
|
},
|
|
224
214
|
"cortex-code": {
|
|
225
215
|
displayName: "Cortex Code",
|
|
226
216
|
projectSkillsDir: ".cortex/skills",
|
|
227
217
|
globalSkillsDir: ".cortex/skills",
|
|
228
|
-
projectPluginsDir: ".cortex/plugins/cache",
|
|
229
|
-
globalPluginsDir: ".cortex/plugins/cache",
|
|
230
218
|
installMarkers: [".cortex"]
|
|
231
219
|
},
|
|
232
220
|
crush: {
|
|
233
221
|
displayName: "Crush",
|
|
234
222
|
projectSkillsDir: ".crush/skills",
|
|
235
223
|
globalSkillsDir: ".crush/skills",
|
|
236
|
-
projectPluginsDir: ".crush/plugins/cache",
|
|
237
|
-
globalPluginsDir: ".crush/plugins/cache",
|
|
238
224
|
installMarkers: [".crush"]
|
|
239
225
|
},
|
|
240
226
|
droid: {
|
|
241
227
|
displayName: "Droid",
|
|
242
228
|
projectSkillsDir: ".factory/skills",
|
|
243
229
|
globalSkillsDir: ".factory/skills",
|
|
244
|
-
projectPluginsDir: ".factory/plugins/cache",
|
|
245
|
-
globalPluginsDir: ".factory/plugins/cache",
|
|
246
230
|
installMarkers: [".factory"]
|
|
247
231
|
},
|
|
248
232
|
goose: {
|
|
249
233
|
displayName: "Goose",
|
|
250
234
|
projectSkillsDir: ".goose/skills",
|
|
251
235
|
globalSkillsDir: ".config/goose/skills",
|
|
252
|
-
projectPluginsDir: ".goose/plugins/cache",
|
|
253
|
-
globalPluginsDir: ".config/goose/plugins/cache",
|
|
254
236
|
installMarkers: [".config/goose"]
|
|
255
237
|
},
|
|
256
238
|
"iflow-cli": {
|
|
257
239
|
displayName: "iFlow CLI",
|
|
258
240
|
projectSkillsDir: ".iflow/skills",
|
|
259
241
|
globalSkillsDir: ".iflow/skills",
|
|
260
|
-
projectPluginsDir: ".iflow/plugins/cache",
|
|
261
|
-
globalPluginsDir: ".iflow/plugins/cache",
|
|
262
242
|
installMarkers: [".iflow"]
|
|
263
243
|
},
|
|
264
244
|
junie: {
|
|
265
245
|
displayName: "Junie",
|
|
266
246
|
projectSkillsDir: ".junie/skills",
|
|
267
247
|
globalSkillsDir: ".junie/skills",
|
|
268
|
-
projectPluginsDir: ".junie/plugins/cache",
|
|
269
|
-
globalPluginsDir: ".junie/plugins/cache",
|
|
270
248
|
installMarkers: [".junie"]
|
|
271
249
|
},
|
|
272
250
|
"kiro-cli": {
|
|
273
251
|
displayName: "Kiro CLI",
|
|
274
252
|
projectSkillsDir: ".kiro/skills",
|
|
275
253
|
globalSkillsDir: ".kiro/skills",
|
|
276
|
-
projectPluginsDir: ".kiro/plugins/cache",
|
|
277
|
-
globalPluginsDir: ".kiro/plugins/cache",
|
|
278
254
|
installMarkers: [".kiro"]
|
|
279
255
|
},
|
|
280
256
|
kode: {
|
|
281
257
|
displayName: "Kode",
|
|
282
258
|
projectSkillsDir: ".kode/skills",
|
|
283
259
|
globalSkillsDir: ".kode/skills",
|
|
284
|
-
projectPluginsDir: ".kode/plugins/cache",
|
|
285
|
-
globalPluginsDir: ".kode/plugins/cache",
|
|
286
260
|
installMarkers: [".kode"]
|
|
287
261
|
},
|
|
288
262
|
openclaw: {
|
|
289
263
|
displayName: "OpenClaw",
|
|
290
264
|
projectSkillsDir: "skills",
|
|
291
265
|
globalSkillsDir: ".openclaw/skills",
|
|
292
|
-
projectPluginsDir: "plugins/cache",
|
|
293
|
-
globalPluginsDir: ".openclaw/plugins/cache",
|
|
294
266
|
installMarkers: [".openclaw"]
|
|
295
267
|
},
|
|
296
268
|
openhands: {
|
|
297
269
|
displayName: "OpenHands",
|
|
298
270
|
projectSkillsDir: ".openhands/skills",
|
|
299
271
|
globalSkillsDir: ".openhands/skills",
|
|
300
|
-
projectPluginsDir: ".openhands/plugins/cache",
|
|
301
|
-
globalPluginsDir: ".openhands/plugins/cache",
|
|
302
272
|
installMarkers: [".openhands"]
|
|
303
273
|
},
|
|
304
274
|
"mistral-vibe": {
|
|
305
275
|
displayName: "Mistral Vibe",
|
|
306
276
|
projectSkillsDir: ".vibe/skills",
|
|
307
277
|
globalSkillsDir: ".vibe/skills",
|
|
308
|
-
projectPluginsDir: ".vibe/plugins/cache",
|
|
309
|
-
globalPluginsDir: ".vibe/plugins/cache",
|
|
310
278
|
installMarkers: [".vibe"]
|
|
311
279
|
},
|
|
312
280
|
neovate: {
|
|
313
281
|
displayName: "Neovate",
|
|
314
282
|
projectSkillsDir: ".neovate/skills",
|
|
315
283
|
globalSkillsDir: ".neovate/skills",
|
|
316
|
-
projectPluginsDir: ".neovate/plugins/cache",
|
|
317
|
-
globalPluginsDir: ".neovate/plugins/cache",
|
|
318
284
|
installMarkers: [".neovate"]
|
|
319
285
|
},
|
|
320
286
|
pochi: {
|
|
321
287
|
displayName: "Pochi",
|
|
322
288
|
projectSkillsDir: ".pochi/skills",
|
|
323
289
|
globalSkillsDir: ".pochi/skills",
|
|
324
|
-
projectPluginsDir: ".pochi/plugins/cache",
|
|
325
|
-
globalPluginsDir: ".pochi/plugins/cache",
|
|
326
290
|
installMarkers: [".pochi"]
|
|
327
291
|
},
|
|
328
292
|
qoder: {
|
|
329
293
|
displayName: "Qoder",
|
|
330
294
|
projectSkillsDir: ".qoder/skills",
|
|
331
295
|
globalSkillsDir: ".qoder/skills",
|
|
332
|
-
projectPluginsDir: ".qoder/plugins/cache",
|
|
333
|
-
globalPluginsDir: ".qoder/plugins/cache",
|
|
334
296
|
installMarkers: [".qoder"]
|
|
335
297
|
},
|
|
336
298
|
"qwen-code": {
|
|
337
299
|
displayName: "Qwen Code",
|
|
338
300
|
projectSkillsDir: ".qwen/skills",
|
|
339
301
|
globalSkillsDir: ".qwen/skills",
|
|
340
|
-
projectPluginsDir: ".qwen/plugins/cache",
|
|
341
|
-
globalPluginsDir: ".qwen/plugins/cache",
|
|
342
302
|
installMarkers: [".qwen"]
|
|
343
303
|
},
|
|
344
304
|
roo: {
|
|
345
305
|
displayName: "Roo Code",
|
|
346
306
|
projectSkillsDir: ".roo/skills",
|
|
347
307
|
globalSkillsDir: ".roo/skills",
|
|
348
|
-
projectPluginsDir: ".roo/plugins/cache",
|
|
349
|
-
globalPluginsDir: ".roo/plugins/cache",
|
|
350
308
|
installMarkers: [".roo"]
|
|
351
309
|
},
|
|
352
310
|
trae: {
|
|
353
311
|
displayName: "Trae",
|
|
354
312
|
projectSkillsDir: ".trae/skills",
|
|
355
313
|
globalSkillsDir: ".trae/skills",
|
|
356
|
-
projectPluginsDir: ".trae/plugins/cache",
|
|
357
|
-
globalPluginsDir: ".trae/plugins/cache",
|
|
358
314
|
installMarkers: [".trae"]
|
|
359
315
|
},
|
|
360
316
|
"trae-cn": {
|
|
361
317
|
displayName: "Trae CN",
|
|
362
318
|
projectSkillsDir: ".trae/skills",
|
|
363
319
|
globalSkillsDir: ".trae/skills",
|
|
364
|
-
projectPluginsDir: ".trae/plugins/cache",
|
|
365
|
-
globalPluginsDir: ".trae/plugins/cache",
|
|
366
320
|
installMarkers: [".trae"]
|
|
367
321
|
},
|
|
368
322
|
windsurf: {
|
|
369
323
|
displayName: "Windsurf",
|
|
370
324
|
projectSkillsDir: ".windsurf/skills",
|
|
371
325
|
globalSkillsDir: ".codeium/windsurf/skills",
|
|
372
|
-
projectPluginsDir: ".windsurf/plugins/cache",
|
|
373
|
-
globalPluginsDir: ".codeium/windsurf/plugins/cache",
|
|
374
326
|
installMarkers: [".windsurf", ".codeium/windsurf"]
|
|
375
327
|
},
|
|
376
328
|
zencoder: {
|
|
377
329
|
displayName: "Zencoder",
|
|
378
330
|
projectSkillsDir: ".zencoder/skills",
|
|
379
331
|
globalSkillsDir: ".zencoder/skills",
|
|
380
|
-
projectPluginsDir: ".zencoder/plugins/cache",
|
|
381
|
-
globalPluginsDir: ".zencoder/plugins/cache",
|
|
382
332
|
installMarkers: [".zencoder"]
|
|
383
333
|
},
|
|
384
334
|
continue: {
|
|
385
335
|
displayName: "Continue",
|
|
386
336
|
projectSkillsDir: ".continue/skills",
|
|
387
337
|
globalSkillsDir: ".continue/skills",
|
|
388
|
-
projectPluginsDir: ".continue/plugins/cache",
|
|
389
|
-
globalPluginsDir: ".continue/plugins/cache",
|
|
390
338
|
installMarkers: [".continue"]
|
|
391
339
|
},
|
|
392
340
|
codebuddy: {
|
|
393
341
|
displayName: "CodeBuddy",
|
|
394
342
|
projectSkillsDir: ".codebuddy/skills",
|
|
395
343
|
globalSkillsDir: ".codebuddy/skills",
|
|
396
|
-
projectPluginsDir: ".codebuddy/plugins/cache",
|
|
397
|
-
globalPluginsDir: ".codebuddy/plugins/cache",
|
|
398
344
|
installMarkers: [".codebuddy"]
|
|
399
345
|
},
|
|
400
346
|
"command-code": {
|
|
401
347
|
displayName: "Command Code",
|
|
402
348
|
projectSkillsDir: ".commandcode/skills",
|
|
403
349
|
globalSkillsDir: ".commandcode/skills",
|
|
404
|
-
projectPluginsDir: ".commandcode/plugins/cache",
|
|
405
|
-
globalPluginsDir: ".commandcode/plugins/cache",
|
|
406
350
|
installMarkers: [".commandcode"]
|
|
407
351
|
},
|
|
408
352
|
kilo: {
|
|
409
353
|
displayName: "Kilo Code",
|
|
410
354
|
projectSkillsDir: ".kilocode/skills",
|
|
411
355
|
globalSkillsDir: ".kilocode/skills",
|
|
412
|
-
projectPluginsDir: ".kilocode/plugins/cache",
|
|
413
|
-
globalPluginsDir: ".kilocode/plugins/cache",
|
|
414
356
|
installMarkers: [".kilocode"]
|
|
415
357
|
},
|
|
416
358
|
mcpjam: {
|
|
417
359
|
displayName: "MCPJam",
|
|
418
360
|
projectSkillsDir: ".mcpjam/skills",
|
|
419
361
|
globalSkillsDir: ".mcpjam/skills",
|
|
420
|
-
projectPluginsDir: ".mcpjam/plugins/cache",
|
|
421
|
-
globalPluginsDir: ".mcpjam/plugins/cache",
|
|
422
362
|
installMarkers: [".mcpjam"]
|
|
423
363
|
},
|
|
424
364
|
mux: {
|
|
425
365
|
displayName: "Mux",
|
|
426
366
|
projectSkillsDir: ".mux/skills",
|
|
427
367
|
globalSkillsDir: ".mux/skills",
|
|
428
|
-
projectPluginsDir: ".mux/plugins/cache",
|
|
429
|
-
globalPluginsDir: ".mux/plugins/cache",
|
|
430
368
|
installMarkers: [".mux"]
|
|
431
369
|
},
|
|
432
370
|
pi: {
|
|
433
371
|
displayName: "Pi",
|
|
434
372
|
projectSkillsDir: ".pi/skills",
|
|
435
373
|
globalSkillsDir: ".pi/agent/skills",
|
|
436
|
-
projectPluginsDir: ".pi/plugins/cache",
|
|
437
|
-
globalPluginsDir: ".pi/agent/plugins/cache",
|
|
438
374
|
installMarkers: [".pi"]
|
|
439
375
|
},
|
|
440
376
|
replit: {
|
|
441
377
|
displayName: "Replit",
|
|
442
378
|
projectSkillsDir: ".agents/skills",
|
|
443
379
|
globalSkillsDir: ".config/agents/skills",
|
|
444
|
-
projectPluginsDir: ".agents/plugins/cache",
|
|
445
|
-
globalPluginsDir: ".config/agents/plugins/cache",
|
|
446
380
|
installMarkers: [".config/agents"]
|
|
447
381
|
}
|
|
448
382
|
};
|
|
@@ -452,64 +386,48 @@ var AGENTS = {
|
|
|
452
386
|
displayName: "Codex",
|
|
453
387
|
projectSkillsDir: ".agents/skills",
|
|
454
388
|
globalSkillsDir: ".codex/skills",
|
|
455
|
-
projectPluginsDir: ".agents/plugins/cache",
|
|
456
|
-
globalPluginsDir: ".codex/plugins/cache",
|
|
457
389
|
installMarkers: [".codex"]
|
|
458
390
|
},
|
|
459
391
|
cursor: {
|
|
460
392
|
displayName: "Cursor",
|
|
461
393
|
projectSkillsDir: ".agents/skills",
|
|
462
394
|
globalSkillsDir: ".cursor/skills",
|
|
463
|
-
projectPluginsDir: ".agents/plugins/cache",
|
|
464
|
-
globalPluginsDir: ".cursor/plugins/cache",
|
|
465
395
|
installMarkers: [".cursor"]
|
|
466
396
|
},
|
|
467
397
|
"gemini-cli": {
|
|
468
398
|
displayName: "Gemini CLI",
|
|
469
399
|
projectSkillsDir: ".agents/skills",
|
|
470
400
|
globalSkillsDir: ".gemini/skills",
|
|
471
|
-
projectPluginsDir: ".agents/plugins/cache",
|
|
472
|
-
globalPluginsDir: ".gemini/plugins/cache",
|
|
473
401
|
installMarkers: [".gemini"]
|
|
474
402
|
},
|
|
475
403
|
"github-copilot": {
|
|
476
404
|
displayName: "GitHub Copilot",
|
|
477
405
|
projectSkillsDir: ".agents/skills",
|
|
478
406
|
globalSkillsDir: ".copilot/skills",
|
|
479
|
-
projectPluginsDir: ".agents/plugins/cache",
|
|
480
|
-
globalPluginsDir: ".copilot/plugins/cache",
|
|
481
407
|
installMarkers: [".copilot"]
|
|
482
408
|
},
|
|
483
409
|
amp: {
|
|
484
410
|
displayName: "Amp",
|
|
485
411
|
projectSkillsDir: ".agents/skills",
|
|
486
412
|
globalSkillsDir: ".config/agents/skills",
|
|
487
|
-
projectPluginsDir: ".agents/plugins/cache",
|
|
488
|
-
globalPluginsDir: ".config/agents/plugins/cache",
|
|
489
413
|
installMarkers: [".config/agents"]
|
|
490
414
|
},
|
|
491
415
|
opencode: {
|
|
492
416
|
displayName: "OpenCode",
|
|
493
417
|
projectSkillsDir: ".agents/skills",
|
|
494
418
|
globalSkillsDir: ".config/opencode/skills",
|
|
495
|
-
projectPluginsDir: ".agents/plugins/cache",
|
|
496
|
-
globalPluginsDir: ".config/opencode/plugins/cache",
|
|
497
419
|
installMarkers: [".config/opencode"]
|
|
498
420
|
},
|
|
499
421
|
windsurf: {
|
|
500
422
|
displayName: "Windsurf",
|
|
501
423
|
projectSkillsDir: ".windsurf/skills",
|
|
502
424
|
globalSkillsDir: ".codeium/windsurf/skills",
|
|
503
|
-
projectPluginsDir: ".windsurf/plugins/cache",
|
|
504
|
-
globalPluginsDir: ".codeium/windsurf/plugins/cache",
|
|
505
425
|
installMarkers: [".windsurf", ".codeium/windsurf"]
|
|
506
426
|
},
|
|
507
427
|
cline: {
|
|
508
428
|
displayName: "Cline",
|
|
509
429
|
projectSkillsDir: ".cline/skills",
|
|
510
430
|
globalSkillsDir: ".cline/skills",
|
|
511
|
-
projectPluginsDir: ".cline/plugins/cache",
|
|
512
|
-
globalPluginsDir: ".cline/plugins/cache",
|
|
513
431
|
installMarkers: [".cline"]
|
|
514
432
|
}
|
|
515
433
|
};
|
|
@@ -579,11 +497,6 @@ function getAgentSkillsDir(agent, globalInstall, cwd) {
|
|
|
579
497
|
const base = globalInstall ? os.homedir() : cwd;
|
|
580
498
|
return path3.join(base, relative);
|
|
581
499
|
}
|
|
582
|
-
function getAgentPluginsDir(agent, globalInstall, cwd) {
|
|
583
|
-
const relative = globalInstall ? AGENTS[agent].globalPluginsDir : AGENTS[agent].projectPluginsDir;
|
|
584
|
-
const base = globalInstall ? os.homedir() : cwd;
|
|
585
|
-
return path3.join(base, relative);
|
|
586
|
-
}
|
|
587
500
|
function detectInstalledAgents(cwd = process.cwd()) {
|
|
588
501
|
const found = [];
|
|
589
502
|
for (const agent of Object.keys(AGENTS)) {
|
|
@@ -1634,6 +1547,31 @@ function toVisibleRows(model) {
|
|
|
1634
1547
|
};
|
|
1635
1548
|
});
|
|
1636
1549
|
}
|
|
1550
|
+
function resolveVisibleSelectionViewport(rows, activeIndex, maxVisibleRows) {
|
|
1551
|
+
const limit = Math.max(0, Math.floor(maxVisibleRows ?? 0));
|
|
1552
|
+
if (limit === 0 || rows.length <= limit) {
|
|
1553
|
+
return {
|
|
1554
|
+
rows,
|
|
1555
|
+
truncatedTop: false,
|
|
1556
|
+
truncatedBottom: false
|
|
1557
|
+
};
|
|
1558
|
+
}
|
|
1559
|
+
const clampedActiveIndex = clampActiveVisibleIndex(activeIndex, rows.length);
|
|
1560
|
+
const maxStart = rows.length - limit;
|
|
1561
|
+
let start = clampedActiveIndex - Math.floor(limit / 2);
|
|
1562
|
+
if (start < 0) {
|
|
1563
|
+
start = 0;
|
|
1564
|
+
}
|
|
1565
|
+
if (start > maxStart) {
|
|
1566
|
+
start = maxStart;
|
|
1567
|
+
}
|
|
1568
|
+
const end = start + limit;
|
|
1569
|
+
return {
|
|
1570
|
+
rows: rows.slice(start, end),
|
|
1571
|
+
truncatedTop: start > 0,
|
|
1572
|
+
truncatedBottom: end < rows.length
|
|
1573
|
+
};
|
|
1574
|
+
}
|
|
1637
1575
|
function buildRenderModel(options) {
|
|
1638
1576
|
return {
|
|
1639
1577
|
title: options.request.title,
|
|
@@ -1659,7 +1597,11 @@ function appendSearchChar(current, text) {
|
|
|
1659
1597
|
return normalizeSearchTerm(`${current}${text}`);
|
|
1660
1598
|
}
|
|
1661
1599
|
function renderManySelectionOpenPanel(config, model) {
|
|
1662
|
-
const
|
|
1600
|
+
const viewport = resolveVisibleSelectionViewport(
|
|
1601
|
+
toVisibleRows(model),
|
|
1602
|
+
model.activeVisibleIndex,
|
|
1603
|
+
config.maxVisibleRows
|
|
1604
|
+
);
|
|
1663
1605
|
const hintLine = selectionHintsText(
|
|
1664
1606
|
model.keyHints.length > 0 ? model.keyHints : config.defaultHints
|
|
1665
1607
|
);
|
|
@@ -1687,10 +1629,13 @@ function renderManySelectionOpenPanel(config, model) {
|
|
|
1687
1629
|
lines.push(`Search: ${model.searchTerm}`);
|
|
1688
1630
|
lines.push("");
|
|
1689
1631
|
}
|
|
1690
|
-
if (
|
|
1632
|
+
if (viewport.rows.length === 0) {
|
|
1691
1633
|
lines.push(" (no matches)");
|
|
1692
1634
|
} else {
|
|
1693
|
-
|
|
1635
|
+
if (viewport.truncatedTop) {
|
|
1636
|
+
lines.push(" ...");
|
|
1637
|
+
}
|
|
1638
|
+
for (const row of viewport.rows) {
|
|
1694
1639
|
const prefix = ` ${row.active ? "\u203A" : " "} `;
|
|
1695
1640
|
const marker = row.selected ? colorToken("\u25CF", "primary") : "\u25CB";
|
|
1696
1641
|
const content = formatSelectionDisplayLine({
|
|
@@ -1703,6 +1648,9 @@ function renderManySelectionOpenPanel(config, model) {
|
|
|
1703
1648
|
const renderedRow = `${prefix}${marker} ${row.active || row.selected ? content : dim(content)}`;
|
|
1704
1649
|
lines.push(renderedRow);
|
|
1705
1650
|
}
|
|
1651
|
+
if (viewport.truncatedBottom) {
|
|
1652
|
+
lines.push(" ...");
|
|
1653
|
+
}
|
|
1706
1654
|
}
|
|
1707
1655
|
lines.push("");
|
|
1708
1656
|
lines.push(` ${hintLine}`);
|
|
@@ -2443,6 +2391,7 @@ var ADD_SKILLS_SELECTION_VIEW = {
|
|
|
2443
2391
|
instructionLine: "Select skills (space to toggle)",
|
|
2444
2392
|
labelWidth: SKILL_NAME_WIDTH,
|
|
2445
2393
|
descWidth: SKILL_DESC_WIDTH,
|
|
2394
|
+
maxVisibleRows: 10,
|
|
2446
2395
|
minWidth: 74,
|
|
2447
2396
|
defaultHints: ADD_SKILLS_KEY_HINTS
|
|
2448
2397
|
};
|
|
@@ -2452,6 +2401,7 @@ var ADD_AGENTS_SELECTION_VIEW = {
|
|
|
2452
2401
|
instructionLine: "Select agents (space to toggle)",
|
|
2453
2402
|
labelWidth: AGENT_NAME_WIDTH,
|
|
2454
2403
|
descWidth: AGENT_DESC_WIDTH,
|
|
2404
|
+
maxVisibleRows: 10,
|
|
2455
2405
|
minWidth: 74,
|
|
2456
2406
|
defaultHints: ADD_AGENTS_KEY_HINTS
|
|
2457
2407
|
};
|
|
@@ -2977,27 +2927,6 @@ var SKILL_CONFIG = {
|
|
|
2977
2927
|
};
|
|
2978
2928
|
}
|
|
2979
2929
|
};
|
|
2980
|
-
var PLUGIN_CONFIG = {
|
|
2981
|
-
kind: "plugins",
|
|
2982
|
-
displayLabel: "well-known plugins",
|
|
2983
|
-
indexPath: "/.well-known/plugins/index.json",
|
|
2984
|
-
entryLabel: "plugin",
|
|
2985
|
-
requireDescription: false,
|
|
2986
|
-
missingManifestMessage: (name) => `Well-known plugin '${name}' is missing plugin.json`,
|
|
2987
|
-
hasRequiredManifest(filePath) {
|
|
2988
|
-
return filePath.split("/").at(-1)?.toLowerCase() === "plugin.json";
|
|
2989
|
-
},
|
|
2990
|
-
buildRemoteResult({ entry, files, sourceUrl }) {
|
|
2991
|
-
return {
|
|
2992
|
-
name: entry.name,
|
|
2993
|
-
description: entry.description || "",
|
|
2994
|
-
installName: entry.name,
|
|
2995
|
-
sourceUrl,
|
|
2996
|
-
sourceType: "well-known",
|
|
2997
|
-
files
|
|
2998
|
-
};
|
|
2999
|
-
}
|
|
3000
|
-
};
|
|
3001
2930
|
var SecureWellKnownProvider = class {
|
|
3002
2931
|
id = "well-known";
|
|
3003
2932
|
displayName = "Secure Well-Known Skills";
|
|
@@ -3023,9 +2952,6 @@ var SecureWellKnownProvider = class {
|
|
|
3023
2952
|
async fetchAllSkills(url, options = {}) {
|
|
3024
2953
|
return this.fetchAllResources(url, options, SKILL_CONFIG);
|
|
3025
2954
|
}
|
|
3026
|
-
async fetchAllPlugins(url, options = {}) {
|
|
3027
|
-
return this.fetchAllResources(url, options, PLUGIN_CONFIG);
|
|
3028
|
-
}
|
|
3029
2955
|
async fetchAllResources(url, options, config) {
|
|
3030
2956
|
const normalized = this.normalizeOptions(options);
|
|
3031
2957
|
const budget = { remaining: normalized.maxDownloadBytes };
|
|
@@ -3317,33 +3243,6 @@ var HttpCatalogProvider = class {
|
|
|
3317
3243
|
}
|
|
3318
3244
|
});
|
|
3319
3245
|
}
|
|
3320
|
-
async fetchAllPlugins(url, options = {}) {
|
|
3321
|
-
return this.fetchAllResources(url, options, {
|
|
3322
|
-
kind: "plugins",
|
|
3323
|
-
indexLabel: "catalog plugins",
|
|
3324
|
-
resolveIndexUrl(parsed) {
|
|
3325
|
-
return parsed.pathname.endsWith(".json") ? parsed.toString() : new URL(
|
|
3326
|
-
"plugins/index.json",
|
|
3327
|
-
parsed.toString().endsWith("/") ? parsed.toString() : `${parsed.toString()}/`
|
|
3328
|
-
).toString();
|
|
3329
|
-
},
|
|
3330
|
-
requireDescription: false,
|
|
3331
|
-
missingManifestMessage: (name) => `Catalog plugin '${name}' is missing plugin.json`,
|
|
3332
|
-
hasRequiredManifest(filePath) {
|
|
3333
|
-
return filePath.split("/").at(-1)?.toLowerCase() === "plugin.json";
|
|
3334
|
-
},
|
|
3335
|
-
buildRemoteResult({ entry, files, sourceUrl }) {
|
|
3336
|
-
return {
|
|
3337
|
-
name: entry.name,
|
|
3338
|
-
description: entry.description || "",
|
|
3339
|
-
installName: entry.name,
|
|
3340
|
-
sourceUrl,
|
|
3341
|
-
sourceType: "catalog",
|
|
3342
|
-
files
|
|
3343
|
-
};
|
|
3344
|
-
}
|
|
3345
|
-
});
|
|
3346
|
-
}
|
|
3347
3246
|
async fetchAllResources(url, options, config) {
|
|
3348
3247
|
const parsed = new URL(url);
|
|
3349
3248
|
if (parsed.protocol !== "https:") {
|
|
@@ -3554,10 +3453,10 @@ function readPerSkillLockfile(canonicalDir) {
|
|
|
3554
3453
|
function isSkillDirEntry(entry) {
|
|
3555
3454
|
return entry.isDirectory() || entry.isSymbolicLink();
|
|
3556
3455
|
}
|
|
3557
|
-
function listInstalledResourceDirs(
|
|
3456
|
+
function listInstalledResourceDirs(_kind, globalInstall, cwd) {
|
|
3558
3457
|
const out = /* @__PURE__ */ new Set();
|
|
3559
3458
|
for (const agent of Object.keys(AGENTS)) {
|
|
3560
|
-
const resourceRoot =
|
|
3459
|
+
const resourceRoot = getAgentSkillsDir(agent, globalInstall, cwd);
|
|
3561
3460
|
if (!fs7.existsSync(resourceRoot) || !fs7.statSync(resourceRoot).isDirectory()) {
|
|
3562
3461
|
continue;
|
|
3563
3462
|
}
|
|
@@ -4139,6 +4038,7 @@ var INIT_AGENTS_SELECTION_VIEW = {
|
|
|
4139
4038
|
instructionLine: "Select agents (space to toggle)",
|
|
4140
4039
|
labelWidth: 30,
|
|
4141
4040
|
descWidth: 40,
|
|
4041
|
+
maxVisibleRows: 10,
|
|
4142
4042
|
minWidth: 74,
|
|
4143
4043
|
defaultHints: INIT_AGENTS_KEY_HINTS
|
|
4144
4044
|
};
|
|
@@ -4524,6 +4424,7 @@ var LIST_AGENTS_SELECTION_VIEW = {
|
|
|
4524
4424
|
instructionLine: "Select agents to list (space to toggle)",
|
|
4525
4425
|
labelWidth: AGENT_LABEL_WIDTH,
|
|
4526
4426
|
descWidth: AGENT_DESC_WIDTH2,
|
|
4427
|
+
maxVisibleRows: 10,
|
|
4527
4428
|
minWidth: 74,
|
|
4528
4429
|
defaultHints: LIST_AGENTS_KEY_HINTS
|
|
4529
4430
|
};
|
|
@@ -4751,6 +4652,7 @@ var REMOVE_SKILLS_SELECTION_VIEW = {
|
|
|
4751
4652
|
instructionLine: "Select skills to uninstall (space to toggle)",
|
|
4752
4653
|
labelWidth: SKILL_NAME_WIDTH2,
|
|
4753
4654
|
descWidth: SKILL_DESC_WIDTH2,
|
|
4655
|
+
maxVisibleRows: 10,
|
|
4754
4656
|
minWidth: 74,
|
|
4755
4657
|
defaultHints: REMOVE_SKILLS_KEY_HINTS
|
|
4756
4658
|
};
|
|
@@ -4760,6 +4662,7 @@ var REMOVE_AGENTS_SELECTION_VIEW = {
|
|
|
4760
4662
|
instructionLine: "Select agents to remove from (space to toggle)",
|
|
4761
4663
|
labelWidth: AGENT_NAME_WIDTH2,
|
|
4762
4664
|
descWidth: AGENT_DESC_WIDTH3,
|
|
4665
|
+
maxVisibleRows: 10,
|
|
4763
4666
|
minWidth: 74,
|
|
4764
4667
|
defaultHints: REMOVE_AGENTS_KEY_HINTS
|
|
4765
4668
|
};
|
|
@@ -5176,6 +5079,7 @@ var UPDATE_SKILLS_SELECTION_VIEW = {
|
|
|
5176
5079
|
instructionLine: "Select skills (space to toggle)",
|
|
5177
5080
|
labelWidth: 32,
|
|
5178
5081
|
descWidth: 28,
|
|
5082
|
+
maxVisibleRows: 10,
|
|
5179
5083
|
minWidth: 74,
|
|
5180
5084
|
defaultHints: UPDATE_SKILLS_KEY_HINTS
|
|
5181
5085
|
};
|
|
@@ -5377,7 +5281,7 @@ async function executeUpdate(options, positionalSkill) {
|
|
|
5377
5281
|
panelSection({
|
|
5378
5282
|
title: "Migration Required",
|
|
5379
5283
|
lines: migrateRequired.map(
|
|
5380
|
-
(skillName) => `skillspp update ${skillName} --migrate <new-skill-source>`
|
|
5284
|
+
(skillName) => `skillspp update ${colorToken(skillName, "primary")} --migrate <new-skill-source>`
|
|
5381
5285
|
),
|
|
5382
5286
|
style: "square",
|
|
5383
5287
|
minWidth: 74
|