@agentxm/client-core 0.1.6 → 0.3.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 (500) hide show
  1. package/dist/src/unstable/agents/coding-agent.d.ts +1 -1
  2. package/dist/src/unstable/agents/coding-agent.d.ts.map +1 -1
  3. package/dist/src/unstable/agents/coding-agent.js +1 -1
  4. package/dist/src/unstable/agents/coding-agent.js.map +1 -1
  5. package/dist/src/unstable/auth/auth-client.d.ts +1 -1
  6. package/dist/src/unstable/auth/auth-client.d.ts.map +1 -1
  7. package/dist/src/unstable/auth/auth-client.js +1 -1
  8. package/dist/src/unstable/auth/auth-client.js.map +1 -1
  9. package/dist/src/unstable/auth/credential-store.d.ts +1 -1
  10. package/dist/src/unstable/auth/credential-store.d.ts.map +1 -1
  11. package/dist/src/unstable/auth/credential-store.js +1 -1
  12. package/dist/src/unstable/auth/credential-store.js.map +1 -1
  13. package/dist/src/unstable/auth/device-login.d.ts +1 -1
  14. package/dist/src/unstable/auth/device-login.d.ts.map +1 -1
  15. package/dist/src/unstable/auth/device-login.js +1 -1
  16. package/dist/src/unstable/auth/device-login.js.map +1 -1
  17. package/dist/src/unstable/auth/guard-interaction.d.ts +1 -1
  18. package/dist/src/unstable/auth/guard-interaction.d.ts.map +1 -1
  19. package/dist/src/unstable/auth/guard-interaction.js +1 -1
  20. package/dist/src/unstable/auth/guard-interaction.js.map +1 -1
  21. package/dist/src/unstable/auth/login-interaction.d.ts +1 -1
  22. package/dist/src/unstable/auth/login-interaction.d.ts.map +1 -1
  23. package/dist/src/unstable/auth/login-interaction.js +1 -1
  24. package/dist/src/unstable/auth/login-interaction.js.map +1 -1
  25. package/dist/src/unstable/auth/registry-url.d.ts +1 -1
  26. package/dist/src/unstable/auth/registry-url.d.ts.map +1 -1
  27. package/dist/src/unstable/auth/registry-url.js +1 -1
  28. package/dist/src/unstable/auth/registry-url.js.map +1 -1
  29. package/dist/src/unstable/auth/schema.d.ts +3 -3
  30. package/dist/src/unstable/cli-flags/verbosity.d.ts +1 -1
  31. package/dist/src/unstable/cli-flags/verbosity.d.ts.map +1 -1
  32. package/dist/src/unstable/cli-flags/verbosity.js +1 -1
  33. package/dist/src/unstable/cli-flags/verbosity.js.map +1 -1
  34. package/dist/src/unstable/cli-renderer/cli-renderer.d.ts +1 -1
  35. package/dist/src/unstable/cli-renderer/cli-renderer.d.ts.map +1 -1
  36. package/dist/src/unstable/cli-renderer/cli-renderer.js +1 -1
  37. package/dist/src/unstable/cli-renderer/cli-renderer.js.map +1 -1
  38. package/dist/src/unstable/cli-runtime/command-argv.d.ts +1 -1
  39. package/dist/src/unstable/cli-runtime/command-argv.d.ts.map +1 -1
  40. package/dist/src/unstable/cli-runtime/command-argv.js +1 -1
  41. package/dist/src/unstable/cli-runtime/command-argv.js.map +1 -1
  42. package/dist/src/unstable/cli-runtime/graceful-shutdown.js +1 -1
  43. package/dist/src/unstable/cli-runtime/graceful-shutdown.js.map +1 -1
  44. package/dist/src/unstable/cli-runtime/telemetry.d.ts +1 -1
  45. package/dist/src/unstable/cli-runtime/telemetry.d.ts.map +1 -1
  46. package/dist/src/unstable/cli-runtime/telemetry.js +1 -1
  47. package/dist/src/unstable/cli-runtime/telemetry.js.map +1 -1
  48. package/dist/src/unstable/commands/manager.d.ts +1 -1
  49. package/dist/src/unstable/commands/manager.d.ts.map +1 -1
  50. package/dist/src/unstable/commands/manager.js +1 -1
  51. package/dist/src/unstable/commands/manager.js.map +1 -1
  52. package/dist/src/unstable/commands/operations/disable.d.ts +2 -2
  53. package/dist/src/unstable/commands/operations/disable.d.ts.map +1 -1
  54. package/dist/src/unstable/commands/operations/enable.d.ts +2 -2
  55. package/dist/src/unstable/commands/operations/enable.d.ts.map +1 -1
  56. package/dist/src/unstable/commands/operations/install.d.ts +1 -1
  57. package/dist/src/unstable/commands/operations/install.d.ts.map +1 -1
  58. package/dist/src/unstable/commands/operations/new-command.d.ts +2 -2
  59. package/dist/src/unstable/commands/operations/new-command.d.ts.map +1 -1
  60. package/dist/src/unstable/commands/operations/publish.d.ts +1 -1
  61. package/dist/src/unstable/commands/operations/publish.d.ts.map +1 -1
  62. package/dist/src/unstable/commands/operations/uninstall.d.ts +1 -1
  63. package/dist/src/unstable/commands/operations/uninstall.d.ts.map +1 -1
  64. package/dist/src/unstable/date-time.d.ts +2 -2
  65. package/dist/src/unstable/date-time.d.ts.map +1 -1
  66. package/dist/src/unstable/extensions/operations.d.ts +1 -1
  67. package/dist/src/unstable/extensions/operations.d.ts.map +1 -1
  68. package/dist/src/unstable/install-meta/install-meta.d.ts +1 -1
  69. package/dist/src/unstable/install-meta/install-meta.d.ts.map +1 -1
  70. package/dist/src/unstable/install-meta/install-meta.js +1 -1
  71. package/dist/src/unstable/install-meta/install-meta.js.map +1 -1
  72. package/dist/src/unstable/install-method/install-method.d.ts +1 -1
  73. package/dist/src/unstable/install-method/install-method.d.ts.map +1 -1
  74. package/dist/src/unstable/install-method/install-method.js +1 -1
  75. package/dist/src/unstable/install-method/install-method.js.map +1 -1
  76. package/dist/src/unstable/lint/catalog/index.d.ts +39 -0
  77. package/dist/src/unstable/lint/catalog/index.d.ts.map +1 -0
  78. package/dist/src/unstable/lint/catalog/index.js +49 -0
  79. package/dist/src/unstable/lint/catalog/index.js.map +1 -0
  80. package/dist/src/unstable/lint/catalog/pack/manifest-keys-recognized.d.ts +31 -0
  81. package/dist/src/unstable/lint/catalog/pack/manifest-keys-recognized.d.ts.map +1 -0
  82. package/dist/src/unstable/lint/catalog/pack/manifest-keys-recognized.js +41 -0
  83. package/dist/src/unstable/lint/catalog/pack/manifest-keys-recognized.js.map +1 -0
  84. package/dist/src/unstable/lint/catalog/pack/manifest-present.d.ts +18 -0
  85. package/dist/src/unstable/lint/catalog/pack/manifest-present.d.ts.map +1 -0
  86. package/dist/src/unstable/lint/catalog/pack/manifest-present.js +41 -0
  87. package/dist/src/unstable/lint/catalog/pack/manifest-present.js.map +1 -0
  88. package/dist/src/unstable/lint/catalog/pack/manifest-schema-valid.d.ts +26 -0
  89. package/dist/src/unstable/lint/catalog/pack/manifest-schema-valid.d.ts.map +1 -0
  90. package/dist/src/unstable/lint/catalog/pack/manifest-schema-valid.js +34 -0
  91. package/dist/src/unstable/lint/catalog/pack/manifest-schema-valid.js.map +1 -0
  92. package/dist/src/unstable/lint/catalog/pack-accessor/contexts.d.ts +61 -0
  93. package/dist/src/unstable/lint/catalog/pack-accessor/contexts.d.ts.map +1 -0
  94. package/dist/src/unstable/lint/catalog/pack-accessor/contexts.js +46 -0
  95. package/dist/src/unstable/lint/catalog/pack-accessor/contexts.js.map +1 -0
  96. package/dist/src/unstable/lint/catalog/pack-accessor/platform.d.ts +53 -0
  97. package/dist/src/unstable/lint/catalog/pack-accessor/platform.d.ts.map +1 -0
  98. package/dist/src/unstable/lint/catalog/pack-accessor/platform.js +90 -0
  99. package/dist/src/unstable/lint/catalog/pack-accessor/platform.js.map +1 -0
  100. package/dist/src/unstable/lint/catalog/pack-accessor/vft.d.ts +60 -0
  101. package/dist/src/unstable/lint/catalog/pack-accessor/vft.d.ts.map +1 -0
  102. package/dist/src/unstable/lint/catalog/pack-accessor/vft.js +85 -0
  103. package/dist/src/unstable/lint/catalog/pack-accessor/vft.js.map +1 -0
  104. package/dist/src/unstable/lint/catalog/pack.d.ts +37 -0
  105. package/dist/src/unstable/lint/catalog/pack.d.ts.map +1 -0
  106. package/dist/src/unstable/lint/catalog/pack.js +47 -0
  107. package/dist/src/unstable/lint/catalog/pack.js.map +1 -0
  108. package/dist/src/unstable/lint/catalog/shared/schema-rule.d.ts +59 -0
  109. package/dist/src/unstable/lint/catalog/shared/schema-rule.d.ts.map +1 -0
  110. package/dist/src/unstable/lint/catalog/shared/schema-rule.js +99 -0
  111. package/dist/src/unstable/lint/catalog/shared/schema-rule.js.map +1 -0
  112. package/dist/src/unstable/lint/catalog/skill/frontmatter-parseable.d.ts +31 -0
  113. package/dist/src/unstable/lint/catalog/skill/frontmatter-parseable.d.ts.map +1 -0
  114. package/dist/src/unstable/lint/catalog/skill/frontmatter-parseable.js +151 -0
  115. package/dist/src/unstable/lint/catalog/skill/frontmatter-parseable.js.map +1 -0
  116. package/dist/src/unstable/lint/catalog/skill/manifest-keys-recognized.d.ts +26 -0
  117. package/dist/src/unstable/lint/catalog/skill/manifest-keys-recognized.d.ts.map +1 -0
  118. package/dist/src/unstable/lint/catalog/skill/manifest-keys-recognized.js +41 -0
  119. package/dist/src/unstable/lint/catalog/skill/manifest-keys-recognized.js.map +1 -0
  120. package/dist/src/unstable/lint/catalog/skill/manifest-present.d.ts +18 -0
  121. package/dist/src/unstable/lint/catalog/skill/manifest-present.d.ts.map +1 -0
  122. package/dist/src/unstable/lint/catalog/skill/manifest-present.js +46 -0
  123. package/dist/src/unstable/lint/catalog/skill/manifest-present.js.map +1 -0
  124. package/dist/src/unstable/lint/catalog/skill/manifest-schema-valid.d.ts +22 -0
  125. package/dist/src/unstable/lint/catalog/skill/manifest-schema-valid.d.ts.map +1 -0
  126. package/dist/src/unstable/lint/catalog/skill/manifest-schema-valid.js +37 -0
  127. package/dist/src/unstable/lint/catalog/skill/manifest-schema-valid.js.map +1 -0
  128. package/dist/src/unstable/lint/catalog/skill/skill-md-present.d.ts +17 -0
  129. package/dist/src/unstable/lint/catalog/skill/skill-md-present.d.ts.map +1 -0
  130. package/dist/src/unstable/lint/catalog/skill/skill-md-present.js +38 -0
  131. package/dist/src/unstable/lint/catalog/skill/skill-md-present.js.map +1 -0
  132. package/dist/src/unstable/lint/catalog/skill-accessor/contexts.d.ts +65 -0
  133. package/dist/src/unstable/lint/catalog/skill-accessor/contexts.d.ts.map +1 -0
  134. package/dist/src/unstable/lint/catalog/skill-accessor/contexts.js +50 -0
  135. package/dist/src/unstable/lint/catalog/skill-accessor/contexts.js.map +1 -0
  136. package/dist/src/unstable/lint/catalog/skill-accessor/platform.d.ts +52 -0
  137. package/dist/src/unstable/lint/catalog/skill-accessor/platform.d.ts.map +1 -0
  138. package/dist/src/unstable/lint/catalog/skill-accessor/platform.js +89 -0
  139. package/dist/src/unstable/lint/catalog/skill-accessor/platform.js.map +1 -0
  140. package/dist/src/unstable/lint/catalog/skill-accessor/vft.d.ts +58 -0
  141. package/dist/src/unstable/lint/catalog/skill-accessor/vft.d.ts.map +1 -0
  142. package/dist/src/unstable/lint/catalog/skill-accessor/vft.js +83 -0
  143. package/dist/src/unstable/lint/catalog/skill-accessor/vft.js.map +1 -0
  144. package/dist/src/unstable/lint/catalog/skill.d.ts +38 -0
  145. package/dist/src/unstable/lint/catalog/skill.d.ts.map +1 -0
  146. package/dist/src/unstable/lint/catalog/skill.js +52 -0
  147. package/dist/src/unstable/lint/catalog/skill.js.map +1 -0
  148. package/dist/src/unstable/lint/catalog/workspace/agents-detected-declared.d.ts +23 -0
  149. package/dist/src/unstable/lint/catalog/workspace/agents-detected-declared.d.ts.map +1 -0
  150. package/dist/src/unstable/lint/catalog/workspace/agents-detected-declared.js +75 -0
  151. package/dist/src/unstable/lint/catalog/workspace/agents-detected-declared.js.map +1 -0
  152. package/dist/src/unstable/lint/catalog/workspace/agents-recognized.d.ts +23 -0
  153. package/dist/src/unstable/lint/catalog/workspace/agents-recognized.d.ts.map +1 -0
  154. package/dist/src/unstable/lint/catalog/workspace/agents-recognized.js +76 -0
  155. package/dist/src/unstable/lint/catalog/workspace/agents-recognized.js.map +1 -0
  156. package/dist/src/unstable/lint/catalog/workspace/helpers/empty.d.ts +18 -0
  157. package/dist/src/unstable/lint/catalog/workspace/helpers/empty.d.ts.map +1 -0
  158. package/dist/src/unstable/lint/catalog/workspace/helpers/empty.js +16 -0
  159. package/dist/src/unstable/lint/catalog/workspace/helpers/empty.js.map +1 -0
  160. package/dist/src/unstable/lint/catalog/workspace/helpers/install-ops.d.ts +133 -0
  161. package/dist/src/unstable/lint/catalog/workspace/helpers/install-ops.d.ts.map +1 -0
  162. package/dist/src/unstable/lint/catalog/workspace/helpers/install-ops.js +149 -0
  163. package/dist/src/unstable/lint/catalog/workspace/helpers/install-ops.js.map +1 -0
  164. package/dist/src/unstable/lint/catalog/workspace/helpers/registry-source.d.ts +25 -0
  165. package/dist/src/unstable/lint/catalog/workspace/helpers/registry-source.d.ts.map +1 -0
  166. package/dist/src/unstable/lint/catalog/workspace/helpers/registry-source.js +30 -0
  167. package/dist/src/unstable/lint/catalog/workspace/helpers/registry-source.js.map +1 -0
  168. package/dist/src/unstable/lint/catalog/workspace/initialized.d.ts +22 -0
  169. package/dist/src/unstable/lint/catalog/workspace/initialized.d.ts.map +1 -0
  170. package/dist/src/unstable/lint/catalog/workspace/initialized.js +55 -0
  171. package/dist/src/unstable/lint/catalog/workspace/initialized.js.map +1 -0
  172. package/dist/src/unstable/lint/catalog/workspace/lockfile-valid.d.ts +33 -0
  173. package/dist/src/unstable/lint/catalog/workspace/lockfile-valid.d.ts.map +1 -0
  174. package/dist/src/unstable/lint/catalog/workspace/lockfile-valid.js +125 -0
  175. package/dist/src/unstable/lint/catalog/workspace/lockfile-valid.js.map +1 -0
  176. package/dist/src/unstable/lint/catalog/workspace/packs-declarations-valid.d.ts +19 -0
  177. package/dist/src/unstable/lint/catalog/workspace/packs-declarations-valid.d.ts.map +1 -0
  178. package/dist/src/unstable/lint/catalog/workspace/packs-declarations-valid.js +145 -0
  179. package/dist/src/unstable/lint/catalog/workspace/packs-declarations-valid.js.map +1 -0
  180. package/dist/src/unstable/lint/catalog/workspace/packs-dependencies-resolved.d.ts +17 -0
  181. package/dist/src/unstable/lint/catalog/workspace/packs-dependencies-resolved.d.ts.map +1 -0
  182. package/dist/src/unstable/lint/catalog/workspace/packs-dependencies-resolved.js +107 -0
  183. package/dist/src/unstable/lint/catalog/workspace/packs-dependencies-resolved.js.map +1 -0
  184. package/dist/src/unstable/lint/catalog/workspace/packs-members-retained.d.ts +22 -0
  185. package/dist/src/unstable/lint/catalog/workspace/packs-members-retained.d.ts.map +1 -0
  186. package/dist/src/unstable/lint/catalog/workspace/packs-members-retained.js +163 -0
  187. package/dist/src/unstable/lint/catalog/workspace/packs-members-retained.js.map +1 -0
  188. package/dist/src/unstable/lint/catalog/workspace/settings-schema-valid.d.ts +28 -0
  189. package/dist/src/unstable/lint/catalog/workspace/settings-schema-valid.d.ts.map +1 -0
  190. package/dist/src/unstable/lint/catalog/workspace/settings-schema-valid.js +67 -0
  191. package/dist/src/unstable/lint/catalog/workspace/settings-schema-valid.js.map +1 -0
  192. package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-clean.d.ts +30 -0
  193. package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-clean.d.ts.map +1 -0
  194. package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-clean.js +232 -0
  195. package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-clean.js.map +1 -0
  196. package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-correct.d.ts +26 -0
  197. package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-correct.d.ts.map +1 -0
  198. package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-correct.js +129 -0
  199. package/dist/src/unstable/lint/catalog/workspace/skills-artifacts-correct.js.map +1 -0
  200. package/dist/src/unstable/lint/catalog/workspace/skills-declarations-valid.d.ts +26 -0
  201. package/dist/src/unstable/lint/catalog/workspace/skills-declarations-valid.d.ts.map +1 -0
  202. package/dist/src/unstable/lint/catalog/workspace/skills-declarations-valid.js +151 -0
  203. package/dist/src/unstable/lint/catalog/workspace/skills-declarations-valid.js.map +1 -0
  204. package/dist/src/unstable/lint/catalog/workspace/skills-integrity-valid.d.ts +29 -0
  205. package/dist/src/unstable/lint/catalog/workspace/skills-integrity-valid.d.ts.map +1 -0
  206. package/dist/src/unstable/lint/catalog/workspace/skills-integrity-valid.js +149 -0
  207. package/dist/src/unstable/lint/catalog/workspace/skills-integrity-valid.js.map +1 -0
  208. package/dist/src/unstable/lint/catalog/workspace/skills-lockfile-aligned.d.ts +29 -0
  209. package/dist/src/unstable/lint/catalog/workspace/skills-lockfile-aligned.d.ts.map +1 -0
  210. package/dist/src/unstable/lint/catalog/workspace/skills-lockfile-aligned.js +242 -0
  211. package/dist/src/unstable/lint/catalog/workspace/skills-lockfile-aligned.js.map +1 -0
  212. package/dist/src/unstable/lint/catalog/workspace-accessor/contexts.d.ts +141 -0
  213. package/dist/src/unstable/lint/catalog/workspace-accessor/contexts.d.ts.map +1 -0
  214. package/dist/src/unstable/lint/catalog/workspace-accessor/contexts.js +123 -0
  215. package/dist/src/unstable/lint/catalog/workspace-accessor/contexts.js.map +1 -0
  216. package/dist/src/unstable/lint/catalog/workspace-accessor/interpret-ops.d.ts +38 -0
  217. package/dist/src/unstable/lint/catalog/workspace-accessor/interpret-ops.d.ts.map +1 -0
  218. package/dist/src/unstable/lint/catalog/workspace-accessor/interpret-ops.js +311 -0
  219. package/dist/src/unstable/lint/catalog/workspace-accessor/interpret-ops.js.map +1 -0
  220. package/dist/src/unstable/lint/catalog/workspace-accessor/platform.d.ts +60 -0
  221. package/dist/src/unstable/lint/catalog/workspace-accessor/platform.d.ts.map +1 -0
  222. package/dist/src/unstable/lint/catalog/workspace-accessor/platform.js +201 -0
  223. package/dist/src/unstable/lint/catalog/workspace-accessor/platform.js.map +1 -0
  224. package/dist/src/unstable/lint/catalog/workspace-accessor/test-state.d.ts +65 -0
  225. package/dist/src/unstable/lint/catalog/workspace-accessor/test-state.d.ts.map +1 -0
  226. package/dist/src/unstable/lint/catalog/workspace-accessor/test-state.js +95 -0
  227. package/dist/src/unstable/lint/catalog/workspace-accessor/test-state.js.map +1 -0
  228. package/dist/src/unstable/lint/catalog/workspace.d.ts +47 -0
  229. package/dist/src/unstable/lint/catalog/workspace.d.ts.map +1 -0
  230. package/dist/src/unstable/lint/catalog/workspace.js +80 -0
  231. package/dist/src/unstable/lint/catalog/workspace.js.map +1 -0
  232. package/dist/src/unstable/lint/cli.d.ts +297 -0
  233. package/dist/src/unstable/lint/cli.d.ts.map +1 -0
  234. package/dist/src/unstable/lint/cli.js +388 -0
  235. package/dist/src/unstable/lint/cli.js.map +1 -0
  236. package/dist/src/unstable/lint/compose-path.d.ts +27 -0
  237. package/dist/src/unstable/lint/compose-path.d.ts.map +1 -0
  238. package/dist/src/unstable/lint/compose-path.js +61 -0
  239. package/dist/src/unstable/lint/compose-path.js.map +1 -0
  240. package/dist/src/unstable/lint/config.d.ts +103 -0
  241. package/dist/src/unstable/lint/config.d.ts.map +1 -0
  242. package/dist/src/unstable/lint/config.js +137 -0
  243. package/dist/src/unstable/lint/config.js.map +1 -0
  244. package/dist/src/unstable/lint/context.d.ts +265 -0
  245. package/dist/src/unstable/lint/context.d.ts.map +1 -0
  246. package/dist/src/unstable/lint/context.js +21 -0
  247. package/dist/src/unstable/lint/context.js.map +1 -0
  248. package/dist/src/unstable/lint/evaluate.d.ts +68 -0
  249. package/dist/src/unstable/lint/evaluate.d.ts.map +1 -0
  250. package/dist/src/unstable/lint/evaluate.js +147 -0
  251. package/dist/src/unstable/lint/evaluate.js.map +1 -0
  252. package/dist/src/unstable/lint/index.d.ts +28 -0
  253. package/dist/src/unstable/lint/index.d.ts.map +1 -0
  254. package/dist/src/unstable/lint/index.js +35 -0
  255. package/dist/src/unstable/lint/index.js.map +1 -0
  256. package/dist/src/unstable/lint/issues-to-findings.d.ts +35 -0
  257. package/dist/src/unstable/lint/issues-to-findings.d.ts.map +1 -0
  258. package/dist/src/unstable/lint/issues-to-findings.js +97 -0
  259. package/dist/src/unstable/lint/issues-to-findings.js.map +1 -0
  260. package/dist/src/unstable/lint/rule.d.ts +139 -0
  261. package/dist/src/unstable/lint/rule.d.ts.map +1 -0
  262. package/dist/src/unstable/lint/rule.js +25 -0
  263. package/dist/src/unstable/lint/rule.js.map +1 -0
  264. package/dist/src/unstable/lockfile/schema.d.ts +404 -404
  265. package/dist/src/unstable/mcp-servers/manager.d.ts +1 -1
  266. package/dist/src/unstable/mcp-servers/manager.d.ts.map +1 -1
  267. package/dist/src/unstable/mcp-servers/manager.js +1 -1
  268. package/dist/src/unstable/mcp-servers/manager.js.map +1 -1
  269. package/dist/src/unstable/mcp-servers/operations/install.d.ts +1 -1
  270. package/dist/src/unstable/mcp-servers/operations/install.d.ts.map +1 -1
  271. package/dist/src/unstable/mcp-servers/operations/publish.d.ts +1 -1
  272. package/dist/src/unstable/mcp-servers/operations/publish.d.ts.map +1 -1
  273. package/dist/src/unstable/mcp-servers/operations/uninstall.d.ts +1 -1
  274. package/dist/src/unstable/mcp-servers/operations/uninstall.d.ts.map +1 -1
  275. package/dist/src/unstable/packs/manager.d.ts +1 -1
  276. package/dist/src/unstable/packs/manager.d.ts.map +1 -1
  277. package/dist/src/unstable/packs/manager.js +1 -1
  278. package/dist/src/unstable/packs/manager.js.map +1 -1
  279. package/dist/src/unstable/packs/operations/add-to-pack.d.ts +2 -2
  280. package/dist/src/unstable/packs/operations/add-to-pack.d.ts.map +1 -1
  281. package/dist/src/unstable/packs/operations/install.d.ts +2 -2
  282. package/dist/src/unstable/packs/operations/install.d.ts.map +1 -1
  283. package/dist/src/unstable/packs/operations/install.js +41 -0
  284. package/dist/src/unstable/packs/operations/install.js.map +1 -1
  285. package/dist/src/unstable/packs/operations/new-pack.d.ts +2 -2
  286. package/dist/src/unstable/packs/operations/new-pack.d.ts.map +1 -1
  287. package/dist/src/unstable/packs/operations/publish.d.ts +2 -2
  288. package/dist/src/unstable/packs/operations/publish.d.ts.map +1 -1
  289. package/dist/src/unstable/packs/operations/publish.js +1 -0
  290. package/dist/src/unstable/packs/operations/publish.js.map +1 -1
  291. package/dist/src/unstable/packs/operations/remove-from-pack.d.ts +2 -2
  292. package/dist/src/unstable/packs/operations/remove-from-pack.d.ts.map +1 -1
  293. package/dist/src/unstable/packs/operations/uninstall.d.ts +2 -2
  294. package/dist/src/unstable/packs/operations/uninstall.d.ts.map +1 -1
  295. package/dist/src/unstable/packs/operations/unpack.d.ts +2 -2
  296. package/dist/src/unstable/packs/operations/unpack.d.ts.map +1 -1
  297. package/dist/src/unstable/{workspace → plan}/apply-plan.d.ts +9 -0
  298. package/dist/src/unstable/plan/apply-plan.d.ts.map +1 -0
  299. package/dist/src/unstable/{workspace → plan}/apply-plan.js +10 -1
  300. package/dist/src/unstable/plan/apply-plan.js.map +1 -0
  301. package/dist/src/unstable/plan/index.d.ts +24 -0
  302. package/dist/src/unstable/plan/index.d.ts.map +1 -0
  303. package/dist/src/unstable/plan/index.js +28 -0
  304. package/dist/src/unstable/plan/index.js.map +1 -0
  305. package/dist/src/unstable/{workspace → plan}/plan.d.ts +6 -0
  306. package/dist/src/unstable/plan/plan.d.ts.map +1 -0
  307. package/dist/src/unstable/{workspace → plan}/plan.js +6 -0
  308. package/dist/src/unstable/plan/plan.js.map +1 -0
  309. package/dist/src/unstable/{workspace → plan}/resolve-plan.d.ts +30 -2
  310. package/dist/src/unstable/plan/resolve-plan.d.ts.map +1 -0
  311. package/dist/src/unstable/{workspace → plan}/resolve-plan.js +37 -6
  312. package/dist/src/unstable/plan/resolve-plan.js.map +1 -0
  313. package/dist/src/unstable/publish/manifest-policy.d.ts +8 -8
  314. package/dist/src/unstable/registry/__generated__/registry-client.d.ts +675 -518
  315. package/dist/src/unstable/registry/__generated__/registry-client.d.ts.map +1 -1
  316. package/dist/src/unstable/registry/__generated__/registry-client.js +546 -396
  317. package/dist/src/unstable/registry/__generated__/registry-client.js.map +1 -1
  318. package/dist/src/unstable/registry/remote-client.d.ts.map +1 -1
  319. package/dist/src/unstable/registry/remote-client.js +123 -18
  320. package/dist/src/unstable/registry/remote-client.js.map +1 -1
  321. package/dist/src/unstable/registry/schema.d.ts +2 -2
  322. package/dist/src/unstable/settings/index.d.ts +2 -0
  323. package/dist/src/unstable/settings/index.d.ts.map +1 -1
  324. package/dist/src/unstable/settings/index.js +1 -0
  325. package/dist/src/unstable/settings/index.js.map +1 -1
  326. package/dist/src/unstable/settings/schema.d.ts +3 -0
  327. package/dist/src/unstable/settings/schema.d.ts.map +1 -1
  328. package/dist/src/unstable/settings/schema.js +3 -0
  329. package/dist/src/unstable/settings/schema.js.map +1 -1
  330. package/dist/src/unstable/settings/settings.d.ts +10 -0
  331. package/dist/src/unstable/settings/settings.d.ts.map +1 -1
  332. package/dist/src/unstable/skills/manager.d.ts +1 -1
  333. package/dist/src/unstable/skills/manager.d.ts.map +1 -1
  334. package/dist/src/unstable/skills/manager.js +2 -2
  335. package/dist/src/unstable/skills/manager.js.map +1 -1
  336. package/dist/src/unstable/skills/materialization.js +1 -1
  337. package/dist/src/unstable/skills/materialization.js.map +1 -1
  338. package/dist/src/unstable/skills/operations/copy.d.ts +2 -2
  339. package/dist/src/unstable/skills/operations/copy.d.ts.map +1 -1
  340. package/dist/src/unstable/skills/operations/disable.d.ts +2 -2
  341. package/dist/src/unstable/skills/operations/disable.d.ts.map +1 -1
  342. package/dist/src/unstable/skills/operations/enable.d.ts +2 -2
  343. package/dist/src/unstable/skills/operations/enable.d.ts.map +1 -1
  344. package/dist/src/unstable/skills/operations/install.d.ts +2 -2
  345. package/dist/src/unstable/skills/operations/install.d.ts.map +1 -1
  346. package/dist/src/unstable/skills/operations/install.js +1 -1
  347. package/dist/src/unstable/skills/operations/install.js.map +1 -1
  348. package/dist/src/unstable/skills/operations/new-skill.d.ts +2 -2
  349. package/dist/src/unstable/skills/operations/new-skill.d.ts.map +1 -1
  350. package/dist/src/unstable/skills/operations/publish.d.ts +2 -2
  351. package/dist/src/unstable/skills/operations/publish.d.ts.map +1 -1
  352. package/dist/src/unstable/skills/operations/rename.d.ts +2 -2
  353. package/dist/src/unstable/skills/operations/rename.d.ts.map +1 -1
  354. package/dist/src/unstable/skills/operations/uninstall.d.ts +2 -2
  355. package/dist/src/unstable/skills/operations/uninstall.d.ts.map +1 -1
  356. package/dist/src/unstable/skills/operations/uninstall.js +1 -1
  357. package/dist/src/unstable/skills/operations/uninstall.js.map +1 -1
  358. package/dist/src/unstable/source-resolution/service.d.ts +1 -1
  359. package/dist/src/unstable/source-resolution/service.d.ts.map +1 -1
  360. package/dist/src/unstable/source-resolution/service.js +1 -1
  361. package/dist/src/unstable/source-resolution/service.js.map +1 -1
  362. package/dist/src/unstable/sources/types.d.ts +29 -29
  363. package/dist/src/unstable/sources/types.d.ts.map +1 -1
  364. package/dist/src/unstable/subagents/manager.d.ts +1 -1
  365. package/dist/src/unstable/subagents/manager.d.ts.map +1 -1
  366. package/dist/src/unstable/subagents/manager.js +4 -4
  367. package/dist/src/unstable/subagents/manager.js.map +1 -1
  368. package/dist/src/unstable/subagents/manifest-schema.js +2 -2
  369. package/dist/src/unstable/subagents/manifest-schema.js.map +1 -1
  370. package/dist/src/unstable/subagents/operations/disable.d.ts +2 -2
  371. package/dist/src/unstable/subagents/operations/disable.d.ts.map +1 -1
  372. package/dist/src/unstable/subagents/operations/enable.d.ts +2 -2
  373. package/dist/src/unstable/subagents/operations/enable.d.ts.map +1 -1
  374. package/dist/src/unstable/subagents/operations/publish.d.ts +2 -2
  375. package/dist/src/unstable/subagents/operations/publish.d.ts.map +1 -1
  376. package/dist/src/unstable/telemetry/__generated__/telemetry-client.d.ts +20 -12
  377. package/dist/src/unstable/telemetry/__generated__/telemetry-client.d.ts.map +1 -1
  378. package/dist/src/unstable/telemetry/__generated__/telemetry-client.js +11 -3
  379. package/dist/src/unstable/telemetry/__generated__/telemetry-client.js.map +1 -1
  380. package/dist/src/unstable/telemetry/client.d.ts +1 -1
  381. package/dist/src/unstable/telemetry/client.d.ts.map +1 -1
  382. package/dist/src/unstable/telemetry/client.js +1 -1
  383. package/dist/src/unstable/telemetry/client.js.map +1 -1
  384. package/dist/src/unstable/update-check/update-check.d.ts +1 -1
  385. package/dist/src/unstable/update-check/update-check.d.ts.map +1 -1
  386. package/dist/src/unstable/update-check/update-check.js +1 -1
  387. package/dist/src/unstable/update-check/update-check.js.map +1 -1
  388. package/dist/src/unstable/utils/fs-helpers.d.ts +7 -6
  389. package/dist/src/unstable/utils/fs-helpers.d.ts.map +1 -1
  390. package/dist/src/unstable/utils/fs-helpers.js +9 -9
  391. package/dist/src/unstable/utils/fs-helpers.js.map +1 -1
  392. package/dist/src/unstable/workflows/install-command/workflow.d.ts +1 -1
  393. package/dist/src/unstable/workflows/install-command/workflow.d.ts.map +1 -1
  394. package/dist/src/unstable/workflows/install-command/workflow.js +1 -1
  395. package/dist/src/unstable/workflows/install-command/workflow.js.map +1 -1
  396. package/dist/src/unstable/workflows/uninstall-command/workflow.d.ts +1 -1
  397. package/dist/src/unstable/workflows/uninstall-command/workflow.d.ts.map +1 -1
  398. package/dist/src/unstable/workflows/uninstall-command/workflow.js +1 -1
  399. package/dist/src/unstable/workflows/uninstall-command/workflow.js.map +1 -1
  400. package/dist/src/unstable/workspace/augment-plan.d.ts +1 -1
  401. package/dist/src/unstable/workspace/augment-plan.d.ts.map +1 -1
  402. package/dist/src/unstable/workspace/display-plan.d.ts +1 -1
  403. package/dist/src/unstable/workspace/display-plan.d.ts.map +1 -1
  404. package/dist/src/unstable/workspace/display-plan.js +1 -1
  405. package/dist/src/unstable/workspace/display-plan.js.map +1 -1
  406. package/dist/src/unstable/workspace/index.d.ts +1 -5
  407. package/dist/src/unstable/workspace/index.d.ts.map +1 -1
  408. package/dist/src/unstable/workspace/index.js +5 -7
  409. package/dist/src/unstable/workspace/index.js.map +1 -1
  410. package/dist/src/unstable/workspace/initialization-interaction.d.ts +1 -1
  411. package/dist/src/unstable/workspace/initialization-interaction.d.ts.map +1 -1
  412. package/dist/src/unstable/workspace/initialization-interaction.js +1 -1
  413. package/dist/src/unstable/workspace/initialization-interaction.js.map +1 -1
  414. package/dist/src/unstable/workspace/initialization.d.ts +15 -0
  415. package/dist/src/unstable/workspace/initialization.d.ts.map +1 -1
  416. package/dist/src/unstable/workspace/initialization.js +2 -2
  417. package/dist/src/unstable/workspace/initialization.js.map +1 -1
  418. package/dist/src/unstable/workspace/paths.d.ts +4 -21
  419. package/dist/src/unstable/workspace/paths.d.ts.map +1 -1
  420. package/dist/src/unstable/workspace/paths.js +19 -8
  421. package/dist/src/unstable/workspace/paths.js.map +1 -1
  422. package/dist/src/unstable/workspace/reconciliation.d.ts +1 -1
  423. package/dist/src/unstable/workspace/reconciliation.d.ts.map +1 -1
  424. package/dist/src/unstable/workspace/resolve-plan-interaction.d.ts +1 -1
  425. package/dist/src/unstable/workspace/resolve-plan-interaction.d.ts.map +1 -1
  426. package/dist/src/unstable/workspace/resolve-plan-interaction.js +1 -1
  427. package/dist/src/unstable/workspace/resolve-plan-interaction.js.map +1 -1
  428. package/dist/src/unstable/workspace/scan-plan-readiness.d.ts +1 -1
  429. package/dist/src/unstable/workspace/scan-plan-readiness.d.ts.map +1 -1
  430. package/dist/src/unstable/workspace/service-interface.d.ts +3 -1
  431. package/dist/src/unstable/workspace/service-interface.d.ts.map +1 -1
  432. package/dist/src/unstable/workspace/service-interface.js +1 -1
  433. package/dist/src/unstable/workspace/service-interface.js.map +1 -1
  434. package/dist/src/unstable/workspace/service.js +1 -1
  435. package/dist/src/unstable/workspace/service.js.map +1 -1
  436. package/dist/src/unstable/workspace/settings-validation/types.d.ts +11 -1
  437. package/dist/src/unstable/workspace/settings-validation/types.d.ts.map +1 -1
  438. package/dist/src/unstable/workspace/version-currency/check-currency.d.ts +41 -0
  439. package/dist/src/unstable/workspace/version-currency/check-currency.d.ts.map +1 -0
  440. package/dist/src/unstable/workspace/version-currency/check-currency.js +50 -0
  441. package/dist/src/unstable/workspace/version-currency/check-currency.js.map +1 -0
  442. package/dist/src/unstable/workspace/version-currency/collectors.d.ts +55 -0
  443. package/dist/src/unstable/workspace/version-currency/collectors.d.ts.map +1 -0
  444. package/dist/src/unstable/workspace/version-currency/collectors.js +127 -0
  445. package/dist/src/unstable/workspace/version-currency/collectors.js.map +1 -0
  446. package/dist/src/unstable/workspace/version-currency/index.d.ts +11 -0
  447. package/dist/src/unstable/workspace/version-currency/index.d.ts.map +1 -0
  448. package/dist/src/unstable/workspace/version-currency/index.js +11 -0
  449. package/dist/src/unstable/workspace/version-currency/index.js.map +1 -0
  450. package/dist/src/unstable/workspace/version-currency/test-stubs.d.ts +5 -0
  451. package/dist/src/unstable/workspace/version-currency/test-stubs.d.ts.map +1 -0
  452. package/dist/src/unstable/workspace/version-currency/test-stubs.js +31 -0
  453. package/dist/src/unstable/workspace/version-currency/test-stubs.js.map +1 -0
  454. package/package.json +14 -6
  455. package/dist/src/unstable/workspace/apply-plan.d.ts.map +0 -1
  456. package/dist/src/unstable/workspace/apply-plan.js.map +0 -1
  457. package/dist/src/unstable/workspace/doctor/check-def.d.ts +0 -29
  458. package/dist/src/unstable/workspace/doctor/check-def.d.ts.map +0 -1
  459. package/dist/src/unstable/workspace/doctor/check-def.js +0 -17
  460. package/dist/src/unstable/workspace/doctor/check-def.js.map +0 -1
  461. package/dist/src/unstable/workspace/doctor/checks/agents-configured.d.ts +0 -5
  462. package/dist/src/unstable/workspace/doctor/checks/agents-configured.d.ts.map +0 -1
  463. package/dist/src/unstable/workspace/doctor/checks/agents-configured.js +0 -170
  464. package/dist/src/unstable/workspace/doctor/checks/agents-configured.js.map +0 -1
  465. package/dist/src/unstable/workspace/doctor/checks/extensions-installed.d.ts +0 -5
  466. package/dist/src/unstable/workspace/doctor/checks/extensions-installed.d.ts.map +0 -1
  467. package/dist/src/unstable/workspace/doctor/checks/extensions-installed.js +0 -472
  468. package/dist/src/unstable/workspace/doctor/checks/extensions-installed.js.map +0 -1
  469. package/dist/src/unstable/workspace/doctor/checks/workspace-ready.d.ts +0 -5
  470. package/dist/src/unstable/workspace/doctor/checks/workspace-ready.d.ts.map +0 -1
  471. package/dist/src/unstable/workspace/doctor/checks/workspace-ready.js +0 -201
  472. package/dist/src/unstable/workspace/doctor/checks/workspace-ready.js.map +0 -1
  473. package/dist/src/unstable/workspace/doctor/diagnose.d.ts +0 -49
  474. package/dist/src/unstable/workspace/doctor/diagnose.d.ts.map +0 -1
  475. package/dist/src/unstable/workspace/doctor/diagnose.js +0 -65
  476. package/dist/src/unstable/workspace/doctor/diagnose.js.map +0 -1
  477. package/dist/src/unstable/workspace/doctor/index.d.ts +0 -8
  478. package/dist/src/unstable/workspace/doctor/index.d.ts.map +0 -1
  479. package/dist/src/unstable/workspace/doctor/index.js +0 -6
  480. package/dist/src/unstable/workspace/doctor/index.js.map +0 -1
  481. package/dist/src/unstable/workspace/doctor/rollup.d.ts +0 -4
  482. package/dist/src/unstable/workspace/doctor/rollup.d.ts.map +0 -1
  483. package/dist/src/unstable/workspace/doctor/rollup.js +0 -28
  484. package/dist/src/unstable/workspace/doctor/rollup.js.map +0 -1
  485. package/dist/src/unstable/workspace/doctor/runner.d.ts +0 -6
  486. package/dist/src/unstable/workspace/doctor/runner.d.ts.map +0 -1
  487. package/dist/src/unstable/workspace/doctor/runner.js +0 -179
  488. package/dist/src/unstable/workspace/doctor/runner.js.map +0 -1
  489. package/dist/src/unstable/workspace/doctor/types.d.ts +0 -125
  490. package/dist/src/unstable/workspace/doctor/types.d.ts.map +0 -1
  491. package/dist/src/unstable/workspace/doctor/types.js +0 -58
  492. package/dist/src/unstable/workspace/doctor/types.js.map +0 -1
  493. package/dist/src/unstable/workspace/plan.d.ts.map +0 -1
  494. package/dist/src/unstable/workspace/plan.js.map +0 -1
  495. package/dist/src/unstable/workspace/resolve-plan.d.ts.map +0 -1
  496. package/dist/src/unstable/workspace/resolve-plan.js.map +0 -1
  497. package/dist/src/unstable/workspace/sync.d.ts +0 -17
  498. package/dist/src/unstable/workspace/sync.d.ts.map +0 -1
  499. package/dist/src/unstable/workspace/sync.js +0 -142
  500. package/dist/src/unstable/workspace/sync.js.map +0 -1
@@ -0,0 +1,37 @@
1
+ /**
2
+ * `pack/*` rule catalog — the v1 three-rule set.
3
+ *
4
+ * Per `docs/design/lint-engine.md §10.pack`, registry publish and `axm lint`
5
+ * run exactly these rules against each pack context:
6
+ *
7
+ * | ID | Severity | Autofix |
8
+ * | ------------------------------- | -------- | ------- |
9
+ * | `pack/manifest-present` | error | — |
10
+ * | `pack/manifest-schema-valid` | error | — |
11
+ * | `pack/manifest-keys-recognized` | warning | — |
12
+ *
13
+ * All three ship `kind: "advisory"`. Packs are registry-only at v1 (no
14
+ * non-native arm), so there is no applicability discriminator — every pack
15
+ * context runs every rule and the `check` body's early-return arms handle
16
+ * manifest-absent cases.
17
+ *
18
+ * Rule ids are **registered with the lint config allowlist at module-load
19
+ * time**, so importing this catalog extends the set of accepted
20
+ * `.axm/settings.json` `lint.rules` keys. Consumers that never import the
21
+ * catalog (the registry Worker bundle for `skill`-only routes, e.g.) don't
22
+ * pay the registration cost.
23
+ *
24
+ * @experimental This API is unstable and may change without notice.
25
+ * @packageDocumentation
26
+ */
27
+ import type { LintRule } from "../rule.js";
28
+ import type { PackRuleContext } from "../context.js";
29
+ /**
30
+ * Ordered v1 `pack/*` rule catalog. Declaration order is the evaluation
31
+ * order within a single `evaluateContexts` call (deterministic ordering is
32
+ * test-observable; see `evaluate.ts`).
33
+ *
34
+ * @experimental This API is unstable and may change without notice.
35
+ */
36
+ export declare const packRules: ReadonlyArray<LintRule<PackRuleContext>>;
37
+ //# sourceMappingURL=pack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pack.d.ts","sourceRoot":"","sources":["../../../../../src/unstable/lint/catalog/pack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAKrD;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC,eAAe,CAAC,CAI9D,CAAC"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * `pack/*` rule catalog — the v1 three-rule set.
3
+ *
4
+ * Per `docs/design/lint-engine.md §10.pack`, registry publish and `axm lint`
5
+ * run exactly these rules against each pack context:
6
+ *
7
+ * | ID | Severity | Autofix |
8
+ * | ------------------------------- | -------- | ------- |
9
+ * | `pack/manifest-present` | error | — |
10
+ * | `pack/manifest-schema-valid` | error | — |
11
+ * | `pack/manifest-keys-recognized` | warning | — |
12
+ *
13
+ * All three ship `kind: "advisory"`. Packs are registry-only at v1 (no
14
+ * non-native arm), so there is no applicability discriminator — every pack
15
+ * context runs every rule and the `check` body's early-return arms handle
16
+ * manifest-absent cases.
17
+ *
18
+ * Rule ids are **registered with the lint config allowlist at module-load
19
+ * time**, so importing this catalog extends the set of accepted
20
+ * `.axm/settings.json` `lint.rules` keys. Consumers that never import the
21
+ * catalog (the registry Worker bundle for `skill`-only routes, e.g.) don't
22
+ * pay the registration cost.
23
+ *
24
+ * @experimental This API is unstable and may change without notice.
25
+ * @packageDocumentation
26
+ */
27
+ import { registerLintRuleIds } from "../config.js";
28
+ import { manifestPresentRule } from "./pack/manifest-present.js";
29
+ import { manifestSchemaValidRule } from "./pack/manifest-schema-valid.js";
30
+ import { manifestKeysRecognizedRule } from "./pack/manifest-keys-recognized.js";
31
+ /**
32
+ * Ordered v1 `pack/*` rule catalog. Declaration order is the evaluation
33
+ * order within a single `evaluateContexts` call (deterministic ordering is
34
+ * test-observable; see `evaluate.ts`).
35
+ *
36
+ * @experimental This API is unstable and may change without notice.
37
+ */
38
+ export const packRules = [
39
+ manifestPresentRule,
40
+ manifestSchemaValidRule,
41
+ manifestKeysRecognizedRule,
42
+ ];
43
+ // Register ids into the `LintConfig.rules` allowlist. Module-load side effect:
44
+ // a consumer that imports this catalog (or the `catalog/index` barrel) enables
45
+ // `.axm/settings.json` `lint.rules` to reference any of the above rule ids.
46
+ registerLintRuleIds(packRules.map((r) => r.id));
47
+ //# sourceMappingURL=pack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pack.js","sourceRoot":"","sources":["../../../../../src/unstable/lint/catalog/pack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAGnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAEhF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,SAAS,GAA6C;IACjE,mBAAmB;IACnB,uBAAuB;IACvB,0BAA0B;CAC3B,CAAC;AAEF,+EAA+E;AAC/E,+EAA+E;AAC/E,4EAA4E;AAC5E,mBAAmB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Shared schema-delegation plumbing for `-schema-valid` rules.
3
+ *
4
+ * Per `docs/design/lint-engine.md §4` ("Schema-valid rules delegate to Effect
5
+ * Schema"), every rule whose id ends in `-schema-valid` implements `check` by
6
+ * running the canonical schema through `Schema.decodeUnknownResult` with
7
+ * `onExcessProperty: "ignore"` and `errors: "all"`, then mapping the issues
8
+ * through `issuesToFindings`.
9
+ *
10
+ * Phase 3a is the first catalog; landing the helper now keeps the Phase 3b
11
+ * pack catalog from duplicating the composition when it arrives. The helper is
12
+ * intentionally narrow — only the surface the `-schema-valid` rules need.
13
+ *
14
+ * @experimental This API is unstable and may change without notice.
15
+ * @packageDocumentation
16
+ */
17
+ import * as Effect from "effect/Effect";
18
+ import * as Schema from "effect/Schema";
19
+ import type { AdvisoryFinding, Severity } from "../../rule.js";
20
+ /**
21
+ * Decode `input` against `schema` (excess keys ignored, all issues collected)
22
+ * and return one advisory finding per leaf issue. Success produces `[]`.
23
+ *
24
+ * `input` of `undefined` short-circuits to `[]` — the caller is expected to
25
+ * have already guarded on "manifest exists" via the complementary
26
+ * `-present` rule.
27
+ *
28
+ * @param ruleId - `<namespace>/<name>` id of the calling rule.
29
+ * @param severity - Severity to stamp on each emitted finding.
30
+ * @param file - Accessor-relative file path to stamp on `location.file`.
31
+ * @param schema - Canonical Effect schema; `Schema.decodeUnknownResult`
32
+ * runs with `onExcessProperty: "ignore"` and `errors: "all"`.
33
+ * @param input - Raw decoded JSON value to check (typically `subject.*Json`).
34
+ *
35
+ * @experimental This API is unstable and may change without notice.
36
+ */
37
+ export declare const schemaDecodeFindings: <A, I>(ruleId: string, severity: Severity, file: string, schema: Schema.Codec<A, I>, input: unknown) => Effect.Effect<ReadonlyArray<AdvisoryFinding>>;
38
+ /**
39
+ * Read the top-level field names of a `Schema.Struct` value.
40
+ *
41
+ * Callers produce an `allowedKeys` set in one place, driven by the schema
42
+ * itself — no copy-paste of field names into rule bodies. If the schema
43
+ * gains a field the allowed-keys set grows by construction.
44
+ *
45
+ * @experimental This API is unstable and may change without notice.
46
+ */
47
+ export declare const structFieldKeys: (struct: {
48
+ readonly fields: Readonly<Record<string, unknown>>;
49
+ }) => ReadonlySet<string>;
50
+ /**
51
+ * Enumerate top-level keys present on `input` that are not declared by
52
+ * `allowedKeys`. Returns one advisory finding per unknown key.
53
+ *
54
+ * `input` of `undefined` or non-object short-circuits to `[]`.
55
+ *
56
+ * @experimental This API is unstable and may change without notice.
57
+ */
58
+ export declare const enumerateUnknownTopLevelKeys: (ruleId: string, severity: Severity, file: string, allowedKeys: ReadonlySet<string>, input: unknown) => ReadonlyArray<AdvisoryFinding>;
59
+ //# sourceMappingURL=schema-rule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-rule.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/shared/schema-rule.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAM/D;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,oBAAoB,GAAI,CAAC,EAAE,CAAC,EACvC,QAAQ,MAAM,EACd,UAAU,QAAQ,EAClB,MAAM,MAAM,EACZ,QAAQ,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1B,OAAO,OAAO,KACb,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,eAAe,CAAC,CAY9C,CAAC;AAMF;;;;;;;;GAQG;AACH,eAAO,MAAM,eAAe,GAAI,QAAQ;IACtC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACpD,KAAG,WAAW,CAAC,MAAM,CAAwC,CAAC;AAE/D;;;;;;;GAOG;AACH,eAAO,MAAM,4BAA4B,GACvC,QAAQ,MAAM,EACd,UAAU,QAAQ,EAClB,MAAM,MAAM,EACZ,aAAa,WAAW,CAAC,MAAM,CAAC,EAChC,OAAO,OAAO,KACb,aAAa,CAAC,eAAe,CAsB/B,CAAC"}
@@ -0,0 +1,99 @@
1
+ /**
2
+ * Shared schema-delegation plumbing for `-schema-valid` rules.
3
+ *
4
+ * Per `docs/design/lint-engine.md §4` ("Schema-valid rules delegate to Effect
5
+ * Schema"), every rule whose id ends in `-schema-valid` implements `check` by
6
+ * running the canonical schema through `Schema.decodeUnknownResult` with
7
+ * `onExcessProperty: "ignore"` and `errors: "all"`, then mapping the issues
8
+ * through `issuesToFindings`.
9
+ *
10
+ * Phase 3a is the first catalog; landing the helper now keeps the Phase 3b
11
+ * pack catalog from duplicating the composition when it arrives. The helper is
12
+ * intentionally narrow — only the surface the `-schema-valid` rules need.
13
+ *
14
+ * @experimental This API is unstable and may change without notice.
15
+ * @packageDocumentation
16
+ */
17
+ import * as Effect from "effect/Effect";
18
+ import * as Result from "effect/Result";
19
+ import * as Schema from "effect/Schema";
20
+ import { issuesToFindings } from "../../issues-to-findings.js";
21
+ // -----------------------------------------------------------------------------
22
+ // schemaDecodeFindings
23
+ // -----------------------------------------------------------------------------
24
+ /**
25
+ * Decode `input` against `schema` (excess keys ignored, all issues collected)
26
+ * and return one advisory finding per leaf issue. Success produces `[]`.
27
+ *
28
+ * `input` of `undefined` short-circuits to `[]` — the caller is expected to
29
+ * have already guarded on "manifest exists" via the complementary
30
+ * `-present` rule.
31
+ *
32
+ * @param ruleId - `<namespace>/<name>` id of the calling rule.
33
+ * @param severity - Severity to stamp on each emitted finding.
34
+ * @param file - Accessor-relative file path to stamp on `location.file`.
35
+ * @param schema - Canonical Effect schema; `Schema.decodeUnknownResult`
36
+ * runs with `onExcessProperty: "ignore"` and `errors: "all"`.
37
+ * @param input - Raw decoded JSON value to check (typically `subject.*Json`).
38
+ *
39
+ * @experimental This API is unstable and may change without notice.
40
+ */
41
+ export const schemaDecodeFindings = (ruleId, severity, file, schema, input) => {
42
+ if (input === undefined) {
43
+ return Effect.succeed([]);
44
+ }
45
+ const result = Schema.decodeUnknownResult(schema)(input, {
46
+ onExcessProperty: "ignore",
47
+ errors: "all",
48
+ });
49
+ if (Result.isSuccess(result)) {
50
+ return Effect.succeed([]);
51
+ }
52
+ return Effect.succeed(issuesToFindings(ruleId, severity, file, result.failure));
53
+ };
54
+ // -----------------------------------------------------------------------------
55
+ // enumerateUnknownTopLevelKeys
56
+ // -----------------------------------------------------------------------------
57
+ /**
58
+ * Read the top-level field names of a `Schema.Struct` value.
59
+ *
60
+ * Callers produce an `allowedKeys` set in one place, driven by the schema
61
+ * itself — no copy-paste of field names into rule bodies. If the schema
62
+ * gains a field the allowed-keys set grows by construction.
63
+ *
64
+ * @experimental This API is unstable and may change without notice.
65
+ */
66
+ export const structFieldKeys = (struct) => new Set(Object.keys(struct.fields));
67
+ /**
68
+ * Enumerate top-level keys present on `input` that are not declared by
69
+ * `allowedKeys`. Returns one advisory finding per unknown key.
70
+ *
71
+ * `input` of `undefined` or non-object short-circuits to `[]`.
72
+ *
73
+ * @experimental This API is unstable and may change without notice.
74
+ */
75
+ export const enumerateUnknownTopLevelKeys = (ruleId, severity, file, allowedKeys, input) => {
76
+ if (!isPlainRecord(input)) {
77
+ return [];
78
+ }
79
+ const findings = [];
80
+ for (const key of Object.keys(input)) {
81
+ if (allowedKeys.has(key)) {
82
+ continue;
83
+ }
84
+ findings.push({
85
+ kind: "advisory",
86
+ ruleId,
87
+ severity,
88
+ message: `unrecognized top-level key '${key}'; remove it or rename to a canonical field.`,
89
+ suggestions: [
90
+ `Remove the '${key}' key from the manifest.`,
91
+ `Rename '${key}' to the intended canonical field.`,
92
+ ],
93
+ location: { file },
94
+ });
95
+ }
96
+ return findings;
97
+ };
98
+ const isPlainRecord = (value) => value !== null && typeof value === "object" && !Array.isArray(value);
99
+ //# sourceMappingURL=schema-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-rule.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/shared/schema-rule.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG/D,gFAAgF;AAChF,uBAAuB;AACvB,gFAAgF;AAEhF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAAc,EACd,QAAkB,EAClB,IAAY,EACZ,MAA0B,EAC1B,KAAc,EACiC,EAAE;IACjD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE;QACvD,gBAAgB,EAAE,QAAQ;QAC1B,MAAM,EAAE,KAAK;KACd,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,OAAO,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AAClF,CAAC,CAAC;AAEF,gFAAgF;AAChF,+BAA+B;AAC/B,gFAAgF;AAEhF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAE/B,EAAuB,EAAE,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;AAE/D;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC1C,MAAc,EACd,QAAkB,EAClB,IAAY,EACZ,WAAgC,EAChC,KAAc,EACkB,EAAE;IAClC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAC5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,SAAS;QACX,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,UAAU;YAChB,MAAM;YACN,QAAQ;YACR,OAAO,EAAE,+BAA+B,GAAG,8CAA8C;YACzF,WAAW,EAAE;gBACX,eAAe,GAAG,0BAA0B;gBAC5C,WAAW,GAAG,oCAAoC;aACnD;YACD,QAAQ,EAAE,EAAE,IAAI,EAAE;SACnB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,KAAc,EAA8C,EAAE,CACnF,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * `skill/frontmatter-parseable` — SKILL.md frontmatter parses as a YAML
3
+ * mapping.
4
+ *
5
+ * Cascade (reports the first failure in the order below; later arms
6
+ * short-circuit):
7
+ *
8
+ * 1. SKILL.md begins with `---` at byte 0 (no BOM, no leading whitespace, no
9
+ * leading HTML comment). This is the arm that caught the
10
+ * `@agentxm/skills/axm` regression — an HTML comment preceded the
11
+ * frontmatter delimiter, so YAML parsers silently treated the content as
12
+ * body.
13
+ * 2. Frontmatter YAML parses without error.
14
+ * 3. Parsed frontmatter is a mapping (not a list, not a scalar).
15
+ *
16
+ * Presence is handled by `skill/skill-md-present`; this rule early-returns
17
+ * `[]` when `SKILL.md` is absent.
18
+ *
19
+ * Advisory-only — the cascade mixes one mechanically-fixable arm
20
+ * (strip-leading-bytes) with arms requiring human judgment (fix YAML
21
+ * syntax). Per `docs/design/lint-engine.md §10.skill (Notes)`, splitting by
22
+ * kind or adding a byte-range mutation Operation is deferred until a second
23
+ * mechanical arm justifies it.
24
+ *
25
+ * @experimental This API is unstable and may change without notice.
26
+ * @packageDocumentation
27
+ */
28
+ import type { SkillRuleContext } from "../../context.js";
29
+ import type { AdvisoryRule } from "../../rule.js";
30
+ export declare const frontmatterParseableRule: AdvisoryRule<SkillRuleContext>;
31
+ //# sourceMappingURL=frontmatter-parseable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frontmatter-parseable.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill/frontmatter-parseable.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAmB,YAAY,EAAE,MAAM,eAAe,CAAC;AAanE,eAAO,MAAM,wBAAwB,EAAE,YAAY,CAAC,gBAAgB,CAyBnE,CAAC"}
@@ -0,0 +1,151 @@
1
+ /**
2
+ * `skill/frontmatter-parseable` — SKILL.md frontmatter parses as a YAML
3
+ * mapping.
4
+ *
5
+ * Cascade (reports the first failure in the order below; later arms
6
+ * short-circuit):
7
+ *
8
+ * 1. SKILL.md begins with `---` at byte 0 (no BOM, no leading whitespace, no
9
+ * leading HTML comment). This is the arm that caught the
10
+ * `@agentxm/skills/axm` regression — an HTML comment preceded the
11
+ * frontmatter delimiter, so YAML parsers silently treated the content as
12
+ * body.
13
+ * 2. Frontmatter YAML parses without error.
14
+ * 3. Parsed frontmatter is a mapping (not a list, not a scalar).
15
+ *
16
+ * Presence is handled by `skill/skill-md-present`; this rule early-returns
17
+ * `[]` when `SKILL.md` is absent.
18
+ *
19
+ * Advisory-only — the cascade mixes one mechanically-fixable arm
20
+ * (strip-leading-bytes) with arms requiring human judgment (fix YAML
21
+ * syntax). Per `docs/design/lint-engine.md §10.skill (Notes)`, splitting by
22
+ * kind or adding a byte-range mutation Operation is deferred until a second
23
+ * mechanical arm justifies it.
24
+ *
25
+ * @experimental This API is unstable and may change without notice.
26
+ * @packageDocumentation
27
+ */
28
+ import * as Effect from "effect/Effect";
29
+ import YAML from "yaml";
30
+ const RULE_ID = "skill/frontmatter-parseable";
31
+ const SKILL_MD = "SKILL.md";
32
+ const DELIMITER = "---";
33
+ // U+FEFF — UTF-8 BOM as a single code point. Escape form so the editor /
34
+ // formatter can't silently strip the literal.
35
+ const UTF8_BOM = "\uFEFF";
36
+ // `ignoreBOM: true` here means "pass the BOM through to the decoded string,
37
+ // don't strip it" — cascade arm 1 must see the BOM to flag it.
38
+ const decoder = new TextDecoder("utf-8", { fatal: false, ignoreBOM: true });
39
+ export const frontmatterParseableRule = {
40
+ id: RULE_ID,
41
+ description: "SKILL.md frontmatter parses as a YAML mapping.",
42
+ kind: "advisory",
43
+ severity: "error",
44
+ check: (context) => Effect.gen(function* () {
45
+ const exists = yield* context.files.exists(SKILL_MD);
46
+ if (!exists) {
47
+ // Presence is covered by `skill/skill-md-present`.
48
+ return [];
49
+ }
50
+ const bytesResult = yield* context.files.readBytes(SKILL_MD).pipe(Effect.map((bytes) => ({ kind: "ok", bytes })),
51
+ // Treat read errors the same as absence — presence rule already owns
52
+ // that path. If `exists` said true but read fails, the cascade can't
53
+ // run anyway; silence here keeps the finding count at one.
54
+ Effect.catch(() => Effect.succeed({ kind: "none" })));
55
+ if (bytesResult.kind === "none") {
56
+ return [];
57
+ }
58
+ const content = decoder.decode(bytesResult.bytes);
59
+ return evaluateCascade(content);
60
+ }),
61
+ };
62
+ // -----------------------------------------------------------------------------
63
+ // Cascade
64
+ // -----------------------------------------------------------------------------
65
+ const evaluateCascade = (content) => {
66
+ const leading = detectLeadingBytes(content);
67
+ if (leading !== undefined) {
68
+ return [leading];
69
+ }
70
+ const parsed = parseFrontmatterYaml(content);
71
+ if (parsed === undefined) {
72
+ // No frontmatter block. Treat as bad (cascade arm 1 "begins with ---"
73
+ // already handled the "literally no ---" case; reaching here means the
74
+ // delimiter was found but the closing delimiter is missing).
75
+ return [
76
+ finding("SKILL.md frontmatter is malformed: opening `---` found but closing `---` is missing.", ["Add a closing `---` after the frontmatter YAML block."]),
77
+ ];
78
+ }
79
+ if (parsed.kind === "parse-error") {
80
+ return [
81
+ finding(`SKILL.md frontmatter YAML is invalid: ${parsed.message}`, [
82
+ "Fix YAML syntax at the referenced location.",
83
+ ]),
84
+ ];
85
+ }
86
+ if (!isMapping(parsed.value)) {
87
+ return [
88
+ finding("SKILL.md frontmatter must be a YAML mapping (key: value pairs), not a list or scalar.", ["Rewrite the frontmatter block as `key: value` pairs."]),
89
+ ];
90
+ }
91
+ return [];
92
+ };
93
+ // -----------------------------------------------------------------------------
94
+ // Arm 1: leading bytes before `---`
95
+ // -----------------------------------------------------------------------------
96
+ const detectLeadingBytes = (content) => {
97
+ if (content.startsWith(UTF8_BOM)) {
98
+ return finding("SKILL.md begins with a UTF-8 BOM; frontmatter `---` must appear at byte 0.", ["Strip the UTF-8 BOM from the start of SKILL.md."], { line: 1 });
99
+ }
100
+ if (content.startsWith(DELIMITER)) {
101
+ return undefined;
102
+ }
103
+ // Any non-`---` leading content is a cascade-arm-1 violation. Detect the
104
+ // common HTML-comment case explicitly so the finding message is clear.
105
+ if (/^\s*<!--/.test(content)) {
106
+ return finding("SKILL.md begins with an HTML comment before the frontmatter `---`; the delimiter must appear at byte 0.", ["Strip leading bytes before the first `---`."], { line: 1 });
107
+ }
108
+ return finding("SKILL.md frontmatter `---` must appear at byte 0; leading whitespace or other content is not allowed.", ["Strip leading bytes before the first `---`."], { line: 1 });
109
+ };
110
+ const parseFrontmatterYaml = (content) => {
111
+ // content starts with `---` (arm 1 guaranteed). Find closing delimiter on a
112
+ // new line.
113
+ const afterOpening = content.indexOf("\n");
114
+ if (afterOpening === -1) {
115
+ return undefined;
116
+ }
117
+ const closingIndex = content.indexOf(`\n${DELIMITER}`, afterOpening);
118
+ if (closingIndex === -1) {
119
+ return undefined;
120
+ }
121
+ const yamlContent = content.slice(afterOpening + 1, closingIndex);
122
+ try {
123
+ // YAML.parse returns `null | undefined` for empty input; we care about
124
+ // shape, not emptiness at this arm.
125
+ const value = YAML.parse(yamlContent);
126
+ return { kind: "parsed", value };
127
+ }
128
+ catch (error) {
129
+ return {
130
+ kind: "parse-error",
131
+ message: error instanceof Error ? error.message : String(error),
132
+ };
133
+ }
134
+ };
135
+ const isMapping = (value) => value !== null && typeof value === "object" && !Array.isArray(value);
136
+ // -----------------------------------------------------------------------------
137
+ // Finding helpers
138
+ // -----------------------------------------------------------------------------
139
+ const finding = (message, suggestions, position) => ({
140
+ kind: "advisory",
141
+ ruleId: RULE_ID,
142
+ severity: "error",
143
+ message,
144
+ suggestions,
145
+ location: {
146
+ file: SKILL_MD,
147
+ ...(position?.line !== undefined ? { line: position.line } : {}),
148
+ ...(position?.column !== undefined ? { column: position.column } : {}),
149
+ },
150
+ });
151
+ //# sourceMappingURL=frontmatter-parseable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frontmatter-parseable.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill/frontmatter-parseable.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB,MAAM,OAAO,GAAG,6BAA6B,CAAC;AAC9C,MAAM,QAAQ,GAAG,UAAU,CAAC;AAC5B,MAAM,SAAS,GAAG,KAAK,CAAC;AACxB,yEAAyE;AACzE,8CAA8C;AAC9C,MAAM,QAAQ,GAAG,QAAQ,CAAC;AAE1B,4EAA4E;AAC5E,+DAA+D;AAC/D,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAE5E,MAAM,CAAC,MAAM,wBAAwB,GAAmC;IACtE,EAAE,EAAE,OAAO;IACX,WAAW,EAAE,gDAAgD;IAC7D,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,OAAO;IACjB,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CACjB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,mDAAmD;YACnD,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,CAC/D,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAa,EAAE,KAAK,EAAE,CAAC,CAAC;QACvD,qEAAqE;QACrE,qEAAqE;QACrE,2DAA2D;QAC3D,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,CAAC,CAAC,CAC9D,CAAC;QACF,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAChC,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAClD,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC,CAAC;CACL,CAAC;AAEF,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAEhF,MAAM,eAAe,GAAG,CAAC,OAAe,EAAkC,EAAE;IAC1E,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC5C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;IACD,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC7C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,sEAAsE;QACtE,uEAAuE;QACvE,6DAA6D;QAC7D,OAAO;YACL,OAAO,CACL,sFAAsF,EACtF,CAAC,uDAAuD,CAAC,CAC1D;SACF,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QAClC,OAAO;YACL,OAAO,CAAC,yCAAyC,MAAM,CAAC,OAAO,EAAE,EAAE;gBACjE,6CAA6C;aAC9C,CAAC;SACH,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,OAAO,CACL,uFAAuF,EACvF,CAAC,sDAAsD,CAAC,CACzD;SACF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF,gFAAgF;AAChF,oCAAoC;AACpC,gFAAgF;AAEhF,MAAM,kBAAkB,GAAG,CAAC,OAAe,EAA+B,EAAE;IAC1E,IAAI,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,OAAO,OAAO,CACZ,4EAA4E,EAC5E,CAAC,iDAAiD,CAAC,EACnD,EAAE,IAAI,EAAE,CAAC,EAAE,CACZ,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,yEAAyE;IACzE,uEAAuE;IACvE,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,OAAO,OAAO,CACZ,yGAAyG,EACzG,CAAC,6CAA6C,CAAC,EAC/C,EAAE,IAAI,EAAE,CAAC,EAAE,CACZ,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CACZ,uGAAuG,EACvG,CAAC,6CAA6C,CAAC,EAC/C,EAAE,IAAI,EAAE,CAAC,EAAE,CACZ,CAAC;AACJ,CAAC,CAAC;AAUF,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAA2B,EAAE;IACxE,4EAA4E;IAC5E,YAAY;IACZ,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE,EAAE,YAAY,CAAC,CAAC;IACrE,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC;IAClE,IAAI,CAAC;QACH,uEAAuE;QACvE,oCAAoC;QACpC,MAAM,KAAK,GAAY,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC/C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,KAAc,EAA8C,EAAE,CAC/E,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAEvE,gFAAgF;AAChF,kBAAkB;AAClB,gFAAgF;AAEhF,MAAM,OAAO,GAAG,CACd,OAAe,EACf,WAAkC,EAClC,QAA+D,EAC9C,EAAE,CAAC,CAAC;IACrB,IAAI,EAAE,UAAU;IAChB,MAAM,EAAE,OAAO;IACf,QAAQ,EAAE,OAAO;IACjB,OAAO;IACP,WAAW;IACX,QAAQ,EAAE;QACR,IAAI,EAAE,QAAQ;QACd,GAAG,CAAC,QAAQ,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACvE;CACF,CAAC,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * `skill/manifest-keys-recognized` — `skill.json` contains only keys
3
+ * declared by `SkillManifestSchema`.
4
+ *
5
+ * The paired `-schema-valid` rule ignores excess properties by construction
6
+ * (`onExcessProperty: "ignore"`); this rule surfaces them at warning severity
7
+ * so newer-schema manifests can roll out ahead of registry deploys.
8
+ *
9
+ * Allowed-keys set is derived from `SkillManifestSchema.fields` — no
10
+ * copy-paste of field names. A schema gain (or rename) automatically updates
11
+ * the allowlist.
12
+ *
13
+ * Early-return arms (no findings):
14
+ *
15
+ * - `subject.isNative === false` — non-native skills have no manifest to
16
+ * check.
17
+ * - `subject.skillJson === undefined` / non-object — nothing to enumerate;
18
+ * `skill/manifest-present` owns the absence case.
19
+ *
20
+ * @experimental This API is unstable and may change without notice.
21
+ * @packageDocumentation
22
+ */
23
+ import type { SkillRuleContext } from "../../context.js";
24
+ import type { AdvisoryRule } from "../../rule.js";
25
+ export declare const manifestKeysRecognizedRule: AdvisoryRule<SkillRuleContext>;
26
+ //# sourceMappingURL=manifest-keys-recognized.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest-keys-recognized.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill/manifest-keys-recognized.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AASlD,eAAO,MAAM,0BAA0B,EAAE,YAAY,CAAC,gBAAgB,CAmBrE,CAAC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * `skill/manifest-keys-recognized` — `skill.json` contains only keys
3
+ * declared by `SkillManifestSchema`.
4
+ *
5
+ * The paired `-schema-valid` rule ignores excess properties by construction
6
+ * (`onExcessProperty: "ignore"`); this rule surfaces them at warning severity
7
+ * so newer-schema manifests can roll out ahead of registry deploys.
8
+ *
9
+ * Allowed-keys set is derived from `SkillManifestSchema.fields` — no
10
+ * copy-paste of field names. A schema gain (or rename) automatically updates
11
+ * the allowlist.
12
+ *
13
+ * Early-return arms (no findings):
14
+ *
15
+ * - `subject.isNative === false` — non-native skills have no manifest to
16
+ * check.
17
+ * - `subject.skillJson === undefined` / non-object — nothing to enumerate;
18
+ * `skill/manifest-present` owns the absence case.
19
+ *
20
+ * @experimental This API is unstable and may change without notice.
21
+ * @packageDocumentation
22
+ */
23
+ import * as Effect from "effect/Effect";
24
+ import { SkillManifestSchema } from "../../../skills/manifest-schema.js";
25
+ import { enumerateUnknownTopLevelKeys, structFieldKeys } from "../shared/schema-rule.js";
26
+ const RULE_ID = "skill/manifest-keys-recognized";
27
+ const SKILL_JSON = "skill.json";
28
+ const allowedKeys = structFieldKeys(SkillManifestSchema);
29
+ export const manifestKeysRecognizedRule = {
30
+ id: RULE_ID,
31
+ description: "skill.json contains only keys recognized by SkillManifestSchema.",
32
+ kind: "advisory",
33
+ severity: "warning",
34
+ check: (context) => {
35
+ if (!context.subject.isNative) {
36
+ return Effect.succeed([]);
37
+ }
38
+ return Effect.succeed(enumerateUnknownTopLevelKeys(RULE_ID, "warning", SKILL_JSON, allowedKeys, context.subject.skillJson));
39
+ },
40
+ };
41
+ //# sourceMappingURL=manifest-keys-recognized.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest-keys-recognized.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill/manifest-keys-recognized.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEzF,MAAM,OAAO,GAAG,gCAAgC,CAAC;AACjD,MAAM,UAAU,GAAG,YAAY,CAAC;AAEhC,MAAM,WAAW,GAAG,eAAe,CAAC,mBAAmB,CAAC,CAAC;AAEzD,MAAM,CAAC,MAAM,0BAA0B,GAAmC;IACxE,EAAE,EAAE,OAAO;IACX,WAAW,EAAE,kEAAkE;IAC/E,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE;QACjB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC9B,OAAO,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,MAAM,CAAC,OAAO,CACnB,4BAA4B,CAC1B,OAAO,EACP,SAAS,EACT,UAAU,EACV,WAAW,EACX,OAAO,CAAC,OAAO,CAAC,SAAS,CAC1B,CACF,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * `skill/manifest-present` — native skills must have a `skill.json` at the
3
+ * skill root.
4
+ *
5
+ * Native-only via `check` early-return: when `subject.isNative === false`
6
+ * (managed-external skills without a declared manifest), the rule produces
7
+ * no findings. No separate `applies` predicate per
8
+ * `docs/design/lint-engine.md §3`.
9
+ *
10
+ * Advisory-only — scaffolding a manifest is a user-authored action.
11
+ *
12
+ * @experimental This API is unstable and may change without notice.
13
+ * @packageDocumentation
14
+ */
15
+ import type { SkillRuleContext } from "../../context.js";
16
+ import type { AdvisoryRule } from "../../rule.js";
17
+ export declare const manifestPresentRule: AdvisoryRule<SkillRuleContext>;
18
+ //# sourceMappingURL=manifest-present.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest-present.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill/manifest-present.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAmB,YAAY,EAAE,MAAM,eAAe,CAAC;AAKnE,eAAO,MAAM,mBAAmB,EAAE,YAAY,CAAC,gBAAgB,CA+B9D,CAAC"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * `skill/manifest-present` — native skills must have a `skill.json` at the
3
+ * skill root.
4
+ *
5
+ * Native-only via `check` early-return: when `subject.isNative === false`
6
+ * (managed-external skills without a declared manifest), the rule produces
7
+ * no findings. No separate `applies` predicate per
8
+ * `docs/design/lint-engine.md §3`.
9
+ *
10
+ * Advisory-only — scaffolding a manifest is a user-authored action.
11
+ *
12
+ * @experimental This API is unstable and may change without notice.
13
+ * @packageDocumentation
14
+ */
15
+ import * as Effect from "effect/Effect";
16
+ const RULE_ID = "skill/manifest-present";
17
+ const SKILL_JSON = "skill.json";
18
+ export const manifestPresentRule = {
19
+ id: RULE_ID,
20
+ description: "Native skill has a skill.json manifest at its root.",
21
+ kind: "advisory",
22
+ severity: "error",
23
+ check: (context) => {
24
+ if (!context.subject.isNative) {
25
+ return Effect.succeed([]);
26
+ }
27
+ return Effect.map(context.files.exists(SKILL_JSON), (present) => {
28
+ if (present) {
29
+ return [];
30
+ }
31
+ return [
32
+ {
33
+ kind: "advisory",
34
+ ruleId: RULE_ID,
35
+ severity: "error",
36
+ message: "skill.json is missing; native skills must expose a manifest at the skill root.",
37
+ suggestions: [
38
+ `Create ${SKILL_JSON} with the required manifest fields (owner, type, name, version).`,
39
+ ],
40
+ location: { file: SKILL_JSON },
41
+ },
42
+ ];
43
+ });
44
+ },
45
+ };
46
+ //# sourceMappingURL=manifest-present.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest-present.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill/manifest-present.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,MAAM,OAAO,GAAG,wBAAwB,CAAC;AACzC,MAAM,UAAU,GAAG,YAAY,CAAC;AAEhC,MAAM,CAAC,MAAM,mBAAmB,GAAmC;IACjE,EAAE,EAAE,OAAO;IACX,WAAW,EAAE,qDAAqD;IAClE,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,OAAO;IACjB,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE;QACjB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC9B,OAAO,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,MAAM,CAAC,GAAG,CACf,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EAChC,CAAC,OAAO,EAAkC,EAAE;YAC1C,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,OAAO;gBACL;oBACE,IAAI,EAAE,UAAU;oBAChB,MAAM,EAAE,OAAO;oBACf,QAAQ,EAAE,OAAO;oBACjB,OAAO,EACL,gFAAgF;oBAClF,WAAW,EAAE;wBACX,UAAU,UAAU,kEAAkE;qBACvF;oBACD,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;iBAC/B;aACF,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * `skill/manifest-schema-valid` — `skill.json` conforms to
3
+ * `SkillManifestSchema`.
4
+ *
5
+ * Delegates to Effect Schema per `docs/design/lint-engine.md §4`
6
+ * ("Schema-valid rules delegate to Effect Schema"). Issues map 1:1 to
7
+ * findings via `issuesToFindings`.
8
+ *
9
+ * Early-return arms (no findings):
10
+ *
11
+ * - `subject.isNative === false` — non-native skills have no manifest to
12
+ * check (complement of `skill/manifest-present`).
13
+ * - `subject.skillJson === undefined` — manifest is absent (covered by
14
+ * `skill/manifest-present`).
15
+ *
16
+ * @experimental This API is unstable and may change without notice.
17
+ * @packageDocumentation
18
+ */
19
+ import type { SkillRuleContext } from "../../context.js";
20
+ import type { AdvisoryRule } from "../../rule.js";
21
+ export declare const manifestSchemaValidRule: AdvisoryRule<SkillRuleContext>;
22
+ //# sourceMappingURL=manifest-schema-valid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest-schema-valid.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill/manifest-schema-valid.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAOlD,eAAO,MAAM,uBAAuB,EAAE,YAAY,CAAC,gBAAgB,CAmBlE,CAAC"}