skilldex-cli 1.1.2 → 1.2.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.
Files changed (63) hide show
  1. package/README.md +42 -8
  2. package/dist/cli/commands/install-action.d.ts +1 -0
  3. package/dist/cli/commands/install-action.d.ts.map +1 -1
  4. package/dist/cli/commands/install-action.js +27 -7
  5. package/dist/cli/commands/install-action.js.map +1 -1
  6. package/dist/cli/commands/install.d.ts.map +1 -1
  7. package/dist/cli/commands/install.js +1 -0
  8. package/dist/cli/commands/install.js.map +1 -1
  9. package/dist/cli/commands/list-action.js.map +1 -1
  10. package/dist/cli/commands/search-action.js +1 -1
  11. package/dist/cli/commands/search-action.js.map +1 -1
  12. package/dist/cli/commands/skillset-validate-action.d.ts +1 -0
  13. package/dist/cli/commands/skillset-validate-action.d.ts.map +1 -1
  14. package/dist/cli/commands/skillset-validate-action.js +61 -2
  15. package/dist/cli/commands/skillset-validate-action.js.map +1 -1
  16. package/dist/cli/commands/skillset.d.ts.map +1 -1
  17. package/dist/cli/commands/skillset.js +1 -0
  18. package/dist/cli/commands/skillset.js.map +1 -1
  19. package/dist/cli/commands/suggest-action.d.ts.map +1 -1
  20. package/dist/cli/commands/suggest-action.js +0 -1
  21. package/dist/cli/commands/suggest-action.js.map +1 -1
  22. package/dist/cli/commands/uninstall-action.js.map +1 -1
  23. package/dist/cli/commands/update-action.d.ts.map +1 -1
  24. package/dist/cli/commands/update-action.js +1 -1
  25. package/dist/cli/commands/update-action.js.map +1 -1
  26. package/dist/cli/ui/prompts.js.map +1 -1
  27. package/dist/core/harness-bridge.d.ts +61 -0
  28. package/dist/core/harness-bridge.d.ts.map +1 -0
  29. package/dist/core/harness-bridge.js +126 -0
  30. package/dist/core/harness-bridge.js.map +1 -0
  31. package/dist/core/installer.d.ts +5 -0
  32. package/dist/core/installer.d.ts.map +1 -1
  33. package/dist/core/installer.js +15 -0
  34. package/dist/core/installer.js.map +1 -1
  35. package/dist/core/resolver.js.map +1 -1
  36. package/dist/core/skillset-coherence.d.ts +27 -0
  37. package/dist/core/skillset-coherence.d.ts.map +1 -0
  38. package/dist/core/skillset-coherence.js +466 -0
  39. package/dist/core/skillset-coherence.js.map +1 -0
  40. package/dist/core/skillset-installer.js +1 -1
  41. package/dist/core/skillset-installer.js.map +1 -1
  42. package/dist/core/skillset-validator.d.ts +1 -1
  43. package/dist/core/skillset-validator.d.ts.map +1 -1
  44. package/dist/core/skillset-validator.js +22 -1
  45. package/dist/core/skillset-validator.js.map +1 -1
  46. package/dist/core/suggest-agent.d.ts.map +1 -1
  47. package/dist/core/suggest-agent.js +14 -4
  48. package/dist/core/suggest-agent.js.map +1 -1
  49. package/dist/core/validator.js +1 -1
  50. package/dist/core/validator.js.map +1 -1
  51. package/dist/mcp/server.d.ts.map +1 -1
  52. package/dist/mcp/server.js +1 -2
  53. package/dist/mcp/server.js.map +1 -1
  54. package/dist/registry/sources/github.d.ts +1 -2
  55. package/dist/registry/sources/github.d.ts.map +1 -1
  56. package/dist/registry/sources/github.js +6 -4
  57. package/dist/registry/sources/github.js.map +1 -1
  58. package/dist/registry/sources/registry.d.ts.map +1 -1
  59. package/dist/registry/sources/registry.js +3 -1
  60. package/dist/registry/sources/registry.js.map +1 -1
  61. package/dist/types/skillset.d.ts +41 -0
  62. package/dist/types/skillset.d.ts.map +1 -1
  63. package/package.json +8 -2
@@ -0,0 +1,466 @@
1
+ import { readFile, readdir, stat } from 'node:fs/promises';
2
+ import path from 'node:path';
3
+ import { parseDocument } from 'yaml';
4
+ const SKILL_MD = 'SKILL.md';
5
+ const ASSETS_DIR = 'assets';
6
+ const CONVENTIONS_INFO_TAG = 'skilldex-conventions';
7
+ /** Minimum overlapping keys before a member table is treated as restating a convention. */
8
+ const RESTATEMENT_KEY_THRESHOLD = 2;
9
+ /**
10
+ * Checks that a skillset's member skills agree with the conventions its shared assets declare.
11
+ *
12
+ * Structural validation (see skillset-validator.ts) establishes that a skillset is well-formed.
13
+ * It cannot express agreement *between* members, which is the property skillsets exist to provide:
14
+ * conventions live in one shared asset so independently authored members cannot drift apart.
15
+ *
16
+ * Agreement is checked against conventions the shared asset *declares* in a fenced
17
+ * ```yaml skilldex-conventions``` block, not inferred from prose. A member that restates a
18
+ * declared mapping and contradicts it is an error. A member that appears to restate a convention
19
+ * nobody declared is a warning — the fix is to declare it.
20
+ */
21
+ export async function checkSkillsetCoherence(skillsetPath, embeddedSkills) {
22
+ const absPath = path.resolve(skillsetPath);
23
+ const diagnostics = [];
24
+ const sharedAssets = await listSharedAssets(absPath);
25
+ const declaredConventions = await collectDeclaredConventions(absPath, sharedAssets);
26
+ const coherentMembers = new Set(embeddedSkills);
27
+ for (const member of embeddedSkills) {
28
+ const memberDir = path.join(absPath, member);
29
+ let content;
30
+ try {
31
+ content = await readFile(path.join(memberDir, SKILL_MD), 'utf8');
32
+ }
33
+ catch {
34
+ // discoverEmbeddedSkills only lists dirs with a readable SKILL.md; a failure here means it
35
+ // vanished between the two reads. Nothing to check.
36
+ continue;
37
+ }
38
+ const refs = extractAssetReferences(content);
39
+ const tables = parseMarkdownTables(content);
40
+ const before = diagnostics.length;
41
+ diagnostics.push(...checkSharedAssetReferenced(member, refs, sharedAssets));
42
+ diagnostics.push(...(await checkSharedAssetResolvable(member, memberDir, refs)));
43
+ diagnostics.push(...checkAgreement(member, tables, declaredConventions));
44
+ if (declaredConventions.length === 0) {
45
+ diagnostics.push(...(await checkUndeclaredConventions(absPath, member, tables, sharedAssets)));
46
+ }
47
+ const added = diagnostics.slice(before);
48
+ if (added.some((d) => d.severity === 'error' || d.severity === 'warning')) {
49
+ coherentMembers.delete(member);
50
+ }
51
+ }
52
+ return {
53
+ declaredConventions,
54
+ diagnostics,
55
+ membersChecked: embeddedSkills.length,
56
+ membersCoherent: coherentMembers.size,
57
+ passCount: diagnostics.filter((d) => d.severity === 'pass').length,
58
+ warnCount: diagnostics.filter((d) => d.severity === 'warning').length,
59
+ errorCount: diagnostics.filter((d) => d.severity === 'error').length,
60
+ };
61
+ }
62
+ // --- Check: every member reaches for at least one skillset-level shared asset ---
63
+ function checkSharedAssetReferenced(member, refs, sharedAssets) {
64
+ if (sharedAssets.length === 0)
65
+ return [];
66
+ const sharedRefs = refs.filter((r) => r.isSkillsetLevel);
67
+ if (sharedRefs.length === 0) {
68
+ return [
69
+ {
70
+ severity: 'warning',
71
+ check: 'shared-asset-referenced',
72
+ member,
73
+ message: `"${member}" references no skillset-level shared asset (../${ASSETS_DIR}/…) — it is outside the skillset's convention guarantee`,
74
+ },
75
+ ];
76
+ }
77
+ return [
78
+ {
79
+ severity: 'pass',
80
+ check: 'shared-asset-referenced',
81
+ member,
82
+ message: `"${member}" references ${sharedRefs.length} shared asset(s)`,
83
+ },
84
+ ];
85
+ }
86
+ // --- Check: referenced asset paths actually resolve ---
87
+ async function checkSharedAssetResolvable(member, memberDir, refs) {
88
+ const diagnostics = [];
89
+ for (const ref of refs) {
90
+ const resolved = path.resolve(memberDir, ref.rawPath);
91
+ try {
92
+ await stat(resolved);
93
+ }
94
+ catch {
95
+ diagnostics.push({
96
+ severity: 'error',
97
+ check: 'shared-asset-resolvable',
98
+ member,
99
+ line: ref.line,
100
+ message: `"${member}" references "${ref.rawPath}" which does not exist`,
101
+ assetFile: ref.rawPath,
102
+ });
103
+ }
104
+ }
105
+ if (diagnostics.length === 0 && refs.length > 0) {
106
+ diagnostics.push({
107
+ severity: 'pass',
108
+ check: 'shared-asset-resolvable',
109
+ member,
110
+ message: `all ${refs.length} asset reference(s) in "${member}" resolve`,
111
+ });
112
+ }
113
+ return diagnostics;
114
+ }
115
+ // --- Check: restated conventions agree with the declaration ---
116
+ function checkAgreement(member, tables, conventions) {
117
+ const diagnostics = [];
118
+ for (const convention of conventions) {
119
+ const restatement = findRestatement(tables, convention);
120
+ if (!restatement)
121
+ continue;
122
+ const vocabulary = buildVocabulary(convention);
123
+ let contradictions = 0;
124
+ let unverifiable = 0;
125
+ let compared = 0;
126
+ for (const [key, memberValue] of Object.entries(restatement.mapping)) {
127
+ const declaredValue = convention.mapping[key];
128
+ if (declaredValue === undefined)
129
+ continue;
130
+ compared++;
131
+ const declaredNorm = normalizeValue(declaredValue);
132
+ const memberNorm = resolveAgainstVocabulary(normalizeValue(memberValue), vocabulary);
133
+ if (memberNorm === null) {
134
+ unverifiable++;
135
+ diagnostics.push({
136
+ severity: 'warning',
137
+ check: 'shared-asset-agreement',
138
+ member,
139
+ line: restatement.line,
140
+ conventionName: convention.name,
141
+ key,
142
+ declaredValue,
143
+ memberValue,
144
+ assetFile: convention.assetFile,
145
+ assetLine: convention.line,
146
+ message: `"${member}" restates "${convention.name}" but its value for \`${key}\` ("${memberValue}") does not match any value the declaration uses — cannot verify agreement`,
147
+ });
148
+ }
149
+ else if (memberNorm !== declaredNorm) {
150
+ contradictions++;
151
+ diagnostics.push({
152
+ severity: 'error',
153
+ check: 'shared-asset-agreement',
154
+ member,
155
+ line: restatement.line,
156
+ conventionName: convention.name,
157
+ key,
158
+ declaredValue,
159
+ memberValue,
160
+ assetFile: convention.assetFile,
161
+ assetLine: convention.line,
162
+ message: `"${member}" contradicts "${convention.name}": \`${key}\` is "${memberValue}" here but "${declaredValue}" in ${convention.assetFile}:${convention.line}`,
163
+ });
164
+ }
165
+ }
166
+ if (contradictions === 0 && unverifiable === 0) {
167
+ diagnostics.push({
168
+ severity: 'pass',
169
+ check: 'shared-asset-agreement',
170
+ member,
171
+ conventionName: convention.name,
172
+ message: `"${member}" restates "${convention.name}" consistently (${compared} of ${Object.keys(convention.mapping).length} declared key(s) checked)`,
173
+ });
174
+ }
175
+ }
176
+ return diagnostics;
177
+ }
178
+ // --- Check: a convention appears duplicated but was never declared ---
179
+ async function checkUndeclaredConventions(skillsetPath, member, memberTables, sharedAssets) {
180
+ if (memberTables.length === 0)
181
+ return [];
182
+ for (const asset of sharedAssets) {
183
+ let assetContent;
184
+ try {
185
+ assetContent = await readFile(path.join(skillsetPath, asset), 'utf8');
186
+ }
187
+ catch {
188
+ continue;
189
+ }
190
+ const assetTables = parseMarkdownTables(assetContent);
191
+ for (const memberTable of memberTables) {
192
+ for (const assetTable of assetTables) {
193
+ const overlap = countKeyOverlap(memberTable, assetTable);
194
+ if (overlap >= RESTATEMENT_KEY_THRESHOLD) {
195
+ return [
196
+ {
197
+ severity: 'warning',
198
+ check: 'undeclared-convention',
199
+ member,
200
+ line: memberTable.line,
201
+ assetFile: asset,
202
+ assetLine: assetTable.line,
203
+ message: `"${member}" appears to restate a table from ${asset}:${assetTable.line} (${overlap} shared keys) but that convention is not declared — add a \`\`\`yaml ${CONVENTIONS_INFO_TAG}\`\`\` block to ${asset} so agreement can be enforced`,
204
+ },
205
+ ];
206
+ }
207
+ }
208
+ }
209
+ }
210
+ return [];
211
+ }
212
+ // --- Declared conventions ---
213
+ async function listSharedAssets(skillsetPath) {
214
+ const assetsPath = path.join(skillsetPath, ASSETS_DIR);
215
+ try {
216
+ const entries = await readdir(assetsPath, { withFileTypes: true });
217
+ return entries
218
+ .filter((e) => e.isFile() && e.name.endsWith('.md'))
219
+ .map((e) => path.posix.join(ASSETS_DIR, e.name));
220
+ }
221
+ catch {
222
+ return [];
223
+ }
224
+ }
225
+ async function collectDeclaredConventions(skillsetPath, sharedAssets) {
226
+ const conventions = [];
227
+ for (const asset of sharedAssets) {
228
+ let content;
229
+ try {
230
+ content = await readFile(path.join(skillsetPath, asset), 'utf8');
231
+ }
232
+ catch {
233
+ continue;
234
+ }
235
+ conventions.push(...parseDeclaredConventions(content, asset));
236
+ }
237
+ return conventions;
238
+ }
239
+ /** Extracts ```yaml skilldex-conventions fenced blocks. Exported for tests. */
240
+ export function parseDeclaredConventions(content, assetFile) {
241
+ const conventions = [];
242
+ const lines = content.split('\n');
243
+ for (let i = 0; i < lines.length; i++) {
244
+ const fence = lines[i].match(/^(\s*)(`{3,}|~{3,})\s*(.*)$/);
245
+ if (!fence)
246
+ continue;
247
+ const [, indent, marker, info] = fence;
248
+ if (!info.split(/\s+/).includes(CONVENTIONS_INFO_TAG))
249
+ continue;
250
+ const closer = new RegExp(`^\\s{0,${indent.length}}${marker[0]}{${marker.length},}\\s*$`);
251
+ let end = -1;
252
+ for (let j = i + 1; j < lines.length; j++) {
253
+ if (closer.test(lines[j])) {
254
+ end = j;
255
+ break;
256
+ }
257
+ }
258
+ if (end === -1)
259
+ continue;
260
+ const body = lines.slice(i + 1, end).join('\n');
261
+ const blockLine = i + 1;
262
+ try {
263
+ const doc = parseDocument(body);
264
+ if (doc.errors.length > 0)
265
+ continue;
266
+ const parsed = doc.toJS();
267
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed))
268
+ continue;
269
+ for (const [name, value] of Object.entries(parsed)) {
270
+ const mapping = toFlatMapping(value);
271
+ if (mapping === null || Object.keys(mapping).length === 0)
272
+ continue;
273
+ conventions.push({ name, assetFile, line: blockLine, mapping });
274
+ }
275
+ }
276
+ catch {
277
+ // unparseable block — skip; structural validation reports malformed YAML separately
278
+ }
279
+ i = end;
280
+ }
281
+ return conventions;
282
+ }
283
+ function toFlatMapping(value) {
284
+ if (!value || typeof value !== 'object' || Array.isArray(value))
285
+ return null;
286
+ const mapping = {};
287
+ for (const [k, v] of Object.entries(value)) {
288
+ if (v === null || typeof v === 'object')
289
+ return null;
290
+ mapping[normalizeKey(k)] = String(v);
291
+ }
292
+ return mapping;
293
+ }
294
+ /** Finds backticked paths pointing into assets/ or references/. Exported for tests. */
295
+ export function extractAssetReferences(content) {
296
+ const refs = [];
297
+ const seen = new Set();
298
+ const lines = content.split('\n');
299
+ const pattern = /`((?:\.\.\/)?(?:assets|references)\/[^`\s]+)`/g;
300
+ for (let i = 0; i < lines.length; i++) {
301
+ for (const match of lines[i].matchAll(pattern)) {
302
+ const rawPath = match[1];
303
+ if (seen.has(rawPath))
304
+ continue;
305
+ seen.add(rawPath);
306
+ refs.push({
307
+ rawPath,
308
+ line: i + 1,
309
+ isSkillsetLevel: rawPath.startsWith('../'),
310
+ });
311
+ }
312
+ }
313
+ return refs;
314
+ }
315
+ // --- Markdown tables ---
316
+ /** Parses pipe tables into header + rows. Exported for tests. */
317
+ export function parseMarkdownTables(content) {
318
+ const tables = [];
319
+ const lines = content.split('\n');
320
+ for (let i = 0; i < lines.length - 1; i++) {
321
+ if (!isTableRow(lines[i]) || !isSeparatorRow(lines[i + 1]))
322
+ continue;
323
+ const header = splitRow(lines[i]);
324
+ const rows = [];
325
+ let j = i + 2;
326
+ for (; j < lines.length && isTableRow(lines[j]); j++) {
327
+ rows.push(splitRow(lines[j]));
328
+ }
329
+ if (rows.length > 0) {
330
+ tables.push({ line: i + 1, header, rows });
331
+ }
332
+ i = j - 1;
333
+ }
334
+ return tables;
335
+ }
336
+ function isTableRow(line) {
337
+ return line.trim().startsWith('|') && line.includes('|', line.indexOf('|') + 1);
338
+ }
339
+ function isSeparatorRow(line) {
340
+ const trimmed = line.trim();
341
+ if (!trimmed.startsWith('|'))
342
+ return false;
343
+ return splitRow(line).every((cell) => /^:?-{1,}:?$/.test(cell.trim()));
344
+ }
345
+ function splitRow(line) {
346
+ const trimmed = line.trim().replace(/^\|/, '').replace(/\|$/, '');
347
+ return trimmed.split('|').map((c) => c.trim());
348
+ }
349
+ /**
350
+ * A member restates a convention when one of its tables projects onto the convention's key space.
351
+ * Tables carry more than two columns (`| Type | Use when | Changelog section |`), so every
352
+ * (first column -> column j) projection is tried and the best one wins.
353
+ *
354
+ * Key overlap alone does not identify the value column: in `| Type | Notes | Section |` both
355
+ * projections share exactly the same keys, and picking the wrong one compares prose against the
356
+ * convention and reports nothing useful. Ties therefore break on how many values land in the
357
+ * convention's own vocabulary — the value column is the one speaking the convention's language.
358
+ */
359
+ function findRestatement(tables, convention) {
360
+ const vocabulary = buildVocabulary(convention);
361
+ let best = null;
362
+ let bestOverlap = 0;
363
+ let bestResolvable = -1;
364
+ for (const table of tables) {
365
+ const columnCount = Math.max(...table.rows.map((r) => r.length), table.header.length);
366
+ for (let col = 1; col < columnCount; col++) {
367
+ const mapping = projectTable(table, col);
368
+ const sharedKeys = Object.keys(mapping).filter((k) => k in convention.mapping);
369
+ if (sharedKeys.length < RESTATEMENT_KEY_THRESHOLD)
370
+ continue;
371
+ const resolvable = sharedKeys.filter((k) => resolveAgainstVocabulary(normalizeValue(mapping[k]), vocabulary) !== null).length;
372
+ const better = sharedKeys.length > bestOverlap ||
373
+ (sharedKeys.length === bestOverlap && resolvable > bestResolvable);
374
+ if (better) {
375
+ bestOverlap = sharedKeys.length;
376
+ bestResolvable = resolvable;
377
+ best = { line: table.line, mapping };
378
+ }
379
+ }
380
+ }
381
+ return best;
382
+ }
383
+ function projectTable(table, valueColumn) {
384
+ const mapping = {};
385
+ for (const row of table.rows) {
386
+ if (row.length <= valueColumn)
387
+ continue;
388
+ const value = row[valueColumn].trim();
389
+ if (value === '')
390
+ continue;
391
+ for (const key of splitKeyCell(row[0])) {
392
+ mapping[key] = value;
393
+ }
394
+ }
395
+ return mapping;
396
+ }
397
+ /** `fix`, `revert` in one cell means two keys sharing a value. */
398
+ function splitKeyCell(cell) {
399
+ const backticked = [...cell.matchAll(/`([^`]+)`/g)].map((m) => normalizeKey(m[1]));
400
+ if (backticked.length > 0)
401
+ return backticked;
402
+ const bare = normalizeKey(cell);
403
+ return bare === '' ? [] : [bare];
404
+ }
405
+ function countKeyOverlap(a, b) {
406
+ const keysOf = (t) => new Set(t.rows.flatMap((row) => (row.length > 0 ? splitKeyCell(row[0]) : [])));
407
+ const aKeys = keysOf(a);
408
+ const bKeys = keysOf(b);
409
+ let overlap = 0;
410
+ for (const key of aKeys) {
411
+ if (bKeys.has(key))
412
+ overlap++;
413
+ }
414
+ return overlap;
415
+ }
416
+ // --- Normalization ---
417
+ function normalizeKey(raw) {
418
+ return raw
419
+ .replace(/`/g, '')
420
+ .replace(/\*\*?/g, '')
421
+ .trim()
422
+ .toLowerCase();
423
+ }
424
+ /**
425
+ * Strips the decoration authors put around table values so that "**Added**", "`Added`" and
426
+ * "Added" compare equal. Leading dashes are dropped because "— (omit from changelog)" is a
427
+ * conventional way to write an empty cell.
428
+ */
429
+ function normalizeValue(raw) {
430
+ return raw
431
+ .replace(/`/g, '')
432
+ .replace(/\*\*?/g, '')
433
+ .replace(/^[\s—–-]+/, '')
434
+ .replace(/[()]/g, '')
435
+ .replace(/\s+/g, ' ')
436
+ .trim()
437
+ .toLowerCase();
438
+ }
439
+ function buildVocabulary(convention) {
440
+ const vocabulary = new Set();
441
+ for (const value of Object.values(convention.mapping)) {
442
+ vocabulary.add(normalizeValue(value));
443
+ }
444
+ // Longest first so "omit from changelog" resolves to "omit" rather than a shorter prefix.
445
+ return [...vocabulary].sort((a, b) => b.length - a.length);
446
+ }
447
+ /**
448
+ * Resolves a member's phrasing to a declared value, or null when it matches none.
449
+ *
450
+ * Null is deliberately *not* treated as a contradiction. "— (omit from changelog)" and "Omit"
451
+ * are the same rule in different prose, and reporting that as a conflict would make the check
452
+ * fire on correct skillsets. Only a value that resolves to a *different* declared value is an
453
+ * error; anything unrecognized is a warning the author can fix by matching the declaration.
454
+ */
455
+ function resolveAgainstVocabulary(normalized, vocabulary) {
456
+ for (const candidate of vocabulary) {
457
+ if (normalized === candidate)
458
+ return candidate;
459
+ }
460
+ for (const candidate of vocabulary) {
461
+ if (normalized.startsWith(`${candidate} `))
462
+ return candidate;
463
+ }
464
+ return null;
465
+ }
466
+ //# sourceMappingURL=skillset-coherence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skillset-coherence.js","sourceRoot":"","sources":["../../src/core/skillset-coherence.ts"],"names":[],"mappings":"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"}
@@ -49,7 +49,7 @@ export async function installSkillsetFromPath(sourcePath, options) {
49
49
  const remoteResults = [];
50
50
  for (const ref of validation.remoteSkills) {
51
51
  const { installFromGitUrl } = await import('../registry/sources/github.js');
52
- const result = await installFromGitUrl(`git+${ref.source_url}`, scopeConfig, {
52
+ const result = await installFromGitUrl(`git+${ref.source_url}`, {
53
53
  scope: options.scope,
54
54
  force: options.force,
55
55
  sourceUrl: ref.source_url,
@@ -1 +1 @@
1
- {"version":3,"file":"skillset-installer.js","sourceRoot":"","sources":["../../src/core/skillset-installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skillset-installer.js","sourceRoot":"","sources":["../../src/core/skillset-installer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  import type { SkillsetValidationResult } from '../types/skillset.js';
2
- export declare const SKILLSET_SPEC_VERSION = "1.0";
2
+ export declare const SKILLSET_SPEC_VERSION = "1.1";
3
3
  export declare function validateSkillset(skillsetPath: string): Promise<SkillsetValidationResult>;
4
4
  //# sourceMappingURL=skillset-validator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"skillset-validator.d.ts","sourceRoot":"","sources":["../../src/core/skillset-validator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAuB,wBAAwB,EAAkB,MAAM,sBAAsB,CAAA;AAEzG,eAAO,MAAM,qBAAqB,QAAQ,CAAA;AAe1C,wBAAsB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAyK9F"}
1
+ {"version":3,"file":"skillset-validator.d.ts","sourceRoot":"","sources":["../../src/core/skillset-validator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,wBAAwB,EAGzB,MAAM,sBAAsB,CAAA;AAG7B,eAAO,MAAM,qBAAqB,QAAQ,CAAA;AAe1C,wBAAsB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAiL9F"}
@@ -1,7 +1,8 @@
1
1
  import { readFile, stat, readdir } from 'node:fs/promises';
2
2
  import path from 'node:path';
3
3
  import { parseDocument } from 'yaml';
4
- export const SKILLSET_SPEC_VERSION = '1.0';
4
+ import { checkSkillsetCoherence } from './skillset-coherence.js';
5
+ export const SKILLSET_SPEC_VERSION = '1.1';
5
6
  const SKILLSET_MD = 'SKILLSET.md';
6
7
  const MIN_DESCRIPTION_WORDS = 30;
7
8
  // Scoring weights (total 100)
@@ -56,6 +57,7 @@ export async function validateSkillset(skillsetPath) {
56
57
  passCount: 0,
57
58
  warnCount: 0,
58
59
  errorCount: 1,
60
+ coherence: emptyCoherence(),
59
61
  };
60
62
  }
61
63
  score += WEIGHTS.frontmatterParseable;
@@ -164,6 +166,11 @@ export async function validateSkillset(skillsetPath) {
164
166
  }
165
167
  }
166
168
  score = Math.min(100, Math.max(0, Math.round(score)));
169
+ // Coherence is reported as an independent dimension and deliberately does not move `score`.
170
+ // Structural conformance answers "is this skillset well-formed"; coherence answers "do its
171
+ // members agree with each other". Folding the second into the first would let a high aggregate
172
+ // hide a contradiction, which is the failure mode the split exists to prevent.
173
+ const coherence = await checkSkillsetCoherence(absPath, embeddedSkills);
167
174
  return {
168
175
  skillset: path.basename(absPath),
169
176
  score,
@@ -174,6 +181,7 @@ export async function validateSkillset(skillsetPath) {
174
181
  passCount: diagnostics.filter((d) => d.severity === 'pass').length,
175
182
  warnCount: diagnostics.filter((d) => d.severity === 'warning').length,
176
183
  errorCount: diagnostics.filter((d) => d.severity === 'error').length,
184
+ coherence,
177
185
  };
178
186
  }
179
187
  // --- Helpers ---
@@ -188,6 +196,19 @@ function fatal(skillsetPath, message) {
188
196
  passCount: 0,
189
197
  warnCount: 0,
190
198
  errorCount: 1,
199
+ coherence: emptyCoherence(),
200
+ };
201
+ }
202
+ /** Nothing to check when the skillset could not be read far enough to find its members. */
203
+ function emptyCoherence() {
204
+ return {
205
+ declaredConventions: [],
206
+ diagnostics: [],
207
+ membersChecked: 0,
208
+ membersCoherent: 0,
209
+ passCount: 0,
210
+ warnCount: 0,
211
+ errorCount: 0,
191
212
  };
192
213
  }
193
214
  function extractFrontmatter(content, lines) {
@@ -1 +1 @@
1
- {"version":3,"file":"skillset-validator.js","sourceRoot":"","sources":["../../src/core/skillset-validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skillset-validator.js","sourceRoot":"","sources":["../../src/core/skillset-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1D,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AAQpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAEhE,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAA;AAC1C,MAAM,WAAW,GAAG,aAAa,CAAA;AACjC,MAAM,qBAAqB,GAAG,EAAE,CAAA;AAEhC,8BAA8B;AAC9B,MAAM,OAAO,GAAG;IACd,oBAAoB,EAAE,EAAE;IACxB,WAAW,EAAE,EAAE;IACf,kBAAkB,EAAE,EAAE;IACtB,iBAAiB,EAAE,EAAE;IACrB,SAAS,EAAE,EAAE;IACb,cAAc,EAAE,EAAE;IAClB,eAAe,EAAE,EAAE;CACX,CAAA;AAEV,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,YAAoB;IACzD,MAAM,WAAW,GAA2B,EAAE,CAAA;IAC9C,IAAI,KAAK,GAAG,CAAC,CAAA;IAEb,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;IAE1C,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAA;QAC7B,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YACrB,OAAO,KAAK,CAAC,YAAY,EAAE,4BAA4B,OAAO,EAAE,CAAC,CAAA;QACnE,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC,YAAY,EAAE,wBAAwB,OAAO,EAAE,CAAC,CAAA;IAC/D,CAAC;IAED,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IACtD,IAAI,OAAe,CAAA;IACnB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC,YAAY,EAAE,4BAA4B,OAAO,EAAE,CAAC,CAAA;IACnE,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAEjC,qDAAqD;IACrD,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,kBAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAEtE,IAAI,UAAU,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACvC,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAChC,KAAK,EAAE,CAAC;YACR,WAAW,EAAE;gBACX;oBACE,QAAQ,EAAE,OAAO;oBACjB,IAAI,EAAE,CAAC;oBACP,OAAO,EAAE,UAAU,IAAI,qDAAqD;oBAC5E,KAAK,EAAE,kBAAkB;iBAC1B;aACF;YACD,WAAW,EAAE,qBAAqB;YAClC,cAAc,EAAE,EAAE;YAClB,YAAY,EAAE,EAAE;YAChB,SAAS,EAAE,CAAC;YACZ,SAAS,EAAE,CAAC;YACZ,UAAU,EAAE,CAAC;YACb,SAAS,EAAE,cAAc,EAAE;SAC5B,CAAA;IACH,CAAC;IAED,KAAK,IAAI,OAAO,CAAC,oBAAoB,CAAA;IACrC,WAAW,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,wBAAwB,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC,CAAA;IAEpG,uCAAuC;IACvC,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAChE,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,2CAA2C;YACpD,KAAK,EAAE,cAAc;SACtB,CAAC,CAAA;IACJ,CAAC;SAAM,CAAC;QACN,KAAK,IAAI,OAAO,CAAC,WAAW,CAAA;QAC5B,WAAW,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAA;IAC9F,CAAC;IAED,6DAA6D;IAC7D,IAAI,CAAC,WAAW,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC9E,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,kDAAkD;YAC3D,KAAK,EAAE,oBAAoB;SAC5B,CAAC,CAAA;IACJ,CAAC;SAAM,CAAC;QACN,KAAK,IAAI,OAAO,CAAC,kBAAkB,CAAA;QACnC,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAA;QAC5E,IAAI,SAAS,GAAG,qBAAqB,EAAE,CAAC;YACtC,WAAW,CAAC,IAAI,CAAC;gBACf,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,mCAAmC,SAAS,wBAAwB,qBAAqB,IAAI;gBACtG,KAAK,EAAE,oBAAoB;aAC5B,CAAC,CAAA;QACJ,CAAC;aAAM,CAAC;YACN,KAAK,IAAI,OAAO,CAAC,iBAAiB,CAAA;YAClC,WAAW,CAAC,IAAI,CAAC;gBACf,QAAQ,EAAE,MAAM;gBAChB,OAAO,EAAE,yCAAyC,SAAS,SAAS;gBACpE,KAAK,EAAE,oBAAoB;aAC5B,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,MAAM,cAAc,GAAG,MAAM,sBAAsB,CAAC,OAAO,CAAC,CAAA;IAC5D,MAAM,YAAY,GAAqB,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC;QACtE,CAAC,CAAE,WAAW,CAAC,MAA2B,CAAC,MAAM,CAC7C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ,CAC3E;QACH,CAAC,CAAC,EAAE,CAAA;IAEN,2CAA2C;IAC3C,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7D,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,oGAAoG;YAC7G,KAAK,EAAE,YAAY;SACpB,CAAC,CAAA;IACJ,CAAC;SAAM,CAAC;QACN,KAAK,IAAI,OAAO,CAAC,SAAS,CAAA;QAC1B,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,GAAG,cAAc,CAAC,MAAM,uBAAuB,YAAY,CAAC,MAAM,sBAAsB;YACjG,KAAK,EAAE,YAAY;SACpB,CAAC,CAAA;IACJ,CAAC;IAED,oDAAoD;IACpD,MAAM,WAAW,GAAG,MAAM,gBAAgB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAA;IACnE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,WAAW,CAAC,IAAI,CAAC;gBACf,QAAQ,EAAE,SAAS;gBACnB,OAAO,EAAE,yBAAyB,GAAG,sEAAsE;gBAC3G,KAAK,EAAE,iBAAiB;aACzB,CAAC,CAAA;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAC1E,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAA;IAC1D,CAAC;SAAM,CAAC;QACN,KAAK,IAAI,OAAO,CAAC,cAAc,CAAA;QAC/B,WAAW,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,qCAAqC,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAA;IAClH,CAAC;IAED,yEAAyE;IACzE,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,2CAA2C;QAC3C,KAAK,IAAI,OAAO,CAAC,eAAe,CAAA;QAChC,WAAW,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,wCAAwC,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAA;IACvH,CAAC;SAAM,CAAC;QACN,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;QAC/E,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;gBAC9B,WAAW,CAAC,IAAI,CAAC;oBACf,QAAQ,EAAE,OAAO;oBACjB,OAAO,EAAE,iBAAiB,GAAG,CAAC,IAAI,8BAA8B,GAAG,CAAC,UAAU,0BAA0B;oBACxG,KAAK,EAAE,mBAAmB;iBAC3B,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,IAAI,OAAO,CAAC,eAAe,CAAA;YAChC,WAAW,CAAC,IAAI,CAAC;gBACf,QAAQ,EAAE,MAAM;gBAChB,OAAO,EAAE,OAAO,YAAY,CAAC,MAAM,iCAAiC;gBACpE,KAAK,EAAE,mBAAmB;aAC3B,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAErD,4FAA4F;IAC5F,2FAA2F;IAC3F,+FAA+F;IAC/F,+EAA+E;IAC/E,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAA;IAEvE,OAAO;QACL,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAChC,KAAK;QACL,WAAW;QACX,WAAW,EAAE,qBAAqB;QAClC,cAAc;QACd,YAAY;QACZ,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM;QAClE,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,MAAM;QACrE,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM;QACpE,SAAS;KACV,CAAA;AACH,CAAC;AAED,kBAAkB;AAElB,SAAS,KAAK,CAAC,YAAoB,EAAE,OAAe;IAClD,OAAO;QACL,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;QACrC,KAAK,EAAE,CAAC;QACR,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;QACvE,WAAW,EAAE,qBAAqB;QAClC,cAAc,EAAE,EAAE;QAClB,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,CAAC;QACZ,SAAS,EAAE,CAAC;QACZ,UAAU,EAAE,CAAC;QACb,SAAS,EAAE,cAAc,EAAE;KAC5B,CAAA;AACH,CAAC;AAED,2FAA2F;AAC3F,SAAS,cAAc;IACrB,OAAO;QACL,mBAAmB,EAAE,EAAE;QACvB,WAAW,EAAE,EAAE;QACf,cAAc,EAAE,CAAC;QACjB,eAAe,EAAE,CAAC;QAClB,SAAS,EAAE,CAAC;QACZ,SAAS,EAAE,CAAC;QACZ,UAAU,EAAE,CAAC;KACd,CAAA;AACH,CAAC;AAOD,SAAS,kBAAkB,CAAC,OAAe,EAAE,KAAe;IAC1D,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,qDAAqD,EAAE,CAAA;IACjG,CAAC;IAED,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAA;IACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,KAAK,EAAE,CAAC;YACjC,QAAQ,GAAG,CAAC,CAAA;YACZ,MAAK;QACP,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;QACpB,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,iDAAiD,EAAE,CAAA;IAC7F,CAAC;IAED,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEvD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,aAAa,CAAC,WAAW,CAAC,CAAA;QACtC,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,qBAAqB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAA;QACxF,CAAC;QACD,OAAO,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,EAAyB,EAAE,UAAU,EAAE,IAAI,EAAE,CAAA;IAC7E,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO;YACL,WAAW,EAAE,IAAI;YACjB,UAAU,EAAE,qBAAqB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;SAC9E,CAAA;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,YAAoB;IACxD,MAAM,QAAQ,GAAa,EAAE,CAAA;IAC7B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;QACpE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;gBAAE,SAAQ;YAClC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAA;gBAC3D,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAC3B,CAAC;YAAC,MAAM,CAAC;gBACP,sCAAsC;YACxC,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wBAAwB;IAC1B,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,YAAoB,EAAE,kBAA4B;IAChF,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,kBAAkB,CAAC,CAAA;IAC/C,MAAM,OAAO,GAAa,EAAE,CAAA;IAC5B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;QACpE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;gBAAE,SAAQ;YAClC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;gBAAE,SAAQ;YACrC,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;gBAAE,SAAQ;YACzC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC1B,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,SAAS;IACX,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAW;IACnC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;QAC3B,OAAO,MAAM,CAAC,QAAQ,KAAK,YAAY,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAA;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"suggest-agent.d.ts","sourceRoot":"","sources":["../../src/core/suggest-agent.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAEnD,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,EAAE,UAAU,CAAA;IAC1B,SAAS,EAAE,OAAO,CAAA;CACnB;AAED,wBAAsB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAsD/E;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CA0DtF"}
1
+ {"version":3,"file":"suggest-agent.d.ts","sourceRoot":"","sources":["../../src/core/suggest-agent.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAEnD,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,EAAE,UAAU,CAAA;IAC1B,SAAS,EAAE,OAAO,CAAA;CACnB;AAED,wBAAsB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAsD/E;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAqEtF"}