@vibe-agent-toolkit/cli 0.2.0-rc.11 → 0.2.0-rc.12

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 (755) hide show
  1. package/README.md +3 -3
  2. package/dist/bin/supervise-cli.d.ts +45 -0
  3. package/dist/bin/supervise-cli.d.ts.map +1 -0
  4. package/dist/bin/supervise-cli.js +83 -0
  5. package/dist/bin/supervise-cli.js.map +1 -0
  6. package/dist/bin/vat +95 -43
  7. package/dist/bin/vat.d.ts +15 -4
  8. package/dist/bin/vat.d.ts.map +1 -1
  9. package/dist/bin/vat.js +95 -43
  10. package/dist/bin/vat.js.map +1 -1
  11. package/dist/bin.js +21 -29
  12. package/dist/bin.js.map +1 -1
  13. package/dist/command-tree.d.ts +45 -0
  14. package/dist/command-tree.d.ts.map +1 -0
  15. package/dist/command-tree.js +60 -0
  16. package/dist/command-tree.js.map +1 -0
  17. package/dist/commands/agent/build-schema.d.ts +100 -0
  18. package/dist/commands/agent/build-schema.d.ts.map +1 -0
  19. package/dist/commands/agent/build-schema.js +32 -0
  20. package/dist/commands/agent/build-schema.js.map +1 -0
  21. package/dist/commands/agent/build.d.ts +1 -0
  22. package/dist/commands/agent/build.d.ts.map +1 -1
  23. package/dist/commands/agent/build.js +63 -33
  24. package/dist/commands/agent/build.js.map +1 -1
  25. package/dist/commands/agent/import-schema.d.ts +75 -0
  26. package/dist/commands/agent/import-schema.d.ts.map +1 -0
  27. package/dist/commands/agent/import-schema.js +25 -0
  28. package/dist/commands/agent/import-schema.js.map +1 -0
  29. package/dist/commands/agent/import.d.ts.map +1 -1
  30. package/dist/commands/agent/import.js +33 -27
  31. package/dist/commands/agent/import.js.map +1 -1
  32. package/dist/commands/agent/index.d.ts.map +1 -1
  33. package/dist/commands/agent/index.js +132 -37
  34. package/dist/commands/agent/index.js.map +1 -1
  35. package/dist/commands/agent/install-path.d.ts.map +1 -1
  36. package/dist/commands/agent/install-path.js +2 -1
  37. package/dist/commands/agent/install-path.js.map +1 -1
  38. package/dist/commands/agent/install-schema.d.ts +89 -0
  39. package/dist/commands/agent/install-schema.d.ts.map +1 -0
  40. package/dist/commands/agent/install-schema.js +29 -0
  41. package/dist/commands/agent/install-schema.js.map +1 -0
  42. package/dist/commands/agent/install.d.ts +7 -1
  43. package/dist/commands/agent/install.d.ts.map +1 -1
  44. package/dist/commands/agent/install.js +78 -108
  45. package/dist/commands/agent/install.js.map +1 -1
  46. package/dist/commands/agent/installed-schema.d.ts +140 -0
  47. package/dist/commands/agent/installed-schema.d.ts.map +1 -0
  48. package/dist/commands/agent/installed-schema.js +36 -0
  49. package/dist/commands/agent/installed-schema.js.map +1 -0
  50. package/dist/commands/agent/installed.d.ts +1 -1
  51. package/dist/commands/agent/installed.d.ts.map +1 -1
  52. package/dist/commands/agent/installed.js +104 -75
  53. package/dist/commands/agent/installed.js.map +1 -1
  54. package/dist/commands/agent/list-schema.d.ts +128 -0
  55. package/dist/commands/agent/list-schema.d.ts.map +1 -0
  56. package/dist/commands/agent/list-schema.js +34 -0
  57. package/dist/commands/agent/list-schema.js.map +1 -0
  58. package/dist/commands/agent/list.d.ts +4 -3
  59. package/dist/commands/agent/list.d.ts.map +1 -1
  60. package/dist/commands/agent/list.js +50 -37
  61. package/dist/commands/agent/list.js.map +1 -1
  62. package/dist/commands/agent/run.d.ts +3 -0
  63. package/dist/commands/agent/run.d.ts.map +1 -1
  64. package/dist/commands/agent/run.js +8 -3
  65. package/dist/commands/agent/run.js.map +1 -1
  66. package/dist/commands/agent/uninstall-schema.d.ts +89 -0
  67. package/dist/commands/agent/uninstall-schema.d.ts.map +1 -0
  68. package/dist/commands/agent/uninstall-schema.js +29 -0
  69. package/dist/commands/agent/uninstall-schema.js.map +1 -0
  70. package/dist/commands/agent/uninstall.d.ts +5 -1
  71. package/dist/commands/agent/uninstall.d.ts.map +1 -1
  72. package/dist/commands/agent/uninstall.js +50 -38
  73. package/dist/commands/agent/uninstall.js.map +1 -1
  74. package/dist/commands/agent/validate-schema.d.ts +129 -0
  75. package/dist/commands/agent/validate-schema.d.ts.map +1 -0
  76. package/dist/commands/agent/validate-schema.js +35 -0
  77. package/dist/commands/agent/validate-schema.js.map +1 -0
  78. package/dist/commands/agent/validate.d.ts +6 -0
  79. package/dist/commands/agent/validate.d.ts.map +1 -1
  80. package/dist/commands/agent/validate.js +64 -36
  81. package/dist/commands/agent/validate.js.map +1 -1
  82. package/dist/commands/ard/emit-schema.d.ts +108 -0
  83. package/dist/commands/ard/emit-schema.d.ts.map +1 -0
  84. package/dist/commands/ard/emit-schema.js +37 -0
  85. package/dist/commands/ard/emit-schema.js.map +1 -0
  86. package/dist/commands/ard/emit.d.ts +21 -65
  87. package/dist/commands/ard/emit.d.ts.map +1 -1
  88. package/dist/commands/ard/emit.js +68 -74
  89. package/dist/commands/ard/emit.js.map +1 -1
  90. package/dist/commands/ard/index.d.ts.map +1 -1
  91. package/dist/commands/ard/index.js +14 -11
  92. package/dist/commands/ard/index.js.map +1 -1
  93. package/dist/commands/audit/compat-lane-findings.d.ts +65 -0
  94. package/dist/commands/audit/compat-lane-findings.d.ts.map +1 -0
  95. package/dist/commands/audit/compat-lane-findings.js +72 -0
  96. package/dist/commands/audit/compat-lane-findings.js.map +1 -0
  97. package/dist/commands/audit/distributed-tree.d.ts +2 -2
  98. package/dist/commands/audit/distributed-tree.d.ts.map +1 -1
  99. package/dist/commands/audit/distributed-tree.js +23 -12
  100. package/dist/commands/audit/distributed-tree.js.map +1 -1
  101. package/dist/commands/audit/git-url-clone.d.ts +15 -7
  102. package/dist/commands/audit/git-url-clone.d.ts.map +1 -1
  103. package/dist/commands/audit/git-url-clone.js +85 -42
  104. package/dist/commands/audit/git-url-clone.js.map +1 -1
  105. package/dist/commands/audit/hierarchical-output.d.ts +28 -4
  106. package/dist/commands/audit/hierarchical-output.d.ts.map +1 -1
  107. package/dist/commands/audit/hierarchical-output.js +44 -27
  108. package/dist/commands/audit/hierarchical-output.js.map +1 -1
  109. package/dist/commands/audit/scan-population.d.ts.map +1 -1
  110. package/dist/commands/audit/scan-population.js +2 -1
  111. package/dist/commands/audit/scan-population.js.map +1 -1
  112. package/dist/commands/audit-schema.d.ts +1247 -0
  113. package/dist/commands/audit-schema.d.ts.map +1 -0
  114. package/dist/commands/audit-schema.js +139 -0
  115. package/dist/commands/audit-schema.js.map +1 -0
  116. package/dist/commands/audit-settings-schema.d.ts +417 -0
  117. package/dist/commands/audit-settings-schema.d.ts.map +1 -0
  118. package/dist/commands/audit-settings-schema.js +77 -0
  119. package/dist/commands/audit-settings-schema.js.map +1 -0
  120. package/dist/commands/audit-settings.d.ts +28 -9
  121. package/dist/commands/audit-settings.d.ts.map +1 -1
  122. package/dist/commands/audit-settings.js +215 -151
  123. package/dist/commands/audit-settings.js.map +1 -1
  124. package/dist/commands/audit.d.ts +72 -33
  125. package/dist/commands/audit.d.ts.map +1 -1
  126. package/dist/commands/audit.js +405 -411
  127. package/dist/commands/audit.js.map +1 -1
  128. package/dist/commands/build.d.ts +61 -4
  129. package/dist/commands/build.d.ts.map +1 -1
  130. package/dist/commands/build.js +176 -190
  131. package/dist/commands/build.js.map +1 -1
  132. package/dist/commands/cache/clear-schema.d.ts +111 -0
  133. package/dist/commands/cache/clear-schema.d.ts.map +1 -0
  134. package/dist/commands/cache/clear-schema.js +37 -0
  135. package/dist/commands/cache/clear-schema.js.map +1 -0
  136. package/dist/commands/cache/clear.d.ts +28 -26
  137. package/dist/commands/cache/clear.d.ts.map +1 -1
  138. package/dist/commands/cache/clear.js +108 -103
  139. package/dist/commands/cache/clear.js.map +1 -1
  140. package/dist/commands/cache/index.d.ts.map +1 -1
  141. package/dist/commands/cache/index.js +13 -7
  142. package/dist/commands/cache/index.js.map +1 -1
  143. package/dist/commands/claude/claude-config.d.ts +23 -6
  144. package/dist/commands/claude/claude-config.d.ts.map +1 -1
  145. package/dist/commands/claude/claude-config.js +29 -15
  146. package/dist/commands/claude/claude-config.js.map +1 -1
  147. package/dist/commands/claude/context.d.ts +55 -2
  148. package/dist/commands/claude/context.d.ts.map +1 -1
  149. package/dist/commands/claude/context.js +74 -50
  150. package/dist/commands/claude/context.js.map +1 -1
  151. package/dist/commands/claude/marketplace/changelog-utils.js +2 -2
  152. package/dist/commands/claude/marketplace/changelog-utils.js.map +1 -1
  153. package/dist/commands/claude/marketplace/git-publish.d.ts +14 -1
  154. package/dist/commands/claude/marketplace/git-publish.d.ts.map +1 -1
  155. package/dist/commands/claude/marketplace/git-publish.js +135 -68
  156. package/dist/commands/claude/marketplace/git-publish.js.map +1 -1
  157. package/dist/commands/claude/marketplace/license-utils.d.ts +3 -5
  158. package/dist/commands/claude/marketplace/license-utils.d.ts.map +1 -1
  159. package/dist/commands/claude/marketplace/license-utils.js +16 -7
  160. package/dist/commands/claude/marketplace/license-utils.js.map +1 -1
  161. package/dist/commands/claude/marketplace/publish-schema.d.ts +137 -0
  162. package/dist/commands/claude/marketplace/publish-schema.d.ts.map +1 -0
  163. package/dist/commands/claude/marketplace/publish-schema.js +32 -0
  164. package/dist/commands/claude/marketplace/publish-schema.js.map +1 -0
  165. package/dist/commands/claude/marketplace/publish-tree.d.ts +6 -0
  166. package/dist/commands/claude/marketplace/publish-tree.d.ts.map +1 -1
  167. package/dist/commands/claude/marketplace/publish-tree.js +75 -17
  168. package/dist/commands/claude/marketplace/publish-tree.js.map +1 -1
  169. package/dist/commands/claude/marketplace/publish.d.ts +27 -0
  170. package/dist/commands/claude/marketplace/publish.d.ts.map +1 -1
  171. package/dist/commands/claude/marketplace/publish.js +84 -50
  172. package/dist/commands/claude/marketplace/publish.js.map +1 -1
  173. package/dist/commands/claude/marketplace/validate-schema.d.ts +362 -0
  174. package/dist/commands/claude/marketplace/validate-schema.d.ts.map +1 -0
  175. package/dist/commands/claude/marketplace/validate-schema.js +67 -0
  176. package/dist/commands/claude/marketplace/validate-schema.js.map +1 -0
  177. package/dist/commands/claude/marketplace/validate.d.ts +40 -53
  178. package/dist/commands/claude/marketplace/validate.d.ts.map +1 -1
  179. package/dist/commands/claude/marketplace/validate.js +358 -214
  180. package/dist/commands/claude/marketplace/validate.js.map +1 -1
  181. package/dist/commands/claude/org/api-keys.d.ts +3 -0
  182. package/dist/commands/claude/org/api-keys.d.ts.map +1 -1
  183. package/dist/commands/claude/org/api-keys.js +4 -5
  184. package/dist/commands/claude/org/api-keys.js.map +1 -1
  185. package/dist/commands/claude/org/code-analytics.js +1 -1
  186. package/dist/commands/claude/org/code-analytics.js.map +1 -1
  187. package/dist/commands/claude/org/cost.d.ts.map +1 -1
  188. package/dist/commands/claude/org/cost.js +11 -33
  189. package/dist/commands/claude/org/cost.js.map +1 -1
  190. package/dist/commands/claude/org/helpers.d.ts +40 -27
  191. package/dist/commands/claude/org/helpers.d.ts.map +1 -1
  192. package/dist/commands/claude/org/helpers.js +61 -66
  193. package/dist/commands/claude/org/helpers.js.map +1 -1
  194. package/dist/commands/claude/org/index.d.ts.map +1 -1
  195. package/dist/commands/claude/org/index.js +10 -4
  196. package/dist/commands/claude/org/index.js.map +1 -1
  197. package/dist/commands/claude/org/info.d.ts.map +1 -1
  198. package/dist/commands/claude/org/info.js +2 -3
  199. package/dist/commands/claude/org/info.js.map +1 -1
  200. package/dist/commands/claude/org/invites.d.ts +3 -0
  201. package/dist/commands/claude/org/invites.d.ts.map +1 -1
  202. package/dist/commands/claude/org/invites.js +5 -7
  203. package/dist/commands/claude/org/invites.js.map +1 -1
  204. package/dist/commands/claude/org/skills.d.ts +76 -21
  205. package/dist/commands/claude/org/skills.d.ts.map +1 -1
  206. package/dist/commands/claude/org/skills.js +273 -246
  207. package/dist/commands/claude/org/skills.js.map +1 -1
  208. package/dist/commands/claude/org/stubs-schema.d.ts +56 -0
  209. package/dist/commands/claude/org/stubs-schema.d.ts.map +1 -0
  210. package/dist/commands/claude/org/stubs-schema.js +23 -0
  211. package/dist/commands/claude/org/stubs-schema.js.map +1 -0
  212. package/dist/commands/claude/org/stubs.d.ts +8 -3
  213. package/dist/commands/claude/org/stubs.d.ts.map +1 -1
  214. package/dist/commands/claude/org/stubs.js +9 -9
  215. package/dist/commands/claude/org/stubs.js.map +1 -1
  216. package/dist/commands/claude/org/usage.d.ts.map +1 -1
  217. package/dist/commands/claude/org/usage.js +1 -2
  218. package/dist/commands/claude/org/usage.js.map +1 -1
  219. package/dist/commands/claude/org/users.d.ts +3 -0
  220. package/dist/commands/claude/org/users.d.ts.map +1 -1
  221. package/dist/commands/claude/org/users.js +6 -8
  222. package/dist/commands/claude/org/users.js.map +1 -1
  223. package/dist/commands/claude/org/workspaces.d.ts +3 -0
  224. package/dist/commands/claude/org/workspaces.d.ts.map +1 -1
  225. package/dist/commands/claude/org/workspaces.js +10 -15
  226. package/dist/commands/claude/org/workspaces.js.map +1 -1
  227. package/dist/commands/claude/plugin/build-schema.d.ts +642 -0
  228. package/dist/commands/claude/plugin/build-schema.d.ts.map +1 -0
  229. package/dist/commands/claude/plugin/build-schema.js +51 -0
  230. package/dist/commands/claude/plugin/build-schema.js.map +1 -0
  231. package/dist/commands/claude/plugin/build.d.ts +220 -45
  232. package/dist/commands/claude/plugin/build.d.ts.map +1 -1
  233. package/dist/commands/claude/plugin/build.js +466 -249
  234. package/dist/commands/claude/plugin/build.js.map +1 -1
  235. package/dist/commands/claude/plugin/helpers.d.ts +186 -24
  236. package/dist/commands/claude/plugin/helpers.d.ts.map +1 -1
  237. package/dist/commands/claude/plugin/helpers.js +110 -68
  238. package/dist/commands/claude/plugin/helpers.js.map +1 -1
  239. package/dist/commands/claude/plugin/install-schema.d.ts +144 -0
  240. package/dist/commands/claude/plugin/install-schema.d.ts.map +1 -0
  241. package/dist/commands/claude/plugin/install-schema.js +36 -0
  242. package/dist/commands/claude/plugin/install-schema.js.map +1 -0
  243. package/dist/commands/claude/plugin/install.d.ts +191 -11
  244. package/dist/commands/claude/plugin/install.d.ts.map +1 -1
  245. package/dist/commands/claude/plugin/install.js +688 -628
  246. package/dist/commands/claude/plugin/install.js.map +1 -1
  247. package/dist/commands/claude/plugin/kept-findings.d.ts +19 -0
  248. package/dist/commands/claude/plugin/kept-findings.d.ts.map +1 -0
  249. package/dist/commands/claude/plugin/kept-findings.js +24 -0
  250. package/dist/commands/claude/plugin/kept-findings.js.map +1 -0
  251. package/dist/commands/claude/plugin/list-schema.d.ts +223 -0
  252. package/dist/commands/claude/plugin/list-schema.d.ts.map +1 -0
  253. package/dist/commands/claude/plugin/list-schema.js +34 -0
  254. package/dist/commands/claude/plugin/list-schema.js.map +1 -0
  255. package/dist/commands/claude/plugin/list.d.ts +18 -0
  256. package/dist/commands/claude/plugin/list.d.ts.map +1 -1
  257. package/dist/commands/claude/plugin/list.js +53 -45
  258. package/dist/commands/claude/plugin/list.js.map +1 -1
  259. package/dist/commands/claude/plugin/npm-pack.d.ts +15 -0
  260. package/dist/commands/claude/plugin/npm-pack.d.ts.map +1 -0
  261. package/dist/commands/claude/plugin/npm-pack.js +39 -0
  262. package/dist/commands/claude/plugin/npm-pack.js.map +1 -0
  263. package/dist/commands/claude/plugin/plugin-changelog.d.ts +5 -1
  264. package/dist/commands/claude/plugin/plugin-changelog.d.ts.map +1 -1
  265. package/dist/commands/claude/plugin/plugin-changelog.js +9 -5
  266. package/dist/commands/claude/plugin/plugin-changelog.js.map +1 -1
  267. package/dist/commands/claude/plugin/plugin-files.d.ts +21 -2
  268. package/dist/commands/claude/plugin/plugin-files.d.ts.map +1 -1
  269. package/dist/commands/claude/plugin/plugin-files.js +65 -32
  270. package/dist/commands/claude/plugin/plugin-files.js.map +1 -1
  271. package/dist/commands/claude/plugin/plugin-validators.d.ts +13 -0
  272. package/dist/commands/claude/plugin/plugin-validators.d.ts.map +1 -1
  273. package/dist/commands/claude/plugin/plugin-validators.js +64 -16
  274. package/dist/commands/claude/plugin/plugin-validators.js.map +1 -1
  275. package/dist/commands/claude/plugin/tree-copy.d.ts.map +1 -1
  276. package/dist/commands/claude/plugin/tree-copy.js +63 -37
  277. package/dist/commands/claude/plugin/tree-copy.js.map +1 -1
  278. package/dist/commands/claude/plugin/uninstall-schema.d.ts +112 -0
  279. package/dist/commands/claude/plugin/uninstall-schema.d.ts.map +1 -0
  280. package/dist/commands/claude/plugin/uninstall-schema.js +28 -0
  281. package/dist/commands/claude/plugin/uninstall-schema.js.map +1 -0
  282. package/dist/commands/claude/plugin/uninstall.d.ts +57 -0
  283. package/dist/commands/claude/plugin/uninstall.d.ts.map +1 -1
  284. package/dist/commands/claude/plugin/uninstall.js +176 -64
  285. package/dist/commands/claude/plugin/uninstall.js.map +1 -1
  286. package/dist/commands/consistency-check.d.ts.map +1 -1
  287. package/dist/commands/consistency-check.js +8 -6
  288. package/dist/commands/consistency-check.js.map +1 -1
  289. package/dist/commands/corpus/index.d.ts.map +1 -1
  290. package/dist/commands/corpus/index.js +26 -10
  291. package/dist/commands/corpus/index.js.map +1 -1
  292. package/dist/commands/corpus/report.d.ts +34 -16
  293. package/dist/commands/corpus/report.d.ts.map +1 -1
  294. package/dist/commands/corpus/report.js +36 -18
  295. package/dist/commands/corpus/report.js.map +1 -1
  296. package/dist/commands/corpus/runner.d.ts +25 -20
  297. package/dist/commands/corpus/runner.d.ts.map +1 -1
  298. package/dist/commands/corpus/runner.js +123 -67
  299. package/dist/commands/corpus/runner.js.map +1 -1
  300. package/dist/commands/corpus/scan-schema.d.ts +127 -0
  301. package/dist/commands/corpus/scan-schema.d.ts.map +1 -0
  302. package/dist/commands/corpus/scan-schema.js +31 -0
  303. package/dist/commands/corpus/scan-schema.js.map +1 -0
  304. package/dist/commands/corpus/scan.d.ts +31 -0
  305. package/dist/commands/corpus/scan.d.ts.map +1 -1
  306. package/dist/commands/corpus/scan.js +124 -50
  307. package/dist/commands/corpus/scan.js.map +1 -1
  308. package/dist/commands/corpus/seed.d.ts +11 -8
  309. package/dist/commands/corpus/seed.d.ts.map +1 -1
  310. package/dist/commands/corpus/seed.js +29 -11
  311. package/dist/commands/corpus/seed.js.map +1 -1
  312. package/dist/commands/doctor-render.d.ts +52 -0
  313. package/dist/commands/doctor-render.d.ts.map +1 -0
  314. package/dist/commands/doctor-render.js +110 -0
  315. package/dist/commands/doctor-render.js.map +1 -0
  316. package/dist/commands/doctor-schema.d.ts +191 -0
  317. package/dist/commands/doctor-schema.d.ts.map +1 -0
  318. package/dist/commands/doctor-schema.js +44 -0
  319. package/dist/commands/doctor-schema.js.map +1 -0
  320. package/dist/commands/doctor.d.ts +7 -62
  321. package/dist/commands/doctor.d.ts.map +1 -1
  322. package/dist/commands/doctor.js +126 -165
  323. package/dist/commands/doctor.js.map +1 -1
  324. package/dist/commands/inventory-schema.d.ts +7297 -0
  325. package/dist/commands/inventory-schema.d.ts.map +1 -0
  326. package/dist/commands/inventory-schema.js +28 -0
  327. package/dist/commands/inventory-schema.js.map +1 -0
  328. package/dist/commands/inventory.d.ts +1 -1
  329. package/dist/commands/inventory.d.ts.map +1 -1
  330. package/dist/commands/inventory.js +89 -41
  331. package/dist/commands/inventory.js.map +1 -1
  332. package/dist/commands/mcp/index.d.ts.map +1 -1
  333. package/dist/commands/mcp/index.js +15 -0
  334. package/dist/commands/mcp/index.js.map +1 -1
  335. package/dist/commands/mcp/list-collections-schema.d.ts +101 -0
  336. package/dist/commands/mcp/list-collections-schema.d.ts.map +1 -0
  337. package/dist/commands/mcp/list-collections-schema.js +22 -0
  338. package/dist/commands/mcp/list-collections-schema.js.map +1 -0
  339. package/dist/commands/mcp/list-collections.d.ts +1 -1
  340. package/dist/commands/mcp/list-collections.d.ts.map +1 -1
  341. package/dist/commands/mcp/list-collections.js +19 -17
  342. package/dist/commands/mcp/list-collections.js.map +1 -1
  343. package/dist/commands/mcp/serve.d.ts +5 -0
  344. package/dist/commands/mcp/serve.d.ts.map +1 -1
  345. package/dist/commands/mcp/serve.js +29 -15
  346. package/dist/commands/mcp/serve.js.map +1 -1
  347. package/dist/commands/okf/index.d.ts.map +1 -1
  348. package/dist/commands/okf/index.js +6 -5
  349. package/dist/commands/okf/index.js.map +1 -1
  350. package/dist/commands/okf/validate-schema.d.ts +171 -0
  351. package/dist/commands/okf/validate-schema.d.ts.map +1 -0
  352. package/dist/commands/okf/validate-schema.js +44 -0
  353. package/dist/commands/okf/validate-schema.js.map +1 -0
  354. package/dist/commands/okf/validate.d.ts +16 -149
  355. package/dist/commands/okf/validate.d.ts.map +1 -1
  356. package/dist/commands/okf/validate.js +64 -62
  357. package/dist/commands/okf/validate.js.map +1 -1
  358. package/dist/commands/orchestrator-schema.d.ts +419 -0
  359. package/dist/commands/orchestrator-schema.d.ts.map +1 -0
  360. package/dist/commands/orchestrator-schema.js +91 -0
  361. package/dist/commands/orchestrator-schema.js.map +1 -0
  362. package/dist/commands/phase-utils.d.ts +188 -220
  363. package/dist/commands/phase-utils.d.ts.map +1 -1
  364. package/dist/commands/phase-utils.js +210 -258
  365. package/dist/commands/phase-utils.js.map +1 -1
  366. package/dist/commands/positional-args.d.ts +13 -11
  367. package/dist/commands/positional-args.d.ts.map +1 -1
  368. package/dist/commands/positional-args.js +16 -15
  369. package/dist/commands/positional-args.js.map +1 -1
  370. package/dist/commands/rag/admin-schema.d.ts +152 -0
  371. package/dist/commands/rag/admin-schema.d.ts.map +1 -0
  372. package/dist/commands/rag/admin-schema.js +31 -0
  373. package/dist/commands/rag/admin-schema.js.map +1 -0
  374. package/dist/commands/rag/clear-command.d.ts.map +1 -1
  375. package/dist/commands/rag/clear-command.js +30 -15
  376. package/dist/commands/rag/clear-command.js.map +1 -1
  377. package/dist/commands/rag/command-helpers.d.ts +31 -7
  378. package/dist/commands/rag/command-helpers.d.ts.map +1 -1
  379. package/dist/commands/rag/command-helpers.js +41 -21
  380. package/dist/commands/rag/command-helpers.js.map +1 -1
  381. package/dist/commands/rag/index-command.d.ts +37 -48
  382. package/dist/commands/rag/index-command.d.ts.map +1 -1
  383. package/dist/commands/rag/index-command.js +80 -65
  384. package/dist/commands/rag/index-command.js.map +1 -1
  385. package/dist/commands/rag/index-schema.d.ts +107 -0
  386. package/dist/commands/rag/index-schema.d.ts.map +1 -0
  387. package/dist/commands/rag/index-schema.js +34 -0
  388. package/dist/commands/rag/index-schema.js.map +1 -0
  389. package/dist/commands/rag/index.d.ts.map +1 -1
  390. package/dist/commands/rag/index.js +88 -41
  391. package/dist/commands/rag/index.js.map +1 -1
  392. package/dist/commands/rag/query-command.d.ts +18 -4
  393. package/dist/commands/rag/query-command.d.ts.map +1 -1
  394. package/dist/commands/rag/query-command.js +42 -27
  395. package/dist/commands/rag/query-command.js.map +1 -1
  396. package/dist/commands/rag/query-schema.d.ts +363 -0
  397. package/dist/commands/rag/query-schema.d.ts.map +1 -0
  398. package/dist/commands/rag/query-schema.js +59 -0
  399. package/dist/commands/rag/query-schema.js.map +1 -0
  400. package/dist/commands/rag/stats-command.d.ts.map +1 -1
  401. package/dist/commands/rag/stats-command.js +19 -18
  402. package/dist/commands/rag/stats-command.js.map +1 -1
  403. package/dist/commands/resources/check-progress.d.ts +64 -11
  404. package/dist/commands/resources/check-progress.d.ts.map +1 -1
  405. package/dist/commands/resources/check-progress.js +77 -4
  406. package/dist/commands/resources/check-progress.js.map +1 -1
  407. package/dist/commands/resources/check-schema.d.ts +335 -0
  408. package/dist/commands/resources/check-schema.d.ts.map +1 -0
  409. package/dist/commands/resources/check-schema.js +104 -0
  410. package/dist/commands/resources/check-schema.js.map +1 -0
  411. package/dist/commands/resources/check-supervisor.d.ts +315 -71
  412. package/dist/commands/resources/check-supervisor.d.ts.map +1 -1
  413. package/dist/commands/resources/check-supervisor.js +493 -107
  414. package/dist/commands/resources/check-supervisor.js.map +1 -1
  415. package/dist/commands/resources/check.d.ts +56 -249
  416. package/dist/commands/resources/check.d.ts.map +1 -1
  417. package/dist/commands/resources/check.js +416 -276
  418. package/dist/commands/resources/check.js.map +1 -1
  419. package/dist/commands/resources/index.d.ts.map +1 -1
  420. package/dist/commands/resources/index.js +165 -91
  421. package/dist/commands/resources/index.js.map +1 -1
  422. package/dist/commands/resources/query-schema.d.ts +188 -0
  423. package/dist/commands/resources/query-schema.d.ts.map +1 -0
  424. package/dist/commands/resources/query-schema.js +48 -0
  425. package/dist/commands/resources/query-schema.js.map +1 -0
  426. package/dist/commands/resources/query.d.ts +17 -12
  427. package/dist/commands/resources/query.d.ts.map +1 -1
  428. package/dist/commands/resources/query.js +60 -48
  429. package/dist/commands/resources/query.js.map +1 -1
  430. package/dist/commands/resources/scan-schema.d.ts +195 -0
  431. package/dist/commands/resources/scan-schema.d.ts.map +1 -0
  432. package/dist/commands/resources/scan-schema.js +53 -0
  433. package/dist/commands/resources/scan-schema.js.map +1 -0
  434. package/dist/commands/resources/scan.d.ts +26 -3
  435. package/dist/commands/resources/scan.d.ts.map +1 -1
  436. package/dist/commands/resources/scan.js +51 -53
  437. package/dist/commands/resources/scan.js.map +1 -1
  438. package/dist/commands/resources/validate-schema.d.ts +326 -0
  439. package/dist/commands/resources/validate-schema.d.ts.map +1 -0
  440. package/dist/commands/resources/validate-schema.js +60 -0
  441. package/dist/commands/resources/validate-schema.js.map +1 -0
  442. package/dist/commands/resources/validate.d.ts +45 -169
  443. package/dist/commands/resources/validate.d.ts.map +1 -1
  444. package/dist/commands/resources/validate.js +221 -485
  445. package/dist/commands/resources/validate.js.map +1 -1
  446. package/dist/commands/skill/review-checklist.d.ts.map +1 -1
  447. package/dist/commands/skill/review-checklist.js +0 -1
  448. package/dist/commands/skill/review-checklist.js.map +1 -1
  449. package/dist/commands/skill/review-schema.d.ts +278 -0
  450. package/dist/commands/skill/review-schema.d.ts.map +1 -0
  451. package/dist/commands/skill/review-schema.js +46 -0
  452. package/dist/commands/skill/review-schema.js.map +1 -0
  453. package/dist/commands/skill/review.d.ts +8 -234
  454. package/dist/commands/skill/review.d.ts.map +1 -1
  455. package/dist/commands/skill/review.js +54 -78
  456. package/dist/commands/skill/review.js.map +1 -1
  457. package/dist/commands/skill/test/auth-flags.d.ts +3 -0
  458. package/dist/commands/skill/test/auth-flags.d.ts.map +1 -1
  459. package/dist/commands/skill/test/auth-flags.js +6 -2
  460. package/dist/commands/skill/test/auth-flags.js.map +1 -1
  461. package/dist/commands/skill/test/configure-schema.d.ts +67 -0
  462. package/dist/commands/skill/test/configure-schema.d.ts.map +1 -0
  463. package/dist/commands/skill/test/configure-schema.js +27 -0
  464. package/dist/commands/skill/test/configure-schema.js.map +1 -0
  465. package/dist/commands/skill/test/configure.d.ts +12 -5
  466. package/dist/commands/skill/test/configure.d.ts.map +1 -1
  467. package/dist/commands/skill/test/configure.js +101 -31
  468. package/dist/commands/skill/test/configure.js.map +1 -1
  469. package/dist/commands/skill/test/run-schema.d.ts +107 -0
  470. package/dist/commands/skill/test/run-schema.d.ts.map +1 -0
  471. package/dist/commands/skill/test/run-schema.js +36 -0
  472. package/dist/commands/skill/test/run-schema.js.map +1 -0
  473. package/dist/commands/skill/test/run.d.ts +3 -2
  474. package/dist/commands/skill/test/run.d.ts.map +1 -1
  475. package/dist/commands/skill/test/run.js +316 -155
  476. package/dist/commands/skill/test/run.js.map +1 -1
  477. package/dist/commands/skills/build-schema.d.ts +199 -0
  478. package/dist/commands/skills/build-schema.d.ts.map +1 -0
  479. package/dist/commands/skills/build-schema.js +55 -0
  480. package/dist/commands/skills/build-schema.js.map +1 -0
  481. package/dist/commands/skills/build.d.ts +95 -298
  482. package/dist/commands/skills/build.d.ts.map +1 -1
  483. package/dist/commands/skills/build.js +415 -818
  484. package/dist/commands/skills/build.js.map +1 -1
  485. package/dist/commands/skills/command-helpers.d.ts +5 -11
  486. package/dist/commands/skills/command-helpers.d.ts.map +1 -1
  487. package/dist/commands/skills/command-helpers.js +7 -17
  488. package/dist/commands/skills/command-helpers.js.map +1 -1
  489. package/dist/commands/skills/index.js +12 -6
  490. package/dist/commands/skills/index.js.map +1 -1
  491. package/dist/commands/skills/install-schema.d.ts +153 -0
  492. package/dist/commands/skills/install-schema.d.ts.map +1 -0
  493. package/dist/commands/skills/install-schema.js +44 -0
  494. package/dist/commands/skills/install-schema.js.map +1 -0
  495. package/dist/commands/skills/install.d.ts +76 -8
  496. package/dist/commands/skills/install.d.ts.map +1 -1
  497. package/dist/commands/skills/install.js +230 -194
  498. package/dist/commands/skills/install.js.map +1 -1
  499. package/dist/commands/skills/list-schema.d.ts +145 -0
  500. package/dist/commands/skills/list-schema.d.ts.map +1 -0
  501. package/dist/commands/skills/list-schema.js +37 -0
  502. package/dist/commands/skills/list-schema.js.map +1 -0
  503. package/dist/commands/skills/list.d.ts +39 -8
  504. package/dist/commands/skills/list.d.ts.map +1 -1
  505. package/dist/commands/skills/list.js +110 -122
  506. package/dist/commands/skills/list.js.map +1 -1
  507. package/dist/commands/skills/package-schema.d.ts +98 -0
  508. package/dist/commands/skills/package-schema.d.ts.map +1 -0
  509. package/dist/commands/skills/package-schema.js +32 -0
  510. package/dist/commands/skills/package-schema.js.map +1 -0
  511. package/dist/commands/skills/package.d.ts +85 -14
  512. package/dist/commands/skills/package.d.ts.map +1 -1
  513. package/dist/commands/skills/package.js +288 -207
  514. package/dist/commands/skills/package.js.map +1 -1
  515. package/dist/commands/skills/scope-guard.d.ts +27 -20
  516. package/dist/commands/skills/scope-guard.d.ts.map +1 -1
  517. package/dist/commands/skills/scope-guard.js +43 -32
  518. package/dist/commands/skills/scope-guard.js.map +1 -1
  519. package/dist/commands/skills/skill-discovery.d.ts +1 -1
  520. package/dist/commands/skills/skill-discovery.d.ts.map +1 -1
  521. package/dist/commands/skills/skill-discovery.js +40 -19
  522. package/dist/commands/skills/skill-discovery.js.map +1 -1
  523. package/dist/commands/skills/source-resolvers.d.ts +58 -8
  524. package/dist/commands/skills/source-resolvers.d.ts.map +1 -1
  525. package/dist/commands/skills/source-resolvers.js +113 -38
  526. package/dist/commands/skills/source-resolvers.js.map +1 -1
  527. package/dist/commands/skills/validate-command.d.ts.map +1 -1
  528. package/dist/commands/skills/validate-command.js +31 -51
  529. package/dist/commands/skills/validate-command.js.map +1 -1
  530. package/dist/commands/skills/validate-schema.d.ts +199 -0
  531. package/dist/commands/skills/validate-schema.d.ts.map +1 -0
  532. package/dist/commands/skills/validate-schema.js +44 -0
  533. package/dist/commands/skills/validate-schema.js.map +1 -0
  534. package/dist/commands/skills/validate.d.ts +100 -136
  535. package/dist/commands/skills/validate.d.ts.map +1 -1
  536. package/dist/commands/skills/validate.js +257 -343
  537. package/dist/commands/skills/validate.js.map +1 -1
  538. package/dist/commands/validate.d.ts +17 -5
  539. package/dist/commands/validate.d.ts.map +1 -1
  540. package/dist/commands/validate.js +139 -94
  541. package/dist/commands/validate.js.map +1 -1
  542. package/dist/commands/verify.d.ts +121 -110
  543. package/dist/commands/verify.d.ts.map +1 -1
  544. package/dist/commands/verify.js +230 -294
  545. package/dist/commands/verify.js.map +1 -1
  546. package/dist/index.d.ts +1 -1
  547. package/dist/index.d.ts.map +1 -1
  548. package/dist/index.js +1 -1
  549. package/dist/index.js.map +1 -1
  550. package/dist/report-schemas.d.ts +12398 -35
  551. package/dist/report-schemas.d.ts.map +1 -1
  552. package/dist/report-schemas.js +624 -66
  553. package/dist/report-schemas.js.map +1 -1
  554. package/dist/skill-resolution/packaging-config.js +2 -2
  555. package/dist/skill-resolution/packaging-config.js.map +1 -1
  556. package/dist/skill-resolution/resolve-skill-reference.d.ts.map +1 -1
  557. package/dist/skill-resolution/resolve-skill-reference.js +20 -13
  558. package/dist/skill-resolution/resolve-skill-reference.js.map +1 -1
  559. package/dist/utils/agent-discovery.d.ts +34 -1
  560. package/dist/utils/agent-discovery.d.ts.map +1 -1
  561. package/dist/utils/agent-discovery.js +80 -38
  562. package/dist/utils/agent-discovery.js.map +1 -1
  563. package/dist/utils/claude-context-lens.d.ts +13 -6
  564. package/dist/utils/claude-context-lens.d.ts.map +1 -1
  565. package/dist/utils/claude-context-lens.js +11 -12
  566. package/dist/utils/claude-context-lens.js.map +1 -1
  567. package/dist/utils/command-error-codes.d.ts +12 -0
  568. package/dist/utils/command-error-codes.d.ts.map +1 -0
  569. package/dist/utils/command-error-codes.js +12 -0
  570. package/dist/utils/command-error-codes.js.map +1 -0
  571. package/dist/utils/command-refusal.d.ts +58 -0
  572. package/dist/utils/command-refusal.d.ts.map +1 -0
  573. package/dist/utils/command-refusal.js +170 -0
  574. package/dist/utils/command-refusal.js.map +1 -0
  575. package/dist/utils/commander-ending.d.ts +40 -0
  576. package/dist/utils/commander-ending.d.ts.map +1 -0
  577. package/dist/utils/commander-ending.js +42 -0
  578. package/dist/utils/commander-ending.js.map +1 -0
  579. package/dist/utils/config-loader.d.ts +13 -8
  580. package/dist/utils/config-loader.d.ts.map +1 -1
  581. package/dist/utils/config-loader.js +84 -45
  582. package/dist/utils/config-loader.js.map +1 -1
  583. package/dist/utils/corpus-target.d.ts +1 -1
  584. package/dist/utils/corpus-target.d.ts.map +1 -1
  585. package/dist/utils/corpus-target.js +6 -4
  586. package/dist/utils/corpus-target.js.map +1 -1
  587. package/dist/utils/debug-diagnostics.d.ts +18 -0
  588. package/dist/utils/debug-diagnostics.d.ts.map +1 -0
  589. package/dist/utils/debug-diagnostics.js +23 -0
  590. package/dist/utils/debug-diagnostics.js.map +1 -0
  591. package/dist/utils/document-writer.d.ts +191 -0
  592. package/dist/utils/document-writer.d.ts.map +1 -0
  593. package/dist/utils/document-writer.js +319 -0
  594. package/dist/utils/document-writer.js.map +1 -0
  595. package/dist/utils/help-loader.d.ts +2 -2
  596. package/dist/utils/help-loader.js +2 -2
  597. package/dist/utils/install-plan.d.ts +99 -0
  598. package/dist/utils/install-plan.d.ts.map +1 -0
  599. package/dist/utils/install-plan.js +146 -0
  600. package/dist/utils/install-plan.js.map +1 -0
  601. package/dist/utils/issue-anchor.d.ts +1 -1
  602. package/dist/utils/issue-anchor.d.ts.map +1 -1
  603. package/dist/utils/issue-anchor.js.map +1 -1
  604. package/dist/utils/issue-rendering.d.ts +8 -3
  605. package/dist/utils/issue-rendering.d.ts.map +1 -1
  606. package/dist/utils/issue-rendering.js +4 -0
  607. package/dist/utils/issue-rendering.js.map +1 -1
  608. package/dist/utils/lens-population.d.ts +20 -0
  609. package/dist/utils/lens-population.d.ts.map +1 -0
  610. package/dist/utils/lens-population.js +15 -0
  611. package/dist/utils/lens-population.js.map +1 -0
  612. package/dist/utils/marketplace-io.d.ts +63 -0
  613. package/dist/utils/marketplace-io.d.ts.map +1 -0
  614. package/dist/utils/marketplace-io.js +63 -0
  615. package/dist/utils/marketplace-io.js.map +1 -0
  616. package/dist/utils/operator-notices.d.ts +97 -0
  617. package/dist/utils/operator-notices.d.ts.map +1 -0
  618. package/dist/utils/operator-notices.js +115 -0
  619. package/dist/utils/operator-notices.js.map +1 -0
  620. package/dist/utils/optional-backend.d.ts +18 -15
  621. package/dist/utils/optional-backend.d.ts.map +1 -1
  622. package/dist/utils/optional-backend.js +22 -33
  623. package/dist/utils/optional-backend.js.map +1 -1
  624. package/dist/utils/output.d.ts +5 -43
  625. package/dist/utils/output.d.ts.map +1 -1
  626. package/dist/utils/output.js +8 -63
  627. package/dist/utils/output.js.map +1 -1
  628. package/dist/utils/package-json.d.ts +3 -4
  629. package/dist/utils/package-json.d.ts.map +1 -1
  630. package/dist/utils/package-json.js +8 -8
  631. package/dist/utils/package-json.js.map +1 -1
  632. package/dist/utils/population-wiring.d.ts +31 -38
  633. package/dist/utils/population-wiring.d.ts.map +1 -1
  634. package/dist/utils/population-wiring.js +38 -32
  635. package/dist/utils/population-wiring.js.map +1 -1
  636. package/dist/utils/project-root-policy.d.ts +74 -1
  637. package/dist/utils/project-root-policy.d.ts.map +1 -1
  638. package/dist/utils/project-root-policy.js +146 -8
  639. package/dist/utils/project-root-policy.js.map +1 -1
  640. package/dist/utils/projection-lenses.d.ts +25 -7
  641. package/dist/utils/projection-lenses.d.ts.map +1 -1
  642. package/dist/utils/projection-lenses.js +20 -6
  643. package/dist/utils/projection-lenses.js.map +1 -1
  644. package/dist/utils/projection-query.d.ts +17 -10
  645. package/dist/utils/projection-query.d.ts.map +1 -1
  646. package/dist/utils/projection-query.js +47 -28
  647. package/dist/utils/projection-query.js.map +1 -1
  648. package/dist/utils/projection-store.d.ts +2 -2
  649. package/dist/utils/projection-store.d.ts.map +1 -1
  650. package/dist/utils/projection-store.js +74 -45
  651. package/dist/utils/projection-store.js.map +1 -1
  652. package/dist/utils/rag-database.d.ts +61 -0
  653. package/dist/utils/rag-database.d.ts.map +1 -0
  654. package/dist/utils/rag-database.js +178 -0
  655. package/dist/utils/rag-database.js.map +1 -0
  656. package/dist/utils/relation-limits.d.ts +7 -2
  657. package/dist/utils/relation-limits.d.ts.map +1 -1
  658. package/dist/utils/relation-limits.js +6 -1
  659. package/dist/utils/relation-limits.js.map +1 -1
  660. package/dist/utils/relativize-paths.d.ts +23 -0
  661. package/dist/utils/relativize-paths.d.ts.map +1 -1
  662. package/dist/utils/relativize-paths.js +32 -1
  663. package/dist/utils/relativize-paths.js.map +1 -1
  664. package/dist/utils/resource-loader.d.ts +76 -32
  665. package/dist/utils/resource-loader.d.ts.map +1 -1
  666. package/dist/utils/resource-loader.js +132 -66
  667. package/dist/utils/resource-loader.js.map +1 -1
  668. package/dist/utils/run-integrity.d.ts +64 -31
  669. package/dist/utils/run-integrity.d.ts.map +1 -1
  670. package/dist/utils/run-integrity.js +76 -35
  671. package/dist/utils/run-integrity.js.map +1 -1
  672. package/dist/utils/scope-locations.d.ts +7 -5
  673. package/dist/utils/scope-locations.d.ts.map +1 -1
  674. package/dist/utils/scope-locations.js +37 -12
  675. package/dist/utils/scope-locations.js.map +1 -1
  676. package/dist/utils/staging-dir.d.ts +7 -0
  677. package/dist/utils/staging-dir.d.ts.map +1 -0
  678. package/dist/utils/staging-dir.js +12 -0
  679. package/dist/utils/staging-dir.js.map +1 -0
  680. package/dist/utils/url-redact.d.ts +9 -0
  681. package/dist/utils/url-redact.d.ts.map +1 -1
  682. package/dist/utils/url-redact.js +13 -0
  683. package/dist/utils/url-redact.js.map +1 -1
  684. package/dist/utils/user-context-scanner.d.ts +3 -2
  685. package/dist/utils/user-context-scanner.d.ts.map +1 -1
  686. package/dist/utils/user-context-scanner.js +24 -4
  687. package/dist/utils/user-context-scanner.js.map +1 -1
  688. package/dist/utils/validate-help-files.d.ts.map +1 -1
  689. package/dist/utils/validate-help-files.js +8 -14
  690. package/dist/utils/validate-help-files.js.map +1 -1
  691. package/dist/utils/vat-bin-path.d.ts.map +1 -1
  692. package/dist/utils/vat-bin-path.js +3 -3
  693. package/dist/utils/vat-bin-path.js.map +1 -1
  694. package/dist/utils/verdict-helpers.d.ts.map +1 -1
  695. package/dist/utils/verdict-helpers.js +5 -5
  696. package/dist/utils/verdict-helpers.js.map +1 -1
  697. package/docs/agent.md +347 -2
  698. package/docs/audit.md +312 -89
  699. package/docs/doctor.md +65 -19
  700. package/docs/index.md +571 -20
  701. package/docs/mcp.md +64 -12
  702. package/docs/rag.md +176 -48
  703. package/docs/resources.md +257 -71
  704. package/docs/skill-test.md +148 -19
  705. package/docs/skills.md +459 -174
  706. package/package.json +16 -19
  707. package/schemas/agent-build.json +268 -0
  708. package/schemas/agent-import.json +252 -0
  709. package/schemas/agent-install.json +260 -0
  710. package/schemas/agent-installed.json +287 -0
  711. package/schemas/agent-list.json +279 -0
  712. package/schemas/agent-uninstall.json +260 -0
  713. package/schemas/agent-validate.json +279 -0
  714. package/schemas/ard-emit.json +224 -106
  715. package/schemas/audit-settings.json +472 -0
  716. package/schemas/audit.json +635 -0
  717. package/schemas/cache-clear.json +273 -0
  718. package/schemas/claude-marketplace-publish.json +286 -0
  719. package/schemas/claude-marketplace-validate.json +352 -0
  720. package/schemas/claude-org-not-implemented.json +239 -0
  721. package/schemas/claude-plugin-build.json +446 -0
  722. package/schemas/claude-plugin-install.json +291 -0
  723. package/schemas/claude-plugin-list.json +326 -0
  724. package/schemas/claude-plugin-uninstall.json +272 -0
  725. package/schemas/corpus-audit.json +635 -0
  726. package/schemas/corpus-scan.json +293 -0
  727. package/schemas/doctor.json +299 -0
  728. package/schemas/inventory.json +982 -0
  729. package/schemas/mcp-list-collections.json +268 -0
  730. package/schemas/okf-validate.json +224 -106
  731. package/schemas/orchestrator.json +299 -0
  732. package/schemas/rag-clear.json +253 -0
  733. package/schemas/rag-index.json +273 -0
  734. package/schemas/rag-query.json +365 -0
  735. package/schemas/rag-stats.json +269 -0
  736. package/schemas/resources-check.json +242 -108
  737. package/schemas/resources-query.json +333 -0
  738. package/schemas/resources-scan.json +321 -0
  739. package/schemas/resources-validate.json +332 -0
  740. package/schemas/skill-review.json +224 -106
  741. package/schemas/skill-test-configure.json +256 -0
  742. package/schemas/skill-test-run.json +296 -0
  743. package/schemas/skills-build.json +325 -0
  744. package/schemas/skills-install.json +287 -0
  745. package/schemas/skills-list.json +283 -0
  746. package/schemas/skills-package.json +270 -0
  747. package/schemas/skills-validate.json +285 -0
  748. package/dist/commands/skills/shared.d.ts +0 -29
  749. package/dist/commands/skills/shared.d.ts.map +0 -1
  750. package/dist/commands/skills/shared.js +0 -33
  751. package/dist/commands/skills/shared.js.map +0 -1
  752. package/dist/utils/command-error.d.ts +0 -194
  753. package/dist/utils/command-error.d.ts.map +0 -1
  754. package/dist/utils/command-error.js +0 -237
  755. package/dist/utils/command-error.js.map +0 -1
@@ -2,13 +2,19 @@
2
2
  * `vat audit settings` subcommand
3
3
  *
4
4
  * Shows effective merged Claude settings with provenance, or validates a specific file.
5
+ * Every mode publishes the report envelope through the one writer: `data.mode`
6
+ * says which mode ran, `findings` carry what is wrong (each with a registered
7
+ * `SETTINGS_*` code and the settings file as `location`), and `examined`
8
+ * counts the settings documents read.
5
9
  */
6
- import { type ProvenanceValue, type RuleConflict, type SettingsFinding, type SettingsPathEntry } from '@vibe-agent-toolkit/claude-marketplace';
10
+ import { type ProvenanceValue, type RuleConflict, type SettingsPathEntry } from '@vibe-agent-toolkit/claude-marketplace';
11
+ import { type Finding } from '@vibe-agent-toolkit/schema';
7
12
  import { Command } from 'commander';
13
+ import type { AuditSettingsData } from './audit-settings-schema.js';
8
14
  export interface AuditSettingsOptions {
9
15
  showPaths?: boolean;
10
16
  file?: string;
11
- type?: 'managed' | 'user' | 'project';
17
+ type?: string;
12
18
  debug?: boolean;
13
19
  }
14
20
  /** A formatted provenance value; `overrode` recurses down the whole chain. */
@@ -27,27 +33,40 @@ export interface FormattedProvenanceValue {
27
33
  * layer made a project override look like the only value ever declared — the
28
34
  * merger builds the linked list and this formatter used to throw it away.
29
35
  */
30
- export declare function formatProvenanceValue(pv: ProvenanceValue<unknown>): FormattedProvenanceValue;
36
+ export declare function formatProvenanceValue(pv: ProvenanceValue<unknown>, root: string): FormattedProvenanceValue;
37
+ /** One `data.paths[]` entry of `--show-paths`. */
38
+ type FormattedPathEntry = Extract<AuditSettingsData, {
39
+ mode: 'paths';
40
+ }>['paths'][number];
31
41
  /**
32
- * Format a resolved settings path for YAML output.
42
+ * Format a resolved settings path for the report's `data`.
33
43
  *
34
44
  * `exists`/`readable` are passed through verbatim, including the
35
45
  * `'undetermined'` value — a probe that could not run must not be rendered as a
36
- * confident `false`.
46
+ * confident `false`. A legacy path's error is the report's
47
+ * `SETTINGS_PATH_DEPRECATED` finding, never a `status` inside `data`: that
48
+ * would be a second status beside the envelope's.
37
49
  */
38
- export declare function formatSettingsPathEntry(p: SettingsPathEntry): Record<string, unknown>;
50
+ export declare function formatSettingsPathEntry(p: SettingsPathEntry, root: string): FormattedPathEntry;
51
+ /** A marketplace that cannot authenticate, and the settings file that registered it. */
52
+ interface MarketplaceWarning {
53
+ message: string;
54
+ file: string;
55
+ }
39
56
  /**
40
57
  * The findings an effective-settings audit produced.
41
58
  *
42
59
  * A shadowed rule and a marketplace that cannot authenticate are things the
43
60
  * reader must act on, so they are warnings — the run used to publish
44
- * `status: 'success'` with the conflicts listed underneath it, which is the
45
- * "warnings read as passed" collapse this command is being fixed for.
61
+ * a clean status with the conflicts listed underneath it, which is the
62
+ * "warnings read as passed" collapse this command is being fixed for. Each
63
+ * names the settings file to open, relative to `root`.
46
64
  */
47
- export declare function settingsAuditFindings(conflicts: readonly RuleConflict[], marketplaceWarnings: readonly string[]): SettingsFinding[];
65
+ export declare function settingsAuditFindings(conflicts: readonly RuleConflict[], marketplaceWarnings: readonly MarketplaceWarning[], root: string): Finding[];
48
66
  export declare function runAuditSettings(options: AuditSettingsOptions): Promise<void>;
49
67
  /**
50
68
  * Create the `vat audit settings` subcommand.
51
69
  */
52
70
  export declare function createAuditSettingsCommand(): Command;
71
+ export {};
53
72
  //# sourceMappingURL=audit-settings.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"audit-settings.d.ts","sourceRoot":"","sources":["../../src/commands/audit-settings.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAQL,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACvB,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;IACtC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAID,8EAA8E;AAC9E,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,wBAAwB,CAAC;CACrC;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,eAAe,CAAC,OAAO,CAAC,GAC3B,wBAAwB,CAQ1B;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAYrF;AA6LD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,SAAS,YAAY,EAAE,EAClC,mBAAmB,EAAE,SAAS,MAAM,EAAE,GACrC,eAAe,EAAE,CAcnB;AA8DD,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,IAAI,CAAC,CAWf;AAED;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,OAAO,CA8DpD"}
1
+ {"version":3,"file":"audit-settings.d.ts","sourceRoot":"","sources":["../../src/commands/audit-settings.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAOL,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACvB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAKL,KAAK,OAAO,EAGb,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,OAAO,KAAK,EAAE,iBAAiB,EAAuB,MAAM,4BAA4B,CAAC;AAEzF,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAYD,8EAA8E;AAC9E,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,wBAAwB,CAAC;CACrC;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,eAAe,CAAC,OAAO,CAAC,EAC5B,IAAI,EAAE,MAAM,GACX,wBAAwB,CAQ1B;AAED,kDAAkD;AAClD,KAAK,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzF;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAS9F;AAmJD,wFAAwF;AACxF,UAAU,kBAAkB;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAgFD;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,SAAS,YAAY,EAAE,EAClC,mBAAmB,EAAE,SAAS,kBAAkB,EAAE,EAClD,IAAI,EAAE,MAAM,GACX,OAAO,EAAE,CAmBX;AAsED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,IAAI,CAAC,CASf;AAED;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,OAAO,CAmEpD"}
@@ -2,13 +2,24 @@
2
2
  * `vat audit settings` subcommand
3
3
  *
4
4
  * Shows effective merged Claude settings with provenance, or validates a specific file.
5
+ * Every mode publishes the report envelope through the one writer: `data.mode`
6
+ * says which mode ran, `findings` carry what is wrong (each with a registered
7
+ * `SETTINGS_*` code and the settings file as `location`), and `examined`
8
+ * counts the settings documents read.
5
9
  */
6
- import { analyzeRuleConflicts, auditSettings, getSettingsFileFields, resolveSettingsPaths, summarizeSettingsFindings, validateSettingsFile, } from '@vibe-agent-toolkit/claude-marketplace';
7
- import { ExitCode } from '@vibe-agent-toolkit/schema';
10
+ import { analyzeRuleConflicts, auditSettings, getSettingsFileFields, resolveSettingsPaths, validateSettingsFile, } from '@vibe-agent-toolkit/claude-marketplace';
11
+ import { buildReport, countBySeverity, createRegistryIssue, toFindings, } from '@vibe-agent-toolkit/schema';
12
+ import { isAbsoluteAnyPlatform, safePath, toForwardSlash } from '@vibe-agent-toolkit/utils';
8
13
  import { Command } from 'commander';
9
- import { handleCommandError } from '../utils/command-error.js';
14
+ import { CommandRefusalError, refusalCodeOf } from '../utils/command-refusal.js';
15
+ import { endWithRefusal, endWithReport, NOTHING_FINISHED } from '../utils/document-writer.js';
10
16
  import { createLogger } from '../utils/logger.js';
11
- import { writeYamlOutput } from '../utils/output.js';
17
+ import { classifyInputFault } from '../utils/project-root-policy.js';
18
+ import { relativizePath } from '../utils/relativize-paths.js';
19
+ /** `vat audit settings` has no `--strict`: warnings never move its exit code. */
20
+ const SETTINGS_GATE = { strict: false };
21
+ /** The types `--type` accepts. */
22
+ const SETTINGS_TYPES = ['managed', 'user', 'project'];
12
23
  /**
13
24
  * Format an EffectiveSettings value for YAML output, INCLUDING what it overrode.
14
25
  *
@@ -17,121 +28,158 @@ import { writeYamlOutput } from '../utils/output.js';
17
28
  * layer made a project override look like the only value ever declared — the
18
29
  * merger builds the linked list and this formatter used to throw it away.
19
30
  */
20
- export function formatProvenanceValue(pv) {
31
+ export function formatProvenanceValue(pv, root) {
21
32
  return {
22
33
  value: pv.value,
23
- source: pv.provenance.file,
34
+ source: spell(pv.provenance.file, root),
24
35
  level: pv.provenance.level,
25
36
  ...(pv.provenance.level === 'managed' ? { locked: true } : {}),
26
- ...(pv.overrode ? { overrode: formatProvenanceValue(pv.overrode) } : {}),
37
+ ...(pv.overrode ? { overrode: formatProvenanceValue(pv.overrode, root) } : {}),
27
38
  };
28
39
  }
29
40
  /**
30
- * Format a resolved settings path for YAML output.
41
+ * Format a resolved settings path for the report's `data`.
31
42
  *
32
43
  * `exists`/`readable` are passed through verbatim, including the
33
44
  * `'undetermined'` value — a probe that could not run must not be rendered as a
34
- * confident `false`.
45
+ * confident `false`. A legacy path's error is the report's
46
+ * `SETTINGS_PATH_DEPRECATED` finding, never a `status` inside `data`: that
47
+ * would be a second status beside the envelope's.
35
48
  */
36
- export function formatSettingsPathEntry(p) {
49
+ export function formatSettingsPathEntry(p, root) {
37
50
  return {
38
51
  label: p.label,
39
- path: p.path,
52
+ path: spell(p.path, root),
40
53
  exists: p.exists,
41
54
  readable: p.readable,
42
55
  level: p.level,
43
56
  ...(p.accessError === undefined ? {} : { accessError: p.accessError }),
44
- ...(p.status === 'error' && p.exists !== false
45
- ? { status: 'error', message: p.message }
46
- : {}),
47
57
  };
48
58
  }
49
- async function runShowPaths(startTime, logger) {
50
- const cwd = process.cwd();
51
- const result = await resolveSettingsPaths(cwd);
52
- const findings = [];
59
+ /**
60
+ * A settings path in this document's ONE coordinate system: forward-slashed and
61
+ * relative to `data.root`, the directory the command ran in — a user or managed
62
+ * file outside it reads `../…`, never the absolute path with `$HOME` in it. The
63
+ * one exception is a file on another Windows drive, which has no relative
64
+ * spelling: it is published as the absolute path rather than dropped.
65
+ */
66
+ function spell(file, root) {
67
+ return relativizePath(safePath.resolve(root, file), root);
68
+ }
69
+ /**
70
+ * `issue` located at `file`, relative to `root`. A finding's `location` must be
71
+ * relative, so a file with no relative spelling (another Windows drive) leads
72
+ * the message instead — it is said, never silently dropped.
73
+ *
74
+ * The `SETTINGS_*` findings carry their severity from their emit site: this
75
+ * verb reads Claude settings, never a project's `validation:` config, so no
76
+ * override exists to resolve and none of them is a `validation.severity` key.
77
+ */
78
+ function locatedAt(issue, file, root) {
79
+ if (file === '')
80
+ return issue;
81
+ const spelled = spell(file, root);
82
+ return isAbsoluteAnyPlatform(spelled)
83
+ ? { ...issue, message: `${spelled}: ${issue.message}` }
84
+ : { ...issue, location: spelled };
85
+ }
86
+ async function runShowPaths(root, logger) {
87
+ const result = await resolveSettingsPaths(root);
88
+ const issues = [];
53
89
  for (const p of result.paths) {
54
90
  if (p.status === 'error' && p.exists !== false) {
55
- findings.push({
56
- path: p.path,
57
- message: p.message ?? 'Deprecated settings path is present',
91
+ issues.push(locatedAt({
92
+ code: 'SETTINGS_PATH_DEPRECATED',
58
93
  severity: 'error',
59
- });
94
+ message: p.message ?? 'Deprecated settings path is present',
95
+ fix: 'Move the managed settings file to the current managed-settings path (vat audit settings --show-paths lists it) and remove the legacy file.',
96
+ }, p.path, root));
60
97
  }
61
98
  if (p.exists === 'undetermined' || p.readable === 'undetermined') {
62
- findings.push({
63
- path: p.path,
64
- message: `Could not determine access (${p.accessError ?? 'unknown error'}) — this path was not checked`,
65
- severity: 'warning',
66
- });
99
+ issues.push(locatedAt(createRegistryIssue('SCAN_PATH_UNREADABLE', `Could not determine access to ${p.path} (${p.accessError ?? 'unknown error'}) — this path was not checked`), p.path, root));
67
100
  }
68
101
  }
69
- const { status, issueCounts } = summarizeSettingsFindings(findings);
70
- writeYamlOutput({
71
- status,
72
- issueCounts,
73
- paths: result.paths.map(formatSettingsPathEntry),
74
- duration: `${Date.now() - startTime}ms`,
75
- });
76
- if (issueCounts.errors > 0) {
102
+ const { errors, warnings } = countBySeverity(issues);
103
+ if (errors > 0)
77
104
  logger.error('Legacy managed-settings.json path detected — IT admin must migrate.');
78
- process.exit(ExitCode.FINDINGS);
105
+ if (warnings > 0)
106
+ logger.warn(`${warnings} settings path(s) could not be checked.`);
107
+ return buildReport({
108
+ // A path whose existence was determined was examined — absent is an answer; undetermined is not.
109
+ examined: result.paths.filter((p) => p.exists !== 'undetermined').length,
110
+ findings: toFindings(issues),
111
+ data: { mode: 'paths', root, paths: result.paths.map((p) => formatSettingsPathEntry(p, root)) },
112
+ gate: SETTINGS_GATE,
113
+ });
114
+ }
115
+ /** The `--type` the operator passed, or a `USAGE_INVALID` refusal for one the command does not know. */
116
+ function declaredType(type) {
117
+ if (type === undefined)
118
+ return undefined;
119
+ if (SETTINGS_TYPES.includes(type))
120
+ return type;
121
+ throw new CommandRefusalError('USAGE_INVALID', `--type must be one of ${SETTINGS_TYPES.join(', ')} (got '${type}')`);
122
+ }
123
+ /**
124
+ * A read of the `--file` settings file, or the refusal that says why nothing
125
+ * was read: `USAGE_INVALID` for a path that names nothing (the same ending
126
+ * `vat audit <missing>` gives), a classified fault on the argument for one the OS
127
+ * refuses. Neither is a finding about the file — a finding needs a file that was read.
128
+ */
129
+ async function readSettingsFile(filePath, read) {
130
+ try {
131
+ return await read();
79
132
  }
80
- if (issueCounts.warnings > 0) {
81
- logger.warn(`${issueCounts.warnings} settings path(s) could not be checked.`);
133
+ catch (error) {
134
+ throw classifyInputFault(filePath, error, { origin: 'argument', message: `Settings file does not exist: ${filePath}` });
82
135
  }
83
- process.exit(ExitCode.OK);
84
136
  }
85
- async function runValidateFile(options, startTime, logger) {
86
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- guarded by caller
87
- const filePath = options.file;
88
- const result = await validateSettingsFile(filePath, options.type);
89
- // `null` means the fields could not be read — distinct from "no fields", and
90
- // emitted as `fields: null` rather than as an empty list.
91
- const fields = await getSettingsFileFields(filePath);
92
- const duration = `${Date.now() - startTime}ms`;
93
- writeYamlOutput({
94
- status: result.status,
95
- issueCounts: result.issueCounts,
96
- file: filePath,
97
- detectedType: result.detectedType,
98
- typeConfidence: result.typeConfidence,
99
- fields,
100
- ...(result.findings.length > 0 ? { findings: result.findings } : {}),
101
- duration,
102
- });
103
- if (result.issueCounts.errors > 0) {
104
- logger.error(`Settings file is invalid: ${result.issueCounts.errors} error(s)`);
105
- process.exit(ExitCode.FINDINGS);
137
+ async function runValidateFile(filePath, type, root, logger) {
138
+ const settingsType = declaredType(type);
139
+ const result = await readSettingsFile(filePath, () => validateSettingsFile(filePath, settingsType));
140
+ // `null` means the file is not a JSON object — distinct from "no fields", and
141
+ // published as `fields: null` rather than as an empty list.
142
+ const fields = await readSettingsFile(filePath, () => getSettingsFileFields(filePath));
143
+ const issues = result.findings.map((finding) => locatedAt(finding, filePath, root));
144
+ if (result.summary.errors > 0) {
145
+ logger.error(`Settings file is invalid: ${result.summary.errors} error(s)`);
106
146
  }
107
- logger.info(`Settings file is valid (${result.detectedType}, type ${result.typeConfidence})`);
108
- process.exit(ExitCode.OK);
147
+ else {
148
+ logger.info(`Settings file is valid (${result.detectedType}, type ${result.typeConfidence})`);
149
+ }
150
+ return buildReport({
151
+ // The one document named — whether it parses is a finding about it.
152
+ examined: 1,
153
+ findings: toFindings(issues),
154
+ data: { mode: 'file', root, file: spell(filePath, root), detectedType: result.detectedType, typeConfidence: result.typeConfidence, fields },
155
+ gate: SETTINGS_GATE,
156
+ });
109
157
  }
110
- function buildPermissionsSummary(permissions) {
158
+ function buildPermissionsSummary(permissions, root) {
111
159
  const summary = {};
112
160
  if (permissions.deny.length > 0) {
113
161
  summary['deny'] = permissions.deny.map(r => ({
114
162
  rule: r.rule,
115
- source: r.provenance.file,
163
+ source: spell(r.provenance.file, root),
116
164
  level: r.provenance.level,
117
165
  }));
118
166
  }
119
167
  if (permissions.allow.length > 0) {
120
168
  summary['allow'] = permissions.allow.map(r => ({
121
169
  rule: r.rule,
122
- source: r.provenance.file,
170
+ source: spell(r.provenance.file, root),
123
171
  level: r.provenance.level,
124
172
  }));
125
173
  }
126
174
  if (permissions.ask.length > 0) {
127
175
  summary['ask'] = permissions.ask.map(r => ({
128
176
  rule: r.rule,
129
- source: r.provenance.file,
177
+ source: spell(r.provenance.file, root),
130
178
  level: r.provenance.level,
131
179
  }));
132
180
  }
133
181
  if (permissions.defaultMode) {
134
- summary['defaultMode'] = formatProvenanceValue(permissions.defaultMode);
182
+ summary['defaultMode'] = formatProvenanceValue(permissions.defaultMode, root);
135
183
  }
136
184
  return summary;
137
185
  }
@@ -152,12 +200,12 @@ function buildMarketplacesSummary(effective) {
152
200
  // Check for GitHub repos without GITHUB_TOKEN
153
201
  for (const [name, entry] of Object.entries(pv.value)) {
154
202
  if (entry.source.source === 'github' && !process.env['GITHUB_TOKEN']) {
155
- marketplaceWarnings.push(`Marketplace '${name}' sources from a private GitHub repo but GITHUB_TOKEN is not set`);
203
+ marketplaceWarnings.push({
204
+ message: `Marketplace '${name}' sources from a private GitHub repo but GITHUB_TOKEN is not set`,
205
+ file: pv.provenance.file,
206
+ });
156
207
  }
157
208
  }
158
- if (marketplaceWarnings.length > 0) {
159
- summary['warnings'] = marketplaceWarnings;
160
- }
161
209
  }
162
210
  if (effective.enabledPlugins) {
163
211
  const pv = effective.enabledPlugins;
@@ -177,15 +225,15 @@ function buildMarketplacesSummary(effective) {
177
225
  }
178
226
  return { summary, warnings: marketplaceWarnings };
179
227
  }
180
- function formatConflicts(conflicts) {
228
+ function formatConflicts(conflicts, root) {
181
229
  return conflicts.map(c => ({
182
230
  kind: c.kind,
183
231
  rule: c.rule.rule,
184
- ruleSource: c.rule.provenance.file,
232
+ ruleSource: spell(c.rule.provenance.file, root),
185
233
  ruleLevel: c.rule.provenance.level,
186
234
  ruleList: getRuleList(c.kind),
187
235
  shadowedBy: c.shadowedBy.rule,
188
- shadowedBySource: c.shadowedBy.provenance.file,
236
+ shadowedBySource: spell(c.shadowedBy.provenance.file, root),
189
237
  shadowedByLevel: c.shadowedBy.provenance.level,
190
238
  shadowedByList: getShadowedByList(c.kind),
191
239
  }));
@@ -209,46 +257,52 @@ function getShadowedByList(kind) {
209
257
  *
210
258
  * A shadowed rule and a marketplace that cannot authenticate are things the
211
259
  * reader must act on, so they are warnings — the run used to publish
212
- * `status: 'success'` with the conflicts listed underneath it, which is the
213
- * "warnings read as passed" collapse this command is being fixed for.
260
+ * a clean status with the conflicts listed underneath it, which is the
261
+ * "warnings read as passed" collapse this command is being fixed for. Each
262
+ * names the settings file to open, relative to `root`.
214
263
  */
215
- export function settingsAuditFindings(conflicts, marketplaceWarnings) {
216
- const findings = conflicts.map(c => ({
217
- path: c.rule.provenance.file,
264
+ export function settingsAuditFindings(conflicts, marketplaceWarnings, root) {
265
+ const issues = conflicts.map(c => locatedAt({
266
+ code: 'SETTINGS_RULE_SHADOWED',
267
+ severity: 'warning',
218
268
  message: `Rule "${c.rule.rule}" (${c.rule.provenance.level}, ${getRuleList(c.kind)}) is shadowed by ` +
219
269
  `"${c.shadowedBy.rule}" (${c.shadowedBy.provenance.level}, ${getShadowedByList(c.kind)}) — ${c.kind}.`,
220
- severity: 'warning',
221
- }));
270
+ fix: 'Remove the shadowed rule, or narrow the rule that shadows it.',
271
+ }, c.rule.provenance.file, root));
222
272
  for (const warning of marketplaceWarnings) {
223
- findings.push({ path: '', message: warning, severity: 'warning' });
273
+ issues.push(locatedAt({
274
+ code: 'SETTINGS_MARKETPLACE_TOKEN_MISSING',
275
+ severity: 'warning',
276
+ message: warning.message,
277
+ fix: 'Set GITHUB_TOKEN in the environment Claude Code runs in, or register the marketplace from a public source.',
278
+ }, warning.file, root));
224
279
  }
225
- return findings;
280
+ return toFindings(issues);
226
281
  }
227
- async function runShowEffective(startTime, logger) {
228
- const cwd = process.cwd();
229
- const { effective, layers } = await auditSettings({ projectDir: cwd });
230
- const duration = `${Date.now() - startTime}ms`;
231
- const layersSummary = layers.map(l => ({ level: l.level, file: l.file, readable: true }));
232
- const effectiveSummary = {};
233
- if (effective.model)
234
- effectiveSummary['model'] = formatProvenanceValue(effective.model);
235
- if (effective.availableModels)
236
- effectiveSummary['availableModels'] = formatProvenanceValue(effective.availableModels);
237
- if (effective.forceLoginMethod)
238
- effectiveSummary['forceLoginMethod'] = formatProvenanceValue(effective.forceLoginMethod);
239
- if (effective.apiKeyHelper)
240
- effectiveSummary['apiKeyHelper'] = formatProvenanceValue(effective.apiKeyHelper);
241
- if (effective.autoUpdatesChannel)
242
- effectiveSummary['autoUpdatesChannel'] = formatProvenanceValue(effective.autoUpdatesChannel);
243
- if (effective.disableAllHooks)
244
- effectiveSummary['disableAllHooks'] = formatProvenanceValue(effective.disableAllHooks);
245
- if (effective.allowManagedHooksOnly)
246
- effectiveSummary['allowManagedHooksOnly'] = formatProvenanceValue(effective.allowManagedHooksOnly);
247
- if (effective.outputStyle)
248
- effectiveSummary['outputStyle'] = formatProvenanceValue(effective.outputStyle);
249
- if (effective.language)
250
- effectiveSummary['language'] = formatProvenanceValue(effective.language);
251
- const permissionsSummary = buildPermissionsSummary(effective.permissions);
282
+ /** The merged value of every scalar setting the report shows, with its override chain. */
283
+ function effectiveScalars(effective, root) {
284
+ const scalars = [
285
+ ['model', effective.model],
286
+ ['availableModels', effective.availableModels],
287
+ ['forceLoginMethod', effective.forceLoginMethod],
288
+ ['apiKeyHelper', effective.apiKeyHelper],
289
+ ['autoUpdatesChannel', effective.autoUpdatesChannel],
290
+ ['disableAllHooks', effective.disableAllHooks],
291
+ ['allowManagedHooksOnly', effective.allowManagedHooksOnly],
292
+ ['outputStyle', effective.outputStyle],
293
+ ['language', effective.language],
294
+ ];
295
+ const summary = {};
296
+ for (const [key, value] of scalars) {
297
+ if (value)
298
+ summary[key] = formatProvenanceValue(value, root);
299
+ }
300
+ return summary;
301
+ }
302
+ async function runShowEffective(root, logger) {
303
+ const { effective, layers } = await auditSettings({ projectDir: root });
304
+ const effectiveSummary = effectiveScalars(effective, root);
305
+ const permissionsSummary = buildPermissionsSummary(effective.permissions, root);
252
306
  if (Object.keys(permissionsSummary).length > 0) {
253
307
  effectiveSummary['permissions'] = permissionsSummary;
254
308
  }
@@ -257,41 +311,46 @@ async function runShowEffective(startTime, logger) {
257
311
  effectiveSummary['marketplaces'] = marketplaces.summary;
258
312
  }
259
313
  const conflicts = analyzeRuleConflicts(effective);
260
- const { status, issueCounts } = summarizeSettingsFindings(settingsAuditFindings(conflicts, marketplaces.warnings));
261
- const output = {
262
- status,
263
- issueCounts,
264
- layers: layersSummary,
265
- effectiveSettings: effectiveSummary,
266
- duration,
267
- };
268
- if (conflicts.length > 0) {
269
- output['conflicts'] = formatConflicts(conflicts);
270
- }
271
- writeYamlOutput(output);
314
+ const findings = settingsAuditFindings(conflicts, marketplaces.warnings, root);
272
315
  if (layers.length === 0) {
273
316
  logger.info('No settings files found');
274
317
  }
275
318
  else {
276
319
  logger.info(`Loaded ${layers.length} settings layer(s)`);
277
320
  }
278
- if (issueCounts.warnings > 0) {
279
- logger.warn(`${issueCounts.warnings} warning(s): see conflicts / marketplaces.warnings in the output.`);
321
+ const { warnings } = countBySeverity(findings);
322
+ if (warnings > 0) {
323
+ logger.warn(`${warnings} warning(s): see findings and data.conflicts in the output.`);
280
324
  }
281
- process.exit(ExitCode.OK);
325
+ return buildReport({
326
+ examined: layers.length,
327
+ findings,
328
+ data: {
329
+ mode: 'effective',
330
+ root,
331
+ layers: layers.map(l => ({ level: l.level, file: spell(l.file, root) })),
332
+ effectiveSettings: effectiveSummary,
333
+ conflicts: formatConflicts(conflicts, root),
334
+ },
335
+ gate: SETTINGS_GATE,
336
+ });
337
+ }
338
+ /** Run the mode the options name. */
339
+ function runMode(options, root, logger) {
340
+ if (options.showPaths)
341
+ return runShowPaths(root, logger);
342
+ if (options.file !== undefined)
343
+ return runValidateFile(options.file, options.type, root, logger);
344
+ return runShowEffective(root, logger);
282
345
  }
283
346
  export async function runAuditSettings(options) {
284
347
  const logger = createLogger(options.debug ? { debug: true } : {});
285
- const startTime = Date.now();
286
348
  try {
287
- if (options.showPaths)
288
- return await runShowPaths(startTime, logger);
289
- if (options.file)
290
- return await runValidateFile(options, startTime, logger);
291
- await runShowEffective(startTime, logger);
349
+ // The report's one stated root: every path in it is relative to where it ran.
350
+ endWithReport('audit settings', await runMode(options, toForwardSlash(process.cwd()), logger), 'yaml');
292
351
  }
293
352
  catch (error) {
294
- handleCommandError(error, logger, startTime, 'AuditSettings');
353
+ endWithRefusal('audit settings', refusalCodeOf(error), error, 'yaml', SETTINGS_GATE, NOTHING_FINISHED);
295
354
  }
296
355
  }
297
356
  /**
@@ -321,29 +380,34 @@ Description:
321
380
  redundant rules within the same bucket.
322
381
 
323
382
  Output:
324
- - status: worst actionable severity (success | warning | error)
325
- - issueCounts: errors / warnings / info counts, published beside the status
326
- - layers: all loaded settings files in precedence order (highest first)
327
- - effectiveSettings: merged values with source file and level for each field;
328
- each value carries an "overrode" chain naming every value it replaced,
329
- down to the lowest-precedence layer
330
- - permissions: accumulated allow/deny/ask rules from all layers
331
- - conflicts: rules that are unreachable or redundant (omitted if none)
332
-
333
- With --file, "typeConfidence" states how the settings type was determined:
334
- declared (you passed --type), inferred (a managed-only field settled it),
335
- ambiguous (user and project share one schema, so it could be either), or
336
- undetermined (the file could not be read). "fields: null" means the fields
337
- could not be read at all, as distinct from "fields: []" (none declared).
338
-
339
- With --show-paths, "exists"/"readable" may be the string "undetermined" when
340
- the probe itself failed (e.g. a permission error on a parent directory) —
341
- that is not the same answer as false.
383
+ The report envelope every report verb publishes (YAML on stdout):
384
+ - status: ok (no findings) | findings (at least one) | error (did not finish)
385
+ - examined: settings documents read; summary: findings by severity
386
+ - findings: SETTINGS_* codes, each with the settings file as 'location'
387
+ and the key path as 'field'
388
+ - data.root: the directory it ran in — the one absolute path; every other
389
+ path (location, layers[].file, sources, paths[].path) is relative to it
390
+ - data.mode: effective (default) | file (--file) | paths (--show-paths)
391
+ - data (effective): layers (highest precedence first), effectiveSettings
392
+ (each value with its source and an "overrode" chain down to the
393
+ lowest-precedence layer), conflicts (unreachable or redundant rules)
394
+ - data (file): detectedType, typeConfidence — declared (--type), inferred
395
+ (a managed-only field settled it), ambiguous (user and project share one
396
+ schema) or undetermined (not JSON) — and fields ("fields: null" means the
397
+ file is not a JSON object, as distinct from "fields: []"); an absent or
398
+ unreadable --file is refused (exit 2), never reported
399
+ - data (paths): every settings path; "exists"/"readable" may be the string
400
+ "undetermined" when the probe itself failed — not the same answer as false
342
401
 
343
402
  Exit Codes:
344
- 0 - No errors (warnings are reported in issueCounts, not in the exit code)
345
- 1 - Invalid settings file (--file mode) or legacy Windows path detected
346
- 2 - System error
403
+ 0 - No finding at error severity (warnings are in the report, not the exit code)
404
+ 1 - An error-severity finding (an invalid settings file, a legacy managed
405
+ path), or no settings document could be read at all
406
+ 2 - Did not finish ('status: error'): USAGE_INVALID for a --file that does
407
+ not exist or a --type the command does not know, INPUT_UNREADABLE for a
408
+ --file the OS will not let it read, or (default mode) for a discovered
409
+ settings layer the OS refuses, that does not parse, or that fails its
410
+ schema
347
411
 
348
412
  Example:
349
413
  $ cd ~/my-project && vat audit settings # What can Claude do here?