@spences10/pi-skills 0.0.8 → 0.0.10

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/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":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAOrD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC"}
package/dist/manager.d.ts CHANGED
@@ -1,9 +1,19 @@
1
+ import { type SkillDefaultPolicy } from './config.js';
1
2
  import { type ImportSkillResult, type SyncSkillResult } from './importer.js';
2
3
  import { type DiscoveredSkill } from './scanner.js';
4
+ export declare const SKILLS_PROFILE_ENV = "MY_PI_SKILLS_PROFILE";
3
5
  export interface ManagedSkill extends DiscoveredSkill {
4
6
  key: string;
5
7
  enabled: boolean;
6
8
  }
9
+ export interface SkillProfile {
10
+ name: string;
11
+ description?: string;
12
+ extends: string[];
13
+ include: string[];
14
+ exclude: string[];
15
+ active: boolean;
16
+ }
7
17
  export interface SkillsManager {
8
18
  discover(): ManagedSkill[];
9
19
  discover_importable(): ManagedSkill[];
@@ -15,7 +25,16 @@ export interface SkillsManager {
15
25
  toggle(key: string): boolean;
16
26
  search(query: string): ManagedSkill[];
17
27
  search_importable(query: string): ManagedSkill[];
18
- set_defaults(policy: 'all-enabled' | 'all-disabled'): void;
28
+ set_defaults(policy: SkillDefaultPolicy): void;
29
+ get_active_profile(): string;
30
+ list_profiles(): SkillProfile[];
31
+ use_profile(name: string): void;
32
+ create_profile(name: string, options?: {
33
+ description?: string;
34
+ extends?: string[];
35
+ }): SkillProfile;
36
+ include_in_profile(profile: string, pattern: string): void;
37
+ exclude_from_profile(profile: string, pattern: string): void;
19
38
  import_skill(key_or_name: string): ImportSkillResult & {
20
39
  key: string;
21
40
  };
package/dist/manager.js CHANGED
@@ -1,6 +1,8 @@
1
- import { is_skill_enabled, load_skills_config, make_skill_key, save_skills_config, } from './config.js';
1
+ import { dirname } from 'node:path';
2
+ import { is_skill_enabled, load_skills_config, make_skill_key, safe_profile_name, save_skills_config, } from './config.js';
2
3
  import { import_external_skill, sync_imported_skill, } from './importer.js';
3
4
  import { scan_importable_skills, scan_managed_skills, } from './scanner.js';
5
+ export const SKILLS_PROFILE_ENV = 'MY_PI_SKILLS_PROFILE';
4
6
  function resolve_skill_key(skill) {
5
7
  return make_skill_key(skill.name, skill.source);
6
8
  }
@@ -17,6 +19,41 @@ function match_skill_by_key_or_name(skills, key_or_name) {
17
19
  }
18
20
  throw new Error(`Unknown skill: ${key_or_name}`);
19
21
  }
22
+ function normalize_extends(value) {
23
+ if (!value)
24
+ return [];
25
+ return Array.isArray(value) ? value : [value];
26
+ }
27
+ function unique_push(values, value) {
28
+ if (!values.includes(value))
29
+ values.push(value);
30
+ }
31
+ function remove_value(values, value) {
32
+ return (values ?? []).filter((item) => item !== value);
33
+ }
34
+ function escape_regex(value) {
35
+ return value.replace(/[|\\{}()[\]^$+?.]/g, '\\$&');
36
+ }
37
+ function glob_matches(pattern, value) {
38
+ const regex = new RegExp(`^${pattern.split('*').map(escape_regex).join('.*')}$`, 'i');
39
+ return regex.test(value);
40
+ }
41
+ function profile_pattern_matches(pattern, skill) {
42
+ const key = resolve_skill_key(skill);
43
+ return [
44
+ key,
45
+ skill.name,
46
+ skill.source,
47
+ skill.skillPath,
48
+ skill.baseDir,
49
+ ].some((value) => glob_matches(pattern, value));
50
+ }
51
+ function require_profile_name(name) {
52
+ const normalized = safe_profile_name(name);
53
+ if (!normalized)
54
+ throw new Error(`Invalid skill profile name: ${name}`);
55
+ return normalized;
56
+ }
20
57
  export function create_skills_manager() {
21
58
  let config = load_skills_config();
22
59
  let managed_cache = null;
@@ -33,19 +70,87 @@ export function create_skills_manager() {
33
70
  }
34
71
  return importable_cache;
35
72
  }
73
+ function get_active_profile() {
74
+ const from_env = process.env[SKILLS_PROFILE_ENV]?.trim();
75
+ if (from_env)
76
+ return require_profile_name(from_env);
77
+ return config.current_profile ?? 'default';
78
+ }
79
+ function resolve_profile_rules(name, seen = new Set()) {
80
+ const profile = config.profiles[name];
81
+ if (!profile || seen.has(name))
82
+ return [];
83
+ seen.add(name);
84
+ const rules = [];
85
+ for (const parent of normalize_extends(profile.extends)) {
86
+ rules.push(...resolve_profile_rules(parent, seen));
87
+ }
88
+ for (const pattern of profile.include ?? []) {
89
+ rules.push({ pattern, enabled: true });
90
+ }
91
+ for (const pattern of profile.exclude ?? []) {
92
+ rules.push({ pattern, enabled: false });
93
+ }
94
+ return rules;
95
+ }
96
+ function apply_profile_rules(initial, skill) {
97
+ let enabled = initial;
98
+ for (const rule of resolve_profile_rules(get_active_profile())) {
99
+ if (profile_pattern_matches(rule.pattern, skill)) {
100
+ enabled = rule.enabled;
101
+ }
102
+ }
103
+ return enabled;
104
+ }
105
+ function is_effectively_enabled(skill) {
106
+ return apply_profile_rules(is_skill_enabled(config, resolve_skill_key(skill)), skill);
107
+ }
108
+ function get_or_create_profile(name) {
109
+ const normalized = require_profile_name(name);
110
+ config.profiles[normalized] ??= {};
111
+ return config.profiles[normalized];
112
+ }
113
+ function to_profile(name) {
114
+ const profile = config.profiles[name] ?? {};
115
+ const result = {
116
+ name,
117
+ extends: normalize_extends(profile.extends),
118
+ include: [...(profile.include ?? [])],
119
+ exclude: [...(profile.exclude ?? [])],
120
+ active: name === get_active_profile(),
121
+ };
122
+ if (profile.description)
123
+ result.description = profile.description;
124
+ return result;
125
+ }
126
+ function set_profile_skill_enabled(key, enabled) {
127
+ const profile = get_or_create_profile(get_active_profile());
128
+ if (enabled) {
129
+ profile.exclude = remove_value(profile.exclude, key);
130
+ profile.include ??= [];
131
+ unique_push(profile.include, key);
132
+ }
133
+ else {
134
+ profile.include = remove_value(profile.include, key);
135
+ profile.exclude ??= [];
136
+ unique_push(profile.exclude, key);
137
+ }
138
+ save_skills_config(config);
139
+ return enabled;
140
+ }
36
141
  function to_managed(skill) {
37
142
  const key = resolve_skill_key(skill);
38
143
  return {
39
144
  ...skill,
40
145
  key,
41
146
  enabled: skill.kind === 'managed'
42
- ? is_skill_enabled(config, key)
147
+ ? is_effectively_enabled(skill)
43
148
  : false,
44
149
  };
45
150
  }
46
151
  function get_enabled_managed_skills() {
47
152
  return get_managed()
48
- .filter((skill) => is_skill_enabled(config, resolve_skill_key(skill)))
153
+ .filter(is_effectively_enabled)
49
154
  .map(to_managed);
50
155
  }
51
156
  return {
@@ -58,35 +163,37 @@ export function create_skills_manager() {
58
163
  is_enabled_by_skill(name, filePath) {
59
164
  const discovered = get_managed();
60
165
  const match = discovered.find((s) => s.skillPath === filePath);
61
- if (match) {
62
- return is_skill_enabled(config, resolve_skill_key(match));
63
- }
166
+ if (match)
167
+ return is_effectively_enabled(match);
64
168
  const by_name = discovered.find((s) => s.name === name);
65
- if (by_name) {
66
- return is_skill_enabled(config, resolve_skill_key(by_name));
67
- }
68
- // Unknown skill sources should remain enabled so pi's native
69
- // discovery keeps working for project and other default locations.
70
- return true;
169
+ if (by_name)
170
+ return is_effectively_enabled(by_name);
171
+ // Unknown skill sources should remain enabled by default so pi's
172
+ // native discovery keeps working for project and package skills.
173
+ return apply_profile_rules(true, {
174
+ name,
175
+ description: '',
176
+ skillPath: filePath,
177
+ baseDir: dirname(filePath),
178
+ source: 'pi-native',
179
+ kind: 'managed',
180
+ });
71
181
  },
72
182
  get_enabled_skill_paths() {
73
183
  return get_enabled_managed_skills().map((skill) => skill.baseDir);
74
184
  },
75
185
  enable(key) {
76
- config.enabled[key] = true;
77
- save_skills_config(config);
78
- return true;
186
+ return set_profile_skill_enabled(key, true);
79
187
  },
80
188
  disable(key) {
81
- config.enabled[key] = false;
82
- save_skills_config(config);
83
- return false;
189
+ return set_profile_skill_enabled(key, false);
84
190
  },
85
191
  toggle(key) {
86
- const current = is_skill_enabled(config, key);
87
- config.enabled[key] = !current;
88
- save_skills_config(config);
89
- return !current;
192
+ const skill = get_managed().find((candidate) => resolve_skill_key(candidate) === key);
193
+ const current = skill
194
+ ? is_effectively_enabled(skill)
195
+ : is_skill_enabled(config, key);
196
+ return set_profile_skill_enabled(key, !current);
90
197
  },
91
198
  search(query) {
92
199
  const q = query.toLowerCase();
@@ -101,15 +208,74 @@ export function create_skills_manager() {
101
208
  s.source.toLowerCase().includes(q));
102
209
  },
103
210
  set_defaults(policy) {
104
- config.defaults = policy;
211
+ const profile = get_or_create_profile(get_active_profile());
212
+ profile.include = remove_value(profile.include, '*');
213
+ profile.exclude = remove_value(profile.exclude, '*');
214
+ if (policy === 'all-enabled') {
215
+ profile.include ??= [];
216
+ profile.include.unshift('*');
217
+ }
218
+ config.defaults = 'all-disabled';
219
+ save_skills_config(config);
220
+ },
221
+ get_active_profile() {
222
+ return get_active_profile();
223
+ },
224
+ list_profiles() {
225
+ return Object.keys(config.profiles)
226
+ .sort((a, b) => a.localeCompare(b))
227
+ .map(to_profile);
228
+ },
229
+ use_profile(name) {
230
+ const normalized = require_profile_name(name);
231
+ if (!config.profiles[normalized]) {
232
+ throw new Error(`Unknown skill profile: ${normalized}`);
233
+ }
234
+ config.current_profile = normalized;
235
+ save_skills_config(config);
236
+ },
237
+ create_profile(name, options = {}) {
238
+ const normalized = require_profile_name(name);
239
+ if (config.profiles[normalized]) {
240
+ throw new Error(`Skill profile already exists: ${normalized}`);
241
+ }
242
+ const profile = {
243
+ include: [],
244
+ exclude: [],
245
+ };
246
+ if (options.description)
247
+ profile.description = options.description;
248
+ if (options.extends?.length)
249
+ profile.extends = options.extends;
250
+ config.profiles[normalized] = profile;
251
+ save_skills_config(config);
252
+ return to_profile(normalized);
253
+ },
254
+ include_in_profile(profile_name, pattern) {
255
+ const profile = get_or_create_profile(profile_name);
256
+ const normalized = pattern.trim();
257
+ if (!normalized)
258
+ throw new Error('Profile pattern is required');
259
+ profile.exclude = remove_value(profile.exclude, normalized);
260
+ profile.include ??= [];
261
+ unique_push(profile.include, normalized);
262
+ save_skills_config(config);
263
+ },
264
+ exclude_from_profile(profile_name, pattern) {
265
+ const profile = get_or_create_profile(profile_name);
266
+ const normalized = pattern.trim();
267
+ if (!normalized)
268
+ throw new Error('Profile pattern is required');
269
+ profile.include = remove_value(profile.include, normalized);
270
+ profile.exclude ??= [];
271
+ unique_push(profile.exclude, normalized);
105
272
  save_skills_config(config);
106
273
  },
107
274
  import_skill(key_or_name) {
108
275
  const skill = match_skill_by_key_or_name(get_importable(), key_or_name);
109
276
  const result = import_external_skill(skill);
110
277
  const managed_key = make_skill_key(skill.name, 'pi-native');
111
- config.enabled[managed_key] = true;
112
- save_skills_config(config);
278
+ set_profile_skill_enabled(managed_key, true);
113
279
  this.refresh();
114
280
  return {
115
281
  ...result,
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { type SettingItem } from '@mariozechner/pi-tui';
2
+ import type { ManagedSkill, SkillProfile } from './manager.js';
3
+ export declare const ENABLED = "\u25CF enabled";
4
+ export declare const DISABLED = "\u25CB disabled";
5
+ export declare const SYNC = "\u21BB sync";
6
+ export declare const IMPORTED_LABEL = "\u2713 imported";
7
+ export interface ImportableSkillState {
8
+ label: string;
9
+ detail: string;
10
+ action: 'import' | 'sync' | null;
11
+ }
12
+ export declare function sort_skills(skills: ManagedSkill[]): ManagedSkill[];
13
+ export declare function find_matching_imported_skill(managed_skills: ManagedSkill[], skill: ManagedSkill): ManagedSkill | undefined;
14
+ export declare function get_importable_state(managed_skills: ManagedSkill[], skill: ManagedSkill): ImportableSkillState;
15
+ export declare function to_setting_item(skill: ManagedSkill): SettingItem;
16
+ export declare function to_importable_setting_item(managed_skills: ManagedSkill[], skill: ManagedSkill): SettingItem;
17
+ export declare function sets_equal(a: ReadonlySet<string>, b: ReadonlySet<string>): boolean;
18
+ export declare function skill_status(skill: ManagedSkill): string;
19
+ export declare function format_skill_detail(skill: ManagedSkill): string;
20
+ export declare function format_skill_list(skills: ManagedSkill[]): string;
21
+ export declare function find_skill(skills: ManagedSkill[], key_or_name: string): ManagedSkill;
22
+ export declare function profile_description(profile: SkillProfile): string;
23
+ export declare function format_profile_detail(profile: SkillProfile): string;
@@ -0,0 +1,221 @@
1
+ export const ENABLED = '● enabled';
2
+ export const DISABLED = '○ disabled';
3
+ export const SYNC = '↻ sync';
4
+ export const IMPORTED_LABEL = '✓ imported';
5
+ export function sort_skills(skills) {
6
+ return [...skills].sort((a, b) => {
7
+ const by_name = a.name.localeCompare(b.name);
8
+ if (by_name !== 0)
9
+ return by_name;
10
+ const by_source = a.source.localeCompare(b.source);
11
+ if (by_source !== 0)
12
+ return by_source;
13
+ return a.key.localeCompare(b.key);
14
+ });
15
+ }
16
+ export function find_matching_imported_skill(managed_skills, skill) {
17
+ const exact_match = managed_skills.find((candidate) => candidate.import_meta?.source === skill.source &&
18
+ (candidate.import_meta.upstream_skill_path ===
19
+ skill.skillPath ||
20
+ candidate.import_meta.upstream_base_dir === skill.baseDir));
21
+ if (exact_match)
22
+ return exact_match;
23
+ return managed_skills.find((candidate) => candidate.import_meta?.source === skill.source &&
24
+ candidate.name === skill.name);
25
+ }
26
+ export function get_importable_state(managed_skills, skill) {
27
+ const imported = find_matching_imported_skill(managed_skills, skill);
28
+ if (imported?.import_meta) {
29
+ const version_changed = Boolean(skill.plugin?.version &&
30
+ imported.import_meta.upstream_version &&
31
+ skill.plugin.version !== imported.import_meta.upstream_version);
32
+ const sha_changed = Boolean(skill.plugin?.gitCommitSha &&
33
+ imported.import_meta.upstream_git_commit_sha &&
34
+ skill.plugin.gitCommitSha !==
35
+ imported.import_meta.upstream_git_commit_sha);
36
+ if (version_changed || sha_changed) {
37
+ return {
38
+ label: 'sync',
39
+ detail: 'Press Enter to sync the imported copy and reload',
40
+ action: 'sync',
41
+ };
42
+ }
43
+ return {
44
+ label: 'imported',
45
+ detail: `Already imported to ${imported.baseDir}`,
46
+ action: null,
47
+ };
48
+ }
49
+ const managed_conflict = managed_skills.find((candidate) => candidate.name === skill.name);
50
+ if (managed_conflict) {
51
+ return {
52
+ label: 'managed',
53
+ detail: `Already managed at ${managed_conflict.baseDir}`,
54
+ action: null,
55
+ };
56
+ }
57
+ return {
58
+ label: 'import',
59
+ detail: 'Press Enter to import into pi-native skills and reload',
60
+ action: 'import',
61
+ };
62
+ }
63
+ export function to_setting_item(skill) {
64
+ const detail_lines = [
65
+ `${skill.source} • ${skill.key}`,
66
+ skill.description,
67
+ skill.baseDir,
68
+ ];
69
+ if (skill.import_meta?.upstream_version) {
70
+ detail_lines.push(`upstream: ${skill.import_meta.upstream_version}${skill.import_meta.upstream_git_commit_sha ? ` • ${skill.import_meta.upstream_git_commit_sha.slice(0, 12)}` : ''}`);
71
+ }
72
+ return {
73
+ id: skill.key,
74
+ label: skill.name,
75
+ description: detail_lines.join('\n'),
76
+ currentValue: skill.enabled ? ENABLED : DISABLED,
77
+ values: [ENABLED, DISABLED],
78
+ };
79
+ }
80
+ export function to_importable_setting_item(managed_skills, skill) {
81
+ const state = get_importable_state(managed_skills, skill);
82
+ const detail_lines = [
83
+ `${skill.source} • ${skill.key}`,
84
+ skill.description,
85
+ skill.baseDir,
86
+ ];
87
+ if (skill.plugin?.version) {
88
+ detail_lines.push(`plugin: ${skill.plugin.version}${skill.plugin.gitCommitSha ? ` • ${skill.plugin.gitCommitSha.slice(0, 12)}` : ''}`);
89
+ }
90
+ if (state.action === 'import') {
91
+ return {
92
+ id: skill.key,
93
+ label: skill.name,
94
+ description: detail_lines.join('\n'),
95
+ currentValue: DISABLED,
96
+ values: [ENABLED, DISABLED],
97
+ };
98
+ }
99
+ if (state.action === 'sync') {
100
+ detail_lines.push('enter to sync');
101
+ return {
102
+ id: skill.key,
103
+ label: skill.name,
104
+ description: detail_lines.join('\n'),
105
+ currentValue: SYNC,
106
+ values: [SYNC],
107
+ };
108
+ }
109
+ detail_lines.push(state.detail);
110
+ return {
111
+ id: skill.key,
112
+ label: skill.name,
113
+ description: detail_lines.join('\n'),
114
+ currentValue: IMPORTED_LABEL,
115
+ };
116
+ }
117
+ export function sets_equal(a, b) {
118
+ if (a.size !== b.size)
119
+ return false;
120
+ for (const value of a) {
121
+ if (!b.has(value))
122
+ return false;
123
+ }
124
+ return true;
125
+ }
126
+ export function skill_status(skill) {
127
+ if (skill.kind === 'external')
128
+ return 'importable';
129
+ return skill.enabled ? 'enabled' : 'disabled';
130
+ }
131
+ export function format_skill_detail(skill) {
132
+ const lines = [
133
+ `# ${skill.name}`,
134
+ '',
135
+ `Status: ${skill_status(skill)}`,
136
+ `Source: ${skill.source}`,
137
+ `Key: ${skill.key}`,
138
+ `Kind: ${skill.kind}`,
139
+ '',
140
+ skill.description,
141
+ '',
142
+ `Base directory: ${skill.baseDir}`,
143
+ `Skill file: ${skill.skillPath}`,
144
+ ];
145
+ if (skill.plugin) {
146
+ lines.push('', 'Plugin', `- ID: ${skill.plugin.pluginId}`, `- Version: ${skill.plugin.version}`, `- Install path: ${skill.plugin.installPath}`);
147
+ if (skill.plugin.gitCommitSha) {
148
+ lines.push(`- Commit: ${skill.plugin.gitCommitSha}`);
149
+ }
150
+ }
151
+ if (skill.import_meta) {
152
+ 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}`);
153
+ if (skill.import_meta.upstream_version) {
154
+ lines.push(`- Upstream version: ${skill.import_meta.upstream_version}`);
155
+ }
156
+ if (skill.import_meta.upstream_git_commit_sha) {
157
+ lines.push(`- Upstream commit: ${skill.import_meta.upstream_git_commit_sha}`);
158
+ }
159
+ }
160
+ return lines.join('\n');
161
+ }
162
+ export function format_skill_list(skills) {
163
+ if (skills.length === 0)
164
+ return 'No skills found.';
165
+ return sort_skills(skills)
166
+ .map((skill) => `${skill_status(skill).padEnd(10)} ${skill.name} (${skill.key})`)
167
+ .join('\n');
168
+ }
169
+ export function find_skill(skills, key_or_name) {
170
+ const query = key_or_name.trim();
171
+ const exact_key = skills.find((skill) => skill.key === query);
172
+ if (exact_key)
173
+ return exact_key;
174
+ const exact_name = skills.filter((skill) => skill.name === query);
175
+ if (exact_name.length === 1)
176
+ return exact_name[0];
177
+ if (exact_name.length > 1) {
178
+ throw new Error(`Multiple skills named ${query}. Use an exact key instead.`);
179
+ }
180
+ const lower = query.toLowerCase();
181
+ const fuzzy = skills.filter((skill) => skill.key.toLowerCase() === lower ||
182
+ skill.name.toLowerCase() === lower);
183
+ if (fuzzy.length === 1)
184
+ return fuzzy[0];
185
+ if (fuzzy.length > 1) {
186
+ throw new Error(`Multiple skills matched ${query}. Use an exact key instead.`);
187
+ }
188
+ throw new Error(`Unknown skill: ${query}`);
189
+ }
190
+ export function profile_description(profile) {
191
+ const parts = [profile.active ? 'active' : 'inactive'];
192
+ if (profile.extends.length) {
193
+ parts.push(`extends ${profile.extends.join(', ')}`);
194
+ }
195
+ parts.push(`${profile.include.length} include`);
196
+ parts.push(`${profile.exclude.length} exclude`);
197
+ return parts.join(' • ');
198
+ }
199
+ export function format_profile_detail(profile) {
200
+ const lines = [
201
+ `# ${profile.name}`,
202
+ '',
203
+ `Status: ${profile.active ? 'active' : 'inactive'}`,
204
+ ];
205
+ if (profile.description) {
206
+ lines.push(`Description: ${profile.description}`);
207
+ }
208
+ if (profile.extends.length) {
209
+ lines.push(`Extends: ${profile.extends.join(', ')}`);
210
+ }
211
+ lines.push('', 'Include patterns:');
212
+ lines.push(...(profile.include.length
213
+ ? profile.include.map((p) => `- ${p}`)
214
+ : ['- none']));
215
+ lines.push('', 'Exclude patterns:');
216
+ lines.push(...(profile.exclude.length
217
+ ? profile.exclude.map((p) => `- ${p}`)
218
+ : ['- none']));
219
+ return lines.join('\n');
220
+ }
221
+ //# sourceMappingURL=skill-utils.js.map