@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,23 @@
1
+ /**
2
+ * `workspace/agents-detected-declared` — every agent footprint detected on
3
+ * disk appears in `settings.agents[]`.
4
+ *
5
+ * Per `docs/design/lint-engine.md §10.workspace`:
6
+ *
7
+ * Project scope only (early-returns at user scope). For each detected
8
+ * agent whose id is missing from settings.agents[], emit one finding.
9
+ *
10
+ * Project scope only: detection relies on scanning workspace-root-adjacent
11
+ * agent dirs (`.claude/`, `.cursor/`, …). At user scope the detection target
12
+ * is ambiguous, so the rule early-returns `[]`.
13
+ *
14
+ * Advisory, warning — the user may be intentionally using an agent AXM
15
+ * doesn't manage.
16
+ *
17
+ * @experimental This API is unstable and may change without notice.
18
+ * @packageDocumentation
19
+ */
20
+ import type { WorkspaceRuleContext } from "../../context.js";
21
+ import type { AdvisoryRule } from "../../rule.js";
22
+ export declare const agentsDetectedDeclaredRule: AdvisoryRule<WorkspaceRuleContext>;
23
+ //# sourceMappingURL=agents-detected-declared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents-detected-declared.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/workspace/agents-detected-declared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAMH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAmB,YAAY,EAAE,MAAM,eAAe,CAAC;AAenE,eAAO,MAAM,0BAA0B,EAAE,YAAY,CAAC,oBAAoB,CA0CzE,CAAC"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * `workspace/agents-detected-declared` — every agent footprint detected on
3
+ * disk appears in `settings.agents[]`.
4
+ *
5
+ * Per `docs/design/lint-engine.md §10.workspace`:
6
+ *
7
+ * Project scope only (early-returns at user scope). For each detected
8
+ * agent whose id is missing from settings.agents[], emit one finding.
9
+ *
10
+ * Project scope only: detection relies on scanning workspace-root-adjacent
11
+ * agent dirs (`.claude/`, `.cursor/`, …). At user scope the detection target
12
+ * is ambiguous, so the rule early-returns `[]`.
13
+ *
14
+ * Advisory, warning — the user may be intentionally using an agent AXM
15
+ * doesn't manage.
16
+ *
17
+ * @experimental This API is unstable and may change without notice.
18
+ * @packageDocumentation
19
+ */
20
+ import * as Effect from "effect/Effect";
21
+ import * as Option from "effect/Option";
22
+ import * as Result from "effect/Result";
23
+ import * as Schema from "effect/Schema";
24
+ import { SettingsSchema } from "../../../settings/schema.js";
25
+ import { EMPTY_ADVISORY_FINDINGS } from "./helpers/empty.js";
26
+ const RULE_ID = "workspace/agents-detected-declared";
27
+ const SETTINGS_REL = ".axm/settings.json";
28
+ const decodeSettings = (input) => {
29
+ const result = Schema.decodeUnknownResult(SettingsSchema)(input, {
30
+ onExcessProperty: "ignore",
31
+ errors: "all",
32
+ });
33
+ return Result.isSuccess(result) ? Option.some(result.success) : Option.none();
34
+ };
35
+ export const agentsDetectedDeclaredRule = {
36
+ id: RULE_ID,
37
+ description: "Every agent detected on disk appears in settings.agents[].",
38
+ kind: "advisory",
39
+ severity: "warning",
40
+ check: (context) => Effect.gen(function* () {
41
+ // Scope-aware early-return — detection only applies at project scope.
42
+ if (context.subject.scope === "user") {
43
+ return EMPTY_ADVISORY_FINDINGS;
44
+ }
45
+ const settingsResult = yield* Effect.result(context.workspace.settings);
46
+ if (Result.isFailure(settingsResult)) {
47
+ return EMPTY_ADVISORY_FINDINGS;
48
+ }
49
+ const decoded = decodeSettings(settingsResult.success);
50
+ if (Option.isNone(decoded)) {
51
+ return EMPTY_ADVISORY_FINDINGS;
52
+ }
53
+ const declared = new Set(decoded.value.agents ?? []);
54
+ const detected = yield* context.workspace.detectAgents("project");
55
+ const findings = [];
56
+ for (const detection of detected) {
57
+ if (declared.has(detection.id)) {
58
+ continue;
59
+ }
60
+ findings.push({
61
+ kind: "advisory",
62
+ ruleId: RULE_ID,
63
+ severity: "warning",
64
+ message: `Detected agent '${detection.id}' is not declared in settings.agents[].`,
65
+ suggestions: [
66
+ `Add '${detection.id}' to settings.agents[] to manage this agent.`,
67
+ `Set workspace/agents-detected-declared to 'off' in lint.rules to silence this rule.`,
68
+ ],
69
+ location: { file: SETTINGS_REL },
70
+ });
71
+ }
72
+ return findings;
73
+ }),
74
+ };
75
+ //# sourceMappingURL=agents-detected-declared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents-detected-declared.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/workspace/agents-detected-declared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,cAAc,EAAiB,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,MAAM,OAAO,GAAG,oCAAoC,CAAC;AACrD,MAAM,YAAY,GAAG,oBAAoB,CAAC;AAE1C,MAAM,cAAc,GAAG,CAAC,KAAc,EAA2B,EAAE;IACjE,MAAM,MAAM,GAAG,MAAM,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE;QAC/D,gBAAgB,EAAE,QAAQ;QAC1B,MAAM,EAAE,KAAK;KACd,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AAChF,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAuC;IAC5E,EAAE,EAAE,OAAO;IACX,WAAW,EAAE,4DAA4D;IACzE,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CACjB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,sEAAsE;QACtE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;YACrC,OAAO,uBAAuB,CAAC;QACjC,CAAC;QAED,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;YACrC,OAAO,uBAAuB,CAAC;QACjC,CAAC;QACD,MAAM,OAAO,GAAG,cAAc,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,OAAO,uBAAuB,CAAC;QACjC,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;QAErD,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAClE,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAC5C,KAAK,MAAM,SAAS,IAAI,QAAQ,EAAE,CAAC;YACjC,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC/B,SAAS;YACX,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,OAAO;gBACf,QAAQ,EAAE,SAAS;gBACnB,OAAO,EAAE,mBAAmB,SAAS,CAAC,EAAE,yCAAyC;gBACjF,WAAW,EAAE;oBACX,QAAQ,SAAS,CAAC,EAAE,8CAA8C;oBAClE,qFAAqF;iBACtF;gBACD,QAAQ,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE;aACjC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;CACL,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * `workspace/agents-recognized` — every agent id in `settings.agents[]` is
3
+ * in AXM's known-agent catalog.
4
+ *
5
+ * Per `docs/design/lint-engine.md §10.workspace` "Foundation" row:
6
+ *
7
+ * Agent recognition invariant — unknown IDs can't be materialized into.
8
+ * Absorbs doctor `agents-configured.unrecognized`. Known-agent catalog
9
+ * lives at `packages/core/src/unstable/agents/types.ts`.
10
+ *
11
+ * Cascade: the rule walks `settings.agents[]` and checks each id against
12
+ * the set returned by `workspace.knownAgents`. Unknown ids each emit one
13
+ * finding — the cascade is per-entity, not per-cascade-arm.
14
+ *
15
+ * Advisory — fixing an unrecognized id is a user-authored settings edit.
16
+ *
17
+ * @experimental This API is unstable and may change without notice.
18
+ * @packageDocumentation
19
+ */
20
+ import type { WorkspaceRuleContext } from "../../context.js";
21
+ import type { AdvisoryRule } from "../../rule.js";
22
+ export declare const agentsRecognizedRule: AdvisoryRule<WorkspaceRuleContext>;
23
+ //# sourceMappingURL=agents-recognized.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents-recognized.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/workspace/agents-recognized.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAMH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAmB,YAAY,EAAE,MAAM,eAAe,CAAC;AAenE,eAAO,MAAM,oBAAoB,EAAE,YAAY,CAAC,oBAAoB,CA0CnE,CAAC"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * `workspace/agents-recognized` — every agent id in `settings.agents[]` is
3
+ * in AXM's known-agent catalog.
4
+ *
5
+ * Per `docs/design/lint-engine.md §10.workspace` "Foundation" row:
6
+ *
7
+ * Agent recognition invariant — unknown IDs can't be materialized into.
8
+ * Absorbs doctor `agents-configured.unrecognized`. Known-agent catalog
9
+ * lives at `packages/core/src/unstable/agents/types.ts`.
10
+ *
11
+ * Cascade: the rule walks `settings.agents[]` and checks each id against
12
+ * the set returned by `workspace.knownAgents`. Unknown ids each emit one
13
+ * finding — the cascade is per-entity, not per-cascade-arm.
14
+ *
15
+ * Advisory — fixing an unrecognized id is a user-authored settings edit.
16
+ *
17
+ * @experimental This API is unstable and may change without notice.
18
+ * @packageDocumentation
19
+ */
20
+ import * as Effect from "effect/Effect";
21
+ import * as Option from "effect/Option";
22
+ import * as Result from "effect/Result";
23
+ import * as Schema from "effect/Schema";
24
+ import { SettingsSchema } from "../../../settings/schema.js";
25
+ import { EMPTY_ADVISORY_FINDINGS } from "./helpers/empty.js";
26
+ const RULE_ID = "workspace/agents-recognized";
27
+ const SETTINGS_REL = ".axm/settings.json";
28
+ const decodeSettings = (input) => {
29
+ const result = Schema.decodeUnknownResult(SettingsSchema)(input, {
30
+ onExcessProperty: "ignore",
31
+ errors: "all",
32
+ });
33
+ return Result.isSuccess(result) ? Option.some(result.success) : Option.none();
34
+ };
35
+ export const agentsRecognizedRule = {
36
+ id: RULE_ID,
37
+ description: "Every agent id in settings.agents[] is in the known-agent catalog.",
38
+ kind: "advisory",
39
+ severity: "error",
40
+ check: (context) => Effect.gen(function* () {
41
+ const settingsResult = yield* Effect.result(context.workspace.settings);
42
+ if (Result.isFailure(settingsResult)) {
43
+ return EMPTY_ADVISORY_FINDINGS;
44
+ }
45
+ const decoded = decodeSettings(settingsResult.success);
46
+ if (Option.isNone(decoded)) {
47
+ // workspace/settings-schema-valid owns the decode arm.
48
+ return EMPTY_ADVISORY_FINDINGS;
49
+ }
50
+ const declared = decoded.value.agents ?? [];
51
+ if (declared.length === 0) {
52
+ return EMPTY_ADVISORY_FINDINGS;
53
+ }
54
+ const known = yield* context.workspace.knownAgents;
55
+ const knownIds = new Set(known.map((a) => a.id));
56
+ const findings = [];
57
+ for (const id of declared) {
58
+ if (knownIds.has(id)) {
59
+ continue;
60
+ }
61
+ findings.push({
62
+ kind: "advisory",
63
+ ruleId: RULE_ID,
64
+ severity: "error",
65
+ message: `Agent id '${id}' is not in the known-agent catalog.`,
66
+ suggestions: [
67
+ `Remove '${id}' from settings.agents[].`,
68
+ `Correct the typo if '${id}' was meant to be another agent id.`,
69
+ ],
70
+ location: { file: SETTINGS_REL },
71
+ });
72
+ }
73
+ return findings;
74
+ }),
75
+ };
76
+ //# sourceMappingURL=agents-recognized.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents-recognized.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/workspace/agents-recognized.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,cAAc,EAAiB,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,MAAM,OAAO,GAAG,6BAA6B,CAAC;AAC9C,MAAM,YAAY,GAAG,oBAAoB,CAAC;AAE1C,MAAM,cAAc,GAAG,CAAC,KAAc,EAA2B,EAAE;IACjE,MAAM,MAAM,GAAG,MAAM,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE;QAC/D,gBAAgB,EAAE,QAAQ;QAC1B,MAAM,EAAE,KAAK;KACd,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AAChF,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAuC;IACtE,EAAE,EAAE,OAAO;IACX,WAAW,EAAE,oEAAoE;IACjF,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,OAAO;IACjB,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CACjB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;YACrC,OAAO,uBAAuB,CAAC;QACjC,CAAC;QACD,MAAM,OAAO,GAAG,cAAc,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,uDAAuD;YACvD,OAAO,uBAAuB,CAAC;QACjC,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC;QAC5C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,uBAAuB,CAAC;QACjC,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC;QACnD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEjD,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAC5C,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC1B,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACrB,SAAS;YACX,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,OAAO;gBACf,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,aAAa,EAAE,sCAAsC;gBAC9D,WAAW,EAAE;oBACX,WAAW,EAAE,2BAA2B;oBACxC,wBAAwB,EAAE,qCAAqC;iBAChE;gBACD,QAAQ,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE;aACjC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;CACL,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Typed empty constants used by workspace rules to satisfy return types
3
+ * without resorting to `[]` + type assertion. Using a shared `const` avoids
4
+ * repeated `as ReadonlyArray<T>` assertions (banned by the repo style guide)
5
+ * while keeping the inferred type stable.
6
+ *
7
+ * @experimental This API is unstable and may change without notice.
8
+ * @packageDocumentation
9
+ */
10
+ import type { AdvisoryFinding, LintFinding } from "../../../rule.js";
11
+ import type { Operation } from "../../../../plan/plan.js";
12
+ /** Shared empty AdvisoryFinding array. */
13
+ export declare const EMPTY_ADVISORY_FINDINGS: ReadonlyArray<AdvisoryFinding>;
14
+ /** Shared empty LintFinding array. */
15
+ export declare const EMPTY_LINT_FINDINGS: ReadonlyArray<LintFinding>;
16
+ /** Shared empty Operation array. */
17
+ export declare const EMPTY_OPERATIONS: ReadonlyArray<Operation<string, unknown>>;
18
+ //# sourceMappingURL=empty.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"empty.d.ts","sourceRoot":"","sources":["../../../../../../../src/unstable/lint/catalog/workspace/helpers/empty.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAE1D,0CAA0C;AAC1C,eAAO,MAAM,uBAAuB,EAAE,aAAa,CAAC,eAAe,CAAM,CAAC;AAE1E,sCAAsC;AACtC,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAAC,WAAW,CAAM,CAAC;AAElE,oCAAoC;AACpC,eAAO,MAAM,gBAAgB,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Typed empty constants used by workspace rules to satisfy return types
3
+ * without resorting to `[]` + type assertion. Using a shared `const` avoids
4
+ * repeated `as ReadonlyArray<T>` assertions (banned by the repo style guide)
5
+ * while keeping the inferred type stable.
6
+ *
7
+ * @experimental This API is unstable and may change without notice.
8
+ * @packageDocumentation
9
+ */
10
+ /** Shared empty AdvisoryFinding array. */
11
+ export const EMPTY_ADVISORY_FINDINGS = [];
12
+ /** Shared empty LintFinding array. */
13
+ export const EMPTY_LINT_FINDINGS = [];
14
+ /** Shared empty Operation array. */
15
+ export const EMPTY_OPERATIONS = [];
16
+ //# sourceMappingURL=empty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"empty.js","sourceRoot":"","sources":["../../../../../../../src/unstable/lint/catalog/workspace/helpers/empty.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,0CAA0C;AAC1C,MAAM,CAAC,MAAM,uBAAuB,GAAmC,EAAE,CAAC;AAE1E,sCAAsC;AACtC,MAAM,CAAC,MAAM,mBAAmB,GAA+B,EAAE,CAAC;AAElE,oCAAoC;AACpC,MAAM,CAAC,MAAM,gBAAgB,GAA8C,EAAE,CAAC"}
@@ -0,0 +1,133 @@
1
+ /**
2
+ * Helpers for emitting the 14 per-extension Operation values used by the
3
+ * workspace autofix rules.
4
+ *
5
+ * Autofix `fix` methods MUST compose from the 14-Operation vocabulary per
6
+ * `docs/design/lint-engine.md §6`. Wiring to the canonical `OperationHandler`
7
+ * registry (which expects fully-resolved `SkillExtensionRef` / `PackRef`
8
+ * values) happens at the CLI layer (Phase 5); at the lint layer we emit the
9
+ * Operation **intent** — minimal args capturing what reinstall / uninstall /
10
+ * enable / disable means for a named extension. The determinism harness
11
+ * interprets these intents against an in-memory state model.
12
+ *
13
+ * Shape consistency matters: the args shape below is the contract the
14
+ * harness interprets. Phase 5's CLI adapter lowers these intents into the
15
+ * fully-resolved Operation values the handlers expect.
16
+ *
17
+ * @experimental This API is unstable and may change without notice.
18
+ * @packageDocumentation
19
+ */
20
+ import type { Operation } from "../../../../plan/plan.js";
21
+ import type { Settings } from "../../../../settings/schema.js";
22
+ /**
23
+ * Install-skill intent emitted by an autofixing workspace rule.
24
+ *
25
+ * - `name` — lockfile key (and sanitized filesystem name).
26
+ * - `source` — source string from settings (e.g. `@acme/skills/axm`).
27
+ * - `force` — when `true`, the handler reinstalls unconditionally (used by
28
+ * integrity + artifact-clean dangling arms).
29
+ *
30
+ * @experimental This API is unstable and may change without notice.
31
+ */
32
+ export interface InstallSkillIntent {
33
+ readonly name: string;
34
+ readonly source: string;
35
+ readonly force: boolean;
36
+ }
37
+ /** @experimental */
38
+ export interface UninstallSkillIntent {
39
+ readonly name: string;
40
+ }
41
+ /** @experimental */
42
+ export interface EnableSkillIntent {
43
+ readonly name: string;
44
+ }
45
+ /** @experimental */
46
+ export interface DisableSkillIntent {
47
+ readonly name: string;
48
+ }
49
+ /** @experimental */
50
+ export interface InstallPackIntent {
51
+ readonly name: string;
52
+ readonly source: string;
53
+ readonly force: boolean;
54
+ }
55
+ /** @experimental */
56
+ export interface UninstallPackIntent {
57
+ readonly name: string;
58
+ }
59
+ /** @experimental */
60
+ export interface InstallCommandIntent {
61
+ readonly name: string;
62
+ readonly source: string;
63
+ readonly force: boolean;
64
+ }
65
+ /** @experimental */
66
+ export interface UninstallCommandIntent {
67
+ readonly name: string;
68
+ }
69
+ /** @experimental */
70
+ export interface EnableCommandIntent {
71
+ readonly name: string;
72
+ }
73
+ /** @experimental */
74
+ export interface DisableCommandIntent {
75
+ readonly name: string;
76
+ }
77
+ /** @experimental */
78
+ export interface InstallMcpServerIntent {
79
+ readonly name: string;
80
+ readonly source: string;
81
+ readonly force: boolean;
82
+ }
83
+ /** @experimental */
84
+ export interface UninstallMcpServerIntent {
85
+ readonly name: string;
86
+ }
87
+ /** @experimental */
88
+ export interface EnableSubagentIntent {
89
+ readonly name: string;
90
+ }
91
+ /** @experimental */
92
+ export interface DisableSubagentIntent {
93
+ readonly name: string;
94
+ }
95
+ export declare const installSkillOp: (intent: InstallSkillIntent) => Operation<"install-skill", InstallSkillIntent>;
96
+ export declare const uninstallSkillOp: (intent: UninstallSkillIntent) => Operation<"uninstall-skill", UninstallSkillIntent>;
97
+ export declare const enableSkillOp: (intent: EnableSkillIntent) => Operation<"enable-skill", EnableSkillIntent>;
98
+ export declare const disableSkillOp: (intent: DisableSkillIntent) => Operation<"disable-skill", DisableSkillIntent>;
99
+ export declare const installPackOp: (intent: InstallPackIntent) => Operation<"install-pack", InstallPackIntent>;
100
+ export declare const uninstallPackOp: (intent: UninstallPackIntent) => Operation<"uninstall-pack", UninstallPackIntent>;
101
+ export declare const installCommandOp: (intent: InstallCommandIntent) => Operation<"install-command", InstallCommandIntent>;
102
+ export declare const uninstallCommandOp: (intent: UninstallCommandIntent) => Operation<"uninstall-command", UninstallCommandIntent>;
103
+ export declare const enableCommandOp: (intent: EnableCommandIntent) => Operation<"enable-command", EnableCommandIntent>;
104
+ export declare const disableCommandOp: (intent: DisableCommandIntent) => Operation<"disable-command", DisableCommandIntent>;
105
+ export declare const installMcpServerOp: (intent: InstallMcpServerIntent) => Operation<"install-mcp-server", InstallMcpServerIntent>;
106
+ export declare const uninstallMcpServerOp: (intent: UninstallMcpServerIntent) => Operation<"uninstall-mcp-server", UninstallMcpServerIntent>;
107
+ export declare const enableSubagentOp: (intent: EnableSubagentIntent) => Operation<"enable-subagent", EnableSubagentIntent>;
108
+ export declare const disableSubagentOp: (intent: DisableSubagentIntent) => Operation<"disable-subagent", DisableSubagentIntent>;
109
+ /**
110
+ * The 14 per-extension Operation names lint autofix is allowed to emit.
111
+ *
112
+ * The guard test (`workspace-guard.test.ts`, task 3c.29) asserts no
113
+ * autofixing workspace rule emits an Operation outside this set and that
114
+ * no rule body references `syncWorkspace()` or a similar top-level
115
+ * reconcile entry.
116
+ *
117
+ * @experimental This API is unstable and may change without notice.
118
+ */
119
+ export declare const PER_EXTENSION_OPERATION_NAMES: readonly ["install-skill", "uninstall-skill", "enable-skill", "disable-skill", "install-pack", "uninstall-pack", "install-command", "uninstall-command", "enable-command", "disable-command", "install-mcp-server", "uninstall-mcp-server", "enable-subagent", "disable-subagent"];
120
+ /** @experimental */
121
+ export type PerExtensionOperationName = (typeof PER_EXTENSION_OPERATION_NAMES)[number];
122
+ /** @experimental */
123
+ export declare const isPerExtensionOperationName: (name: string) => name is PerExtensionOperationName;
124
+ /**
125
+ * Emit one `install-{type}` Operation per declared entry in `settings`,
126
+ * across all five installable types. Used by
127
+ * `workspace/lockfile-valid` missing-arm autofix — each declaration produces
128
+ * a reinstall intent, and the handler side-effects recreate the lockfile.
129
+ *
130
+ * @experimental This API is unstable and may change without notice.
131
+ */
132
+ export declare const collectMissingLockfileInstallOps: (settings: Settings) => ReadonlyArray<Operation<string, unknown>>;
133
+ //# sourceMappingURL=install-ops.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install-ops.d.ts","sourceRoot":"","sources":["../../../../../../../src/unstable/lint/catalog/workspace/helpers/install-ops.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,149 @@
1
+ /**
2
+ * Helpers for emitting the 14 per-extension Operation values used by the
3
+ * workspace autofix rules.
4
+ *
5
+ * Autofix `fix` methods MUST compose from the 14-Operation vocabulary per
6
+ * `docs/design/lint-engine.md §6`. Wiring to the canonical `OperationHandler`
7
+ * registry (which expects fully-resolved `SkillExtensionRef` / `PackRef`
8
+ * values) happens at the CLI layer (Phase 5); at the lint layer we emit the
9
+ * Operation **intent** — minimal args capturing what reinstall / uninstall /
10
+ * enable / disable means for a named extension. The determinism harness
11
+ * interprets these intents against an in-memory state model.
12
+ *
13
+ * Shape consistency matters: the args shape below is the contract the
14
+ * harness interprets. Phase 5's CLI adapter lowers these intents into the
15
+ * fully-resolved Operation values the handlers expect.
16
+ *
17
+ * @experimental This API is unstable and may change without notice.
18
+ * @packageDocumentation
19
+ */
20
+ // -----------------------------------------------------------------------------
21
+ // Emit helpers
22
+ // -----------------------------------------------------------------------------
23
+ export const installSkillOp = (intent) => ({
24
+ name: "install-skill",
25
+ args: intent,
26
+ });
27
+ export const uninstallSkillOp = (intent) => ({
28
+ name: "uninstall-skill",
29
+ args: intent,
30
+ });
31
+ export const enableSkillOp = (intent) => ({
32
+ name: "enable-skill",
33
+ args: intent,
34
+ });
35
+ export const disableSkillOp = (intent) => ({
36
+ name: "disable-skill",
37
+ args: intent,
38
+ });
39
+ export const installPackOp = (intent) => ({
40
+ name: "install-pack",
41
+ args: intent,
42
+ });
43
+ export const uninstallPackOp = (intent) => ({
44
+ name: "uninstall-pack",
45
+ args: intent,
46
+ });
47
+ export const installCommandOp = (intent) => ({
48
+ name: "install-command",
49
+ args: intent,
50
+ });
51
+ export const uninstallCommandOp = (intent) => ({
52
+ name: "uninstall-command",
53
+ args: intent,
54
+ });
55
+ export const enableCommandOp = (intent) => ({
56
+ name: "enable-command",
57
+ args: intent,
58
+ });
59
+ export const disableCommandOp = (intent) => ({
60
+ name: "disable-command",
61
+ args: intent,
62
+ });
63
+ export const installMcpServerOp = (intent) => ({
64
+ name: "install-mcp-server",
65
+ args: intent,
66
+ });
67
+ export const uninstallMcpServerOp = (intent) => ({
68
+ name: "uninstall-mcp-server",
69
+ args: intent,
70
+ });
71
+ export const enableSubagentOp = (intent) => ({
72
+ name: "enable-subagent",
73
+ args: intent,
74
+ });
75
+ export const disableSubagentOp = (intent) => ({
76
+ name: "disable-subagent",
77
+ args: intent,
78
+ });
79
+ // -----------------------------------------------------------------------------
80
+ // Vocabulary guard — the canonical 14-operation vocabulary.
81
+ // -----------------------------------------------------------------------------
82
+ /**
83
+ * The 14 per-extension Operation names lint autofix is allowed to emit.
84
+ *
85
+ * The guard test (`workspace-guard.test.ts`, task 3c.29) asserts no
86
+ * autofixing workspace rule emits an Operation outside this set and that
87
+ * no rule body references `syncWorkspace()` or a similar top-level
88
+ * reconcile entry.
89
+ *
90
+ * @experimental This API is unstable and may change without notice.
91
+ */
92
+ export const PER_EXTENSION_OPERATION_NAMES = [
93
+ "install-skill",
94
+ "uninstall-skill",
95
+ "enable-skill",
96
+ "disable-skill",
97
+ "install-pack",
98
+ "uninstall-pack",
99
+ "install-command",
100
+ "uninstall-command",
101
+ "enable-command",
102
+ "disable-command",
103
+ "install-mcp-server",
104
+ "uninstall-mcp-server",
105
+ "enable-subagent",
106
+ "disable-subagent",
107
+ ];
108
+ const PER_EXTENSION_OPERATION_SET = new Set(PER_EXTENSION_OPERATION_NAMES);
109
+ /** @experimental */
110
+ export const isPerExtensionOperationName = (name) => PER_EXTENSION_OPERATION_SET.has(name);
111
+ // -----------------------------------------------------------------------------
112
+ // Bulk emitters
113
+ // -----------------------------------------------------------------------------
114
+ /**
115
+ * Emit one `install-{type}` Operation per declared entry in `settings`,
116
+ * across all five installable types. Used by
117
+ * `workspace/lockfile-valid` missing-arm autofix — each declaration produces
118
+ * a reinstall intent, and the handler side-effects recreate the lockfile.
119
+ *
120
+ * @experimental This API is unstable and may change without notice.
121
+ */
122
+ export const collectMissingLockfileInstallOps = (settings) => {
123
+ const ops = [];
124
+ for (const [name, entry] of Object.entries(settings.skills ?? {})) {
125
+ ops.push(installSkillOp({ name, source: entry.source, force: false }));
126
+ }
127
+ for (const [name, entry] of Object.entries(settings.packs ?? {})) {
128
+ ops.push(installPackOp({ name, source: entry.source, force: false }));
129
+ }
130
+ for (const [name, entry] of Object.entries(settings.commands ?? {})) {
131
+ ops.push(installCommandOp({ name, source: entry.source, force: false }));
132
+ }
133
+ for (const [name, entry] of Object.entries(settings.subagents ?? {})) {
134
+ // Subagents install-handler ships in a later install family; v1 emits a
135
+ // no-op install-command for consistency… Actually, per the 14-op
136
+ // vocabulary subagents have only enable/disable Operations at v1 (their
137
+ // install family defers); emitting only enable here would be wrong.
138
+ // Skip subagents in the missing-arm autofix for now — the lockfile
139
+ // recreation is approximate, and subagent install is tracked as a v1.5+
140
+ // item.
141
+ void name;
142
+ void entry;
143
+ }
144
+ for (const [name, entry] of Object.entries(settings.mcpServers ?? {})) {
145
+ ops.push(installMcpServerOp({ name, source: entry.source, force: false }));
146
+ }
147
+ return ops;
148
+ };
149
+ //# sourceMappingURL=install-ops.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install-ops.js","sourceRoot":"","sources":["../../../../../../../src/unstable/lint/catalog/workspace/helpers/install-ops.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Registry-source parsing helper for workspace rules.
3
+ *
4
+ * Thin re-export over `parseRegistrySourceRef` so workspace rule bodies don't
5
+ * depend directly on the extensions module's internal layout. When the
6
+ * canonical parser changes, this shim stays.
7
+ *
8
+ * @experimental This API is unstable and may change without notice.
9
+ * @packageDocumentation
10
+ */
11
+ /** @experimental */
12
+ export interface RegistrySourceParts {
13
+ readonly owner: string;
14
+ readonly type: string;
15
+ readonly name: string;
16
+ readonly versionConstraint: string | undefined;
17
+ }
18
+ /**
19
+ * Parse a source string into its registry parts, or `undefined` when the
20
+ * source doesn't look like a registry ref.
21
+ *
22
+ * @experimental This API is unstable and may change without notice.
23
+ */
24
+ export declare const parseRegistrySource: (source: string) => RegistrySourceParts | undefined;
25
+ //# sourceMappingURL=registry-source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry-source.d.ts","sourceRoot":"","sources":["../../../../../../../src/unstable/lint/catalog/workspace/helpers/registry-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,oBAAoB;AACpB,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;CAChD;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,MAAM,KAAG,mBAAmB,GAAG,SAW1E,CAAC"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Registry-source parsing helper for workspace rules.
3
+ *
4
+ * Thin re-export over `parseRegistrySourceRef` so workspace rule bodies don't
5
+ * depend directly on the extensions module's internal layout. When the
6
+ * canonical parser changes, this shim stays.
7
+ *
8
+ * @experimental This API is unstable and may change without notice.
9
+ * @packageDocumentation
10
+ */
11
+ import { parseRegistrySourceRef } from "../../../../extensions/registry-source.js";
12
+ /**
13
+ * Parse a source string into its registry parts, or `undefined` when the
14
+ * source doesn't look like a registry ref.
15
+ *
16
+ * @experimental This API is unstable and may change without notice.
17
+ */
18
+ export const parseRegistrySource = (source) => {
19
+ const parsed = parseRegistrySourceRef(source);
20
+ if (parsed === undefined) {
21
+ return undefined;
22
+ }
23
+ return {
24
+ owner: parsed.owner,
25
+ type: parsed.type,
26
+ name: parsed.name,
27
+ versionConstraint: parsed.versionConstraint,
28
+ };
29
+ };
30
+ //# sourceMappingURL=registry-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry-source.js","sourceRoot":"","sources":["../../../../../../../src/unstable/lint/catalog/workspace/helpers/registry-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAUnF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAc,EAAmC,EAAE;IACrF,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;KAC5C,CAAC;AACJ,CAAC,CAAC"}