@skaile/workspaces 0.8.5

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 (1058) hide show
  1. package/CHANGELOG.md +135 -0
  2. package/LICENSE +201 -0
  3. package/README.md +82 -0
  4. package/dist/asset-manager/catalog-deployer.js +4 -0
  5. package/dist/asset-manager/catalog-deployer.js.map +1 -0
  6. package/dist/asset-manager/contrib.js +4 -0
  7. package/dist/asset-manager/contrib.js.map +1 -0
  8. package/dist/asset-manager/fragments.js +4 -0
  9. package/dist/asset-manager/fragments.js.map +1 -0
  10. package/dist/asset-manager/history.js +4 -0
  11. package/dist/asset-manager/history.js.map +1 -0
  12. package/dist/asset-manager/index.js +22 -0
  13. package/dist/asset-manager/index.js.map +1 -0
  14. package/dist/asset-manager/installer.js +18 -0
  15. package/dist/asset-manager/installer.js.map +1 -0
  16. package/dist/asset-manager/renderers.js +5 -0
  17. package/dist/asset-manager/renderers.js.map +1 -0
  18. package/dist/asset-manager/scaffold.js +18 -0
  19. package/dist/asset-manager/scaffold.js.map +1 -0
  20. package/dist/asset-manager/src/catalog-deployer.d.ts +144 -0
  21. package/dist/asset-manager/src/catalog-deployer.d.ts.map +1 -0
  22. package/dist/asset-manager/src/contrib.d.ts +133 -0
  23. package/dist/asset-manager/src/contrib.d.ts.map +1 -0
  24. package/dist/asset-manager/src/fragments.d.ts +111 -0
  25. package/dist/asset-manager/src/fragments.d.ts.map +1 -0
  26. package/dist/asset-manager/src/history.d.ts +52 -0
  27. package/dist/asset-manager/src/history.d.ts.map +1 -0
  28. package/dist/asset-manager/src/index.d.ts +459 -0
  29. package/dist/asset-manager/src/index.d.ts.map +1 -0
  30. package/dist/asset-manager/src/installer.d.ts +85 -0
  31. package/dist/asset-manager/src/installer.d.ts.map +1 -0
  32. package/dist/asset-manager/src/renderers.d.ts +125 -0
  33. package/dist/asset-manager/src/renderers.d.ts.map +1 -0
  34. package/dist/asset-manager/src/scaffold/index.d.ts +19 -0
  35. package/dist/asset-manager/src/scaffold/index.d.ts.map +1 -0
  36. package/dist/asset-manager/src/scaffold/layers/agents.d.ts +67 -0
  37. package/dist/asset-manager/src/scaffold/layers/agents.d.ts.map +1 -0
  38. package/dist/asset-manager/src/scaffold/layers/base.d.ts +17 -0
  39. package/dist/asset-manager/src/scaffold/layers/base.d.ts.map +1 -0
  40. package/dist/asset-manager/src/scaffold/layers/connectors.d.ts +18 -0
  41. package/dist/asset-manager/src/scaffold/layers/connectors.d.ts.map +1 -0
  42. package/dist/asset-manager/src/scaffold/layers/container.d.ts +16 -0
  43. package/dist/asset-manager/src/scaffold/layers/container.d.ts.map +1 -0
  44. package/dist/asset-manager/src/scaffold/layers/driver-target.d.ts +17 -0
  45. package/dist/asset-manager/src/scaffold/layers/driver-target.d.ts.map +1 -0
  46. package/dist/asset-manager/src/scaffold/layers/hooks.d.ts +22 -0
  47. package/dist/asset-manager/src/scaffold/layers/hooks.d.ts.map +1 -0
  48. package/dist/asset-manager/src/scaffold/layers/skills.d.ts +31 -0
  49. package/dist/asset-manager/src/scaffold/layers/skills.d.ts.map +1 -0
  50. package/dist/asset-manager/src/scaffold/layers/template.d.ts +16 -0
  51. package/dist/asset-manager/src/scaffold/layers/template.d.ts.map +1 -0
  52. package/dist/asset-manager/src/scaffold/scaffolder.d.ts +77 -0
  53. package/dist/asset-manager/src/scaffold/scaffolder.d.ts.map +1 -0
  54. package/dist/asset-manager/src/scaffold/types.d.ts +241 -0
  55. package/dist/asset-manager/src/scaffold/types.d.ts.map +1 -0
  56. package/dist/base-assets/connectors/deploy/adapter.d.ts +37 -0
  57. package/dist/base-assets/connectors/deploy/adapter.d.ts.map +1 -0
  58. package/dist/base-assets/connectors/deploy.js +20 -0
  59. package/dist/base-assets/connectors/deploy.js.map +1 -0
  60. package/dist/base-assets/connectors/devserver/adapter.d.ts +43 -0
  61. package/dist/base-assets/connectors/devserver/adapter.d.ts.map +1 -0
  62. package/dist/base-assets/connectors/devserver.js +20 -0
  63. package/dist/base-assets/connectors/devserver.js.map +1 -0
  64. package/dist/base-assets/connectors/flow/adapter.d.ts +200 -0
  65. package/dist/base-assets/connectors/flow/adapter.d.ts.map +1 -0
  66. package/dist/base-assets/connectors/flow/adapter.js +20 -0
  67. package/dist/base-assets/connectors/flow/adapter.js.map +1 -0
  68. package/dist/base-assets/connectors/flow/engine/engine.d.ts +107 -0
  69. package/dist/base-assets/connectors/flow/engine/engine.d.ts.map +1 -0
  70. package/dist/base-assets/connectors/flow/engine/flow-kind-provider.d.ts +16 -0
  71. package/dist/base-assets/connectors/flow/engine/flow-kind-provider.d.ts.map +1 -0
  72. package/dist/base-assets/connectors/flow/engine/flow-manifest.d.ts +215 -0
  73. package/dist/base-assets/connectors/flow/engine/flow-manifest.d.ts.map +1 -0
  74. package/dist/base-assets/connectors/flow/engine/index.d.ts +7 -0
  75. package/dist/base-assets/connectors/flow/engine/index.d.ts.map +1 -0
  76. package/dist/base-assets/connectors/flow/engine/loader.d.ts +43 -0
  77. package/dist/base-assets/connectors/flow/engine/loader.d.ts.map +1 -0
  78. package/dist/base-assets/connectors/flow/engine/types.d.ts +298 -0
  79. package/dist/base-assets/connectors/flow/engine/types.d.ts.map +1 -0
  80. package/dist/base-assets/connectors/flow/engine.js +4 -0
  81. package/dist/base-assets/connectors/flow/engine.js.map +1 -0
  82. package/dist/base-assets/connectors/flow/index.d.ts +3 -0
  83. package/dist/base-assets/connectors/flow/index.d.ts.map +1 -0
  84. package/dist/base-assets/connectors/flow/prompt-fragments.d.ts +90 -0
  85. package/dist/base-assets/connectors/flow/prompt-fragments.d.ts.map +1 -0
  86. package/dist/base-assets/connectors/flow/prompt-fragments.js +4 -0
  87. package/dist/base-assets/connectors/flow/prompt-fragments.js.map +1 -0
  88. package/dist/base-assets/connectors/flow/run-flow.d.ts +159 -0
  89. package/dist/base-assets/connectors/flow/run-flow.d.ts.map +1 -0
  90. package/dist/base-assets/connectors/flow/run-flow.js +23 -0
  91. package/dist/base-assets/connectors/flow/run-flow.js.map +1 -0
  92. package/dist/base-assets/connectors/flow/stimulus-driver.d.ts +42 -0
  93. package/dist/base-assets/connectors/flow/stimulus-driver.d.ts.map +1 -0
  94. package/dist/base-assets/connectors/flow/stimulus-driver.js +4 -0
  95. package/dist/base-assets/connectors/flow/stimulus-driver.js.map +1 -0
  96. package/dist/base-assets/connectors/flow.js +20 -0
  97. package/dist/base-assets/connectors/flow.js.map +1 -0
  98. package/dist/base-assets/connectors/gmail/adapter.d.ts +31 -0
  99. package/dist/base-assets/connectors/gmail/adapter.d.ts.map +1 -0
  100. package/dist/base-assets/connectors/gmail.js +20 -0
  101. package/dist/base-assets/connectors/gmail.js.map +1 -0
  102. package/dist/base-assets/connectors/mattermost/adapter.d.ts +38 -0
  103. package/dist/base-assets/connectors/mattermost/adapter.d.ts.map +1 -0
  104. package/dist/base-assets/connectors/mattermost.js +20 -0
  105. package/dist/base-assets/connectors/mattermost.js.map +1 -0
  106. package/dist/base-assets/connectors/memory/adapter.d.ts +32 -0
  107. package/dist/base-assets/connectors/memory/adapter.d.ts.map +1 -0
  108. package/dist/base-assets/connectors/memory.js +20 -0
  109. package/dist/base-assets/connectors/memory.js.map +1 -0
  110. package/dist/base-assets/connectors/minio/adapter.d.ts +32 -0
  111. package/dist/base-assets/connectors/minio/adapter.d.ts.map +1 -0
  112. package/dist/base-assets/connectors/minio.js +20 -0
  113. package/dist/base-assets/connectors/minio.js.map +1 -0
  114. package/dist/base-assets/connectors/postgres/adapter.d.ts +40 -0
  115. package/dist/base-assets/connectors/postgres/adapter.d.ts.map +1 -0
  116. package/dist/base-assets/connectors/postgres.js +20 -0
  117. package/dist/base-assets/connectors/postgres.js.map +1 -0
  118. package/dist/base-assets/connectors/redis/adapter.d.ts +39 -0
  119. package/dist/base-assets/connectors/redis/adapter.d.ts.map +1 -0
  120. package/dist/base-assets/connectors/redis.js +20 -0
  121. package/dist/base-assets/connectors/redis.js.map +1 -0
  122. package/dist/base-assets/connectors/sqlite/adapter.d.ts +42 -0
  123. package/dist/base-assets/connectors/sqlite/adapter.d.ts.map +1 -0
  124. package/dist/base-assets/connectors/sqlite.js +20 -0
  125. package/dist/base-assets/connectors/sqlite.js.map +1 -0
  126. package/dist/base-assets/connectors/static-server/adapter.d.ts +28 -0
  127. package/dist/base-assets/connectors/static-server/adapter.d.ts.map +1 -0
  128. package/dist/base-assets/connectors/static-server.js +20 -0
  129. package/dist/base-assets/connectors/static-server.js.map +1 -0
  130. package/dist/base-assets/connectors/tunnel/adapter.d.ts +28 -0
  131. package/dist/base-assets/connectors/tunnel/adapter.d.ts.map +1 -0
  132. package/dist/base-assets/connectors/tunnel.js +20 -0
  133. package/dist/base-assets/connectors/tunnel.js.map +1 -0
  134. package/dist/base-assets/connectors/xstate/adapter.d.ts +51 -0
  135. package/dist/base-assets/connectors/xstate/adapter.d.ts.map +1 -0
  136. package/dist/base-assets/connectors/xstate-store/adapter.d.ts +40 -0
  137. package/dist/base-assets/connectors/xstate-store/adapter.d.ts.map +1 -0
  138. package/dist/base-assets/connectors/xstate-store.js +20 -0
  139. package/dist/base-assets/connectors/xstate-store.js.map +1 -0
  140. package/dist/base-assets/connectors/xstate.js +20 -0
  141. package/dist/base-assets/connectors/xstate.js.map +1 -0
  142. package/dist/base-assets/connectors/yjs/adapter.d.ts +49 -0
  143. package/dist/base-assets/connectors/yjs/adapter.d.ts.map +1 -0
  144. package/dist/base-assets/connectors/yjs.js +20 -0
  145. package/dist/base-assets/connectors/yjs.js.map +1 -0
  146. package/dist/base-assets/index.d.ts +8 -0
  147. package/dist/base-assets/index.d.ts.map +1 -0
  148. package/dist/base-assets/index.js +9 -0
  149. package/dist/base-assets/index.js.map +1 -0
  150. package/dist/base-assets/mounts/git/driver.d.ts +183 -0
  151. package/dist/base-assets/mounts/git/driver.d.ts.map +1 -0
  152. package/dist/base-assets/mounts/git.js +20 -0
  153. package/dist/base-assets/mounts/git.js.map +1 -0
  154. package/dist/base-assets/mounts/local/driver.d.ts +27 -0
  155. package/dist/base-assets/mounts/local/driver.d.ts.map +1 -0
  156. package/dist/base-assets/mounts/local.js +20 -0
  157. package/dist/base-assets/mounts/local.js.map +1 -0
  158. package/dist/base-assets/mounts/s3/driver.d.ts +27 -0
  159. package/dist/base-assets/mounts/s3/driver.d.ts.map +1 -0
  160. package/dist/base-assets/mounts/s3.js +20 -0
  161. package/dist/base-assets/mounts/s3.js.map +1 -0
  162. package/dist/base-assets/mounts/sharepoint/driver.d.ts +31 -0
  163. package/dist/base-assets/mounts/sharepoint/driver.d.ts.map +1 -0
  164. package/dist/base-assets/mounts/sharepoint.js +20 -0
  165. package/dist/base-assets/mounts/sharepoint.js.map +1 -0
  166. package/dist/base-assets/mounts/webdav/driver.d.ts +32 -0
  167. package/dist/base-assets/mounts/webdav/driver.d.ts.map +1 -0
  168. package/dist/base-assets/mounts/webdav.js +20 -0
  169. package/dist/base-assets/mounts/webdav.js.map +1 -0
  170. package/dist/bridge/drivers/claude-sdk.js +836 -0
  171. package/dist/bridge/drivers/claude-sdk.js.map +1 -0
  172. package/dist/bridge/drivers/codex.js +478 -0
  173. package/dist/bridge/drivers/codex.js.map +1 -0
  174. package/dist/bridge/drivers/echo.js +219 -0
  175. package/dist/bridge/drivers/echo.js.map +1 -0
  176. package/dist/bridge/drivers/omp.js +431 -0
  177. package/dist/bridge/drivers/omp.js.map +1 -0
  178. package/dist/bridge/index.js +9 -0
  179. package/dist/bridge/index.js.map +1 -0
  180. package/dist/bridge/src/capability-dispatch.d.ts +94 -0
  181. package/dist/bridge/src/capability-dispatch.d.ts.map +1 -0
  182. package/dist/bridge/src/drivers/claude-sdk.d.ts +224 -0
  183. package/dist/bridge/src/drivers/claude-sdk.d.ts.map +1 -0
  184. package/dist/bridge/src/drivers/codex.d.ts +66 -0
  185. package/dist/bridge/src/drivers/codex.d.ts.map +1 -0
  186. package/dist/bridge/src/drivers/echo.d.ts +59 -0
  187. package/dist/bridge/src/drivers/echo.d.ts.map +1 -0
  188. package/dist/bridge/src/drivers/omp.d.ts +101 -0
  189. package/dist/bridge/src/drivers/omp.d.ts.map +1 -0
  190. package/dist/bridge/src/error-classifier.d.ts +90 -0
  191. package/dist/bridge/src/error-classifier.d.ts.map +1 -0
  192. package/dist/bridge/src/index.d.ts +10 -0
  193. package/dist/bridge/src/index.d.ts.map +1 -0
  194. package/dist/bridge/src/logger.d.ts +22 -0
  195. package/dist/bridge/src/logger.d.ts.map +1 -0
  196. package/dist/bridge/src/models.d.ts +90 -0
  197. package/dist/bridge/src/models.d.ts.map +1 -0
  198. package/dist/bridge/src/normalizer.d.ts +91 -0
  199. package/dist/bridge/src/normalizer.d.ts.map +1 -0
  200. package/dist/bridge/src/registry.d.ts +90 -0
  201. package/dist/bridge/src/registry.d.ts.map +1 -0
  202. package/dist/bridge/src/runtime.d.ts +42 -0
  203. package/dist/bridge/src/runtime.d.ts.map +1 -0
  204. package/dist/bridge/src/types.d.ts +564 -0
  205. package/dist/bridge/src/types.d.ts.map +1 -0
  206. package/dist/bridge/src/validation.d.ts +27 -0
  207. package/dist/bridge/src/validation.d.ts.map +1 -0
  208. package/dist/chunk-2M3XTMOL.js +23 -0
  209. package/dist/chunk-2M3XTMOL.js.map +1 -0
  210. package/dist/chunk-3W7Z74ZP.js +7678 -0
  211. package/dist/chunk-3W7Z74ZP.js.map +1 -0
  212. package/dist/chunk-44ZICIN4.js +418 -0
  213. package/dist/chunk-44ZICIN4.js.map +1 -0
  214. package/dist/chunk-46T37EBP.js +1517 -0
  215. package/dist/chunk-46T37EBP.js.map +1 -0
  216. package/dist/chunk-4NDWKA64.js +71 -0
  217. package/dist/chunk-4NDWKA64.js.map +1 -0
  218. package/dist/chunk-5CSE3QL2.js +546 -0
  219. package/dist/chunk-5CSE3QL2.js.map +1 -0
  220. package/dist/chunk-65CYXYUW.js +537 -0
  221. package/dist/chunk-65CYXYUW.js.map +1 -0
  222. package/dist/chunk-6UQ66R46.js +72 -0
  223. package/dist/chunk-6UQ66R46.js.map +1 -0
  224. package/dist/chunk-77CUYYO3.js +101 -0
  225. package/dist/chunk-77CUYYO3.js.map +1 -0
  226. package/dist/chunk-7H7EOIRH.js +393 -0
  227. package/dist/chunk-7H7EOIRH.js.map +1 -0
  228. package/dist/chunk-7HCGI2GW.js +385 -0
  229. package/dist/chunk-7HCGI2GW.js.map +1 -0
  230. package/dist/chunk-7HLNUSNE.js +212 -0
  231. package/dist/chunk-7HLNUSNE.js.map +1 -0
  232. package/dist/chunk-7PTP3SQJ.js +151 -0
  233. package/dist/chunk-7PTP3SQJ.js.map +1 -0
  234. package/dist/chunk-AIGWF3TJ.js +73 -0
  235. package/dist/chunk-AIGWF3TJ.js.map +1 -0
  236. package/dist/chunk-BVHFSUFM.js +343 -0
  237. package/dist/chunk-BVHFSUFM.js.map +1 -0
  238. package/dist/chunk-CCKGX5AS.js +481 -0
  239. package/dist/chunk-CCKGX5AS.js.map +1 -0
  240. package/dist/chunk-CGYEHQOX.js +117 -0
  241. package/dist/chunk-CGYEHQOX.js.map +1 -0
  242. package/dist/chunk-CSUBFKAN.js +747 -0
  243. package/dist/chunk-CSUBFKAN.js.map +1 -0
  244. package/dist/chunk-D5IH3QMH.js +112 -0
  245. package/dist/chunk-D5IH3QMH.js.map +1 -0
  246. package/dist/chunk-DOMCYP7D.js +3229 -0
  247. package/dist/chunk-DOMCYP7D.js.map +1 -0
  248. package/dist/chunk-EE3XTJ62.js +840 -0
  249. package/dist/chunk-EE3XTJ62.js.map +1 -0
  250. package/dist/chunk-EWP5HZBV.js +226 -0
  251. package/dist/chunk-EWP5HZBV.js.map +1 -0
  252. package/dist/chunk-FQHHCICT.js +591 -0
  253. package/dist/chunk-FQHHCICT.js.map +1 -0
  254. package/dist/chunk-FVTV7M76.js +30 -0
  255. package/dist/chunk-FVTV7M76.js.map +1 -0
  256. package/dist/chunk-GCRKAFH7.js +40 -0
  257. package/dist/chunk-GCRKAFH7.js.map +1 -0
  258. package/dist/chunk-GVOLEJG5.js +93 -0
  259. package/dist/chunk-GVOLEJG5.js.map +1 -0
  260. package/dist/chunk-GZWJGNNN.js +122 -0
  261. package/dist/chunk-GZWJGNNN.js.map +1 -0
  262. package/dist/chunk-HK5FRWG6.js +44 -0
  263. package/dist/chunk-HK5FRWG6.js.map +1 -0
  264. package/dist/chunk-IPUYL6TD.js +279 -0
  265. package/dist/chunk-IPUYL6TD.js.map +1 -0
  266. package/dist/chunk-JDX54X4Y.js +535 -0
  267. package/dist/chunk-JDX54X4Y.js.map +1 -0
  268. package/dist/chunk-JKNWJ64A.js +31 -0
  269. package/dist/chunk-JKNWJ64A.js.map +1 -0
  270. package/dist/chunk-JLPC4YWT.js +124 -0
  271. package/dist/chunk-JLPC4YWT.js.map +1 -0
  272. package/dist/chunk-K5GBV4SA.js +31 -0
  273. package/dist/chunk-K5GBV4SA.js.map +1 -0
  274. package/dist/chunk-KLNL7QHN.js +56 -0
  275. package/dist/chunk-KLNL7QHN.js.map +1 -0
  276. package/dist/chunk-KOVLSBXK.js +227 -0
  277. package/dist/chunk-KOVLSBXK.js.map +1 -0
  278. package/dist/chunk-KTBKW2FI.js +46 -0
  279. package/dist/chunk-KTBKW2FI.js.map +1 -0
  280. package/dist/chunk-LSGAYQ2E.js +166 -0
  281. package/dist/chunk-LSGAYQ2E.js.map +1 -0
  282. package/dist/chunk-LV2HPH3C.js +73 -0
  283. package/dist/chunk-LV2HPH3C.js.map +1 -0
  284. package/dist/chunk-MBBTBKAS.js +201 -0
  285. package/dist/chunk-MBBTBKAS.js.map +1 -0
  286. package/dist/chunk-MJHLQRJJ.js +325 -0
  287. package/dist/chunk-MJHLQRJJ.js.map +1 -0
  288. package/dist/chunk-NSBPE2FW.js +15 -0
  289. package/dist/chunk-NSBPE2FW.js.map +1 -0
  290. package/dist/chunk-NYJKXVG6.js +4166 -0
  291. package/dist/chunk-NYJKXVG6.js.map +1 -0
  292. package/dist/chunk-O4JH3KUE.js +56 -0
  293. package/dist/chunk-O4JH3KUE.js.map +1 -0
  294. package/dist/chunk-O5AE4QDX.js +67 -0
  295. package/dist/chunk-O5AE4QDX.js.map +1 -0
  296. package/dist/chunk-O7SG5PC2.js +3 -0
  297. package/dist/chunk-O7SG5PC2.js.map +1 -0
  298. package/dist/chunk-OKRUTSG7.js +87 -0
  299. package/dist/chunk-OKRUTSG7.js.map +1 -0
  300. package/dist/chunk-Q5URN24L.js +310 -0
  301. package/dist/chunk-Q5URN24L.js.map +1 -0
  302. package/dist/chunk-QT2KQHDT.js +49 -0
  303. package/dist/chunk-QT2KQHDT.js.map +1 -0
  304. package/dist/chunk-RRVQAE5D.js +51 -0
  305. package/dist/chunk-RRVQAE5D.js.map +1 -0
  306. package/dist/chunk-SZ3SIVZQ.js +78 -0
  307. package/dist/chunk-SZ3SIVZQ.js.map +1 -0
  308. package/dist/chunk-TS6VCR4W.js +195 -0
  309. package/dist/chunk-TS6VCR4W.js.map +1 -0
  310. package/dist/chunk-UMMBL7SW.js +210 -0
  311. package/dist/chunk-UMMBL7SW.js.map +1 -0
  312. package/dist/chunk-UQ6LFBPZ.js +122 -0
  313. package/dist/chunk-UQ6LFBPZ.js.map +1 -0
  314. package/dist/chunk-V37HONL7.js +526 -0
  315. package/dist/chunk-V37HONL7.js.map +1 -0
  316. package/dist/chunk-W2O5LWYU.js +3 -0
  317. package/dist/chunk-W2O5LWYU.js.map +1 -0
  318. package/dist/chunk-X5YPJV4N.js +14 -0
  319. package/dist/chunk-X5YPJV4N.js.map +1 -0
  320. package/dist/chunk-XCBG2KDC.js +23 -0
  321. package/dist/chunk-XCBG2KDC.js.map +1 -0
  322. package/dist/chunk-XEGHWFAX.js +174 -0
  323. package/dist/chunk-XEGHWFAX.js.map +1 -0
  324. package/dist/chunk-XOSBNBB6.js +155 -0
  325. package/dist/chunk-XOSBNBB6.js.map +1 -0
  326. package/dist/chunk-Y46TBPLI.js +97 -0
  327. package/dist/chunk-Y46TBPLI.js.map +1 -0
  328. package/dist/chunk-Z3RER6YZ.js +343 -0
  329. package/dist/chunk-Z3RER6YZ.js.map +1 -0
  330. package/dist/chunk-ZUQIXLRJ.js +284 -0
  331. package/dist/chunk-ZUQIXLRJ.js.map +1 -0
  332. package/dist/cli/index.js +5685 -0
  333. package/dist/cli/index.js.map +1 -0
  334. package/dist/cli/src/commands/asset-cmd.d.ts +15 -0
  335. package/dist/cli/src/commands/asset-cmd.d.ts.map +1 -0
  336. package/dist/cli/src/commands/auth.d.ts +16 -0
  337. package/dist/cli/src/commands/auth.d.ts.map +1 -0
  338. package/dist/cli/src/commands/catalog-cmd.d.ts +23 -0
  339. package/dist/cli/src/commands/catalog-cmd.d.ts.map +1 -0
  340. package/dist/cli/src/commands/catalog.d.ts +92 -0
  341. package/dist/cli/src/commands/catalog.d.ts.map +1 -0
  342. package/dist/cli/src/commands/complete-resolvers.d.ts +35 -0
  343. package/dist/cli/src/commands/complete-resolvers.d.ts.map +1 -0
  344. package/dist/cli/src/commands/complete.d.ts +14 -0
  345. package/dist/cli/src/commands/complete.d.ts.map +1 -0
  346. package/dist/cli/src/commands/config.d.ts +17 -0
  347. package/dist/cli/src/commands/config.d.ts.map +1 -0
  348. package/dist/cli/src/commands/connect.d.ts +13 -0
  349. package/dist/cli/src/commands/connect.d.ts.map +1 -0
  350. package/dist/cli/src/commands/connector.d.ts +30 -0
  351. package/dist/cli/src/commands/connector.d.ts.map +1 -0
  352. package/dist/cli/src/commands/debug.d.ts +13 -0
  353. package/dist/cli/src/commands/debug.d.ts.map +1 -0
  354. package/dist/cli/src/commands/diff.d.ts +12 -0
  355. package/dist/cli/src/commands/diff.d.ts.map +1 -0
  356. package/dist/cli/src/commands/flow.d.ts +14 -0
  357. package/dist/cli/src/commands/flow.d.ts.map +1 -0
  358. package/dist/cli/src/commands/history.d.ts +12 -0
  359. package/dist/cli/src/commands/history.d.ts.map +1 -0
  360. package/dist/cli/src/commands/library-cmd.d.ts +12 -0
  361. package/dist/cli/src/commands/library-cmd.d.ts.map +1 -0
  362. package/dist/cli/src/commands/library-status.d.ts +19 -0
  363. package/dist/cli/src/commands/library-status.d.ts.map +1 -0
  364. package/dist/cli/src/commands/logs.d.ts +13 -0
  365. package/dist/cli/src/commands/logs.d.ts.map +1 -0
  366. package/dist/cli/src/commands/manage.d.ts +62 -0
  367. package/dist/cli/src/commands/manage.d.ts.map +1 -0
  368. package/dist/cli/src/commands/mcp-server.d.ts +15 -0
  369. package/dist/cli/src/commands/mcp-server.d.ts.map +1 -0
  370. package/dist/cli/src/commands/mount.d.ts +22 -0
  371. package/dist/cli/src/commands/mount.d.ts.map +1 -0
  372. package/dist/cli/src/commands/npx.d.ts +14 -0
  373. package/dist/cli/src/commands/npx.d.ts.map +1 -0
  374. package/dist/cli/src/commands/outdated.d.ts +12 -0
  375. package/dist/cli/src/commands/outdated.d.ts.map +1 -0
  376. package/dist/cli/src/commands/patch.d.ts +14 -0
  377. package/dist/cli/src/commands/patch.d.ts.map +1 -0
  378. package/dist/cli/src/commands/plugin/claude-code.d.ts +17 -0
  379. package/dist/cli/src/commands/plugin/claude-code.d.ts.map +1 -0
  380. package/dist/cli/src/commands/plugin/codex.d.ts +5 -0
  381. package/dist/cli/src/commands/plugin/codex.d.ts.map +1 -0
  382. package/dist/cli/src/commands/plugin/omp.d.ts +12 -0
  383. package/dist/cli/src/commands/plugin/omp.d.ts.map +1 -0
  384. package/dist/cli/src/commands/plugin/types.d.ts +65 -0
  385. package/dist/cli/src/commands/plugin/types.d.ts.map +1 -0
  386. package/dist/cli/src/commands/plugin.d.ts +14 -0
  387. package/dist/cli/src/commands/plugin.d.ts.map +1 -0
  388. package/dist/cli/src/commands/preset-cmd.d.ts +19 -0
  389. package/dist/cli/src/commands/preset-cmd.d.ts.map +1 -0
  390. package/dist/cli/src/commands/project.d.ts +34 -0
  391. package/dist/cli/src/commands/project.d.ts.map +1 -0
  392. package/dist/cli/src/commands/rebuild.d.ts +21 -0
  393. package/dist/cli/src/commands/rebuild.d.ts.map +1 -0
  394. package/dist/cli/src/commands/run.d.ts +68 -0
  395. package/dist/cli/src/commands/run.d.ts.map +1 -0
  396. package/dist/cli/src/commands/serve.d.ts +13 -0
  397. package/dist/cli/src/commands/serve.d.ts.map +1 -0
  398. package/dist/cli/src/commands/session-logs/format.d.ts +21 -0
  399. package/dist/cli/src/commands/session-logs/format.d.ts.map +1 -0
  400. package/dist/cli/src/commands/session-logs/index.d.ts +18 -0
  401. package/dist/cli/src/commands/session-logs/index.d.ts.map +1 -0
  402. package/dist/cli/src/commands/session-logs/local-query.d.ts +19 -0
  403. package/dist/cli/src/commands/session-logs/local-query.d.ts.map +1 -0
  404. package/dist/cli/src/commands/session-logs/local-tail.d.ts +29 -0
  405. package/dist/cli/src/commands/session-logs/local-tail.d.ts.map +1 -0
  406. package/dist/cli/src/commands/session-logs/parse-time.d.ts +11 -0
  407. package/dist/cli/src/commands/session-logs/parse-time.d.ts.map +1 -0
  408. package/dist/cli/src/commands/session-logs/remote-query.d.ts +26 -0
  409. package/dist/cli/src/commands/session-logs/remote-query.d.ts.map +1 -0
  410. package/dist/cli/src/commands/session-logs/remote-tail.d.ts +22 -0
  411. package/dist/cli/src/commands/session-logs/remote-tail.d.ts.map +1 -0
  412. package/dist/cli/src/commands/session-logs/resolve-mode.d.ts +27 -0
  413. package/dist/cli/src/commands/session-logs/resolve-mode.d.ts.map +1 -0
  414. package/dist/cli/src/commands/session-logs/sqlite-row.d.ts +51 -0
  415. package/dist/cli/src/commands/session-logs/sqlite-row.d.ts.map +1 -0
  416. package/dist/cli/src/commands/session.d.ts +15 -0
  417. package/dist/cli/src/commands/session.d.ts.map +1 -0
  418. package/dist/cli/src/commands/show.d.ts +13 -0
  419. package/dist/cli/src/commands/show.d.ts.map +1 -0
  420. package/dist/cli/src/commands/source-sidecar.d.ts +6 -0
  421. package/dist/cli/src/commands/source-sidecar.d.ts.map +1 -0
  422. package/dist/cli/src/commands/source.d.ts +8 -0
  423. package/dist/cli/src/commands/source.d.ts.map +1 -0
  424. package/dist/cli/src/commands/store.d.ts +13 -0
  425. package/dist/cli/src/commands/store.d.ts.map +1 -0
  426. package/dist/cli/src/commands/tree.d.ts +12 -0
  427. package/dist/cli/src/commands/tree.d.ts.map +1 -0
  428. package/dist/cli/src/commands/update.d.ts +22 -0
  429. package/dist/cli/src/commands/update.d.ts.map +1 -0
  430. package/dist/cli/src/commands/validate.d.ts +17 -0
  431. package/dist/cli/src/commands/validate.d.ts.map +1 -0
  432. package/dist/cli/src/commands/verify.d.ts +13 -0
  433. package/dist/cli/src/commands/verify.d.ts.map +1 -0
  434. package/dist/cli/src/commands/why.d.ts +12 -0
  435. package/dist/cli/src/commands/why.d.ts.map +1 -0
  436. package/dist/cli/src/completion.d.ts +19 -0
  437. package/dist/cli/src/completion.d.ts.map +1 -0
  438. package/dist/cli/src/helpers.d.ts +54 -0
  439. package/dist/cli/src/helpers.d.ts.map +1 -0
  440. package/dist/cli/src/hooks/pre-commit-version.d.ts +10 -0
  441. package/dist/cli/src/hooks/pre-commit-version.d.ts.map +1 -0
  442. package/dist/cli/src/index.d.ts +8 -0
  443. package/dist/cli/src/index.d.ts.map +1 -0
  444. package/dist/cli/src/open-library.d.ts +101 -0
  445. package/dist/cli/src/open-library.d.ts.map +1 -0
  446. package/dist/cli/src/open-registry.d.ts +24 -0
  447. package/dist/cli/src/open-registry.d.ts.map +1 -0
  448. package/dist/cli/src/paths.d.ts +27 -0
  449. package/dist/cli/src/paths.d.ts.map +1 -0
  450. package/dist/cli/src/setup.d.ts +19 -0
  451. package/dist/cli/src/setup.d.ts.map +1 -0
  452. package/dist/cli/src/skill-walker.d.ts +31 -0
  453. package/dist/cli/src/skill-walker.d.ts.map +1 -0
  454. package/dist/cli/src/store-client.d.ts +55 -0
  455. package/dist/cli/src/store-client.d.ts.map +1 -0
  456. package/dist/client/index.js +4 -0
  457. package/dist/client/index.js.map +1 -0
  458. package/dist/client/src/client.d.ts +67 -0
  459. package/dist/client/src/client.d.ts.map +1 -0
  460. package/dist/client/src/index.d.ts +2 -0
  461. package/dist/client/src/index.d.ts.map +1 -0
  462. package/dist/connectors/config.js +14 -0
  463. package/dist/connectors/config.js.map +1 -0
  464. package/dist/connectors/index.js +20 -0
  465. package/dist/connectors/index.js.map +1 -0
  466. package/dist/connectors/rclone-config.js +4 -0
  467. package/dist/connectors/rclone-config.js.map +1 -0
  468. package/dist/connectors/rclone.js +4 -0
  469. package/dist/connectors/rclone.js.map +1 -0
  470. package/dist/connectors/src/adapters/base.d.ts +66 -0
  471. package/dist/connectors/src/adapters/base.d.ts.map +1 -0
  472. package/dist/connectors/src/cli.d.ts +16 -0
  473. package/dist/connectors/src/cli.d.ts.map +1 -0
  474. package/dist/connectors/src/config.d.ts +125 -0
  475. package/dist/connectors/src/config.d.ts.map +1 -0
  476. package/dist/connectors/src/connector-manager.d.ts +147 -0
  477. package/dist/connectors/src/connector-manager.d.ts.map +1 -0
  478. package/dist/connectors/src/connector-registry.d.ts +59 -0
  479. package/dist/connectors/src/connector-registry.d.ts.map +1 -0
  480. package/dist/connectors/src/connector-tools.d.ts +61 -0
  481. package/dist/connectors/src/connector-tools.d.ts.map +1 -0
  482. package/dist/connectors/src/connector-types.d.ts +220 -0
  483. package/dist/connectors/src/connector-types.d.ts.map +1 -0
  484. package/dist/connectors/src/credential-helper-script.d.ts +87 -0
  485. package/dist/connectors/src/credential-helper-script.d.ts.map +1 -0
  486. package/dist/connectors/src/drivers/base.d.ts +44 -0
  487. package/dist/connectors/src/drivers/base.d.ts.map +1 -0
  488. package/dist/connectors/src/index.d.ts +51 -0
  489. package/dist/connectors/src/index.d.ts.map +1 -0
  490. package/dist/connectors/src/log-buffer.d.ts +21 -0
  491. package/dist/connectors/src/log-buffer.d.ts.map +1 -0
  492. package/dist/connectors/src/managed-gitconfig.d.ts +122 -0
  493. package/dist/connectors/src/managed-gitconfig.d.ts.map +1 -0
  494. package/dist/connectors/src/mount-manager.d.ts +147 -0
  495. package/dist/connectors/src/mount-manager.d.ts.map +1 -0
  496. package/dist/connectors/src/mount-prompt.d.ts +13 -0
  497. package/dist/connectors/src/mount-prompt.d.ts.map +1 -0
  498. package/dist/connectors/src/mount-registry.d.ts +61 -0
  499. package/dist/connectors/src/mount-registry.d.ts.map +1 -0
  500. package/dist/connectors/src/mount-types.d.ts +222 -0
  501. package/dist/connectors/src/mount-types.d.ts.map +1 -0
  502. package/dist/connectors/src/npm-installer.d.ts +69 -0
  503. package/dist/connectors/src/npm-installer.d.ts.map +1 -0
  504. package/dist/connectors/src/port-pool.d.ts +25 -0
  505. package/dist/connectors/src/port-pool.d.ts.map +1 -0
  506. package/dist/connectors/src/rclone-config/index.d.ts +8 -0
  507. package/dist/connectors/src/rclone-config/index.d.ts.map +1 -0
  508. package/dist/connectors/src/rclone-config/onedrive.d.ts +47 -0
  509. package/dist/connectors/src/rclone-config/onedrive.d.ts.map +1 -0
  510. package/dist/connectors/src/rclone-config/webdav.d.ts +49 -0
  511. package/dist/connectors/src/rclone-config/webdav.d.ts.map +1 -0
  512. package/dist/connectors/src/rclone-process-manager.d.ts +104 -0
  513. package/dist/connectors/src/rclone-process-manager.d.ts.map +1 -0
  514. package/dist/connectors/src/secrets.d.ts +264 -0
  515. package/dist/connectors/src/secrets.d.ts.map +1 -0
  516. package/dist/connectors/src/shared-types.d.ts +171 -0
  517. package/dist/connectors/src/shared-types.d.ts.map +1 -0
  518. package/dist/connectors/src/watcher.d.ts +23 -0
  519. package/dist/connectors/src/watcher.d.ts.map +1 -0
  520. package/dist/connectors/src/worktree.d.ts +78 -0
  521. package/dist/connectors/src/worktree.d.ts.map +1 -0
  522. package/dist/connectors-7WS2KOSZ.js +5 -0
  523. package/dist/connectors-7WS2KOSZ.js.map +1 -0
  524. package/dist/core/discovery.js +4 -0
  525. package/dist/core/discovery.js.map +1 -0
  526. package/dist/core/driver-targets.js +4 -0
  527. package/dist/core/driver-targets.js.map +1 -0
  528. package/dist/core/framework.js +4 -0
  529. package/dist/core/framework.js.map +1 -0
  530. package/dist/core/index.js +13 -0
  531. package/dist/core/index.js.map +1 -0
  532. package/dist/core/logging.js +4 -0
  533. package/dist/core/logging.js.map +1 -0
  534. package/dist/core/manifest.js +5 -0
  535. package/dist/core/manifest.js.map +1 -0
  536. package/dist/core/models.js +4 -0
  537. package/dist/core/models.js.map +1 -0
  538. package/dist/core/runtime-assets.js +7 -0
  539. package/dist/core/runtime-assets.js.map +1 -0
  540. package/dist/core/src/discovery.d.ts +40 -0
  541. package/dist/core/src/discovery.d.ts.map +1 -0
  542. package/dist/core/src/driver-targets.d.ts +54 -0
  543. package/dist/core/src/driver-targets.d.ts.map +1 -0
  544. package/dist/core/src/framework.d.ts +46 -0
  545. package/dist/core/src/framework.d.ts.map +1 -0
  546. package/dist/core/src/index.d.ts +36 -0
  547. package/dist/core/src/index.d.ts.map +1 -0
  548. package/dist/core/src/lock.d.ts +69 -0
  549. package/dist/core/src/lock.d.ts.map +1 -0
  550. package/dist/core/src/logging/config.d.ts +17 -0
  551. package/dist/core/src/logging/config.d.ts.map +1 -0
  552. package/dist/core/src/logging/create-logger.d.ts +32 -0
  553. package/dist/core/src/logging/create-logger.d.ts.map +1 -0
  554. package/dist/core/src/logging/index.d.ts +16 -0
  555. package/dist/core/src/logging/index.d.ts.map +1 -0
  556. package/dist/core/src/logging/log-store.d.ts +74 -0
  557. package/dist/core/src/logging/log-store.d.ts.map +1 -0
  558. package/dist/core/src/logging/sanitize.d.ts +4 -0
  559. package/dist/core/src/logging/sanitize.d.ts.map +1 -0
  560. package/dist/core/src/logging/sinks/no-op-sink.d.ts +9 -0
  561. package/dist/core/src/logging/sinks/no-op-sink.d.ts.map +1 -0
  562. package/dist/core/src/logging/sinks/on-log-bridge-sink.d.ts +16 -0
  563. package/dist/core/src/logging/sinks/on-log-bridge-sink.d.ts.map +1 -0
  564. package/dist/core/src/logging/sinks/sqlite-sink.d.ts +18 -0
  565. package/dist/core/src/logging/sinks/sqlite-sink.d.ts.map +1 -0
  566. package/dist/core/src/logging/sinks/stdout-sink.d.ts +24 -0
  567. package/dist/core/src/logging/sinks/stdout-sink.d.ts.map +1 -0
  568. package/dist/core/src/logging/sinks/types.d.ts +5 -0
  569. package/dist/core/src/logging/sinks/types.d.ts.map +1 -0
  570. package/dist/core/src/logging/sinks/ws-log-sink.d.ts +24 -0
  571. package/dist/core/src/logging/sinks/ws-log-sink.d.ts.map +1 -0
  572. package/dist/core/src/manifest.d.ts +228 -0
  573. package/dist/core/src/manifest.d.ts.map +1 -0
  574. package/dist/core/src/models.d.ts +304 -0
  575. package/dist/core/src/models.d.ts.map +1 -0
  576. package/dist/core/src/patch.d.ts +59 -0
  577. package/dist/core/src/patch.d.ts.map +1 -0
  578. package/dist/core/src/repo-manager.d.ts +232 -0
  579. package/dist/core/src/repo-manager.d.ts.map +1 -0
  580. package/dist/core/src/runtime-assets.d.ts +125 -0
  581. package/dist/core/src/runtime-assets.d.ts.map +1 -0
  582. package/dist/core/src/settings.d.ts +188 -0
  583. package/dist/core/src/settings.d.ts.map +1 -0
  584. package/dist/core/src/store.d.ts +48 -0
  585. package/dist/core/src/store.d.ts.map +1 -0
  586. package/dist/core/src/workspace-config.d.ts +744 -0
  587. package/dist/core/src/workspace-config.d.ts.map +1 -0
  588. package/dist/core/src/workspace-yaml-editor.d.ts +74 -0
  589. package/dist/core/src/workspace-yaml-editor.d.ts.map +1 -0
  590. package/dist/core/store.js +5 -0
  591. package/dist/core/store.js.map +1 -0
  592. package/dist/core/workspace-config.js +6 -0
  593. package/dist/core/workspace-config.js.map +1 -0
  594. package/dist/discovery/index.js +8 -0
  595. package/dist/discovery/index.js.map +1 -0
  596. package/dist/discovery/src/asset-kind-registry.d.ts +35 -0
  597. package/dist/discovery/src/asset-kind-registry.d.ts.map +1 -0
  598. package/dist/discovery/src/builtin-providers.d.ts +37 -0
  599. package/dist/discovery/src/builtin-providers.d.ts.map +1 -0
  600. package/dist/discovery/src/discover-manifest.d.ts +41 -0
  601. package/dist/discovery/src/discover-manifest.d.ts.map +1 -0
  602. package/dist/discovery/src/discover.d.ts +92 -0
  603. package/dist/discovery/src/discover.d.ts.map +1 -0
  604. package/dist/discovery/src/hash.d.ts +45 -0
  605. package/dist/discovery/src/hash.d.ts.map +1 -0
  606. package/dist/discovery/src/index.d.ts +19 -0
  607. package/dist/discovery/src/index.d.ts.map +1 -0
  608. package/dist/discovery/src/requires-graph.d.ts +70 -0
  609. package/dist/discovery/src/requires-graph.d.ts.map +1 -0
  610. package/dist/discovery/src/source-config.d.ts +456 -0
  611. package/dist/discovery/src/source-config.d.ts.map +1 -0
  612. package/dist/discovery/src/tree-entries.d.ts +98 -0
  613. package/dist/discovery/src/tree-entries.d.ts.map +1 -0
  614. package/dist/flows-ZULSVHX5.js +7 -0
  615. package/dist/flows-ZULSVHX5.js.map +1 -0
  616. package/dist/helpers-I3SREIC3.js +4 -0
  617. package/dist/helpers-I3SREIC3.js.map +1 -0
  618. package/dist/library/index.js +9 -0
  619. package/dist/library/index.js.map +1 -0
  620. package/dist/library/src/config.d.ts +238 -0
  621. package/dist/library/src/config.d.ts.map +1 -0
  622. package/dist/library/src/index.d.ts +32 -0
  623. package/dist/library/src/index.d.ts.map +1 -0
  624. package/dist/library/src/knowledge/index.d.ts +9 -0
  625. package/dist/library/src/knowledge/index.d.ts.map +1 -0
  626. package/dist/library/src/knowledge/knowledge-kind-provider.d.ts +16 -0
  627. package/dist/library/src/knowledge/knowledge-kind-provider.d.ts.map +1 -0
  628. package/dist/library/src/knowledge/knowledge-manifest.d.ts +52 -0
  629. package/dist/library/src/knowledge/knowledge-manifest.d.ts.map +1 -0
  630. package/dist/library/src/library.d.ts +344 -0
  631. package/dist/library/src/library.d.ts.map +1 -0
  632. package/dist/library/src/local/db.d.ts +29 -0
  633. package/dist/library/src/local/db.d.ts.map +1 -0
  634. package/dist/library/src/local/library.d.ts +85 -0
  635. package/dist/library/src/local/library.d.ts.map +1 -0
  636. package/dist/library/src/local/local-catalog-source.d.ts +66 -0
  637. package/dist/library/src/local/local-catalog-source.d.ts.map +1 -0
  638. package/dist/library/src/local/schema.d.ts +783 -0
  639. package/dist/library/src/local/schema.d.ts.map +1 -0
  640. package/dist/library/src/local/sidecar-git.d.ts +104 -0
  641. package/dist/library/src/local/sidecar-git.d.ts.map +1 -0
  642. package/dist/library/src/local/sidecar-paths.d.ts +87 -0
  643. package/dist/library/src/local/sidecar-paths.d.ts.map +1 -0
  644. package/dist/library/src/local/user-library-manager.d.ts +41 -0
  645. package/dist/library/src/local/user-library-manager.d.ts.map +1 -0
  646. package/dist/library/src/migration.d.ts +38 -0
  647. package/dist/library/src/migration.d.ts.map +1 -0
  648. package/dist/library/src/pin-resolver.d.ts +45 -0
  649. package/dist/library/src/pin-resolver.d.ts.map +1 -0
  650. package/dist/library/src/preset/apply.d.ts +105 -0
  651. package/dist/library/src/preset/apply.d.ts.map +1 -0
  652. package/dist/library/src/preset/index.d.ts +13 -0
  653. package/dist/library/src/preset/index.d.ts.map +1 -0
  654. package/dist/library/src/preset/interpolate.d.ts +109 -0
  655. package/dist/library/src/preset/interpolate.d.ts.map +1 -0
  656. package/dist/library/src/preset/parse.d.ts +65 -0
  657. package/dist/library/src/preset/parse.d.ts.map +1 -0
  658. package/dist/library/src/preset/placeholders.d.ts +103 -0
  659. package/dist/library/src/preset/placeholders.d.ts.map +1 -0
  660. package/dist/library/src/preset/resolve-item.d.ts +119 -0
  661. package/dist/library/src/preset/resolve-item.d.ts.map +1 -0
  662. package/dist/library/src/preset/upgrade.d.ts +96 -0
  663. package/dist/library/src/preset/upgrade.d.ts.map +1 -0
  664. package/dist/library/src/remote/cache.d.ts +150 -0
  665. package/dist/library/src/remote/cache.d.ts.map +1 -0
  666. package/dist/library/src/remote/index.d.ts +13 -0
  667. package/dist/library/src/remote/index.d.ts.map +1 -0
  668. package/dist/library/src/remote/remote-catalog-source.d.ts +199 -0
  669. package/dist/library/src/remote/remote-catalog-source.d.ts.map +1 -0
  670. package/dist/library/src/remote/rest-catalog-source.d.ts +135 -0
  671. package/dist/library/src/remote/rest-catalog-source.d.ts.map +1 -0
  672. package/dist/library/src/sync/driver.d.ts +19 -0
  673. package/dist/library/src/sync/driver.d.ts.map +1 -0
  674. package/dist/library/src/sync/git-driver.d.ts +21 -0
  675. package/dist/library/src/sync/git-driver.d.ts.map +1 -0
  676. package/dist/library/src/sync/local-driver.d.ts +19 -0
  677. package/dist/library/src/sync/local-driver.d.ts.map +1 -0
  678. package/dist/library/src/sync/manifest-writeback.d.ts +23 -0
  679. package/dist/library/src/sync/manifest-writeback.d.ts.map +1 -0
  680. package/dist/library/src/sync/store-driver.d.ts +21 -0
  681. package/dist/library/src/sync/store-driver.d.ts.map +1 -0
  682. package/dist/library/src/user-library.d.ts +149 -0
  683. package/dist/library/src/user-library.d.ts.map +1 -0
  684. package/dist/library/src/workspace-config.d.ts +451 -0
  685. package/dist/library/src/workspace-config.d.ts.map +1 -0
  686. package/dist/mounts-PQLFYD2C.js +5 -0
  687. package/dist/mounts-PQLFYD2C.js.map +1 -0
  688. package/dist/open-library-N5T5HRTS.js +12 -0
  689. package/dist/open-library-N5T5HRTS.js.map +1 -0
  690. package/dist/paths-FKKGS6BA.js +4 -0
  691. package/dist/paths-FKKGS6BA.js.map +1 -0
  692. package/dist/plugins/index.js +4 -0
  693. package/dist/plugins/index.js.map +1 -0
  694. package/dist/plugins/src/asset-kind-provider.d.ts +99 -0
  695. package/dist/plugins/src/asset-kind-provider.d.ts.map +1 -0
  696. package/dist/plugins/src/asset-kind-registry.d.ts +106 -0
  697. package/dist/plugins/src/asset-kind-registry.d.ts.map +1 -0
  698. package/dist/plugins/src/catalog-source.d.ts +87 -0
  699. package/dist/plugins/src/catalog-source.d.ts.map +1 -0
  700. package/dist/plugins/src/index.d.ts +8 -0
  701. package/dist/plugins/src/index.d.ts.map +1 -0
  702. package/dist/plugins/src/secrets-provider.d.ts +143 -0
  703. package/dist/plugins/src/secrets-provider.d.ts.map +1 -0
  704. package/dist/provider-QXKEDXWJ.js +174 -0
  705. package/dist/provider-QXKEDXWJ.js.map +1 -0
  706. package/dist/resolver/index.js +4 -0
  707. package/dist/resolver/index.js.map +1 -0
  708. package/dist/resolver/src/index.d.ts +6 -0
  709. package/dist/resolver/src/index.d.ts.map +1 -0
  710. package/dist/resolver/src/parser.d.ts +47 -0
  711. package/dist/resolver/src/parser.d.ts.map +1 -0
  712. package/dist/resolver/src/preamble.d.ts +32 -0
  713. package/dist/resolver/src/preamble.d.ts.map +1 -0
  714. package/dist/resolver/src/types.d.ts +279 -0
  715. package/dist/resolver/src/types.d.ts.map +1 -0
  716. package/dist/resolver/src/validator.d.ts +55 -0
  717. package/dist/resolver/src/validator.d.ts.map +1 -0
  718. package/dist/resolver/src/version.d.ts +50 -0
  719. package/dist/resolver/src/version.d.ts.map +1 -0
  720. package/dist/runner/index.js +34 -0
  721. package/dist/runner/index.js.map +1 -0
  722. package/dist/runner/src/agent.d.ts +52 -0
  723. package/dist/runner/src/agent.d.ts.map +1 -0
  724. package/dist/runner/src/builtin-capabilities.d.ts +23 -0
  725. package/dist/runner/src/builtin-capabilities.d.ts.map +1 -0
  726. package/dist/runner/src/capability-registry.d.ts +212 -0
  727. package/dist/runner/src/capability-registry.d.ts.map +1 -0
  728. package/dist/runner/src/capability-roundtrip.d.ts +90 -0
  729. package/dist/runner/src/capability-roundtrip.d.ts.map +1 -0
  730. package/dist/runner/src/compaction/index.d.ts +6 -0
  731. package/dist/runner/src/compaction/index.d.ts.map +1 -0
  732. package/dist/runner/src/compaction/orchestrator.d.ts +99 -0
  733. package/dist/runner/src/compaction/orchestrator.d.ts.map +1 -0
  734. package/dist/runner/src/compaction/prompt.d.ts +15 -0
  735. package/dist/runner/src/compaction/prompt.d.ts.map +1 -0
  736. package/dist/runner/src/compaction/strategy.d.ts +41 -0
  737. package/dist/runner/src/compaction/strategy.d.ts.map +1 -0
  738. package/dist/runner/src/composition/bootstrap.d.ts +73 -0
  739. package/dist/runner/src/composition/bootstrap.d.ts.map +1 -0
  740. package/dist/runner/src/composition/compile.d.ts +84 -0
  741. package/dist/runner/src/composition/compile.d.ts.map +1 -0
  742. package/dist/runner/src/composition/index.d.ts +14 -0
  743. package/dist/runner/src/composition/index.d.ts.map +1 -0
  744. package/dist/runner/src/composition/resolve.d.ts +53 -0
  745. package/dist/runner/src/composition/resolve.d.ts.map +1 -0
  746. package/dist/runner/src/composition/types.d.ts +103 -0
  747. package/dist/runner/src/composition/types.d.ts.map +1 -0
  748. package/dist/runner/src/config.d.ts +11 -0
  749. package/dist/runner/src/config.d.ts.map +1 -0
  750. package/dist/runner/src/context.d.ts +16 -0
  751. package/dist/runner/src/context.d.ts.map +1 -0
  752. package/dist/runner/src/define-capability.d.ts +153 -0
  753. package/dist/runner/src/define-capability.d.ts.map +1 -0
  754. package/dist/runner/src/environment.d.ts +21 -0
  755. package/dist/runner/src/environment.d.ts.map +1 -0
  756. package/dist/runner/src/file-changed-rewriter.d.ts +35 -0
  757. package/dist/runner/src/file-changed-rewriter.d.ts.map +1 -0
  758. package/dist/runner/src/index.d.ts +22 -0
  759. package/dist/runner/src/index.d.ts.map +1 -0
  760. package/dist/runner/src/logging-bootstrap.d.ts +92 -0
  761. package/dist/runner/src/logging-bootstrap.d.ts.map +1 -0
  762. package/dist/runner/src/manifest.d.ts +33 -0
  763. package/dist/runner/src/manifest.d.ts.map +1 -0
  764. package/dist/runner/src/markdown-stream.d.ts +22 -0
  765. package/dist/runner/src/markdown-stream.d.ts.map +1 -0
  766. package/dist/runner/src/mixin-resolver.d.ts +61 -0
  767. package/dist/runner/src/mixin-resolver.d.ts.map +1 -0
  768. package/dist/runner/src/prompt-assembly.d.ts +42 -0
  769. package/dist/runner/src/prompt-assembly.d.ts.map +1 -0
  770. package/dist/runner/src/recipe-resolver.d.ts +18 -0
  771. package/dist/runner/src/recipe-resolver.d.ts.map +1 -0
  772. package/dist/runner/src/recipe-templating.d.ts +20 -0
  773. package/dist/runner/src/recipe-templating.d.ts.map +1 -0
  774. package/dist/runner/src/refresh-flag-dispatcher.d.ts +54 -0
  775. package/dist/runner/src/refresh-flag-dispatcher.d.ts.map +1 -0
  776. package/dist/runner/src/resource-handler.d.ts +22 -0
  777. package/dist/runner/src/resource-handler.d.ts.map +1 -0
  778. package/dist/runner/src/resources.d.ts +102 -0
  779. package/dist/runner/src/resources.d.ts.map +1 -0
  780. package/dist/runner/src/runner-capabilities.d.ts +120 -0
  781. package/dist/runner/src/runner-capabilities.d.ts.map +1 -0
  782. package/dist/runner/src/serve-credentials.d.ts +50 -0
  783. package/dist/runner/src/serve-credentials.d.ts.map +1 -0
  784. package/dist/runner/src/serve.d.ts +154 -0
  785. package/dist/runner/src/serve.d.ts.map +1 -0
  786. package/dist/runner/src/session-builder.d.ts +213 -0
  787. package/dist/runner/src/session-builder.d.ts.map +1 -0
  788. package/dist/runner/src/session-stimulus.d.ts +79 -0
  789. package/dist/runner/src/session-stimulus.d.ts.map +1 -0
  790. package/dist/runner/src/session.d.ts +139 -0
  791. package/dist/runner/src/session.d.ts.map +1 -0
  792. package/dist/runner/src/workspace-migration.d.ts +54 -0
  793. package/dist/runner/src/workspace-migration.d.ts.map +1 -0
  794. package/dist/sdk/asset-manager.js +22 -0
  795. package/dist/sdk/asset-manager.js.map +1 -0
  796. package/dist/sdk/bridge.js +9 -0
  797. package/dist/sdk/bridge.js.map +1 -0
  798. package/dist/sdk/client.js +4 -0
  799. package/dist/sdk/client.js.map +1 -0
  800. package/dist/sdk/core.js +13 -0
  801. package/dist/sdk/core.js.map +1 -0
  802. package/dist/sdk/flow.js +4 -0
  803. package/dist/sdk/flow.js.map +1 -0
  804. package/dist/sdk/index.js +339 -0
  805. package/dist/sdk/index.js.map +1 -0
  806. package/dist/sdk/resolver.js +4 -0
  807. package/dist/sdk/resolver.js.map +1 -0
  808. package/dist/sdk/runner.js +34 -0
  809. package/dist/sdk/runner.js.map +1 -0
  810. package/dist/sdk/session.js +5 -0
  811. package/dist/sdk/session.js.map +1 -0
  812. package/dist/sdk/src/agent-session.d.ts +67 -0
  813. package/dist/sdk/src/agent-session.d.ts.map +1 -0
  814. package/dist/sdk/src/asset-manager/index.d.ts +2 -0
  815. package/dist/sdk/src/asset-manager/index.d.ts.map +1 -0
  816. package/dist/sdk/src/bridge/index.d.ts +2 -0
  817. package/dist/sdk/src/bridge/index.d.ts.map +1 -0
  818. package/dist/sdk/src/client/index.d.ts +2 -0
  819. package/dist/sdk/src/client/index.d.ts.map +1 -0
  820. package/dist/sdk/src/core/index.d.ts +2 -0
  821. package/dist/sdk/src/core/index.d.ts.map +1 -0
  822. package/dist/sdk/src/factory.d.ts +19 -0
  823. package/dist/sdk/src/factory.d.ts.map +1 -0
  824. package/dist/sdk/src/flow/index.d.ts +2 -0
  825. package/dist/sdk/src/flow/index.d.ts.map +1 -0
  826. package/dist/sdk/src/index.d.ts +7 -0
  827. package/dist/sdk/src/index.d.ts.map +1 -0
  828. package/dist/sdk/src/local-runtime.d.ts +51 -0
  829. package/dist/sdk/src/local-runtime.d.ts.map +1 -0
  830. package/dist/sdk/src/resolver/index.d.ts +2 -0
  831. package/dist/sdk/src/resolver/index.d.ts.map +1 -0
  832. package/dist/sdk/src/runner/index.d.ts +2 -0
  833. package/dist/sdk/src/runner/index.d.ts.map +1 -0
  834. package/dist/sdk/src/session/index.d.ts +2 -0
  835. package/dist/sdk/src/session/index.d.ts.map +1 -0
  836. package/dist/sdk/src/store/index.d.ts +2 -0
  837. package/dist/sdk/src/store/index.d.ts.map +1 -0
  838. package/dist/sdk/src/telemetry/index.d.ts +2 -0
  839. package/dist/sdk/src/telemetry/index.d.ts.map +1 -0
  840. package/dist/sdk/src/transport/index.d.ts +2 -0
  841. package/dist/sdk/src/transport/index.d.ts.map +1 -0
  842. package/dist/sdk/src/transport/ws/client.d.ts +2 -0
  843. package/dist/sdk/src/transport/ws/client.d.ts.map +1 -0
  844. package/dist/sdk/src/transport/ws/index.d.ts +2 -0
  845. package/dist/sdk/src/transport/ws/index.d.ts.map +1 -0
  846. package/dist/sdk/src/transport/ws/server.d.ts +2 -0
  847. package/dist/sdk/src/transport/ws/server.d.ts.map +1 -0
  848. package/dist/sdk/src/transport.d.ts +31 -0
  849. package/dist/sdk/src/transport.d.ts.map +1 -0
  850. package/dist/sdk/src/types/index.d.ts +2 -0
  851. package/dist/sdk/src/types/index.d.ts.map +1 -0
  852. package/dist/sdk/src/types.d.ts +140 -0
  853. package/dist/sdk/src/types.d.ts.map +1 -0
  854. package/dist/sdk/src/workspace.d.ts +32 -0
  855. package/dist/sdk/src/workspace.d.ts.map +1 -0
  856. package/dist/sdk/store.js +4 -0
  857. package/dist/sdk/store.js.map +1 -0
  858. package/dist/sdk/telemetry.js +4 -0
  859. package/dist/sdk/telemetry.js.map +1 -0
  860. package/dist/sdk/transport/ws/client.js +4 -0
  861. package/dist/sdk/transport/ws/client.js.map +1 -0
  862. package/dist/sdk/transport/ws/server.js +4 -0
  863. package/dist/sdk/transport/ws/server.js.map +1 -0
  864. package/dist/sdk/transport/ws.js +6 -0
  865. package/dist/sdk/transport/ws.js.map +1 -0
  866. package/dist/sdk/transport.js +7 -0
  867. package/dist/sdk/transport.js.map +1 -0
  868. package/dist/sdk/types.js +4 -0
  869. package/dist/sdk/types.js.map +1 -0
  870. package/dist/secrets/index.js +5 -0
  871. package/dist/secrets/index.js.map +1 -0
  872. package/dist/secrets/src/index.d.ts +12 -0
  873. package/dist/secrets/src/index.d.ts.map +1 -0
  874. package/dist/secrets/src/lifecycle.d.ts +51 -0
  875. package/dist/secrets/src/lifecycle.d.ts.map +1 -0
  876. package/dist/secrets/src/providers/env.d.ts +26 -0
  877. package/dist/secrets/src/providers/env.d.ts.map +1 -0
  878. package/dist/secrets/src/providers/local.d.ts +63 -0
  879. package/dist/secrets/src/providers/local.d.ts.map +1 -0
  880. package/dist/secrets/src/router.d.ts +91 -0
  881. package/dist/secrets/src/router.d.ts.map +1 -0
  882. package/dist/session/index.js +5 -0
  883. package/dist/session/index.js.map +1 -0
  884. package/dist/session/src/dispatcher.d.ts +246 -0
  885. package/dist/session/src/dispatcher.d.ts.map +1 -0
  886. package/dist/session/src/index.d.ts +6 -0
  887. package/dist/session/src/index.d.ts.map +1 -0
  888. package/dist/session/src/mentions.d.ts +80 -0
  889. package/dist/session/src/mentions.d.ts.map +1 -0
  890. package/dist/session/src/types.d.ts +109 -0
  891. package/dist/session/src/types.d.ts.map +1 -0
  892. package/dist/sessions-2IUX4P3P.js +5 -0
  893. package/dist/sessions-2IUX4P3P.js.map +1 -0
  894. package/dist/setup-BMTC562F.js +488 -0
  895. package/dist/setup-BMTC562F.js.map +1 -0
  896. package/dist/skills-CRL3VJNN.js +7 -0
  897. package/dist/skills-CRL3VJNN.js.map +1 -0
  898. package/dist/store/index.js +4 -0
  899. package/dist/store/index.js.map +1 -0
  900. package/dist/store/react.js +40 -0
  901. package/dist/store/react.js.map +1 -0
  902. package/dist/store/src/index.d.ts +4 -0
  903. package/dist/store/src/index.d.ts.map +1 -0
  904. package/dist/store/src/react.d.ts +75 -0
  905. package/dist/store/src/react.d.ts.map +1 -0
  906. package/dist/store/src/resource-client.d.ts +128 -0
  907. package/dist/store/src/resource-client.d.ts.map +1 -0
  908. package/dist/store/src/store.d.ts +172 -0
  909. package/dist/store/src/store.d.ts.map +1 -0
  910. package/dist/store/src/types.d.ts +248 -0
  911. package/dist/store/src/types.d.ts.map +1 -0
  912. package/dist/store/src/vue.d.ts +52 -0
  913. package/dist/store/src/vue.d.ts.map +1 -0
  914. package/dist/store/vue.js +23 -0
  915. package/dist/store/vue.js.map +1 -0
  916. package/dist/store-client-X7Y7D5QX.js +14 -0
  917. package/dist/store-client-X7Y7D5QX.js.map +1 -0
  918. package/dist/telemetry/index.js +4 -0
  919. package/dist/telemetry/index.js.map +1 -0
  920. package/dist/telemetry/src/config.d.ts +28 -0
  921. package/dist/telemetry/src/config.d.ts.map +1 -0
  922. package/dist/telemetry/src/context.d.ts +36 -0
  923. package/dist/telemetry/src/context.d.ts.map +1 -0
  924. package/dist/telemetry/src/index.d.ts +5 -0
  925. package/dist/telemetry/src/index.d.ts.map +1 -0
  926. package/dist/telemetry/src/noop.d.ts +25 -0
  927. package/dist/telemetry/src/noop.d.ts.map +1 -0
  928. package/dist/telemetry/src/otel/exporter.d.ts +17 -0
  929. package/dist/telemetry/src/otel/exporter.d.ts.map +1 -0
  930. package/dist/telemetry/src/otel/gen-ai.d.ts +17 -0
  931. package/dist/telemetry/src/otel/gen-ai.d.ts.map +1 -0
  932. package/dist/telemetry/src/otel/provider.d.ts +34 -0
  933. package/dist/telemetry/src/otel/provider.d.ts.map +1 -0
  934. package/dist/telemetry/src/types.d.ts +182 -0
  935. package/dist/telemetry/src/types.d.ts.map +1 -0
  936. package/dist/transport/index.js +7 -0
  937. package/dist/transport/index.js.map +1 -0
  938. package/dist/transport/src/index.d.ts +2 -0
  939. package/dist/transport/src/index.d.ts.map +1 -0
  940. package/dist/transport/src/ws/client.d.ts +72 -0
  941. package/dist/transport/src/ws/client.d.ts.map +1 -0
  942. package/dist/transport/src/ws/index.d.ts +3 -0
  943. package/dist/transport/src/ws/index.d.ts.map +1 -0
  944. package/dist/transport/src/ws/server.d.ts +67 -0
  945. package/dist/transport/src/ws/server.d.ts.map +1 -0
  946. package/dist/transport/ws/client.js +4 -0
  947. package/dist/transport/ws/client.js.map +1 -0
  948. package/dist/transport/ws/server.js +4 -0
  949. package/dist/transport/ws/server.js.map +1 -0
  950. package/dist/transport/ws.js +6 -0
  951. package/dist/transport/ws.js.map +1 -0
  952. package/dist/tui/index.js +471 -0
  953. package/dist/tui/index.js.map +1 -0
  954. package/dist/tui/src/index.d.ts +4 -0
  955. package/dist/tui/src/index.d.ts.map +1 -0
  956. package/dist/tui/src/repl-renderer.d.ts +31 -0
  957. package/dist/tui/src/repl-renderer.d.ts.map +1 -0
  958. package/dist/tui/src/repl-session.d.ts +69 -0
  959. package/dist/tui/src/repl-session.d.ts.map +1 -0
  960. package/dist/tui/src/repl.d.ts +49 -0
  961. package/dist/tui/src/repl.d.ts.map +1 -0
  962. package/dist/tui/src/telemetry.d.ts +88 -0
  963. package/dist/tui/src/telemetry.d.ts.map +1 -0
  964. package/dist/types/index.js +4 -0
  965. package/dist/types/index.js.map +1 -0
  966. package/dist/types/manifests.js +4 -0
  967. package/dist/types/manifests.js.map +1 -0
  968. package/dist/types/src/capabilities.d.ts +398 -0
  969. package/dist/types/src/capabilities.d.ts.map +1 -0
  970. package/dist/types/src/envelope.d.ts +120 -0
  971. package/dist/types/src/envelope.d.ts.map +1 -0
  972. package/dist/types/src/events.d.ts +1075 -0
  973. package/dist/types/src/events.d.ts.map +1 -0
  974. package/dist/types/src/flow.d.ts +312 -0
  975. package/dist/types/src/flow.d.ts.map +1 -0
  976. package/dist/types/src/index.d.ts +57 -0
  977. package/dist/types/src/index.d.ts.map +1 -0
  978. package/dist/types/src/lifecycle.d.ts +269 -0
  979. package/dist/types/src/lifecycle.d.ts.map +1 -0
  980. package/dist/types/src/logging.d.ts +161 -0
  981. package/dist/types/src/logging.d.ts.map +1 -0
  982. package/dist/types/src/manifests/_shared.d.ts +162 -0
  983. package/dist/types/src/manifests/_shared.d.ts.map +1 -0
  984. package/dist/types/src/manifests/agent.d.ts +343 -0
  985. package/dist/types/src/manifests/agent.d.ts.map +1 -0
  986. package/dist/types/src/manifests/connector.d.ts +126 -0
  987. package/dist/types/src/manifests/connector.d.ts.map +1 -0
  988. package/dist/types/src/manifests/contract.d.ts +90 -0
  989. package/dist/types/src/manifests/contract.d.ts.map +1 -0
  990. package/dist/types/src/manifests/index.d.ts +40 -0
  991. package/dist/types/src/manifests/index.d.ts.map +1 -0
  992. package/dist/types/src/manifests/mcp-server.d.ts +42 -0
  993. package/dist/types/src/manifests/mcp-server.d.ts.map +1 -0
  994. package/dist/types/src/manifests/mount.d.ts +93 -0
  995. package/dist/types/src/manifests/mount.d.ts.map +1 -0
  996. package/dist/types/src/manifests/persona.d.ts +90 -0
  997. package/dist/types/src/manifests/persona.d.ts.map +1 -0
  998. package/dist/types/src/manifests/preset.d.ts +704 -0
  999. package/dist/types/src/manifests/preset.d.ts.map +1 -0
  1000. package/dist/types/src/manifests/prompt.d.ts +90 -0
  1001. package/dist/types/src/manifests/prompt.d.ts.map +1 -0
  1002. package/dist/types/src/manifests/ruleset.d.ts +90 -0
  1003. package/dist/types/src/manifests/ruleset.d.ts.map +1 -0
  1004. package/dist/types/src/manifests/skill.d.ts +2391 -0
  1005. package/dist/types/src/manifests/skill.d.ts.map +1 -0
  1006. package/dist/types/src/mentions.d.ts +49 -0
  1007. package/dist/types/src/mentions.d.ts.map +1 -0
  1008. package/dist/types/src/messaging.d.ts +105 -0
  1009. package/dist/types/src/messaging.d.ts.map +1 -0
  1010. package/dist/types/src/protocol.d.ts +201 -0
  1011. package/dist/types/src/protocol.d.ts.map +1 -0
  1012. package/dist/types/src/reactions.d.ts +34 -0
  1013. package/dist/types/src/reactions.d.ts.map +1 -0
  1014. package/dist/types/src/runtime.d.ts +219 -0
  1015. package/dist/types/src/runtime.d.ts.map +1 -0
  1016. package/dist/types/src/transport.d.ts +64 -0
  1017. package/dist/types/src/transport.d.ts.map +1 -0
  1018. package/dist/types/src/version.d.ts +129 -0
  1019. package/dist/types/src/version.d.ts.map +1 -0
  1020. package/dist/validator-764EQNM3.js +5 -0
  1021. package/dist/validator-764EQNM3.js.map +1 -0
  1022. package/dist/workspace-plugin/adapters/mcp.js +259 -0
  1023. package/dist/workspace-plugin/adapters/mcp.js.map +1 -0
  1024. package/dist/workspace-plugin/adapters/omp.js +251 -0
  1025. package/dist/workspace-plugin/adapters/omp.js.map +1 -0
  1026. package/dist/workspace-plugin/index.js +6 -0
  1027. package/dist/workspace-plugin/index.js.map +1 -0
  1028. package/dist/workspace-plugin/src/adapters/claude-code.d.ts +17 -0
  1029. package/dist/workspace-plugin/src/adapters/claude-code.d.ts.map +1 -0
  1030. package/dist/workspace-plugin/src/adapters/mcp.d.ts +78 -0
  1031. package/dist/workspace-plugin/src/adapters/mcp.d.ts.map +1 -0
  1032. package/dist/workspace-plugin/src/adapters/omp.d.ts +60 -0
  1033. package/dist/workspace-plugin/src/adapters/omp.d.ts.map +1 -0
  1034. package/dist/workspace-plugin/src/index.d.ts +8 -0
  1035. package/dist/workspace-plugin/src/index.d.ts.map +1 -0
  1036. package/dist/workspace-plugin/src/plugin.d.ts +83 -0
  1037. package/dist/workspace-plugin/src/plugin.d.ts.map +1 -0
  1038. package/dist/workspace-plugin/src/store.d.ts +36 -0
  1039. package/dist/workspace-plugin/src/store.d.ts.map +1 -0
  1040. package/dist/workspace-plugin/src/tools/connectors.d.ts +94 -0
  1041. package/dist/workspace-plugin/src/tools/connectors.d.ts.map +1 -0
  1042. package/dist/workspace-plugin/src/tools/flows.d.ts +54 -0
  1043. package/dist/workspace-plugin/src/tools/flows.d.ts.map +1 -0
  1044. package/dist/workspace-plugin/src/tools/mounts.d.ts +51 -0
  1045. package/dist/workspace-plugin/src/tools/mounts.d.ts.map +1 -0
  1046. package/dist/workspace-plugin/src/tools/sessions.d.ts +35 -0
  1047. package/dist/workspace-plugin/src/tools/sessions.d.ts.map +1 -0
  1048. package/dist/workspace-plugin/src/tools/skills.d.ts +75 -0
  1049. package/dist/workspace-plugin/src/tools/skills.d.ts.map +1 -0
  1050. package/dist/workspace-plugin/src/tools/validator.d.ts +64 -0
  1051. package/dist/workspace-plugin/src/tools/validator.d.ts.map +1 -0
  1052. package/dist/workspace-plugin/src/types.d.ts +73 -0
  1053. package/dist/workspace-plugin/src/types.d.ts.map +1 -0
  1054. package/dist/workspace-plugin/src/utils/ai-assets.d.ts +16 -0
  1055. package/dist/workspace-plugin/src/utils/ai-assets.d.ts.map +1 -0
  1056. package/dist/workspace-plugin/src/utils/project-dir.d.ts +23 -0
  1057. package/dist/workspace-plugin/src/utils/project-dir.d.ts.map +1 -0
  1058. package/package.json +646 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../bridge/src/drivers/claude-sdk.ts"],"names":["z"],"mappings":"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","file":"claude-sdk.js","sourcesContent":["import { spawnSync } from \"node:child_process\";\nimport { existsSync } from \"node:fs\";\nimport { createRequire } from \"node:module\";\nimport type {\n SDKAssistantMessage,\n SDKMessage,\n SDKUserMessage,\n Options as SdkOptions,\n Query as SdkQuery,\n query as sdkQueryFn,\n} from \"@anthropic-ai/claude-agent-sdk\";\nimport type { Logger, TokenUsage } from \"@skaile/workspaces/types\";\n// Static namespace import so bun --compile bundles zod into the binary.\n// Dynamic import(\"zod\") via a string variable evades bun's static analysis\n// and fails at runtime inside /$bunfs/. The unwrap (zNS.z ?? zNS.default\n// ?? zNS) handles both bun's native ESM and vitest's CJS-interop resolver,\n// which return the zod namespace at different keys.\nimport * as zNS from \"zod\";\nconst zStatic: any = (zNS as any).z ?? (zNS as any).default ?? zNS;\nimport { dispatchCapability } from \"../capability-dispatch.js\";\nimport { AuthError, classifyClaudeSdkError } from \"../error-classifier.js\";\nimport { getBridgeLogger } from \"../logger.js\";\nimport { fetchProviderModels, type ModelEntry } from \"../models.js\";\nimport { DRIVER_CATALOG, registerDriver } from \"../registry.js\";\nimport {\n type AgentConfig,\n AgentDriver,\n type AgentEvent,\n type AgentMessage,\n type ContentBlock,\n type DriverInfo,\n type SlashCommandInfo,\n type ToolCall,\n} from \"../types.js\";\n\n/**\n * Best-effort conversion of a JSON Schema object's top-level `properties` into\n * a `Record<string, ZodTypeAny>` accepted by `createSdkMcpServer`'s\n * `inputSchema`. The SDK only needs a shallow shape to advertise to the LLM —\n * deep validation is handled by the registry's Zod schema in `hooks.invoke()`.\n *\n * Returns null on schemas the bridge can't represent (anyOf at the root, etc.);\n * the caller falls back to a permissive `{ args: z.unknown().optional() }`.\n */\nfunction jsonSchemaToZodLoose(\n schema: Record<string, unknown>,\n z: any,\n): Record<string, unknown> | null {\n const props = (schema?.properties ?? null) as Record<string, any> | null;\n if (!props || typeof props !== \"object\") return null;\n const required = new Set(Array.isArray(schema?.required) ? (schema.required as string[]) : []);\n const out: Record<string, unknown> = {};\n for (const [key, def] of Object.entries(props)) {\n let zod: any;\n switch (def?.type) {\n case \"string\":\n zod = z.string();\n break;\n case \"number\":\n case \"integer\":\n zod = z.number();\n break;\n case \"boolean\":\n zod = z.boolean();\n break;\n case \"array\":\n zod = z.array(z.any());\n break;\n case \"object\":\n zod = z.record(z.any());\n break;\n default:\n zod = z.any();\n }\n if (def?.description && typeof def.description === \"string\") {\n zod = zod.describe(def.description);\n }\n if (!required.has(key)) zod = zod.optional();\n out[key] = zod;\n }\n return out;\n}\n\n// The Claude Agent SDK bundles ajv which uses CJS require() internally.\n// Polyfill globalThis.require so it works in a pure ESM context.\n// In CJS (e.g. NestJS webpack bundle), require already exists — skip.\nif (typeof globalThis.require === \"undefined\") {\n try {\n // Dynamic eval avoids static parse errors in CJS bundlers\n // biome-ignore lint/security/noGlobalEval: intentional — CJS/ESM interop requires dynamic eval\n const metaUrl = (0, eval)(\"import.meta.url\");\n (globalThis as any).require = createRequire(metaUrl);\n } catch {\n // CJS context — require is already available via the module system\n }\n}\n\n/**\n * Agent driver for the Anthropic Claude Agent SDK.\n *\n * Runs the agent in-process — no subprocess is spawned. Anthropic models only.\n *\n * @remarks\n * **Lazy-loading** — `@anthropic-ai/claude-agent-sdk` is imported dynamically inside\n * `start()` so it remains an optional peer dependency. If the package is not installed\n * an actionable error is thrown. The CJS/ESM `require` polyfill at the top of this file\n * is required because the SDK bundles ajv which uses `require()` internally.\n *\n * **Session continuity** — each `prompt()` tries to feed into a live SDK query via\n * `streamInput()` (persistent multi-turn mode). When no live query exists it starts a\n * new one, applying a three-level resume chain:\n * 1. `resumeSessionId` from config (explicit caller resume)\n * 2. `sessionId` captured from the current driver lifetime\n * 3. `continue: true` (resume most recent session in cwd from disk)\n *\n * **Tool synthesis** — emits `tool_call` and `tool_execution_end` events that the\n * runner's activity tracker needs for file-change detection. These are not native SDK\n * events; they are synthesised from `assistant` and `user` SDK messages.\n *\n * **agentName** — maps to the `agent` SDK query option. The SDK reads\n * `.claude/agents/<agentName>.md` from `cwd` for model, tools, and system prompt.\n * Requires the agent file to have been rendered by `asset-manager` (claudeCodeRenderer)\n * during `skaile install`. Ignored by other drivers.\n *\n * **mcpServers** — `AgentConfig.mcpServers` passes in-process MCP server instances to\n * the SDK's `mcpServers` query option. Used by `workspaces/connectors` to inject\n * resource tools as native `tool_use`. Ignored by other drivers.\n *\n * @docLink packages/bridge/drivers#claude-sdk-driver\n */\nexport class ClaudeSdkDriver extends AgentDriver {\n readonly driverInfo: DriverInfo = {\n id: \"claude-sdk\",\n name: \"Claude Agent SDK\",\n modelAgnostic: false,\n supportsInBandAbort: true,\n };\n\n private readonly log: Logger = getBridgeLogger(\"claude-sdk\");\n private config: AgentConfig;\n private abortController: AbortController | null = null;\n private running = false;\n private sdk: { query: typeof sdkQueryFn } | null = null;\n private toolIdToName = new Map<string, string>();\n private prevText = \"\";\n\n /** Active query — may stay alive between turns if streamInput works. */\n private query: SdkQuery | null = null;\n /** Resolves when the current turn completes. */\n private turnResolve: (() => void) | null = null;\n /** Rejects when the current turn errors. */\n private turnReject: ((err: Error) => void) | null = null;\n /** Guards against duplicate agent_end emissions per turn. */\n private turnCompleted = false;\n /** Tracks whether a session has been started (for continue: true). */\n private hasSession = false;\n /** Session ID from the SDK — used for streamInput messages. */\n private sessionId = \"\";\n /** Cached slash commands discovered from the SDK. */\n private cachedCommands: SlashCommandInfo[] = [];\n /** Token usage from the most recent completed turn. */\n private _lastTokens: TokenUsage | null = null;\n /** Context window size from the most recent result's modelUsage. */\n private _contextWindow: number | null = null;\n /**\n * `true` when the active credential is a Claude Code OAuth subscription\n * (no API key in config) rather than a raw `ANTHROPIC_API_KEY`. Set on\n * every `startQuery` because the credential source can be reconfigured\n * at runtime via `configure`. Threaded into `classifyClaudeSdkError` so\n * upstream auth-shaped failures get a quota-aware hint when warranted.\n */\n private usingOauthCredential = false;\n\n /**\n * @param config - Driver configuration. Claude SDK-relevant fields:\n * - `cwd` — working directory; SDK session files and agent definitions are read from here.\n * - `model` — Anthropic model identifier (e.g. `\"claude-sonnet-4-5\"`). Defaults to `\"sonnet\"`.\n * - `apiKeys.anthropic` / `env.ANTHROPIC_API_KEY` — API key forwarded to the SDK query.\n * - `agentName` — name of a `.claude/agents/<name>.md` agent definition to use as identity.\n * - `mcpServers` — in-process MCP server instances injected as native `tool_use` tools.\n * - `systemPrompt` — appended to the `claude_code` preset system prompt.\n * - `resumeSessionId` — SDK session UUID to resume from a prior driver lifetime.\n * - `maxTurns` — maximum agentic turns per `prompt()` call (default: 15).\n */\n constructor(config: AgentConfig) {\n super();\n this.config = config;\n }\n\n override get runtimeSessionId(): string | undefined {\n return this.sessionId || undefined;\n }\n\n override reconfigure(patch: Partial<Pick<AgentConfig, \"model\" | \"thinking\" | \"effort\">>): void {\n if (patch.model !== undefined) this.config.model = patch.model;\n if (patch.thinking !== undefined) this.config.thinking = patch.thinking;\n if (patch.effort !== undefined) this.config.effort = patch.effort;\n }\n\n override getModel(): string | undefined {\n return this.config.model;\n }\n\n /**\n * Dynamically imports `@anthropic-ai/claude-agent-sdk`.\n *\n * @throws {Error} When the SDK package is not installed. Install it with\n * `bun add @anthropic-ai/claude-agent-sdk`.\n */\n public async start(): Promise<void> {\n try {\n this.sdk = await import(\"@anthropic-ai/claude-agent-sdk\");\n this.log.info(\"Claude Agent SDK loaded\");\n } catch {\n throw new Error(\n \"Claude Agent SDK not installed. Run: bun add @anthropic-ai/claude-agent-sdk\",\n );\n }\n }\n\n /**\n * Sends a user message to the Claude Agent SDK and resolves when the turn completes.\n *\n * If a live SDK query already exists (from a prior turn in this session) the message\n * is fed via `streamInput()` for efficient multi-turn continuity. Otherwise a new query\n * is started applying the resume chain described in the class-level remarks.\n *\n * @param message - Plain-text user prompt.\n * @throws {Error} When the SDK reports a fatal error that cannot be auto-recovered.\n *\n * @remarks\n * A single automatic retry is performed when the SDK throws\n * \"No conversation found with session ID …\" — a recoverable stale-resume error that\n * occurs after a container crash that prevented the SDK from flushing its session file.\n */\n public async prompt(message: string, _retryCount = 0): Promise<void> {\n if (!this.sdk) await this.start();\n\n // When the catch block decides to recurse (stale-resume or auth-error\n // retry), the recursive prompt() sets fresh turnResolve / turnReject on\n // `this` synchronously before its first `await`. If the outer finally\n // ran unconditionally it would clobber those handlers, leaving the\n // recursive turn's promise unresolvable — completeTurn would see\n // `this.turnResolve === null` and the recursive prompt() would hang\n // forever. The flag tells the finally to skip state-reset on the\n // retry path.\n //\n // EVERY retry branch in the catch block MUST set `retrying = true`\n // before returning the recursive call. Adding a third retry branch\n // without setting this flag will re-introduce a hard-to-diagnose\n // hang: the recursive prompt's turnPromise never resolves because\n // its resolver was nulled by this function's finally.\n let retrying = false;\n\n // Clear last-turn usage on entry, except when this is a retry recursion\n // (auth-error / stale-resume) — the retry shares the same logical turn\n // so we keep prior usage available until the SDK reports a fresh value.\n if (_retryCount === 0) this._lastTokens = null;\n\n this.running = true;\n this.prevText = \"\";\n this.turnCompleted = false;\n\n // Install the per-turn resolver before we send any input. Fast turns can\n // complete on the next microtask; if the result lands before turnResolve is\n // assigned, completeTurn() has nothing to resolve and prompt() hangs forever.\n const turnPromise = new Promise<void>((resolve, reject) => {\n this.turnResolve = resolve;\n this.turnReject = reject;\n });\n\n try {\n if (this.query) {\n // Try feeding into the live query via streamInput (persistent mode)\n const userMsg = this.buildUserMessage(message);\n this.query.streamInput(this.singleItemIterable(userMsg));\n } else {\n // No live query — start a new one (continue: true resumes session)\n await this.startQuery(message);\n }\n } catch (err) {\n this.turnResolve = null;\n this.turnReject = null;\n this.running = false;\n throw err;\n }\n\n // Wait for this turn to complete\n try {\n await turnPromise;\n } catch (err) {\n // The Claude Agent SDK throws \"No conversation found with session ID\n // <uuid>\" when we try to resume a session whose JSONL persistence was\n // lost — most commonly after a container crash that killed the query\n // mid-stream, so the driver captured the session id but the SDK never\n // flushed the session file to disk. The resume is permanently broken;\n // retry the prompt once with a fresh session so the user can continue\n // (and emit a non-fatal warning so the UI can surface that Claude's\n // short-term memory was dropped).\n const errMsg = err instanceof Error ? err.message : String(err);\n const isStaleResume =\n _retryCount === 0 && /No conversation found with session ID/i.test(errMsg);\n if (isStaleResume) {\n const staleId = this.config.resumeSessionId || this.sessionId || \"unknown\";\n this.log.warn(\"stale Claude Code session, retrying with a fresh session\", { staleId });\n // Structured event for the platform's resume outcome listener.\n // Emitted before the non-fatal error so the gateway records the\n // outcome regardless of what surfaces the error string.\n this.emit(\"agent-event\", {\n type: \"resume_failed\",\n resumeSessionId: staleId,\n reason: \"jsonl_lost\",\n } satisfies AgentEvent);\n this.emit(\"agent-event\", {\n type: \"error\",\n error:\n \"Claude Code session state was lost (likely a prior crash). Restarting with a fresh session — previous conversation context is not available.\",\n fatal: false,\n } satisfies AgentEvent);\n this.sessionId = \"\";\n this.hasSession = false;\n this.query = null;\n // Clear the config override too — leaving it in place would make the\n // retry re-trigger the same failure via startQuery's resume chain.\n this.config.resumeSessionId = undefined;\n this.turnResolve = null;\n this.turnReject = null;\n this.running = false;\n retrying = true;\n return this.prompt(message, _retryCount + 1);\n }\n // ── Auth-error retry: ask the runner to refresh the credential, then\n // replay the in-flight prompt once. Centralising this inside the driver\n // means every `driver.prompt(...)` call site (serve handler, compaction\n // orchestrator, flow orchestrator, future call sites) gets self-healing\n // for free — no per-call-site wrapping. The runner provides the\n // `onAuthError` callback in `AgentConfig`; standalone CLI / forge\n // sessions leave it unset and surface the original `AuthError`.\n //\n // No idempotence gate around `onAuthError`: a single driver instance\n // owns exactly one consumer loop, which means at most one auth error\n // surfaces per turn. Concurrent prompt() calls feed the same query via\n // streamInput rather than running parallel consumer loops, so two\n // simultaneous 401s for the same driver are not physically possible.\n // The runner's previous in-flight Map (Step 9b of the original spec)\n // existed to coalesce the per-call-site wrappers and is unnecessary\n // here.\n //\n // Spec: `_devlog/specs/2026-05-07-unified-credential-mediation.md`\n // § \"Runner-side handling on 401\" (moved bridge-side).\n const isAuthError = err instanceof AuthError && _retryCount === 0;\n if (isAuthError && this.config.onAuthError) {\n this.log.info(\"auth error caught; invoking onAuthError refresh callback\");\n // Protocol v3: the callback returns a typed `CredentialMint`. A\n // success branch (`ok: true`) means the runner has provisioned a\n // fresh credential and the driver should retry. A failure branch\n // (`ok: false`) carries a stable `code` the runner already\n // surfaced upstream; the driver surfaces the original `AuthError`\n // to its caller without retrying.\n let refreshed = false;\n try {\n const mint = await this.config.onAuthError({\n configId: this.config.aiProviderConfigId ?? \"\",\n });\n refreshed = mint.ok;\n if (!mint.ok) {\n this.log.info(\"onAuthError reported refresh failure; surfacing AuthError\", {\n code: mint.code,\n });\n }\n } catch (refreshErr) {\n this.log.warn(\"onAuthError callback threw; surfacing original AuthError\", {\n error: refreshErr instanceof Error ? refreshErr.message : String(refreshErr),\n });\n }\n if (refreshed) {\n this.log.info(\"credentials refreshed; retrying prompt\");\n // Drop the dead SDK query so the next prompt() invocation creates a\n // fresh one (which reads the rewritten credentials file). Keep\n // sessionId / hasSession so the new query resumes the same Claude\n // SDK session.\n this.query = null;\n this.turnResolve = null;\n this.turnReject = null;\n this.running = false;\n retrying = true;\n return this.prompt(message, _retryCount + 1);\n }\n }\n throw err;\n } finally {\n // Skip state reset when we recursed — the inner prompt() owns the\n // turnResolve / turnReject handlers and we must not clobber them.\n // See the `retrying` flag declared at the top of this function.\n if (!retrying) {\n this.turnResolve = null;\n this.turnReject = null;\n this.running = false;\n }\n }\n }\n\n private async startQuery(message: string): Promise<void> {\n this.abortController = new AbortController();\n\n const apiKey =\n this.config.apiKeys?.anthropic ||\n this.config.env?.ANTHROPIC_API_KEY ||\n process.env.ANTHROPIC_API_KEY;\n\n // When no apiKey is configured the SDK falls back to OAuth credentials\n // discovered via `settingSources: [\"user\"]` (i.e. `~/.claude/.credentials.json`).\n // The driver remembers this so the error classifier can branch on the\n // credential type — auth-shaped failures from OAuth subscriptions\n // overwhelmingly correlate with quota/rate-limit, not invalid tokens.\n this.usingOauthCredential = !apiKey;\n\n const claudePath = this.findClaudeBinary();\n\n const options: SdkOptions = {\n cwd: this.config.cwd,\n // Load project + user settings so .claude/skills/ are discovered\n settingSources: [\"user\", \"project\"],\n // Use full Claude Code tool preset so skills, agents, etc. work\n tools: { type: \"preset\", preset: \"claude_code\" },\n permissionMode: \"bypassPermissions\",\n allowDangerouslySkipPermissions: true,\n abortController: this.abortController,\n model: this.config.model || \"sonnet\",\n maxTurns: this.config.maxTurns ?? 15,\n includePartialMessages: true,\n // Thinking mode — maps simple string config to SDK ThinkingConfig objects\n ...(this.config.thinking ? { thinking: this.mapThinkingConfig(this.config.thinking) } : {}),\n // Reasoning effort — passed directly to the SDK\n ...(this.config.effort ? { effort: this.config.effort } : {}),\n hooks: {},\n stderr: (data: string) => this.log.warn(\"claude stderr\", { line: data.trim() }),\n ...(claudePath ? { pathToClaudeCodeExecutable: claudePath } : {}),\n ...(this.config.systemPrompt\n ? {\n systemPrompt: {\n type: \"preset\",\n preset: \"claude_code\",\n append: this.config.systemPrompt,\n },\n }\n : {}),\n // ── Session continuity ────────────────────────────────────────────────\n // Three-level fallback ensures the right session is always resumed:\n // resumeSessionId — caller explicitly wants this session (skaile resume)\n // sessionId — a session was already started this driver lifetime (multi-turn)\n // continue: true — resume the most recent session in cwd (between restarts)\n // (none) — start fresh\n ...(this.config.resumeSessionId\n ? { resume: this.config.resumeSessionId }\n : this.sessionId\n ? { resume: this.sessionId }\n : this.hasSession\n ? { continue: true }\n : {}),\n // ── Connector tool injection ──────────────────────────────────────────\n // In-process MCP servers from ConnectorManager (buildSdkConnectorTools in resources.ts).\n // These expose skaile.yaml connectors as native tool_use calls inside the session.\n // omp does not use this — it falls back to `skaile res <id> <op>` CLI commands\n // documented in the system prompt section (buildConnectorPromptSection).\n //\n // Protocol v2: when `config.capabilities` is provided, the runner's\n // CapabilityRegistry contributes an additional `skaile-capabilities`\n // synthetic MCP server alongside any pre-existing `mcpServers`. Tool\n // calls into that server route back through `hooks.invoke()` so the\n // registry's per-handler logger fires and fire-and-forget / render\n // semantics apply uniformly.\n ...(await this.buildEffectiveMcpServers()),\n // ── Main-agent handoff ────────────────────────────────────────────────\n // agentName (from AgentConfig) is the equivalent of `claude --agent <name>`.\n // The SDK reads .claude/agents/<agentName>.md from the cwd; that file was\n // rendered by asset-manager (claudeCodeRenderer) during `skaile install`.\n // Its YAML frontmatter sets model / tools / maxTurns; its markdown body is the\n // assembled system prompt (SOUL + fragments + RULES + abilities + contracts).\n // Omitting agentName uses Claude Code's default identity (no custom agent file).\n ...(this.config.agentName ? { agent: this.config.agentName } : {}),\n // Tool restrictions from agent.yaml — always include a wildcard allow-entry for each\n // injected MCP server so connector tools aren't silently blocked by an allowlist.\n ...this.buildToolRestrictions(),\n };\n\n this.log.debug(\"query start\", {\n model: this.config.model || \"default\",\n session: this.config.resumeSessionId || this.sessionId || this.config.sessionId || \"new\",\n });\n\n const { query } = this.sdk!;\n const queryArgs: { prompt: string; options: SdkOptions; apiKey?: string } = {\n prompt: message,\n options,\n };\n if (apiKey) queryArgs.apiKey = apiKey;\n\n this.query = query(queryArgs);\n this.consumeMessages();\n }\n\n override getSlashCommands(): SlashCommandInfo[] {\n return this.cachedCommands;\n }\n\n /**\n * Compose the MCP servers passed to the SDK query. Merges the legacy\n * `config.mcpServers` (connectors / workspace plugin / declarative skaile.yaml\n * entries) with a synthetic `skaile-capabilities` server built from the\n * runner-provided {@link BridgeCapabilityHooks} when present.\n *\n * Returns an empty options patch when neither source is configured, so legacy\n * v1 sessions remain unaffected.\n */\n private async buildEffectiveMcpServers(): Promise<Pick<SdkOptions, \"mcpServers\">> {\n const out: Record<string, unknown> = {};\n if (this.config.mcpServers) {\n Object.assign(out, this.config.mcpServers);\n }\n\n const hooks = this.config.capabilities;\n if (hooks) {\n const capServer = await this.buildCapabilityMcpServer();\n if (capServer) {\n out[\"skaile-capabilities\"] = capServer;\n }\n }\n\n return Object.keys(out).length > 0 ? { mcpServers: out as SdkOptions[\"mcpServers\"] } : {};\n }\n\n /**\n * Build the synthetic MCP server that exposes registered capabilities to the\n * Claude Agent SDK. Lazy-imports `createSdkMcpServer` from the SDK and `zod`\n * (an SDK peer) since both are optional peers of this bridge.\n *\n * Returns null when the SDK or zod is unavailable, or when the registry\n * exposes no tools — leaving the legacy `mcpServers` untouched.\n */\n private async buildCapabilityMcpServer(): Promise<unknown | null> {\n const hooks = this.config.capabilities;\n if (!hooks) return null;\n const tools = hooks.composeTools();\n if (tools.length === 0) return null;\n\n let sdk: any;\n try {\n sdk = await import(\"@anthropic-ai/claude-agent-sdk\");\n } catch {\n this.log.warn(\"claude-agent-sdk unavailable; cannot build capability MCP server\");\n return null;\n }\n // Static import below at module scope ensures bun --compile bundles zod\n // into the binary; dynamic import(\"zod\") via a string variable evades\n // bun's static analysis and fails at runtime inside /$bunfs/.\n const z: any = zStatic;\n\n // Build per-tool entries. Schemas arrive from the registry as JSON Schema\n // (Zod -> zodToJsonSchema in `defineCapability`). The Claude SDK accepts\n // either a Zod object or a record of Zod fields; we mirror the existing\n // `buildSdkConnectorTools` path which uses an inputSchema record. The full\n // input contract is enforced server-side by `hooks.invoke()` (Zod parse).\n const sdkTools = tools.map((tool) => ({\n name: tool.name,\n description: tool.description,\n // Pass through the JSON Schema object directly. The SDK forwards it to\n // the LLM as the function parameter spec. Concrete validation runs in\n // `hooks.invoke()`, not the SDK.\n inputSchema: jsonSchemaToZodLoose(tool.parameters, z) ?? { args: z.unknown().optional() },\n handler: async (input: unknown) => {\n const callId = `cap-${Date.now()}-${Math.floor(Math.random() * 1e6)}`;\n try {\n const dispatch = await dispatchCapability(hooks, callId, tool.name, input, (err) =>\n this.log.warn(\"background capability handler failed\", {\n name: tool.name,\n error: String(err),\n }),\n );\n const text =\n typeof dispatch.result === \"string\"\n ? dispatch.result\n : JSON.stringify(dispatch.result ?? {});\n return { content: [{ type: \"text\" as const, text }] };\n } catch (err: any) {\n return {\n content: [{ type: \"text\" as const, text: `Error: ${err?.message ?? String(err)}` }],\n isError: true,\n };\n }\n },\n }));\n\n return sdk.createSdkMcpServer({ name: \"skaile-capabilities\", tools: sdkTools });\n }\n\n /** Fetch and cache slash commands from the SDK query. */\n private async fetchSlashCommands(): Promise<void> {\n if (!this.query) return;\n try {\n const commands = await this.query.supportedCommands();\n this.cachedCommands = commands.map((c) => ({\n name: c.name,\n description: c.description,\n argumentHint: c.argumentHint || undefined,\n }));\n this.emit(\"agent-event\", {\n type: \"commands_available\",\n commands: this.cachedCommands,\n } satisfies AgentEvent);\n this.log.debug(\"discovered slash commands\", { count: this.cachedCommands.length });\n } catch (err) {\n this.log.warn(\"failed to fetch slash commands\", { error: String(err) });\n }\n }\n\n /**\n * Background loop — consumes the query's async generator continuously.\n * The generator stays alive between turns; streamInput() feeds new messages.\n * If it ends unexpectedly, query is nulled so the next prompt() restarts.\n */\n private async consumeMessages(): Promise<void> {\n // Fetch slash commands in the background once the query is live\n this.fetchSlashCommands();\n\n try {\n for await (const msg of this.query!) {\n if (this.abortController?.signal.aborted) break;\n\n // Capture session info from first message\n const sessionId = \"session_id\" in msg ? msg.session_id : undefined;\n if (sessionId) {\n if (!this.hasSession) {\n this.hasSession = true;\n this.log.debug(\"session id assigned\", { sessionId });\n }\n this.sessionId = sessionId;\n }\n\n this.handleSdkMessage(msg);\n\n // result = turn boundary — but only complete the turn when the\n // result was NOT an error. The Claude Agent SDK occasionally emits\n // `{type: \"result\", subtype: \"success\", is_error: true, errors: []}`\n // when an upstream API call (e.g. a 401) made the run fail; the\n // actual error text arrives ~200 ms later as a thrown exception\n // from this iterator. If we resolve the turn here on the\n // is_error result, the consumer-error catch below fires with\n // `turnReject` already null, the bridge's auth-retry path in\n // `prompt()` never runs, and the user sees a fatal 401. By\n // skipping `completeTurn` for is_error results, the turn stays\n // pending until the thrown exception lands in the catch and\n // `failTurn(AuthError)` rejects the promise with the real error.\n //\n // Spec: `_devlog/specs/2026-05-07-unified-credential-mediation.md`.\n if (msg.type === \"result\" && !(msg as { is_error?: boolean }).is_error) {\n this.completeTurn();\n }\n }\n } catch (err: unknown) {\n const error = err instanceof Error ? err : new Error(String(err));\n if (error.name === \"AbortError\" || this.abortController?.signal.aborted) {\n this.log.info(\"aborted\");\n } else {\n const detail = classifyClaudeSdkError({\n errors: [error.message],\n oauthCredential: this.usingOauthCredential,\n });\n this.log.error(\"consumer error\", {\n message: error.message,\n category: detail.category,\n retryable: detail.retryable,\n });\n // Promote auth-shaped failures to a structured AuthError subclass so\n // the runner's 401-mediation handler can `instanceof`-discriminate\n // without parsing strings. Other categories surface as plain Error.\n const surfaced = detail.category === \"auth\" ? new AuthError(detail) : error;\n this.failTurn(surfaced, detail);\n }\n } finally {\n this.log.debug(\"query generator ended\");\n this.completeTurn();\n this.query = null;\n }\n }\n\n /**\n * Signal the current turn as done — idempotent per turn.\n *\n * Same defensive ordering as {@link failTurn}: settle the turn promise\n * before emitting `agent_end` so a misbehaving listener cannot trap the\n * promise in a pending state. See failTurn's docblock for the production\n * incident that motivated this pattern.\n */\n private completeTurn(): void {\n if (this.turnCompleted) return;\n this.turnCompleted = true;\n if (this.turnResolve) {\n this.turnResolve();\n this.turnResolve = null;\n this.turnReject = null;\n }\n try {\n this.emit(\"agent-event\", { type: \"agent_end\" } satisfies AgentEvent);\n } catch (emitErr) {\n this.log.warn(\"agent-event listener threw during completeTurn; suppressing\", {\n error: emitErr instanceof Error ? emitErr.message : String(emitErr),\n });\n }\n }\n\n /**\n * Signal the current turn as failed. When a structured `detail` is\n * supplied, the AgentEvent carries the category + hint so downstream\n * consumers (normalizer → runner → platform → frontend) can surface a\n * useful diagnosis instead of the raw upstream string.\n *\n * Reject ordering: `turnReject()` runs FIRST, then the agent-event is\n * emitted. `EventEmitter#emit` calls listeners synchronously; if any\n * listener throws (transport.send on a closed socket, normalizer bug,\n * compaction tracking error, etc.) the throw would otherwise propagate\n * out of failTurn before `turnReject` can run, leaving `await\n * turnPromise` pending forever and silently hanging `driver.prompt(...)`\n * — which in turn prevents the runner's `onAuthError` callback from\n * firing on stale-token 401s. Settling the promise first guarantees the\n * caller transitions even if the listener chain misbehaves; the emit is\n * wrapped in try/catch so a listener failure cannot leak out.\n *\n * Spec: `_devlog/specs/2026-05-07-unified-credential-mediation.md`\n * § \"Runner-side handling on 401\" (the AI 401 mediation path that\n * exposed this hang).\n */\n private failTurn(err: Error, detail?: import(\"../types.js\").AgentError): void {\n if (this.turnReject) {\n this.turnReject(err);\n this.turnResolve = null;\n this.turnReject = null;\n }\n try {\n this.emit(\"agent-event\", {\n type: \"error\",\n error: err.message,\n ...(detail ? { detail } : {}),\n } satisfies AgentEvent);\n } catch (emitErr) {\n this.log.warn(\"agent-event listener threw during failTurn; suppressing\", {\n error: emitErr instanceof Error ? emitErr.message : String(emitErr),\n });\n }\n }\n\n // ---------------------------------------------------------------------------\n // Message handling\n // ---------------------------------------------------------------------------\n\n private handleSdkMessage(msg: SDKMessage): void {\n // SDKRateLimitEvent — claude.ai subscription rate-limit telemetry. Surfaced\n // as a structured warning log so the debug pane and CLI logs show that the\n // upstream limiter is degrading. We do NOT promote `allowed_warning` to a\n // user-visible error; only `rejected` aligns with a turn-blocking failure\n // and that path emits its own `error` event when the SDK returns the\n // result.\n const maybeRateLimit = msg as unknown as {\n type?: string;\n rate_limit_info?: {\n status?: string;\n rateLimitType?: string;\n utilization?: number;\n resetsAt?: number;\n };\n };\n if (maybeRateLimit.type === \"rate_limit_event\" && maybeRateLimit.rate_limit_info) {\n const info = maybeRateLimit.rate_limit_info;\n this.log.warn(\"upstream rate-limit telemetry\", {\n status: info.status,\n type: info.rateLimitType,\n utilization: info.utilization,\n resetsAt: info.resetsAt,\n });\n // Don't emit an agent-event for warning levels — the user only needs to\n // hear about it on `rejected`, which the result handler already covers.\n return;\n }\n\n if (msg.type === \"assistant\") {\n const agentMsg = this.mapAssistantMessage(msg);\n\n this.emit(\"agent-event\", { type: \"message_start\", message: agentMsg } satisfies AgentEvent);\n\n if (agentMsg.toolCalls) {\n for (const tc of agentMsg.toolCalls) {\n this.emit(\"agent-event\", {\n type: \"tool_call\",\n name: tc.name,\n tool: { name: tc.name },\n input: tc.input,\n });\n }\n }\n\n this.prevText = \"\";\n this.emit(\"agent-event\", { type: \"message_end\", message: agentMsg } satisfies AgentEvent);\n } else if (msg.type === \"stream_event\") {\n const event = msg.event;\n if (\n event?.type === \"content_block_delta\" &&\n event.delta?.type === \"text_delta\" &&\n event.delta.text\n ) {\n const delta = event.delta.text;\n this.prevText += delta;\n const agentMsg: AgentMessage = {\n role: \"assistant\",\n content: [{ type: \"text\", text: this.prevText }],\n };\n this.emit(\"agent-event\", {\n type: \"message_update\",\n message: agentMsg,\n _textDelta: delta,\n } satisfies AgentEvent as any);\n }\n } else if (msg.type === \"user\") {\n const toolResults = this.mapToolResults(msg);\n for (const result of toolResults) {\n this.emit(\"agent-event\", {\n type: \"tool_execution_end\",\n toolName: result.toolName,\n });\n }\n if (toolResults.length > 0) {\n this.emit(\"agent-event\", { type: \"turn_end\", toolResults } satisfies AgentEvent);\n }\n } else if (msg.type === \"result\") {\n // Capture token usage from the result message. Anthropic separates\n // fresh prompt input from cached/cache-creation tokens — surface all\n // four to consumers that want a complete picture.\n const usage = (msg as any).usage as\n | {\n input_tokens?: number;\n output_tokens?: number;\n cache_read_input_tokens?: number;\n cache_creation_input_tokens?: number;\n }\n | undefined;\n if (usage) {\n const tokens: TokenUsage = {};\n if (typeof usage.input_tokens === \"number\") tokens.inputTokens = usage.input_tokens;\n if (typeof usage.output_tokens === \"number\") tokens.outputTokens = usage.output_tokens;\n if (typeof usage.cache_read_input_tokens === \"number\")\n tokens.cacheReadTokens = usage.cache_read_input_tokens;\n if (typeof usage.cache_creation_input_tokens === \"number\")\n tokens.cacheCreationTokens = usage.cache_creation_input_tokens;\n this._lastTokens = tokens;\n }\n const modelUsage = (msg as any).modelUsage as\n | Record<string, { contextWindow?: number }>\n | undefined;\n if (modelUsage) {\n const first = Object.values(modelUsage)[0];\n if (first?.contextWindow) this._contextWindow = first.contextWindow;\n }\n\n // Branch on `is_error` BEFORE `subtype === \"success\"`. The Claude Agent\n // SDK occasionally emits result messages where `subtype === \"success\"`\n // AND `is_error === true` AND `errors === []` — observed in production\n // when an upstream `authentication_error` from the Anthropic API made\n // the SDK fail the turn but still tag it as a \"successful run\" because\n // the agent loop itself (the SDK process) terminated without a process\n // crash. The actual 401 surfaces ~200 ms later as a thrown exception\n // in the for-await iterator. Without this guard, `handleSdkMessage`\n // takes the success branch on subtype, `consumeMessages` calls\n // `completeTurn` (resolving the turn promise), and the subsequent\n // throw lands in the consumer-error catch with `turnReject` already\n // null — the bridge's auth-retry catch in `prompt()` never runs and\n // the user sees a fatal 401. Treating any `is_error: true` result as\n // an error (regardless of subtype) routes through `failTurn` so the\n // turn promise rejects with a structured `AuthError` and the runner's\n // `onAuthError` callback can refresh the credential.\n //\n // Spec: `_devlog/specs/2026-05-07-unified-credential-mediation.md`.\n if (msg.subtype === \"success\" && !msg.is_error) {\n if (msg.result) {\n const agentMsg: AgentMessage = {\n role: \"assistant\",\n content: msg.result,\n };\n this.emit(\"agent-event\", { type: \"message_end\", message: agentMsg } satisfies AgentEvent);\n }\n this.emit(\"agent-event\", {\n type: \"result\",\n subtype: msg.subtype,\n summary: msg.result ?? \"Task completed\",\n costUsd: msg.total_cost_usd ?? 0,\n ...(this._lastTokens ? { tokens: this._lastTokens } : {}),\n } as AgentEvent);\n } else {\n // The else branch is now reachable for two cases:\n // 1) `subtype !== 'success'` (the legacy SDKResultError shape)\n // 2) `subtype === 'success' && is_error === true` (production\n // observation 2026-05-09 — an upstream 401 makes the SDK tag\n // the run as a successful exit code while still flagging\n // `is_error: true`; see the success-branch guard above).\n // Case (2) carries no `errors` field on the typed\n // `SDKResultSuccess` variant, so we coerce through the loose\n // result shape to read it uniformly.\n const looseMsg = msg as { errors?: string[]; is_error?: boolean; terminal_reason?: string };\n const errors: string[] = looseMsg.errors?.length ? looseMsg.errors : [];\n if (looseMsg.is_error) {\n // SDKResultError carries `terminal_reason` and `subtype` we use\n // to override the raw text — `blocking_limit` is authoritatively\n // a quota issue even when the surrounding errors[] reads as auth.\n const detail = classifyClaudeSdkError({\n errors,\n terminalReason: (msg as { terminal_reason?: string }).terminal_reason,\n subtype: msg.subtype,\n oauthCredential: this.usingOauthCredential,\n });\n this.log.error(\"turn ended with error\", {\n subtype: msg.subtype,\n terminalReason: (msg as { terminal_reason?: string }).terminal_reason,\n errorsCount: errors.length,\n category: detail.category,\n retryable: detail.retryable,\n });\n const errorText = errors.join(\"; \") || `Agent stopped: ${msg.subtype}`;\n // Auth-shaped result errors (`authentication_error` structured body\n // or 401 in the error text) surface as a thrown `AuthError` so the\n // runner's 401-mediation handler can `instanceof`-discriminate\n // without parsing strings. `failTurn` emits the `error` AgentEvent\n // itself, so we route through it on the auth path to avoid emitting\n // a duplicate `error` event before the turn rejects.\n //\n // When `errors` is empty AND the classifier could not pin a\n // category, the SDK has signalled \"the turn failed but the actual\n // error text is coming via a thrown exception ~200 ms later\"\n // (observed in production for upstream 401s). We must NOT emit a\n // placeholder error event here — the consumer-error catch below\n // will surface the real error with the correct classification, and\n // emitting a stub now would leak `Agent stopped: success` to the\n // frontend before the real 401 arrives. The matching guard in\n // `consumeMessages` skips `completeTurn` for is_error results so\n // the turn stays pending until the thrown exception lands.\n //\n // Spec: `_devlog/specs/2026-05-07-unified-credential-mediation.md`\n // § \"Runner-side handling on 401\".\n if (detail.category === \"auth\") {\n this.failTurn(new AuthError({ ...detail, message: errorText }), detail);\n } else if (errors.length > 0) {\n // Real error info present — surface it normally.\n this.emit(\"agent-event\", {\n type: \"error\",\n error: errorText,\n detail,\n } satisfies AgentEvent);\n }\n // is_error + empty errors → defer to consumer-error catch.\n }\n this.emit(\"agent-event\", {\n type: \"result\",\n subtype: msg.subtype,\n errors,\n } as AgentEvent);\n }\n }\n }\n\n // ---------------------------------------------------------------------------\n // Helpers\n // ---------------------------------------------------------------------------\n\n /** Build an SDKUserMessage for streamInput. */\n private buildUserMessage(text: string): SDKUserMessage {\n return {\n type: \"user\",\n message: {\n role: \"user\",\n content: text,\n },\n parent_tool_use_id: null,\n session_id: this.sessionId,\n };\n }\n\n /** Wrap a single value as an AsyncIterable that yields once. */\n private async *singleItemIterable<T>(item: T): AsyncIterable<T> {\n yield item;\n }\n\n private mapAssistantMessage(msg: SDKAssistantMessage): AgentMessage {\n const contentBlocks: ContentBlock[] = [];\n const toolCalls: ToolCall[] = [];\n const content = msg.message.content;\n\n if (Array.isArray(content)) {\n for (const block of content) {\n if (block.type === \"text\") {\n contentBlocks.push({ type: \"text\", text: block.text });\n } else if (block.type === \"tool_use\") {\n contentBlocks.push({\n type: \"tool_use\",\n id: block.id,\n name: block.name,\n input: block.input,\n });\n toolCalls.push({ id: block.id, name: block.name, input: block.input });\n this.toolIdToName.set(block.id, block.name);\n } else if (block.type === \"thinking\") {\n contentBlocks.push({ type: \"thinking\", text: block.thinking });\n }\n }\n }\n\n return {\n role: \"assistant\",\n content: contentBlocks,\n toolCalls: toolCalls.length > 0 ? toolCalls : undefined,\n };\n }\n\n private mapToolResults(msg: SDKUserMessage): AgentMessage[] {\n const results: AgentMessage[] = [];\n const content = msg.message.content;\n\n if (Array.isArray(content)) {\n for (const block of content) {\n if (block.type === \"tool_result\") {\n results.push({\n role: \"tool\",\n content:\n typeof block.content === \"string\" ? block.content : JSON.stringify(block.content),\n toolName: this.toolIdToName.get(block.tool_use_id) ?? block.tool_use_id,\n isError: block.is_error,\n });\n }\n }\n }\n\n return results;\n }\n\n /**\n * Requests the current SDK query to stop processing via `query.interrupt()` and\n * signals the underlying `AbortController`. The driver remains usable after abort.\n *\n * @remarks Best-effort: if `interrupt()` throws (e.g. query already ended) the\n * error is silently swallowed and the abort signal is still sent.\n */\n public async abort(): Promise<void> {\n if (this.query) {\n try {\n await this.query.interrupt();\n } catch {\n /* best effort */\n }\n }\n if (this.abortController) {\n this.abortController.abort();\n }\n }\n\n /** `true` while the driver is processing a `prompt()` call. */\n get isRunning(): boolean {\n return this.running;\n }\n\n /**\n * Closes the active SDK query and resets all session state.\n *\n * The driver instance must not be reused after `kill()`. Session IDs are cleared,\n * so a new `ClaudeSdkDriver` will start a fresh session.\n */\n public kill(): void {\n if (this.query) {\n try {\n this.query.close();\n } catch {\n /* best effort */\n }\n this.query = null;\n }\n this.abortController?.abort();\n this.running = false;\n this.sessionId = \"\";\n this.hasSession = false;\n }\n\n override async listModels(): Promise<ModelEntry[]> {\n const apiKey =\n this.config.apiKeys?.anthropic ||\n this.config.env?.ANTHROPIC_API_KEY ||\n process.env.ANTHROPIC_API_KEY;\n if (!apiKey) return [];\n const result = await fetchProviderModels(\"anthropic\", apiKey);\n return result.ok ? (result.models as ModelEntry[]) : [];\n }\n\n override getTokenUsage(): TokenUsage | null {\n return this._lastTokens;\n }\n\n override getContextWindow(): number | null {\n return this._contextWindow;\n }\n\n async resetSession(): Promise<void> {\n if (this.query) {\n try {\n this.query.close();\n } catch {\n /* ignore */\n }\n this.query = null;\n }\n this.abortController?.abort();\n this.sessionId = \"\";\n this.hasSession = false;\n this._lastTokens = null;\n this._contextWindow = null;\n }\n\n /**\n * Build allowedTools / disallowedTools options from AgentConfig.tools.\n *\n * When an allowlist is active, automatically prepend a wildcard entry for\n * every configured MCP server (e.g. `mcp__skaile-connectors__*`) so that\n * connector tools are never silently blocked by agent.yaml restrictions.\n */\n private buildToolRestrictions(): Pick<SdkOptions, \"allowedTools\" | \"disallowedTools\"> {\n const mcpWildcards = this.config.mcpServers\n ? Object.keys(this.config.mcpServers).map((name) => `mcp__${name}__*`)\n : [];\n\n const result: Pick<SdkOptions, \"allowedTools\" | \"disallowedTools\"> = {};\n\n // Only set allowedTools if the manifest explicitly declared an allow list.\n // MCP wildcards are appended to ensure connector tools aren't blocked by\n // the allowlist, but they should NOT create an allowlist on their own —\n // that would block all non-MCP tools (Read, Write, Bash, etc.).\n const allowed = this.config.tools?.allowed;\n if (allowed?.length) {\n result.allowedTools = [...allowed, ...mcpWildcards];\n }\n\n if (this.config.tools?.denied?.length) {\n result.disallowedTools = this.config.tools.denied;\n }\n\n return result;\n }\n\n /**\n * Map the simple string thinking config to SDK ThinkingConfig objects.\n * This keeps the platform-layer SDK-agnostic while the bridge handles the mapping.\n */\n private mapThinkingConfig(\n thinking: \"adaptive\" | \"enabled\" | \"disabled\",\n ): { type: \"adaptive\" } | { type: \"enabled\" } | { type: \"disabled\" } {\n switch (thinking) {\n case \"adaptive\":\n return { type: \"adaptive\" };\n case \"enabled\":\n return { type: \"enabled\" };\n case \"disabled\":\n return { type: \"disabled\" };\n }\n }\n\n /**\n * Find the Claude Code CLI executable.\n *\n * Resolution order:\n * 1. CLAUDE_CODE_PATH env var (set in Docker containers where cli.js is\n * extracted from the SDK during build — bun-compiled binaries can't\n * access the SDK's bundled cli.js via $bunfs)\n * 2. `which claude` on PATH (dev machines with claude installed globally)\n * 3. undefined — let the SDK resolve its own bundled cli.js (works when\n * not running inside a bun-compiled binary)\n */\n private findClaudeBinary(): string | undefined {\n const envPath = process.env.CLAUDE_CODE_PATH;\n if (envPath && existsSync(envPath)) return envPath;\n\n const result = spawnSync(\"which\", [\"claude\"], { encoding: \"utf-8\" });\n const p = result.stdout?.trim();\n return p || undefined;\n }\n}\n\nregisterDriver(\"claude-sdk\", (config) => new ClaudeSdkDriver(config), DRIVER_CATALOG[\"claude-sdk\"]);\n"]}
@@ -0,0 +1,478 @@
1
+ import { fetchProviderModels } from '../../chunk-KOVLSBXK.js';
2
+ import { registerDriver, DRIVER_CATALOG, AgentDriver, getBridgeLogger } from '../../chunk-MBBTBKAS.js';
3
+ import '../../chunk-V37HONL7.js';
4
+ import '../../chunk-NSBPE2FW.js';
5
+ import { existsSync, readFileSync, mkdirSync, writeFileSync } from 'fs';
6
+ import { join, dirname } from 'path';
7
+
8
+ function buildCodexChildEnv(parent) {
9
+ const out = {};
10
+ const explicit = [
11
+ "OPENAI_API_KEY",
12
+ "ANTHROPIC_API_KEY",
13
+ "PATH",
14
+ "HOME",
15
+ "USER",
16
+ "HOSTNAME",
17
+ "SKAILE_SESSION_ID"
18
+ ];
19
+ for (const key of explicit) {
20
+ const v = parent[key];
21
+ if (v !== void 0) out[key] = v;
22
+ }
23
+ for (const [key, value] of Object.entries(parent)) {
24
+ if (key.startsWith("PI_") && typeof value === "string") out[key] = value;
25
+ }
26
+ return out;
27
+ }
28
+ var CodexDriver = class extends AgentDriver {
29
+ driverInfo = {
30
+ id: "codex",
31
+ name: "OpenAI Codex",
32
+ modelAgnostic: false,
33
+ supportsInBandAbort: true
34
+ };
35
+ log = getBridgeLogger("codex");
36
+ config;
37
+ thread = null;
38
+ running = false;
39
+ abortController = null;
40
+ pendingToolResults = [];
41
+ activeAssistantItemId = null;
42
+ activeAssistantText = "";
43
+ _runtimeSessionId;
44
+ /** Token usage from the most recent completed turn. */
45
+ _lastTokens = null;
46
+ constructor(config) {
47
+ super();
48
+ this.config = config;
49
+ }
50
+ get runtimeSessionId() {
51
+ return this._runtimeSessionId;
52
+ }
53
+ async start() {
54
+ if (this.thread) return;
55
+ let sdk;
56
+ try {
57
+ sdk = await import('@openai/codex-sdk');
58
+ } catch (err) {
59
+ this.log.error("codex SDK load failed", err);
60
+ throw new Error("Codex SDK not installed. Run: bun add @openai/codex-sdk");
61
+ }
62
+ const env = this.config.env ? { ...this.config.env } : buildCodexChildEnv(process.env);
63
+ const instructionsFile = this.writeInstructionsFile();
64
+ const client = new sdk.Codex({
65
+ apiKey: this.config.apiKeys?.openai ?? this.config.env?.OPENAI_API_KEY ?? process.env.OPENAI_API_KEY,
66
+ env: Object.fromEntries(Object.entries(env).filter(([, value]) => value != null)),
67
+ ...instructionsFile ? { config: { model_instructions_file: instructionsFile } } : {}
68
+ });
69
+ const codexOptions = this.config.driverOptions?.codex;
70
+ const threadOptions = {
71
+ model: this.config.model,
72
+ sandboxMode: codexOptions?.sandboxMode ?? "workspace-write",
73
+ workingDirectory: this.config.cwd,
74
+ skipGitRepoCheck: true,
75
+ modelReasoningEffort: codexOptions?.reasoningEffort ?? "medium",
76
+ networkAccessEnabled: codexOptions?.networkAccessEnabled,
77
+ approvalPolicy: codexOptions?.approvalPolicy ?? "never",
78
+ additionalDirectories: codexOptions?.additionalDirectories
79
+ };
80
+ this.thread = this.config.resumeSessionId ? client.resumeThread(this.config.resumeSessionId, threadOptions) : client.startThread(threadOptions);
81
+ this._runtimeSessionId = this.thread.id ?? this.config.resumeSessionId;
82
+ this.log.info("codex driver started", {
83
+ model: this.config.model,
84
+ resumed: Boolean(this.config.resumeSessionId),
85
+ sessionId: this._runtimeSessionId
86
+ });
87
+ }
88
+ async prompt(message) {
89
+ await this.start();
90
+ if (!this.thread) throw new Error("Codex thread not initialized");
91
+ if (this.running) throw new Error("Codex turn already in progress");
92
+ this.running = true;
93
+ this.pendingToolResults = [];
94
+ this.activeAssistantItemId = null;
95
+ this.activeAssistantText = "";
96
+ this._lastTokens = null;
97
+ this.abortController = new AbortController();
98
+ let turnFinished = false;
99
+ this.log.debug("prompt issued", { length: message.length });
100
+ try {
101
+ const input = message;
102
+ const { events } = await this.thread.runStreamed(input, {
103
+ signal: this.abortController.signal
104
+ });
105
+ for await (const event of events) {
106
+ turnFinished = this.handleThreadEvent(event) || turnFinished;
107
+ }
108
+ } catch (err) {
109
+ const error = err instanceof Error ? err : new Error(String(err));
110
+ if (error.name !== "AbortError") {
111
+ this.log.error("prompt failed", error);
112
+ const detail = this.classifyErrorMessage(error.message);
113
+ this.emit("agent-event", {
114
+ type: "error",
115
+ error: detail.message,
116
+ detail
117
+ });
118
+ this.emit("agent-event", { type: "agent_end" });
119
+ }
120
+ } finally {
121
+ if (!turnFinished && this.activeAssistantItemId) {
122
+ this.emit("agent-event", {
123
+ type: "message_end",
124
+ message: this.buildAssistantMessage(this.activeAssistantText)
125
+ });
126
+ }
127
+ this.activeAssistantItemId = null;
128
+ this.activeAssistantText = "";
129
+ this.abortController = null;
130
+ this.running = false;
131
+ }
132
+ }
133
+ async abort() {
134
+ this.abortController?.abort();
135
+ }
136
+ get isRunning() {
137
+ return this.running;
138
+ }
139
+ kill() {
140
+ this.abortController?.abort();
141
+ this.running = false;
142
+ this.abortController = null;
143
+ this.log.info("codex driver killed");
144
+ }
145
+ async listModels() {
146
+ const apiKey = this.config.apiKeys?.openai || this.config.env?.OPENAI_API_KEY || process.env.OPENAI_API_KEY;
147
+ if (!apiKey) return [];
148
+ const result = await fetchProviderModels("openai", apiKey);
149
+ return result.ok ? result.models : [];
150
+ }
151
+ async resetSession() {
152
+ this.kill();
153
+ this.thread = null;
154
+ this._runtimeSessionId = void 0;
155
+ this._lastTokens = null;
156
+ }
157
+ getTokenUsage() {
158
+ return this._lastTokens;
159
+ }
160
+ /**
161
+ * Write a combined instructions file for Codex CLI's `model_instructions_file` config.
162
+ * Combines pre-rendered agent identity (from `skaile install`) with runtime context
163
+ * (resources, environment, prompt-extensions).
164
+ */
165
+ writeInstructionsFile() {
166
+ const parts = [];
167
+ if (this.config.agentDir) {
168
+ const agentFile = join(this.config.cwd, ".codex", "skaile-agent.md");
169
+ if (existsSync(agentFile)) {
170
+ parts.push(readFileSync(agentFile, "utf-8"));
171
+ }
172
+ }
173
+ if (this.config.systemPrompt) {
174
+ parts.push(this.config.systemPrompt);
175
+ }
176
+ if (parts.length === 0) return void 0;
177
+ const instrFile = join(this.config.cwd, ".codex", "skaile-session-instructions.md");
178
+ mkdirSync(dirname(instrFile), { recursive: true });
179
+ writeFileSync(instrFile, parts.join("\n\n---\n\n"));
180
+ return instrFile;
181
+ }
182
+ handleThreadEvent(event) {
183
+ switch (event.type) {
184
+ case "thread.started":
185
+ this._runtimeSessionId = event.thread_id;
186
+ return false;
187
+ case "turn.started":
188
+ return false;
189
+ case "item.started":
190
+ case "item.updated":
191
+ case "item.completed":
192
+ this.handleThreadItem(event.item, event.type === "item.completed", event.type);
193
+ return false;
194
+ case "turn.completed": {
195
+ this.flushToolResults();
196
+ const usage = event.usage;
197
+ const tokens = usage ? {
198
+ inputTokens: usage.input_tokens,
199
+ outputTokens: usage.output_tokens,
200
+ cacheReadTokens: usage.cached_input_tokens
201
+ } : null;
202
+ this._lastTokens = tokens;
203
+ this.emit("agent-event", {
204
+ type: "result",
205
+ subtype: "success",
206
+ summary: this.activeAssistantText || "Task completed",
207
+ // Codex SDK does not report per-turn cost. `0` signals "not
208
+ // reported" — pair with `tokens` to disambiguate from "free".
209
+ costUsd: 0,
210
+ ...tokens ? { tokens } : {}
211
+ });
212
+ this.emit("agent-event", { type: "agent_end" });
213
+ return true;
214
+ }
215
+ case "turn.failed": {
216
+ this.flushToolResults();
217
+ const detail = this.classifyErrorMessage(event.error.message);
218
+ this.emit("agent-event", {
219
+ type: "error",
220
+ error: detail.message,
221
+ detail
222
+ });
223
+ this.emit("agent-event", { type: "agent_end" });
224
+ return true;
225
+ }
226
+ case "error": {
227
+ const detail = this.classifyErrorMessage(event.message);
228
+ this.emit("agent-event", {
229
+ type: "error",
230
+ error: detail.message,
231
+ detail
232
+ });
233
+ this.emit("agent-event", { type: "agent_end" });
234
+ return true;
235
+ }
236
+ }
237
+ }
238
+ handleThreadItem(item, completed, phase) {
239
+ switch (item.type) {
240
+ case "agent_message":
241
+ this.handleAgentMessage(item, completed);
242
+ break;
243
+ case "command_execution":
244
+ this.handleCommandExecution(item, completed, phase);
245
+ break;
246
+ case "mcp_tool_call":
247
+ this.handleMcpToolCall(item, completed, phase);
248
+ break;
249
+ case "file_change":
250
+ this.handleFileChange(item, completed, phase);
251
+ break;
252
+ case "web_search":
253
+ this.handleWebSearch(item, completed, phase);
254
+ break;
255
+ case "error":
256
+ if (completed) {
257
+ this.pendingToolResults.push({
258
+ role: "tool",
259
+ toolName: "CodexError",
260
+ content: "",
261
+ data: { message: item.message },
262
+ isError: true
263
+ });
264
+ }
265
+ break;
266
+ }
267
+ }
268
+ handleAgentMessage(item, completed) {
269
+ if (this.activeAssistantItemId !== item.id) {
270
+ if (this.activeAssistantItemId) {
271
+ this.emit("agent-event", {
272
+ type: "message_end",
273
+ message: this.buildAssistantMessage(this.activeAssistantText)
274
+ });
275
+ }
276
+ this.activeAssistantItemId = item.id;
277
+ this.activeAssistantText = "";
278
+ this.emit("agent-event", {
279
+ type: "message_start",
280
+ message: this.buildAssistantMessage("")
281
+ });
282
+ }
283
+ const nextText = item.text ?? "";
284
+ const delta = nextText.startsWith(this.activeAssistantText) ? nextText.slice(this.activeAssistantText.length) : nextText;
285
+ this.activeAssistantText = nextText;
286
+ if (delta) {
287
+ this.emit("agent-event", {
288
+ type: "message_update",
289
+ message: this.buildAssistantMessage(nextText),
290
+ _textDelta: delta
291
+ });
292
+ }
293
+ if (completed) {
294
+ this.emit("agent-event", {
295
+ type: "message_end",
296
+ message: this.buildAssistantMessage(nextText)
297
+ });
298
+ this.activeAssistantItemId = null;
299
+ }
300
+ }
301
+ handleCommandExecution(item, completed, phase) {
302
+ if (phase === "item.started") {
303
+ this.emit("agent-event", {
304
+ type: "tool_call",
305
+ name: "Bash",
306
+ tool: { name: "Bash" },
307
+ input: { command: item.command }
308
+ });
309
+ }
310
+ if (completed) {
311
+ this.pendingToolResults.push({
312
+ role: "tool",
313
+ toolName: "Bash",
314
+ content: "",
315
+ data: {
316
+ stdout: item.aggregated_output,
317
+ stderr: "",
318
+ exitCode: item.exit_code,
319
+ status: item.status,
320
+ command: item.command
321
+ },
322
+ isError: item.status === "failed"
323
+ });
324
+ this.emit("agent-event", {
325
+ type: "tool_execution_end",
326
+ toolName: "Bash"
327
+ });
328
+ }
329
+ }
330
+ handleMcpToolCall(item, completed, phase) {
331
+ const toolName = `mcp__${item.server}__${item.tool}`;
332
+ if (phase === "item.started") {
333
+ this.emit("agent-event", {
334
+ type: "tool_call",
335
+ name: toolName,
336
+ tool: { name: toolName },
337
+ input: this.toObject(item.arguments)
338
+ });
339
+ }
340
+ if (completed) {
341
+ this.pendingToolResults.push({
342
+ role: "tool",
343
+ toolName,
344
+ content: "",
345
+ data: {
346
+ status: item.status,
347
+ content: item.result?.content,
348
+ structuredContent: item.result?.structured_content,
349
+ error: item.error?.message
350
+ },
351
+ isError: item.status === "failed"
352
+ });
353
+ this.emit("agent-event", {
354
+ type: "tool_execution_end",
355
+ toolName
356
+ });
357
+ }
358
+ }
359
+ handleFileChange(item, completed, phase) {
360
+ if (phase === "item.started") {
361
+ this.emit("agent-event", {
362
+ type: "tool_call",
363
+ name: "ApplyPatch",
364
+ tool: { name: "ApplyPatch" },
365
+ input: { changes: item.changes }
366
+ });
367
+ }
368
+ if (completed) {
369
+ this.pendingToolResults.push({
370
+ role: "tool",
371
+ toolName: "ApplyPatch",
372
+ content: "",
373
+ data: { status: item.status, changes: item.changes },
374
+ isError: item.status === "failed"
375
+ });
376
+ this.emit("agent-event", {
377
+ type: "tool_execution_end",
378
+ toolName: "ApplyPatch"
379
+ });
380
+ }
381
+ }
382
+ handleWebSearch(item, completed, phase) {
383
+ if (phase === "item.started") {
384
+ this.emit("agent-event", {
385
+ type: "tool_call",
386
+ name: "WebSearch",
387
+ tool: { name: "WebSearch" },
388
+ input: { query: item.query }
389
+ });
390
+ }
391
+ if (completed) {
392
+ this.pendingToolResults.push({
393
+ role: "tool",
394
+ toolName: "WebSearch",
395
+ content: "",
396
+ data: { query: item.query, status: "completed" }
397
+ });
398
+ this.emit("agent-event", {
399
+ type: "tool_execution_end",
400
+ toolName: "WebSearch"
401
+ });
402
+ }
403
+ }
404
+ flushToolResults() {
405
+ if (this.pendingToolResults.length === 0) return;
406
+ this.emit("agent-event", {
407
+ type: "turn_end",
408
+ toolResults: [...this.pendingToolResults]
409
+ });
410
+ this.pendingToolResults = [];
411
+ }
412
+ buildAssistantMessage(text) {
413
+ return {
414
+ role: "assistant",
415
+ content: [{ type: "text", text }]
416
+ };
417
+ }
418
+ toObject(value) {
419
+ if (typeof value === "object" && value !== null && !Array.isArray(value)) {
420
+ return value;
421
+ }
422
+ return { arguments: value };
423
+ }
424
+ classifyErrorMessage(message) {
425
+ const lower = message.toLowerCase();
426
+ if (lower.includes("api key") || lower.includes("unauthorized") || lower.includes("authentication") || lower.includes("401")) {
427
+ return {
428
+ message,
429
+ category: "auth",
430
+ retryable: false,
431
+ hint: "Check your OpenAI API key configuration in settings or environment."
432
+ };
433
+ }
434
+ if (lower.includes("rate limit") || lower.includes("429") || lower.includes("too many requests") || lower.includes("quota")) {
435
+ return {
436
+ message,
437
+ category: "rate_limit",
438
+ retryable: true,
439
+ hint: "Codex hit an OpenAI rate limit. Wait briefly and try again."
440
+ };
441
+ }
442
+ if (lower.includes("model") && (lower.includes("not found") || lower.includes("does not exist") || lower.includes("not available"))) {
443
+ return {
444
+ message,
445
+ category: "model",
446
+ retryable: false,
447
+ hint: "The selected Codex model is unavailable. Choose a different model."
448
+ };
449
+ }
450
+ if (lower.includes("network") || lower.includes("timeout") || lower.includes("connection") || lower.includes("fetch")) {
451
+ return {
452
+ message,
453
+ category: "network",
454
+ retryable: true,
455
+ hint: "A network error occurred while talking to Codex."
456
+ };
457
+ }
458
+ if (lower.includes("sandbox") || lower.includes("approval") || lower.includes("permission") || lower.includes("git repo")) {
459
+ return {
460
+ message,
461
+ category: "config",
462
+ retryable: false,
463
+ hint: "Check Codex sandbox, approval, and workspace configuration."
464
+ };
465
+ }
466
+ return {
467
+ message,
468
+ category: "unknown",
469
+ retryable: true,
470
+ hint: "An unexpected Codex error occurred. Try the prompt again."
471
+ };
472
+ }
473
+ };
474
+ registerDriver("codex", (config) => new CodexDriver(config), DRIVER_CATALOG.codex);
475
+
476
+ export { CodexDriver };
477
+ //# sourceMappingURL=codex.js.map
478
+ //# sourceMappingURL=codex.js.map