@skaile/workspaces 6.14.0 → 6.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 (447) hide show
  1. package/CHANGELOG.md +83 -0
  2. package/dist/agent-file-refresh-76NNFB4W.js +89 -0
  3. package/dist/agent-file-refresh-76NNFB4W.js.map +1 -0
  4. package/dist/ai-sdk.js +8 -7
  5. package/dist/ai-sdk.js.map +1 -1
  6. package/dist/app-sdk/index.js +1 -1
  7. package/dist/{asset-feeds-DOG5FK7T.js → asset-feeds-ON7FYHHF.js} +25 -23
  8. package/dist/asset-feeds-ON7FYHHF.js.map +1 -0
  9. package/dist/asset-manager/catalog-deployer.js +8 -7
  10. package/dist/asset-manager/history.js +7 -6
  11. package/dist/asset-manager/index.js +17 -15
  12. package/dist/asset-manager/installer.js +16 -9
  13. package/dist/asset-manager/renderers.js +8 -8
  14. package/dist/asset-manager/src/add-remove/add.d.ts +134 -0
  15. package/dist/asset-manager/src/add-remove/add.d.ts.map +1 -0
  16. package/dist/asset-manager/src/add-remove/remove.d.ts +329 -0
  17. package/dist/asset-manager/src/add-remove/remove.d.ts.map +1 -0
  18. package/dist/asset-manager/src/agent-render.d.ts +116 -0
  19. package/dist/asset-manager/src/agent-render.d.ts.map +1 -0
  20. package/dist/asset-manager/src/composed-blocks.d.ts +40 -0
  21. package/dist/asset-manager/src/composed-blocks.d.ts.map +1 -0
  22. package/dist/asset-manager/src/config/core.d.ts +297 -0
  23. package/dist/asset-manager/src/config/core.d.ts.map +1 -0
  24. package/dist/asset-manager/src/config/edit.d.ts +161 -0
  25. package/dist/asset-manager/src/config/edit.d.ts.map +1 -0
  26. package/dist/asset-manager/src/index.d.ts +31 -2961
  27. package/dist/asset-manager/src/index.d.ts.map +1 -1
  28. package/dist/asset-manager/src/install/clone-commit-fetcher.d.ts +11 -0
  29. package/dist/asset-manager/src/install/clone-commit-fetcher.d.ts.map +1 -0
  30. package/dist/asset-manager/src/install/install.d.ts +151 -0
  31. package/dist/asset-manager/src/install/install.d.ts.map +1 -0
  32. package/dist/asset-manager/src/install/restore.d.ts +76 -0
  33. package/dist/asset-manager/src/install/restore.d.ts.map +1 -0
  34. package/dist/asset-manager/src/install-agent.d.ts +52 -4
  35. package/dist/asset-manager/src/install-agent.d.ts.map +1 -1
  36. package/dist/asset-manager/src/install-instances.d.ts +70 -2
  37. package/dist/asset-manager/src/install-instances.d.ts.map +1 -1
  38. package/dist/asset-manager/src/installer.d.ts +54 -4
  39. package/dist/asset-manager/src/installer.d.ts.map +1 -1
  40. package/dist/asset-manager/src/lock/copies.d.ts +156 -0
  41. package/dist/asset-manager/src/lock/copies.d.ts.map +1 -0
  42. package/dist/asset-manager/src/lock/library.d.ts +261 -0
  43. package/dist/asset-manager/src/lock/library.d.ts.map +1 -0
  44. package/dist/asset-manager/src/mcp-render.d.ts +86 -0
  45. package/dist/asset-manager/src/mcp-render.d.ts.map +1 -0
  46. package/dist/asset-manager/src/omp-sweep.d.ts +25 -0
  47. package/dist/asset-manager/src/omp-sweep.d.ts.map +1 -0
  48. package/dist/asset-manager/src/read/diff.d.ts +109 -0
  49. package/dist/asset-manager/src/read/diff.d.ts.map +1 -0
  50. package/dist/asset-manager/src/read/doctor.d.ts +116 -0
  51. package/dist/asset-manager/src/read/doctor.d.ts.map +1 -0
  52. package/dist/asset-manager/src/read/gaps.d.ts +120 -0
  53. package/dist/asset-manager/src/read/gaps.d.ts.map +1 -0
  54. package/dist/asset-manager/src/read/graph.d.ts +69 -0
  55. package/dist/asset-manager/src/read/graph.d.ts.map +1 -0
  56. package/dist/asset-manager/src/read/outdated.d.ts +152 -0
  57. package/dist/asset-manager/src/read/outdated.d.ts.map +1 -0
  58. package/dist/asset-manager/src/read/state.d.ts +265 -0
  59. package/dist/asset-manager/src/read/state.d.ts.map +1 -0
  60. package/dist/asset-manager/src/renderers.d.ts +11 -1
  61. package/dist/asset-manager/src/renderers.d.ts.map +1 -1
  62. package/dist/asset-manager/src/resolve/guards.d.ts +167 -0
  63. package/dist/asset-manager/src/resolve/guards.d.ts.map +1 -0
  64. package/dist/asset-manager/src/resolve/scan.d.ts +222 -0
  65. package/dist/asset-manager/src/resolve/scan.d.ts.map +1 -0
  66. package/dist/asset-manager/src/resolve/stores.d.ts +176 -0
  67. package/dist/asset-manager/src/resolve/stores.d.ts.map +1 -0
  68. package/dist/asset-manager/src/shared/files.d.ts +42 -0
  69. package/dist/asset-manager/src/shared/files.d.ts.map +1 -0
  70. package/dist/asset-manager/src/shared/library-hooks.d.ts +16 -0
  71. package/dist/asset-manager/src/shared/library-hooks.d.ts.map +1 -0
  72. package/dist/asset-manager/src/shared/library.d.ts +96 -0
  73. package/dist/asset-manager/src/shared/library.d.ts.map +1 -0
  74. package/dist/asset-manager/src/shared/refs.d.ts +101 -0
  75. package/dist/asset-manager/src/shared/refs.d.ts.map +1 -0
  76. package/dist/asset-manager/src/shared/types.d.ts +399 -0
  77. package/dist/asset-manager/src/shared/types.d.ts.map +1 -0
  78. package/dist/bridge/harnesses/claude-sdk.js +13 -19
  79. package/dist/bridge/harnesses/claude-sdk.js.map +1 -1
  80. package/dist/bridge/harnesses/codex.js +10 -10
  81. package/dist/bridge/harnesses/continue.js +12 -16
  82. package/dist/bridge/harnesses/continue.js.map +1 -1
  83. package/dist/bridge/harnesses/echo.js +5 -10
  84. package/dist/bridge/harnesses/echo.js.map +1 -1
  85. package/dist/bridge/harnesses/gemini.js +5 -5
  86. package/dist/bridge/harnesses/goose.js +13 -17
  87. package/dist/bridge/harnesses/goose.js.map +1 -1
  88. package/dist/bridge/harnesses/omp.js +7 -13
  89. package/dist/bridge/harnesses/omp.js.map +1 -1
  90. package/dist/bridge/harnesses/opencode.js +13 -17
  91. package/dist/bridge/harnesses/opencode.js.map +1 -1
  92. package/dist/bridge/harnesses/qwen.js +6 -11
  93. package/dist/bridge/harnesses/qwen.js.map +1 -1
  94. package/dist/bridge/index.js +18 -18
  95. package/dist/bridge/src/codex/managed-harness.d.ts.map +1 -1
  96. package/dist/bridge/src/driver-contract.d.ts +72 -0
  97. package/dist/bridge/src/driver-contract.d.ts.map +1 -0
  98. package/dist/bridge/src/harness-model-check.d.ts +1 -1
  99. package/dist/bridge/src/harness-model-check.d.ts.map +1 -1
  100. package/dist/bridge/src/harnesses/_subprocess-cli.d.ts +8 -0
  101. package/dist/bridge/src/harnesses/_subprocess-cli.d.ts.map +1 -1
  102. package/dist/bridge/src/harnesses/claude-sdk.d.ts.map +1 -1
  103. package/dist/bridge/src/harnesses/codex.d.ts +2 -0
  104. package/dist/bridge/src/harnesses/codex.d.ts.map +1 -1
  105. package/dist/bridge/src/harnesses/continue.d.ts.map +1 -1
  106. package/dist/bridge/src/harnesses/echo.d.ts.map +1 -1
  107. package/dist/bridge/src/harnesses/gemini.d.ts.map +1 -1
  108. package/dist/bridge/src/harnesses/goose.d.ts.map +1 -1
  109. package/dist/bridge/src/harnesses/omp.d.ts.map +1 -1
  110. package/dist/bridge/src/harnesses/opencode.d.ts.map +1 -1
  111. package/dist/bridge/src/harnesses/qwen.d.ts.map +1 -1
  112. package/dist/bridge/src/index.d.ts +2 -0
  113. package/dist/bridge/src/index.d.ts.map +1 -1
  114. package/dist/bridge/src/preflight.d.ts +114 -0
  115. package/dist/bridge/src/preflight.d.ts.map +1 -0
  116. package/dist/bridge/src/registry.d.ts +12 -0
  117. package/dist/bridge/src/registry.d.ts.map +1 -1
  118. package/dist/{chunk-7UBCUKJO.js → chunk-2JUCWMIS.js} +8808 -8337
  119. package/dist/chunk-2JUCWMIS.js.map +1 -0
  120. package/dist/{chunk-VS6XC5JE.js → chunk-2MTRRK37.js} +3 -3
  121. package/dist/{chunk-VS6XC5JE.js.map → chunk-2MTRRK37.js.map} +1 -1
  122. package/dist/chunk-2PJYJPDE.js +3 -0
  123. package/dist/chunk-2PJYJPDE.js.map +1 -0
  124. package/dist/{chunk-ZQL6HGTW.js → chunk-2SSG5B24.js} +4 -4
  125. package/dist/{chunk-ZQL6HGTW.js.map → chunk-2SSG5B24.js.map} +1 -1
  126. package/dist/{chunk-WDG5IVEA.js → chunk-2ZDZJ7XQ.js} +3 -3
  127. package/dist/{chunk-WDG5IVEA.js.map → chunk-2ZDZJ7XQ.js.map} +1 -1
  128. package/dist/{chunk-V2VDTQ7A.js → chunk-3A7JUOY2.js} +3 -3
  129. package/dist/{chunk-V2VDTQ7A.js.map → chunk-3A7JUOY2.js.map} +1 -1
  130. package/dist/chunk-3LAJJURV.js +26 -0
  131. package/dist/chunk-3LAJJURV.js.map +1 -0
  132. package/dist/{chunk-X66KSHZF.js → chunk-3UYKT62L.js} +5 -5
  133. package/dist/{chunk-X66KSHZF.js.map → chunk-3UYKT62L.js.map} +1 -1
  134. package/dist/{chunk-J3FJTH3V.js → chunk-4X5WXQV7.js} +4 -4
  135. package/dist/{chunk-J3FJTH3V.js.map → chunk-4X5WXQV7.js.map} +1 -1
  136. package/dist/chunk-4ZNKEDYH.js +887 -0
  137. package/dist/chunk-4ZNKEDYH.js.map +1 -0
  138. package/dist/{chunk-DYH3VSPU.js → chunk-65SOXO7I.js} +20 -14
  139. package/dist/chunk-65SOXO7I.js.map +1 -0
  140. package/dist/{chunk-MVUXBWNW.js → chunk-6HTN2UIJ.js} +3 -3
  141. package/dist/{chunk-MVUXBWNW.js.map → chunk-6HTN2UIJ.js.map} +1 -1
  142. package/dist/{chunk-4SSTREBO.js → chunk-6KV34G6A.js} +8 -8
  143. package/dist/{chunk-4SSTREBO.js.map → chunk-6KV34G6A.js.map} +1 -1
  144. package/dist/{chunk-YNQRVTXH.js → chunk-6M44OQKH.js} +40 -44
  145. package/dist/chunk-6M44OQKH.js.map +1 -0
  146. package/dist/{chunk-B6W5DCH5.js → chunk-72DYHOO2.js} +24 -25
  147. package/dist/chunk-72DYHOO2.js.map +1 -0
  148. package/dist/{chunk-RRAXV5LE.js → chunk-7IW5E6LB.js} +43 -48
  149. package/dist/chunk-7IW5E6LB.js.map +1 -0
  150. package/dist/{chunk-BNLXZXZN.js → chunk-BRAOB37W.js} +97 -47
  151. package/dist/chunk-BRAOB37W.js.map +1 -0
  152. package/dist/{chunk-ZLDAPZIX.js → chunk-BTMSHGN3.js} +4 -4
  153. package/dist/{chunk-ZLDAPZIX.js.map → chunk-BTMSHGN3.js.map} +1 -1
  154. package/dist/{chunk-7K73MCI6.js → chunk-CU5WY6HN.js} +3 -3
  155. package/dist/{chunk-7K73MCI6.js.map → chunk-CU5WY6HN.js.map} +1 -1
  156. package/dist/{chunk-G2ZWIYZR.js → chunk-DFFJKGCW.js} +3 -3
  157. package/dist/{chunk-G2ZWIYZR.js.map → chunk-DFFJKGCW.js.map} +1 -1
  158. package/dist/{chunk-CG63XGVV.js → chunk-EGKCKWWE.js} +3 -3
  159. package/dist/{chunk-CG63XGVV.js.map → chunk-EGKCKWWE.js.map} +1 -1
  160. package/dist/{chunk-CJO3XKO7.js → chunk-ETGC2MEM.js} +4 -4
  161. package/dist/{chunk-CJO3XKO7.js.map → chunk-ETGC2MEM.js.map} +1 -1
  162. package/dist/{chunk-CFRHYD4C.js → chunk-FPG36VC4.js} +8 -13
  163. package/dist/chunk-FPG36VC4.js.map +1 -0
  164. package/dist/{chunk-SBAUZ7XH.js → chunk-H3PY5DFL.js} +4 -4
  165. package/dist/{chunk-SBAUZ7XH.js.map → chunk-H3PY5DFL.js.map} +1 -1
  166. package/dist/{chunk-7HRZACI4.js → chunk-HW4BDJPC.js} +17 -6
  167. package/dist/chunk-HW4BDJPC.js.map +1 -0
  168. package/dist/{chunk-GJT2Q5XD.js → chunk-HXST2IYJ.js} +3 -3
  169. package/dist/{chunk-GJT2Q5XD.js.map → chunk-HXST2IYJ.js.map} +1 -1
  170. package/dist/{chunk-7VBD5XUM.js → chunk-IG4YQ7ER.js} +32 -90
  171. package/dist/chunk-IG4YQ7ER.js.map +1 -0
  172. package/dist/{chunk-DWPQBMCY.js → chunk-JPV4WE5L.js} +2 -2
  173. package/dist/{chunk-DWPQBMCY.js.map → chunk-JPV4WE5L.js.map} +1 -1
  174. package/dist/{chunk-OC3AIMZH.js → chunk-KDRA6FYE.js} +120 -211
  175. package/dist/chunk-KDRA6FYE.js.map +1 -0
  176. package/dist/{chunk-KOI7QFDH.js → chunk-M7XIYHWB.js} +3 -3
  177. package/dist/{chunk-KOI7QFDH.js.map → chunk-M7XIYHWB.js.map} +1 -1
  178. package/dist/{chunk-7LJUK5JK.js → chunk-MG6QD7GE.js} +201 -43
  179. package/dist/chunk-MG6QD7GE.js.map +1 -0
  180. package/dist/{chunk-XHLRMUMO.js → chunk-NAQXDTF3.js} +3 -3
  181. package/dist/{chunk-XHLRMUMO.js.map → chunk-NAQXDTF3.js.map} +1 -1
  182. package/dist/{chunk-YJAKSCCN.js → chunk-NJ6UCY2B.js} +3 -3
  183. package/dist/{chunk-YJAKSCCN.js.map → chunk-NJ6UCY2B.js.map} +1 -1
  184. package/dist/{chunk-OKPITFE3.js → chunk-NNJQQYHY.js} +2 -2
  185. package/dist/{chunk-OKPITFE3.js.map → chunk-NNJQQYHY.js.map} +1 -1
  186. package/dist/{chunk-QNHW26AT.js → chunk-OD4N5O7V.js} +4 -4
  187. package/dist/{chunk-QNHW26AT.js.map → chunk-OD4N5O7V.js.map} +1 -1
  188. package/dist/{chunk-F7WMHDTV.js → chunk-P6FJDT35.js} +27 -7
  189. package/dist/chunk-P6FJDT35.js.map +1 -0
  190. package/dist/{chunk-IOXFT5D7.js → chunk-PD42JZWI.js} +3 -3
  191. package/dist/{chunk-IOXFT5D7.js.map → chunk-PD42JZWI.js.map} +1 -1
  192. package/dist/{chunk-MS2IXLTC.js → chunk-PMXTBWFD.js} +27 -7
  193. package/dist/chunk-PMXTBWFD.js.map +1 -0
  194. package/dist/{chunk-NAAFRZTA.js → chunk-PPSSDUN6.js} +3 -3
  195. package/dist/{chunk-NAAFRZTA.js.map → chunk-PPSSDUN6.js.map} +1 -1
  196. package/dist/{chunk-LMUNQYJQ.js → chunk-PRB67LCK.js} +127 -18
  197. package/dist/chunk-PRB67LCK.js.map +1 -0
  198. package/dist/{chunk-RLV3FF4I.js → chunk-QUIK7L3Z.js} +11 -11
  199. package/dist/{chunk-RLV3FF4I.js.map → chunk-QUIK7L3Z.js.map} +1 -1
  200. package/dist/{chunk-DRUAQ7IY.js → chunk-QUPZKTF3.js} +9 -8
  201. package/dist/chunk-QUPZKTF3.js.map +1 -0
  202. package/dist/{chunk-7FXOOUOC.js → chunk-RPRMD7XV.js} +27 -11
  203. package/dist/chunk-RPRMD7XV.js.map +1 -0
  204. package/dist/{chunk-3BRBTQ6M.js → chunk-S3UOZBGE.js} +20 -3
  205. package/dist/chunk-S3UOZBGE.js.map +1 -0
  206. package/dist/{chunk-LQWOU7S2.js → chunk-SFBLZOV5.js} +3 -3
  207. package/dist/{chunk-LQWOU7S2.js.map → chunk-SFBLZOV5.js.map} +1 -1
  208. package/dist/{chunk-EB2LKPI6.js → chunk-SMFZ5YGN.js} +4 -4
  209. package/dist/{chunk-EB2LKPI6.js.map → chunk-SMFZ5YGN.js.map} +1 -1
  210. package/dist/{chunk-243Z3BNB.js → chunk-SX54OQQT.js} +4 -4
  211. package/dist/{chunk-243Z3BNB.js.map → chunk-SX54OQQT.js.map} +1 -1
  212. package/dist/{chunk-2PVYDAFN.js → chunk-T65N4CIZ.js} +3 -3
  213. package/dist/{chunk-2PVYDAFN.js.map → chunk-T65N4CIZ.js.map} +1 -1
  214. package/dist/{chunk-QBLS7X3Z.js → chunk-TVRL3IPZ.js} +3 -3
  215. package/dist/{chunk-QBLS7X3Z.js.map → chunk-TVRL3IPZ.js.map} +1 -1
  216. package/dist/{chunk-2URJ7W5X.js → chunk-TW5AP6IF.js} +5 -5
  217. package/dist/{chunk-2URJ7W5X.js.map → chunk-TW5AP6IF.js.map} +1 -1
  218. package/dist/{chunk-F6LDWA2N.js → chunk-TYK752MU.js} +3 -3
  219. package/dist/{chunk-F6LDWA2N.js.map → chunk-TYK752MU.js.map} +1 -1
  220. package/dist/{chunk-HPQ2WDYC.js → chunk-U2WPJHRA.js} +5 -5
  221. package/dist/{chunk-HPQ2WDYC.js.map → chunk-U2WPJHRA.js.map} +1 -1
  222. package/dist/{chunk-MEU2HHGV.js → chunk-U7P22GEB.js} +386 -46
  223. package/dist/chunk-U7P22GEB.js.map +1 -0
  224. package/dist/{chunk-6ISJMEDX.js → chunk-VFEZUSB6.js} +4 -4
  225. package/dist/{chunk-6ISJMEDX.js.map → chunk-VFEZUSB6.js.map} +1 -1
  226. package/dist/{chunk-5FO4U3OL.js → chunk-WW22FS74.js} +75 -67
  227. package/dist/chunk-WW22FS74.js.map +1 -0
  228. package/dist/{chunk-WCUT3EQR.js → chunk-Z23I2JA6.js} +7 -7
  229. package/dist/{chunk-WCUT3EQR.js.map → chunk-Z23I2JA6.js.map} +1 -1
  230. package/dist/{chunk-VKGNMXGZ.js → chunk-Z7HLX4V2.js} +4 -4
  231. package/dist/{chunk-VKGNMXGZ.js.map → chunk-Z7HLX4V2.js.map} +1 -1
  232. package/dist/{chunk-LZCX2TCZ.js → chunk-ZII54C3E.js} +355 -1075
  233. package/dist/chunk-ZII54C3E.js.map +1 -0
  234. package/dist/{chunk-CVUMZTNO.js → chunk-ZQPBYLCS.js} +4 -4
  235. package/dist/{chunk-CVUMZTNO.js.map → chunk-ZQPBYLCS.js.map} +1 -1
  236. package/dist/{claude-code-LFAOJ3UQ.js → claude-code-VL6UM7BZ.js} +4 -4
  237. package/dist/{claude-code-LFAOJ3UQ.js.map → claude-code-VL6UM7BZ.js.map} +1 -1
  238. package/dist/cli/index.js +494 -301
  239. package/dist/cli/index.js.map +1 -1
  240. package/dist/cli/src/agent-file-refresh.d.ts +25 -0
  241. package/dist/cli/src/agent-file-refresh.d.ts.map +1 -0
  242. package/dist/cli/src/commands/asset-cmd.d.ts.map +1 -1
  243. package/dist/cli/src/commands/catalog.d.ts +9 -2
  244. package/dist/cli/src/commands/catalog.d.ts.map +1 -1
  245. package/dist/cli/src/commands/config.d.ts.map +1 -1
  246. package/dist/cli/src/commands/harness.d.ts +1 -1
  247. package/dist/cli/src/commands/harness.d.ts.map +1 -1
  248. package/dist/cli/src/commands/library-cmd.d.ts.map +1 -1
  249. package/dist/cli/src/commands/library-index.d.ts +5 -7
  250. package/dist/cli/src/commands/library-index.d.ts.map +1 -1
  251. package/dist/cli/src/commands/library-publish.d.ts.map +1 -1
  252. package/dist/cli/src/commands/preset-export.d.ts.map +1 -1
  253. package/dist/cli/src/commands/project.d.ts.map +1 -1
  254. package/dist/cli/src/commands/run.d.ts.map +1 -1
  255. package/dist/cli/src/commands/serve-preflight.d.ts +27 -48
  256. package/dist/cli/src/commands/serve-preflight.d.ts.map +1 -1
  257. package/dist/cli/src/commands/serve.d.ts.map +1 -1
  258. package/dist/cli/src/commands/source.d.ts +6 -9
  259. package/dist/cli/src/commands/source.d.ts.map +1 -1
  260. package/dist/cli/src/commands/validate.d.ts +6 -0
  261. package/dist/cli/src/commands/validate.d.ts.map +1 -1
  262. package/dist/cli/src/config-checks.d.ts.map +1 -1
  263. package/dist/cli/src/harness-error.d.ts +11 -9
  264. package/dist/cli/src/harness-error.d.ts.map +1 -1
  265. package/dist/cli/src/skill-checks.d.ts +48 -74
  266. package/dist/cli/src/skill-checks.d.ts.map +1 -1
  267. package/dist/connectors/config.js +5 -5
  268. package/dist/connectors/index.js +22 -22
  269. package/dist/{connectors-KPF4UUDS.js → connectors-7EPJRVLJ.js} +25 -25
  270. package/dist/{connectors-KPF4UUDS.js.map → connectors-7EPJRVLJ.js.map} +1 -1
  271. package/dist/connectors-shared/index.js +2 -2
  272. package/dist/core/index.js +7 -6
  273. package/dist/core/manifest.js +2 -2
  274. package/dist/core/models.js +1 -1
  275. package/dist/core/publish-manifest.js +3 -3
  276. package/dist/core/ref.js +1 -1
  277. package/dist/core/runtime-assets.js +5 -5
  278. package/dist/core/src/agent-prompt-sections.d.ts +96 -4
  279. package/dist/core/src/agent-prompt-sections.d.ts.map +1 -1
  280. package/dist/core/src/check-asset.d.ts +115 -0
  281. package/dist/core/src/check-asset.d.ts.map +1 -0
  282. package/dist/core/src/harness-model.d.ts +20 -0
  283. package/dist/core/src/harness-model.d.ts.map +1 -0
  284. package/dist/core/src/index.d.ts +10 -6
  285. package/dist/core/src/index.d.ts.map +1 -1
  286. package/dist/core/src/lock.d.ts +12 -10
  287. package/dist/core/src/lock.d.ts.map +1 -1
  288. package/dist/core/src/models.d.ts +42 -11
  289. package/dist/core/src/models.d.ts.map +1 -1
  290. package/dist/core/src/publish-manifest.d.ts +17 -0
  291. package/dist/core/src/publish-manifest.d.ts.map +1 -1
  292. package/dist/core/src/repo-identity.d.ts +41 -0
  293. package/dist/core/src/repo-identity.d.ts.map +1 -0
  294. package/dist/core/src/repo-manager.d.ts +3 -9
  295. package/dist/core/src/repo-manager.d.ts.map +1 -1
  296. package/dist/core/src/walker.d.ts.map +1 -1
  297. package/dist/core/src/workspace-config.d.ts.map +1 -1
  298. package/dist/core/workspace-config.js +4 -4
  299. package/dist/deploy/index.js +7 -6
  300. package/dist/deploy/index.js.map +1 -1
  301. package/dist/discovery/index.js +5 -5
  302. package/dist/discovery/src/source-config.d.ts.map +1 -1
  303. package/dist/{ensure-sources-FOMEGCQ5.js → ensure-sources-CI3JQJST.js} +32 -30
  304. package/dist/ensure-sources-CI3JQJST.js.map +1 -0
  305. package/dist/factory-assets/connectors/box.js +22 -22
  306. package/dist/factory-assets/connectors/deploy.js +22 -22
  307. package/dist/factory-assets/connectors/devserver.js +22 -22
  308. package/dist/factory-assets/connectors/flow/adapter.js +22 -22
  309. package/dist/factory-assets/connectors/flow/engine.js +8 -7
  310. package/dist/factory-assets/connectors/flow/run-flow.js +24 -24
  311. package/dist/factory-assets/connectors/flow.js +22 -22
  312. package/dist/factory-assets/connectors/git.js +22 -22
  313. package/dist/factory-assets/connectors/gmail.js +22 -22
  314. package/dist/factory-assets/connectors/googledrive.js +22 -22
  315. package/dist/factory-assets/connectors/local.js +22 -22
  316. package/dist/factory-assets/connectors/mattermost.js +22 -22
  317. package/dist/factory-assets/connectors/memory.js +22 -22
  318. package/dist/factory-assets/connectors/minio.js +22 -22
  319. package/dist/factory-assets/connectors/postgres.js +22 -22
  320. package/dist/factory-assets/connectors/s3.js +22 -22
  321. package/dist/factory-assets/connectors/sharepoint.js +22 -22
  322. package/dist/factory-assets/connectors/sqlite.js +22 -22
  323. package/dist/factory-assets/connectors/static-server.js +22 -22
  324. package/dist/factory-assets/connectors/tunnel.js +22 -22
  325. package/dist/factory-assets/connectors/webdav.js +22 -22
  326. package/dist/factory-assets/connectors/xstate-store.js +22 -22
  327. package/dist/factory-assets/connectors/xstate.js +22 -22
  328. package/dist/{flows-J64L5MGJ.js → flows-6XQAYQS4.js} +12 -11
  329. package/dist/{flows-J64L5MGJ.js.map → flows-6XQAYQS4.js.map} +1 -1
  330. package/dist/{helpers-ZJ67FO3Z.js → helpers-26MR5QPO.js} +32 -30
  331. package/dist/{helpers-ZJ67FO3Z.js.map → helpers-26MR5QPO.js.map} +1 -1
  332. package/dist/library/index.js +10 -10
  333. package/dist/library/install.js +4 -4
  334. package/dist/library/src/index.d.ts +1 -1
  335. package/dist/library/src/index.d.ts.map +1 -1
  336. package/dist/library/src/local/db.d.ts.map +1 -1
  337. package/dist/library/src/local/library-manager.d.ts.map +1 -1
  338. package/dist/library/src/local/library.d.ts.map +1 -1
  339. package/dist/library/src/local/schema.d.ts +19 -0
  340. package/dist/library/src/local/schema.d.ts.map +1 -1
  341. package/dist/library/src/user-library.d.ts +18 -0
  342. package/dist/library/src/user-library.d.ts.map +1 -1
  343. package/dist/{library-publish-RGVXGTY4.js → library-publish-F3AKF66O.js} +74 -68
  344. package/dist/library-publish-F3AKF66O.js.map +1 -0
  345. package/dist/model-endpoint/index.js +10 -9
  346. package/dist/{open-library-I5JHL37T.js → open-library-FVV6GG4I.js} +35 -33
  347. package/dist/{open-library-I5JHL37T.js.map → open-library-FVV6GG4I.js.map} +1 -1
  348. package/dist/{open-registry-4HNCWOCN.js → open-registry-VX2BVMS5.js} +16 -16
  349. package/dist/{open-registry-4HNCWOCN.js.map → open-registry-VX2BVMS5.js.map} +1 -1
  350. package/dist/{paths-PXBWY532.js → paths-PIWSSUUG.js} +10 -9
  351. package/dist/{paths-PXBWY532.js.map → paths-PIWSSUUG.js.map} +1 -1
  352. package/dist/{plugin-store-ZC3EGZ3D.js → plugin-store-MVTW6G7J.js} +10 -9
  353. package/dist/{plugin-store-ZC3EGZ3D.js.map → plugin-store-MVTW6G7J.js.map} +1 -1
  354. package/dist/{project-K5JWPIJ6.js → project-GFQP4TW6.js} +50 -48
  355. package/dist/{project-K5JWPIJ6.js.map → project-GFQP4TW6.js.map} +1 -1
  356. package/dist/resolver/index.js +8 -7
  357. package/dist/runner/composition-content.d.ts +2 -0
  358. package/dist/runner/composition-content.js +29 -0
  359. package/dist/runner/composition-content.js.map +1 -0
  360. package/dist/runner/index.js +40 -39
  361. package/dist/runner/src/compaction/prompt.d.ts.map +1 -1
  362. package/dist/runner/src/composition/content-entry.d.ts +15 -0
  363. package/dist/runner/src/composition/content-entry.d.ts.map +1 -0
  364. package/dist/runner/src/composition/content-source.d.ts +7 -0
  365. package/dist/runner/src/composition/content-source.d.ts.map +1 -1
  366. package/dist/runner/src/composition/dry-run.d.ts +5 -1
  367. package/dist/runner/src/composition/dry-run.d.ts.map +1 -1
  368. package/dist/runner/src/composition/index.d.ts +1 -1
  369. package/dist/runner/src/composition/index.d.ts.map +1 -1
  370. package/dist/runner/src/composition/prompt-sections.d.ts +47 -20
  371. package/dist/runner/src/composition/prompt-sections.d.ts.map +1 -1
  372. package/dist/runner/src/context-usage/compose.d.ts.map +1 -1
  373. package/dist/runner/src/session-builder.d.ts +3 -8
  374. package/dist/runner/src/session-builder.d.ts.map +1 -1
  375. package/dist/runner/src/work-practices.d.ts +9 -0
  376. package/dist/runner/src/work-practices.d.ts.map +1 -0
  377. package/dist/sdk/asset-manager.js +17 -15
  378. package/dist/sdk/bridge.js +18 -18
  379. package/dist/sdk/core.js +7 -6
  380. package/dist/sdk/flow.js +8 -7
  381. package/dist/sdk/index.js +40 -39
  382. package/dist/sdk/index.js.map +1 -1
  383. package/dist/sdk/resolver.js +8 -7
  384. package/dist/sdk/runner.js +40 -39
  385. package/dist/sdk/session.js +2 -2
  386. package/dist/sdk/transport/ws/server.js +8 -7
  387. package/dist/sdk/transport/ws.js +8 -7
  388. package/dist/sdk/transport.js +8 -7
  389. package/dist/sdk/types.js +1 -1
  390. package/dist/serve-preflight-XJS5OZML.js +138 -0
  391. package/dist/serve-preflight-XJS5OZML.js.map +1 -0
  392. package/dist/session/index.js +2 -2
  393. package/dist/{setup-RXTNGML5.js → setup-BFEBJLYF.js} +33 -31
  394. package/dist/setup-BFEBJLYF.js.map +1 -0
  395. package/dist/{skills-5D4KDVPJ.js → skills-OCG7B5CL.js} +13 -12
  396. package/dist/{skills-5D4KDVPJ.js.map → skills-OCG7B5CL.js.map} +1 -1
  397. package/dist/source-P6JPZYWP.js +93 -0
  398. package/dist/{source-2LP5W3ST.js.map → source-P6JPZYWP.js.map} +1 -1
  399. package/dist/{source-manifest-publish-EZNCTSQF.js → source-manifest-publish-XBFHEURV.js} +54 -52
  400. package/dist/source-manifest-publish-XBFHEURV.js.map +1 -0
  401. package/dist/transport/index.js +8 -7
  402. package/dist/transport/ws/server.js +8 -7
  403. package/dist/transport/ws.js +8 -7
  404. package/dist/tui/index.js +40 -39
  405. package/dist/tui/index.js.map +1 -1
  406. package/dist/types/index.js +1 -1
  407. package/dist/types/src/context-usage.d.ts +1 -1
  408. package/dist/types/src/events.d.ts +3 -2
  409. package/dist/types/src/events.d.ts.map +1 -1
  410. package/dist/types/src/runtime.d.ts +6 -0
  411. package/dist/types/src/runtime.d.ts.map +1 -1
  412. package/dist/workspace-plugin/adapters/mcp.js +29 -29
  413. package/dist/workspace-plugin/adapters/omp.js +14 -14
  414. package/dist/workspace-plugin/index.js +1 -1
  415. package/package.json +7 -1
  416. package/dist/asset-feeds-DOG5FK7T.js.map +0 -1
  417. package/dist/chunk-3BRBTQ6M.js.map +0 -1
  418. package/dist/chunk-5FO4U3OL.js.map +0 -1
  419. package/dist/chunk-7FXOOUOC.js.map +0 -1
  420. package/dist/chunk-7HRZACI4.js.map +0 -1
  421. package/dist/chunk-7LJUK5JK.js.map +0 -1
  422. package/dist/chunk-7UBCUKJO.js.map +0 -1
  423. package/dist/chunk-7VBD5XUM.js.map +0 -1
  424. package/dist/chunk-A7TM4PZZ.js +0 -110
  425. package/dist/chunk-A7TM4PZZ.js.map +0 -1
  426. package/dist/chunk-B6W5DCH5.js.map +0 -1
  427. package/dist/chunk-BNLXZXZN.js.map +0 -1
  428. package/dist/chunk-CFRHYD4C.js.map +0 -1
  429. package/dist/chunk-DRUAQ7IY.js.map +0 -1
  430. package/dist/chunk-DYH3VSPU.js.map +0 -1
  431. package/dist/chunk-F7WMHDTV.js.map +0 -1
  432. package/dist/chunk-LMUNQYJQ.js.map +0 -1
  433. package/dist/chunk-LZCX2TCZ.js.map +0 -1
  434. package/dist/chunk-MEU2HHGV.js.map +0 -1
  435. package/dist/chunk-MS2IXLTC.js.map +0 -1
  436. package/dist/chunk-OC3AIMZH.js.map +0 -1
  437. package/dist/chunk-RRAXV5LE.js.map +0 -1
  438. package/dist/chunk-YNQRVTXH.js.map +0 -1
  439. package/dist/cli/src/commands/harness-preflight.d.ts +0 -40
  440. package/dist/cli/src/commands/harness-preflight.d.ts.map +0 -1
  441. package/dist/ensure-sources-FOMEGCQ5.js.map +0 -1
  442. package/dist/library-publish-RGVXGTY4.js.map +0 -1
  443. package/dist/serve-preflight-L6VVCDM5.js +0 -61
  444. package/dist/serve-preflight-L6VVCDM5.js.map +0 -1
  445. package/dist/setup-RXTNGML5.js.map +0 -1
  446. package/dist/source-2LP5W3ST.js +0 -91
  447. package/dist/source-manifest-publish-EZNCTSQF.js.map +0 -1
@@ -0,0 +1,101 @@
1
+ import { type AssetRef, type CatalogEntry, type LockFile, type PresetExpansion } from "@skaile/workspaces/core";
2
+ import type { MemberIdentity } from "./types.js";
3
+ /**
4
+ * Drop a publisher scope so a declared `@pub/name` compares equal to an on-disk
5
+ * / declared `name` (both directions are checked at the call sites).
6
+ */
7
+ export declare function unscopedName(x: string): string;
8
+ /**
9
+ * Qualify a dependency ref with `fallback` (the declaring asset's publisher) when it
10
+ * names none: `name` / `kind:name[#pin]` become `kind:@fallback/name[#pin]`. A ref
11
+ * that already carries a scope is returned unchanged. Same rule `resolveAll` applies
12
+ * to a source/store candidate's transitive deps.
13
+ */
14
+ export declare function qualifyDepRef(ref: string, fallback: string): string;
15
+ /**
16
+ * The canonical refs among `deployed` whose library asset body is still the untouched
17
+ * `library create` scaffold (the check `validate` and the publish plan fail, p926). An entry whose
18
+ * file cannot be read, or that has no markdown body, is never reported.
19
+ */
20
+ export declare function scaffoldBodyRefs(entries: readonly CatalogEntry[], deployed: readonly string[]): string[];
21
+ /**
22
+ * The canonical refs among `deployed` whose library asset `description:` is still the untouched
23
+ * `library create` placeholder (the check `validate` and the publish plan fail, p926).
24
+ */
25
+ export declare function scaffoldDescriptionRefs(entries: readonly CatalogEntry[], deployed: readonly string[]): string[];
26
+ /**
27
+ * Every dependency a library asset declares, as publisher-qualified refs: bundle
28
+ * `dependencies` (raw refs) plus `requires` (as parsed by `parseRequires`, which also
29
+ * carries a manifest entry's `dependencies`). A dependency without a publisher inherits
30
+ * the declaring asset's (same-library assumption); `@publisher/name` ones keep theirs.
31
+ */
32
+ export declare function libraryEntryDepRefs(e: CatalogEntry): string[];
33
+ /**
34
+ * Why the flow engine rejects the flow file of `e` (the parse `loadFlow` runs): its first
35
+ * complaints as one phrase, or `undefined` when it loads. A file that cannot be read is left
36
+ * to the deploy, which names it. `e.source` is the flow file or the folder holding
37
+ * `<name>.flow.yaml`.
38
+ */
39
+ export declare function flowLoadError(e: Pick<CatalogEntry, "name" | "source">): string | undefined;
40
+ /**
41
+ * Refuse a `flow` entry whose file the flow engine rejects, before anything is written. `add`,
42
+ * `install`, `install --locked` and `update` all stop here, with the sentence `check` and
43
+ * `doctor` use for the deployed copy (p1192).
44
+ *
45
+ * @param done - What did not happen, e.g. `added` or `installed`.
46
+ * @throws One line naming the flow and the engine's first complaints.
47
+ */
48
+ export declare function assertFlowsLoad(entries: readonly CatalogEntry[], done: "added" | "installed"): void;
49
+ /** `<publisher>/<kind>:<name>` identity of a publisher-qualified ref; `null` when unparseable or unqualified. */
50
+ export declare function refIdentity(ref: string): string | null;
51
+ /**
52
+ * Parse a canonical lock key (`<kind>:@<publisher>/<name>#<version>`) into its
53
+ * parts. The lock key is a canonical asset ref, so this delegates to the one ref
54
+ * parser; `AssetRef.pin` is exposed as `version` so the callers' destructuring is
55
+ * unchanged. Stays total — callers rely on `{}`-then-`continue`, but `parseAssetRef`
56
+ * throws, so a genuinely malformed key is caught and returned as `{}`.
57
+ *
58
+ * A **content-sha pseudo-version** key (`#0.0.0-sha.<hash>`, the version every
59
+ * manifest-less source gets) fails `parseAssetRef`'s canonical-pin check. Dropping
60
+ * it to `{}` would strip the identity, so the install reconcile / state machine
61
+ * could never act on such an asset (it silently survives a remove-from-yaml). Fall
62
+ * back to parsing the bare identity, keeping the raw pin as `version`.
63
+ *
64
+ * @internal Exported for unit tests; not part of the stable public surface.
65
+ */
66
+ export declare function parseCanonicalLockKey(key: string): {
67
+ publisher?: string;
68
+ kind?: string;
69
+ name?: string;
70
+ version?: string;
71
+ };
72
+ /**
73
+ * Parse a ref for lookup, tolerating a **missing publisher** (`kind:name`, the
74
+ * shape `listDeployed` emits and the strict `parseAssetRef` rejects). Returns
75
+ * `null` when neither kind nor name is recoverable. Unlike {@link parseAssetRefLoose}
76
+ * (publisher-required, only strips a `#pin`), this keeps the publisher optional.
77
+ *
78
+ * @internal Exported for unit tests; not part of the stable public surface.
79
+ */
80
+ export declare function parseRefTolerant(ref: string): AssetRef | null;
81
+ /** The `presets` slice of a lock built for `presets`: canonical refs, one per preset, sorted; empty when none. */
82
+ export declare function presetsLockSlice(presets: readonly PresetExpansion[]): Pick<LockFile, "presets">;
83
+ /** The fix for a source clone folder that holds no usable git checkout. */
84
+ export declare const RUN_SOURCE_SYNC = "run `skaile source sync` to clone it again";
85
+ /** The first half of every "nothing holds it" fix: register the library that holds the ref. */
86
+ export declare const REGISTER_HOLDER = "register the library that holds it with `skaile library init <name> --path <dir>`";
87
+ /** Whether `ref` names the asset `want` does: same kind and name, same publisher when both carry one. */
88
+ export declare function sameAsset(ref: string, want: {
89
+ kind: string;
90
+ name: string;
91
+ publisher?: string;
92
+ }): boolean;
93
+ /** `kind:name` of a {@link LockGap} ref, publisher and pin left out; the raw ref when it does not parse. */
94
+ export declare function gapIdentity(ref: string): string;
95
+ /**
96
+ * Version-agnostic `{ kind, name, publisher? }` of a member ref as a preset may
97
+ * write it: canonical `kind:@pub/name`, bare `kind:name`, or the legacy
98
+ * `kind:name@pub`, each optionally `#pinned`. Publisher is bare (no `@`).
99
+ */
100
+ export declare function memberIdentity(ref: string): MemberIdentity | null;
101
+ //# sourceMappingURL=refs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refs.d.ts","sourceRoot":"","sources":["../../../../asset-manager/src/shared/refs.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,eAAe,EACrB,MAAM,yBAAyB,CAAC;AAKjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAYnE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,SAAS,YAAY,EAAE,EAChC,QAAQ,EAAE,SAAS,MAAM,EAAE,GAC1B,MAAM,EAAE,CAcV;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,SAAS,YAAY,EAAE,EAChC,QAAQ,EAAE,SAAS,MAAM,EAAE,GAC1B,MAAM,EAAE,CAOV;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,EAAE,CAW7D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,QAAQ,CAAC,GAAG,MAAM,GAAG,SAAS,CAuB1F;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,SAAS,YAAY,EAAE,EAChC,IAAI,EAAE,OAAO,GAAG,WAAW,GAC1B,IAAI,CASN;AAED,iHAAiH;AACjH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOtD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAqBA;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAc7D;AAED,kHAAkH;AAClH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,eAAe,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAG/F;AAED,2EAA2E;AAC3E,eAAO,MAAM,eAAe,+CAA+C,CAAC;AAE5E,+FAA+F;AAC/F,eAAO,MAAM,eAAe,sFACyD,CAAC;AAEtF,yGAAyG;AACzG,wBAAgB,SAAS,CACvB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACvD,OAAO,CAQT;AAED,4GAA4G;AAC5G,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG/C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAgBjE"}
@@ -0,0 +1,399 @@
1
+ import type { CatalogEntry, HarnessName, LockEntry, LockFile, PresetExpansion, ProvenanceCandidate } from "@skaile/workspaces/core";
2
+ import type { AssetDefinition, Library } from "@skaile/workspaces/library";
3
+ import type { InstalledAgentInstance } from "../install-instances.js";
4
+ import type { DeployableEntry } from "../installer.js";
5
+ import type { HarnessDeclaredAsset } from "../read/state.js";
6
+ /**
7
+ * Snapshot of the local index's library side: the registered libraries and every
8
+ * indexed asset definition. Library assets are bytes on disk; the index is the
9
+ * authority on their *version* (a `skaile.manifest.yaml` `assets[].version` can
10
+ * differ from the asset's own frontmatter) and content hash.
11
+ */
12
+ export interface LibraryIndexSnapshot {
13
+ libraries: Library[];
14
+ defs: AssetDefinition[];
15
+ }
16
+ /** Kind, name and bare publisher of an asset, as far as known; compared for deploy-folder clashes. */
17
+ export interface FolderIdentity {
18
+ kind?: string;
19
+ name?: string;
20
+ publisher?: string;
21
+ }
22
+ /** What `update` knows about the locked libraries, so an equal-version tie keeps the locked source. */
23
+ export interface PreferLocked {
24
+ /** `kind:publisher/name` → the library name its lock entry resolves to here ({@link AssetManager.lockedLibraryNames}). */
25
+ libraries: ReadonlyMap<string, string | null>;
26
+ /** `kind:publisher/name` → the sha256 the lock recorded for the library copy. */
27
+ shas: ReadonlyMap<string, string>;
28
+ }
29
+ /** Library leg of a resolution: matched deploy entries, the refs they cover, and their library. */
30
+ export interface LibraryResolution {
31
+ entries: DeployableEntry[];
32
+ resolved: Set<string>;
33
+ libraryOf: Map<CatalogEntry, string>;
34
+ }
35
+ /**
36
+ * Lock entries a declared ref that no longer resolves keeps: every lock entry of the same
37
+ * kind + name (and publisher, when the ref names one), so `install` neither deletes the
38
+ * deployed files nor drops the pin, plus the `sources[]` rows those entries point at.
39
+ * `refs` are the missed refs that matched an entry.
40
+ */
41
+ export interface KeptLockEntries {
42
+ assets: Record<string, LockEntry>;
43
+ sources: LockFile["sources"];
44
+ refs: Set<string>;
45
+ /** The lock keys each kept ref matched. */
46
+ keysByRef: Map<string, string[]>;
47
+ }
48
+ /** A locked asset that now resolves from another library than its lock entry named. */
49
+ export interface LibraryMove {
50
+ /** `kind:@publisher/name` (no version). */
51
+ ref: string;
52
+ /** Library name the lock entry recorded. */
53
+ from: string;
54
+ /** Library name the asset resolved from now. */
55
+ to: string;
56
+ }
57
+ /**
58
+ * A locked library asset `install` keeps in place of a library edit, with what it requires.
59
+ * `contentChanged`: the library holds the locked version with other bytes (an edit with no bump).
60
+ */
61
+ export interface KeptLibraryEntry {
62
+ key: string;
63
+ entry: LockEntry;
64
+ requires: string[];
65
+ contentChanged: boolean;
66
+ }
67
+ /** A locked library asset whose library holds the locked version with other bytes (an edit with no bump). */
68
+ export interface ContentHeld {
69
+ /** The lock key, `kind:@publisher/name#version`. */
70
+ ref: string;
71
+ /** The library that holds the changed files. */
72
+ library: string;
73
+ version: string;
74
+ }
75
+ /** What {@link AssetManager.resolveLibraryFirst} resolved: candidates, still-missing refs, library entries, presets. */
76
+ export interface LibraryFirstResolution {
77
+ resolved: ProvenanceCandidate[];
78
+ missing: string[];
79
+ overridesApplied: Set<string>;
80
+ lib: LibraryResolution;
81
+ presets: PresetExpansion[];
82
+ requiredBy: Map<string, string[]>;
83
+ /** Lock entries of library assets the library holds at another version than locked: `install` keeps them (only `update` moves a lock). */
84
+ keptVersions: Record<string, LockEntry>;
85
+ /** One `ref (reason)` line for each such asset whose deployed copy is gone: the locked version cannot be restored from the newer files. */
86
+ versionBlocked: string[];
87
+ /** Locked library assets the library holds at the locked version with other bytes: `install` keeps them, only `update` takes the edit. */
88
+ contentHeld: ContentHeld[];
89
+ /** The library presets met on the way (a preset is never deployed, so it is not in `lib.entries`): `add` runs the manifest and file checks on them too. */
90
+ libraryPresets: Array<{
91
+ entry: CatalogEntry;
92
+ library: string;
93
+ }>;
94
+ }
95
+ /**
96
+ * How a library named in a lock entry stands on this machine: usable at `path`, registered but
97
+ * with its directory gone, or not registered at all (renamed away, removed, or never registered
98
+ * here). One result for {@link AssetManager.lockedLibrary}, the only place that decides it.
99
+ * `name` of an `ok` lookup is the name the library is registered under here, which is not the
100
+ * locked name when the lock's remote URL matched another registered library.
101
+ */
102
+ export type LockedLibrary =
103
+ /**
104
+ * `matched: "content"` - the locked name is gone and the library was found by the asset it
105
+ * holds (same publisher and name, the locked content hash), not by name or remote URL.
106
+ * `matched: "id"` - the lock names the library by its stable id; `name` is the name it has now.
107
+ * `matched: "url"` - the locked name is gone and another registered library has the locked remote.
108
+ */
109
+ {
110
+ state: "ok";
111
+ path: string;
112
+ name: string;
113
+ matched?: "content" | "id" | "url";
114
+ } | {
115
+ state: "dir-missing";
116
+ path: string;
117
+ name?: string;
118
+ } | {
119
+ state: "unregistered";
120
+ };
121
+ /** Version-agnostic identity of a member ref (see {@link memberIdentity}). */
122
+ export interface MemberIdentity {
123
+ kind: string;
124
+ name: string;
125
+ publisher?: string;
126
+ }
127
+ /**
128
+ * Reconciliation state of a declared dependency relative to the lock + disk.
129
+ * `invalid` flags a `dependencies:` entry that isn't a parseable canonical ref —
130
+ * surfaced (not silently dropped) so a `skaile.yaml` typo is visible.
131
+ */
132
+ export type DeclaredState = "declared" | "installed" | "drift" | "invalid" | "skipped";
133
+ /**
134
+ * A top-level dependency declared in `skaile.yaml`, annotated with its
135
+ * reconciliation {@link DeclaredState}. Transitive (lock-only) deps are never
136
+ * included — {@link AssetManager.listDeclared} walks the declared set only.
137
+ */
138
+ export interface DeclaredAsset {
139
+ /** The canonical declared ref exactly as written in `skaile.yaml`. */
140
+ ref: string;
141
+ kind: string;
142
+ name: string;
143
+ state: DeclaredState;
144
+ /** Set with `skipped`: why skaile does not write the `mcp-server` to the coding agent's MCP config. */
145
+ reason?: string;
146
+ }
147
+ /** A deployed library asset that lacks files of its library entry. See {@link AssetManager.incompleteDeploys}. */
148
+ export interface IncompleteDeploy {
149
+ /** Canonical ref of the asset. */
150
+ ref: string;
151
+ /** Files the deploy writes that are absent from the deployed directory, relative to it. */
152
+ missing: string[];
153
+ }
154
+ /** @deprecated Use {@link HarnessDeclaredAsset}; the `backend` field is now `harness`. Removed in the next major. */
155
+ export type BackendDeclaredAsset = HarnessDeclaredAsset;
156
+ /**
157
+ * Metadata about a repository declared in `skaile.yaml`.
158
+ *
159
+ * @docLink packages/asset-manager/concepts#asset-manager
160
+ */
161
+ export interface RepoInfo {
162
+ /** Repository name as declared in `skaile.yaml`. */
163
+ name: string;
164
+ /** How the repo is sourced: cloned from a URL, mounted from a local path, or symlinked via `skaile repo link`. */
165
+ kind: "local" | "remote" | "linked";
166
+ /** Remote URL (present when `kind === "remote"`). */
167
+ url?: string;
168
+ /** Filesystem path (present when `kind === "local"` or `kind === "linked"`). */
169
+ path?: string;
170
+ /** Git branch configured for this repository. */
171
+ branch: string;
172
+ /** Whether the repository has been cloned/resolved locally. */
173
+ cloned: boolean;
174
+ }
175
+ /** The rendered native files of one locked agent that a deploy wrote with other content. */
176
+ export interface RewrittenAgent {
177
+ /** Lock key of the agent asset. */
178
+ ref: string;
179
+ /** Project-relative POSIX paths of the files whose bytes changed. */
180
+ files: string[];
181
+ }
182
+ /** One deployed copy `install` made equal to its locked bytes again. */
183
+ export interface RestoredAsset {
184
+ /** Canonical ref of the asset. */
185
+ ref: string;
186
+ /** Deployed files whose hand edit was overwritten (project-relative POSIX paths). */
187
+ restored: string[];
188
+ /** Files the asset does not ship that were deleted from its deployed directory. */
189
+ removed: string[];
190
+ }
191
+ /** One asset `install` moved from one locked version to another. */
192
+ export interface ReplacedAsset {
193
+ /** `kind:@publisher/name`, no version. */
194
+ ref: string;
195
+ from: string;
196
+ to: string;
197
+ }
198
+ /**
199
+ * Result of a full `skaile install` or `skaile add` run.
200
+ *
201
+ * @docLink packages/asset-manager/concepts#asset-manager
202
+ */
203
+ /** A locked store asset `install` did not re-check against the store; see {@link InstallResult.storeNotChecked}. */
204
+ export interface StoreNotChecked {
205
+ /** The declared ref as `install` reports it (`kind:@publisher/name#version`). */
206
+ ref: string;
207
+ reason: "air-gapped" | "unreachable" | "skipped";
208
+ /** Why the store was not asked, or what it answered (the store URL and the cause). */
209
+ detail: string;
210
+ }
211
+ export interface InstallResult {
212
+ /** Canonical refs (`kind:@publisher/name#version`) successfully deployed in this run. */
213
+ deployed: string[];
214
+ /**
215
+ * Deployed library assets whose body is still the untouched `library create` scaffold: they
216
+ * fail `validate` and the publish plan, so `install` names them (p926). Absent when none is.
217
+ */
218
+ placeholderBodies?: string[];
219
+ /**
220
+ * Deployed library assets whose `description:` is still the `library create` placeholder
221
+ * (`TODO: …`): `validate` and the publish plan fail it as well. Absent when none is.
222
+ */
223
+ placeholderDescriptions?: string[];
224
+ /** Asset refs (`kind:name`) removed because they are no longer in the resolved set. */
225
+ removed: string[];
226
+ /**
227
+ * Asset refs that could not be resolved in any configured repository. On the
228
+ * non-locked path every entry is a bare ref; the reason a miss happened lives in
229
+ * {@link InstallResult.missingHints}. The `--locked` path still appends its prose
230
+ * (`ref (not found in library "x")`) to the entry, and also lists every
231
+ * {@link AssetManager.projectState} gap (a declared dependency or a locked asset's
232
+ * `requires` with no lock entry, a lock that contradicts a `skaile.yaml` pin, a library
233
+ * that cannot supply a locked asset) as its one-line message.
234
+ */
235
+ missing: string[];
236
+ /**
237
+ * Why a ref in {@link InstallResult.missing} may have missed, keyed by that ref:
238
+ * the asset's publisher changed (`library set publisher=`), so the lock still holds
239
+ * it under the old one and/or a library now holds it under another. Parenthesised
240
+ * parts such as `did you mean skill:@acme/x?` and
241
+ * `locked as skill:@plain/x; run skaile install to re-resolve`. Only refs with a
242
+ * hint appear; absent when none has.
243
+ */
244
+ missingHints?: Record<string, string>;
245
+ /**
246
+ * Locked store assets `install` could not check against the store (p792, p799): the deployed
247
+ * copy and the lock entry stay as they are and the asset is not in {@link InstallResult.missing}.
248
+ * `air-gapped` (`catalog.cache_ttl: 0`, nothing cached) and `skipped` (`update --no-catalog`)
249
+ * are a chosen mode, `unreachable` a store that did not answer. Absent when every locked store
250
+ * asset was checked.
251
+ */
252
+ storeNotChecked?: StoreNotChecked[];
253
+ /**
254
+ * Lock keys whose entry `install` rewrote for an asset that was already locked: the
255
+ * library or source holds another version of it, or the same version with other
256
+ * content. A re-lock can happen with nothing to deploy. Absent when none changed.
257
+ */
258
+ relocked?: string[];
259
+ /**
260
+ * Locked library assets whose library holds the locked version with other bytes (an edit with
261
+ * no version bump). `install` keeps their lock and deployed copy: only `skaile update` takes
262
+ * the edit (OQ13, p1911). Absent when none.
263
+ */
264
+ contentHeld?: ContentHeld[];
265
+ /**
266
+ * Global entries a 5.12.0 record left without a harness subset, now limited to the one harness
267
+ * that holds their copy (`ref` is `kind:@publisher/name`). Absent when nothing was inferred.
268
+ */
269
+ inferredHarnesses?: Array<{
270
+ ref: string;
271
+ harnesses: HarnessName[];
272
+ }>;
273
+ /**
274
+ * Library-origin assets whose lock entry now names another library than before. `install`
275
+ * keeps a locked asset on its library; only `update`, a pin, or a locked library that no
276
+ * longer holds the asset moves it. Absent when none moved.
277
+ */
278
+ moved?: LibraryMove[];
279
+ /**
280
+ * Assets whose locked version `install` replaced with another version of the same asset
281
+ * (`ref` is `kind:@publisher/name`). Not part of {@link InstallResult.removed}: nothing
282
+ * left the project. Absent when none changed.
283
+ */
284
+ replaced?: ReplacedAsset[];
285
+ /**
286
+ * Deployed copies `install` made equal to their locked bytes again: a file edited by hand
287
+ * (`restored`) or an extra file in the asset directory (`removed`), both as project-relative
288
+ * POSIX paths. Absent when every deployed copy already matched.
289
+ */
290
+ restored?: RestoredAsset[];
291
+ /**
292
+ * One line per locked library that is not registered here but whose assets `install --locked`
293
+ * restored from a store that serves the locked hash (every file SHA-verified): the notice that
294
+ * the library is not registered, where the bytes came from, and how to register it. Not a failure: `missing` stays empty (OQ8, p1655).
295
+ */
296
+ libraryNotices?: string[];
297
+ /**
298
+ * Rendered agent files that a lock without `rendered:` entries (written by a CLI before
299
+ * 5.12.0) did not cover and that this run wrote with other content, because the render of
300
+ * the agent changed. Absent when none.
301
+ */
302
+ rewritten?: RewrittenAgent[];
303
+ /** Whether `skaile.lock.yaml` was written or updated. */
304
+ lockWritten: boolean;
305
+ /**
306
+ * npm packages installed as a side effect of resolving runtime asset peer
307
+ * deps (connectors / mounts declared in skaile.yaml). Empty when nothing
308
+ * needed installing or when the runtime-deps step was skipped.
309
+ */
310
+ npmInstalled?: string[];
311
+ /**
312
+ * npm packages that the runtime-deps step tried but failed to install.
313
+ * Non-fatal — listed for telemetry and CLI reporting.
314
+ */
315
+ npmFailed?: string[];
316
+ /**
317
+ * One entry per `preset:` dependency expanded into this install (nested presets
318
+ * included): how many asset items joined the install set and how many instance
319
+ * items (`library://`, placeholders) were skipped.
320
+ */
321
+ presets?: PresetExpansion[];
322
+ /**
323
+ * One entry per `skaile.yaml` agent instance (`agent:` as `default`, plus
324
+ * `agents:`) rendered into the target harness's native agent files, with the
325
+ * workspace-relative paths written. Absent for `--global` installs and
326
+ * harnesses without a native agent format.
327
+ */
328
+ agentInstances?: InstalledAgentInstance[];
329
+ /**
330
+ * Ids of the `agentInstances` whose native agent files changed in this run (a new file,
331
+ * other bytes). An instance that rendered the same bytes again is not listed: `install`
332
+ * re-renders every instance each run (p1673).
333
+ */
334
+ agentInstancesChanged?: string[];
335
+ /**
336
+ * Workspace-relative native agent files removed because their instance left
337
+ * `skaile.yaml` (only files an earlier `skaile install` rendered are ever removed).
338
+ */
339
+ agentFilesRemoved?: string[];
340
+ /**
341
+ * Agent instances of `skaile.yaml` whose `ref` resolves to no agent (never added, or gone):
342
+ * one message each. Their earlier rendering is kept. `skaile install` fails on a non-empty list.
343
+ */
344
+ agentInstanceErrors?: string[];
345
+ /**
346
+ * The resolver's own text (with the directories it searched) for each entry of
347
+ * {@link agentInstanceErrors} whose message was shortened to one line of advice; for `--verbose`.
348
+ */
349
+ agentInstanceDetails?: string[];
350
+ }
351
+ /**
352
+ * A missing dependency detected by `AssetManager.doctor()`.
353
+ *
354
+ * @docLink packages/asset-manager/concepts#asset-manager
355
+ */
356
+ export interface DepIssue {
357
+ /** Kind of the asset that has the unsatisfied requirement. */
358
+ assetKind: string;
359
+ /** Name of the asset that has the unsatisfied requirement. */
360
+ assetName: string;
361
+ /** Kind of the missing dependency. */
362
+ depKind: string;
363
+ /** Name of the missing dependency (`@<publisher>/<name>` when it names a publisher). */
364
+ depName: string;
365
+ /** `true` when the missing dependency exists in a configured repository but has not been installed. */
366
+ inRepos: boolean;
367
+ /**
368
+ * `true` when the asset itself is lock-managed but no source or library holds it
369
+ * any more, so its `requires` cannot be checked. `depKind`/`depName` repeat the asset.
370
+ */
371
+ unresolved?: boolean;
372
+ /**
373
+ * Set with `unresolved` when the lock ties the asset to a library: what to change
374
+ * (`register library "x" again with …`, `did you mean <ref>?`). `skaile install`
375
+ * cannot restore it. Absent when the lock names no library for it.
376
+ */
377
+ fix?: string;
378
+ }
379
+ /**
380
+ * One way the project differs from what it declares and locks; see {@link AssetManager.projectState}.
381
+ *
382
+ * @docLink packages/asset-manager/concepts#asset-manager
383
+ */
384
+ export interface LockGap {
385
+ type: "declared" | "invalid" | "drift" | "pin" | "requires" | "unresolved" | "library" | "incomplete" | "content" | "modified" | "agent" | "flow" | "render" | "source";
386
+ /** The ref to act on: the declared ref, the unmet dependency `kind:name`, or the asset itself. */
387
+ ref: string;
388
+ /** Set on a `requires` gap: the requiring asset, `kind:@publisher/name` (`kind:name` when the lock knows no publisher). */
389
+ asset?: string;
390
+ /** What is wrong, as a phrase that follows `ref` (e.g. `is declared but not locked — run …`). */
391
+ reason: string;
392
+ /** One line naming the gap, without a leading status mark: `${ref} ${reason}`, except a `requires` gap, which leads with the requiring asset. */
393
+ message: string;
394
+ /** Set when `skaile install` cannot fix the gap; `reason` then names what to change instead. */
395
+ manualFix?: true;
396
+ /** Set on the gap of a `sources:` entry whose clone the walk could not read. `install --locked` restores from the lock alone, so it does not count that as missing. */
397
+ unreadableSource?: true;
398
+ }
399
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../asset-manager/src/shared/types.ts"],"names":[],"mappings":"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"}
@@ -1,31 +1,31 @@
1
1
  import { formatDroppedToolsNotice, filterInProcessMcpServerTools, checkToolPropertyKeys, TOOL_PROPERTY_KEY_PATTERN } from '../../chunk-3X7VTCPG.js';
2
2
  import { AskSlots } from '../../chunk-3TG2NV2F.js';
3
- import { scrubPoisonedTranscript, transcriptStoreForRuntime, resolveClaudeConfigDir, unsupportedSurfaceNotice, claudeEndpointMode, buildClaudeEndpointEnv, APPROVE_ONCE, DENY } from '../../chunk-QNHW26AT.js';
3
+ import { scrubPoisonedTranscript, transcriptStoreForRuntime, resolveClaudeConfigDir, unsupportedSurfaceNotice, claudeEndpointMode, buildClaudeEndpointEnv, APPROVE_ONCE, DENY } from '../../chunk-OD4N5O7V.js';
4
4
  import { freshBudget, isFirstAttempt, spend, isSpent, decide, isAvailable } from '../../chunk-7EKQDY2T.js';
5
- import { dispatchCapability } from '../../chunk-GJT2Q5XD.js';
5
+ import { dispatchCapability } from '../../chunk-HXST2IYJ.js';
6
6
  import { fetchProviderModels } from '../../chunk-U7EZ2WSC.js';
7
7
  import { harnessSpawnPath, resolveHarnessBinary, SDK_CLI_BINARIES } from '../../chunk-YKD2MYLU.js';
8
8
  import { ReconfigureLedger, AuthError, stripRunnerPrivateEnv, classifyClaudeSdkError, reclassifyAuthAsAccountUnavailable, AccountUnavailableError, isLongContextEntitlementRejection, LONG_CONTEXT_CREDITS_API_ERROR } from '../../chunk-5DE3DGVR.js';
9
9
  import { agentExecRequested, wrapAgentCommand, resolveAgentExec } from '../../chunk-7DN6JKP2.js';
10
- import { AgentHarness, getBridgeLogger, registryHarnessConfig } from '../../chunk-XHLRMUMO.js';
11
- import { BUILTIN_HARNESS_CATALOG, entryCredentialValue } from '../../chunk-3BRBTQ6M.js';
10
+ import { AgentHarness, getBridgeLogger, registryHarnessConfig } from '../../chunk-NAQXDTF3.js';
11
+ import { BUILTIN_HARNESS_CATALOG, harnessInfoFor, entryCredentialValue } from '../../chunk-S3UOZBGE.js';
12
12
  import '../../chunk-G5SUWZEU.js';
13
13
  import '../../chunk-6UP2EDFN.js';
14
- import { withActivityLabelShape } from '../../chunk-DWPQBMCY.js';
15
- import '../../chunk-LCXQ4LVP.js';
16
- import { loadHarnessSdk } from '../../chunk-MEU2HHGV.js';
14
+ import { withActivityLabelShape } from '../../chunk-JPV4WE5L.js';
15
+ import { loadHarnessSdk } from '../../chunk-U7P22GEB.js';
17
16
  import '../../chunk-4GY63JU6.js';
18
- import '../../chunk-CJO3XKO7.js';
17
+ import '../../chunk-ETGC2MEM.js';
19
18
  import '../../chunk-5KRMNUL4.js';
20
19
  import '../../chunk-C5HFK34M.js';
21
20
  import '../../chunk-MWXYN6NY.js';
22
- import '../../chunk-BNLXZXZN.js';
21
+ import '../../chunk-BRAOB37W.js';
23
22
  import '../../chunk-L5VSIPQD.js';
24
23
  import '../../chunk-VTETQCR6.js';
25
- import '../../chunk-MS2IXLTC.js';
26
- import '../../chunk-VS6XC5JE.js';
24
+ import '../../chunk-PMXTBWFD.js';
25
+ import '../../chunk-2MTRRK37.js';
27
26
  import '../../chunk-RVRB27AN.js';
28
- import '../../chunk-7HRZACI4.js';
27
+ import '../../chunk-HW4BDJPC.js';
28
+ import '../../chunk-LCXQ4LVP.js';
29
29
  import '../../chunk-VSX2G7LA.js';
30
30
  import { mergeRegistries, parseModelRef, isEntryEnabled, resolveEntryBaseUrl } from '../../chunk-RXGPFAMN.js';
31
31
  import '../../chunk-RZL4TOK3.js';
@@ -763,13 +763,7 @@ function withoutExpectedSdkWarnings(fn) {
763
763
  }
764
764
  }
765
765
  var ClaudeSdkHarness = class extends AgentHarness {
766
- harnessInfo = {
767
- id: "claude-sdk",
768
- name: "Claude Agent SDK",
769
- modelAgnostic: false,
770
- supportsInBandAbort: true,
771
- capabilities: BUILTIN_HARNESS_CATALOG["claude-sdk"]?.capabilities
772
- };
766
+ harnessInfo = harnessInfoFor("claude-sdk");
773
767
  log = getBridgeLogger("claude-sdk");
774
768
  /** `kind: mcp` logger for tool-schema drops, alongside the runner's MCP rows. */
775
769
  mcpLog = createLogger({ kind: "mcp", subkind: "tool-schema-filter" });