@spences10/pi-skills 0.0.13 → 0.0.15

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 (43) hide show
  1. package/README.md +45 -5
  2. package/dist/commands.d.ts +1 -1
  3. package/dist/commands.js +126 -60
  4. package/dist/commands.js.map +1 -1
  5. package/dist/config.d.ts +8 -0
  6. package/dist/config.js +32 -0
  7. package/dist/config.js.map +1 -1
  8. package/dist/gh-skill.d.ts +26 -0
  9. package/dist/gh-skill.js +115 -0
  10. package/dist/gh-skill.js.map +1 -0
  11. package/dist/importer.js +1 -1
  12. package/dist/importer.js.map +1 -1
  13. package/dist/manager.d.ts +5 -1
  14. package/dist/manager.js +48 -9
  15. package/dist/manager.js.map +1 -1
  16. package/dist/scanner.d.ts +4 -1
  17. package/dist/scanner.js +73 -5
  18. package/dist/scanner.js.map +1 -1
  19. package/dist/skill-utils.d.ts +1 -4
  20. package/dist/skill-utils.js +0 -39
  21. package/dist/skill-utils.js.map +1 -1
  22. package/dist/skills-ui/github.d.ts +3 -0
  23. package/dist/skills-ui/github.js +221 -0
  24. package/dist/skills-ui/github.js.map +1 -0
  25. package/dist/skills-ui/home.d.ts +2 -0
  26. package/dist/skills-ui/home.js +41 -0
  27. package/dist/skills-ui/home.js.map +1 -0
  28. package/dist/skills-ui/importable.d.ts +3 -0
  29. package/dist/skills-ui/importable.js +91 -0
  30. package/dist/skills-ui/importable.js.map +1 -0
  31. package/dist/skills-ui/manage.d.ts +3 -0
  32. package/dist/skills-ui/manage.js +46 -0
  33. package/dist/skills-ui/manage.js.map +1 -0
  34. package/dist/skills-ui/profiles.d.ts +6 -0
  35. package/dist/skills-ui/profiles.js +165 -0
  36. package/dist/skills-ui/profiles.js.map +1 -0
  37. package/dist/skills-ui/skill-list.d.ts +10 -0
  38. package/dist/skills-ui/skill-list.js +39 -0
  39. package/dist/skills-ui/skill-list.js.map +1 -0
  40. package/dist/skills-ui.d.ts +6 -16
  41. package/dist/skills-ui.js +6 -373
  42. package/dist/skills-ui.js.map +1 -1
  43. package/package.json +6 -6
package/README.md CHANGED
@@ -32,9 +32,14 @@ layer for mixed skill ecosystems:
32
32
  - discovers Pi-native skills in `$PI_CODING_AGENT_DIR/skills`
33
33
  (default: `~/.pi/agent/skills`)
34
34
  - discovers user-local Claude skills in `~/.claude/skills`
35
+ - discovers project skills in `.agents/*/SKILL.md`,
36
+ `.agents/skills/*/SKILL.md`, and `.pi/skills/*/SKILL.md`
35
37
  - discovers skills bundled inside installed Claude plugins
36
38
  - imports plugin skills into Pi-native skill storage
39
+ - installs GitHub-hosted skills through `gh skill` when GitHub CLI
40
+ support is available
37
41
  - syncs imported skills when upstream plugin content changes
42
+ - checks or applies GitHub skill updates through `gh skill update`
38
43
  - provides a `/skills` command and interactive picker
39
44
 
40
45
  Imported skills are copied into:
@@ -56,8 +61,12 @@ detect local edits and upstream changes.
56
61
  /skills
57
62
  /skills enable <key|name|pattern>
58
63
  /skills disable <key|name|pattern>
64
+ /skills add <owner/repo> <skill[@ref]> [--pin ref|--scope project|--dir path|--force]
59
65
  /skills import <key-or-name>
66
+ /skills import <owner/repo> <skill[@ref]> [--pin ref|--scope project|--dir path|--force]
60
67
  /skills sync <key-or-name>
68
+ /skills update --dry-run
69
+ /skills update --all
61
70
  /skills profile create <name>
62
71
  /skills profile use <name>
63
72
  /skills refresh
@@ -65,11 +74,18 @@ detect local edits and upstream changes.
65
74
  /skills defaults all-disabled
66
75
  ```
67
76
 
77
+ GitHub imports and updates require GitHub CLI `gh` v2.90.0 or newer
78
+ with preview `gh skill` support. The extension delegates GitHub source
79
+ tracking, pinning, preview/update metadata, and tree-SHA comparison to
80
+ `gh skill` instead of maintaining a parallel cache.
81
+
68
82
  With a UI available, `/skills` opens a modal home menu for managing,
69
- importing, syncing, refreshing, profile switching, and profile
70
- baseline selection. The no-arg `import`, `sync`, and `defaults`
71
- subcommands use modal pickers/forms in interactive mode. In headless
72
- mode, use the subcommands directly.
83
+ adding GitHub skills, batch-importing plugin skills, updating GitHub
84
+ skills, refreshing discovery, profile switching, and profile baseline
85
+ selection. The Add GitHub skill flow can install one skill or every
86
+ `SKILL.md` found in a repository. The no-arg `add`, `import`, `sync`,
87
+ and `defaults` subcommands use modal pickers/forms in interactive
88
+ mode. In headless mode, use the subcommands directly.
73
89
 
74
90
  ## Skill enablement
75
91
 
@@ -79,7 +95,31 @@ paths; `*` wildcards are supported. Legacy top-level enablement is
79
95
  migrated into the `default` profile on load.
80
96
 
81
97
  The extension contributes enabled managed skill paths during Pi
82
- resource discovery.
98
+ resource discovery. Project skills are enabled by default when project
99
+ resources are allowed, and can still be excluded by profile rules.
100
+
101
+ Profiles can also be selected by context without hardcoding project
102
+ names in code. Example:
103
+
104
+ ```json
105
+ {
106
+ "contexts": [
107
+ {
108
+ "name": "client-workspace",
109
+ "profile": "client-projects",
110
+ "when": { "cwd": "~/repos/client-projects/*" }
111
+ }
112
+ ],
113
+ "profiles": {
114
+ "default": { "include": [], "exclude": [] },
115
+ "client-projects": {
116
+ "extends": ["default"],
117
+ "include": ["client-*", "project:*"],
118
+ "exclude": []
119
+ }
120
+ }
121
+ }
122
+ ```
83
123
 
84
124
  In a custom harness such as `my-pi`, this can be combined with a
85
125
  resource filter to enforce disabled skills. In vanilla `pi`, Pi's own
@@ -1,2 +1,2 @@
1
- import type { ExtensionAPI } from '@mariozechner/pi-coding-agent';
1
+ import type { ExtensionAPI } from '@earendil-works/pi-coding-agent';
2
2
  export default function skills(pi: ExtensionAPI): Promise<void>;
package/dist/commands.js CHANGED
@@ -1,16 +1,32 @@
1
1
  import { show_input_modal, show_text_modal, } from '@spences10/pi-tui-modal';
2
+ import { has_gh_skill, parse_gh_skill_install_args, run_gh_skill_install, run_gh_skill_update, } from './gh-skill.js';
2
3
  import { create_skills_manager } from './manager.js';
3
4
  import { find_skill, format_profile_detail, format_skill_detail, format_skill_list, profile_description, sort_skills, } from './skill-utils.js';
4
- import { pick_profile, pick_skill, show_defaults_modal, show_profiles_modal, show_refresh_summary, show_skill_detail_modal, show_skill_list_modal, show_skills_home_modal, show_skills_manager_modal, } from './skills-ui.js';
5
+ import { pick_profile, pick_skill, show_add_github_skill_modal, show_defaults_modal, show_importable_skills_modal, show_profiles_modal, show_refresh_summary, show_skill_detail_modal, show_skill_list_modal, show_skills_home_modal, show_skills_manager_modal, show_update_github_skills_modal, } from './skills-ui.js';
6
+ function is_resource_enabled(value) {
7
+ const normalized = value?.trim().toLowerCase();
8
+ if (!normalized)
9
+ return true;
10
+ return !['0', 'false', 'no', 'skip', 'disable'].includes(normalized);
11
+ }
5
12
  export default async function skills(pi) {
6
13
  const mgr = create_skills_manager();
14
+ pi.on('resources_discover', async (event) => {
15
+ const resource_mgr = create_skills_manager({
16
+ cwd: event.cwd,
17
+ project_skills_enabled: is_resource_enabled(process.env.MY_PI_PROJECT_SKILLS),
18
+ });
19
+ return { skillPaths: resource_mgr.get_enabled_skill_paths() };
20
+ });
7
21
  const subs = [
8
22
  'list',
9
23
  'show',
10
24
  'enable',
11
25
  'disable',
26
+ 'add',
12
27
  'import',
13
28
  'sync',
29
+ 'update',
14
30
  'profile',
15
31
  'refresh',
16
32
  'defaults',
@@ -50,6 +66,14 @@ export default async function skills(pi) {
50
66
  label: s.key,
51
67
  }));
52
68
  }
69
+ if (parts[0] === 'update') {
70
+ return ['--dry-run', '--all', '--force', '--unpin']
71
+ .filter((flag) => flag.startsWith(parts.at(-1) ?? ''))
72
+ .map((flag) => ({
73
+ value: `${parts.slice(0, -1).join(' ')} ${flag}`.trim(),
74
+ label: flag,
75
+ }));
76
+ }
53
77
  if (parts[0] === 'sync') {
54
78
  const q = parts.slice(1).join(' ').toLowerCase();
55
79
  return sort_skills(mgr
@@ -94,68 +118,28 @@ export default async function skills(pi) {
94
118
  handler: async (args, ctx) => {
95
119
  const trimmed = args.trim();
96
120
  if (!trimmed && ctx.hasUI) {
121
+ let selected;
97
122
  while (true) {
98
123
  const managed_count = mgr.discover().length;
99
124
  const importable_count = mgr.discover_importable().length;
100
- const selected = await show_skills_home_modal(ctx, managed_count, importable_count, mgr.get_active_profile());
125
+ selected = await show_skills_home_modal(ctx, managed_count, importable_count, mgr.get_active_profile());
101
126
  if (!selected)
102
- return;
127
+ break;
103
128
  if (selected === 'manage') {
104
129
  if (await show_skills_manager_modal(ctx, mgr))
105
130
  return;
106
131
  }
107
- else if (selected === 'browse') {
108
- await show_skill_list_modal(ctx, mgr);
132
+ else if (selected === 'importable') {
133
+ if (await show_importable_skills_modal(ctx, mgr))
134
+ return;
109
135
  }
110
- else if (selected === 'import') {
111
- const key = await pick_skill(ctx, {
112
- title: 'Import skill',
113
- subtitle: 'Copy an external skill into Pi-native storage',
114
- skills: sort_skills(mgr.discover_importable()),
115
- empty_message: 'No importable skills found',
116
- });
117
- if (!key)
118
- continue;
119
- try {
120
- const result = mgr.import_skill(key);
121
- ctx.ui.notify(`Imported ${key} to ${result.skillDir}. Reloading...`, 'info');
122
- await ctx.reload();
136
+ else if (selected === 'add') {
137
+ if (await show_add_github_skill_modal(ctx))
123
138
  return;
124
- }
125
- catch (error) {
126
- ctx.ui.notify(error instanceof Error
127
- ? error.message
128
- : String(error), 'warning');
129
- }
130
139
  }
131
- else if (selected === 'sync') {
132
- const key = await pick_skill(ctx, {
133
- title: 'Sync imported skill',
134
- subtitle: 'Update an imported skill from its upstream source',
135
- skills: sort_skills(mgr
136
- .discover()
137
- .filter((skill) => Boolean(skill.import_meta))),
138
- empty_message: 'No imported skills found',
139
- });
140
- if (!key)
141
- continue;
142
- try {
143
- const result = mgr.sync_skill(key);
144
- if (result.changed) {
145
- ctx.ui.notify(`Synced ${key}. Reloading...`, 'info');
146
- await ctx.reload();
147
- return;
148
- }
149
- await show_text_modal(ctx, {
150
- title: 'Skill already up to date',
151
- text: `${key} is already up to date.`,
152
- });
153
- }
154
- catch (error) {
155
- ctx.ui.notify(error instanceof Error
156
- ? error.message
157
- : String(error), 'warning');
158
- }
140
+ else if (selected === 'update') {
141
+ if (await show_update_github_skills_modal(ctx))
142
+ return;
159
143
  }
160
144
  else if (selected === 'profiles') {
161
145
  if (await show_profiles_modal(ctx, mgr))
@@ -164,10 +148,8 @@ export default async function skills(pi) {
164
148
  else if (selected === 'refresh') {
165
149
  await show_refresh_summary(ctx, mgr);
166
150
  }
167
- else if (selected === 'defaults') {
168
- await show_defaults_modal(ctx, mgr);
169
- }
170
151
  }
152
+ return;
171
153
  }
172
154
  const [sub, ...rest] = (trimmed || 'list').split(/\s+/);
173
155
  const arg = rest.join(' ');
@@ -255,13 +237,39 @@ export default async function skills(pi) {
255
237
  await ctx.reload();
256
238
  return;
257
239
  }
240
+ case 'add': {
241
+ if (!arg && ctx.hasUI) {
242
+ if (await show_add_github_skill_modal(ctx))
243
+ return;
244
+ break;
245
+ }
246
+ const gh_request = parse_gh_skill_install_args(rest);
247
+ if (!gh_request) {
248
+ ctx.ui.notify('Usage: /skills add <owner/repo> <skill[@ref]> [--pin ref|--scope project|--dir path|--force]', 'warning');
249
+ return;
250
+ }
251
+ if (!has_gh_skill()) {
252
+ ctx.ui.notify('GitHub skill adds require gh v2.90.0+ with `gh skill` support.', 'warning');
253
+ return;
254
+ }
255
+ try {
256
+ const output = run_gh_skill_install(gh_request);
257
+ ctx.ui.notify(`${output || `Added ${gh_request.skill} from ${gh_request.repository}`}\nReloading...`, 'info');
258
+ await ctx.reload();
259
+ return;
260
+ }
261
+ catch (error) {
262
+ ctx.ui.notify(error instanceof Error ? error.message : String(error), 'warning');
263
+ return;
264
+ }
265
+ }
258
266
  case 'import': {
259
267
  let target = arg;
260
268
  if (!target && ctx.hasUI) {
261
269
  target =
262
270
  (await pick_skill(ctx, {
263
271
  title: 'Import skill',
264
- subtitle: 'Copy an external skill into Pi-native storage',
272
+ subtitle: 'Copy an external skill into Pi-native storage, or run: /skills import <owner/repo> <skill>',
265
273
  skills: sort_skills(mgr.discover_importable()),
266
274
  empty_message: 'No importable skills found',
267
275
  })) ?? '';
@@ -269,9 +277,36 @@ export default async function skills(pi) {
269
277
  return;
270
278
  }
271
279
  if (!target) {
272
- ctx.ui.notify('Usage: /skills import <key|name>', 'warning');
280
+ ctx.ui.notify('Usage: /skills import <key|name> OR /skills import <owner/repo> <skill[@ref]> [--pin ref|--scope project|--dir path|--force]', 'warning');
273
281
  return;
274
282
  }
283
+ const gh_request = parse_gh_skill_install_args(rest);
284
+ if (gh_request) {
285
+ if (!has_gh_skill()) {
286
+ ctx.ui.notify('GitHub skill imports require gh v2.90.0+ with `gh skill` support.', 'warning');
287
+ return;
288
+ }
289
+ try {
290
+ const output = run_gh_skill_install(gh_request);
291
+ if (ctx.hasUI) {
292
+ await show_text_modal(ctx, {
293
+ title: 'GitHub skill imported',
294
+ text: `${output || `Imported ${gh_request.skill} from ${gh_request.repository}`}\n\nReloading...`,
295
+ });
296
+ }
297
+ else {
298
+ ctx.ui.notify(`${output || `Imported ${gh_request.skill} from ${gh_request.repository}`}\nReloading...`, 'info');
299
+ }
300
+ await ctx.reload();
301
+ return;
302
+ }
303
+ catch (error) {
304
+ ctx.ui.notify(error instanceof Error
305
+ ? error.message
306
+ : String(error), 'warning');
307
+ return;
308
+ }
309
+ }
275
310
  try {
276
311
  const result = mgr.import_skill(target);
277
312
  ctx.ui.notify(`Imported ${target} to ${result.skillDir}. Reloading...`, 'info');
@@ -325,6 +360,37 @@ export default async function skills(pi) {
325
360
  return;
326
361
  }
327
362
  }
363
+ case 'update': {
364
+ if (!has_gh_skill()) {
365
+ ctx.ui.notify('GitHub skill updates require gh v2.90.0+ with `gh skill` support.', 'warning');
366
+ return;
367
+ }
368
+ try {
369
+ const output = run_gh_skill_update(rest);
370
+ const dry_run = rest.includes('--dry-run');
371
+ if (ctx.hasUI) {
372
+ await show_text_modal(ctx, {
373
+ title: dry_run
374
+ ? 'GitHub skill update check'
375
+ : 'GitHub skills updated',
376
+ text: output || 'No output from gh skill update.',
377
+ });
378
+ }
379
+ else {
380
+ ctx.ui.notify(output || 'gh skill update completed.');
381
+ }
382
+ if (!dry_run) {
383
+ ctx.ui.notify('Reloading skills...', 'info');
384
+ await ctx.reload();
385
+ return;
386
+ }
387
+ return;
388
+ }
389
+ catch (error) {
390
+ ctx.ui.notify(error instanceof Error ? error.message : String(error), 'warning');
391
+ return;
392
+ }
393
+ }
328
394
  case 'profile': {
329
395
  const [action = 'list', name, ...pattern_parts] = rest;
330
396
  const pattern = pattern_parts.join(' ');
@@ -463,12 +529,12 @@ export default async function skills(pi) {
463
529
  mgr.set_defaults(arg);
464
530
  if (ctx.hasUI) {
465
531
  await show_text_modal(ctx, {
466
- title: 'Skill profile baseline updated',
467
- text: `Active profile baseline: ${arg}`,
532
+ title: 'Default skill policy updated',
533
+ text: `Active profile now starts from: ${arg}`,
468
534
  });
469
535
  }
470
536
  else {
471
- ctx.ui.notify(`Active profile baseline: ${arg}`);
537
+ ctx.ui.notify(`Default skill policy: ${arg}`);
472
538
  }
473
539
  break;
474
540
  }
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -5,6 +5,13 @@ export interface SkillProfileConfig {
5
5
  include?: string[];
6
6
  exclude?: string[];
7
7
  }
8
+ export interface SkillContextRule {
9
+ name?: string;
10
+ profile: string;
11
+ when: {
12
+ cwd?: string | string[];
13
+ };
14
+ }
8
15
  export interface SkillsConfig {
9
16
  version: number;
10
17
  /** Legacy global enablement map. v3 stores enablement in profiles. */
@@ -13,6 +20,7 @@ export interface SkillsConfig {
13
20
  defaults: SkillDefaultPolicy;
14
21
  current_profile?: string;
15
22
  profiles: Record<string, SkillProfileConfig>;
23
+ contexts: SkillContextRule[];
16
24
  }
17
25
  export declare function get_config_path(): string;
18
26
  export declare function safe_profile_name(value: string): string | undefined;
package/dist/config.js CHANGED
@@ -14,6 +14,7 @@ const DEFAULT_CONFIG = {
14
14
  defaults: 'all-disabled',
15
15
  current_profile: 'default',
16
16
  profiles: DEFAULT_PROFILES,
17
+ contexts: [],
17
18
  };
18
19
  export function get_config_path() {
19
20
  const xdg = process.env.XDG_CONFIG_HOME || join(homedir(), '.config');
@@ -74,6 +75,36 @@ function unique_push(values, value) {
74
75
  function remove_value(values, value) {
75
76
  return values.filter((item) => item !== value);
76
77
  }
78
+ function normalize_contexts(value) {
79
+ if (!Array.isArray(value))
80
+ return [];
81
+ const contexts = [];
82
+ for (const item of value) {
83
+ if (!item || typeof item !== 'object')
84
+ continue;
85
+ const parsed = item;
86
+ const profile = typeof parsed.profile === 'string'
87
+ ? safe_profile_name(parsed.profile)
88
+ : undefined;
89
+ const when = parsed.when && typeof parsed.when === 'object'
90
+ ? parsed.when
91
+ : undefined;
92
+ const cwd = when ? string_array_or_string(when.cwd) : undefined;
93
+ if (!profile || !cwd)
94
+ continue;
95
+ const rule = { profile, when: { cwd } };
96
+ if (typeof parsed.name === 'string' && parsed.name.trim()) {
97
+ rule.name = parsed.name.trim();
98
+ }
99
+ contexts.push(rule);
100
+ }
101
+ return contexts;
102
+ }
103
+ function string_array_or_string(value) {
104
+ if (typeof value === 'string' && value.trim())
105
+ return value.trim();
106
+ return string_array(value);
107
+ }
77
108
  function normalize_enabled_map(value) {
78
109
  if (!value || typeof value !== 'object')
79
110
  return {};
@@ -133,6 +164,7 @@ export function load_skills_config() {
133
164
  enabled: {},
134
165
  defaults: 'all-disabled',
135
166
  profiles,
167
+ contexts: normalize_contexts(parsed.contexts),
136
168
  };
137
169
  if (current_profile)
138
170
  config.current_profile = current_profile;
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ export interface CommandResult {
2
+ status: number | null;
3
+ stdout: string;
4
+ stderr: string;
5
+ error?: Error;
6
+ }
7
+ export type CommandRunner = (command: string, args: string[]) => CommandResult;
8
+ export declare const default_runner: CommandRunner;
9
+ export declare function command_output(result: CommandResult): string;
10
+ export declare function ensure_success(result: CommandResult, fallback: string): string;
11
+ export declare function has_gh_skill(runner?: CommandRunner): boolean;
12
+ export declare function is_github_repo_spec(value: string): boolean;
13
+ export declare function normalize_github_repo_spec(value: string): string;
14
+ export interface GhSkillInstallRequest {
15
+ repository: string;
16
+ skill: string;
17
+ flags: string[];
18
+ }
19
+ export declare function parse_gh_skill_install_args(parts: string[]): GhSkillInstallRequest | null;
20
+ export declare function run_gh_skill_install(request: GhSkillInstallRequest, runner?: CommandRunner): string;
21
+ export interface GhRepositorySkill {
22
+ name: string;
23
+ path: string;
24
+ }
25
+ export declare function list_github_repository_skills(repository: string, ref?: string, runner?: CommandRunner): GhRepositorySkill[];
26
+ export declare function run_gh_skill_update(args: string[], runner?: CommandRunner): string;