mewkit 1.14.1 → 1.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (739) hide show
  1. package/NOTICE +24 -0
  2. package/README.md +36 -70
  3. package/dist/commands/capabilities.d.ts +13 -0
  4. package/dist/commands/capabilities.d.ts.map +1 -0
  5. package/dist/commands/capabilities.js +230 -0
  6. package/dist/commands/capabilities.js.map +1 -0
  7. package/dist/commands/context.d.ts +10 -0
  8. package/dist/commands/context.d.ts.map +1 -0
  9. package/dist/commands/context.js +125 -0
  10. package/dist/commands/context.js.map +1 -0
  11. package/dist/commands/doctor.d.ts +27 -0
  12. package/dist/commands/doctor.d.ts.map +1 -1
  13. package/dist/commands/doctor.js +123 -0
  14. package/dist/commands/doctor.js.map +1 -1
  15. package/dist/commands/providers.d.ts +2 -0
  16. package/dist/commands/providers.d.ts.map +1 -1
  17. package/dist/commands/providers.js +77 -0
  18. package/dist/commands/providers.js.map +1 -1
  19. package/dist/commands/task-state.d.ts +13 -0
  20. package/dist/commands/task-state.d.ts.map +1 -0
  21. package/dist/commands/task-state.js +106 -0
  22. package/dist/commands/task-state.js.map +1 -0
  23. package/dist/commands/validate.d.ts +48 -1
  24. package/dist/commands/validate.d.ts.map +1 -1
  25. package/dist/commands/validate.js +97 -24
  26. package/dist/commands/validate.js.map +1 -1
  27. package/dist/commands/visual-plan.d.ts +23 -0
  28. package/dist/commands/visual-plan.d.ts.map +1 -0
  29. package/dist/commands/visual-plan.js +26 -0
  30. package/dist/commands/visual-plan.js.map +1 -0
  31. package/dist/core/availability.d.ts +40 -0
  32. package/dist/core/availability.d.ts.map +1 -0
  33. package/dist/core/availability.js +47 -0
  34. package/dist/core/availability.js.map +1 -0
  35. package/dist/core/bootstrap.d.ts +19 -0
  36. package/dist/core/bootstrap.d.ts.map +1 -0
  37. package/dist/core/bootstrap.js +42 -0
  38. package/dist/core/bootstrap.js.map +1 -0
  39. package/dist/core/build-capabilities.d.ts +9 -0
  40. package/dist/core/build-capabilities.d.ts.map +1 -0
  41. package/dist/core/build-capabilities.js +123 -0
  42. package/dist/core/build-capabilities.js.map +1 -0
  43. package/dist/core/build-inventory.d.ts +2 -0
  44. package/dist/core/build-inventory.d.ts.map +1 -1
  45. package/dist/core/build-inventory.js +1 -1
  46. package/dist/core/build-inventory.js.map +1 -1
  47. package/dist/core/capability-authored.d.ts +26 -0
  48. package/dist/core/capability-authored.d.ts.map +1 -0
  49. package/dist/core/capability-authored.js +117 -0
  50. package/dist/core/capability-authored.js.map +1 -0
  51. package/dist/core/capability-snapshot.d.ts +13 -0
  52. package/dist/core/capability-snapshot.d.ts.map +1 -0
  53. package/dist/core/capability-snapshot.js +53 -0
  54. package/dist/core/capability-snapshot.js.map +1 -0
  55. package/dist/core/capability.d.ts +519 -0
  56. package/dist/core/capability.d.ts.map +1 -0
  57. package/dist/core/capability.js +114 -0
  58. package/dist/core/capability.js.map +1 -0
  59. package/dist/core/compute-checksums.d.ts.map +1 -1
  60. package/dist/core/compute-checksums.js +8 -2
  61. package/dist/core/compute-checksums.js.map +1 -1
  62. package/dist/core/consolidation-ledger.d.ts +30 -0
  63. package/dist/core/consolidation-ledger.d.ts.map +1 -0
  64. package/dist/core/consolidation-ledger.js +147 -0
  65. package/dist/core/consolidation-ledger.js.map +1 -0
  66. package/dist/core/generate-capability-view.d.ts +21 -0
  67. package/dist/core/generate-capability-view.d.ts.map +1 -0
  68. package/dist/core/generate-capability-view.js +48 -0
  69. package/dist/core/generate-capability-view.js.map +1 -0
  70. package/dist/core/install-metadata.d.ts +20 -3
  71. package/dist/core/install-metadata.d.ts.map +1 -1
  72. package/dist/core/install-metadata.js +49 -9
  73. package/dist/core/install-metadata.js.map +1 -1
  74. package/dist/core/provider-adapter.d.ts +28 -0
  75. package/dist/core/provider-adapter.d.ts.map +1 -0
  76. package/dist/core/provider-adapter.js +31 -0
  77. package/dist/core/provider-adapter.js.map +1 -0
  78. package/dist/core/provider-invocation.d.ts +14 -0
  79. package/dist/core/provider-invocation.d.ts.map +1 -0
  80. package/dist/core/provider-invocation.js +56 -0
  81. package/dist/core/provider-invocation.js.map +1 -0
  82. package/dist/core/provider-lifecycle.d.ts +35 -0
  83. package/dist/core/provider-lifecycle.d.ts.map +1 -0
  84. package/dist/core/provider-lifecycle.js +101 -0
  85. package/dist/core/provider-lifecycle.js.map +1 -0
  86. package/dist/core/provider-projection.d.ts +29 -0
  87. package/dist/core/provider-projection.d.ts.map +1 -0
  88. package/dist/core/provider-projection.js +47 -0
  89. package/dist/core/provider-projection.js.map +1 -0
  90. package/dist/core/release-metadata.d.ts +7 -0
  91. package/dist/core/release-metadata.d.ts.map +1 -1
  92. package/dist/core/release-metadata.js +13 -0
  93. package/dist/core/release-metadata.js.map +1 -1
  94. package/dist/core/repo-context-adapter.d.ts +23 -0
  95. package/dist/core/repo-context-adapter.d.ts.map +1 -0
  96. package/dist/core/repo-context-adapter.js +44 -0
  97. package/dist/core/repo-context-adapter.js.map +1 -0
  98. package/dist/core/repo-context.d.ts +147 -0
  99. package/dist/core/repo-context.d.ts.map +1 -0
  100. package/dist/core/repo-context.js +204 -0
  101. package/dist/core/repo-context.js.map +1 -0
  102. package/dist/core/resolve-capabilities.d.ts +70 -0
  103. package/dist/core/resolve-capabilities.d.ts.map +1 -0
  104. package/dist/core/resolve-capabilities.js +124 -0
  105. package/dist/core/resolve-capabilities.js.map +1 -0
  106. package/dist/core/smart-update.d.ts.map +1 -1
  107. package/dist/core/smart-update.js +13 -12
  108. package/dist/core/smart-update.js.map +1 -1
  109. package/dist/core/task-record.d.ts +252 -0
  110. package/dist/core/task-record.d.ts.map +1 -0
  111. package/dist/core/task-record.js +252 -0
  112. package/dist/core/task-record.js.map +1 -0
  113. package/dist/core/validate-capabilities.d.ts +12 -0
  114. package/dist/core/validate-capabilities.d.ts.map +1 -0
  115. package/dist/core/validate-capabilities.js +138 -0
  116. package/dist/core/validate-capabilities.js.map +1 -0
  117. package/dist/index.js +99 -25
  118. package/dist/index.js.map +1 -1
  119. package/dist/local-web/atomic-write.d.ts +15 -0
  120. package/dist/local-web/atomic-write.d.ts.map +1 -0
  121. package/dist/local-web/atomic-write.js +69 -0
  122. package/dist/local-web/atomic-write.js.map +1 -0
  123. package/dist/local-web/constants.d.ts +13 -0
  124. package/dist/local-web/constants.d.ts.map +1 -0
  125. package/dist/local-web/constants.js +13 -0
  126. package/dist/local-web/constants.js.map +1 -0
  127. package/dist/local-web/etag.d.ts +19 -0
  128. package/dist/local-web/etag.d.ts.map +1 -0
  129. package/dist/local-web/etag.js +32 -0
  130. package/dist/local-web/etag.js.map +1 -0
  131. package/dist/local-web/host-guard.d.ts +12 -0
  132. package/dist/local-web/host-guard.d.ts.map +1 -0
  133. package/dist/local-web/host-guard.js +18 -0
  134. package/dist/local-web/host-guard.js.map +1 -0
  135. package/dist/local-web/index.d.ts +23 -0
  136. package/dist/local-web/index.d.ts.map +1 -0
  137. package/dist/local-web/index.js +23 -0
  138. package/dist/local-web/index.js.map +1 -0
  139. package/dist/local-web/local-server.d.ts +37 -0
  140. package/dist/local-web/local-server.d.ts.map +1 -0
  141. package/dist/local-web/local-server.js +85 -0
  142. package/dist/local-web/local-server.js.map +1 -0
  143. package/dist/local-web/open-browser.d.ts +12 -0
  144. package/dist/local-web/open-browser.d.ts.map +1 -0
  145. package/dist/{orchviz/open-url.js → local-web/open-browser.js} +9 -8
  146. package/dist/local-web/open-browser.js.map +1 -0
  147. package/dist/local-web/origin-guard.d.ts +11 -0
  148. package/dist/local-web/origin-guard.d.ts.map +1 -0
  149. package/dist/local-web/origin-guard.js +15 -0
  150. package/dist/local-web/origin-guard.js.map +1 -0
  151. package/dist/local-web/path-boundary.d.ts +20 -0
  152. package/dist/local-web/path-boundary.d.ts.map +1 -0
  153. package/dist/local-web/path-boundary.js +39 -0
  154. package/dist/local-web/path-boundary.js.map +1 -0
  155. package/dist/local-web/request-body.d.ts +24 -0
  156. package/dist/local-web/request-body.d.ts.map +1 -0
  157. package/dist/local-web/request-body.js +68 -0
  158. package/dist/local-web/request-body.js.map +1 -0
  159. package/dist/local-web/static-handler.d.ts +14 -0
  160. package/dist/local-web/static-handler.d.ts.map +1 -0
  161. package/dist/{orchviz/server → local-web}/static-handler.js +11 -6
  162. package/dist/local-web/static-handler.js.map +1 -0
  163. package/dist/migrate/capability-bootstrap-projection.d.ts +11 -0
  164. package/dist/migrate/capability-bootstrap-projection.d.ts.map +1 -0
  165. package/dist/migrate/capability-bootstrap-projection.js +48 -0
  166. package/dist/migrate/capability-bootstrap-projection.js.map +1 -0
  167. package/dist/migrate/migrate-orchestrator.d.ts.map +1 -1
  168. package/dist/migrate/migrate-orchestrator.js +22 -0
  169. package/dist/migrate/migrate-orchestrator.js.map +1 -1
  170. package/dist/migrate/reconcile/portable-manifest.d.ts +12 -12
  171. package/dist/migrate/reconcile/portable-registry.d.ts +30 -30
  172. package/dist/migrate/types.d.ts +10 -10
  173. package/dist/{orchviz/token-estimator.d.ts → token-estimator/index.d.ts} +6 -1
  174. package/dist/token-estimator/index.d.ts.map +1 -0
  175. package/dist/{orchviz/token-estimator.js → token-estimator/index.js} +11 -2
  176. package/dist/token-estimator/index.js.map +1 -0
  177. package/dist/visual-plan/__fixtures__/valid-plan.d.ts +15 -0
  178. package/dist/visual-plan/__fixtures__/valid-plan.d.ts.map +1 -0
  179. package/dist/visual-plan/__fixtures__/valid-plan.js +79 -0
  180. package/dist/visual-plan/__fixtures__/valid-plan.js.map +1 -0
  181. package/dist/visual-plan/application/apply-feedback.d.ts +31 -0
  182. package/dist/visual-plan/application/apply-feedback.d.ts.map +1 -0
  183. package/dist/visual-plan/application/apply-feedback.js +85 -0
  184. package/dist/visual-plan/application/apply-feedback.js.map +1 -0
  185. package/dist/visual-plan/application/apply-patch-op.d.ts +13 -0
  186. package/dist/visual-plan/application/apply-patch-op.d.ts.map +1 -0
  187. package/dist/visual-plan/application/apply-patch-op.js +72 -0
  188. package/dist/visual-plan/application/apply-patch-op.js.map +1 -0
  189. package/dist/visual-plan/application/approve.d.ts +24 -0
  190. package/dist/visual-plan/application/approve.d.ts.map +1 -0
  191. package/dist/visual-plan/application/approve.js +53 -0
  192. package/dist/visual-plan/application/approve.js.map +1 -0
  193. package/dist/visual-plan/application/clock.d.ts +8 -0
  194. package/dist/visual-plan/application/clock.d.ts.map +1 -0
  195. package/dist/visual-plan/application/clock.js +10 -0
  196. package/dist/visual-plan/application/clock.js.map +1 -0
  197. package/dist/visual-plan/application/export-plan.d.ts +19 -0
  198. package/dist/visual-plan/application/export-plan.d.ts.map +1 -0
  199. package/dist/visual-plan/application/export-plan.js +59 -0
  200. package/dist/visual-plan/application/export-plan.js.map +1 -0
  201. package/dist/visual-plan/application/patch-plan.d.ts +26 -0
  202. package/dist/visual-plan/application/patch-plan.d.ts.map +1 -0
  203. package/dist/visual-plan/application/patch-plan.js +48 -0
  204. package/dist/visual-plan/application/patch-plan.js.map +1 -0
  205. package/dist/visual-plan/application/prepare-feedback.d.ts +24 -0
  206. package/dist/visual-plan/application/prepare-feedback.d.ts.map +1 -0
  207. package/dist/visual-plan/application/prepare-feedback.js +70 -0
  208. package/dist/visual-plan/application/prepare-feedback.js.map +1 -0
  209. package/dist/visual-plan/application/rehash.d.ts +19 -0
  210. package/dist/visual-plan/application/rehash.d.ts.map +1 -0
  211. package/dist/visual-plan/application/rehash.js +43 -0
  212. package/dist/visual-plan/application/rehash.js.map +1 -0
  213. package/dist/visual-plan/application/status.d.ts +20 -0
  214. package/dist/visual-plan/application/status.d.ts.map +1 -0
  215. package/dist/visual-plan/application/status.js +27 -0
  216. package/dist/visual-plan/application/status.js.map +1 -0
  217. package/dist/visual-plan/application/validate-plan.d.ts +30 -0
  218. package/dist/visual-plan/application/validate-plan.d.ts.map +1 -0
  219. package/dist/visual-plan/application/validate-plan.js +59 -0
  220. package/dist/visual-plan/application/validate-plan.js.map +1 -0
  221. package/dist/visual-plan/domain/coverage.d.ts +35 -0
  222. package/dist/visual-plan/domain/coverage.d.ts.map +1 -0
  223. package/dist/visual-plan/domain/coverage.js +99 -0
  224. package/dist/visual-plan/domain/coverage.js.map +1 -0
  225. package/dist/visual-plan/domain/cross-refs.d.ts +20 -0
  226. package/dist/visual-plan/domain/cross-refs.d.ts.map +1 -0
  227. package/dist/visual-plan/domain/cross-refs.js +92 -0
  228. package/dist/visual-plan/domain/cross-refs.js.map +1 -0
  229. package/dist/visual-plan/domain/errors.d.ts +43 -0
  230. package/dist/visual-plan/domain/errors.d.ts.map +1 -0
  231. package/dist/visual-plan/domain/errors.js +33 -0
  232. package/dist/visual-plan/domain/errors.js.map +1 -0
  233. package/dist/visual-plan/domain/feedback-schemas.d.ts +160 -0
  234. package/dist/visual-plan/domain/feedback-schemas.d.ts.map +1 -0
  235. package/dist/visual-plan/domain/feedback-schemas.js +71 -0
  236. package/dist/visual-plan/domain/feedback-schemas.js.map +1 -0
  237. package/dist/visual-plan/domain/ids.d.ts +21 -0
  238. package/dist/visual-plan/domain/ids.d.ts.map +1 -0
  239. package/dist/visual-plan/domain/ids.js +25 -0
  240. package/dist/visual-plan/domain/ids.js.map +1 -0
  241. package/dist/visual-plan/domain/patches.d.ts +176 -0
  242. package/dist/visual-plan/domain/patches.d.ts.map +1 -0
  243. package/dist/visual-plan/domain/patches.js +41 -0
  244. package/dist/visual-plan/domain/patches.js.map +1 -0
  245. package/dist/visual-plan/domain/sanitizer-config.d.ts +61 -0
  246. package/dist/visual-plan/domain/sanitizer-config.d.ts.map +1 -0
  247. package/dist/visual-plan/domain/sanitizer-config.js +70 -0
  248. package/dist/visual-plan/domain/sanitizer-config.js.map +1 -0
  249. package/dist/visual-plan/domain/schemas.d.ts +1492 -0
  250. package/dist/visual-plan/domain/schemas.d.ts.map +1 -0
  251. package/dist/visual-plan/domain/schemas.js +166 -0
  252. package/dist/visual-plan/domain/schemas.js.map +1 -0
  253. package/dist/visual-plan/infrastructure/atomic-write.d.ts +11 -0
  254. package/dist/visual-plan/infrastructure/atomic-write.d.ts.map +1 -0
  255. package/dist/visual-plan/infrastructure/atomic-write.js +44 -0
  256. package/dist/visual-plan/infrastructure/atomic-write.js.map +1 -0
  257. package/dist/visual-plan/infrastructure/feedback-repository.d.ts +18 -0
  258. package/dist/visual-plan/infrastructure/feedback-repository.d.ts.map +1 -0
  259. package/dist/visual-plan/infrastructure/feedback-repository.js +59 -0
  260. package/dist/visual-plan/infrastructure/feedback-repository.js.map +1 -0
  261. package/dist/visual-plan/infrastructure/hashing.d.ts +37 -0
  262. package/dist/visual-plan/infrastructure/hashing.d.ts.map +1 -0
  263. package/dist/visual-plan/infrastructure/hashing.js +81 -0
  264. package/dist/visual-plan/infrastructure/hashing.js.map +1 -0
  265. package/dist/visual-plan/infrastructure/plan-state.d.ts +32 -0
  266. package/dist/visual-plan/infrastructure/plan-state.d.ts.map +1 -0
  267. package/dist/visual-plan/infrastructure/plan-state.js +58 -0
  268. package/dist/visual-plan/infrastructure/plan-state.js.map +1 -0
  269. package/dist/visual-plan/infrastructure/receipt-repository.d.ts +17 -0
  270. package/dist/visual-plan/infrastructure/receipt-repository.d.ts.map +1 -0
  271. package/dist/visual-plan/infrastructure/receipt-repository.js +59 -0
  272. package/dist/visual-plan/infrastructure/receipt-repository.js.map +1 -0
  273. package/dist/visual-plan/infrastructure/visual-plan-repository.d.ts +38 -0
  274. package/dist/visual-plan/infrastructure/visual-plan-repository.d.ts.map +1 -0
  275. package/dist/visual-plan/infrastructure/visual-plan-repository.js +97 -0
  276. package/dist/visual-plan/infrastructure/visual-plan-repository.js.map +1 -0
  277. package/dist/visual-plan/infrastructure/wireframe-sanitizer.d.ts +41 -0
  278. package/dist/visual-plan/infrastructure/wireframe-sanitizer.d.ts.map +1 -0
  279. package/dist/visual-plan/infrastructure/wireframe-sanitizer.js +72 -0
  280. package/dist/visual-plan/infrastructure/wireframe-sanitizer.js.map +1 -0
  281. package/dist/visual-plan/interface/cli.d.ts +29 -0
  282. package/dist/visual-plan/interface/cli.d.ts.map +1 -0
  283. package/dist/visual-plan/interface/cli.js +280 -0
  284. package/dist/visual-plan/interface/cli.js.map +1 -0
  285. package/dist/visual-plan/interface/studio.d.ts +20 -0
  286. package/dist/visual-plan/interface/studio.d.ts.map +1 -0
  287. package/dist/visual-plan/interface/studio.js +74 -0
  288. package/dist/visual-plan/interface/studio.js.map +1 -0
  289. package/dist/visual-plan/server/csp.d.ts +13 -0
  290. package/dist/visual-plan/server/csp.d.ts.map +1 -0
  291. package/dist/visual-plan/server/csp.js +17 -0
  292. package/dist/visual-plan/server/csp.js.map +1 -0
  293. package/dist/visual-plan/server/edit-lock.d.ts +28 -0
  294. package/dist/visual-plan/server/edit-lock.d.ts.map +1 -0
  295. package/dist/visual-plan/server/edit-lock.js +71 -0
  296. package/dist/visual-plan/server/edit-lock.js.map +1 -0
  297. package/dist/visual-plan/server/routes/feedback.d.ts +12 -0
  298. package/dist/visual-plan/server/routes/feedback.d.ts.map +1 -0
  299. package/dist/visual-plan/server/routes/feedback.js +63 -0
  300. package/dist/visual-plan/server/routes/feedback.js.map +1 -0
  301. package/dist/visual-plan/server/routes/get-plan.d.ts +14 -0
  302. package/dist/visual-plan/server/routes/get-plan.d.ts.map +1 -0
  303. package/dist/visual-plan/server/routes/get-plan.js +38 -0
  304. package/dist/visual-plan/server/routes/get-plan.js.map +1 -0
  305. package/dist/visual-plan/server/routes/patch.d.ts +10 -0
  306. package/dist/visual-plan/server/routes/patch.d.ts.map +1 -0
  307. package/dist/visual-plan/server/routes/patch.js +66 -0
  308. package/dist/visual-plan/server/routes/patch.js.map +1 -0
  309. package/dist/visual-plan/server/visual-plan-server.d.ts +30 -0
  310. package/dist/visual-plan/server/visual-plan-server.d.ts.map +1 -0
  311. package/dist/visual-plan/server/visual-plan-server.js +79 -0
  312. package/dist/visual-plan/server/visual-plan-server.js.map +1 -0
  313. package/dist/visual-plan-web/architects-daughter-latin-400-normal.woff +0 -0
  314. package/dist/visual-plan-web/architects-daughter-latin-400-normal.woff2 +0 -0
  315. package/dist/visual-plan-web/architects-daughter-latin-ext-400-normal.woff +0 -0
  316. package/dist/visual-plan-web/architects-daughter-latin-ext-400-normal.woff2 +0 -0
  317. package/dist/visual-plan-web/index.css +1 -0
  318. package/dist/visual-plan-web/index.html +17 -0
  319. package/dist/visual-plan-web/index.js +51 -0
  320. package/package.json +14 -17
  321. package/dist/commands/evolve.d.ts +0 -11
  322. package/dist/commands/evolve.d.ts.map +0 -1
  323. package/dist/commands/evolve.js +0 -63
  324. package/dist/commands/evolve.js.map +0 -1
  325. package/dist/commands/health.d.ts +0 -14
  326. package/dist/commands/health.d.ts.map +0 -1
  327. package/dist/commands/health.js +0 -193
  328. package/dist/commands/health.js.map +0 -1
  329. package/dist/commands/orchviz.d.ts +0 -12
  330. package/dist/commands/orchviz.d.ts.map +0 -1
  331. package/dist/commands/orchviz.js +0 -157
  332. package/dist/commands/orchviz.js.map +0 -1
  333. package/dist/commands/policy.d.ts +0 -8
  334. package/dist/commands/policy.d.ts.map +0 -1
  335. package/dist/commands/policy.js +0 -65
  336. package/dist/commands/policy.js.map +0 -1
  337. package/dist/commands/portability.d.ts +0 -7
  338. package/dist/commands/portability.d.ts.map +0 -1
  339. package/dist/commands/portability.js +0 -50
  340. package/dist/commands/portability.js.map +0 -1
  341. package/dist/commands/reflect.d.ts +0 -14
  342. package/dist/commands/reflect.d.ts.map +0 -1
  343. package/dist/commands/reflect.js +0 -135
  344. package/dist/commands/reflect.js.map +0 -1
  345. package/dist/commands/simulate.d.ts +0 -14
  346. package/dist/commands/simulate.d.ts.map +0 -1
  347. package/dist/commands/simulate.js +0 -86
  348. package/dist/commands/simulate.js.map +0 -1
  349. package/dist/core/event-log.d.ts +0 -44
  350. package/dist/core/event-log.d.ts.map +0 -1
  351. package/dist/core/event-log.js +0 -169
  352. package/dist/core/event-log.js.map +0 -1
  353. package/dist/core/evolution/event-clusters.d.ts +0 -4
  354. package/dist/core/evolution/event-clusters.d.ts.map +0 -1
  355. package/dist/core/evolution/event-clusters.js +0 -82
  356. package/dist/core/evolution/event-clusters.js.map +0 -1
  357. package/dist/core/evolution/recommendation-renderer.d.ts +0 -3
  358. package/dist/core/evolution/recommendation-renderer.d.ts.map +0 -1
  359. package/dist/core/evolution/recommendation-renderer.js +0 -24
  360. package/dist/core/evolution/recommendation-renderer.js.map +0 -1
  361. package/dist/core/evolution/review-failure-clusters.d.ts +0 -10
  362. package/dist/core/evolution/review-failure-clusters.d.ts.map +0 -1
  363. package/dist/core/evolution/review-failure-clusters.js +0 -30
  364. package/dist/core/evolution/review-failure-clusters.js.map +0 -1
  365. package/dist/core/evolution/suggestions.d.ts +0 -24
  366. package/dist/core/evolution/suggestions.d.ts.map +0 -1
  367. package/dist/core/evolution/suggestions.js +0 -11
  368. package/dist/core/evolution/suggestions.js.map +0 -1
  369. package/dist/core/gate-policy.d.ts +0 -20
  370. package/dist/core/gate-policy.d.ts.map +0 -1
  371. package/dist/core/gate-policy.js +0 -64
  372. package/dist/core/gate-policy.js.map +0 -1
  373. package/dist/core/portability-matrix.d.ts +0 -17
  374. package/dist/core/portability-matrix.d.ts.map +0 -1
  375. package/dist/core/portability-matrix.js +0 -31
  376. package/dist/core/portability-matrix.js.map +0 -1
  377. package/dist/core/simulation-runner.d.ts +0 -93
  378. package/dist/core/simulation-runner.d.ts.map +0 -1
  379. package/dist/core/simulation-runner.js +0 -161
  380. package/dist/core/simulation-runner.js.map +0 -1
  381. package/dist/core/usage/usage-analyzer.d.ts +0 -18
  382. package/dist/core/usage/usage-analyzer.d.ts.map +0 -1
  383. package/dist/core/usage/usage-analyzer.js +0 -41
  384. package/dist/core/usage/usage-analyzer.js.map +0 -1
  385. package/dist/memory/archive.d.ts +0 -9
  386. package/dist/memory/archive.d.ts.map +0 -1
  387. package/dist/memory/archive.js +0 -42
  388. package/dist/memory/archive.js.map +0 -1
  389. package/dist/memory/compact.d.ts +0 -9
  390. package/dist/memory/compact.d.ts.map +0 -1
  391. package/dist/memory/compact.js +0 -33
  392. package/dist/memory/compact.js.map +0 -1
  393. package/dist/memory/conflicts.d.ts +0 -8
  394. package/dist/memory/conflicts.d.ts.map +0 -1
  395. package/dist/memory/conflicts.js +0 -28
  396. package/dist/memory/conflicts.js.map +0 -1
  397. package/dist/memory/promote.d.ts +0 -8
  398. package/dist/memory/promote.d.ts.map +0 -1
  399. package/dist/memory/promote.js +0 -10
  400. package/dist/memory/promote.js.map +0 -1
  401. package/dist/memory/store-utils.d.ts +0 -14
  402. package/dist/memory/store-utils.d.ts.map +0 -1
  403. package/dist/memory/store-utils.js +0 -44
  404. package/dist/memory/store-utils.js.map +0 -1
  405. package/dist/migrate/__tests__/frontmatter-parser.test.d.ts +0 -2
  406. package/dist/migrate/__tests__/frontmatter-parser.test.d.ts.map +0 -1
  407. package/dist/migrate/__tests__/frontmatter-parser.test.js +0 -73
  408. package/dist/migrate/__tests__/frontmatter-parser.test.js.map +0 -1
  409. package/dist/migrate/__tests__/md-strip-mewkit.test.d.ts +0 -2
  410. package/dist/migrate/__tests__/md-strip-mewkit.test.d.ts.map +0 -1
  411. package/dist/migrate/__tests__/md-strip-mewkit.test.js +0 -55
  412. package/dist/migrate/__tests__/md-strip-mewkit.test.js.map +0 -1
  413. package/dist/migrate/__tests__/migrate-scope-resolver.test.d.ts +0 -2
  414. package/dist/migrate/__tests__/migrate-scope-resolver.test.d.ts.map +0 -1
  415. package/dist/migrate/__tests__/migrate-scope-resolver.test.js +0 -53
  416. package/dist/migrate/__tests__/migrate-scope-resolver.test.js.map +0 -1
  417. package/dist/migrate/__tests__/process-lock.test.d.ts +0 -2
  418. package/dist/migrate/__tests__/process-lock.test.d.ts.map +0 -1
  419. package/dist/migrate/__tests__/process-lock.test.js +0 -63
  420. package/dist/migrate/__tests__/process-lock.test.js.map +0 -1
  421. package/dist/migrate/__tests__/provider-registry.test.d.ts +0 -2
  422. package/dist/migrate/__tests__/provider-registry.test.d.ts.map +0 -1
  423. package/dist/migrate/__tests__/provider-registry.test.js +0 -53
  424. package/dist/migrate/__tests__/provider-registry.test.js.map +0 -1
  425. package/dist/migrate/__tests__/reconciler.test.d.ts +0 -2
  426. package/dist/migrate/__tests__/reconciler.test.d.ts.map +0 -1
  427. package/dist/migrate/__tests__/reconciler.test.js +0 -180
  428. package/dist/migrate/__tests__/reconciler.test.js.map +0 -1
  429. package/dist/migrate/__tests__/skill-id-utils.test.d.ts +0 -2
  430. package/dist/migrate/__tests__/skill-id-utils.test.d.ts.map +0 -1
  431. package/dist/migrate/__tests__/skill-id-utils.test.js +0 -78
  432. package/dist/migrate/__tests__/skill-id-utils.test.js.map +0 -1
  433. package/dist/migrate/converters/md-to-codex-rules.d.ts +0 -10
  434. package/dist/migrate/converters/md-to-codex-rules.d.ts.map +0 -1
  435. package/dist/migrate/converters/md-to-codex-rules.js +0 -133
  436. package/dist/migrate/converters/md-to-codex-rules.js.map +0 -1
  437. package/dist/orchviz/constants.d.ts +0 -72
  438. package/dist/orchviz/constants.d.ts.map +0 -1
  439. package/dist/orchviz/constants.js +0 -105
  440. package/dist/orchviz/constants.js.map +0 -1
  441. package/dist/orchviz/fs-utils.d.ts +0 -24
  442. package/dist/orchviz/fs-utils.d.ts.map +0 -1
  443. package/dist/orchviz/fs-utils.js +0 -49
  444. package/dist/orchviz/fs-utils.js.map +0 -1
  445. package/dist/orchviz/index.d.ts +0 -29
  446. package/dist/orchviz/index.d.ts.map +0 -1
  447. package/dist/orchviz/index.js +0 -28
  448. package/dist/orchviz/index.js.map +0 -1
  449. package/dist/orchviz/log-persister.d.ts +0 -22
  450. package/dist/orchviz/log-persister.d.ts.map +0 -1
  451. package/dist/orchviz/log-persister.js +0 -96
  452. package/dist/orchviz/log-persister.js.map +0 -1
  453. package/dist/orchviz/logger.d.ts +0 -13
  454. package/dist/orchviz/logger.d.ts.map +0 -1
  455. package/dist/orchviz/logger.js +0 -47
  456. package/dist/orchviz/logger.js.map +0 -1
  457. package/dist/orchviz/open-url.d.ts +0 -11
  458. package/dist/orchviz/open-url.d.ts.map +0 -1
  459. package/dist/orchviz/open-url.js.map +0 -1
  460. package/dist/orchviz/overlay/collector.d.ts +0 -29
  461. package/dist/orchviz/overlay/collector.d.ts.map +0 -1
  462. package/dist/orchviz/overlay/collector.js +0 -38
  463. package/dist/orchviz/overlay/collector.js.map +0 -1
  464. package/dist/orchviz/overlay/gate-readers.d.ts +0 -18
  465. package/dist/orchviz/overlay/gate-readers.d.ts.map +0 -1
  466. package/dist/orchviz/overlay/gate-readers.js +0 -111
  467. package/dist/orchviz/overlay/gate-readers.js.map +0 -1
  468. package/dist/orchviz/overlay/session-state-readers.d.ts +0 -18
  469. package/dist/orchviz/overlay/session-state-readers.d.ts.map +0 -1
  470. package/dist/orchviz/overlay/session-state-readers.js +0 -78
  471. package/dist/orchviz/overlay/session-state-readers.js.map +0 -1
  472. package/dist/orchviz/parser/handle-progress.d.ts +0 -9
  473. package/dist/orchviz/parser/handle-progress.d.ts.map +0 -1
  474. package/dist/orchviz/parser/handle-progress.js +0 -38
  475. package/dist/orchviz/parser/handle-progress.js.map +0 -1
  476. package/dist/orchviz/parser/handle-system.d.ts +0 -22
  477. package/dist/orchviz/parser/handle-system.d.ts.map +0 -1
  478. package/dist/orchviz/parser/handle-system.js +0 -99
  479. package/dist/orchviz/parser/handle-system.js.map +0 -1
  480. package/dist/orchviz/parser/handle-text.d.ts +0 -10
  481. package/dist/orchviz/parser/handle-text.d.ts.map +0 -1
  482. package/dist/orchviz/parser/handle-text.js +0 -83
  483. package/dist/orchviz/parser/handle-text.js.map +0 -1
  484. package/dist/orchviz/parser/handle-thinking.d.ts +0 -10
  485. package/dist/orchviz/parser/handle-thinking.d.ts.map +0 -1
  486. package/dist/orchviz/parser/handle-thinking.js +0 -35
  487. package/dist/orchviz/parser/handle-thinking.js.map +0 -1
  488. package/dist/orchviz/parser/handle-tool-result.d.ts +0 -10
  489. package/dist/orchviz/parser/handle-tool-result.d.ts.map +0 -1
  490. package/dist/orchviz/parser/handle-tool-result.js +0 -130
  491. package/dist/orchviz/parser/handle-tool-result.js.map +0 -1
  492. package/dist/orchviz/parser/handle-tool-use.d.ts +0 -11
  493. package/dist/orchviz/parser/handle-tool-use.d.ts.map +0 -1
  494. package/dist/orchviz/parser/handle-tool-use.js +0 -120
  495. package/dist/orchviz/parser/handle-tool-use.js.map +0 -1
  496. package/dist/orchviz/parser/index.d.ts +0 -38
  497. package/dist/orchviz/parser/index.d.ts.map +0 -1
  498. package/dist/orchviz/parser/index.js +0 -144
  499. package/dist/orchviz/parser/index.js.map +0 -1
  500. package/dist/orchviz/parser/label-helpers.d.ts +0 -9
  501. package/dist/orchviz/parser/label-helpers.d.ts.map +0 -1
  502. package/dist/orchviz/parser/label-helpers.js +0 -44
  503. package/dist/orchviz/parser/label-helpers.js.map +0 -1
  504. package/dist/orchviz/parser/strip-ansi.d.ts +0 -6
  505. package/dist/orchviz/parser/strip-ansi.d.ts.map +0 -1
  506. package/dist/orchviz/parser/strip-ansi.js +0 -14
  507. package/dist/orchviz/parser/strip-ansi.js.map +0 -1
  508. package/dist/orchviz/parser/utils.d.ts +0 -20
  509. package/dist/orchviz/parser/utils.d.ts.map +0 -1
  510. package/dist/orchviz/parser/utils.js +0 -54
  511. package/dist/orchviz/parser/utils.js.map +0 -1
  512. package/dist/orchviz/permission-detection.d.ts +0 -32
  513. package/dist/orchviz/permission-detection.d.ts.map +0 -1
  514. package/dist/orchviz/permission-detection.js +0 -104
  515. package/dist/orchviz/permission-detection.js.map +0 -1
  516. package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.d.ts +0 -15
  517. package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.d.ts.map +0 -1
  518. package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.js +0 -165
  519. package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.js.map +0 -1
  520. package/dist/orchviz/plan/__tests__/atomic-write.test.d.ts +0 -11
  521. package/dist/orchviz/plan/__tests__/atomic-write.test.d.ts.map +0 -1
  522. package/dist/orchviz/plan/__tests__/atomic-write.test.js +0 -89
  523. package/dist/orchviz/plan/__tests__/atomic-write.test.js.map +0 -1
  524. package/dist/orchviz/plan/__tests__/end-to-end.test.d.ts +0 -10
  525. package/dist/orchviz/plan/__tests__/end-to-end.test.d.ts.map +0 -1
  526. package/dist/orchviz/plan/__tests__/end-to-end.test.js +0 -132
  527. package/dist/orchviz/plan/__tests__/end-to-end.test.js.map +0 -1
  528. package/dist/orchviz/plan/__tests__/etag.test.d.ts +0 -11
  529. package/dist/orchviz/plan/__tests__/etag.test.d.ts.map +0 -1
  530. package/dist/orchviz/plan/__tests__/etag.test.js +0 -92
  531. package/dist/orchviz/plan/__tests__/etag.test.js.map +0 -1
  532. package/dist/orchviz/plan/__tests__/list-plans.test.d.ts +0 -14
  533. package/dist/orchviz/plan/__tests__/list-plans.test.d.ts.map +0 -1
  534. package/dist/orchviz/plan/__tests__/list-plans.test.js +0 -154
  535. package/dist/orchviz/plan/__tests__/list-plans.test.js.map +0 -1
  536. package/dist/orchviz/plan/apply-todo-toggle.d.ts +0 -29
  537. package/dist/orchviz/plan/apply-todo-toggle.d.ts.map +0 -1
  538. package/dist/orchviz/plan/apply-todo-toggle.js +0 -129
  539. package/dist/orchviz/plan/apply-todo-toggle.js.map +0 -1
  540. package/dist/orchviz/plan/atomic-write.d.ts +0 -25
  541. package/dist/orchviz/plan/atomic-write.d.ts.map +0 -1
  542. package/dist/orchviz/plan/atomic-write.js +0 -85
  543. package/dist/orchviz/plan/atomic-write.js.map +0 -1
  544. package/dist/orchviz/plan/collector.d.ts +0 -49
  545. package/dist/orchviz/plan/collector.d.ts.map +0 -1
  546. package/dist/orchviz/plan/collector.js +0 -169
  547. package/dist/orchviz/plan/collector.js.map +0 -1
  548. package/dist/orchviz/plan/etag.d.ts +0 -24
  549. package/dist/orchviz/plan/etag.d.ts.map +0 -1
  550. package/dist/orchviz/plan/etag.js +0 -58
  551. package/dist/orchviz/plan/etag.js.map +0 -1
  552. package/dist/orchviz/plan/find-active-plan.d.ts +0 -9
  553. package/dist/orchviz/plan/find-active-plan.d.ts.map +0 -1
  554. package/dist/orchviz/plan/find-active-plan.js +0 -90
  555. package/dist/orchviz/plan/find-active-plan.js.map +0 -1
  556. package/dist/orchviz/plan/index.d.ts +0 -23
  557. package/dist/orchviz/plan/index.d.ts.map +0 -1
  558. package/dist/orchviz/plan/index.js +0 -91
  559. package/dist/orchviz/plan/index.js.map +0 -1
  560. package/dist/orchviz/plan/list-plans.d.ts +0 -19
  561. package/dist/orchviz/plan/list-plans.d.ts.map +0 -1
  562. package/dist/orchviz/plan/list-plans.js +0 -143
  563. package/dist/orchviz/plan/list-plans.js.map +0 -1
  564. package/dist/orchviz/plan/parse-phase-file.d.ts +0 -13
  565. package/dist/orchviz/plan/parse-phase-file.d.ts.map +0 -1
  566. package/dist/orchviz/plan/parse-phase-file.js +0 -134
  567. package/dist/orchviz/plan/parse-phase-file.js.map +0 -1
  568. package/dist/orchviz/plan/parse-plan-file.d.ts +0 -19
  569. package/dist/orchviz/plan/parse-plan-file.d.ts.map +0 -1
  570. package/dist/orchviz/plan/parse-plan-file.js +0 -62
  571. package/dist/orchviz/plan/parse-plan-file.js.map +0 -1
  572. package/dist/orchviz/plan/plan-constants.d.ts +0 -17
  573. package/dist/orchviz/plan/plan-constants.d.ts.map +0 -1
  574. package/dist/orchviz/plan/plan-constants.js +0 -19
  575. package/dist/orchviz/plan/plan-constants.js.map +0 -1
  576. package/dist/orchviz/plan/plan-lifecycle.d.ts +0 -17
  577. package/dist/orchviz/plan/plan-lifecycle.d.ts.map +0 -1
  578. package/dist/orchviz/plan/plan-lifecycle.js +0 -97
  579. package/dist/orchviz/plan/plan-lifecycle.js.map +0 -1
  580. package/dist/orchviz/plan/types.d.ts +0 -46
  581. package/dist/orchviz/plan/types.d.ts.map +0 -1
  582. package/dist/orchviz/plan/types.js +0 -6
  583. package/dist/orchviz/plan/types.js.map +0 -1
  584. package/dist/orchviz/protocol.d.ts +0 -171
  585. package/dist/orchviz/protocol.d.ts.map +0 -1
  586. package/dist/orchviz/protocol.js +0 -23
  587. package/dist/orchviz/protocol.js.map +0 -1
  588. package/dist/orchviz/redact.d.ts +0 -10
  589. package/dist/orchviz/redact.d.ts.map +0 -1
  590. package/dist/orchviz/redact.js +0 -38
  591. package/dist/orchviz/redact.js.map +0 -1
  592. package/dist/orchviz/sanitize.d.ts +0 -11
  593. package/dist/orchviz/sanitize.d.ts.map +0 -1
  594. package/dist/orchviz/sanitize.js +0 -38
  595. package/dist/orchviz/sanitize.js.map +0 -1
  596. package/dist/orchviz/server/__tests__/security-smoke.test.d.ts +0 -13
  597. package/dist/orchviz/server/__tests__/security-smoke.test.d.ts.map +0 -1
  598. package/dist/orchviz/server/__tests__/security-smoke.test.js +0 -207
  599. package/dist/orchviz/server/__tests__/security-smoke.test.js.map +0 -1
  600. package/dist/orchviz/server/__tests__/write-handlers.test.d.ts +0 -24
  601. package/dist/orchviz/server/__tests__/write-handlers.test.d.ts.map +0 -1
  602. package/dist/orchviz/server/__tests__/write-handlers.test.js +0 -347
  603. package/dist/orchviz/server/__tests__/write-handlers.test.js.map +0 -1
  604. package/dist/orchviz/server/api-handlers.d.ts +0 -55
  605. package/dist/orchviz/server/api-handlers.d.ts.map +0 -1
  606. package/dist/orchviz/server/api-handlers.js +0 -112
  607. package/dist/orchviz/server/api-handlers.js.map +0 -1
  608. package/dist/orchviz/server/index.d.ts +0 -36
  609. package/dist/orchviz/server/index.d.ts.map +0 -1
  610. package/dist/orchviz/server/index.js +0 -144
  611. package/dist/orchviz/server/index.js.map +0 -1
  612. package/dist/orchviz/server/sse-handler.d.ts +0 -28
  613. package/dist/orchviz/server/sse-handler.d.ts.map +0 -1
  614. package/dist/orchviz/server/sse-handler.js +0 -217
  615. package/dist/orchviz/server/sse-handler.js.map +0 -1
  616. package/dist/orchviz/server/static-handler.d.ts +0 -9
  617. package/dist/orchviz/server/static-handler.d.ts.map +0 -1
  618. package/dist/orchviz/server/static-handler.js.map +0 -1
  619. package/dist/orchviz/server/write-handlers.d.ts +0 -20
  620. package/dist/orchviz/server/write-handlers.d.ts.map +0 -1
  621. package/dist/orchviz/server/write-handlers.js +0 -184
  622. package/dist/orchviz/server/write-handlers.js.map +0 -1
  623. package/dist/orchviz/server/write-utils.d.ts +0 -59
  624. package/dist/orchviz/server/write-utils.d.ts.map +0 -1
  625. package/dist/orchviz/server/write-utils.js +0 -161
  626. package/dist/orchviz/server/write-utils.js.map +0 -1
  627. package/dist/orchviz/session-discovery.d.ts +0 -19
  628. package/dist/orchviz/session-discovery.d.ts.map +0 -1
  629. package/dist/orchviz/session-discovery.js +0 -104
  630. package/dist/orchviz/session-discovery.js.map +0 -1
  631. package/dist/orchviz/session-manager.d.ts +0 -17
  632. package/dist/orchviz/session-manager.d.ts.map +0 -1
  633. package/dist/orchviz/session-manager.js +0 -63
  634. package/dist/orchviz/session-manager.js.map +0 -1
  635. package/dist/orchviz/session-runtime.d.ts +0 -21
  636. package/dist/orchviz/session-runtime.d.ts.map +0 -1
  637. package/dist/orchviz/session-runtime.js +0 -135
  638. package/dist/orchviz/session-runtime.js.map +0 -1
  639. package/dist/orchviz/session-watcher.d.ts +0 -33
  640. package/dist/orchviz/session-watcher.d.ts.map +0 -1
  641. package/dist/orchviz/session-watcher.js +0 -135
  642. package/dist/orchviz/session-watcher.js.map +0 -1
  643. package/dist/orchviz/subagent-meta.d.ts +0 -12
  644. package/dist/orchviz/subagent-meta.d.ts.map +0 -1
  645. package/dist/orchviz/subagent-meta.js +0 -34
  646. package/dist/orchviz/subagent-meta.js.map +0 -1
  647. package/dist/orchviz/subagent-scanner.d.ts +0 -15
  648. package/dist/orchviz/subagent-scanner.d.ts.map +0 -1
  649. package/dist/orchviz/subagent-scanner.js +0 -27
  650. package/dist/orchviz/subagent-scanner.js.map +0 -1
  651. package/dist/orchviz/subagent-watcher.d.ts +0 -20
  652. package/dist/orchviz/subagent-watcher.d.ts.map +0 -1
  653. package/dist/orchviz/subagent-watcher.js +0 -160
  654. package/dist/orchviz/subagent-watcher.js.map +0 -1
  655. package/dist/orchviz/test-server-boot.d.ts +0 -28
  656. package/dist/orchviz/test-server-boot.d.ts.map +0 -1
  657. package/dist/orchviz/test-server-boot.js +0 -64
  658. package/dist/orchviz/test-server-boot.js.map +0 -1
  659. package/dist/orchviz/token-estimator.d.ts.map +0 -1
  660. package/dist/orchviz/token-estimator.js.map +0 -1
  661. package/dist/orchviz/tool-input-data.d.ts +0 -11
  662. package/dist/orchviz/tool-input-data.d.ts.map +0 -1
  663. package/dist/orchviz/tool-input-data.js +0 -74
  664. package/dist/orchviz/tool-input-data.js.map +0 -1
  665. package/dist/orchviz/tool-summarizer.d.ts +0 -16
  666. package/dist/orchviz/tool-summarizer.d.ts.map +0 -1
  667. package/dist/orchviz/tool-summarizer.js +0 -129
  668. package/dist/orchviz/tool-summarizer.js.map +0 -1
  669. package/dist/orchviz-web/fira-code-cyrillic-400-normal.woff +0 -0
  670. package/dist/orchviz-web/fira-code-cyrillic-400-normal.woff2 +0 -0
  671. package/dist/orchviz-web/fira-code-cyrillic-500-normal.woff +0 -0
  672. package/dist/orchviz-web/fira-code-cyrillic-500-normal.woff2 +0 -0
  673. package/dist/orchviz-web/fira-code-cyrillic-ext-400-normal.woff +0 -0
  674. package/dist/orchviz-web/fira-code-cyrillic-ext-400-normal.woff2 +0 -0
  675. package/dist/orchviz-web/fira-code-cyrillic-ext-500-normal.woff +0 -0
  676. package/dist/orchviz-web/fira-code-cyrillic-ext-500-normal.woff2 +0 -0
  677. package/dist/orchviz-web/fira-code-greek-400-normal.woff +0 -0
  678. package/dist/orchviz-web/fira-code-greek-400-normal.woff2 +0 -0
  679. package/dist/orchviz-web/fira-code-greek-500-normal.woff +0 -0
  680. package/dist/orchviz-web/fira-code-greek-500-normal.woff2 +0 -0
  681. package/dist/orchviz-web/fira-code-greek-ext-400-normal.woff +0 -0
  682. package/dist/orchviz-web/fira-code-greek-ext-400-normal.woff2 +0 -0
  683. package/dist/orchviz-web/fira-code-greek-ext-500-normal.woff +0 -0
  684. package/dist/orchviz-web/fira-code-greek-ext-500-normal.woff2 +0 -0
  685. package/dist/orchviz-web/fira-code-latin-400-normal.woff +0 -0
  686. package/dist/orchviz-web/fira-code-latin-400-normal.woff2 +0 -0
  687. package/dist/orchviz-web/fira-code-latin-500-normal.woff +0 -0
  688. package/dist/orchviz-web/fira-code-latin-500-normal.woff2 +0 -0
  689. package/dist/orchviz-web/fira-code-latin-ext-400-normal.woff +0 -0
  690. package/dist/orchviz-web/fira-code-latin-ext-400-normal.woff2 +0 -0
  691. package/dist/orchviz-web/fira-code-latin-ext-500-normal.woff +0 -0
  692. package/dist/orchviz-web/fira-code-latin-ext-500-normal.woff2 +0 -0
  693. package/dist/orchviz-web/fira-code-symbols2-400-normal.woff +0 -0
  694. package/dist/orchviz-web/fira-code-symbols2-500-normal.woff +0 -0
  695. package/dist/orchviz-web/index.css +0 -1
  696. package/dist/orchviz-web/index.html +0 -18
  697. package/dist/orchviz-web/index.js +0 -53
  698. package/dist/orchviz-web/inter-cyrillic-400-normal.woff +0 -0
  699. package/dist/orchviz-web/inter-cyrillic-400-normal.woff2 +0 -0
  700. package/dist/orchviz-web/inter-cyrillic-500-normal.woff +0 -0
  701. package/dist/orchviz-web/inter-cyrillic-500-normal.woff2 +0 -0
  702. package/dist/orchviz-web/inter-cyrillic-600-normal.woff +0 -0
  703. package/dist/orchviz-web/inter-cyrillic-600-normal.woff2 +0 -0
  704. package/dist/orchviz-web/inter-cyrillic-ext-400-normal.woff +0 -0
  705. package/dist/orchviz-web/inter-cyrillic-ext-400-normal.woff2 +0 -0
  706. package/dist/orchviz-web/inter-cyrillic-ext-500-normal.woff +0 -0
  707. package/dist/orchviz-web/inter-cyrillic-ext-500-normal.woff2 +0 -0
  708. package/dist/orchviz-web/inter-cyrillic-ext-600-normal.woff +0 -0
  709. package/dist/orchviz-web/inter-cyrillic-ext-600-normal.woff2 +0 -0
  710. package/dist/orchviz-web/inter-greek-400-normal.woff +0 -0
  711. package/dist/orchviz-web/inter-greek-400-normal.woff2 +0 -0
  712. package/dist/orchviz-web/inter-greek-500-normal.woff +0 -0
  713. package/dist/orchviz-web/inter-greek-500-normal.woff2 +0 -0
  714. package/dist/orchviz-web/inter-greek-600-normal.woff +0 -0
  715. package/dist/orchviz-web/inter-greek-600-normal.woff2 +0 -0
  716. package/dist/orchviz-web/inter-greek-ext-400-normal.woff +0 -0
  717. package/dist/orchviz-web/inter-greek-ext-400-normal.woff2 +0 -0
  718. package/dist/orchviz-web/inter-greek-ext-500-normal.woff +0 -0
  719. package/dist/orchviz-web/inter-greek-ext-500-normal.woff2 +0 -0
  720. package/dist/orchviz-web/inter-greek-ext-600-normal.woff +0 -0
  721. package/dist/orchviz-web/inter-greek-ext-600-normal.woff2 +0 -0
  722. package/dist/orchviz-web/inter-latin-400-normal.woff +0 -0
  723. package/dist/orchviz-web/inter-latin-400-normal.woff2 +0 -0
  724. package/dist/orchviz-web/inter-latin-500-normal.woff +0 -0
  725. package/dist/orchviz-web/inter-latin-500-normal.woff2 +0 -0
  726. package/dist/orchviz-web/inter-latin-600-normal.woff +0 -0
  727. package/dist/orchviz-web/inter-latin-600-normal.woff2 +0 -0
  728. package/dist/orchviz-web/inter-latin-ext-400-normal.woff +0 -0
  729. package/dist/orchviz-web/inter-latin-ext-400-normal.woff2 +0 -0
  730. package/dist/orchviz-web/inter-latin-ext-500-normal.woff +0 -0
  731. package/dist/orchviz-web/inter-latin-ext-500-normal.woff2 +0 -0
  732. package/dist/orchviz-web/inter-latin-ext-600-normal.woff +0 -0
  733. package/dist/orchviz-web/inter-latin-ext-600-normal.woff2 +0 -0
  734. package/dist/orchviz-web/inter-vietnamese-400-normal.woff +0 -0
  735. package/dist/orchviz-web/inter-vietnamese-400-normal.woff2 +0 -0
  736. package/dist/orchviz-web/inter-vietnamese-500-normal.woff +0 -0
  737. package/dist/orchviz-web/inter-vietnamese-500-normal.woff2 +0 -0
  738. package/dist/orchviz-web/inter-vietnamese-600-normal.woff +0 -0
  739. package/dist/orchviz-web/inter-vietnamese-600-normal.woff2 +0 -0
package/NOTICE ADDED
@@ -0,0 +1,24 @@
1
+ MeowKit (mewkit)
2
+ Copyright (c) 2026 MeowKit Contributors
3
+
4
+ This product is licensed under the MIT License (see LICENSE) and includes
5
+ software ported from third-party sources under their own licenses:
6
+
7
+ ------------------------------------------------------------------------
8
+ agent-flow — https://github.com/patoles/agent-flow (commit 59ccf4e)
9
+ Copyright the agent-flow authors
10
+ Licensed under the Apache License, Version 2.0.
11
+
12
+ Portions of the loopback HTTP server lifecycle, the static-file handler
13
+ (including its path-traversal guard), the cross-platform browser launcher,
14
+ and the token-estimation heuristic were ported from agent-flow. The affected
15
+ files carry an attribution header referencing this NOTICE:
16
+
17
+ - src/local-web/local-server.ts
18
+ - src/local-web/static-handler.ts
19
+ - src/local-web/open-browser.ts
20
+ - src/token-estimator/index.ts
21
+
22
+ A copy of the Apache License, Version 2.0 is available at:
23
+ https://www.apache.org/licenses/LICENSE-2.0
24
+ ------------------------------------------------------------------------
package/README.md CHANGED
@@ -25,7 +25,8 @@ npx mewkit <command> # Runtime commands
25
25
  | `meowkit status` | Print version, channel, and config |
26
26
  | `meowkit task new` | Create structured task file from template |
27
27
  | `meowkit task list` | List active tasks with status |
28
- | `meowkit orchviz` | Live web visualizer for the active Claude Code session |
28
+ | `meowkit capabilities` | Resolve installed skills/commands/tools for an intent (`list`, `explain`, `resolve`, `projections`) |
29
+ | `meowkit visual-plan` | Structured visual plan: validate/approve/edit/view + feedback loop |
29
30
  | `meowkit pack` | `list` / `add <pack>` / `remove <pack>` — manage installed domains |
30
31
  | `meowkit migrate` | Export the `.claude/` setup to other coding agents (Codex, Cursor, …) |
31
32
 
@@ -59,6 +60,12 @@ What migrates where for Codex:
59
60
  | `.claude/hooks/*.cjs` | `.codex/hooks/` + `hooks.json` (version-gated events) |
60
61
  | `.mcp.json` (opt-in) | `config.toml [mcp_servers]` (`--include-mcp`) |
61
62
 
63
+ For Codex, migration also writes a bounded capability-resolution instruction to
64
+ `AGENTS.md` and a data-only `.codex/capabilities.json` snapshot. This lets an
65
+ agent run `npx mewkit capabilities resolve --intent "..." --provider codex`
66
+ even when the original `.claude/` directory is no longer present. The snapshot
67
+ is resolver data; it is not injected into model context.
68
+
62
69
  Markdown references are rewritten with a fence-aware classifier: inline
63
70
  references point at the new locations, runnable fenced commands are only
64
71
  rewritten when the referenced asset migrates in the same run (otherwise they
@@ -136,80 +143,39 @@ npx mewkit memory --show # Display lessons learned
136
143
  npx mewkit memory --clear # Reset memory
137
144
  ```
138
145
 
139
- ## Visualizer (`meowkit orchviz`)
140
-
141
- Live web visualizer for the active Claude Code session. Tails the JSONL
142
- transcript at `~/.claude/projects/<encoded-cwd>/<session>.jsonl`, parses it
143
- into structured `AgentEvent`s, and serves them at `http://127.0.0.1:<port>/`
144
- as a Canvas2D + d3-force interactive graph plus a live transcript panel and
145
- meowkit-specific overlays (Gate state, model tier, today's tokens, phase).
146
-
147
- ```bash
148
- # Default: random port, auto-open browser
149
- npx mewkit orchviz
150
-
151
- # Custom flags
152
- npx mewkit orchviz --port 3001 # fixed port (0 = random)
153
- npx mewkit orchviz --no-open # don't auto-launch browser
154
- npx mewkit orchviz --session <uuid> # pin to a single session id
155
- npx mewkit orchviz --workspace . # override watched workspace (default: cwd)
156
- npx mewkit orchviz --verbose # print sanitized AgentEvents to stderr
157
- npx mewkit orchviz --log # persist to .claude/logs/orchviz-<sid>.md
158
- npx mewkit orchviz --log /tmp/run.md # custom path (must end .md)
159
- ```
160
-
161
- **Security:** server binds 127.0.0.1 only; Host-header guarded against DNS
162
- rebinding; SSE frames sanitized (ANSI strip + strict-prefix secret scrub on
163
- `sk-…`, `ghp_…`, `AKIA…`, PEM blocks); path traversal blocked.
164
-
165
- **Limitations (v1):** simplified canvas renderer (no bloom / detail panels /
166
- multi-session tabs); v1.1 ports the full agent-flow visualizer. Ported (in
167
- part) from [`patoles/agent-flow`](https://github.com/patoles/agent-flow)
168
- under the Apache-2.0 license — see `NOTICE`.
169
-
170
- ### orchviz API Endpoints (v1.2)
171
-
172
- The orchviz server exposes these HTTP endpoints on `http://127.0.0.1:<port>`:
173
-
174
- **GET /api/plans** — list non-archived plans sorted by mtime (newest first):
175
- ```bash
176
- curl http://127.0.0.1:3001/api/plans
177
- # { "plans": [{ "slug": "260501-my-plan", "title": "...", "status": "draft", ... }] }
178
- ```
179
-
180
- **GET /api/plan?slug=\<slug\>** — full plan state with per-phase ETags:
181
- ```bash
182
- curl "http://127.0.0.1:3001/api/plan?slug=260501-my-plan"
183
- # { "plan": { ... }, "phaseEtags": { "1": "<hex64>", "2": "<hex64>" }, "readonly": true }
184
- # Omit ?slug= to get the most-recently-modified plan.
185
- ```
146
+ ## Visual Plan (`meowkit visual-plan`)
186
147
 
187
- **Read-only by default.** The visualizer is a viewer, not an editor — graph,
188
- plan tree, and todos all render read-only. The hamburger drawer browses the
189
- plan tree (plan phase → todo) without exposing edit affordances. To opt
190
- into write mode (legacy todo-toggle endpoint), launch with
191
- `MEOWKIT_ORCHVIZ_WRITABLE=1`. The legacy `MEOWKIT_ORCHVIZ_READONLY=0` flag
192
- also opts in for backwards compatibility; `MEOWKIT_ORCHVIZ_READONLY=1`
193
- forces read-only as a defensive lock.
148
+ Structured visual review for UI-bearing plans. A plan's `visual-plan/plan.json`
149
+ (schema `visual-plan/v1`) is a coverage ledger + canvas (lanes, surface-locked
150
+ artboards, semantic-HTML wireframes, connectors, annotations). The CLI validates
151
+ and gates it; a transient 127.0.0.1 React studio renders and edits it.
194
152
 
195
- **POST /api/plan/todo** — toggle a todo checkbox (write mode only):
196
153
  ```bash
197
- # Default (no env): returns 405 { "error": "readonly" }
198
- MEOWKIT_ORCHVIZ_WRITABLE=1 npx mewkit orchviz # opt in to write mode
199
-
200
- curl -X POST http://127.0.0.1:3001/api/plan/todo \
201
- -H "Content-Type: application/json" \
202
- -H "Origin: http://127.0.0.1:3001" \
203
- -d '{"slug":"260501-my-plan","phase":1,"todoIdx":0,"checked":true,"etag":"<hex64>"}'
204
- # 200: { "ok": true, "changed": true, "etag": "<new-hex64>", "archived": false }
205
- # 409: { "error": "stale", "currentEtag": "<latest-hex64>" } → re-fetch and retry
206
- # 403: Origin header missing or not in allowlist
207
- # 405: server is in read-only mode (the default)
154
+ # Deterministic contract commands
155
+ npx mewkit visual-plan validate <plan-dir> [--json] # schema + coverage + refs + safe-HTML + hashes
156
+ npx mewkit visual-plan status <plan-dir> [--json] # coverage summary + review status
157
+ npx mewkit visual-plan approve <plan-dir> --revision <n> # single writer of review.status (Gate 1)
158
+ npx mewkit visual-plan rehash <plan-dir> # refresh source hashes (clears approval)
159
+ npx mewkit visual-plan export <plan-dir> --format html # self-contained plan.html from the artifact
160
+
161
+ # Transient studio (127.0.0.1, exits with the process)
162
+ npx mewkit visual-plan view <plan-dir> [--no-open] [--port N] # read-only
163
+ npx mewkit visual-plan edit <plan-dir> [--force] # editable (single-editor lock)
164
+
165
+ # Feedback loop
166
+ npx mewkit visual-plan prepare-feedback <plan-dir> --ops <f.json> # freeze an immutable batch
167
+ npx mewkit visual-plan apply-feedback <plan-dir> --batch <id> --check # pre-apply stale gate
168
+ npx mewkit visual-plan apply-feedback <plan-dir> --batch <id> --receipt <f> # record per-op outcomes
169
+ npx mewkit visual-plan patch <plan-dir> --op <op.json> # apply one typed visual op
208
170
  ```
209
171
 
210
- **Origin requirement:** POST requests must include `Origin: http://127.0.0.1:<port>`
211
- or `Origin: http://localhost:<port>`. This prevents cross-origin writes from
212
- browser tabs served by other origins.
172
+ **Security:** the studio server binds 127.0.0.1 only, Host-header guarded against
173
+ DNS rebinding, path-traversal blocked, with a strict CSP (`script-src 'self'`).
174
+ Wireframe HTML is DOMPurify-sanitized at both save and render time via one shared
175
+ allowlist. Writes use optimistic concurrency (`PATCH` requires `If-Match`; 409 on
176
+ stale). These loopback primitives live in `src/local-web/`, ported in part from
177
+ [`patoles/agent-flow`](https://github.com/patoles/agent-flow) under Apache-2.0 —
178
+ see `NOTICE`.
213
179
 
214
180
  ## Related
215
181
 
@@ -0,0 +1,13 @@
1
+ import type { AvailabilityProbes } from "../core/availability.js";
2
+ interface CapabilitiesOptions {
3
+ subcommand?: string;
4
+ target?: string;
5
+ json?: boolean;
6
+ intent?: string;
7
+ provider?: string;
8
+ write?: boolean;
9
+ }
10
+ export declare function capabilities(args?: CapabilitiesOptions): Promise<void>;
11
+ export declare function hostProbes(projectRoot: string): AvailabilityProbes;
12
+ export {};
13
+ //# sourceMappingURL=capabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/commands/capabilities.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AASlE,UAAU,mBAAmB;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAsB,YAAY,CAAC,IAAI,GAAE,mBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiFhF;AAoDD,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,CA0ClE"}
@@ -0,0 +1,230 @@
1
+ // `mewkit capabilities list|explain` — read-only inspection of the model-agnostic
2
+ // capability manifest. The manifest is on-disk CLI data; it is NEVER injected into a
3
+ // model session and does not constitute agent discovery (that is Phase 3's projection).
4
+ import fs from "node:fs";
5
+ import path from "node:path";
6
+ import pc from "picocolors";
7
+ import { validateCapabilities } from "../core/validate-capabilities.js";
8
+ import { resolveWithHost } from "../core/resolve-capabilities.js";
9
+ import { renderCapabilityView } from "../core/generate-capability-view.js";
10
+ import { renderBootstrap, BOOTSTRAP_FILENAME } from "../core/bootstrap.js";
11
+ import { PROVIDER_PROJECTIONS, isProjectedProvider } from "../core/provider-projection.js";
12
+ import { findCapabilitySource } from "../core/capability-snapshot.js";
13
+ import { commandExists } from "./setup.js";
14
+ function findClaudeDir() {
15
+ const candidate = path.join(process.cwd(), ".claude");
16
+ return fs.existsSync(candidate) && fs.statSync(candidate).isDirectory() ? candidate : null;
17
+ }
18
+ export async function capabilities(args = {}) {
19
+ const sub = args.subcommand ?? "list";
20
+ // `projections` reports how the capability surface reaches each provider — static.
21
+ if (sub === "projections") {
22
+ projections(args.json ?? false);
23
+ return;
24
+ }
25
+ // `bootstrap` is a static trusted constant — no `.claude/` scan required.
26
+ if (sub === "bootstrap") {
27
+ const provider = args.provider ?? "claude-code";
28
+ if (!isProjectedProvider(provider)) {
29
+ console.error(pc.red(`No bootstrap projection for provider "${provider}" (report-only). Projected: ${Object.keys(PROVIDER_PROJECTIONS).join(", ")}.`));
30
+ process.exit(1);
31
+ }
32
+ const text = renderBootstrap(provider);
33
+ if (args.write) {
34
+ // Regenerate the committed file the SessionStart hook emits. Requires .claude/.
35
+ const dir = findClaudeDir();
36
+ if (!dir) {
37
+ console.error(pc.red("Could not find .claude/ directory to write the bootstrap file."));
38
+ process.exit(1);
39
+ }
40
+ const dest = path.join(dir, BOOTSTRAP_FILENAME);
41
+ fs.writeFileSync(dest, text + "\n", "utf-8");
42
+ console.log(pc.green(`Wrote ${path.relative(process.cwd(), dest)}`));
43
+ return;
44
+ }
45
+ console.log(text);
46
+ return;
47
+ }
48
+ const source = findCapabilitySource();
49
+ if (!source) {
50
+ console.error(pc.red("Could not find a capability source. Expected .claude/ or a Codex projection at .codex/capabilities.json. Run `npx mewkit init` or `npx mewkit migrate codex`."));
51
+ process.exit(1);
52
+ }
53
+ const entries = source.entries;
54
+ if (sub === "explain") {
55
+ explain(entries, args.target, args.json ?? false);
56
+ return;
57
+ }
58
+ if (sub === "resolve") {
59
+ resolve(entries, args.intent ?? args.target, args.provider ?? null, process.cwd(), args.json ?? false);
60
+ return;
61
+ }
62
+ if (sub === "view") {
63
+ // Generated compatible portion of the trigger registry (maintainer/CI diffs it in).
64
+ console.log(renderCapabilityView(entries));
65
+ return;
66
+ }
67
+ if (sub !== "list") {
68
+ console.error(pc.red(`Unknown capabilities subcommand "${sub}". Expected list|explain|resolve|view|bootstrap|projections.`));
69
+ process.exit(1);
70
+ }
71
+ if (args.json) {
72
+ console.log(JSON.stringify({ schemaVersion: "1.0", entries }, null, 2));
73
+ return;
74
+ }
75
+ console.log(pc.bold(pc.cyan("MeowKit Capabilities")));
76
+ const issues = source.kind === "claude-directory" ? validateCapabilities(source.path) : [];
77
+ const errors = issues.filter((i) => i.level === "error");
78
+ const warns = issues.filter((i) => i.level === "warn");
79
+ console.log(pc.dim(`${entries.length} capabilities — ${errors.length} error(s), ${warns.length} warning(s)\n`));
80
+ const byKind = new Map();
81
+ for (const e of entries)
82
+ byKind.set(e.kind, [...(byKind.get(e.kind) ?? []), e]);
83
+ for (const [kind, list] of [...byKind].sort((a, b) => (a[0] < b[0] ? -1 : 1))) {
84
+ console.log(pc.bold(kind));
85
+ for (const e of list)
86
+ console.log(` ${e.id}${e.description ? pc.dim(` — ${e.description}`) : ""}`);
87
+ console.log();
88
+ }
89
+ for (const i of errors)
90
+ console.log(` [${pc.red("ERROR")}] ${i.capabilityId ?? "-"}: ${i.message}`);
91
+ for (const i of warns)
92
+ console.log(` [${pc.yellow("WARN")}] ${i.capabilityId ?? "-"}: ${i.message}`);
93
+ if (errors.length > 0)
94
+ process.exit(1);
95
+ }
96
+ function explain(entries, target, json) {
97
+ if (!target) {
98
+ console.error(pc.red("`capabilities explain` requires a capability id."));
99
+ process.exit(1);
100
+ }
101
+ const entry = entries.find((e) => e.id === target);
102
+ if (!entry) {
103
+ console.error(pc.red(`No capability with id "${target}".`));
104
+ process.exit(1);
105
+ }
106
+ if (json) {
107
+ console.log(JSON.stringify(entry, null, 2));
108
+ return;
109
+ }
110
+ console.log(pc.bold(pc.cyan(`Capability: ${entry.id}`)));
111
+ console.log(` kind: ${entry.kind}`);
112
+ console.log(` description: ${entry.description || pc.dim("(none)")}`);
113
+ console.log(` source: ${entry.sourcePath ?? pc.dim("(authored, no disk artifact)")}`);
114
+ console.log(` owner: ${entry.owner || pc.dim("(unknown)")} / ${entry.installedState}`);
115
+ console.log(` invocation: ${entry.invocation.kind}:${entry.invocation.id}`);
116
+ console.log(` intents: ${entry.intents.length ? entry.intents.join(", ") : pc.dim("(none)")}`);
117
+ console.log(` requires: ${entry.requirements.length ? entry.requirements.map((r) => `${r.type}:${r.id}`).join(", ") : pc.dim("(none)")}`);
118
+ console.log(` verify: ${entry.verification.kind}${entry.verification.id ? `:${entry.verification.id}` : ""}`);
119
+ console.log(` provenance: ${Object.entries(entry.provenance).map(([k, v]) => `${k}=${v}`).join(", ") || pc.dim("(none)")}`);
120
+ }
121
+ /**
122
+ * Real host-availability probes for the CLI. External binaries via PATH; MCP/apps via
123
+ * `.mcp.json` presence (no secrets read); files via a containment-checked existence probe
124
+ * that returns `null` for a bare, absent id (a logical name we can't resolve to a path),
125
+ * so it surfaces as `unknown` rather than a false `unavailable`.
126
+ */
127
+ /** Report how the capability surface projects into each provider + the four support levels. */
128
+ function projections(json) {
129
+ const all = Object.values(PROVIDER_PROJECTIONS);
130
+ if (json) {
131
+ console.log(JSON.stringify(all, null, 2));
132
+ return;
133
+ }
134
+ console.log(pc.bold(pc.cyan("Capability provider projections")));
135
+ console.log(pc.dim("Four independent levels; `enforceable` is claimed only where a real gating hook exists.\n"));
136
+ for (const p of all) {
137
+ console.log(`${pc.bold(p.provider)} ${pc.dim(`(${p.status}, placement: ${p.bootstrapPlacement})`)}`);
138
+ const l = p.levels;
139
+ console.log(` discoverable=${l.discoverable} selectable=${l.selectable} invocable=${l.invocable} enforceable=${l.enforceable}`);
140
+ console.log(pc.dim(` ${p.evidence}\n`));
141
+ }
142
+ console.log(pc.dim("Providers not listed are report-only — no capability behavior is claimed for them."));
143
+ }
144
+ export function hostProbes(projectRoot) {
145
+ return {
146
+ // NOTE: PATH-only binary detection under-reports package-local CLIs (e.g. a `mewkit`
147
+ // runnable via `npx`/workspace bin but not on global PATH reads as not-found). The
148
+ // per-requirement evidence stays truthful ("PATH lookup: not found").
149
+ commandExists: (cmd) => commandExists(cmd),
150
+ containedFileExists: (id) => {
151
+ if (!id || id === ".")
152
+ return null; // not a concrete requirement path
153
+ const abs = path.resolve(projectRoot, id);
154
+ const escapes = (from, to) => {
155
+ const rel = path.relative(from, to);
156
+ return rel === ".." || rel.startsWith(".." + path.sep) || path.isAbsolute(rel);
157
+ };
158
+ if (escapes(projectRoot, abs))
159
+ return false; // lexical escape
160
+ if (fs.existsSync(abs)) {
161
+ // True containment: resolve symlinks so an in-root link pointing outside the
162
+ // tree is rejected, not followed (a lexical check alone would pass it).
163
+ try {
164
+ if (escapes(fs.realpathSync(projectRoot), fs.realpathSync(abs)))
165
+ return false;
166
+ }
167
+ catch {
168
+ return false;
169
+ }
170
+ return true;
171
+ }
172
+ // Absent: a path-shaped id is definitively absent; a bare logical id is undetermined
173
+ // (→ unknown). Extensionless real-file names (Makefile, .gitignore) also read as bare
174
+ // here — an accepted bias toward `unknown` over a false `unavailable`.
175
+ const looksLikePath = id.includes("/") || id.includes("\\") || path.extname(id) !== "";
176
+ return looksLikePath ? false : null;
177
+ },
178
+ mcpServerConfigured: (id) => {
179
+ const mcpPath = path.join(projectRoot, ".mcp.json");
180
+ if (!fs.existsSync(mcpPath))
181
+ return null;
182
+ try {
183
+ const parsed = JSON.parse(fs.readFileSync(mcpPath, "utf-8"));
184
+ const servers = parsed.mcpServers ?? parsed.servers ?? {};
185
+ return Object.prototype.hasOwnProperty.call(servers, id);
186
+ }
187
+ catch {
188
+ return null;
189
+ }
190
+ },
191
+ };
192
+ }
193
+ function resolve(entries, intent, provider, projectRoot, json) {
194
+ if (!intent) {
195
+ console.error(pc.red("`capabilities resolve` requires an intent (--intent \"…\" or a positional phrase)."));
196
+ process.exit(1);
197
+ }
198
+ const ctx = { provider: provider ?? "claude-code", checkedAt: new Date().toISOString(), probes: hostProbes(projectRoot) };
199
+ const result = resolveWithHost(entries, intent, ctx);
200
+ if (json) {
201
+ console.log(JSON.stringify(result, null, 2));
202
+ return;
203
+ }
204
+ console.log(pc.bold(pc.cyan(`Resolve: "${intent}" (host: ${ctx.provider}) — status: ${result.status}`)));
205
+ if (result.candidates.length === 0) {
206
+ console.log(pc.yellow(" No capability matched this intent."));
207
+ return;
208
+ }
209
+ for (const c of result.candidates) {
210
+ console.log(` ${c.id} ${pc.dim(`(${c.kind}, score ${c.score})`)} — ${c.reason}`);
211
+ console.log(pc.dim(` invocable: ${c.invocable}; verify: ${c.verification.kind}`));
212
+ for (const a of c.availability) {
213
+ console.log(pc.dim(` • ${a.requirementType}:${a.id} → ${a.status}`));
214
+ }
215
+ }
216
+ // When the selected candidate needs task-scoped repo context, show HOW this provider acquires
217
+ // it (Phase 5). The agent runs these host-native tools, then records via `context record`.
218
+ const top = result.candidates[0];
219
+ if (top?.contextRequirement) {
220
+ const acq = result.acquisition;
221
+ console.log(pc.bold(` needs repo context (${top.contextRequirement.reason}) — acquire via ${acq.provider} [${acq.status}]:`));
222
+ console.log(pc.dim(` read: ${acq.read ? `${acq.read.tool} — ${acq.read.note}` : "(no read surface — host-provided paths only)"}`));
223
+ console.log(pc.dim(` search: ${acq.search ? `${acq.search.tool} — ${acq.search.note}` : "(no search surface — report-only)"}`));
224
+ }
225
+ // Self-auditing: cite the adapter + evidence behind this result's provider claims (Phase 6).
226
+ const cite = result.adapterCitation;
227
+ console.log(pc.dim(` adapter: ${cite.provider} [${cite.projectionStatus}] — ${cite.projectionEvidence}`));
228
+ console.log(pc.dim(` can gate on: ${cite.gatingEvents.length ? cite.gatingEvents.join(", ") : "no events (advisory host)"}`));
229
+ }
230
+ //# sourceMappingURL=capabilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/commands/capabilities.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export interface ContextOptions {
2
+ subcommand?: string;
3
+ target?: string;
4
+ root?: string;
5
+ /** `context record`: the active durable task id to merge the envelope's evidence into. */
6
+ task?: string;
7
+ json?: boolean;
8
+ }
9
+ export declare function context(args?: ContextOptions): Promise<void>;
10
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/commands/context.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,cAAc;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0FAA0F;IAC1F,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED,wBAAsB,OAAO,CAAC,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkHtE"}
@@ -0,0 +1,125 @@
1
+ // `mewkit context resolve|check|record` — inspect + record the repository-context evidence
2
+ // ledger (Phase 5). `resolve` builds an evidence ref for a path (owning repo, revision, hash,
3
+ // redaction); `check` re-hashes a recorded envelope's evidence and reports per-path freshness;
4
+ // `record` merges an envelope's owning repos + evidence paths into an active durable task record
5
+ // (advisory, best-effort). MeowKit records + verifies evidence; the host's own tools acquire it.
6
+ import fs from "node:fs";
7
+ import path from "node:path";
8
+ import pc from "picocolors";
9
+ import { buildEvidenceRef, checkEvidenceFreshness, ContextEnvelopeSchema, distinctRepos, isWithinBoundary, } from "../core/repo-context.js";
10
+ import { recordContextEvidence } from "../core/task-record.js";
11
+ export async function context(args = {}) {
12
+ const sub = args.subcommand ?? "resolve";
13
+ const boundary = args.root ? path.resolve(args.root) : process.cwd();
14
+ if (sub === "resolve") {
15
+ if (!args.target) {
16
+ console.error(pc.red("`context resolve` requires a path."));
17
+ process.exit(1);
18
+ }
19
+ const abs = path.resolve(boundary, args.target);
20
+ if (!isWithinBoundary(boundary, abs)) {
21
+ console.error(pc.red(`Path escapes the boundary root: ${args.target}`));
22
+ process.exit(1);
23
+ }
24
+ const ref = buildEvidenceRef(abs, boundary);
25
+ if (args.json) {
26
+ console.log(JSON.stringify(ref, null, 2));
27
+ return;
28
+ }
29
+ console.log(pc.bold(pc.cyan(`Evidence: ${path.relative(boundary, abs) || abs}`)));
30
+ console.log(` owning repo: ${ref.owningRepoIdentity}`);
31
+ console.log(` revision: ${ref.revision ?? pc.dim("(non-git / unresolved)")}`);
32
+ console.log(` content: ${ref.contentHash ?? pc.yellow("(missing)")}`);
33
+ console.log(` redacted: ${ref.redacted ? pc.yellow("yes (secret-shaped path)") : "no"}`);
34
+ return;
35
+ }
36
+ if (sub === "check") {
37
+ if (!args.target) {
38
+ console.error(pc.red("`context check` requires an envelope JSON path."));
39
+ process.exit(1);
40
+ }
41
+ const envPath = path.resolve(boundary, args.target);
42
+ if (!fs.existsSync(envPath)) {
43
+ console.error(pc.red(`Envelope not found: ${args.target}`));
44
+ process.exit(1);
45
+ }
46
+ let envelope;
47
+ try {
48
+ envelope = ContextEnvelopeSchema.parse(JSON.parse(fs.readFileSync(envPath, "utf-8")));
49
+ }
50
+ catch (err) {
51
+ console.error(pc.red(`Invalid context envelope: ${err.message.split("\n")[0]}`));
52
+ process.exit(1);
53
+ }
54
+ // Boundary-scope the freshness check: an untrusted envelope's evidence paths are never
55
+ // stat-ed/hashed outside the boundary (no arbitrary-path existence/hash oracle).
56
+ const results = checkEvidenceFreshness(envelope.evidence, boundary);
57
+ // Pair each result with its evidence ref (1:1, same order) to group BY OWNING REPO.
58
+ const paired = results.map((r, i) => ({ ...r, ref: envelope.evidence[i] }));
59
+ if (args.json) {
60
+ console.log(JSON.stringify({ boundaryRoot: envelope.boundaryRoot, repos: distinctRepos(envelope.evidence), results }, null, 2));
61
+ return;
62
+ }
63
+ const tagFor = (s) => s === "fresh" ? pc.green("fresh") : s === "stale" ? pc.yellow("stale") : s === "out-of-scope" ? pc.red("out-of-scope") : pc.red("missing");
64
+ console.log(pc.bold(pc.cyan(`Context freshness — scope: ${envelope.boundaryRoot}`)));
65
+ // Per-repo grouping: each owning repo (with its own revision) is reported separately, so a
66
+ // multi-repo task never loses which repo an evidence file — and its freshness — belongs to.
67
+ for (const repo of distinctRepos(envelope.evidence)) {
68
+ console.log(pc.bold(` ${repo.identity} ${pc.dim(`@ ${repo.revision ?? "(non-git)"}`)}`));
69
+ for (const p of paired.filter((x) => x.ref.owningRepoIdentity === repo.identity)) {
70
+ console.log(` [${tagFor(p.status)}] ${p.ref.path}`);
71
+ }
72
+ }
73
+ const needsAction = results.filter((r) => r.status !== "fresh");
74
+ if (needsAction.length > 0) {
75
+ console.log(pc.dim(`\n ${needsAction.length} evidence path(s) need reacquisition or are out of scope.`));
76
+ process.exit(1);
77
+ }
78
+ return;
79
+ }
80
+ if (sub === "record") {
81
+ if (!args.task) {
82
+ console.error(pc.red("`context record` requires --task <id> (the active durable task to record into)."));
83
+ process.exit(1);
84
+ }
85
+ if (!args.target) {
86
+ console.error(pc.red("`context record` requires an envelope JSON path."));
87
+ process.exit(1);
88
+ }
89
+ const envPath = path.resolve(boundary, args.target);
90
+ if (!fs.existsSync(envPath)) {
91
+ console.error(pc.red(`Envelope not found: ${args.target}`));
92
+ process.exit(1);
93
+ }
94
+ let envelope;
95
+ try {
96
+ envelope = ContextEnvelopeSchema.parse(JSON.parse(fs.readFileSync(envPath, "utf-8")));
97
+ }
98
+ catch (err) {
99
+ console.error(pc.red(`Invalid context envelope: ${err.message.split("\n")[0]}`));
100
+ process.exit(1);
101
+ }
102
+ // Advisory + best-effort (task-state-emission Rule 3): merge the envelope's owning repos +
103
+ // evidence paths into the CONSUMER PROJECT's task record (cwd-keyed, per task-record.ts).
104
+ // A missing/incompatible record surfaces non-zero but is never fatal to the caller's flow.
105
+ try {
106
+ const rec = await recordContextEvidence(process.cwd(), args.task, envelope, new Date().toISOString());
107
+ if (args.json) {
108
+ console.log(JSON.stringify({ taskId: rec.taskId, repos: rec.repos, evidenceRefs: rec.evidenceRefs }, null, 2));
109
+ return;
110
+ }
111
+ console.log(pc.bold(pc.cyan(`Recorded context evidence → task ${rec.taskId}`)));
112
+ for (const r of rec.repos)
113
+ console.log(` repo: ${r.identity} ${pc.dim(`@ ${r.revision ?? "(non-git)"}`)}`);
114
+ console.log(pc.dim(` ${rec.evidenceRefs.length} evidence path(s) tracked`));
115
+ return;
116
+ }
117
+ catch (err) {
118
+ console.error(pc.yellow(`context record skipped (advisory): ${err.message}`));
119
+ process.exit(1);
120
+ }
121
+ }
122
+ console.error(pc.red(`Unknown context subcommand "${sub}". Expected resolve|check|record.`));
123
+ process.exit(1);
124
+ }
125
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/commands/context.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,32 @@ export declare function doctor(args?: {
3
3
  providers?: boolean;
4
4
  state?: boolean;
5
5
  hardGates?: boolean;
6
+ provenance?: boolean;
7
+ explain?: boolean;
8
+ consolidation?: boolean;
6
9
  }): Promise<void>;
10
+ /** A file's provenance verifiability, decided only from locally available evidence. */
11
+ type ProvenanceClass = "verified" | "known-modified" | "unknown";
12
+ /**
13
+ * Classify one installed entry's provenance from metadata alone (no fetching).
14
+ * `trustedBaseline` is true only when the `baseChecksum` is a real as-shipped hash
15
+ * (canonical `new` metadata). Legacy sources reconstruct `baseChecksum` from the disk
16
+ * itself, so a `checksum === baseChecksum` match proves nothing about what shipped —
17
+ * such kit files are `unknown`, never `verified`.
18
+ */
19
+ export declare function classifyProvenance(entry: {
20
+ owner: string;
21
+ checksum: string;
22
+ baseChecksum: string;
23
+ }, trustedBaseline: boolean): ProvenanceClass;
24
+ /**
25
+ * Read-only `doctor provenance --explain`. Reports what provenance can and cannot be
26
+ * proven from locally available evidence, in three honest classes: verified (as-shipped
27
+ * identity provable), known-modified (diverged from a KNOWN baseline), and unknown (no
28
+ * baseline recorded). It NEVER fetches a release, and it proposes a repair only when an
29
+ * exact trusted payload is locally available — doctor has none on disk, so it proposes
30
+ * none and says so, rather than relabeling or reconstructing silently.
31
+ */
32
+ export declare function explainProvenance(root: string | null, explain: boolean): void;
33
+ export {};
7
34
  //# sourceMappingURL=doctor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AA8DA,wBAAsB,MAAM,CAAC,IAAI,CAAC,EAAE;IACnC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoGhB"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AA+DA,wBAAsB,MAAM,CAAC,IAAI,CAAC,EAAE;IACnC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;CACxB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6GhB;AA4CD,uFAAuF;AACvF,KAAK,eAAe,GAAG,UAAU,GAAG,gBAAgB,GAAG,SAAS,CAAC;AAEjE;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CACjC,KAAK,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAChE,eAAe,EAAE,OAAO,GACtB,eAAe,CASjB;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CA0E7E"}