@vibe-agent-toolkit/cli 0.1.37 → 0.1.39-rc.1

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 (149) hide show
  1. package/README.md +7 -4
  2. package/dist/bin/vat +10 -5
  3. package/dist/bin/vat.js +10 -5
  4. package/dist/bin/vat.js.map +1 -1
  5. package/dist/commands/agent/build.d.ts.map +1 -1
  6. package/dist/commands/agent/build.js +3 -0
  7. package/dist/commands/agent/build.js.map +1 -1
  8. package/dist/commands/agent/index.d.ts.map +1 -1
  9. package/dist/commands/agent/index.js +25 -1
  10. package/dist/commands/agent/index.js.map +1 -1
  11. package/dist/commands/agent/run.d.ts.map +1 -1
  12. package/dist/commands/agent/run.js +5 -0
  13. package/dist/commands/agent/run.js.map +1 -1
  14. package/dist/commands/agent/validate.d.ts.map +1 -1
  15. package/dist/commands/agent/validate.js +3 -0
  16. package/dist/commands/agent/validate.js.map +1 -1
  17. package/dist/commands/audit/hierarchical-output.d.ts +2 -1
  18. package/dist/commands/audit/hierarchical-output.d.ts.map +1 -1
  19. package/dist/commands/audit/hierarchical-output.js.map +1 -1
  20. package/dist/commands/audit.d.ts.map +1 -1
  21. package/dist/commands/audit.js +20 -9
  22. package/dist/commands/audit.js.map +1 -1
  23. package/dist/commands/build.d.ts.map +1 -1
  24. package/dist/commands/build.js +9 -0
  25. package/dist/commands/build.js.map +1 -1
  26. package/dist/commands/claude/claude-config.d.ts.map +1 -1
  27. package/dist/commands/claude/claude-config.js +4 -2
  28. package/dist/commands/claude/claude-config.js.map +1 -1
  29. package/dist/commands/claude/marketplace/git-publish.d.ts +5 -12
  30. package/dist/commands/claude/marketplace/git-publish.d.ts.map +1 -1
  31. package/dist/commands/claude/marketplace/git-publish.js +7 -80
  32. package/dist/commands/claude/marketplace/git-publish.js.map +1 -1
  33. package/dist/commands/claude/marketplace/publish-tree.d.ts +12 -4
  34. package/dist/commands/claude/marketplace/publish-tree.d.ts.map +1 -1
  35. package/dist/commands/claude/marketplace/publish-tree.js +54 -24
  36. package/dist/commands/claude/marketplace/publish-tree.js.map +1 -1
  37. package/dist/commands/claude/marketplace/publish.d.ts.map +1 -1
  38. package/dist/commands/claude/marketplace/publish.js +14 -39
  39. package/dist/commands/claude/marketplace/publish.js.map +1 -1
  40. package/dist/commands/claude/marketplace/validate.js.map +1 -1
  41. package/dist/commands/claude/plugin/install.js +2 -2
  42. package/dist/commands/claude/plugin/install.js.map +1 -1
  43. package/dist/commands/corpus/index.d.ts.map +1 -1
  44. package/dist/commands/corpus/index.js +6 -0
  45. package/dist/commands/corpus/index.js.map +1 -1
  46. package/dist/commands/corpus/report.js +2 -2
  47. package/dist/commands/corpus/report.js.map +1 -1
  48. package/dist/commands/corpus/runner.js +3 -3
  49. package/dist/commands/corpus/runner.js.map +1 -1
  50. package/dist/commands/corpus/scan.d.ts.map +1 -1
  51. package/dist/commands/corpus/scan.js +4 -0
  52. package/dist/commands/corpus/scan.js.map +1 -1
  53. package/dist/commands/corpus/seed.d.ts +24 -0
  54. package/dist/commands/corpus/seed.d.ts.map +1 -1
  55. package/dist/commands/corpus/seed.js +7 -3
  56. package/dist/commands/corpus/seed.js.map +1 -1
  57. package/dist/commands/doctor.d.ts +4 -2
  58. package/dist/commands/doctor.d.ts.map +1 -1
  59. package/dist/commands/doctor.js +24 -34
  60. package/dist/commands/doctor.js.map +1 -1
  61. package/dist/commands/rag/command-helpers.d.ts +7 -2
  62. package/dist/commands/rag/command-helpers.d.ts.map +1 -1
  63. package/dist/commands/rag/command-helpers.js +10 -5
  64. package/dist/commands/rag/command-helpers.js.map +1 -1
  65. package/dist/commands/rag/index-command.d.ts.map +1 -1
  66. package/dist/commands/rag/index-command.js +11 -3
  67. package/dist/commands/rag/index-command.js.map +1 -1
  68. package/dist/commands/rag/index.d.ts.map +1 -1
  69. package/dist/commands/rag/index.js +24 -0
  70. package/dist/commands/rag/index.js.map +1 -1
  71. package/dist/commands/resources/index.d.ts.map +1 -1
  72. package/dist/commands/resources/index.js +16 -1
  73. package/dist/commands/resources/index.js.map +1 -1
  74. package/dist/commands/resources/scan.d.ts.map +1 -1
  75. package/dist/commands/resources/scan.js +4 -1
  76. package/dist/commands/resources/scan.js.map +1 -1
  77. package/dist/commands/resources/validate.d.ts.map +1 -1
  78. package/dist/commands/resources/validate.js +162 -117
  79. package/dist/commands/resources/validate.js.map +1 -1
  80. package/dist/commands/skill/review.d.ts.map +1 -1
  81. package/dist/commands/skill/review.js +14 -2
  82. package/dist/commands/skill/review.js.map +1 -1
  83. package/dist/commands/skills/build.d.ts.map +1 -1
  84. package/dist/commands/skills/build.js +12 -0
  85. package/dist/commands/skills/build.js.map +1 -1
  86. package/dist/commands/skills/index.js +6 -0
  87. package/dist/commands/skills/index.js.map +1 -1
  88. package/dist/commands/skills/package.d.ts.map +1 -1
  89. package/dist/commands/skills/package.js +10 -0
  90. package/dist/commands/skills/package.js.map +1 -1
  91. package/dist/commands/skills/skill-discovery.d.ts +9 -2
  92. package/dist/commands/skills/skill-discovery.d.ts.map +1 -1
  93. package/dist/commands/skills/skill-discovery.js +83 -18
  94. package/dist/commands/skills/skill-discovery.js.map +1 -1
  95. package/dist/commands/skills/validate-command.d.ts.map +1 -1
  96. package/dist/commands/skills/validate-command.js +6 -0
  97. package/dist/commands/skills/validate-command.js.map +1 -1
  98. package/dist/commands/skills/validate.d.ts.map +1 -1
  99. package/dist/commands/skills/validate.js +15 -3
  100. package/dist/commands/skills/validate.js.map +1 -1
  101. package/dist/commands/verify.d.ts.map +1 -1
  102. package/dist/commands/verify.js +9 -0
  103. package/dist/commands/verify.js.map +1 -1
  104. package/dist/index.d.ts +0 -1
  105. package/dist/index.d.ts.map +1 -1
  106. package/dist/index.js +0 -1
  107. package/dist/index.js.map +1 -1
  108. package/dist/utils/agent-discovery.d.ts.map +1 -1
  109. package/dist/utils/agent-discovery.js +2 -3
  110. package/dist/utils/agent-discovery.js.map +1 -1
  111. package/dist/utils/config-loader.d.ts +11 -24
  112. package/dist/utils/config-loader.d.ts.map +1 -1
  113. package/dist/utils/config-loader.js +34 -68
  114. package/dist/utils/config-loader.js.map +1 -1
  115. package/dist/utils/logger.d.ts +1 -0
  116. package/dist/utils/logger.d.ts.map +1 -1
  117. package/dist/utils/logger.js +3 -0
  118. package/dist/utils/logger.js.map +1 -1
  119. package/dist/utils/output.js +3 -3
  120. package/dist/utils/output.js.map +1 -1
  121. package/dist/utils/project-root-policy.d.ts +33 -0
  122. package/dist/utils/project-root-policy.d.ts.map +1 -0
  123. package/dist/utils/project-root-policy.js +49 -0
  124. package/dist/utils/project-root-policy.js.map +1 -0
  125. package/dist/utils/resource-loader.d.ts +9 -4
  126. package/dist/utils/resource-loader.d.ts.map +1 -1
  127. package/dist/utils/resource-loader.js +24 -28
  128. package/dist/utils/resource-loader.js.map +1 -1
  129. package/dist/utils/verdict-helpers.d.ts +2 -1
  130. package/dist/utils/verdict-helpers.d.ts.map +1 -1
  131. package/dist/utils/verdict-helpers.js +1 -1
  132. package/dist/utils/verdict-helpers.js.map +1 -1
  133. package/docs/agent.md +25 -0
  134. package/docs/audit.md +25 -0
  135. package/docs/doctor.md +13 -0
  136. package/docs/index.md +19 -0
  137. package/docs/mcp.md +16 -0
  138. package/docs/rag.md +18 -0
  139. package/docs/resources.md +45 -3
  140. package/docs/skills.md +61 -3
  141. package/package.json +12 -13
  142. package/dist/commands/claude/marketplace/tag-utils.d.ts +0 -11
  143. package/dist/commands/claude/marketplace/tag-utils.d.ts.map +0 -1
  144. package/dist/commands/claude/marketplace/tag-utils.js +0 -17
  145. package/dist/commands/claude/marketplace/tag-utils.js.map +0 -1
  146. package/dist/utils/project-root.d.ts +0 -30
  147. package/dist/utils/project-root.d.ts.map +0 -1
  148. package/dist/utils/project-root.js +0 -59
  149. package/dist/utils/project-root.js.map +0 -1
@@ -40,6 +40,12 @@ Output Fields:
40
40
  collections: Per-collection resource counts (resourceCount)
41
41
  files: (only with --verbose) Array with per-file details
42
42
 
43
+ Requirements:
44
+ projectRoot: optional (falls back to cwd with a warning)
45
+ config: optional (uses defaults if absent)
46
+
47
+ See docs/concepts/roots-and-config.md for terminology.
48
+
43
49
  Examples:
44
50
  $ vat resources scan docs/ # Scan all *.md under docs/
45
51
  $ vat resources scan --verbose # Include full file details
@@ -99,7 +105,7 @@ Output Fields (success):
99
105
 
100
106
  Output Fields (failure):
101
107
  status, filesScanned, filesWithErrors, errorsFound, durationSecs
102
- errorSummary: Count of each error type (broken_file, broken_anchor, etc.)
108
+ errorSummary: Count of each issue code (LINK_BROKEN_FILE, LINK_BROKEN_ANCHOR, etc.)
103
109
  collections: Per-collection stats including filesWithErrors, errorCount
104
110
  errors: Detailed errors grouped by file
105
111
 
@@ -112,6 +118,9 @@ Validation Checks:
112
118
  External URL Validation:
113
119
  By default, external URLs are NOT validated (for speed).
114
120
  Use --check-external-urls to enable HTTP checking of external links.
121
+ External-URL findings (EXTERNAL_URL_DEAD/TIMEOUT/ERROR) are configurable
122
+ warnings — they do NOT fail the build by default. Promote them to errors
123
+ or silence them via resources.validation.severity in your config.
115
124
  Results are cached in system temp directory (24h alive, 1h dead).
116
125
  Cache is shared across all projects (URLs are universal).
117
126
  Use --no-cache to force fresh checks (ignores cache).
@@ -153,6 +162,12 @@ Frontmatter Validation:
153
162
  Exit Codes:
154
163
  0 - Success | 1 - Validation errors | 2 - System error
155
164
 
165
+ Requirements:
166
+ projectRoot: optional (falls back to cwd with a warning)
167
+ config: optional (uses defaults if absent)
168
+
169
+ See docs/concepts/roots-and-config.md for terminology.
170
+
156
171
  Examples:
157
172
 
158
173
  Mode 1: Quick directory scan (no collections)
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/resources/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,UAAU,sBAAsB;IACpC,MAAM,SAAS,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IAE3C,SAAS;SACN,WAAW,CAAC,oEAAoE,CAAC;SACjF,WAAW,CAAC,KAAK,CAAC,CAAC,uDAAuD;SAC1E,WAAW,CACV,OAAO,EACP;;;;;;CAML,CACI,CAAC;IAEJ,SAAS;SACN,OAAO,CAAC,aAAa,CAAC;SACtB,WAAW,CAAC,0CAA0C,CAAC;SACvD,MAAM,CAAC,SAAS,EAAE,sBAAsB,CAAC;SACzC,MAAM,CAAC,WAAW,EAAE,kCAAkC,CAAC;SACvD,MAAM,CAAC,mBAAmB,EAAE,yBAAyB,CAAC;SACtD,MAAM,CAAC,WAAW,CAAC;SACnB,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;;;;;;;;;;CAqBL,CACI,CAAC;IAEJ,SAAS;SACN,OAAO,CAAC,iBAAiB,CAAC;SAC1B,WAAW,CAAC,uDAAuD,CAAC;SACpE,MAAM,CAAC,SAAS,EAAE,sBAAsB,CAAC;SACzC,MAAM,CAAC,6BAA6B,EAAE,gEAAgE,CAAC;SACvG,MAAM,CAAC,0BAA0B,EAAE,6DAA6D,EAAE,QAAQ,CAAC;SAC3G,MAAM,CAAC,mBAAmB,EAAE,8CAA8C,EAAE,MAAM,CAAC;SACnF,MAAM,CAAC,mBAAmB,EAAE,yBAAyB,CAAC;SACtD,MAAM,CAAC,uBAAuB,EAAE,yDAAyD,CAAC;SAC1F,MAAM,CAAC,YAAY,EAAE,iEAAiE,CAAC;SACvF,MAAM,CAAC,8BAA8B,EAAE,0FAA0F,CAAC;SAClI,MAAM,CAAC,eAAe,CAAC;SACvB,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2HL,CACI,CAAC;IAEJ,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/resources/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,UAAU,sBAAsB;IACpC,MAAM,SAAS,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IAE3C,SAAS;SACN,WAAW,CAAC,oEAAoE,CAAC;SACjF,WAAW,CAAC,KAAK,CAAC,CAAC,uDAAuD;SAC1E,WAAW,CACV,OAAO,EACP;;;;;;CAML,CACI,CAAC;IAEJ,SAAS;SACN,OAAO,CAAC,aAAa,CAAC;SACtB,WAAW,CAAC,0CAA0C,CAAC;SACvD,MAAM,CAAC,SAAS,EAAE,sBAAsB,CAAC;SACzC,MAAM,CAAC,WAAW,EAAE,kCAAkC,CAAC;SACvD,MAAM,CAAC,mBAAmB,EAAE,yBAAyB,CAAC;SACtD,MAAM,CAAC,WAAW,CAAC;SACnB,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BL,CACI,CAAC;IAEJ,SAAS;SACN,OAAO,CAAC,iBAAiB,CAAC;SAC1B,WAAW,CAAC,uDAAuD,CAAC;SACpE,MAAM,CAAC,SAAS,EAAE,sBAAsB,CAAC;SACzC,MAAM,CAAC,6BAA6B,EAAE,gEAAgE,CAAC;SACvG,MAAM,CAAC,0BAA0B,EAAE,6DAA6D,EAAE,QAAQ,CAAC;SAC3G,MAAM,CAAC,mBAAmB,EAAE,8CAA8C,EAAE,MAAM,CAAC;SACnF,MAAM,CAAC,mBAAmB,EAAE,yBAAyB,CAAC;SACtD,MAAM,CAAC,uBAAuB,EAAE,yDAAyD,CAAC;SAC1F,MAAM,CAAC,YAAY,EAAE,iEAAiE,CAAC;SACvF,MAAM,CAAC,8BAA8B,EAAE,0FAA0F,CAAC;SAClI,MAAM,CAAC,eAAe,CAAC;SACvB,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoIL,CACI,CAAC;IAEJ,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../../src/commands/resources/scan.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC,CAkFf"}
1
+ {"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../../src/commands/resources/scan.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC,CAqFf"}
@@ -4,14 +4,17 @@
4
4
  import { formatDurationSecs } from '../../utils/duration.js';
5
5
  import { createLogger } from '../../utils/logger.js';
6
6
  import { writeYamlOutput } from '../../utils/output.js';
7
+ import { projectRootOrLoudCwd } from '../../utils/project-root-policy.js';
7
8
  import { loadResourcesWithConfig } from '../../utils/resource-loader.js';
8
9
  import { handleCommandError } from './command-helpers.js';
9
10
  export async function scanCommand(pathArg, options) {
10
11
  const logger = createLogger({ debug: options.debug ?? false });
11
12
  const startTime = Date.now();
12
13
  try {
14
+ // Resolve projectRoot at the CLI boundary (spec §5/§7 — loud-cwd policy).
15
+ const projectRoot = projectRootOrLoudCwd(pathArg ?? process.cwd(), logger);
13
16
  // Load resources with config support
14
- const { registry } = await loadResourcesWithConfig(pathArg, logger);
17
+ const { registry } = await loadResourcesWithConfig(pathArg, projectRoot, logger);
15
18
  // Get all resources (filtered by collection if specified)
16
19
  let allResources = registry.getAllResources();
17
20
  if (options.collection) {
@@ -1 +1 @@
1
- {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../../src/commands/resources/scan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../../src/commands/resources/scan.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../src/commands/resources/validate.ts"],"names":[],"mappings":"AAAA;;GAEG;AA+FH;;GAEG;AACH,KAAK,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AA6M7C,UAAU,eAAe;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,QAAQ,GAAG,YAAY,CAAC;IACzC,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAiBD,wBAAsB,eAAe,CACnC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAwHf"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../src/commands/resources/validate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAiHH;;GAEG;AACH,KAAK,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAsR7C,UAAU,eAAe;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,QAAQ,GAAG,YAAY,CAAC;IACzC,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAiBD,wBAAsB,eAAe,CACnC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAmFf"}
@@ -3,11 +3,12 @@
3
3
  */
4
4
  import { readFile } from 'node:fs/promises';
5
5
  import * as path from 'node:path';
6
- import { resolveAssetReference } from '@vibe-agent-toolkit/utils';
7
- import * as yaml from 'js-yaml';
6
+ import { resolveAssetReference, safePath } from '@vibe-agent-toolkit/utils';
7
+ import * as yaml from 'yaml';
8
8
  import { formatDurationSecs } from '../../utils/duration.js';
9
9
  import { createLogger } from '../../utils/logger.js';
10
10
  import { writeTestFormatError } from '../../utils/output.js';
11
+ import { projectRootOrLoudCwd } from '../../utils/project-root-policy.js';
11
12
  import { loadResourcesWithConfig } from '../../utils/resource-loader.js';
12
13
  import { handleCommandError } from './command-helpers.js';
13
14
  async function loadSchema(schemaPath) {
@@ -19,8 +20,7 @@ async function loadSchema(schemaPath) {
19
20
  return JSON.parse(content);
20
21
  }
21
22
  else if (ext === '.yaml' || ext === '.yml') {
22
- // CORE_SCHEMA: YAML 1.2 spec — see link-parser.ts for rationale.
23
- const parsed = yaml.load(content, { schema: yaml.CORE_SCHEMA });
23
+ const parsed = yaml.parse(content);
24
24
  if (typeof parsed === 'object' && parsed !== null && !Array.isArray(parsed)) {
25
25
  return parsed;
26
26
  }
@@ -38,7 +38,7 @@ function writeStructuredOutput(data, format) {
38
38
  console.log(JSON.stringify(data, null, 2));
39
39
  }
40
40
  else {
41
- console.log(yaml.dump(data, { indent: 2, lineWidth: -1 }));
41
+ console.log(yaml.stringify(data, { indent: 2, lineWidth: 0, aliasDuplicateObjects: false }));
42
42
  }
43
43
  }
44
44
  /**
@@ -47,25 +47,19 @@ function writeStructuredOutput(data, format) {
47
47
  function groupErrorsByFile(errors) {
48
48
  const fileMap = new Map();
49
49
  for (const error of errors) {
50
+ const entry = {
51
+ line: error.line,
52
+ column: error.column,
53
+ code: error.code,
54
+ severity: error.severity,
55
+ message: error.message,
56
+ };
50
57
  const existing = fileMap.get(error.file);
51
58
  if (existing) {
52
- existing.errors.push({
53
- line: error.line,
54
- column: error.column,
55
- type: error.type,
56
- message: error.message,
57
- });
59
+ existing.errors.push(entry);
58
60
  }
59
61
  else {
60
- fileMap.set(error.file, {
61
- file: error.file,
62
- errors: [{
63
- line: error.line,
64
- column: error.column,
65
- type: error.type,
66
- message: error.message,
67
- }],
68
- });
62
+ fileMap.set(error.file, { file: error.file, errors: [entry] });
69
63
  }
70
64
  }
71
65
  return [...fileMap.values()];
@@ -80,36 +74,48 @@ function logGitTrackerStats(gitTracker, logger) {
80
74
  }
81
75
  }
82
76
  /**
83
- * Output validation failure results.
77
+ * Merge per-collection error stats into the base collection stats for output.
78
+ */
79
+ function buildCollectionsWithErrors(collectionStats, collectionErrorStats) {
80
+ const collectionsWithErrors = {};
81
+ if (!collectionStats) {
82
+ return collectionsWithErrors;
83
+ }
84
+ for (const [id, baseStat] of Object.entries(collectionStats.collections)) {
85
+ const errorStat = collectionErrorStats.get(id);
86
+ collectionsWithErrors[id] = {
87
+ ...baseStat,
88
+ ...(errorStat ? {
89
+ filesWithErrors: errorStat.filesWithErrors,
90
+ errorCount: errorStat.errorCount,
91
+ } : {}),
92
+ };
93
+ }
94
+ return collectionsWithErrors;
95
+ }
96
+ /**
97
+ * Output validation results when one or more issues fired.
98
+ *
99
+ * Surfaces ALL severity-resolved issues (errors AND warnings/info) so users see
100
+ * them, but the `failed` flag — derived from the library's `hasErrors` — controls
101
+ * the reported `status`. The caller, not this function, owns the exit code.
84
102
  */
85
- function outputFailure(errorData, outputFormat, context, registry) {
103
+ function outputIssues(issueData, outputFormat, context, registry, failed) {
86
104
  if (outputFormat === 'text') {
87
- // Text format: test-format errors to stderr
88
- for (const error of errorData) {
89
- writeTestFormatError(error.file, error.line, error.column, error.message);
105
+ // Text format: test-format issues to stderr
106
+ for (const issue of issueData) {
107
+ writeTestFormatError(issue.file, issue.line, issue.column, issue.message);
90
108
  }
91
109
  }
92
110
  else {
93
- // Calculate error summary
94
- const summary = buildErrorSummary(errorData, registry);
111
+ // Calculate issue summary (keyed by code)
112
+ const summary = buildErrorSummary(issueData, registry);
95
113
  // Build collection stats with error info
96
- const collectionsWithErrors = {};
97
- if (context.collectionStats) {
98
- for (const [id, baseStat] of Object.entries(context.collectionStats.collections)) {
99
- const errorStat = summary.collectionErrorStats.get(id);
100
- collectionsWithErrors[id] = {
101
- ...baseStat,
102
- ...(errorStat ? {
103
- filesWithErrors: errorStat.filesWithErrors,
104
- errorCount: errorStat.errorCount,
105
- } : {}),
106
- };
107
- }
108
- }
109
- // Group errors by file
110
- const groupedErrors = groupErrorsByFile(errorData);
114
+ const collectionsWithErrors = buildCollectionsWithErrors(context.collectionStats, summary.collectionErrorStats);
115
+ // Group issues by file
116
+ const groupedErrors = groupErrorsByFile(issueData);
111
117
  const outputData = {
112
- status: 'failed',
118
+ status: failed ? 'failed' : 'success',
113
119
  filesScanned: context.stats.totalResources,
114
120
  filesWithErrors: summary.filesWithErrors,
115
121
  errorsFound: context.errorCount,
@@ -158,22 +164,23 @@ function outputSuccess(outputFormat, context) {
158
164
  * - Unique files with errors
159
165
  * - Per-collection error statistics
160
166
  *
161
- * @param issues - Validation issues from registry (using ErrorData format with file instead of resourcePath)
162
- * @param registry - Resource registry for collection lookups
167
+ * @param issues - Flattened validation issues (relative `file`, absolute `absPath`, `code`)
168
+ * @param registry - Resource registry for collection lookups (keyed by ABSOLUTE path)
163
169
  * @returns Error summary statistics
164
170
  */
165
171
  function buildErrorSummary(issues, registry) {
166
- // 1. Count by error type
172
+ // 1. Count by code
167
173
  const errorSummary = {};
168
174
  for (const issue of issues) {
169
- errorSummary[issue.type] = (errorSummary[issue.type] ?? 0) + 1;
175
+ errorSummary[issue.code] = (errorSummary[issue.code] ?? 0) + 1;
170
176
  }
171
177
  // 2. Count unique files with errors
172
178
  const filesWithErrorsSet = new Set(issues.map(i => i.file));
173
- // 3. Map files to collections and count errors per collection
179
+ // 3. Map files to collections and count errors per collection.
180
+ // registry.getResource keys on the ABSOLUTE path, so look up via absPath.
174
181
  const collectionErrors = new Map();
175
182
  for (const issue of issues) {
176
- const resource = registry.getResource(issue.file);
183
+ const resource = registry.getResource(issue.absPath);
177
184
  const collections = resource?.collections;
178
185
  if (collections) {
179
186
  for (const collectionId of collections) {
@@ -201,6 +208,49 @@ function buildErrorSummary(issues, registry) {
201
208
  collectionErrorStats: collectionStats,
202
209
  };
203
210
  }
211
+ /**
212
+ * Restrict issues and stats to a single collection.
213
+ *
214
+ * Issue locations are RELATIVE to projectRoot, but `resource.filePath` is
215
+ * ABSOLUTE — convert the collection's resource paths to the same relative basis
216
+ * before comparing, so the filter actually matches.
217
+ */
218
+ function filterByCollection(registry, validationResult, collection, projectRoot) {
219
+ const collectionResources = registry
220
+ .getAllResources()
221
+ .filter(r => r.collections?.includes(collection) ?? false);
222
+ const collectionPaths = new Set(collectionResources.map(r => safePath.relative(projectRoot, r.filePath)));
223
+ const filteredIssues = validationResult.issues.filter(issue => issue.location !== undefined && collectionPaths.has(issue.location));
224
+ const totalLinks = collectionResources.reduce((sum, r) => sum + r.links.length, 0);
225
+ return {
226
+ filteredIssues,
227
+ filteredStats: {
228
+ totalResources: collectionResources.length,
229
+ totalLinks,
230
+ linksByType: validationResult.linksByType, // Keep all link types
231
+ },
232
+ };
233
+ }
234
+ /**
235
+ * Flatten severity-resolved issues for display.
236
+ *
237
+ * `file` is RELATIVE to projectRoot (matches `issue.location`, used for display);
238
+ * `absPath` is ABSOLUTE (for registry/collection lookups via getResource).
239
+ */
240
+ function flattenIssuesForDisplay(issues, projectRoot) {
241
+ return issues.map(issue => {
242
+ const file = issue.location ?? '';
243
+ return {
244
+ file,
245
+ absPath: file ? safePath.resolve(projectRoot, file) : '',
246
+ line: issue.line ?? 1,
247
+ column: 1,
248
+ code: issue.code,
249
+ severity: issue.severity,
250
+ message: issue.message,
251
+ };
252
+ });
253
+ }
204
254
  /**
205
255
  * Apply the --no-check-frontmatter-links CLI flag to the loaded config.
206
256
  *
@@ -220,8 +270,10 @@ export async function validateCommand(pathArg, options) {
220
270
  const logger = createLogger(options.debug ? { debug: true } : {});
221
271
  const startTime = Date.now();
222
272
  try {
273
+ // Resolve projectRoot at the CLI boundary (spec §5/§7 — loud-cwd policy).
274
+ const projectRoot = projectRootOrLoudCwd(pathArg ?? process.cwd(), logger);
223
275
  // Load resources with config support (includes GitTracker initialization)
224
- const { registry, config, gitTracker } = await loadResourcesWithConfig(pathArg, logger);
276
+ const { registry, config, gitTracker } = await loadResourcesWithConfig(pathArg, projectRoot, logger);
225
277
  // CLI flag: --no-check-frontmatter-links disables the check for every collection.
226
278
  // Commander represents the negated form as options.checkFrontmatterLinks === false.
227
279
  if (options.checkFrontmatterLinks === false) {
@@ -240,84 +292,77 @@ export async function validateCommand(pathArg, options) {
240
292
  validationMode,
241
293
  checkExternalUrls: options.checkExternalUrls ?? false,
242
294
  noCache: options.noCache ?? false,
295
+ // Thread the project's resources.validation config in. The CLI does NOT
296
+ // resolve severity itself — ResourceRegistry.validate() runs the framework.
297
+ validationConfig: config?.resources?.validation ?? {},
243
298
  });
244
299
  // Filter by collection if specified
245
- let filteredIssues = validationResult.issues;
246
- let filteredStats;
247
- if (options.collection) {
248
- // Get resources in the specified collection
249
- const { collection } = options;
250
- const collectionResources = registry
251
- .getAllResources()
252
- .filter(r => (collection ? r.collections?.includes(collection) ?? false : false));
253
- const collectionPaths = new Set(collectionResources.map(r => r.filePath));
254
- // Only show issues from files in this collection
255
- filteredIssues = validationResult.issues.filter(issue => collectionPaths.has(issue.resourcePath));
256
- // Calculate filtered stats
257
- const totalLinks = collectionResources.reduce((sum, r) => sum + r.links.length, 0);
258
- filteredStats = {
259
- totalResources: collectionResources.length,
260
- totalLinks,
261
- linksByType: validationResult.linksByType, // Keep all link types
262
- };
263
- }
264
- else {
265
- filteredStats = registry.getStats();
266
- }
300
+ const { filteredIssues, filteredStats } = options.collection
301
+ ? filterByCollection(registry, validationResult, options.collection, projectRoot)
302
+ : { filteredIssues: validationResult.issues, filteredStats: registry.getStats() };
267
303
  const duration = Date.now() - startTime;
268
304
  // Build validation metadata
269
305
  const validationMetadata = {
270
306
  validationMode,
271
307
  ...(options.frontmatterSchema ? { frontmatterSchema: options.frontmatterSchema } : {}),
272
308
  };
273
- // Get collection stats (filtered if collection specified)
274
- let collectionStats = registry.getCollectionStats();
275
- if (options.collection && collectionStats) {
276
- // Only show the specified collection
277
- const collectionStat = collectionStats.collections[options.collection];
278
- if (collectionStat) {
279
- collectionStats = {
280
- totalCollections: 1,
281
- resourcesInCollections: collectionStat.resourceCount,
282
- collections: { [options.collection]: collectionStat },
283
- };
284
- }
285
- }
286
- // Filter out external_url issues (informational only, not actual errors)
287
- const actualErrors = filteredIssues.filter(issue => issue.type !== 'external_url');
288
- const hasErrors = actualErrors.length > 0;
289
- // Determine output format (default: yaml)
290
- const outputFormat = options.format ?? 'yaml';
291
- if (hasErrors) {
292
- // Failure path
293
- const errorData = actualErrors.map(issue => ({
294
- file: issue.resourcePath,
295
- line: issue.line ?? 1,
296
- column: 1,
297
- type: issue.type,
298
- message: issue.message,
299
- }));
300
- const context = {
301
- stats: filteredStats,
302
- errorCount: validationResult.errorCount,
303
- validationMetadata,
304
- collectionStats,
305
- duration,
306
- };
307
- outputFailure(errorData, outputFormat, context, registry);
308
- logGitTrackerStats(gitTracker, logger);
309
- process.exit(1);
310
- }
311
- else {
312
- // Success path
313
- const context = { stats: filteredStats, validationMetadata, collectionStats, duration };
314
- outputSuccess(outputFormat, context);
315
- logGitTrackerStats(gitTracker, logger);
316
- process.exit(0);
317
- }
309
+ // Get collection stats (narrowed to the requested collection, if any).
310
+ const collectionStats = narrowCollectionStats(registry.getCollectionStats(), options.collection);
311
+ // The library already severity-resolved every issue (allow-filtered, ignored
312
+ // dropped) and decided pass/fail. The CLI is a dumb orchestrator: the failure
313
+ // decision is exactly the framework's severity-based `hasErrors`. Warning- and
314
+ // info-severity issues are surfaced below but DO NOT flip the exit code.
315
+ const { hasErrors } = validationResult;
316
+ // Flatten issues for display (relative `file` + absolute `absPath`).
317
+ const issueData = flattenIssuesForDisplay(filteredIssues, projectRoot);
318
+ // The count shown to the user as "errors" counts only error-severity issues.
319
+ const errorSeverityCount = issueData.filter(i => i.severity === 'error').length;
320
+ const context = {
321
+ stats: filteredStats,
322
+ errorCount: errorSeverityCount,
323
+ validationMetadata,
324
+ collectionStats,
325
+ duration,
326
+ };
327
+ emitResult(issueData, context, registry, hasErrors, options.format ?? 'yaml');
328
+ logGitTrackerStats(gitTracker, logger);
329
+ // Exit decision is purely the library's severity-based `hasErrors`.
330
+ process.exit(hasErrors ? 1 : 0);
318
331
  }
319
332
  catch (error) {
320
333
  handleCommandError(error, logger, startTime, 'Validation');
321
334
  }
322
335
  }
336
+ /**
337
+ * Narrow collection stats to a single requested collection (no-op when no
338
+ * collection filter is active or the collection has no stats).
339
+ */
340
+ function narrowCollectionStats(collectionStats, collection) {
341
+ if (!collection || !collectionStats) {
342
+ return collectionStats;
343
+ }
344
+ const collectionStat = collectionStats.collections[collection];
345
+ if (!collectionStat) {
346
+ return collectionStats;
347
+ }
348
+ return {
349
+ totalCollections: 1,
350
+ resourcesInCollections: collectionStat.resourceCount,
351
+ collections: { [collection]: collectionStat },
352
+ };
353
+ }
354
+ /**
355
+ * Emit the result to stdout. Surfaces all issues when any fired; otherwise emits
356
+ * a clean success. Does NOT decide the exit code — the caller owns that.
357
+ */
358
+ function emitResult(issueData, context, registry, hasErrors, outputFormat) {
359
+ if (issueData.length > 0) {
360
+ // Issues to surface (errors and/or warnings/info). Reported status follows
361
+ // the exit decision: 'failed' iff the framework flagged errors.
362
+ outputIssues(issueData, outputFormat, context, registry, hasErrors);
363
+ }
364
+ else {
365
+ outputSuccess(outputFormat, context);
366
+ }
367
+ }
323
368
  //# sourceMappingURL=validate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../src/commands/resources/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../src/commands/resources/validate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/review.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAaH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkBpC,MAAM,WAAW,yBAAyB;IACxC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAgCxD;AA+LD,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC,CAoCf;AAED,wBAAgB,wBAAwB,IAAI,OAAO,CAsClD"}
1
+ {"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/review.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAaH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmBpC,MAAM,WAAW,yBAAyB;IACxC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAgCxD;AA+LD,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC,CA0Cf;AAED,wBAAgB,wBAAwB,IAAI,OAAO,CA4ClD"}
@@ -14,10 +14,11 @@ import { dirname } from 'node:path';
14
14
  import { validateSkillForPackaging, } from '@vibe-agent-toolkit/agent-skills';
15
15
  import { gitFindRoot, safePath } from '@vibe-agent-toolkit/utils';
16
16
  import { Command } from 'commander';
17
- import * as yaml from 'js-yaml';
17
+ import * as yaml from 'yaml';
18
18
  import { handleCommandError } from '../../utils/command-error.js';
19
19
  import { loadConfig } from '../../utils/config-loader.js';
20
20
  import { createLogger } from '../../utils/logger.js';
21
+ import { projectRootOrNull } from '../../utils/project-root-policy.js';
21
22
  import { mergeSkillPackagingConfig } from '../../utils/skill-packaging-config.js';
22
23
  import { renderSkillQualityFooter } from '../../utils/skill-quality-footer.js';
23
24
  import { applyConfigVerdicts } from '../../utils/verdict-helpers.js';
@@ -202,7 +203,7 @@ function outputYaml(result, skillPath, grouped) {
202
203
  manual,
203
204
  };
204
205
  process.stdout.write('---\n');
205
- process.stdout.write(yaml.dump(payload, { indent: 2, lineWidth: 120, noRefs: true }));
206
+ process.stdout.write(yaml.stringify(payload, { indent: 2, lineWidth: 120, aliasDuplicateObjects: false }));
206
207
  }
207
208
  /** Footer: share the checklist link when any skill-level finding fires. */
208
209
  function renderFooter(result, logger) {
@@ -220,6 +221,11 @@ export async function reviewCommand(pathArg, options) {
220
221
  if (pathArg === undefined || pathArg === '') {
221
222
  throw new Error('Missing required argument: <path> (path to SKILL.md or a skill directory)');
222
223
  }
224
+ // Spec §7: `vat skill review` uses `tolerate null` (single-skill review
225
+ // operates with or without a governing project). The result is recorded
226
+ // for future use; today resolvePackagingConfig walks per-skill (will be
227
+ // consolidated in Phase 5 once the audit walk-up cache lands).
228
+ projectRootOrNull(process.cwd());
223
229
  const skillPath = resolveSkillPath(pathArg);
224
230
  logger.debug(`Reviewing SKILL.md at: ${skillPath}`);
225
231
  const packagingConfig = await resolvePackagingConfig(skillPath, logger);
@@ -269,6 +275,12 @@ Exit Codes:
269
275
  1 - At least one error or warning present (errors and warnings treated equally — this is a review, not a gate)
270
276
  2 - System error (path missing, internal failure)
271
277
 
278
+ Requirements:
279
+ projectRoot: optional (tolerates absence)
280
+ config: optional (uses defaults if absent)
281
+
282
+ See docs/concepts/roots-and-config.md for terminology.
283
+
272
284
  Example:
273
285
  $ vat skill review packages/my-agents/src/skills/ado/SKILL.md
274
286
  `);
@@ -1 +1 @@
1
- {"version":3,"file":"review.js","sourceRoot":"","sources":["../../../src/commands/skill/review.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review.js","sourceRoot":"","sources":["../../../src/commands/skill/review.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../src/commands/skills/build.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAmBH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAepC,MAAM,WAAW,yBAAyB;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAaD,wBAAgB,kBAAkB,IAAI,OAAO,CA4D5C"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../src/commands/skills/build.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAmBH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgBpC,MAAM,WAAW,yBAAyB;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAaD,wBAAgB,kBAAkB,IAAI,OAAO,CAkE5C"}