@atomic-chat/core 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (868) hide show
  1. package/README.md +46 -0
  2. package/dist/app-daemon.d.ts +2 -0
  3. package/dist/app-daemon.js +72 -0
  4. package/dist/app-daemon.js.map +1 -0
  5. package/dist/backend/catalog/archive.d.ts +70 -0
  6. package/dist/backend/catalog/archive.js +138 -0
  7. package/dist/backend/catalog/archive.js.map +1 -0
  8. package/dist/backend/catalog/bundled-manifest-baseline.d.ts +2 -0
  9. package/dist/backend/catalog/bundled-manifest-baseline.js +49 -0
  10. package/dist/backend/catalog/bundled-manifest-baseline.js.map +1 -0
  11. package/dist/backend/catalog/cuda-family.d.ts +54 -0
  12. package/dist/backend/catalog/cuda-family.js +93 -0
  13. package/dist/backend/catalog/cuda-family.js.map +1 -0
  14. package/dist/backend/catalog/index.d.ts +6 -0
  15. package/dist/backend/catalog/index.js +7 -0
  16. package/dist/backend/catalog/index.js.map +1 -0
  17. package/dist/backend/catalog/manifest.d.ts +102 -0
  18. package/dist/backend/catalog/manifest.js +233 -0
  19. package/dist/backend/catalog/manifest.js.map +1 -0
  20. package/dist/backend/catalog/migrate.d.ts +40 -0
  21. package/dist/backend/catalog/migrate.js +135 -0
  22. package/dist/backend/catalog/migrate.js.map +1 -0
  23. package/dist/backend/index.d.ts +18 -0
  24. package/dist/backend/index.js +19 -0
  25. package/dist/backend/index.js.map +1 -0
  26. package/dist/backend/install/index.d.ts +3 -0
  27. package/dist/backend/install/index.js +4 -0
  28. package/dist/backend/install/index.js.map +1 -0
  29. package/dist/backend/install/runtime-backend.d.ts +22 -0
  30. package/dist/backend/install/runtime-backend.js +95 -0
  31. package/dist/backend/install/runtime-backend.js.map +1 -0
  32. package/dist/backend/install/service.d.ts +119 -0
  33. package/dist/backend/install/service.js +218 -0
  34. package/dist/backend/install/service.js.map +1 -0
  35. package/dist/backend/installed/index.d.ts +3 -0
  36. package/dist/backend/installed/index.js +4 -0
  37. package/dist/backend/installed/index.js.map +1 -0
  38. package/dist/backend/installed/installed.d.ts +93 -0
  39. package/dist/backend/installed/installed.js +209 -0
  40. package/dist/backend/installed/installed.js.map +1 -0
  41. package/dist/backend/installed/scan.d.ts +39 -0
  42. package/dist/backend/installed/scan.js +105 -0
  43. package/dist/backend/installed/scan.js.map +1 -0
  44. package/dist/backend/optimal/index.d.ts +3 -0
  45. package/dist/backend/optimal/index.js +4 -0
  46. package/dist/backend/optimal/index.js.map +1 -0
  47. package/dist/backend/optimal/optimal-cache.d.ts +90 -0
  48. package/dist/backend/optimal/optimal-cache.js +198 -0
  49. package/dist/backend/optimal/optimal-cache.js.map +1 -0
  50. package/dist/backend/optimal/optimal-store.d.ts +24 -0
  51. package/dist/backend/optimal/optimal-store.js +103 -0
  52. package/dist/backend/optimal/optimal-store.js.map +1 -0
  53. package/dist/backend/select/amd-rocm-pci-ids.d.ts +3 -0
  54. package/dist/backend/select/amd-rocm-pci-ids.js +57 -0
  55. package/dist/backend/select/amd-rocm-pci-ids.js.map +1 -0
  56. package/dist/backend/select/categories.d.ts +49 -0
  57. package/dist/backend/select/categories.js +178 -0
  58. package/dist/backend/select/categories.js.map +1 -0
  59. package/dist/backend/select/features.d.ts +81 -0
  60. package/dist/backend/select/features.js +221 -0
  61. package/dist/backend/select/features.js.map +1 -0
  62. package/dist/backend/select/index.d.ts +9 -0
  63. package/dist/backend/select/index.js +10 -0
  64. package/dist/backend/select/index.js.map +1 -0
  65. package/dist/backend/select/recovery.d.ts +51 -0
  66. package/dist/backend/select/recovery.js +108 -0
  67. package/dist/backend/select/recovery.js.map +1 -0
  68. package/dist/backend/select/tiers.d.ts +76 -0
  69. package/dist/backend/select/tiers.js +179 -0
  70. package/dist/backend/select/tiers.js.map +1 -0
  71. package/dist/backend/turboquant.d.ts +134 -0
  72. package/dist/backend/turboquant.js +587 -0
  73. package/dist/backend/turboquant.js.map +1 -0
  74. package/dist/backend/types.d.ts +139 -0
  75. package/dist/backend/types.js +13 -0
  76. package/dist/backend/types.js.map +1 -0
  77. package/dist/backend/version.d.ts +59 -0
  78. package/dist/backend/version.js +168 -0
  79. package/dist/backend/version.js.map +1 -0
  80. package/dist/cli/bin.d.ts +2 -0
  81. package/dist/cli/bin.js +10 -0
  82. package/dist/cli/bin.js.map +1 -0
  83. package/dist/cli/cloud.d.ts +13 -0
  84. package/dist/cli/cloud.js +146 -0
  85. package/dist/cli/cloud.js.map +1 -0
  86. package/dist/cli/commands/daemon.d.ts +4 -0
  87. package/dist/cli/commands/daemon.js +88 -0
  88. package/dist/cli/commands/daemon.js.map +1 -0
  89. package/dist/cli/commands/index.d.ts +16 -0
  90. package/dist/cli/commands/index.js +17 -0
  91. package/dist/cli/commands/index.js.map +1 -0
  92. package/dist/cli/commands/models.d.ts +4 -0
  93. package/dist/cli/commands/models.js +52 -0
  94. package/dist/cli/commands/models.js.map +1 -0
  95. package/dist/cli/commands/serve.d.ts +16 -0
  96. package/dist/cli/commands/serve.js +263 -0
  97. package/dist/cli/commands/serve.js.map +1 -0
  98. package/dist/cli/commands/server.d.ts +4 -0
  99. package/dist/cli/commands/server.js +126 -0
  100. package/dist/cli/commands/server.js.map +1 -0
  101. package/dist/cli/commands/shared.d.ts +10 -0
  102. package/dist/cli/commands/shared.js +34 -0
  103. package/dist/cli/commands/shared.js.map +1 -0
  104. package/dist/cli/commands/shutdown.d.ts +4 -0
  105. package/dist/cli/commands/shutdown.js +32 -0
  106. package/dist/cli/commands/shutdown.js.map +1 -0
  107. package/dist/cli/commands/telemetry.d.ts +8 -0
  108. package/dist/cli/commands/telemetry.js +50 -0
  109. package/dist/cli/commands/telemetry.js.map +1 -0
  110. package/dist/cli/index.d.ts +7 -0
  111. package/dist/cli/index.js +8 -0
  112. package/dist/cli/index.js.map +1 -0
  113. package/dist/cli/io.d.ts +46 -0
  114. package/dist/cli/io.js +101 -0
  115. package/dist/cli/io.js.map +1 -0
  116. package/dist/cli/launch.d.ts +50 -0
  117. package/dist/cli/launch.js +327 -0
  118. package/dist/cli/launch.js.map +1 -0
  119. package/dist/cli/main.d.ts +10 -0
  120. package/dist/cli/main.js +109 -0
  121. package/dist/cli/main.js.map +1 -0
  122. package/dist/cli/owner.d.ts +39 -0
  123. package/dist/cli/owner.js +179 -0
  124. package/dist/cli/owner.js.map +1 -0
  125. package/dist/client/control-client.d.ts +213 -0
  126. package/dist/client/control-client.js +368 -0
  127. package/dist/client/control-client.js.map +1 -0
  128. package/dist/client/index.d.ts +7 -0
  129. package/dist/client/index.js +8 -0
  130. package/dist/client/index.js.map +1 -0
  131. package/dist/cloud/chatgpt.d.ts +63 -0
  132. package/dist/cloud/chatgpt.js +233 -0
  133. package/dist/cloud/chatgpt.js.map +1 -0
  134. package/dist/cloud/index.d.ts +8 -0
  135. package/dist/cloud/index.js +9 -0
  136. package/dist/cloud/index.js.map +1 -0
  137. package/dist/cloud/registry.d.ts +51 -0
  138. package/dist/cloud/registry.js +148 -0
  139. package/dist/cloud/registry.js.map +1 -0
  140. package/dist/config/data-folder.d.ts +57 -0
  141. package/dist/config/data-folder.js +150 -0
  142. package/dist/config/data-folder.js.map +1 -0
  143. package/dist/config/index.d.ts +9 -0
  144. package/dist/config/index.js +10 -0
  145. package/dist/config/index.js.map +1 -0
  146. package/dist/config/paths.d.ts +98 -0
  147. package/dist/config/paths.js +109 -0
  148. package/dist/config/paths.js.map +1 -0
  149. package/dist/contracts/control-api.d.ts +61 -0
  150. package/dist/contracts/control-api.js +7 -0
  151. package/dist/contracts/control-api.js.map +1 -0
  152. package/dist/contracts/diffusion.d.ts +477 -0
  153. package/dist/contracts/diffusion.js +10 -0
  154. package/dist/contracts/diffusion.js.map +1 -0
  155. package/dist/contracts/errors.d.ts +61 -0
  156. package/dist/contracts/errors.js +70 -0
  157. package/dist/contracts/errors.js.map +1 -0
  158. package/dist/contracts/events.d.ts +270 -0
  159. package/dist/contracts/events.js +7 -0
  160. package/dist/contracts/events.js.map +1 -0
  161. package/dist/contracts/hardware.d.ts +53 -0
  162. package/dist/contracts/hardware.js +12 -0
  163. package/dist/contracts/hardware.js.map +1 -0
  164. package/dist/contracts/index.d.ts +12 -0
  165. package/dist/contracts/index.js +13 -0
  166. package/dist/contracts/index.js.map +1 -0
  167. package/dist/contracts/model-yml.d.ts +28 -0
  168. package/dist/contracts/model-yml.js +23 -0
  169. package/dist/contracts/model-yml.js.map +1 -0
  170. package/dist/contracts/remote-access.d.ts +43 -0
  171. package/dist/contracts/remote-access.js +12 -0
  172. package/dist/contracts/remote-access.js.map +1 -0
  173. package/dist/contracts/session.d.ts +39 -0
  174. package/dist/contracts/session.js +7 -0
  175. package/dist/contracts/session.js.map +1 -0
  176. package/dist/contracts/settings.d.ts +106 -0
  177. package/dist/contracts/settings.js +17 -0
  178. package/dist/contracts/settings.js.map +1 -0
  179. package/dist/core/atomic-core.d.ts +149 -0
  180. package/dist/core/atomic-core.js +289 -0
  181. package/dist/core/atomic-core.js.map +1 -0
  182. package/dist/core/create.d.ts +12 -0
  183. package/dist/core/create.js +393 -0
  184. package/dist/core/create.js.map +1 -0
  185. package/dist/core/index.d.ts +10 -0
  186. package/dist/core/index.js +9 -0
  187. package/dist/core/index.js.map +1 -0
  188. package/dist/core/public-server.d.ts +76 -0
  189. package/dist/core/public-server.js +143 -0
  190. package/dist/core/public-server.js.map +1 -0
  191. package/dist/core/reap-orphans.d.ts +7 -0
  192. package/dist/core/reap-orphans.js +40 -0
  193. package/dist/core/reap-orphans.js.map +1 -0
  194. package/dist/core/sessions.d.ts +60 -0
  195. package/dist/core/sessions.js +180 -0
  196. package/dist/core/sessions.js.map +1 -0
  197. package/dist/core/types.d.ts +61 -0
  198. package/dist/core/types.js +2 -0
  199. package/dist/core/types.js.map +1 -0
  200. package/dist/credentials/api-keys.d.ts +41 -0
  201. package/dist/credentials/api-keys.js +156 -0
  202. package/dist/credentials/api-keys.js.map +1 -0
  203. package/dist/credentials/chatgpt-auth.d.ts +73 -0
  204. package/dist/credentials/chatgpt-auth.js +167 -0
  205. package/dist/credentials/chatgpt-auth.js.map +1 -0
  206. package/dist/credentials/chatgpt-oauth.d.ts +97 -0
  207. package/dist/credentials/chatgpt-oauth.js +329 -0
  208. package/dist/credentials/chatgpt-oauth.js.map +1 -0
  209. package/dist/credentials/chatgpt-store.d.ts +33 -0
  210. package/dist/credentials/chatgpt-store.js +110 -0
  211. package/dist/credentials/chatgpt-store.js.map +1 -0
  212. package/dist/credentials/index.d.ts +11 -0
  213. package/dist/credentials/index.js +12 -0
  214. package/dist/credentials/index.js.map +1 -0
  215. package/dist/diffusion/args.d.ts +102 -0
  216. package/dist/diffusion/args.js +291 -0
  217. package/dist/diffusion/args.js.map +1 -0
  218. package/dist/diffusion/compat.d.ts +20 -0
  219. package/dist/diffusion/compat.js +58 -0
  220. package/dist/diffusion/compat.js.map +1 -0
  221. package/dist/diffusion/containment.d.ts +15 -0
  222. package/dist/diffusion/containment.js +32 -0
  223. package/dist/diffusion/containment.js.map +1 -0
  224. package/dist/diffusion/errors.d.ts +28 -0
  225. package/dist/diffusion/errors.js +63 -0
  226. package/dist/diffusion/errors.js.map +1 -0
  227. package/dist/diffusion/gallery.d.ts +76 -0
  228. package/dist/diffusion/gallery.js +307 -0
  229. package/dist/diffusion/gallery.js.map +1 -0
  230. package/dist/diffusion/http.d.ts +16 -0
  231. package/dist/diffusion/http.js +41 -0
  232. package/dist/diffusion/http.js.map +1 -0
  233. package/dist/diffusion/idle.d.ts +23 -0
  234. package/dist/diffusion/idle.js +45 -0
  235. package/dist/diffusion/idle.js.map +1 -0
  236. package/dist/diffusion/image-job.d.ts +25 -0
  237. package/dist/diffusion/image-job.js +176 -0
  238. package/dist/diffusion/image-job.js.map +1 -0
  239. package/dist/diffusion/index.d.ts +35 -0
  240. package/dist/diffusion/index.js +36 -0
  241. package/dist/diffusion/index.js.map +1 -0
  242. package/dist/diffusion/install.d.ts +61 -0
  243. package/dist/diffusion/install.js +287 -0
  244. package/dist/diffusion/install.js.map +1 -0
  245. package/dist/diffusion/job-kind.d.ts +74 -0
  246. package/dist/diffusion/job-kind.js +7 -0
  247. package/dist/diffusion/job-kind.js.map +1 -0
  248. package/dist/diffusion/jobs.d.ts +90 -0
  249. package/dist/diffusion/jobs.js +433 -0
  250. package/dist/diffusion/jobs.js.map +1 -0
  251. package/dist/diffusion/mutex.d.ts +16 -0
  252. package/dist/diffusion/mutex.js +46 -0
  253. package/dist/diffusion/mutex.js.map +1 -0
  254. package/dist/diffusion/parse.d.ts +19 -0
  255. package/dist/diffusion/parse.js +274 -0
  256. package/dist/diffusion/parse.js.map +1 -0
  257. package/dist/diffusion/png.d.ts +77 -0
  258. package/dist/diffusion/png.js +335 -0
  259. package/dist/diffusion/png.js.map +1 -0
  260. package/dist/diffusion/progress.d.ts +74 -0
  261. package/dist/diffusion/progress.js +223 -0
  262. package/dist/diffusion/progress.js.map +1 -0
  263. package/dist/diffusion/recipe.d.ts +26 -0
  264. package/dist/diffusion/recipe.js +206 -0
  265. package/dist/diffusion/recipe.js.map +1 -0
  266. package/dist/diffusion/server-process.d.ts +59 -0
  267. package/dist/diffusion/server-process.js +235 -0
  268. package/dist/diffusion/server-process.js.map +1 -0
  269. package/dist/diffusion/service.d.ts +107 -0
  270. package/dist/diffusion/service.js +431 -0
  271. package/dist/diffusion/service.js.map +1 -0
  272. package/dist/diffusion/session.d.ts +58 -0
  273. package/dist/diffusion/session.js +226 -0
  274. package/dist/diffusion/session.js.map +1 -0
  275. package/dist/diffusion/state.d.ts +90 -0
  276. package/dist/diffusion/state.js +122 -0
  277. package/dist/diffusion/state.js.map +1 -0
  278. package/dist/diffusion/tracker.d.ts +46 -0
  279. package/dist/diffusion/tracker.js +153 -0
  280. package/dist/diffusion/tracker.js.map +1 -0
  281. package/dist/diffusion/types.d.ts +62 -0
  282. package/dist/diffusion/types.js +10 -0
  283. package/dist/diffusion/types.js.map +1 -0
  284. package/dist/diffusion/validate.d.ts +36 -0
  285. package/dist/diffusion/validate.js +166 -0
  286. package/dist/diffusion/validate.js.map +1 -0
  287. package/dist/diffusion/video-gallery.d.ts +56 -0
  288. package/dist/diffusion/video-gallery.js +252 -0
  289. package/dist/diffusion/video-gallery.js.map +1 -0
  290. package/dist/diffusion/video-job.d.ts +33 -0
  291. package/dist/diffusion/video-job.js +150 -0
  292. package/dist/diffusion/video-job.js.map +1 -0
  293. package/dist/diffusion/video-recipe.d.ts +12 -0
  294. package/dist/diffusion/video-recipe.js +141 -0
  295. package/dist/diffusion/video-recipe.js.map +1 -0
  296. package/dist/diffusion/wiring.d.ts +24 -0
  297. package/dist/diffusion/wiring.js +38 -0
  298. package/dist/diffusion/wiring.js.map +1 -0
  299. package/dist/diffusion/workflow.d.ts +33 -0
  300. package/dist/diffusion/workflow.js +78 -0
  301. package/dist/diffusion/workflow.js.map +1 -0
  302. package/dist/downloads/archive.d.ts +15 -0
  303. package/dist/downloads/archive.js +121 -0
  304. package/dist/downloads/archive.js.map +1 -0
  305. package/dist/downloads/disk-space.d.ts +18 -0
  306. package/dist/downloads/disk-space.js +32 -0
  307. package/dist/downloads/disk-space.js.map +1 -0
  308. package/dist/downloads/disk.d.ts +38 -0
  309. package/dist/downloads/disk.js +88 -0
  310. package/dist/downloads/disk.js.map +1 -0
  311. package/dist/downloads/downloader.d.ts +75 -0
  312. package/dist/downloads/downloader.js +479 -0
  313. package/dist/downloads/downloader.js.map +1 -0
  314. package/dist/downloads/index.d.ts +14 -0
  315. package/dist/downloads/index.js +15 -0
  316. package/dist/downloads/index.js.map +1 -0
  317. package/dist/downloads/protocol.d.ts +52 -0
  318. package/dist/downloads/protocol.js +153 -0
  319. package/dist/downloads/protocol.js.map +1 -0
  320. package/dist/downloads/proxy-fetch.d.ts +45 -0
  321. package/dist/downloads/proxy-fetch.js +571 -0
  322. package/dist/downloads/proxy-fetch.js.map +1 -0
  323. package/dist/downloads/verify.d.ts +22 -0
  324. package/dist/downloads/verify.js +74 -0
  325. package/dist/downloads/verify.js.map +1 -0
  326. package/dist/events/emitter.d.ts +44 -0
  327. package/dist/events/emitter.js +104 -0
  328. package/dist/events/emitter.js.map +1 -0
  329. package/dist/events/index.d.ts +5 -0
  330. package/dist/events/index.js +6 -0
  331. package/dist/events/index.js.map +1 -0
  332. package/dist/hardware/index.d.ts +7 -0
  333. package/dist/hardware/index.js +8 -0
  334. package/dist/hardware/index.js.map +1 -0
  335. package/dist/hardware/override.d.ts +46 -0
  336. package/dist/hardware/override.js +81 -0
  337. package/dist/hardware/override.js.map +1 -0
  338. package/dist/host/index.d.ts +15 -0
  339. package/dist/host/index.js +16 -0
  340. package/dist/host/index.js.map +1 -0
  341. package/dist/index.d.ts +5 -0
  342. package/dist/index.js +6 -0
  343. package/dist/index.js.map +1 -0
  344. package/dist/integrations/catalog.d.ts +67 -0
  345. package/dist/integrations/catalog.js +385 -0
  346. package/dist/integrations/catalog.js.map +1 -0
  347. package/dist/integrations/config-io.d.ts +86 -0
  348. package/dist/integrations/config-io.js +229 -0
  349. package/dist/integrations/config-io.js.map +1 -0
  350. package/dist/integrations/configure/atomic-agent.d.ts +33 -0
  351. package/dist/integrations/configure/atomic-agent.js +127 -0
  352. package/dist/integrations/configure/atomic-agent.js.map +1 -0
  353. package/dist/integrations/configure/claude-code.d.ts +16 -0
  354. package/dist/integrations/configure/claude-code.js +45 -0
  355. package/dist/integrations/configure/claude-code.js.map +1 -0
  356. package/dist/integrations/configure/cline.d.ts +28 -0
  357. package/dist/integrations/configure/cline.js +70 -0
  358. package/dist/integrations/configure/cline.js.map +1 -0
  359. package/dist/integrations/configure/codex.d.ts +17 -0
  360. package/dist/integrations/configure/codex.js +43 -0
  361. package/dist/integrations/configure/codex.js.map +1 -0
  362. package/dist/integrations/configure/copilot.d.ts +10 -0
  363. package/dist/integrations/configure/copilot.js +14 -0
  364. package/dist/integrations/configure/copilot.js.map +1 -0
  365. package/dist/integrations/configure/droid.d.ts +12 -0
  366. package/dist/integrations/configure/droid.js +47 -0
  367. package/dist/integrations/configure/droid.js.map +1 -0
  368. package/dist/integrations/configure/dsh.d.ts +34 -0
  369. package/dist/integrations/configure/dsh.js +146 -0
  370. package/dist/integrations/configure/dsh.js.map +1 -0
  371. package/dist/integrations/configure/env-agent.d.ts +26 -0
  372. package/dist/integrations/configure/env-agent.js +41 -0
  373. package/dist/integrations/configure/env-agent.js.map +1 -0
  374. package/dist/integrations/configure/goose.d.ts +12 -0
  375. package/dist/integrations/configure/goose.js +16 -0
  376. package/dist/integrations/configure/goose.js.map +1 -0
  377. package/dist/integrations/configure/hermes.d.ts +41 -0
  378. package/dist/integrations/configure/hermes.js +247 -0
  379. package/dist/integrations/configure/hermes.js.map +1 -0
  380. package/dist/integrations/configure/index.d.ts +25 -0
  381. package/dist/integrations/configure/index.js +26 -0
  382. package/dist/integrations/configure/index.js.map +1 -0
  383. package/dist/integrations/configure/json-tree.d.ts +16 -0
  384. package/dist/integrations/configure/json-tree.js +19 -0
  385. package/dist/integrations/configure/json-tree.js.map +1 -0
  386. package/dist/integrations/configure/kilo.d.ts +9 -0
  387. package/dist/integrations/configure/kilo.js +19 -0
  388. package/dist/integrations/configure/kilo.js.map +1 -0
  389. package/dist/integrations/configure/mimo.d.ts +9 -0
  390. package/dist/integrations/configure/mimo.js +19 -0
  391. package/dist/integrations/configure/mimo.js.map +1 -0
  392. package/dist/integrations/configure/muse.d.ts +9 -0
  393. package/dist/integrations/configure/muse.js +13 -0
  394. package/dist/integrations/configure/muse.js.map +1 -0
  395. package/dist/integrations/configure/openclaude.d.ts +13 -0
  396. package/dist/integrations/configure/openclaude.js +56 -0
  397. package/dist/integrations/configure/openclaude.js.map +1 -0
  398. package/dist/integrations/configure/openclaw.d.ts +24 -0
  399. package/dist/integrations/configure/openclaw.js +99 -0
  400. package/dist/integrations/configure/openclaw.js.map +1 -0
  401. package/dist/integrations/configure/opencode-style.d.ts +25 -0
  402. package/dist/integrations/configure/opencode-style.js +43 -0
  403. package/dist/integrations/configure/opencode-style.js.map +1 -0
  404. package/dist/integrations/configure/opencode.d.ts +9 -0
  405. package/dist/integrations/configure/opencode.js +19 -0
  406. package/dist/integrations/configure/opencode.js.map +1 -0
  407. package/dist/integrations/configure/openhands.d.ts +8 -0
  408. package/dist/integrations/configure/openhands.js +12 -0
  409. package/dist/integrations/configure/openhands.js.map +1 -0
  410. package/dist/integrations/configure/pi.d.ts +14 -0
  411. package/dist/integrations/configure/pi.js +49 -0
  412. package/dist/integrations/configure/pi.js.map +1 -0
  413. package/dist/integrations/configure/poolside.d.ts +8 -0
  414. package/dist/integrations/configure/poolside.js +12 -0
  415. package/dist/integrations/configure/poolside.js.map +1 -0
  416. package/dist/integrations/configure/registry.d.ts +41 -0
  417. package/dist/integrations/configure/registry.js +50 -0
  418. package/dist/integrations/configure/registry.js.map +1 -0
  419. package/dist/integrations/configure/zcode.d.ts +59 -0
  420. package/dist/integrations/configure/zcode.js +260 -0
  421. package/dist/integrations/configure/zcode.js.map +1 -0
  422. package/dist/integrations/configure/zed.d.ts +16 -0
  423. package/dist/integrations/configure/zed.js +61 -0
  424. package/dist/integrations/configure/zed.js.map +1 -0
  425. package/dist/integrations/detect.d.ts +29 -0
  426. package/dist/integrations/detect.js +43 -0
  427. package/dist/integrations/detect.js.map +1 -0
  428. package/dist/integrations/index.d.ts +9 -0
  429. package/dist/integrations/index.js +10 -0
  430. package/dist/integrations/index.js.map +1 -0
  431. package/dist/lock/control-token.d.ts +19 -0
  432. package/dist/lock/control-token.js +58 -0
  433. package/dist/lock/control-token.js.map +1 -0
  434. package/dist/lock/index.d.ts +10 -0
  435. package/dist/lock/index.js +11 -0
  436. package/dist/lock/index.js.map +1 -0
  437. package/dist/lock/instance-lock.d.ts +93 -0
  438. package/dist/lock/instance-lock.js +244 -0
  439. package/dist/lock/instance-lock.js.map +1 -0
  440. package/dist/lock/legacy-guard.d.ts +46 -0
  441. package/dist/lock/legacy-guard.js +87 -0
  442. package/dist/lock/legacy-guard.js.map +1 -0
  443. package/dist/lock/model-claim.d.ts +20 -0
  444. package/dist/lock/model-claim.js +84 -0
  445. package/dist/lock/model-claim.js.map +1 -0
  446. package/dist/lock/process-identity.d.ts +48 -0
  447. package/dist/lock/process-identity.js +180 -0
  448. package/dist/lock/process-identity.js.map +1 -0
  449. package/dist/lock/process-journal.d.ts +56 -0
  450. package/dist/lock/process-journal.js +113 -0
  451. package/dist/lock/process-journal.js.map +1 -0
  452. package/dist/models/capabilities.d.ts +73 -0
  453. package/dist/models/capabilities.js +123 -0
  454. package/dist/models/capabilities.js.map +1 -0
  455. package/dist/models/embed.d.ts +30 -0
  456. package/dist/models/embed.js +83 -0
  457. package/dist/models/embed.js.map +1 -0
  458. package/dist/models/gguf/classify.d.ts +29 -0
  459. package/dist/models/gguf/classify.js +89 -0
  460. package/dist/models/gguf/classify.js.map +1 -0
  461. package/dist/models/gguf/index.d.ts +5 -0
  462. package/dist/models/gguf/index.js +6 -0
  463. package/dist/models/gguf/index.js.map +1 -0
  464. package/dist/models/gguf/kv-cache.d.ts +27 -0
  465. package/dist/models/gguf/kv-cache.js +101 -0
  466. package/dist/models/gguf/kv-cache.js.map +1 -0
  467. package/dist/models/gguf/read-file.d.ts +11 -0
  468. package/dist/models/gguf/read-file.js +21 -0
  469. package/dist/models/gguf/read-file.js.map +1 -0
  470. package/dist/models/gguf/reader.d.ts +40 -0
  471. package/dist/models/gguf/reader.js +271 -0
  472. package/dist/models/gguf/reader.js.map +1 -0
  473. package/dist/models/gguf/support.d.ts +47 -0
  474. package/dist/models/gguf/support.js +48 -0
  475. package/dist/models/gguf/support.js.map +1 -0
  476. package/dist/models/hf.d.ts +35 -0
  477. package/dist/models/hf.js +140 -0
  478. package/dist/models/hf.js.map +1 -0
  479. package/dist/models/index.d.ts +14 -0
  480. package/dist/models/index.js +15 -0
  481. package/dist/models/index.js.map +1 -0
  482. package/dist/models/model-yml.d.ts +22 -0
  483. package/dist/models/model-yml.js +63 -0
  484. package/dist/models/model-yml.js.map +1 -0
  485. package/dist/models/registry.d.ts +51 -0
  486. package/dist/models/registry.js +102 -0
  487. package/dist/models/registry.js.map +1 -0
  488. package/dist/models/shards.d.ts +20 -0
  489. package/dist/models/shards.js +46 -0
  490. package/dist/models/shards.js.map +1 -0
  491. package/dist/remote-access/cloudflared-args.d.ts +41 -0
  492. package/dist/remote-access/cloudflared-args.js +59 -0
  493. package/dist/remote-access/cloudflared-args.js.map +1 -0
  494. package/dist/remote-access/cloudflared-output.d.ts +26 -0
  495. package/dist/remote-access/cloudflared-output.js +51 -0
  496. package/dist/remote-access/cloudflared-output.js.map +1 -0
  497. package/dist/remote-access/index.d.ts +16 -0
  498. package/dist/remote-access/index.js +17 -0
  499. package/dist/remote-access/index.js.map +1 -0
  500. package/dist/remote-access/journal.d.ts +63 -0
  501. package/dist/remote-access/journal.js +140 -0
  502. package/dist/remote-access/journal.js.map +1 -0
  503. package/dist/remote-access/lan-probe.d.ts +28 -0
  504. package/dist/remote-access/lan-probe.js +63 -0
  505. package/dist/remote-access/lan-probe.js.map +1 -0
  506. package/dist/remote-access/lan.d.ts +31 -0
  507. package/dist/remote-access/lan.js +90 -0
  508. package/dist/remote-access/lan.js.map +1 -0
  509. package/dist/remote-access/manager.d.ts +111 -0
  510. package/dist/remote-access/manager.js +316 -0
  511. package/dist/remote-access/manager.js.map +1 -0
  512. package/dist/remote-access/probe.d.ts +92 -0
  513. package/dist/remote-access/probe.js +186 -0
  514. package/dist/remote-access/probe.js.map +1 -0
  515. package/dist/remote-access/process.d.ts +66 -0
  516. package/dist/remote-access/process.js +160 -0
  517. package/dist/remote-access/process.js.map +1 -0
  518. package/dist/remote-access/spawner.d.ts +25 -0
  519. package/dist/remote-access/spawner.js +49 -0
  520. package/dist/remote-access/spawner.js.map +1 -0
  521. package/dist/remote-access/status.d.ts +39 -0
  522. package/dist/remote-access/status.js +49 -0
  523. package/dist/remote-access/status.js.map +1 -0
  524. package/dist/remote-access/wiring.d.ts +34 -0
  525. package/dist/remote-access/wiring.js +47 -0
  526. package/dist/remote-access/wiring.js.map +1 -0
  527. package/dist/router/index.d.ts +7 -0
  528. package/dist/router/index.js +8 -0
  529. package/dist/router/index.js.map +1 -0
  530. package/dist/router/resolve.d.ts +41 -0
  531. package/dist/router/resolve.js +53 -0
  532. package/dist/router/resolve.js.map +1 -0
  533. package/dist/runtime/foundation-models/errors.d.ts +28 -0
  534. package/dist/runtime/foundation-models/errors.js +48 -0
  535. package/dist/runtime/foundation-models/errors.js.map +1 -0
  536. package/dist/runtime/foundation-models/index.d.ts +8 -0
  537. package/dist/runtime/foundation-models/index.js +9 -0
  538. package/dist/runtime/foundation-models/index.js.map +1 -0
  539. package/dist/runtime/foundation-models/runtime.d.ts +73 -0
  540. package/dist/runtime/foundation-models/runtime.js +186 -0
  541. package/dist/runtime/foundation-models/runtime.js.map +1 -0
  542. package/dist/runtime/index.d.ts +5 -0
  543. package/dist/runtime/index.js +6 -0
  544. package/dist/runtime/index.js.map +1 -0
  545. package/dist/runtime/llamacpp/args.d.ts +90 -0
  546. package/dist/runtime/llamacpp/args.js +379 -0
  547. package/dist/runtime/llamacpp/args.js.map +1 -0
  548. package/dist/runtime/llamacpp/ctx-ladder.d.ts +16 -0
  549. package/dist/runtime/llamacpp/ctx-ladder.js +28 -0
  550. package/dist/runtime/llamacpp/ctx-ladder.js.map +1 -0
  551. package/dist/runtime/llamacpp/devices.d.ts +26 -0
  552. package/dist/runtime/llamacpp/devices.js +86 -0
  553. package/dist/runtime/llamacpp/devices.js.map +1 -0
  554. package/dist/runtime/llamacpp/errors.d.ts +34 -0
  555. package/dist/runtime/llamacpp/errors.js +137 -0
  556. package/dist/runtime/llamacpp/errors.js.map +1 -0
  557. package/dist/runtime/llamacpp/index.d.ts +14 -0
  558. package/dist/runtime/llamacpp/index.js +15 -0
  559. package/dist/runtime/llamacpp/index.js.map +1 -0
  560. package/dist/runtime/llamacpp/load-plan.d.ts +113 -0
  561. package/dist/runtime/llamacpp/load-plan.js +259 -0
  562. package/dist/runtime/llamacpp/load-plan.js.map +1 -0
  563. package/dist/runtime/llamacpp/policy.d.ts +70 -0
  564. package/dist/runtime/llamacpp/policy.js +191 -0
  565. package/dist/runtime/llamacpp/policy.js.map +1 -0
  566. package/dist/runtime/llamacpp/probe.d.ts +13 -0
  567. package/dist/runtime/llamacpp/probe.js +35 -0
  568. package/dist/runtime/llamacpp/probe.js.map +1 -0
  569. package/dist/runtime/llamacpp/runtime-device.d.ts +33 -0
  570. package/dist/runtime/llamacpp/runtime-device.js +169 -0
  571. package/dist/runtime/llamacpp/runtime-device.js.map +1 -0
  572. package/dist/runtime/llamacpp/runtime.d.ts +151 -0
  573. package/dist/runtime/llamacpp/runtime.js +535 -0
  574. package/dist/runtime/llamacpp/runtime.js.map +1 -0
  575. package/dist/runtime/mlx/args.d.ts +10 -0
  576. package/dist/runtime/mlx/args.js +44 -0
  577. package/dist/runtime/mlx/args.js.map +1 -0
  578. package/dist/runtime/mlx/config.d.ts +71 -0
  579. package/dist/runtime/mlx/config.js +91 -0
  580. package/dist/runtime/mlx/config.js.map +1 -0
  581. package/dist/runtime/mlx/errors.d.ts +21 -0
  582. package/dist/runtime/mlx/errors.js +73 -0
  583. package/dist/runtime/mlx/errors.js.map +1 -0
  584. package/dist/runtime/mlx/index.d.ts +12 -0
  585. package/dist/runtime/mlx/index.js +13 -0
  586. package/dist/runtime/mlx/index.js.map +1 -0
  587. package/dist/runtime/mlx/model-files.d.ts +29 -0
  588. package/dist/runtime/mlx/model-files.js +82 -0
  589. package/dist/runtime/mlx/model-files.js.map +1 -0
  590. package/dist/runtime/mlx/runtime.d.ts +77 -0
  591. package/dist/runtime/mlx/runtime.js +223 -0
  592. package/dist/runtime/mlx/runtime.js.map +1 -0
  593. package/dist/runtime/mlx/shard-repair.d.ts +25 -0
  594. package/dist/runtime/mlx/shard-repair.js +44 -0
  595. package/dist/runtime/mlx/shard-repair.js.map +1 -0
  596. package/dist/runtime/shared/env.d.ts +49 -0
  597. package/dist/runtime/shared/env.js +155 -0
  598. package/dist/runtime/shared/env.js.map +1 -0
  599. package/dist/runtime/shared/external-sessions.d.ts +67 -0
  600. package/dist/runtime/shared/external-sessions.js +155 -0
  601. package/dist/runtime/shared/external-sessions.js.map +1 -0
  602. package/dist/runtime/shared/index.d.ts +17 -0
  603. package/dist/runtime/shared/index.js +18 -0
  604. package/dist/runtime/shared/index.js.map +1 -0
  605. package/dist/runtime/shared/load-cancel.d.ts +45 -0
  606. package/dist/runtime/shared/load-cancel.js +95 -0
  607. package/dist/runtime/shared/load-cancel.js.map +1 -0
  608. package/dist/runtime/shared/local-runtime.d.ts +68 -0
  609. package/dist/runtime/shared/local-runtime.js +12 -0
  610. package/dist/runtime/shared/local-runtime.js.map +1 -0
  611. package/dist/runtime/shared/log-stream.d.ts +4 -0
  612. package/dist/runtime/shared/log-stream.js +28 -0
  613. package/dist/runtime/shared/log-stream.js.map +1 -0
  614. package/dist/runtime/shared/paths.d.ts +21 -0
  615. package/dist/runtime/shared/paths.js +63 -0
  616. package/dist/runtime/shared/paths.js.map +1 -0
  617. package/dist/runtime/shared/ports.d.ts +26 -0
  618. package/dist/runtime/shared/ports.js +45 -0
  619. package/dist/runtime/shared/ports.js.map +1 -0
  620. package/dist/runtime/shared/process.d.ts +95 -0
  621. package/dist/runtime/shared/process.js +224 -0
  622. package/dist/runtime/shared/process.js.map +1 -0
  623. package/dist/runtime/shared/sidecar.d.ts +86 -0
  624. package/dist/runtime/shared/sidecar.js +214 -0
  625. package/dist/runtime/shared/sidecar.js.map +1 -0
  626. package/dist/server/clients.d.ts +40 -0
  627. package/dist/server/clients.js +74 -0
  628. package/dist/server/clients.js.map +1 -0
  629. package/dist/server/control/index.d.ts +12 -0
  630. package/dist/server/control/index.js +12 -0
  631. package/dist/server/control/index.js.map +1 -0
  632. package/dist/server/control/router.d.ts +9 -0
  633. package/dist/server/control/router.js +61 -0
  634. package/dist/server/control/router.js.map +1 -0
  635. package/dist/server/control/routes/backends.d.ts +4 -0
  636. package/dist/server/control/routes/backends.js +47 -0
  637. package/dist/server/control/routes/backends.js.map +1 -0
  638. package/dist/server/control/routes/clients.d.ts +4 -0
  639. package/dist/server/control/routes/clients.js +30 -0
  640. package/dist/server/control/routes/clients.js.map +1 -0
  641. package/dist/server/control/routes/cloud.d.ts +4 -0
  642. package/dist/server/control/routes/cloud.js +32 -0
  643. package/dist/server/control/routes/cloud.js.map +1 -0
  644. package/dist/server/control/routes/diffusion-video.d.ts +10 -0
  645. package/dist/server/control/routes/diffusion-video.js +33 -0
  646. package/dist/server/control/routes/diffusion-video.js.map +1 -0
  647. package/dist/server/control/routes/diffusion.d.ts +15 -0
  648. package/dist/server/control/routes/diffusion.js +71 -0
  649. package/dist/server/control/routes/diffusion.js.map +1 -0
  650. package/dist/server/control/routes/disk.d.ts +4 -0
  651. package/dist/server/control/routes/disk.js +11 -0
  652. package/dist/server/control/routes/disk.js.map +1 -0
  653. package/dist/server/control/routes/external-sessions.d.ts +4 -0
  654. package/dist/server/control/routes/external-sessions.js +27 -0
  655. package/dist/server/control/routes/external-sessions.js.map +1 -0
  656. package/dist/server/control/routes/hardware.d.ts +4 -0
  657. package/dist/server/control/routes/hardware.js +14 -0
  658. package/dist/server/control/routes/hardware.js.map +1 -0
  659. package/dist/server/control/routes/lifecycle.d.ts +12 -0
  660. package/dist/server/control/routes/lifecycle.js +67 -0
  661. package/dist/server/control/routes/lifecycle.js.map +1 -0
  662. package/dist/server/control/routes/models.d.ts +7 -0
  663. package/dist/server/control/routes/models.js +59 -0
  664. package/dist/server/control/routes/models.js.map +1 -0
  665. package/dist/server/control/routes/public-server.d.ts +4 -0
  666. package/dist/server/control/routes/public-server.js +30 -0
  667. package/dist/server/control/routes/public-server.js.map +1 -0
  668. package/dist/server/control/routes/remote-access.d.ts +7 -0
  669. package/dist/server/control/routes/remote-access.js +16 -0
  670. package/dist/server/control/routes/remote-access.js.map +1 -0
  671. package/dist/server/control/routes/settings.d.ts +4 -0
  672. package/dist/server/control/routes/settings.js +58 -0
  673. package/dist/server/control/routes/settings.js.map +1 -0
  674. package/dist/server/control/routes/telemetry.d.ts +7 -0
  675. package/dist/server/control/routes/telemetry.js +46 -0
  676. package/dist/server/control/routes/telemetry.js.map +1 -0
  677. package/dist/server/control/server.d.ts +26 -0
  678. package/dist/server/control/server.js +111 -0
  679. package/dist/server/control/server.js.map +1 -0
  680. package/dist/server/control/types.d.ts +271 -0
  681. package/dist/server/control/types.js +6 -0
  682. package/dist/server/control/types.js.map +1 -0
  683. package/dist/server/http.d.ts +62 -0
  684. package/dist/server/http.js +220 -0
  685. package/dist/server/http.js.map +1 -0
  686. package/dist/server/index.d.ts +9 -0
  687. package/dist/server/index.js +10 -0
  688. package/dist/server/index.js.map +1 -0
  689. package/dist/server/public/ctx.d.ts +23 -0
  690. package/dist/server/public/ctx.js +42 -0
  691. package/dist/server/public/ctx.js.map +1 -0
  692. package/dist/server/public/dynamic-hosts.d.ts +40 -0
  693. package/dist/server/public/dynamic-hosts.js +117 -0
  694. package/dist/server/public/dynamic-hosts.js.map +1 -0
  695. package/dist/server/public/errors.d.ts +36 -0
  696. package/dist/server/public/errors.js +120 -0
  697. package/dist/server/public/errors.js.map +1 -0
  698. package/dist/server/public/exchange.d.ts +42 -0
  699. package/dist/server/public/exchange.js +85 -0
  700. package/dist/server/public/exchange.js.map +1 -0
  701. package/dist/server/public/forward.d.ts +53 -0
  702. package/dist/server/public/forward.js +448 -0
  703. package/dist/server/public/forward.js.map +1 -0
  704. package/dist/server/public/gates.d.ts +49 -0
  705. package/dist/server/public/gates.js +181 -0
  706. package/dist/server/public/gates.js.map +1 -0
  707. package/dist/server/public/images-params.d.ts +50 -0
  708. package/dist/server/public/images-params.js +162 -0
  709. package/dist/server/public/images-params.js.map +1 -0
  710. package/dist/server/public/images.d.ts +12 -0
  711. package/dist/server/public/images.js +96 -0
  712. package/dist/server/public/images.js.map +1 -0
  713. package/dist/server/public/index.d.ts +58 -0
  714. package/dist/server/public/index.js +253 -0
  715. package/dist/server/public/index.js.map +1 -0
  716. package/dist/server/public/listing.d.ts +27 -0
  717. package/dist/server/public/listing.js +116 -0
  718. package/dist/server/public/listing.js.map +1 -0
  719. package/dist/server/public/responses.d.ts +11 -0
  720. package/dist/server/public/responses.js +158 -0
  721. package/dist/server/public/responses.js.map +1 -0
  722. package/dist/server/public/sse.d.ts +33 -0
  723. package/dist/server/public/sse.js +48 -0
  724. package/dist/server/public/sse.js.map +1 -0
  725. package/dist/server/public/static-assets.generated.d.ts +3 -0
  726. package/dist/server/public/static-assets.generated.js +6 -0
  727. package/dist/server/public/static-assets.generated.js.map +1 -0
  728. package/dist/server/public/static.d.ts +13 -0
  729. package/dist/server/public/static.js +75 -0
  730. package/dist/server/public/static.js.map +1 -0
  731. package/dist/server/public/subscription.d.ts +14 -0
  732. package/dist/server/public/subscription.js +56 -0
  733. package/dist/server/public/subscription.js.map +1 -0
  734. package/dist/server/public/telemetry.d.ts +65 -0
  735. package/dist/server/public/telemetry.js +284 -0
  736. package/dist/server/public/telemetry.js.map +1 -0
  737. package/dist/server/public/trace.d.ts +66 -0
  738. package/dist/server/public/trace.js +223 -0
  739. package/dist/server/public/trace.js.map +1 -0
  740. package/dist/server/public/types.d.ts +131 -0
  741. package/dist/server/public/types.js +9 -0
  742. package/dist/server/public/types.js.map +1 -0
  743. package/dist/server/public/videos-params.d.ts +95 -0
  744. package/dist/server/public/videos-params.js +220 -0
  745. package/dist/server/public/videos-params.js.map +1 -0
  746. package/dist/server/public/videos.d.ts +16 -0
  747. package/dist/server/public/videos.js +188 -0
  748. package/dist/server/public/videos.js.map +1 -0
  749. package/dist/server/public/wire.d.ts +53 -0
  750. package/dist/server/public/wire.js +174 -0
  751. package/dist/server/public/wire.js.map +1 -0
  752. package/dist/server/shims/anthropic.d.ts +52 -0
  753. package/dist/server/shims/anthropic.js +519 -0
  754. package/dist/server/shims/anthropic.js.map +1 -0
  755. package/dist/server/shims/chat-to-responses.d.ts +113 -0
  756. package/dist/server/shims/chat-to-responses.js +557 -0
  757. package/dist/server/shims/chat-to-responses.js.map +1 -0
  758. package/dist/server/shims/index.d.ts +8 -0
  759. package/dist/server/shims/index.js +9 -0
  760. package/dist/server/shims/index.js.map +1 -0
  761. package/dist/server/shims/json.d.ts +10 -0
  762. package/dist/server/shims/json.js +78 -0
  763. package/dist/server/shims/json.js.map +1 -0
  764. package/dist/server/shims/responses.d.ts +79 -0
  765. package/dist/server/shims/responses.js +543 -0
  766. package/dist/server/shims/responses.js.map +1 -0
  767. package/dist/server/state-file.d.ts +44 -0
  768. package/dist/server/state-file.js +107 -0
  769. package/dist/server/state-file.js.map +1 -0
  770. package/dist/settings/import.d.ts +61 -0
  771. package/dist/settings/import.js +104 -0
  772. package/dist/settings/import.js.map +1 -0
  773. package/dist/settings/index.d.ts +11 -0
  774. package/dist/settings/index.js +12 -0
  775. package/dist/settings/index.js.map +1 -0
  776. package/dist/settings/schema/foundation-models.json +1 -0
  777. package/dist/settings/schema/llamacpp-upstream.json +489 -0
  778. package/dist/settings/schema/llamacpp.json +475 -0
  779. package/dist/settings/schema/mlx.json +136 -0
  780. package/dist/settings/schema.d.ts +35 -0
  781. package/dist/settings/schema.js +196 -0
  782. package/dist/settings/schema.js.map +1 -0
  783. package/dist/settings/store.d.ts +168 -0
  784. package/dist/settings/store.js +350 -0
  785. package/dist/settings/store.js.map +1 -0
  786. package/dist/speculative/chat-template-overrides.d.ts +35 -0
  787. package/dist/speculative/chat-template-overrides.js +142 -0
  788. package/dist/speculative/chat-template-overrides.js.map +1 -0
  789. package/dist/speculative/dflash-registry.d.ts +50 -0
  790. package/dist/speculative/dflash-registry.js +258 -0
  791. package/dist/speculative/dflash-registry.js.map +1 -0
  792. package/dist/speculative/gemma-mtp-registry.d.ts +48 -0
  793. package/dist/speculative/gemma-mtp-registry.js +79 -0
  794. package/dist/speculative/gemma-mtp-registry.js.map +1 -0
  795. package/dist/speculative/index.d.ts +18 -0
  796. package/dist/speculative/index.js +19 -0
  797. package/dist/speculative/index.js.map +1 -0
  798. package/dist/speculative/mlx-dflash-registry.d.ts +39 -0
  799. package/dist/speculative/mlx-dflash-registry.js +230 -0
  800. package/dist/speculative/mlx-dflash-registry.js.map +1 -0
  801. package/dist/speculative/mlx-eagle3-registry.d.ts +24 -0
  802. package/dist/speculative/mlx-eagle3-registry.js +81 -0
  803. package/dist/speculative/mlx-eagle3-registry.js.map +1 -0
  804. package/dist/speculative/mlx-mtp-registry.d.ts +31 -0
  805. package/dist/speculative/mlx-mtp-registry.js +139 -0
  806. package/dist/speculative/mlx-mtp-registry.js.map +1 -0
  807. package/dist/speculative/transcription-registry.d.ts +72 -0
  808. package/dist/speculative/transcription-registry.js +94 -0
  809. package/dist/speculative/transcription-registry.js.map +1 -0
  810. package/dist/telemetry/config.d.ts +38 -0
  811. package/dist/telemetry/config.js +44 -0
  812. package/dist/telemetry/config.js.map +1 -0
  813. package/dist/telemetry/consent.d.ts +21 -0
  814. package/dist/telemetry/consent.js +35 -0
  815. package/dist/telemetry/consent.js.map +1 -0
  816. package/dist/telemetry/core-reporter.d.ts +47 -0
  817. package/dist/telemetry/core-reporter.js +72 -0
  818. package/dist/telemetry/core-reporter.js.map +1 -0
  819. package/dist/telemetry/daemon.d.ts +40 -0
  820. package/dist/telemetry/daemon.js +67 -0
  821. package/dist/telemetry/daemon.js.map +1 -0
  822. package/dist/telemetry/dsn.d.ts +15 -0
  823. package/dist/telemetry/dsn.js +32 -0
  824. package/dist/telemetry/dsn.js.map +1 -0
  825. package/dist/telemetry/envelope.d.ts +97 -0
  826. package/dist/telemetry/envelope.js +95 -0
  827. package/dist/telemetry/envelope.js.map +1 -0
  828. package/dist/telemetry/index.d.ts +18 -0
  829. package/dist/telemetry/index.js +19 -0
  830. package/dist/telemetry/index.js.map +1 -0
  831. package/dist/telemetry/policy.d.ts +39 -0
  832. package/dist/telemetry/policy.js +142 -0
  833. package/dist/telemetry/policy.js.map +1 -0
  834. package/dist/telemetry/reporter.d.ts +80 -0
  835. package/dist/telemetry/reporter.js +0 -0
  836. package/dist/telemetry/reporter.js.map +1 -0
  837. package/dist/telemetry/reports.d.ts +68 -0
  838. package/dist/telemetry/reports.js +212 -0
  839. package/dist/telemetry/reports.js.map +1 -0
  840. package/dist/telemetry/scrub.d.ts +19 -0
  841. package/dist/telemetry/scrub.js +75 -0
  842. package/dist/telemetry/scrub.js.map +1 -0
  843. package/dist/telemetry/stack.d.ts +21 -0
  844. package/dist/telemetry/stack.js +68 -0
  845. package/dist/telemetry/stack.js.map +1 -0
  846. package/dist/telemetry/store.d.ts +17 -0
  847. package/dist/telemetry/store.js +51 -0
  848. package/dist/telemetry/store.js.map +1 -0
  849. package/dist/telemetry/subscribe.d.ts +13 -0
  850. package/dist/telemetry/subscribe.js +19 -0
  851. package/dist/telemetry/subscribe.js.map +1 -0
  852. package/dist/telemetry/types.d.ts +40 -0
  853. package/dist/telemetry/types.js +2 -0
  854. package/dist/telemetry/types.js.map +1 -0
  855. package/dist/util/index.d.ts +5 -0
  856. package/dist/util/index.js +6 -0
  857. package/dist/util/index.js.map +1 -0
  858. package/dist/util/rust-number.d.ts +27 -0
  859. package/dist/util/rust-number.js +101 -0
  860. package/dist/util/rust-number.js.map +1 -0
  861. package/dist/version.d.ts +2 -0
  862. package/dist/version.js +3 -0
  863. package/dist/version.js.map +1 -0
  864. package/package.json +86 -0
  865. package/src/settings/schema/foundation-models.json +1 -0
  866. package/src/settings/schema/llamacpp-upstream.json +489 -0
  867. package/src/settings/schema/llamacpp.json +475 -0
  868. package/src/settings/schema/mlx.json +136 -0
@@ -0,0 +1,99 @@
1
+ /**
2
+ * OpenClaw keeps one config for the CLI and both desktop apps in `~/.openclaw/openclaw.json`
3
+ * (overridable with `OPENCLAW_CONFIG_PATH`); its Gateway watches the file and hot-reloads, so one
4
+ * write covers everything with no restart.
5
+ *
6
+ * The merge has two tiers. Keys that express a decision the user may have made deliberately are
7
+ * SEEDED only when absent — `models.mode`, `gateway.mode`, `gateway.auth.mode`,
8
+ * `agents.defaults.timeoutSeconds`, and the per-model settings entry. Keys that say "run this model
9
+ * now" are always OVERWRITTEN — our provider block and `agents.defaults.model.primary`.
10
+ *
11
+ * The one non-obvious rule is `modelPolicy.allow`. When it is non-empty it gates model selection
12
+ * entirely, so a user restricted to a cloud provider would watch Run "succeed" and then be told our
13
+ * model is not allowed — hence the `atomic/*` widening. But an absent key or `[]` already means
14
+ * "allow anything", so writing into it would INTRODUCE a restriction nobody asked for. Those are
15
+ * left exactly as they are.
16
+ */
17
+ import { AtomicCoreError } from '../../contracts/index.js';
18
+ import { canonicalJson, keyOr, parseJsonLenient } from '../config-io.js';
19
+ import { asJsonArray, asJsonObject } from './json-tree.js';
20
+ import { registerWriter } from './registry.js';
21
+ const PROVIDER_ID = 'atomic';
22
+ const DEFAULT_PATH = '.openclaw/openclaw.json';
23
+ /** Small local models blow past OpenClaw's short default once wrapped in the agent prompt + tools. */
24
+ const DEFAULT_TIMEOUT_SECONDS = 240;
25
+ /** Read `<parent>[key]` as an object, creating it when absent; anything else is a hard error. */
26
+ function childObject(parent, key, label) {
27
+ if (parent[key] === undefined)
28
+ parent[key] = {};
29
+ const child = asJsonObject(parent[key]);
30
+ if (!child)
31
+ throw new AtomicCoreError('IO_ERROR', `${label} is not a JSON object`);
32
+ return child;
33
+ }
34
+ /** Whether an allow-list already covers `modelRef`. A trailing `*` makes the entry a prefix match. */
35
+ export function modelPolicyAllows(list, modelRef) {
36
+ return list.some((entry) => {
37
+ if (typeof entry !== 'string')
38
+ return false;
39
+ return entry.endsWith('*') ? modelRef.startsWith(entry.slice(0, -1)) : entry === modelRef;
40
+ });
41
+ }
42
+ /** The whole merge, with no I/O, so every rule above is testable against a plain object. */
43
+ export function openclawPatchConfig(parsed, apiUrl, model, apiKey) {
44
+ const root = asJsonObject(parsed);
45
+ if (!root)
46
+ throw new AtomicCoreError('IO_ERROR', 'openclaw.json is not a JSON object');
47
+ const modelRef = `${PROVIDER_ID}/${model}`;
48
+ const models = childObject(root, 'models', 'models');
49
+ if (models['mode'] === undefined)
50
+ models['mode'] = 'merge';
51
+ const providers = childObject(models, 'providers', 'models.providers');
52
+ // The catalog entry's `id` is the bare model id our /v1 server reports; OpenClaw builds the ref as
53
+ // `<providerId>/<id>`, so prefixing here would double it to `atomic/atomic/…` and break lookup.
54
+ providers[PROVIDER_ID] = {
55
+ baseUrl: apiUrl,
56
+ apiKey: keyOr(apiKey, 'atomic'),
57
+ api: 'openai-completions',
58
+ models: [{ id: model, name: model }],
59
+ };
60
+ // The local gateway refuses to open its websocket without connection auth; for a loopback-only
61
+ // setup "none" (private-ingress open auth) is what makes the agent reachable with no token.
62
+ const gateway = childObject(root, 'gateway', 'gateway');
63
+ if (gateway['mode'] === undefined)
64
+ gateway['mode'] = 'local';
65
+ const auth = childObject(gateway, 'auth', 'gateway.auth');
66
+ if (auth['mode'] === undefined)
67
+ auth['mode'] = 'none';
68
+ const agents = childObject(root, 'agents', 'agents');
69
+ const defaults = childObject(agents, 'defaults', 'agents.defaults');
70
+ if (defaults['timeoutSeconds'] === undefined)
71
+ defaults['timeoutSeconds'] = DEFAULT_TIMEOUT_SECONDS;
72
+ // Both a plain string and an object are accepted here, but only the object form has room for the
73
+ // fallbacks OpenClaw writes itself, so a string is normalised rather than extended.
74
+ if (asJsonObject(defaults['model']) === undefined)
75
+ defaults['model'] = {};
76
+ const modelEntry = asJsonObject(defaults['model']);
77
+ modelEntry['primary'] = modelRef;
78
+ // `agents.defaults.models` holds aliases and per-model settings. Pre-migration builds also read it
79
+ // as an allowlist, so the entry is still seeded; on current builds it restricts nothing.
80
+ const settings = childObject(defaults, 'models', 'agents.defaults.models');
81
+ if (settings[modelRef] === undefined)
82
+ settings[modelRef] = {};
83
+ const allow = asJsonArray(asJsonObject(defaults['modelPolicy'])?.['allow']);
84
+ if (allow && allow.length > 0 && !modelPolicyAllows(allow, modelRef)) {
85
+ allow.push(`${PROVIDER_ID}/*`);
86
+ }
87
+ return root;
88
+ }
89
+ export const configureOpenclaw = async ({ apiUrl, model, apiKey, fs, env, }) => {
90
+ const override = env['OPENCLAW_CONFIG_PATH'];
91
+ const path = override && override.length > 0 ? override : DEFAULT_PATH;
92
+ // OpenClaw reads this file as JSON5, so we must parse with the same leniency or we reject configs
93
+ // it happily accepts. Comments are dropped on write; every setting is preserved.
94
+ const text = await fs.read(path);
95
+ const parsed = text === undefined ? {} : parseJsonLenient(text, fs.absolute(path));
96
+ await fs.write(path, canonicalJson(openclawPatchConfig(parsed, apiUrl, model, apiKey)));
97
+ };
98
+ registerWriter('openclaw', configureOpenclaw);
99
+ //# sourceMappingURL=openclaw.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw.js","sourceRoot":"","sources":["../../../src/integrations/configure/openclaw.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * The provider block three agents share: OpenCode, its fork MiMo Code, and Kilo Code.
3
+ *
4
+ * All three keep one JSON file whose `provider.<id>` map names an `@ai-sdk/openai-compatible`
5
+ * endpoint, and all three are configured by upserting a single `atomic` entry into it and then
6
+ * selecting `"<providerId>/<modelId>"` as the active model. The Rust side has this logic written
7
+ * out three times (`configure_opencode`, `configure_mimo`, `configure_kilo`); only four things
8
+ * differ, so here it is once with those four as parameters.
9
+ *
10
+ * Everything the user already had is preserved: other providers, unrelated top-level keys, and an
11
+ * existing `$schema`. The active model is overwritten on purpose — pressing Run is an explicit
12
+ * "use this one".
13
+ */
14
+ import type { ConfigureInput } from './registry.js';
15
+ export interface OpencodeStyleSpec {
16
+ /** Config directory relative to the home, e.g. `.config/opencode`. */
17
+ dir: string;
18
+ /** File name inside `dir`. Doubles as the name used in the "not a JSON object" error. */
19
+ file: string;
20
+ /** `$schema` seeded into a config that does not carry one yet. */
21
+ schema: string;
22
+ /** `.jsonc` files are read with the json5 tolerance; strict JSON files are not. */
23
+ lenient: boolean;
24
+ }
25
+ export declare function writeOpencodeStyleConfig(input: ConfigureInput, spec: OpencodeStyleSpec): Promise<void>;
@@ -0,0 +1,43 @@
1
+ /**
2
+ * The provider block three agents share: OpenCode, its fork MiMo Code, and Kilo Code.
3
+ *
4
+ * All three keep one JSON file whose `provider.<id>` map names an `@ai-sdk/openai-compatible`
5
+ * endpoint, and all three are configured by upserting a single `atomic` entry into it and then
6
+ * selecting `"<providerId>/<modelId>"` as the active model. The Rust side has this logic written
7
+ * out three times (`configure_opencode`, `configure_mimo`, `configure_kilo`); only four things
8
+ * differ, so here it is once with those four as parameters.
9
+ *
10
+ * Everything the user already had is preserved: other providers, unrelated top-level keys, and an
11
+ * existing `$schema`. The active model is overwritten on purpose — pressing Run is an explicit
12
+ * "use this one".
13
+ */
14
+ import { AtomicCoreError } from '../../contracts/index.js';
15
+ import { canonicalJson, keyOr, parseJsonLenient, parseJsonStrict } from '../config-io.js';
16
+ import { asJsonObject } from './json-tree.js';
17
+ export async function writeOpencodeStyleConfig(input, spec) {
18
+ const { fs, apiUrl, model, apiKey } = input;
19
+ const path = `${spec.dir}/${spec.file}`;
20
+ // The directory is created before the file is read, so a parse failure below still leaves it —
21
+ // matching `create_dir_all` sitting above the read in the Rust writers.
22
+ await fs.mkdirp(spec.dir);
23
+ const text = await fs.read(path);
24
+ const parse = spec.lenient ? parseJsonLenient : parseJsonStrict;
25
+ const parsed = text === undefined ? {} : parse(text, fs.absolute(path));
26
+ const root = asJsonObject(parsed);
27
+ if (!root)
28
+ throw new AtomicCoreError('IO_ERROR', `${spec.file} is not a JSON object`);
29
+ // `entry(..).or_insert_with(..)`: an existing `$schema` wins, even an explicit `null`.
30
+ if (!('$schema' in root))
31
+ root['$schema'] = spec.schema;
32
+ const provider = asJsonObject(root['provider']) ?? {};
33
+ root['provider'] = provider;
34
+ provider['atomic'] = {
35
+ name: 'Atomic Chat',
36
+ npm: '@ai-sdk/openai-compatible',
37
+ options: { baseURL: apiUrl, apiKey: keyOr(apiKey, 'atomic') },
38
+ models: { [model]: { name: model } },
39
+ };
40
+ root['model'] = `atomic/${model}`;
41
+ await fs.write(path, canonicalJson(root));
42
+ }
43
+ //# sourceMappingURL=opencode-style.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opencode-style.js","sourceRoot":"","sources":["../../../src/integrations/configure/opencode-style.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAc7C,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,KAAqB,EACrB,IAAuB;IAEvB,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;IAC3C,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAA;IACvC,+FAA+F;IAC/F,wEAAwE;IACxE,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAEzB,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe,CAAA;IAC/D,MAAM,MAAM,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;IACvE,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;IACjC,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,IAAI,uBAAuB,CAAC,CAAA;IAErF,uFAAuF;IACvF,IAAI,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC;QAAE,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,MAAM,CAAA;IAEvD,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAA;IACrD,IAAI,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,GAAG;QACnB,IAAI,EAAE,aAAa;QACnB,GAAG,EAAE,2BAA2B;QAChC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;QAC7D,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;KACrC,CAAA;IACD,IAAI,CAAC,OAAO,CAAC,GAAG,UAAU,KAAK,EAAE,CAAA;IAEjC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;AAC3C,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * OpenCode — `~/.config/opencode/opencode.json`.
3
+ *
4
+ * Port of `configure_opencode` in `src-tauri/src/core/system/commands.rs`. Strict JSON: a file the
5
+ * parser rejects is a hard error and nothing is written, so a typo in the user's config is
6
+ * reported instead of being overwritten.
7
+ */
8
+ import type { ConfigureInput } from './registry.js';
9
+ export declare function configureOpencode(input: ConfigureInput): Promise<void>;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * OpenCode — `~/.config/opencode/opencode.json`.
3
+ *
4
+ * Port of `configure_opencode` in `src-tauri/src/core/system/commands.rs`. Strict JSON: a file the
5
+ * parser rejects is a hard error and nothing is written, so a typo in the user's config is
6
+ * reported instead of being overwritten.
7
+ */
8
+ import { registerWriter } from './registry.js';
9
+ import { writeOpencodeStyleConfig } from './opencode-style.js';
10
+ export function configureOpencode(input) {
11
+ return writeOpencodeStyleConfig(input, {
12
+ dir: '.config/opencode',
13
+ file: 'opencode.json',
14
+ schema: 'https://opencode.ai/config.json',
15
+ lenient: false,
16
+ });
17
+ }
18
+ registerWriter('opencode', configureOpencode);
19
+ //# sourceMappingURL=opencode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../../src/integrations/configure/opencode.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;AAE9D,MAAM,UAAU,iBAAiB,CAAC,KAAqB;IACrD,OAAO,wBAAwB,CAAC,KAAK,EAAE;QACrC,GAAG,EAAE,kBAAkB;QACvB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,iCAAiC;QACzC,OAAO,EAAE,KAAK;KACf,CAAC,CAAA;AACJ,CAAC;AAED,cAAc,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAA"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * OpenHands reads env overrides only when launched with `--override-with-envs`, using
3
+ * `LLM_API_KEY` / `LLM_BASE_URL` / `LLM_MODEL`. The litellm `openai/` prefix on the model id is
4
+ * required for a custom OpenAI-compatible base URL — without it litellm resolves the id against its
5
+ * own model registry and fails before the request leaves the process.
6
+ */
7
+ import type { ConfigureWriter } from './registry.js';
8
+ export declare const configureOpenhands: ConfigureWriter;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * OpenHands reads env overrides only when launched with `--override-with-envs`, using
3
+ * `LLM_API_KEY` / `LLM_BASE_URL` / `LLM_MODEL`. The litellm `openai/` prefix on the model id is
4
+ * required for a custom OpenAI-compatible base URL — without it litellm resolves the id against its
5
+ * own model registry and fails before the request leaves the process.
6
+ */
7
+ import { registerWriter } from './registry.js';
8
+ import { configureEnvAgent } from './env-agent.js';
9
+ const MARKER = '# Atomic Chat - OpenHands Config';
10
+ export const configureOpenhands = (input) => configureEnvAgent(input, { agentId: 'openhands', marker: MARKER, prefix: 'LLM_' });
11
+ registerWriter('openhands', configureOpenhands);
12
+ //# sourceMappingURL=openhands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openhands.js","sourceRoot":"","sources":["../../../src/integrations/configure/openhands.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAElD,MAAM,MAAM,GAAG,kCAAkC,CAAA;AAEjD,MAAM,CAAC,MAAM,kBAAkB,GAAoB,CAAC,KAAK,EAAE,EAAE,CAC3D,iBAAiB,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;AAEpF,cAAc,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAA"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Pi — `~/.pi/agent/models.json` and `~/.pi/agent/settings.json`.
3
+ *
4
+ * Port of `configure_pi` in `src-tauri/src/core/system/commands.rs`. Pi splits the two halves of an
5
+ * integration across two strict-JSON files: `models.json` declares the provider and the models it
6
+ * serves, `settings.json` says which of them the agent opens on. Both are upserted, so other
7
+ * providers and unrelated settings survive.
8
+ *
9
+ * The order matters on failure: `models.json` is written before `settings.json` is even read, so a
10
+ * broken `settings.json` leaves a correctly updated `models.json` behind — the same half-applied
11
+ * result the Rust writer produces.
12
+ */
13
+ import type { ConfigureInput } from './registry.js';
14
+ export declare function configurePi(input: ConfigureInput): Promise<void>;
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Pi — `~/.pi/agent/models.json` and `~/.pi/agent/settings.json`.
3
+ *
4
+ * Port of `configure_pi` in `src-tauri/src/core/system/commands.rs`. Pi splits the two halves of an
5
+ * integration across two strict-JSON files: `models.json` declares the provider and the models it
6
+ * serves, `settings.json` says which of them the agent opens on. Both are upserted, so other
7
+ * providers and unrelated settings survive.
8
+ *
9
+ * The order matters on failure: `models.json` is written before `settings.json` is even read, so a
10
+ * broken `settings.json` leaves a correctly updated `models.json` behind — the same half-applied
11
+ * result the Rust writer produces.
12
+ */
13
+ import { AtomicCoreError } from '../../contracts/index.js';
14
+ import { canonicalJson, keyOr, parseJsonStrict } from '../config-io.js';
15
+ import { asJsonObject } from './json-tree.js';
16
+ import { registerWriter } from './registry.js';
17
+ const DIR = '.pi/agent';
18
+ /** Read one of Pi's two files as a JSON object, treating missing/blank as `{}`. */
19
+ async function readObject(fs, path, name) {
20
+ const text = await fs.read(path);
21
+ const parsed = text === undefined ? {} : parseJsonStrict(text, fs.absolute(path));
22
+ const root = asJsonObject(parsed);
23
+ if (!root)
24
+ throw new AtomicCoreError('IO_ERROR', `${name} is not a JSON object`);
25
+ return root;
26
+ }
27
+ export async function configurePi(input) {
28
+ const { fs, apiUrl, model, apiKey } = input;
29
+ await fs.mkdirp(DIR);
30
+ const keyVal = keyOr(apiKey, 'atomic');
31
+ const modelsPath = `${DIR}/models.json`;
32
+ const modelsRoot = await readObject(fs, modelsPath, 'models.json');
33
+ const providers = asJsonObject(modelsRoot['providers']) ?? {};
34
+ modelsRoot['providers'] = providers;
35
+ providers['atomic'] = {
36
+ api: 'openai-completions',
37
+ apiKey: keyVal,
38
+ baseUrl: apiUrl,
39
+ models: [{ id: model }],
40
+ };
41
+ await fs.write(modelsPath, canonicalJson(modelsRoot));
42
+ const settingsPath = `${DIR}/settings.json`;
43
+ const settingsRoot = await readObject(fs, settingsPath, 'settings.json');
44
+ settingsRoot['defaultProvider'] = 'atomic';
45
+ settingsRoot['defaultModel'] = model;
46
+ await fs.write(settingsPath, canonicalJson(settingsRoot));
47
+ }
48
+ registerWriter('pi', configurePi);
49
+ //# sourceMappingURL=pi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pi.js","sourceRoot":"","sources":["../../../src/integrations/configure/pi.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAG7C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,MAAM,GAAG,GAAG,WAAW,CAAA;AAEvB,mFAAmF;AACnF,KAAK,UAAU,UAAU,CAAC,EAAY,EAAE,IAAY,EAAE,IAAY;IAChE,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChC,MAAM,MAAM,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;IACjF,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;IACjC,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,GAAG,IAAI,uBAAuB,CAAC,CAAA;IAChF,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAqB;IACrD,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;IAC3C,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACpB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAEtC,MAAM,UAAU,GAAG,GAAG,GAAG,cAAc,CAAA;IACvC,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,UAAU,EAAE,aAAa,CAAC,CAAA;IAClE,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAA;IAC7D,UAAU,CAAC,WAAW,CAAC,GAAG,SAAS,CAAA;IACnC,SAAS,CAAC,QAAQ,CAAC,GAAG;QACpB,GAAG,EAAE,oBAAoB;QACzB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;KACxB,CAAA;IACD,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,CAAA;IAErD,MAAM,YAAY,GAAG,GAAG,GAAG,gBAAgB,CAAA;IAC3C,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,YAAY,EAAE,eAAe,CAAC,CAAA;IACxE,YAAY,CAAC,iBAAiB,CAAC,GAAG,QAAQ,CAAA;IAC1C,YAAY,CAAC,cAAc,CAAC,GAAG,KAAK,CAAA;IACpC,MAAM,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC,CAAA;AAC3D,CAAC;AAED,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Poolside CLI has no BYOK config file; it reads `POOLSIDE_STANDALONE_*` from the environment.
3
+ * The base URL is normalised by `poolsideStandaloneBaseUrl` (trim, strip trailing slashes, strip one
4
+ * `/v1`, strip trailing slashes again) because Poolside appends its own paths — leaving `/v1` on
5
+ * would make it request `/v1/v1/...`.
6
+ */
7
+ import type { ConfigureWriter } from './registry.js';
8
+ export declare const configurePoolside: ConfigureWriter;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Poolside CLI has no BYOK config file; it reads `POOLSIDE_STANDALONE_*` from the environment.
3
+ * The base URL is normalised by `poolsideStandaloneBaseUrl` (trim, strip trailing slashes, strip one
4
+ * `/v1`, strip trailing slashes again) because Poolside appends its own paths — leaving `/v1` on
5
+ * would make it request `/v1/v1/...`.
6
+ */
7
+ import { registerWriter } from './registry.js';
8
+ import { configureEnvAgent } from './env-agent.js';
9
+ const MARKER = '# Atomic Chat - Poolside Config';
10
+ export const configurePoolside = (input) => configureEnvAgent(input, { agentId: 'poolside', marker: MARKER, prefix: 'POOLSIDE_' });
11
+ registerWriter('poolside', configurePoolside);
12
+ //# sourceMappingURL=poolside.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poolside.js","sourceRoot":"","sources":["../../../src/integrations/configure/poolside.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAElD,MAAM,MAAM,GAAG,iCAAiC,CAAA;AAEhD,MAAM,CAAC,MAAM,iBAAiB,GAAoB,CAAC,KAAK,EAAE,EAAE,CAC1D,iBAAiB,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;AAExF,cAAc,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAA"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * The dispatch point every agent config writer registers with — the TypeScript side of
3
+ * `cli::integrations::configure`. `launch` calls `configureAgent`, and nothing else needs to know
4
+ * which agent writes JSON, YAML, a shell rc, or no file at all.
5
+ */
6
+ import type { Agent } from '../catalog.js';
7
+ import type { ConfigFs } from '../config-io.js';
8
+ export interface ConfigureInput {
9
+ apiUrl: string;
10
+ model: string;
11
+ apiKey: string;
12
+ fs: ConfigFs;
13
+ platform: NodeJS.Platform;
14
+ /** `$SHELL`; decides which rc file the env-var agents write to. */
15
+ shell: string | undefined;
16
+ env: NodeJS.ProcessEnv;
17
+ /** Run a command (only Cline needs one). Resolves with its exit status and output. */
18
+ spawn?: (program: string, args: string[]) => Promise<{
19
+ code: number;
20
+ stdout: string;
21
+ stderr: string;
22
+ }>;
23
+ }
24
+ export type ConfigureWriter = (input: ConfigureInput) => Promise<void>;
25
+ /** Register a writer for an agent id. Called once per module at import time. */
26
+ export declare function registerWriter(agentId: string, writer: ConfigureWriter): void;
27
+ export declare function writerFor(agentId: string): ConfigureWriter | undefined;
28
+ export declare function registeredAgents(): string[];
29
+ export interface ConfigureOptions {
30
+ home?: string;
31
+ fs?: ConfigFs;
32
+ platform?: NodeJS.Platform;
33
+ shell?: string | undefined;
34
+ env?: NodeJS.ProcessEnv;
35
+ spawn?: ConfigureInput['spawn'];
36
+ }
37
+ /**
38
+ * Point an agent at a local endpoint. `model` may be empty only for the agents whose Rust
39
+ * counterpart accepts it (Claude Code and Zed treat it as "no model selected").
40
+ */
41
+ export declare function configureAgent(agent: Agent | string, apiUrl: string, model: string, apiKey: string, options?: ConfigureOptions): Promise<void>;
@@ -0,0 +1,50 @@
1
+ /**
2
+ * The dispatch point every agent config writer registers with — the TypeScript side of
3
+ * `cli::integrations::configure`. `launch` calls `configureAgent`, and nothing else needs to know
4
+ * which agent writes JSON, YAML, a shell rc, or no file at all.
5
+ */
6
+ import { AtomicCoreError } from '../../contracts/index.js';
7
+ import { findAgent } from '../catalog.js';
8
+ import { nodeConfigFs } from '../config-io.js';
9
+ const WRITERS = new Map();
10
+ /** Register a writer for an agent id. Called once per module at import time. */
11
+ export function registerWriter(agentId, writer) {
12
+ WRITERS.set(agentId, writer);
13
+ }
14
+ export function writerFor(agentId) {
15
+ return WRITERS.get(agentId);
16
+ }
17
+ export function registeredAgents() {
18
+ return [...WRITERS.keys()].sort();
19
+ }
20
+ /**
21
+ * Point an agent at a local endpoint. `model` may be empty only for the agents whose Rust
22
+ * counterpart accepts it (Claude Code and Zed treat it as "no model selected").
23
+ */
24
+ export async function configureAgent(agent, apiUrl, model, apiKey, options = {}) {
25
+ const resolved = typeof agent === 'string' ? findAgent(agent) : agent;
26
+ if (!resolved) {
27
+ throw new AtomicCoreError('INVALID_ARGUMENT', `Unknown agent: ${String(agent)}`);
28
+ }
29
+ const writer = WRITERS.get(resolved.id);
30
+ if (!writer) {
31
+ throw new AtomicCoreError('INTERNAL_ERROR', `Configuring ${resolved.name} is not implemented in this build.`, `no writer registered for "${resolved.id}"`);
32
+ }
33
+ const env = options.env ?? process.env;
34
+ const platform = options.platform ?? process.platform;
35
+ const home = options.home ?? (platform === 'win32' ? env['USERPROFILE'] : env['HOME']);
36
+ if (!options.fs && !home) {
37
+ throw new AtomicCoreError('IO_ERROR', 'Cannot resolve the home directory to write agent config into.');
38
+ }
39
+ await writer({
40
+ apiUrl,
41
+ model,
42
+ apiKey,
43
+ fs: options.fs ?? nodeConfigFs(home),
44
+ platform,
45
+ shell: options.shell ?? env['SHELL'],
46
+ env,
47
+ ...(options.spawn ? { spawn: options.spawn } : {}),
48
+ });
49
+ }
50
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/integrations/configure/registry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAiB9C,MAAM,OAAO,GAAG,IAAI,GAAG,EAA2B,CAAA;AAElD,gFAAgF;AAChF,MAAM,UAAU,cAAc,CAAC,OAAe,EAAE,MAAuB;IACrE,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;AAC9B,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,OAAe;IACvC,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AAC7B,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;AACnC,CAAC;AAWD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,KAAqB,EACrB,MAAc,EACd,KAAa,EACb,MAAc,EACd,UAA4B,EAAE;IAE9B,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IACrE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,eAAe,CAAC,kBAAkB,EAAE,kBAAkB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAClF,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IACvC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,eAAe,CACvB,gBAAgB,EAChB,eAAe,QAAQ,CAAC,IAAI,oCAAoC,EAChE,6BAA6B,QAAQ,CAAC,EAAE,GAAG,CAC5C,CAAA;IACH,CAAC;IACD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAA;IACtC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAA;IACrD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;IACtF,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QACzB,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,+DAA+D,CAAC,CAAA;IACxG,CAAC;IACD,MAAM,MAAM,CAAC;QACX,MAAM;QACN,KAAK;QACL,MAAM;QACN,EAAE,EAAE,OAAO,CAAC,EAAE,IAAI,YAAY,CAAC,IAAc,CAAC;QAC9C,QAAQ;QACR,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC;QACpC,GAAG;QACH,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnD,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * ZCode (github.com/zai-org/ZCode) is Z.ai's Electron desktop app. It ignores `OPENAI_BASE_URL` and
3
+ * friends: the only source of custom providers is `<dataBase>/.zcode/v2/provider_config.json`,
4
+ * shared by the desktop app, its web UI and its CLI, and polled once a second — so writing that file
5
+ * is the whole integration, and a running ZCode picks the change up by itself. Port of
6
+ * `configure_zcode` in the app's `core/system/commands.rs` (commit `ec1fd3ea7`).
7
+ *
8
+ * The file is validated with strict Zod schemas, and an invalid file is not rejected loudly: ZCode
9
+ * treats it as empty, so every custom provider the user has silently disappears until it is fixed.
10
+ * Hence the care below — patch only the entries we own, refuse rather than guess on anything
11
+ * unexpected, and write under ZCode's own lock with a rename.
12
+ */
13
+ import type { ConfigFs, JsonValue } from '../config-io.js';
14
+ /** Provider id we own inside `provider_config.json`; personal ids may be anything but `account:*`. */
15
+ export declare const ZCODE_PROVIDER_ID = "atomic-chat";
16
+ /** ZCode only admits a provider whose API key is non-blank; the local server ignores it when auth is off. */
17
+ export declare const ZCODE_KEY_PLACEHOLDER = "atomic";
18
+ /**
19
+ * ZCode assumes 200K of context for any model it does not recognise — a wild over-claim for a local
20
+ * model, which then never compacts and overflows mid-turn.
21
+ */
22
+ export declare const ZCODE_CONTEXT_WINDOW = 65536;
23
+ /**
24
+ * ZCode's default request mapping sends `thinking`, `enable_thinking`, `reasoning_effort` and
25
+ * `reasoning`, none of which llama-server reads. It does read `chat_template_kwargs`, and
26
+ * `enable_thinking` is the switch the Qwen3 / GLM / DeepSeek templates expose.
27
+ */
28
+ export declare const ZCODE_REASONING_MAP = "{\"chat_template_kwargs\": {\"enable_thinking\": reasoningLevel == \"enabled\"}}";
29
+ /** ZCode's own writers wait up to 8 s for the lock. */
30
+ export declare const ZCODE_LOCK_MAX_WAIT_MS = 8000;
31
+ /** A ZCode write holds the lock for milliseconds; one this old was left by a process that died. */
32
+ export declare const ZCODE_LOCK_STALE_AFTER_MS = 60000;
33
+ /**
34
+ * ZCode's `.zcode/v2` directory, resolved the way the desktop app does it: `dataBaseDir` from
35
+ * `~/.zcode/v2/setting.json` (set when the user moves the data folder in ZCode), then
36
+ * `$ZCODE_DATA_BASE_DIR`, then home. Absolute.
37
+ */
38
+ export declare function zcodeConfigDir(fs: ConfigFs, envBase: string | undefined): Promise<string>;
39
+ /**
40
+ * Apply Atomic Chat's provider, its model rule and the default selection to a parsed
41
+ * `provider_config.json` (`undefined` when the file does not exist yet). Only entries whose
42
+ * `providerId` is ours are replaced; every other provider, rule and key is carried over untouched.
43
+ */
44
+ export declare function zcodePatchProviderConfig(existing: JsonValue | undefined, apiUrl: string, model: string, apiKey: string | undefined): JsonValue;
45
+ export interface ZcodeLockDeps {
46
+ now?: () => number;
47
+ sleep?: (ms: number) => Promise<void>;
48
+ }
49
+ /**
50
+ * ZCode's lock around a config file (`packages/shared/src/node/atomicFileLock.ts`): a `<file>.lock`
51
+ * directory holding one `owner-<token>.json`. Taking it keeps a Run from interleaving with a save in
52
+ * ZCode's own settings. Resolves with the release.
53
+ */
54
+ export declare function acquireZcodeLock(file: string, maxWaitMs: number, staleAfterMs: number, deps?: ZcodeLockDeps): Promise<() => Promise<void>>;
55
+ /** The filesystem half of the writer, on a resolved `.zcode/v2` directory. */
56
+ export declare function configureZcodeIn(fs: ConfigFs, dir: string, apiUrl: string, model: string, apiKey: string | undefined, lockDeps?: ZcodeLockDeps & {
57
+ maxWaitMs?: number;
58
+ staleAfterMs?: number;
59
+ }): Promise<void>;