@skaile/workspaces 5.13.0 → 5.14.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 (237) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/app-sdk/index.js +1 -1
  3. package/dist/{asset-feeds-ALMTHLPV.js → asset-feeds-PAOX3FUT.js} +11 -11
  4. package/dist/{asset-feeds-ALMTHLPV.js.map → asset-feeds-PAOX3FUT.js.map} +1 -1
  5. package/dist/asset-manager/catalog-deployer.js +3 -3
  6. package/dist/asset-manager/index.js +7 -7
  7. package/dist/asset-manager/installer.js +5 -5
  8. package/dist/asset-manager/renderers.js +4 -4
  9. package/dist/bridge/drivers/claude-sdk.js +145 -10
  10. package/dist/bridge/drivers/claude-sdk.js.map +1 -1
  11. package/dist/bridge/drivers/codex.js +6 -5
  12. package/dist/bridge/drivers/codex.js.map +1 -1
  13. package/dist/bridge/drivers/continue.js +7 -6
  14. package/dist/bridge/drivers/continue.js.map +1 -1
  15. package/dist/bridge/drivers/echo.js +4 -3
  16. package/dist/bridge/drivers/echo.js.map +1 -1
  17. package/dist/bridge/drivers/gemini.js +6 -5
  18. package/dist/bridge/drivers/goose.js +7 -6
  19. package/dist/bridge/drivers/goose.js.map +1 -1
  20. package/dist/bridge/drivers/omp.js +5 -4
  21. package/dist/bridge/drivers/omp.js.map +1 -1
  22. package/dist/bridge/drivers/opencode.js +7 -6
  23. package/dist/bridge/drivers/opencode.js.map +1 -1
  24. package/dist/bridge/drivers/qwen.js +6 -5
  25. package/dist/bridge/drivers/qwen.js.map +1 -1
  26. package/dist/bridge/index.js +9 -8
  27. package/dist/bridge/src/drivers/claude-sdk.d.ts +2 -0
  28. package/dist/bridge/src/drivers/claude-sdk.d.ts.map +1 -1
  29. package/dist/bridge/src/drivers/claude-self-turns.d.ts +72 -0
  30. package/dist/bridge/src/drivers/claude-self-turns.d.ts.map +1 -0
  31. package/dist/bridge/src/normalizer.d.ts.map +1 -1
  32. package/dist/bridge/src/types.d.ts +12 -0
  33. package/dist/bridge/src/types.d.ts.map +1 -1
  34. package/dist/{chunk-6GICC4RJ.js → chunk-3NNL334S.js} +10 -10
  35. package/dist/{chunk-6GICC4RJ.js.map → chunk-3NNL334S.js.map} +1 -1
  36. package/dist/{chunk-4NJ3QQHZ.js → chunk-5IMGZAKH.js} +4 -4
  37. package/dist/{chunk-4NJ3QQHZ.js.map → chunk-5IMGZAKH.js.map} +1 -1
  38. package/dist/{chunk-6NQDDCIL.js → chunk-5NVDOEWX.js} +15 -7
  39. package/dist/chunk-5NVDOEWX.js.map +1 -0
  40. package/dist/{chunk-BVJU2GKE.js → chunk-6VIVUBNN.js} +4 -271
  41. package/dist/chunk-6VIVUBNN.js.map +1 -0
  42. package/dist/{chunk-GMDSRSGI.js → chunk-7LGNJJ76.js} +6 -6
  43. package/dist/{chunk-GMDSRSGI.js.map → chunk-7LGNJJ76.js.map} +1 -1
  44. package/dist/{chunk-FB3NREF7.js → chunk-BASMWKPM.js} +7 -7
  45. package/dist/{chunk-FB3NREF7.js.map → chunk-BASMWKPM.js.map} +1 -1
  46. package/dist/{chunk-L3ZGYSWY.js → chunk-CAPKENNF.js} +9 -4
  47. package/dist/chunk-CAPKENNF.js.map +1 -0
  48. package/dist/{chunk-4L4R5LV3.js → chunk-CNZI37HV.js} +3 -3
  49. package/dist/{chunk-4L4R5LV3.js.map → chunk-CNZI37HV.js.map} +1 -1
  50. package/dist/{chunk-F4NJDSR7.js → chunk-D5WTOVLG.js} +7 -4
  51. package/dist/chunk-D5WTOVLG.js.map +1 -0
  52. package/dist/{chunk-XJYBCDY2.js → chunk-DHUJRIQQ.js} +3 -3
  53. package/dist/{chunk-XJYBCDY2.js.map → chunk-DHUJRIQQ.js.map} +1 -1
  54. package/dist/chunk-DWRYUWOK.js +273 -0
  55. package/dist/chunk-DWRYUWOK.js.map +1 -0
  56. package/dist/{chunk-5FYOM4RF.js → chunk-FD2IPIE2.js} +5 -5
  57. package/dist/{chunk-5FYOM4RF.js.map → chunk-FD2IPIE2.js.map} +1 -1
  58. package/dist/{chunk-PYTTF754.js → chunk-GJGEDWRT.js} +4 -4
  59. package/dist/{chunk-PYTTF754.js.map → chunk-GJGEDWRT.js.map} +1 -1
  60. package/dist/{chunk-FHDK3BFD.js → chunk-IPN7N2AZ.js} +3 -3
  61. package/dist/{chunk-FHDK3BFD.js.map → chunk-IPN7N2AZ.js.map} +1 -1
  62. package/dist/{chunk-4DLQESIY.js → chunk-IQVZIVSA.js} +3 -3
  63. package/dist/{chunk-4DLQESIY.js.map → chunk-IQVZIVSA.js.map} +1 -1
  64. package/dist/{chunk-NDUYFYJB.js → chunk-MCLT3BJG.js} +5 -5
  65. package/dist/{chunk-NDUYFYJB.js.map → chunk-MCLT3BJG.js.map} +1 -1
  66. package/dist/{chunk-PZOO7L26.js → chunk-O3Q3MOAV.js} +4 -4
  67. package/dist/{chunk-PZOO7L26.js.map → chunk-O3Q3MOAV.js.map} +1 -1
  68. package/dist/{chunk-DKGEV6SQ.js → chunk-ODQGLELI.js} +4 -4
  69. package/dist/{chunk-DKGEV6SQ.js.map → chunk-ODQGLELI.js.map} +1 -1
  70. package/dist/chunk-OKQXY6FS.js +1336 -0
  71. package/dist/chunk-OKQXY6FS.js.map +1 -0
  72. package/dist/{chunk-BF422IDP.js → chunk-OX2W5YF3.js} +4 -4
  73. package/dist/{chunk-BF422IDP.js.map → chunk-OX2W5YF3.js.map} +1 -1
  74. package/dist/{chunk-HBZD3MIW.js → chunk-PAUM35HD.js} +169 -33
  75. package/dist/chunk-PAUM35HD.js.map +1 -0
  76. package/dist/{chunk-J4DB5G36.js → chunk-PGVSOHWE.js} +2 -2
  77. package/dist/{chunk-J4DB5G36.js.map → chunk-PGVSOHWE.js.map} +1 -1
  78. package/dist/{chunk-ZSMMX3JD.js → chunk-PUG7IWFF.js} +11 -11
  79. package/dist/{chunk-ZSMMX3JD.js.map → chunk-PUG7IWFF.js.map} +1 -1
  80. package/dist/{chunk-2H73V6XR.js → chunk-PW3TYWOI.js} +3 -3
  81. package/dist/{chunk-2H73V6XR.js.map → chunk-PW3TYWOI.js.map} +1 -1
  82. package/dist/{chunk-Y7WKXPWS.js → chunk-QAYL3PYY.js} +8 -8
  83. package/dist/{chunk-Y7WKXPWS.js.map → chunk-QAYL3PYY.js.map} +1 -1
  84. package/dist/{chunk-XBYSURMK.js → chunk-QELQDY5K.js} +3 -3
  85. package/dist/{chunk-XBYSURMK.js.map → chunk-QELQDY5K.js.map} +1 -1
  86. package/dist/{chunk-7SMP4GNW.js → chunk-S6FZUR5H.js} +7 -6
  87. package/dist/chunk-S6FZUR5H.js.map +1 -0
  88. package/dist/{chunk-QO7CR3KB.js → chunk-TYUJPQNX.js} +3 -3
  89. package/dist/{chunk-QO7CR3KB.js.map → chunk-TYUJPQNX.js.map} +1 -1
  90. package/dist/{chunk-5SKVCMRC.js → chunk-UK3LRPJ5.js} +3 -3
  91. package/dist/{chunk-5SKVCMRC.js.map → chunk-UK3LRPJ5.js.map} +1 -1
  92. package/dist/{chunk-R6QHJEHE.js → chunk-UQ4SQOR6.js} +5 -5
  93. package/dist/{chunk-R6QHJEHE.js.map → chunk-UQ4SQOR6.js.map} +1 -1
  94. package/dist/{chunk-V5JHD4I2.js → chunk-V7AWO5FL.js} +2 -2
  95. package/dist/{chunk-V5JHD4I2.js.map → chunk-V7AWO5FL.js.map} +1 -1
  96. package/dist/{chunk-PN44DOGP.js → chunk-VTG5Z3KD.js} +3 -3
  97. package/dist/{chunk-PN44DOGP.js.map → chunk-VTG5Z3KD.js.map} +1 -1
  98. package/dist/{chunk-Y4Z7LGSH.js → chunk-VTXXBYB3.js} +9 -9
  99. package/dist/{chunk-Y4Z7LGSH.js.map → chunk-VTXXBYB3.js.map} +1 -1
  100. package/dist/{chunk-AHCI4V5L.js → chunk-WTEYDNTR.js} +3 -3
  101. package/dist/{chunk-AHCI4V5L.js.map → chunk-WTEYDNTR.js.map} +1 -1
  102. package/dist/{chunk-B7CZYFB2.js → chunk-YFIHFJEB.js} +3 -3
  103. package/dist/{chunk-B7CZYFB2.js.map → chunk-YFIHFJEB.js.map} +1 -1
  104. package/dist/{chunk-VMKMFS2Q.js → chunk-YIDZJHY6.js} +3 -3
  105. package/dist/{chunk-VMKMFS2Q.js.map → chunk-YIDZJHY6.js.map} +1 -1
  106. package/dist/{chunk-HWGYJMME.js → chunk-ZBD6EITA.js} +4 -4
  107. package/dist/{chunk-HWGYJMME.js.map → chunk-ZBD6EITA.js.map} +1 -1
  108. package/dist/{chunk-VLBIME5L.js → chunk-ZDTZGEJG.js} +4 -4
  109. package/dist/{chunk-VLBIME5L.js.map → chunk-ZDTZGEJG.js.map} +1 -1
  110. package/dist/{chunk-X4BAYGMT.js → chunk-ZIW34FGO.js} +3 -3
  111. package/dist/{chunk-X4BAYGMT.js.map → chunk-ZIW34FGO.js.map} +1 -1
  112. package/dist/cli/index.js +86 -67
  113. package/dist/cli/index.js.map +1 -1
  114. package/dist/cli/src/commands/serve.d.ts +7 -0
  115. package/dist/cli/src/commands/serve.d.ts.map +1 -1
  116. package/dist/connectors/config.js +2 -2
  117. package/dist/connectors/index.js +13 -12
  118. package/dist/{connectors-GFKMKAXV.js → connectors-2TEGRRYC.js} +16 -15
  119. package/dist/{connectors-GFKMKAXV.js.map → connectors-2TEGRRYC.js.map} +1 -1
  120. package/dist/connectors-shared/index.js +2 -2
  121. package/dist/core/index.js +3 -3
  122. package/dist/core/runtime-assets.js +2 -2
  123. package/dist/core/src/index.d.ts +1 -1
  124. package/dist/core/src/index.d.ts.map +1 -1
  125. package/dist/core/src/workspace-config.d.ts +16 -0
  126. package/dist/core/src/workspace-config.d.ts.map +1 -1
  127. package/dist/core/workspace-config.js +1 -1
  128. package/dist/deploy/index.js +3 -3
  129. package/dist/{ensure-sources-VUKHL65L.js → ensure-sources-EG7YKKZL.js} +10 -10
  130. package/dist/{ensure-sources-VUKHL65L.js.map → ensure-sources-EG7YKKZL.js.map} +1 -1
  131. package/dist/factory-assets/connectors/box.js +13 -12
  132. package/dist/factory-assets/connectors/deploy.js +13 -12
  133. package/dist/factory-assets/connectors/devserver.js +13 -12
  134. package/dist/factory-assets/connectors/flow/adapter.js +13 -12
  135. package/dist/factory-assets/connectors/flow/engine.js +4 -4
  136. package/dist/factory-assets/connectors/flow/run-flow.js +14 -13
  137. package/dist/factory-assets/connectors/flow.js +13 -12
  138. package/dist/factory-assets/connectors/git.js +13 -12
  139. package/dist/factory-assets/connectors/gmail.js +13 -12
  140. package/dist/factory-assets/connectors/googledrive.js +13 -12
  141. package/dist/factory-assets/connectors/local.js +13 -12
  142. package/dist/factory-assets/connectors/mattermost.js +13 -12
  143. package/dist/factory-assets/connectors/memory.js +13 -12
  144. package/dist/factory-assets/connectors/minio.js +13 -12
  145. package/dist/factory-assets/connectors/postgres.js +13 -12
  146. package/dist/factory-assets/connectors/s3.js +13 -12
  147. package/dist/factory-assets/connectors/sharepoint.js +13 -12
  148. package/dist/factory-assets/connectors/sqlite.js +13 -12
  149. package/dist/factory-assets/connectors/static-server.js +13 -12
  150. package/dist/factory-assets/connectors/tunnel.js +13 -12
  151. package/dist/factory-assets/connectors/webdav.js +13 -12
  152. package/dist/factory-assets/connectors/xstate-store.js +13 -12
  153. package/dist/factory-assets/connectors/xstate.js +13 -12
  154. package/dist/{flows-A4YALSZY.js → flows-5TW3XFMH.js} +6 -6
  155. package/dist/{flows-A4YALSZY.js.map → flows-5TW3XFMH.js.map} +1 -1
  156. package/dist/{helpers-53XZW7KF.js → helpers-BQGXEKRP.js} +10 -10
  157. package/dist/{helpers-53XZW7KF.js.map → helpers-BQGXEKRP.js.map} +1 -1
  158. package/dist/library/index.js +4 -4
  159. package/dist/{library-publish-FFIPWIRM.js → library-publish-EUP524PE.js} +17 -17
  160. package/dist/{library-publish-FFIPWIRM.js.map → library-publish-EUP524PE.js.map} +1 -1
  161. package/dist/model-endpoint/index.d.ts +2 -0
  162. package/dist/model-endpoint/index.js +9 -0
  163. package/dist/model-endpoint/index.js.map +1 -0
  164. package/dist/model-endpoint/src/index.d.ts +4 -0
  165. package/dist/model-endpoint/src/index.d.ts.map +1 -0
  166. package/dist/model-endpoint/src/openai-chat.d.ts +105 -0
  167. package/dist/model-endpoint/src/openai-chat.d.ts.map +1 -0
  168. package/dist/model-endpoint/src/openai-responses.d.ts +106 -0
  169. package/dist/model-endpoint/src/openai-responses.d.ts.map +1 -0
  170. package/dist/model-endpoint/src/openai-shared.d.ts +77 -0
  171. package/dist/model-endpoint/src/openai-shared.d.ts.map +1 -0
  172. package/dist/model-endpoint/src/resolve.d.ts +36 -0
  173. package/dist/model-endpoint/src/resolve.d.ts.map +1 -0
  174. package/dist/model-endpoint/src/server.d.ts +16 -0
  175. package/dist/model-endpoint/src/server.d.ts.map +1 -0
  176. package/dist/model-endpoint/src/types.d.ts +78 -0
  177. package/dist/model-endpoint/src/types.d.ts.map +1 -0
  178. package/dist/{open-library-PZAT3TJA.js → open-library-QNMIMZYS.js} +13 -13
  179. package/dist/{open-library-PZAT3TJA.js.map → open-library-QNMIMZYS.js.map} +1 -1
  180. package/dist/{open-registry-W46UXZ3I.js → open-registry-BOUCBDLF.js} +8 -8
  181. package/dist/{open-registry-W46UXZ3I.js.map → open-registry-BOUCBDLF.js.map} +1 -1
  182. package/dist/{paths-KKY3NSBZ.js → paths-B6SX6J6T.js} +6 -6
  183. package/dist/{paths-KKY3NSBZ.js.map → paths-B6SX6J6T.js.map} +1 -1
  184. package/dist/{plugin-store-CK7YWRIC.js → plugin-store-MLFP3WJ7.js} +5 -5
  185. package/dist/{plugin-store-CK7YWRIC.js.map → plugin-store-MLFP3WJ7.js.map} +1 -1
  186. package/dist/{project-EZUH7PUJ.js → project-GXCIEJGM.js} +30 -27
  187. package/dist/{project-EZUH7PUJ.js.map → project-GXCIEJGM.js.map} +1 -1
  188. package/dist/resolver/index.js +3 -3
  189. package/dist/runner/index.js +22 -19
  190. package/dist/runner/src/model-endpoint-discovery.d.ts +64 -0
  191. package/dist/runner/src/model-endpoint-discovery.d.ts.map +1 -0
  192. package/dist/runner/src/serve.d.ts +6 -0
  193. package/dist/runner/src/serve.d.ts.map +1 -1
  194. package/dist/runner/src/session-builder.d.ts +8 -0
  195. package/dist/runner/src/session-builder.d.ts.map +1 -1
  196. package/dist/sdk/asset-manager.js +7 -7
  197. package/dist/sdk/bridge.js +9 -8
  198. package/dist/sdk/core.js +3 -3
  199. package/dist/sdk/flow.js +4 -4
  200. package/dist/sdk/index.js +22 -19
  201. package/dist/sdk/index.js.map +1 -1
  202. package/dist/sdk/resolver.js +3 -3
  203. package/dist/sdk/runner.js +22 -19
  204. package/dist/sdk/session.js +2 -2
  205. package/dist/sdk/types.js +1 -1
  206. package/dist/{serve-preflight-F7MYF747.js → serve-preflight-GNBW3O4U.js} +5 -5
  207. package/dist/{serve-preflight-F7MYF747.js.map → serve-preflight-GNBW3O4U.js.map} +1 -1
  208. package/dist/session/index.js +2 -2
  209. package/dist/{setup-L632QIHV.js → setup-HJEYEXLS.js} +17 -16
  210. package/dist/setup-HJEYEXLS.js.map +1 -0
  211. package/dist/{skills-OY3Y5GKA.js → skills-4WMYGJDL.js} +5 -5
  212. package/dist/{skills-OY3Y5GKA.js.map → skills-4WMYGJDL.js.map} +1 -1
  213. package/dist/{source-36FHMN5V.js → source-5VL6PHER.js} +15 -15
  214. package/dist/{source-36FHMN5V.js.map → source-5VL6PHER.js.map} +1 -1
  215. package/dist/{source-manifest-publish-NIXJSJ22.js → source-manifest-publish-Q66H7EJI.js} +17 -17
  216. package/dist/{source-manifest-publish-NIXJSJ22.js.map → source-manifest-publish-Q66H7EJI.js.map} +1 -1
  217. package/dist/tui/index.js +22 -19
  218. package/dist/tui/index.js.map +1 -1
  219. package/dist/types/index.js +1 -1
  220. package/dist/types/src/delivery.d.ts.map +1 -1
  221. package/dist/types/src/events.d.ts +55 -1
  222. package/dist/types/src/events.d.ts.map +1 -1
  223. package/dist/types/src/index.d.ts +1 -1
  224. package/dist/types/src/index.d.ts.map +1 -1
  225. package/dist/types/src/version.d.ts +11 -1
  226. package/dist/types/src/version.d.ts.map +1 -1
  227. package/dist/workspace-plugin/adapters/mcp.js +16 -15
  228. package/dist/workspace-plugin/adapters/omp.js +14 -14
  229. package/dist/workspace-plugin/index.js +1 -1
  230. package/package.json +12 -1
  231. package/dist/chunk-6NQDDCIL.js.map +0 -1
  232. package/dist/chunk-7SMP4GNW.js.map +0 -1
  233. package/dist/chunk-BVJU2GKE.js.map +0 -1
  234. package/dist/chunk-F4NJDSR7.js.map +0 -1
  235. package/dist/chunk-HBZD3MIW.js.map +0 -1
  236. package/dist/chunk-L3ZGYSWY.js.map +0 -1
  237. package/dist/setup-L632QIHV.js.map +0 -1
package/dist/cli/index.js CHANGED
@@ -1,27 +1,28 @@
1
1
  #!/usr/bin/env node
2
- import { makeProvidersCommand, loadRegistryView, addProviderEntry, ProviderRegistryWriteError } from '../chunk-R6QHJEHE.js';
3
- import { makeInstallCommand, makeCheckCommand, makeCleanCommand, reportReplaced, reportRelocked, reportMoved, editedConventionFiles, REF_HINT, reportInstalledSoftDeps } from '../chunk-6GICC4RJ.js';
4
- import { createSpinner } from '../chunk-NESV47MF.js';
5
- import { makeSourceCommand, syncProjectSources, divergedSourceClones } from '../chunk-ZSMMX3JD.js';
6
- import { AI_RESOURCES } from '../chunk-HWGYJMME.js';
7
- import { checkAsset, agentComposeRefAdvisories, findAssetManifestFile, declaredVersion, checkAssetFile, duplicateAssetMessage, readAssetBody, checkAgentFiles, invalidSemverText } from '../chunk-PN44DOGP.js';
8
- import { getStoreConfig, storeFetch, isStoreAuthenticated, getStoreToken } from '../chunk-PZOO7L26.js';
9
- import { unresolvedManifestDependencies, warnIgnoredDomainFiles, warnLegacyBundleFiles, removedDomainOption, rejectRemovedDomainOption, deviceLogin, loadStoreAuthConfig, logout, hasStoredAuth, resolveLibraryPublisherDetailed, getStoreIdentity, warnLibraryNameFallback, indexLibrary, requireValidPublisherOrExit, exitOnManifestPublisherProblems, registerLibraryAsset, DOMAIN_REMOVED_HINT, reportLibrarySymlinks, assetEntryRef, manifestPublisherProblems, manifestRequiresProblems, manifestVersionMismatchMessage, exitOnLibrarySymlinks } from '../chunk-FB3NREF7.js';
10
2
  import { storeNotInstallableReason } from '../chunk-U27JRO5L.js';
11
- import { openCatalogSource, LocalCatalogDisabledError, openLibraryManager, openLibrary } from '../chunk-VLBIME5L.js';
12
- import { logErr, S, logOk, logInfo, logWarn, TARGET_DEFAULT_HINT, requireProjectConfig, deferredWarnings, logNoProject, warnLegacyClaudeCopies, kindColorPad, kindColor, colorRef, formatSoftDepSection, bareSoftDepName, formatSoftDepHint, formatRelativeTime, formatSoftDepRemovePreview, formatSoftDepAddPreview, fitWidth, KIND_COL_WIDTH } from '../chunk-PYTTF754.js';
13
- import { getKindRegistry, getKnownKinds } from '../chunk-4NJ3QQHZ.js';
3
+ import { makeProvidersCommand, loadRegistryView, addProviderEntry, ProviderRegistryWriteError } from '../chunk-UQ4SQOR6.js';
4
+ import { makeInstallCommand, makeCheckCommand, makeCleanCommand, reportReplaced, reportRelocked, reportMoved, editedConventionFiles, REF_HINT, reportInstalledSoftDeps } from '../chunk-3NNL334S.js';
5
+ import { createSpinner } from '../chunk-NESV47MF.js';
6
+ import { makeSourceCommand, syncProjectSources, divergedSourceClones } from '../chunk-PUG7IWFF.js';
7
+ import { AI_RESOURCES } from '../chunk-ZBD6EITA.js';
8
+ import { checkAsset, agentComposeRefAdvisories, findAssetManifestFile, declaredVersion, checkAssetFile, duplicateAssetMessage, readAssetBody, checkAgentFiles, invalidSemverText } from '../chunk-VTG5Z3KD.js';
9
+ import { getStoreConfig, storeFetch, isStoreAuthenticated, getStoreToken } from '../chunk-O3Q3MOAV.js';
10
+ import { unresolvedManifestDependencies, warnIgnoredDomainFiles, warnLegacyBundleFiles, removedDomainOption, rejectRemovedDomainOption, deviceLogin, loadStoreAuthConfig, logout, hasStoredAuth, resolveLibraryPublisherDetailed, getStoreIdentity, warnLibraryNameFallback, indexLibrary, requireValidPublisherOrExit, exitOnManifestPublisherProblems, registerLibraryAsset, DOMAIN_REMOVED_HINT, reportLibrarySymlinks, assetEntryRef, manifestPublisherProblems, manifestRequiresProblems, manifestVersionMismatchMessage, exitOnLibrarySymlinks } from '../chunk-BASMWKPM.js';
11
+ import { openCatalogSource, LocalCatalogDisabledError, openLibraryManager, openLibrary } from '../chunk-ZDTZGEJG.js';
12
+ import { logErr, S, logOk, logInfo, logWarn, TARGET_DEFAULT_HINT, requireProjectConfig, deferredWarnings, logNoProject, warnLegacyClaudeCopies, kindColorPad, kindColor, colorRef, formatSoftDepSection, bareSoftDepName, formatSoftDepHint, formatRelativeTime, formatSoftDepRemovePreview, formatSoftDepAddPreview, fitWidth, KIND_COL_WIDTH } from '../chunk-GJGEDWRT.js';
13
+ import { getKindRegistry, getKnownKinds } from '../chunk-5IMGZAKH.js';
14
14
  import { LocalSecretsProvider } from '../chunk-ILFGVSTJ.js';
15
- import { runAgentChat, isCompositionError, loadSessionById, loadSession, listSessions, setCurrentSession, deleteSession, clearSession, loadAgentManifest, hashAgentFiles, createCompositionContentSource, compileComposition, instanceForSession, resolveAgentInstance, describeComposition, MarkdownStreamer, createFinalTextFallback, resolveBinding, UnknownCompositionKindError } from '../chunk-HBZD3MIW.js';
16
- import { buildClaudePluginFiles } from '../chunk-J4DB5G36.js';
17
- import '../chunk-NDUYFYJB.js';
18
- import '../chunk-V5JHD4I2.js';
15
+ import { runAgentChat, isCompositionError, loadSessionById, loadSession, listSessions, setCurrentSession, deleteSession, clearSession, loadAgentManifest, hashAgentFiles, createCompositionContentSource, compileComposition, instanceForSession, resolveAgentInstance, describeComposition, MarkdownStreamer, createFinalTextFallback, resolveBinding, UnknownCompositionKindError } from '../chunk-PAUM35HD.js';
16
+ import { buildClaudePluginFiles } from '../chunk-PGVSOHWE.js';
17
+ import '../chunk-MCLT3BJG.js';
18
+ import '../chunk-DHUJRIQQ.js';
19
+ import '../chunk-V7AWO5FL.js';
19
20
  import '../chunk-R6O6YWU7.js';
20
21
  import '../chunk-6JKIOPT3.js';
21
22
  import '../chunk-2BIESC6S.js';
22
23
  import '../chunk-4ZTPYIBE.js';
23
- import '../chunk-XJYBCDY2.js';
24
24
  import '../chunk-X5YPJV4N.js';
25
+ import '../chunk-OKQXY6FS.js';
25
26
  import '../chunk-O7SG5PC2.js';
26
27
  import '../chunk-7QBNJTTQ.js';
27
28
  import '../chunk-O2SYFJWP.js';
@@ -29,50 +30,52 @@ import '../chunk-OQ5MKDS3.js';
29
30
  import '../chunk-32NA4TVC.js';
30
31
  import '../chunk-W3UDISS2.js';
31
32
  import '../chunk-PHRNUTSG.js';
32
- import { runFlow, resumeFlow } from '../chunk-GMDSRSGI.js';
33
+ import '../chunk-IQVZIVSA.js';
34
+ import { runFlow, resumeFlow } from '../chunk-7LGNJJ76.js';
33
35
  import '../chunk-4R6DROGN.js';
34
36
  import { parseSkillRequirements, validateRequirements, validateFlowVersions } from '../chunk-USHB5KEY.js';
35
37
  import '../chunk-ZU24LWBI.js';
36
38
  import '../chunk-ISHJITXJ.js';
37
- import '../chunk-Y4Z7LGSH.js';
38
- import '../chunk-X4BAYGMT.js';
39
- import '../chunk-5SKVCMRC.js';
40
- import '../chunk-6NQDDCIL.js';
39
+ import '../chunk-VTXXBYB3.js';
40
+ import '../chunk-ZIW34FGO.js';
41
+ import '../chunk-UK3LRPJ5.js';
42
+ import '../chunk-5NVDOEWX.js';
41
43
  import '../chunk-YTZFSKWL.js';
42
44
  import '../chunk-LOO5CB5M.js';
43
- import '../chunk-2H73V6XR.js';
44
- import '../chunk-B7CZYFB2.js';
45
+ import '../chunk-PW3TYWOI.js';
46
+ import '../chunk-YFIHFJEB.js';
45
47
  import '../chunk-B4X2N7JQ.js';
46
48
  import '../chunk-YROR332M.js';
47
- import { listDrivers, getProviderPreset, AI_PROVIDER_PRESETS } from '../chunk-BVJU2GKE.js';
49
+ import '../chunk-DWRYUWOK.js';
50
+ import { listDrivers, getProviderPreset, AI_PROVIDER_PRESETS } from '../chunk-6VIVUBNN.js';
48
51
  import '../chunk-6E6PKKAD.js';
49
52
  import '../chunk-IFGTRL2I.js';
50
- import { projectAiAssetsRoots, loadFlow, loadAllFlowEntries, findFlowFileInRoots } from '../chunk-XBYSURMK.js';
53
+ import { projectAiAssetsRoots, loadFlow, loadAllFlowEntries, findFlowFileInRoots } from '../chunk-QELQDY5K.js';
51
54
  import '../chunk-LNFKL23K.js';
52
55
  import '../chunk-X3RMRJNR.js';
53
56
  import '../chunk-M3WPBTGJ.js';
54
57
  import { nodeLabel, nodeSkillAsset, nodeIsInert, nodeIsOptional, nodeRunKind, flowSkillVersionPins } from '../chunk-7RGTAEG6.js';
55
58
  import '../chunk-NUELZWCF.js';
56
- import '../chunk-F4NJDSR7.js';
57
- import { AssetManager, parseRefTolerant, MissingManifestError, normalizeRepoUrl, FACTORY_SOURCE_URL } from '../chunk-Y7WKXPWS.js';
58
- import { libraryDirMissing, missingLibraryDirMessage, cloneOrInitGitRepo, trackOriginBranch, stampManifestPublisher, isGitRepo, ensureGitRepo, conflictingAssetRoot, setManifestPublisher, LIBRARY_OWNERSHIPS, assertManifestEditable, installLibraryAsset, missingRootAssets, getStoreManifestsDir, assertValidLibraryName, syncManifestWithDisk, getDefaultValue, isSecretPlaceholder } from '../chunk-DKGEV6SQ.js';
59
+ import '../chunk-D5WTOVLG.js';
60
+ import { AssetManager, parseRefTolerant, MissingManifestError, normalizeRepoUrl, FACTORY_SOURCE_URL } from '../chunk-QAYL3PYY.js';
61
+ import { libraryDirMissing, missingLibraryDirMessage, cloneOrInitGitRepo, trackOriginBranch, stampManifestPublisher, isGitRepo, ensureGitRepo, conflictingAssetRoot, setManifestPublisher, LIBRARY_OWNERSHIPS, assertManifestEditable, installLibraryAsset, missingRootAssets, getStoreManifestsDir, assertValidLibraryName, syncManifestWithDisk, getDefaultValue, isSecretPlaceholder } from '../chunk-ODQGLELI.js';
59
62
  import { parseManifestFile, SEMVER_RE } from '../chunk-NVO6WECE.js';
60
63
  import '../chunk-PXDWTJ3P.js';
61
64
  import '../chunk-H5U7LNTJ.js';
62
65
  import '../chunk-3TXEJN4W.js';
63
- import { installTargetOf, SCAFFOLD_KINDS } from '../chunk-5FYOM4RF.js';
66
+ import { installTargetOf, SCAFFOLD_KINDS } from '../chunk-FD2IPIE2.js';
64
67
  import '../chunk-NOA6EJXE.js';
65
68
  import '../chunk-KTBKW2FI.js';
66
69
  import '../chunk-UQ6LFBPZ.js';
67
- import '../chunk-4L4R5LV3.js';
70
+ import '../chunk-CNZI37HV.js';
68
71
  import { effectiveComposes, validatePreset, composeSlotDiagnostics, agentDeprecationDiagnostics, validateAgent, SLOT_ID_PATTERN } from '../chunk-57SF6W6E.js';
69
- import { resolveSettings, globalSettingsPath, projectSettingsPath, loadSettings, saveSettings, WorkspaceYamlEditor, resolveLibraryDir, checkAgentSkillConformance, resolveSettingsWithSources, readLock, globalInstallDir, GLOBAL_INSTALL_DIR_NAME, aiResourceRoots, workspaceProviderRegistryPath, userProviderRegistryPath, loadProviderRegistryFile } from '../chunk-BF422IDP.js';
72
+ import { resolveSettings, globalSettingsPath, projectSettingsPath, loadSettings, saveSettings, WorkspaceYamlEditor, resolveLibraryDir, checkAgentSkillConformance, resolveSettingsWithSources, readLock, globalInstallDir, GLOBAL_INSTALL_DIR_NAME, aiResourceRoots, workspaceProviderRegistryPath, userProviderRegistryPath, loadProviderRegistryFile } from '../chunk-OX2W5YF3.js';
70
73
  import '../chunk-4GY63JU6.js';
71
- import { resolveRuntimeAssets, factoryAssetRoots } from '../chunk-QO7CR3KB.js';
74
+ import { resolveRuntimeAssets, factoryAssetRoots } from '../chunk-TYUJPQNX.js';
72
75
  import { deployedDir } from '../chunk-D54T2F54.js';
73
76
  import { DEFAULT_DRIVER_ID, DRIVER_DEFAULTS } from '../chunk-5BEFNLOR.js';
74
77
  import { findKindDirs } from '../chunk-A2ULN3KX.js';
75
- import { SourceEntryError, resolveSkWorkspaceConfig, sourceCacheKey, getGlobalCacheDir, resolveAgentDir, AgentRefResolutionError, resolveAgentDefinitionDir, decodeSkaileYaml, matchPin, coerceVersion, loadSkWorkspaceConfig, normalizeAgentInstances, agentBlockKeyDiagnostics, agentInstanceDiagnostics, storeManifestSlug, isWorkspaceConfigFilename } from '../chunk-L3ZGYSWY.js';
78
+ import { SourceEntryError, resolveSkWorkspaceConfig, sourceCacheKey, getGlobalCacheDir, resolveAgentDir, AgentRefResolutionError, resolveAgentDefinitionDir, decodeSkaileYaml, matchPin, coerceVersion, loadSkWorkspaceConfig, normalizeAgentInstances, agentBlockKeyDiagnostics, agentInstanceDiagnostics, storeManifestSlug, isWorkspaceConfigFilename } from '../chunk-CAPKENNF.js';
76
79
  import { globalCacheRoot, globalSkaileDir, userConfigPath } from '../chunk-L5VSIPQD.js';
77
80
  import { SUPPORTED_DRIVER_TARGETS, driverTargetForDriver } from '../chunk-IG5LZ3WU.js';
78
81
  import { SKAILE_MANIFEST_FILENAME, loadSkPublishManifest, decodeSkaileManifest, isNonAssetPath, isNonAssetDir, encodeSkaileManifest } from '../chunk-IY5E7Y5W.js';
@@ -226,7 +229,7 @@ async function runSearch(kind, query, opts) {
226
229
  }
227
230
  }
228
231
  async function searchIndex(query, kind) {
229
- const { openLibrary: openLibrary2 } = await import('../open-library-PZAT3TJA.js');
232
+ const { openLibrary: openLibrary2 } = await import('../open-library-QNMIMZYS.js');
230
233
  const library = await openLibrary2();
231
234
  try {
232
235
  const { libraryDirMissing: libraryDirMissing2 } = await import('../library/index.js');
@@ -377,7 +380,7 @@ async function searchLocal(query, kind, opts, showStore, airGapped) {
377
380
  const factory = await searchFactory(projectDir, query, kind);
378
381
  let entries = unionEntries(await searchIndex(query, kind), factory);
379
382
  if (entries.length === 0 && !query && !kind && !airGapped) {
380
- const { autoSyncForSearch } = await import('../source-36FHMN5V.js');
383
+ const { autoSyncForSearch } = await import('../source-5VL6PHER.js');
381
384
  if (await autoSyncForSearch(projectDir)) {
382
385
  entries = unionEntries(await searchIndex(query, kind), factory);
383
386
  }
@@ -491,7 +494,7 @@ async function searchStore(query, kind, opts, airGapped) {
491
494
  logInfo("air-gapped (cache_ttl: 0) \u2014 local sources only");
492
495
  return;
493
496
  }
494
- const { openCatalogSource: openCatalogSource2, LocalCatalogDisabledError: LocalCatalogDisabledError2 } = await import('../open-library-PZAT3TJA.js');
497
+ const { openCatalogSource: openCatalogSource2, LocalCatalogDisabledError: LocalCatalogDisabledError2 } = await import('../open-library-QNMIMZYS.js');
495
498
  try {
496
499
  const remote = await openCatalogSource2({ projectDir: path22__default.resolve(opts.projectDir) });
497
500
  const assets = await remote.listAssets(kind ? { kind } : {});
@@ -928,7 +931,7 @@ async function resolveInfoEntry(am2, ref, opts) {
928
931
  return { entry: match ?? deployed };
929
932
  }
930
933
  const lookup = opts.storeLookup ?? (async (filter) => {
931
- const { resolveCatalogSource } = await import('../open-library-PZAT3TJA.js');
934
+ const { resolveCatalogSource } = await import('../open-library-QNMIMZYS.js');
932
935
  const { source, close } = await resolveCatalogSource({ projectDir: opts.projectDir });
933
936
  try {
934
937
  return await source.listAssets(filter);
@@ -944,7 +947,7 @@ async function resolveInfoEntry(am2, ref, opts) {
944
947
  );
945
948
  return { entry: hit ? catalogAssetToEntry(hit) : null };
946
949
  } catch (err2) {
947
- const { LocalCatalogDisabledError: LocalCatalogDisabledError2 } = await import('../open-library-PZAT3TJA.js');
950
+ const { LocalCatalogDisabledError: LocalCatalogDisabledError2 } = await import('../open-library-QNMIMZYS.js');
948
951
  const storeNote = err2 instanceof Error ? err2.message : String(err2);
949
952
  const disabled = err2 instanceof LocalCatalogDisabledError2 || /catalog\.url/i.test(storeNote);
950
953
  return { entry: null, storeNote, ...disabled ? { storeDisabled: true } : {} };
@@ -1606,7 +1609,7 @@ function makeCatalogCommand() {
1606
1609
  return catalog;
1607
1610
  }
1608
1611
  async function runLocalCatalogTest(projectDir) {
1609
- const { resolveCatalogSource } = await import('../open-library-PZAT3TJA.js');
1612
+ const { resolveCatalogSource } = await import('../open-library-QNMIMZYS.js');
1610
1613
  let resolved;
1611
1614
  try {
1612
1615
  resolved = await resolveCatalogSource({ projectDir });
@@ -1776,7 +1779,7 @@ async function scanLibraryFlowEntries() {
1776
1779
  const { LocalIndex, resolveIndexPath, scanAuthoringLibraries } = await import('../library/index.js');
1777
1780
  const indexPath = resolveIndexPath();
1778
1781
  if (!existsSync(indexPath)) return entries;
1779
- const { getKindRegistry: getKindRegistry2 } = await import('../open-registry-W46UXZ3I.js');
1782
+ const { getKindRegistry: getKindRegistry2 } = await import('../open-registry-BOUCBDLF.js');
1780
1783
  const index = new LocalIndex({ indexPath });
1781
1784
  try {
1782
1785
  for (const { assets } of await scanAuthoringLibraries(index, getKindRegistry2())) {
@@ -2780,7 +2783,7 @@ async function ensureTargetsRegistered(projectDir) {
2780
2783
  const { resolveSkWorkspaceConfig: resolveSkWorkspaceConfig2 } = await import('../core/index.js');
2781
2784
  const config = resolveSkWorkspaceConfig2(projectDir);
2782
2785
  if (config.plugins && config.plugins.length > 0) {
2783
- const { ensurePluginsLoaded } = await import('../plugin-store-CK7YWRIC.js');
2786
+ const { ensurePluginsLoaded } = await import('../plugin-store-MLFP3WJ7.js');
2784
2787
  const result = await ensurePluginsLoaded(projectDir, config.plugins, pluginRegistry);
2785
2788
  for (const f of result.failed) logWarn(f.error);
2786
2789
  }
@@ -4062,7 +4065,7 @@ function remoteBranches(url) {
4062
4065
  return r.stdout.split("\n").map((line) => line.split(" ")[1]?.replace(/^refs\/heads\//, "")).filter((b) => !!b);
4063
4066
  }
4064
4067
  async function warnIfNotGithubRemote(name, url) {
4065
- const { isGithubRemote, notGithubRemoteMessage } = await import('../library-publish-FFIPWIRM.js');
4068
+ const { isGithubRemote, notGithubRemoteMessage } = await import('../library-publish-EUP524PE.js');
4066
4069
  if (!isGithubRemote(url)) logWarn(notGithubRemoteMessage(name, url));
4067
4070
  }
4068
4071
  function scaffoldLibraryFiles(dir, name) {
@@ -4726,16 +4729,16 @@ function makeLibraryCommand() {
4726
4729
  "With --create-repo: create the repo private (the store only accepts public repos)"
4727
4730
  ).option("--ref <gitref>", "Git ref to ingest (default: the library branch or main)").option("--dry-run", "Print the plan; push nothing and call no store endpoint").action(
4728
4731
  async (lib, opts) => {
4729
- const { runLibraryPublish } = await import('../library-publish-FFIPWIRM.js');
4732
+ const { runLibraryPublish } = await import('../library-publish-EUP524PE.js');
4730
4733
  await withStoreErrorHandling(() => runLibraryPublish(lib, opts));
4731
4734
  }
4732
4735
  );
4733
4736
  cmd.command("register <lib>").description("Register the library's manifest without pushing (bytes already on github)").option("--asset <ref>", "Publish only the single asset matching this ref/name").option("--ref <gitref>", "Git ref to ingest (default: the library branch or main)").option("--dry-run", "Print the plan; call no store endpoint").action(async (lib, opts) => {
4734
- const { runLibraryRegister } = await import('../library-publish-FFIPWIRM.js');
4737
+ const { runLibraryRegister } = await import('../library-publish-EUP524PE.js');
4735
4738
  await withStoreErrorHandling(() => runLibraryRegister(lib, opts));
4736
4739
  });
4737
4740
  cmd.command("yank <lib>").description("Retract the library's published assets from the store").option("--asset <ref>", "Yank only the single asset matching this ref/name").action(async (lib, opts) => {
4738
- const { runLibraryYank } = await import('../library-publish-FFIPWIRM.js');
4741
+ const { runLibraryYank } = await import('../library-publish-EUP524PE.js');
4739
4742
  await withStoreErrorHandling(() => runLibraryYank(lib, opts));
4740
4743
  });
4741
4744
  return cmd;
@@ -5395,7 +5398,7 @@ function scheduleSoftDepPreview() {
5395
5398
  }
5396
5399
  async function loadAssets() {
5397
5400
  softDepPreviewCache.clear();
5398
- const { gatherAssetFeeds } = await import('../asset-feeds-ALMTHLPV.js');
5401
+ const { gatherAssetFeeds } = await import('../asset-feeds-PAOX3FUT.js');
5399
5402
  const { entries, notes } = await gatherAssetFeeds(am, am.projectDir);
5400
5403
  if (notes.length > 0) {
5401
5404
  state.message = notes.map((n) => `[${n.feed}] ${n.message}`).join(" \u2022 ");
@@ -5599,7 +5602,7 @@ function reconcileCollapsedSets(rows) {
5599
5602
  async function loadSourcesAndLibraries() {
5600
5603
  try {
5601
5604
  const [{ openLibraryManager: openLibraryManager2 }, { getGlobalCacheDir: getGlobalCacheDir2, globalSkaileDir: globalSkaileDir2 }] = await Promise.all([
5602
- import('../open-library-PZAT3TJA.js'),
5605
+ import('../open-library-QNMIMZYS.js'),
5603
5606
  import('../core/index.js')
5604
5607
  ]);
5605
5608
  const { manager, library, close } = await openLibraryManager2();
@@ -9419,7 +9422,7 @@ function action2(fn) {
9419
9422
  };
9420
9423
  }
9421
9424
  async function reconcileAndReport(projectDir, plugins, opts = {}) {
9422
- const { reconcilePlugins } = await import('../plugin-store-CK7YWRIC.js');
9425
+ const { reconcilePlugins } = await import('../plugin-store-MLFP3WJ7.js');
9423
9426
  if (plugins.length === 0) {
9424
9427
  logInfo("No plugins declared \u2014 nothing to reconcile.");
9425
9428
  return;
@@ -9434,7 +9437,7 @@ async function reconcileAndReport(projectDir, plugins, opts = {}) {
9434
9437
  }
9435
9438
  }
9436
9439
  async function verifyPluginLoads(projectDir, spec) {
9437
- const { loadPlugins } = await import('../plugin-store-CK7YWRIC.js');
9440
+ const { loadPlugins } = await import('../plugin-store-MLFP3WJ7.js');
9438
9441
  const { createPluginRegistry } = await import('../plugin-registry/index.js');
9439
9442
  const registry = createPluginRegistry();
9440
9443
  const result = await loadPlugins(projectDir, [spec], registry);
@@ -9448,7 +9451,7 @@ async function verifyPluginLoads(projectDir, spec) {
9448
9451
  async function runInstall2(spec, opts) {
9449
9452
  const projectDir = path22__default.resolve(opts.projectDir);
9450
9453
  const { WorkspaceYamlEditor: WorkspaceYamlEditor2 } = await import('../core/index.js');
9451
- const { specName, rollbackPluginStore } = await import('../plugin-store-CK7YWRIC.js');
9454
+ const { specName, rollbackPluginStore } = await import('../plugin-store-MLFP3WJ7.js');
9452
9455
  const yamlPath = path22__default.join(projectDir, "skaile.yaml");
9453
9456
  const original = existsSync(yamlPath) ? readFileSync(yamlPath, "utf8") : void 0;
9454
9457
  const editor = WorkspaceYamlEditor2.load(yamlPath);
@@ -9475,7 +9478,7 @@ async function runInstall2(spec, opts) {
9475
9478
  async function runRemove(name, opts) {
9476
9479
  const projectDir = path22__default.resolve(opts.projectDir);
9477
9480
  const { WorkspaceYamlEditor: WorkspaceYamlEditor2 } = await import('../core/index.js');
9478
- const { specName } = await import('../plugin-store-CK7YWRIC.js');
9481
+ const { specName } = await import('../plugin-store-MLFP3WJ7.js');
9479
9482
  const yamlPath = path22__default.join(projectDir, "skaile.yaml");
9480
9483
  const editor = WorkspaceYamlEditor2.load(yamlPath);
9481
9484
  const removed = editor.removePlugin(name, specName);
@@ -9503,7 +9506,7 @@ async function runList(opts) {
9503
9506
  const registry = createPluginRegistry();
9504
9507
  if (declared.length > 0) {
9505
9508
  try {
9506
- const { loadPlugins } = await import('../plugin-store-CK7YWRIC.js');
9509
+ const { loadPlugins } = await import('../plugin-store-MLFP3WJ7.js');
9507
9510
  const result = await loadPlugins(projectDir, declared, registry);
9508
9511
  for (const f of result.failed) logWarn(f.error);
9509
9512
  } catch (err2) {
@@ -10782,6 +10785,15 @@ function makeReplCommand() {
10782
10785
  function parseProviderIds(raw) {
10783
10786
  return (raw ?? "").split(",").map((id) => id.trim()).filter((id) => id.length > 0);
10784
10787
  }
10788
+ function parseModelEndpointFlag(raw) {
10789
+ if (raw === void 0) return void 0;
10790
+ if (raw === true) return { enabled: true };
10791
+ const port = Number(raw);
10792
+ if (raw === false || !/^\d+$/.test(raw) || port > 65535) {
10793
+ throw new Error(`--model-endpoint: invalid port '${String(raw)}'`);
10794
+ }
10795
+ return { enabled: true, port };
10796
+ }
10785
10797
  function makeServeCommand() {
10786
10798
  return new Command("serve").description("Start a WebSocket agent server (for platform integration)").option("--port <port>", "WebSocket server port", "8080").option(
10787
10799
  "--host <address>",
@@ -10792,6 +10804,9 @@ function makeServeCommand() {
10792
10804
  ).option("--driver <name>", "Override driver").option("--model <name>", "Override model").option("--provider <name>", "Override provider").option("--session-id <id>", "Session ID for conversation continuity").option("--resume-session-id <id>", "OMP session ID to resume (restores native OMP context)").option(
10793
10805
  "--providers <ids>",
10794
10806
  "Restrict the AI provider registry to these entry ids (comma-separated)"
10807
+ ).option(
10808
+ "--model-endpoint [port]",
10809
+ "Serve an OpenAI-compatible model endpoint on loopback for apps next to the session (optional port; default from skaile.yaml model_endpoint.port, else ephemeral)"
10795
10810
  ).option("--compile-test", "Build a compiled binary and run it (simulates Docker environment)").option(
10796
10811
  "--with-codex",
10797
10812
  "Include the Codex harness in the compiled binary (used with --compile-test)"
@@ -10814,10 +10829,11 @@ function makeServeCommand() {
10814
10829
  await ensurePluginsLoadedForServe(opts.projectDir);
10815
10830
  }
10816
10831
  const providers = parseProviderIds(opts.providers);
10817
- const { checkDriverSdk } = await import('../serve-preflight-F7MYF747.js');
10832
+ const modelEndpoint = parseModelEndpointFlag(opts.modelEndpoint);
10833
+ const { checkDriverSdk } = await import('../serve-preflight-GNBW3O4U.js');
10818
10834
  const driverProblem = managedCodex ? null : await checkDriverSdk(opts.projectDir, opts.driver);
10819
10835
  if (driverProblem) {
10820
- const { logErr: logErr2 } = await import('../helpers-53XZW7KF.js');
10836
+ const { logErr: logErr2 } = await import('../helpers-BQGXEKRP.js');
10821
10837
  logErr2(driverProblem);
10822
10838
  process.exitCode = 1;
10823
10839
  return;
@@ -10838,11 +10854,12 @@ function makeServeCommand() {
10838
10854
  provider: opts.provider,
10839
10855
  sessionId: opts.sessionId,
10840
10856
  resumeSessionId: opts.resumeSessionId,
10841
- ...providers.length > 0 ? { providers } : {}
10857
+ ...providers.length > 0 ? { providers } : {},
10858
+ ...modelEndpoint ? { modelEndpoint } : {}
10842
10859
  });
10843
10860
  } catch (err2) {
10844
10861
  if (err2?.code !== "EADDRINUSE") throw err2;
10845
- const { logErr: logErr2 } = await import('../helpers-53XZW7KF.js');
10862
+ const { logErr: logErr2 } = await import('../helpers-BQGXEKRP.js');
10846
10863
  logErr2(err2.message);
10847
10864
  process.exit(1);
10848
10865
  }
@@ -10850,12 +10867,12 @@ function makeServeCommand() {
10850
10867
  );
10851
10868
  }
10852
10869
  async function ensurePluginsLoadedForServe(projectDir) {
10853
- const { logInfo: logInfo2, logWarn: logWarn2 } = await import('../helpers-53XZW7KF.js');
10870
+ const { logInfo: logInfo2, logWarn: logWarn2 } = await import('../helpers-BQGXEKRP.js');
10854
10871
  try {
10855
10872
  const { resolveSkWorkspaceConfig: resolveSkWorkspaceConfig2 } = await import('../core/index.js');
10856
10873
  const config = resolveSkWorkspaceConfig2(projectDir);
10857
10874
  if (!config.plugins || config.plugins.length === 0) return;
10858
- const { ensurePluginsLoaded } = await import('../plugin-store-CK7YWRIC.js');
10875
+ const { ensurePluginsLoaded } = await import('../plugin-store-MLFP3WJ7.js');
10859
10876
  const { pluginRegistry } = await import('../plugin-registry/index.js');
10860
10877
  const result = await ensurePluginsLoaded(projectDir, config.plugins, pluginRegistry);
10861
10878
  if (result.loaded.length > 0) {
@@ -10869,14 +10886,14 @@ async function ensurePluginsLoadedForServe(projectDir) {
10869
10886
  }
10870
10887
  }
10871
10888
  async function runCompileTest(opts) {
10872
- const { logOk: logOk2, logErr: logErr2, logInfo: logInfo2, S: S2 } = await import('../helpers-53XZW7KF.js');
10889
+ const { logOk: logOk2, logErr: logErr2, logInfo: logInfo2, S: S2 } = await import('../helpers-BQGXEKRP.js');
10873
10890
  const { tmpdir } = await import('os');
10874
10891
  const { dirname: dirname3, join: join7, resolve: resolve5 } = await import('path');
10875
10892
  const { fileURLToPath: fileURLToPath2 } = await import('url');
10876
10893
  const { unlinkSync, existsSync: existsSync21 } = await import('fs');
10877
10894
  const { spawn } = await import('child_process');
10878
10895
  const { portableSpawnSync: portableSpawnSync2 } = await import('../core/index.js');
10879
- const { MONOREPO_ROOT } = await import('../paths-KKY3NSBZ.js');
10896
+ const { MONOREPO_ROOT } = await import('../paths-B6SX6J6T.js');
10880
10897
  if (MONOREPO_ROOT === null) {
10881
10898
  logErr2("--compile-test is only available inside the skaile-dev workspace.");
10882
10899
  logInfo2("Run it from a checkout of skaile-ai/skaile-dev (the monorepo shell).");
@@ -11790,8 +11807,8 @@ function makeStoreCommand() {
11790
11807
  "--all",
11791
11808
  `List every match (default: ${STORE_ROW_LIMIT} rows, only what \`skaile add\` can install)`
11792
11809
  ).option("-C, --project-dir <dir>", "Project directory (catalog config overlay)", process.cwd()).action(async (query, opts) => {
11793
- const { openCatalogSource: openCatalogSource2, LocalCatalogDisabledError: LocalCatalogDisabledError2 } = await import('../open-library-PZAT3TJA.js');
11794
- const { getKnownKinds: getKnownKinds2 } = await import('../open-registry-W46UXZ3I.js');
11810
+ const { openCatalogSource: openCatalogSource2, LocalCatalogDisabledError: LocalCatalogDisabledError2 } = await import('../open-library-QNMIMZYS.js');
11811
+ const { getKnownKinds: getKnownKinds2 } = await import('../open-registry-BOUCBDLF.js');
11795
11812
  const projectDir = path22__default.resolve(opts.projectDir);
11796
11813
  if (opts.kind && !getKnownKinds2().has(opts.kind)) {
11797
11814
  logErr(
@@ -11849,8 +11866,8 @@ function makeStoreCommand() {
11849
11866
  }
11850
11867
  });
11851
11868
  store.command("show <ref>").description("Show a store asset's details + provenance (source, files, integrity)").option("-C, --project-dir <dir>", "Project directory (catalog config overlay)", process.cwd()).action(async (ref, opts) => {
11852
- const { openCatalogSource: openCatalogSource2, LocalCatalogDisabledError: LocalCatalogDisabledError2 } = await import('../open-library-PZAT3TJA.js');
11853
- const { supportsInstallManifest } = await import('../project-EZUH7PUJ.js');
11869
+ const { openCatalogSource: openCatalogSource2, LocalCatalogDisabledError: LocalCatalogDisabledError2 } = await import('../open-library-QNMIMZYS.js');
11870
+ const { supportsInstallManifest } = await import('../project-GXCIEJGM.js');
11854
11871
  try {
11855
11872
  parseAssetRef(ref);
11856
11873
  } catch (e) {
@@ -12605,11 +12622,13 @@ async function initGitScaffold(resolved, created) {
12605
12622
  // skaile-created artifacts that must never be committed: the per-session log
12606
12623
  // DB (SQLite incl. -shm/-wal, ends in .db — not caught by *.log), personal
12607
12624
  // settings (holds API keys), the workspace AI provider registry (endpoints
12608
- // and credential references are per-machine), and the install history.
12625
+ // and credential references are per-machine), the install history, and the
12626
+ // per-run model-endpoint discovery file (holds a bearer token).
12609
12627
  ".skaile/logs.db*",
12610
12628
  ".skaile/settings.json",
12611
12629
  ".skaile/providers.yml",
12612
12630
  ".skaile/history.yaml",
12631
+ ".skaile/model-endpoint.json",
12613
12632
  // Per-machine files a run writes into the project: the system prompt handed to the harness
12614
12633
  // (it carries the host path) and omp's session logs.
12615
12634
  ".codex/skaile-session-instructions.md",
@@ -12662,7 +12681,7 @@ async function bootstrapUserConfig() {
12662
12681
  }
12663
12682
  async function hydrateInitSources(resolved, created) {
12664
12683
  try {
12665
- const { ensureSourcesCloned } = await import('../ensure-sources-VUKHL65L.js');
12684
+ const { ensureSourcesCloned } = await import('../ensure-sources-EG7YKKZL.js');
12666
12685
  const hydrate = ensureSourcesCloned(resolved, { quiet: true });
12667
12686
  for (const n of hydrate.cloned) created.push(`~/.skaile/cache/sources/${n}/`);
12668
12687
  if (hydrate.failed.length > 0) {
@@ -12702,7 +12721,7 @@ function printInitSummary(resolved, projectDir, created) {
12702
12721
  console.log();
12703
12722
  }
12704
12723
  program.command("setup").description("Interactive provider setup wizard").action(async () => {
12705
- const { cmdSetup } = await import('../setup-L632QIHV.js');
12724
+ const { cmdSetup } = await import('../setup-HJEYEXLS.js');
12706
12725
  await cmdSetup([], { projectDir: process.cwd() });
12707
12726
  });
12708
12727
  program.addCommand(makeInstallCommand());