anypick 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1231) hide show
  1. package/README.md +16 -582
  2. package/bin/anypick.js +249 -0
  3. package/package.json +14 -106
  4. package/dist/adapters.d.ts +0 -4
  5. package/dist/adapters.d.ts.map +0 -1
  6. package/dist/adapters.js +0 -2
  7. package/dist/catalog/model-fetch.d.ts +0 -34
  8. package/dist/catalog/model-fetch.d.ts.map +0 -1
  9. package/dist/catalog/model-fetch.js +0 -99
  10. package/dist/catalog/model-fetch.js.map +0 -1
  11. package/dist/catalog/providers.d.ts +0 -42
  12. package/dist/catalog/providers.d.ts.map +0 -1
  13. package/dist/catalog/providers.js +0 -424
  14. package/dist/catalog/providers.js.map +0 -1
  15. package/dist/cli/bootstrap.d.ts +0 -3
  16. package/dist/cli/bootstrap.d.ts.map +0 -1
  17. package/dist/cli/bootstrap.js +0 -78
  18. package/dist/cli/bootstrap.js.map +0 -1
  19. package/dist/cli/commands.d.ts +0 -29
  20. package/dist/cli/commands.d.ts.map +0 -1
  21. package/dist/cli/commands.js +0 -1043
  22. package/dist/cli/commands.js.map +0 -1
  23. package/dist/cli/completion.d.ts +0 -6
  24. package/dist/cli/completion.d.ts.map +0 -1
  25. package/dist/cli/completion.js +0 -202
  26. package/dist/cli/completion.js.map +0 -1
  27. package/dist/cli/errors.d.ts +0 -20
  28. package/dist/cli/errors.d.ts.map +0 -1
  29. package/dist/cli/errors.js +0 -47
  30. package/dist/cli/errors.js.map +0 -1
  31. package/dist/cli/format.d.ts +0 -6
  32. package/dist/cli/format.d.ts.map +0 -1
  33. package/dist/cli/format.js +0 -75
  34. package/dist/cli/format.js.map +0 -1
  35. package/dist/cli/help.d.ts +0 -6
  36. package/dist/cli/help.d.ts.map +0 -1
  37. package/dist/cli/help.js +0 -66
  38. package/dist/cli/help.js.map +0 -1
  39. package/dist/cli/interactive-accounts.d.ts +0 -3
  40. package/dist/cli/interactive-accounts.d.ts.map +0 -1
  41. package/dist/cli/interactive-accounts.js +0 -86
  42. package/dist/cli/interactive-accounts.js.map +0 -1
  43. package/dist/cli/interactive-maintenance.d.ts +0 -4
  44. package/dist/cli/interactive-maintenance.d.ts.map +0 -1
  45. package/dist/cli/interactive-maintenance.js +0 -30
  46. package/dist/cli/interactive-maintenance.js.map +0 -1
  47. package/dist/cli/interactive.d.ts +0 -14
  48. package/dist/cli/interactive.d.ts.map +0 -1
  49. package/dist/cli/interactive.js +0 -242
  50. package/dist/cli/interactive.js.map +0 -1
  51. package/dist/cli/launch-client.d.ts +0 -18
  52. package/dist/cli/launch-client.d.ts.map +0 -1
  53. package/dist/cli/launch-client.js +0 -117
  54. package/dist/cli/launch-client.js.map +0 -1
  55. package/dist/cli/launcher-model.d.ts +0 -64
  56. package/dist/cli/launcher-model.d.ts.map +0 -1
  57. package/dist/cli/launcher-model.js +0 -200
  58. package/dist/cli/launcher-model.js.map +0 -1
  59. package/dist/cli/launcher-render.d.ts +0 -22
  60. package/dist/cli/launcher-render.d.ts.map +0 -1
  61. package/dist/cli/launcher-render.js +0 -113
  62. package/dist/cli/launcher-render.js.map +0 -1
  63. package/dist/cli/launcher.d.ts +0 -27
  64. package/dist/cli/launcher.d.ts.map +0 -1
  65. package/dist/cli/launcher.js +0 -93
  66. package/dist/cli/launcher.js.map +0 -1
  67. package/dist/cli/local-health.d.ts +0 -17
  68. package/dist/cli/local-health.d.ts.map +0 -1
  69. package/dist/cli/local-health.js +0 -31
  70. package/dist/cli/local-health.js.map +0 -1
  71. package/dist/cli/plugin-commands.d.ts +0 -4
  72. package/dist/cli/plugin-commands.d.ts.map +0 -1
  73. package/dist/cli/plugin-commands.js +0 -160
  74. package/dist/cli/plugin-commands.js.map +0 -1
  75. package/dist/cli/primary.d.ts +0 -18
  76. package/dist/cli/primary.d.ts.map +0 -1
  77. package/dist/cli/primary.js +0 -593
  78. package/dist/cli/primary.js.map +0 -1
  79. package/dist/cli/render-util.d.ts +0 -24
  80. package/dist/cli/render-util.d.ts.map +0 -1
  81. package/dist/cli/render-util.js +0 -58
  82. package/dist/cli/render-util.js.map +0 -1
  83. package/dist/cli/ux.d.ts +0 -43
  84. package/dist/cli/ux.d.ts.map +0 -1
  85. package/dist/cli/ux.js +0 -114
  86. package/dist/cli/ux.js.map +0 -1
  87. package/dist/cli.d.ts +0 -3
  88. package/dist/cli.d.ts.map +0 -1
  89. package/dist/cli.js +0 -35
  90. package/dist/cli.js.map +0 -1
  91. package/dist/clients/claude-client-apply.d.ts +0 -8
  92. package/dist/clients/claude-client-apply.d.ts.map +0 -1
  93. package/dist/clients/claude-client-apply.js +0 -108
  94. package/dist/clients/claude-client-apply.js.map +0 -1
  95. package/dist/clients/claude-code.d.ts +0 -5
  96. package/dist/clients/claude-code.d.ts.map +0 -1
  97. package/dist/clients/claude-code.js +0 -189
  98. package/dist/clients/claude-code.js.map +0 -1
  99. package/dist/clients/claude-settings-guard.d.ts +0 -18
  100. package/dist/clients/claude-settings-guard.d.ts.map +0 -1
  101. package/dist/clients/codex-desktop-catalog.d.ts +0 -67
  102. package/dist/clients/codex-desktop-catalog.d.ts.map +0 -1
  103. package/dist/clients/codex-desktop-catalog.js +0 -212
  104. package/dist/clients/codex-desktop-catalog.js.map +0 -1
  105. package/dist/clients/codex.d.ts +0 -181
  106. package/dist/clients/codex.d.ts.map +0 -1
  107. package/dist/clients/codex.js +0 -783
  108. package/dist/clients/codex.js.map +0 -1
  109. package/dist/clients/env-files.d.ts +0 -14
  110. package/dist/clients/env-files.d.ts.map +0 -1
  111. package/dist/clients/env-files.js +0 -50
  112. package/dist/clients/env-files.js.map +0 -1
  113. package/dist/clients/gemini-client-utils.d.ts +0 -4
  114. package/dist/clients/gemini-client-utils.d.ts.map +0 -1
  115. package/dist/clients/gemini-client-utils.js +0 -33
  116. package/dist/clients/gemini-client-utils.js.map +0 -1
  117. package/dist/clients/gemini.d.ts +0 -16
  118. package/dist/clients/gemini.d.ts.map +0 -1
  119. package/dist/clients/gemini.js +0 -233
  120. package/dist/clients/gemini.js.map +0 -1
  121. package/dist/clients/index.d.ts +0 -14
  122. package/dist/clients/index.d.ts.map +0 -1
  123. package/dist/clients/index.js +0 -18
  124. package/dist/clients/index.js.map +0 -1
  125. package/dist/clients/isolation.d.ts +0 -28
  126. package/dist/clients/isolation.d.ts.map +0 -1
  127. package/dist/clients/isolation.js +0 -131
  128. package/dist/clients/isolation.js.map +0 -1
  129. package/dist/clients/kiro.d.ts +0 -10
  130. package/dist/clients/kiro.d.ts.map +0 -1
  131. package/dist/clients/kiro.js +0 -168
  132. package/dist/clients/kiro.js.map +0 -1
  133. package/dist/clients/model-roles.d.ts +0 -58
  134. package/dist/clients/model-roles.d.ts.map +0 -1
  135. package/dist/clients/model-roles.js +0 -139
  136. package/dist/clients/model-roles.js.map +0 -1
  137. package/dist/clients/registry.d.ts +0 -7
  138. package/dist/clients/registry.d.ts.map +0 -1
  139. package/dist/clients/registry.js +0 -16
  140. package/dist/clients/registry.js.map +0 -1
  141. package/dist/clients/resolve.d.ts +0 -27
  142. package/dist/clients/resolve.d.ts.map +0 -1
  143. package/dist/clients/resolve.js +0 -49
  144. package/dist/clients/resolve.js.map +0 -1
  145. package/dist/core/account-codec.d.ts +0 -32
  146. package/dist/core/account-codec.d.ts.map +0 -1
  147. package/dist/core/account-codec.js +0 -134
  148. package/dist/core/account-codec.js.map +0 -1
  149. package/dist/core/account-transfer.d.ts +0 -20
  150. package/dist/core/account-transfer.d.ts.map +0 -1
  151. package/dist/core/account-transfer.js +0 -136
  152. package/dist/core/account-transfer.js.map +0 -1
  153. package/dist/core/activation-executor.d.ts +0 -72
  154. package/dist/core/activation-executor.d.ts.map +0 -1
  155. package/dist/core/activation-executor.js +0 -690
  156. package/dist/core/activation-executor.js.map +0 -1
  157. package/dist/core/activation-models.d.ts +0 -6
  158. package/dist/core/activation-models.d.ts.map +0 -1
  159. package/dist/core/activation-models.js +0 -33
  160. package/dist/core/activation-models.js.map +0 -1
  161. package/dist/core/activation-planner.d.ts +0 -38
  162. package/dist/core/activation-planner.d.ts.map +0 -1
  163. package/dist/core/activation-planner.js +0 -248
  164. package/dist/core/activation-planner.js.map +0 -1
  165. package/dist/core/activation-protocol.d.ts +0 -3
  166. package/dist/core/activation-protocol.d.ts.map +0 -1
  167. package/dist/core/activation-protocol.js +0 -9
  168. package/dist/core/activation-protocol.js.map +0 -1
  169. package/dist/core/activation-transport.d.ts +0 -15
  170. package/dist/core/activation-transport.d.ts.map +0 -1
  171. package/dist/core/activation-transport.js +0 -23
  172. package/dist/core/activation-transport.js.map +0 -1
  173. package/dist/core/app.d.ts +0 -149
  174. package/dist/core/app.d.ts.map +0 -1
  175. package/dist/core/app.js +0 -372
  176. package/dist/core/app.js.map +0 -1
  177. package/dist/core/binding-service.d.ts +0 -93
  178. package/dist/core/binding-service.d.ts.map +0 -1
  179. package/dist/core/binding-service.js +0 -281
  180. package/dist/core/binding-service.js.map +0 -1
  181. package/dist/core/binding-store.d.ts +0 -23
  182. package/dist/core/binding-store.d.ts.map +0 -1
  183. package/dist/core/binding-store.js +0 -154
  184. package/dist/core/binding-store.js.map +0 -1
  185. package/dist/core/brand.d.ts +0 -18
  186. package/dist/core/brand.d.ts.map +0 -1
  187. package/dist/core/brand.js +0 -22
  188. package/dist/core/brand.js.map +0 -1
  189. package/dist/core/capabilities.d.ts +0 -30
  190. package/dist/core/capabilities.d.ts.map +0 -1
  191. package/dist/core/capabilities.js +0 -27
  192. package/dist/core/capabilities.js.map +0 -1
  193. package/dist/core/client-state-store.d.ts +0 -17
  194. package/dist/core/client-state-store.d.ts.map +0 -1
  195. package/dist/core/client-state-store.js +0 -47
  196. package/dist/core/client-state-store.js.map +0 -1
  197. package/dist/core/codec/account.d.ts +0 -52
  198. package/dist/core/codec/account.d.ts.map +0 -1
  199. package/dist/core/codec/account.js +0 -69
  200. package/dist/core/codec/account.js.map +0 -1
  201. package/dist/core/codec/bindings.d.ts +0 -38
  202. package/dist/core/codec/bindings.d.ts.map +0 -1
  203. package/dist/core/codec/bindings.js +0 -79
  204. package/dist/core/codec/bindings.js.map +0 -1
  205. package/dist/core/codec/operations.d.ts +0 -36
  206. package/dist/core/codec/operations.d.ts.map +0 -1
  207. package/dist/core/codec/operations.js +0 -82
  208. package/dist/core/codec/operations.js.map +0 -1
  209. package/dist/core/codec/primitives.d.ts +0 -59
  210. package/dist/core/codec/primitives.d.ts.map +0 -1
  211. package/dist/core/codec/primitives.js +0 -123
  212. package/dist/core/codec/primitives.js.map +0 -1
  213. package/dist/core/codec/proxy-hub.d.ts +0 -43
  214. package/dist/core/codec/proxy-hub.d.ts.map +0 -1
  215. package/dist/core/codec/proxy-hub.js +0 -69
  216. package/dist/core/codec/proxy-hub.js.map +0 -1
  217. package/dist/core/codec/runtime.d.ts +0 -41
  218. package/dist/core/codec/runtime.d.ts.map +0 -1
  219. package/dist/core/codec/runtime.js +0 -66
  220. package/dist/core/codec/runtime.js.map +0 -1
  221. package/dist/core/codec.d.ts +0 -43
  222. package/dist/core/codec.d.ts.map +0 -1
  223. package/dist/core/codec.js +0 -69
  224. package/dist/core/codec.js.map +0 -1
  225. package/dist/core/codex-live-config.d.ts +0 -92
  226. package/dist/core/codex-live-config.d.ts.map +0 -1
  227. package/dist/core/codex-live-config.js +0 -263
  228. package/dist/core/codex-live-config.js.map +0 -1
  229. package/dist/core/config-service.d.ts +0 -35
  230. package/dist/core/config-service.d.ts.map +0 -1
  231. package/dist/core/config-service.js +0 -87
  232. package/dist/core/config-service.js.map +0 -1
  233. package/dist/core/config.d.ts +0 -14
  234. package/dist/core/config.d.ts.map +0 -1
  235. package/dist/core/config.js +0 -45
  236. package/dist/core/config.js.map +0 -1
  237. package/dist/core/db-schema.d.ts +0 -30
  238. package/dist/core/db-schema.d.ts.map +0 -1
  239. package/dist/core/db-schema.js +0 -278
  240. package/dist/core/db-schema.js.map +0 -1
  241. package/dist/core/db.d.ts +0 -72
  242. package/dist/core/db.d.ts.map +0 -1
  243. package/dist/core/db.js +0 -192
  244. package/dist/core/db.js.map +0 -1
  245. package/dist/core/doctor-fixes.d.ts +0 -3
  246. package/dist/core/doctor-fixes.d.ts.map +0 -1
  247. package/dist/core/doctor-fixes.js +0 -102
  248. package/dist/core/doctor-fixes.js.map +0 -1
  249. package/dist/core/doctor-format.d.ts +0 -10
  250. package/dist/core/doctor-format.d.ts.map +0 -1
  251. package/dist/core/doctor-format.js +0 -45
  252. package/dist/core/doctor-format.js.map +0 -1
  253. package/dist/core/doctor-report.d.ts +0 -3
  254. package/dist/core/doctor-report.d.ts.map +0 -1
  255. package/dist/core/doctor-report.js +0 -174
  256. package/dist/core/doctor-report.js.map +0 -1
  257. package/dist/core/doctor-scan.d.ts +0 -7
  258. package/dist/core/doctor-scan.d.ts.map +0 -1
  259. package/dist/core/doctor-scan.js +0 -139
  260. package/dist/core/doctor-scan.js.map +0 -1
  261. package/dist/core/doctor-types.d.ts +0 -89
  262. package/dist/core/doctor-types.d.ts.map +0 -1
  263. package/dist/core/doctor-types.js +0 -14
  264. package/dist/core/doctor-types.js.map +0 -1
  265. package/dist/core/doctor-utils.d.ts +0 -3
  266. package/dist/core/doctor-utils.d.ts.map +0 -1
  267. package/dist/core/doctor-utils.js +0 -36
  268. package/dist/core/doctor-utils.js.map +0 -1
  269. package/dist/core/doctor.d.ts +0 -14
  270. package/dist/core/doctor.d.ts.map +0 -1
  271. package/dist/core/doctor.js +0 -127
  272. package/dist/core/doctor.js.map +0 -1
  273. package/dist/core/events.d.ts +0 -58
  274. package/dist/core/events.d.ts.map +0 -1
  275. package/dist/core/events.js +0 -88
  276. package/dist/core/events.js.map +0 -1
  277. package/dist/core/journal.d.ts +0 -23
  278. package/dist/core/journal.d.ts.map +0 -1
  279. package/dist/core/journal.js +0 -93
  280. package/dist/core/journal.js.map +0 -1
  281. package/dist/core/lease-store.d.ts +0 -22
  282. package/dist/core/lease-store.d.ts.map +0 -1
  283. package/dist/core/lease-store.js +0 -81
  284. package/dist/core/lease-store.js.map +0 -1
  285. package/dist/core/migrate-bindings.d.ts +0 -10
  286. package/dist/core/migrate-bindings.d.ts.map +0 -1
  287. package/dist/core/migrate-bindings.js +0 -98
  288. package/dist/core/migrate-bindings.js.map +0 -1
  289. package/dist/core/migrate-fs.d.ts +0 -11
  290. package/dist/core/migrate-fs.d.ts.map +0 -1
  291. package/dist/core/migrate-fs.js +0 -184
  292. package/dist/core/migrate-fs.js.map +0 -1
  293. package/dist/core/model-cache-store.d.ts +0 -27
  294. package/dist/core/model-cache-store.d.ts.map +0 -1
  295. package/dist/core/model-cache-store.js +0 -50
  296. package/dist/core/model-cache-store.js.map +0 -1
  297. package/dist/core/model-discovery.d.ts +0 -66
  298. package/dist/core/model-discovery.d.ts.map +0 -1
  299. package/dist/core/model-discovery.js +0 -127
  300. package/dist/core/model-discovery.js.map +0 -1
  301. package/dist/core/model-policy.d.ts +0 -40
  302. package/dist/core/model-policy.d.ts.map +0 -1
  303. package/dist/core/model-policy.js +0 -77
  304. package/dist/core/model-policy.js.map +0 -1
  305. package/dist/core/model-roles.d.ts +0 -9
  306. package/dist/core/model-roles.d.ts.map +0 -1
  307. package/dist/core/model-roles.js +0 -20
  308. package/dist/core/model-roles.js.map +0 -1
  309. package/dist/core/mutation-lock.d.ts +0 -31
  310. package/dist/core/mutation-lock.d.ts.map +0 -1
  311. package/dist/core/mutation-lock.js +0 -69
  312. package/dist/core/mutation-lock.js.map +0 -1
  313. package/dist/core/paths.d.ts +0 -49
  314. package/dist/core/paths.d.ts.map +0 -1
  315. package/dist/core/paths.js +0 -110
  316. package/dist/core/paths.js.map +0 -1
  317. package/dist/core/plugin-loader.d.ts +0 -40
  318. package/dist/core/plugin-loader.d.ts.map +0 -1
  319. package/dist/core/plugin-loader.js +0 -184
  320. package/dist/core/plugin-loader.js.map +0 -1
  321. package/dist/core/plugin-service.d.ts +0 -32
  322. package/dist/core/plugin-service.d.ts.map +0 -1
  323. package/dist/core/plugin-service.js +0 -110
  324. package/dist/core/plugin-service.js.map +0 -1
  325. package/dist/core/plugin-store.d.ts +0 -18
  326. package/dist/core/plugin-store.d.ts.map +0 -1
  327. package/dist/core/plugin-store.js +0 -50
  328. package/dist/core/plugin-store.js.map +0 -1
  329. package/dist/core/pool-store.d.ts +0 -44
  330. package/dist/core/pool-store.d.ts.map +0 -1
  331. package/dist/core/pool-store.js +0 -198
  332. package/dist/core/pool-store.js.map +0 -1
  333. package/dist/core/preset-store.d.ts +0 -29
  334. package/dist/core/preset-store.d.ts.map +0 -1
  335. package/dist/core/preset-store.js +0 -105
  336. package/dist/core/preset-store.js.map +0 -1
  337. package/dist/core/profile-service.d.ts +0 -50
  338. package/dist/core/profile-service.d.ts.map +0 -1
  339. package/dist/core/profile-service.js +0 -149
  340. package/dist/core/profile-service.js.map +0 -1
  341. package/dist/core/profile-store.d.ts +0 -20
  342. package/dist/core/profile-store.d.ts.map +0 -1
  343. package/dist/core/profile-store.js +0 -92
  344. package/dist/core/profile-store.js.map +0 -1
  345. package/dist/core/profile-synth.d.ts +0 -24
  346. package/dist/core/profile-synth.d.ts.map +0 -1
  347. package/dist/core/profile-synth.js +0 -30
  348. package/dist/core/profile-synth.js.map +0 -1
  349. package/dist/core/project-root.d.ts +0 -7
  350. package/dist/core/project-root.d.ts.map +0 -1
  351. package/dist/core/project-root.js +0 -23
  352. package/dist/core/project-root.js.map +0 -1
  353. package/dist/core/proxy-hub-cli.d.ts +0 -3
  354. package/dist/core/proxy-hub-cli.d.ts.map +0 -1
  355. package/dist/core/proxy-hub-cli.js +0 -80
  356. package/dist/core/proxy-hub-cli.js.map +0 -1
  357. package/dist/core/proxy-hub-routes.d.ts +0 -22
  358. package/dist/core/proxy-hub-routes.d.ts.map +0 -1
  359. package/dist/core/proxy-hub-routes.js +0 -92
  360. package/dist/core/proxy-hub-routes.js.map +0 -1
  361. package/dist/core/proxy-hub-server.d.ts +0 -59
  362. package/dist/core/proxy-hub-server.d.ts.map +0 -1
  363. package/dist/core/proxy-hub-server.js +0 -409
  364. package/dist/core/proxy-hub-server.js.map +0 -1
  365. package/dist/core/proxy-hub-service.d.ts +0 -97
  366. package/dist/core/proxy-hub-service.d.ts.map +0 -1
  367. package/dist/core/proxy-hub-service.js +0 -553
  368. package/dist/core/proxy-hub-service.js.map +0 -1
  369. package/dist/core/proxy-hub-store.d.ts +0 -28
  370. package/dist/core/proxy-hub-store.d.ts.map +0 -1
  371. package/dist/core/proxy-hub-store.js +0 -152
  372. package/dist/core/proxy-hub-store.js.map +0 -1
  373. package/dist/core/proxy-lifecycle.d.ts +0 -26
  374. package/dist/core/proxy-lifecycle.d.ts.map +0 -1
  375. package/dist/core/proxy-lifecycle.js +0 -33
  376. package/dist/core/proxy-lifecycle.js.map +0 -1
  377. package/dist/core/proxy-ports.d.ts +0 -50
  378. package/dist/core/proxy-ports.d.ts.map +0 -1
  379. package/dist/core/proxy-ports.js +0 -86
  380. package/dist/core/proxy-ports.js.map +0 -1
  381. package/dist/core/proxy-service.d.ts +0 -184
  382. package/dist/core/proxy-service.d.ts.map +0 -1
  383. package/dist/core/proxy-service.js +0 -860
  384. package/dist/core/proxy-service.js.map +0 -1
  385. package/dist/core/quota-guard-policy.d.ts +0 -8
  386. package/dist/core/quota-guard-policy.d.ts.map +0 -1
  387. package/dist/core/quota-guard-policy.js +0 -21
  388. package/dist/core/quota-guard-policy.js.map +0 -1
  389. package/dist/core/realign-proxy-clients.d.ts +0 -19
  390. package/dist/core/realign-proxy-clients.d.ts.map +0 -1
  391. package/dist/core/realign-proxy-clients.js +0 -40
  392. package/dist/core/realign-proxy-clients.js.map +0 -1
  393. package/dist/core/refs.d.ts +0 -84
  394. package/dist/core/refs.d.ts.map +0 -1
  395. package/dist/core/refs.js +0 -250
  396. package/dist/core/refs.js.map +0 -1
  397. package/dist/core/registry.d.ts +0 -46
  398. package/dist/core/registry.d.ts.map +0 -1
  399. package/dist/core/registry.js +0 -70
  400. package/dist/core/registry.js.map +0 -1
  401. package/dist/core/resolve-source.d.ts +0 -54
  402. package/dist/core/resolve-source.d.ts.map +0 -1
  403. package/dist/core/resolve-source.js +0 -148
  404. package/dist/core/resolve-source.js.map +0 -1
  405. package/dist/core/runtime-service.d.ts +0 -158
  406. package/dist/core/runtime-service.d.ts.map +0 -1
  407. package/dist/core/runtime-service.js +0 -422
  408. package/dist/core/runtime-service.js.map +0 -1
  409. package/dist/core/service.d.ts +0 -200
  410. package/dist/core/service.d.ts.map +0 -1
  411. package/dist/core/service.js +0 -643
  412. package/dist/core/service.js.map +0 -1
  413. package/dist/core/store-snapshot.d.ts +0 -10
  414. package/dist/core/store-snapshot.d.ts.map +0 -1
  415. package/dist/core/store-snapshot.js +0 -79
  416. package/dist/core/store-snapshot.js.map +0 -1
  417. package/dist/core/store.d.ts +0 -68
  418. package/dist/core/store.d.ts.map +0 -1
  419. package/dist/core/store.js +0 -159
  420. package/dist/core/store.js.map +0 -1
  421. package/dist/core/tray-runtime.d.ts +0 -15
  422. package/dist/core/tray-runtime.d.ts.map +0 -1
  423. package/dist/core/tray-runtime.js +0 -33
  424. package/dist/core/tray-runtime.js.map +0 -1
  425. package/dist/core/tray-settings-service.d.ts +0 -7
  426. package/dist/core/tray-settings-service.d.ts.map +0 -1
  427. package/dist/core/tray-settings-service.js +0 -24
  428. package/dist/core/tray-settings-service.js.map +0 -1
  429. package/dist/core/update.d.ts +0 -26
  430. package/dist/core/update.d.ts.map +0 -1
  431. package/dist/core/update.js +0 -128
  432. package/dist/core/update.js.map +0 -1
  433. package/dist/index.d.ts +0 -12
  434. package/dist/index.d.ts.map +0 -1
  435. package/dist/index.js +0 -7
  436. package/dist/network/egress/allowlist.d.ts +0 -2
  437. package/dist/network/egress/allowlist.d.ts.map +0 -1
  438. package/dist/network/egress/allowlist.js +0 -14
  439. package/dist/network/egress/allowlist.js.map +0 -1
  440. package/dist/network/egress/direct.d.ts +0 -17
  441. package/dist/network/egress/direct.d.ts.map +0 -1
  442. package/dist/network/egress/direct.js +0 -28
  443. package/dist/network/egress/direct.js.map +0 -1
  444. package/dist/network/egress/errors.d.ts +0 -4
  445. package/dist/network/egress/errors.d.ts.map +0 -1
  446. package/dist/network/egress/errors.js +0 -8
  447. package/dist/network/egress/errors.js.map +0 -1
  448. package/dist/network/egress/index.d.ts +0 -6
  449. package/dist/network/egress/index.d.ts.map +0 -1
  450. package/dist/network/egress/index.js +0 -11
  451. package/dist/network/egress/index.js.map +0 -1
  452. package/dist/network/egress/types.d.ts +0 -16
  453. package/dist/network/egress/types.d.ts.map +0 -1
  454. package/dist/presentation/client-name.d.ts +0 -14
  455. package/dist/presentation/client-name.d.ts.map +0 -1
  456. package/dist/presentation/client-name.js +0 -22
  457. package/dist/presentation/client-name.js.map +0 -1
  458. package/dist/presentation/layout.d.ts +0 -7
  459. package/dist/presentation/layout.d.ts.map +0 -1
  460. package/dist/presentation/layout.js +0 -10
  461. package/dist/presentation/layout.js.map +0 -1
  462. package/dist/providers/auth-fingerprint.d.ts +0 -56
  463. package/dist/providers/auth-fingerprint.d.ts.map +0 -1
  464. package/dist/providers/auth-fingerprint.js +0 -163
  465. package/dist/providers/auth-fingerprint.js.map +0 -1
  466. package/dist/providers/claude.d.ts +0 -43
  467. package/dist/providers/claude.d.ts.map +0 -1
  468. package/dist/providers/claude.js +0 -191
  469. package/dist/providers/claude.js.map +0 -1
  470. package/dist/providers/codex-identity.d.ts +0 -13
  471. package/dist/providers/codex-identity.d.ts.map +0 -1
  472. package/dist/providers/codex-identity.js +0 -69
  473. package/dist/providers/codex-identity.js.map +0 -1
  474. package/dist/providers/codex-refresh.d.ts +0 -30
  475. package/dist/providers/codex-refresh.d.ts.map +0 -1
  476. package/dist/providers/codex-refresh.js +0 -64
  477. package/dist/providers/codex-refresh.js.map +0 -1
  478. package/dist/providers/codex-usage.d.ts +0 -3
  479. package/dist/providers/codex-usage.d.ts.map +0 -1
  480. package/dist/providers/codex-usage.js +0 -42
  481. package/dist/providers/codex-usage.js.map +0 -1
  482. package/dist/providers/codex.d.ts +0 -61
  483. package/dist/providers/codex.d.ts.map +0 -1
  484. package/dist/providers/codex.js +0 -212
  485. package/dist/providers/codex.js.map +0 -1
  486. package/dist/providers/gemini-antigravity-oauth.d.ts +0 -83
  487. package/dist/providers/gemini-antigravity-oauth.d.ts.map +0 -1
  488. package/dist/providers/gemini-antigravity-oauth.js +0 -343
  489. package/dist/providers/gemini-antigravity-oauth.js.map +0 -1
  490. package/dist/providers/gemini-antigravity-state.d.ts +0 -35
  491. package/dist/providers/gemini-antigravity-state.d.ts.map +0 -1
  492. package/dist/providers/gemini-antigravity-state.js +0 -433
  493. package/dist/providers/gemini-antigravity-state.js.map +0 -1
  494. package/dist/providers/gemini-env.d.ts +0 -8
  495. package/dist/providers/gemini-env.d.ts.map +0 -1
  496. package/dist/providers/gemini-env.js +0 -78
  497. package/dist/providers/gemini-env.js.map +0 -1
  498. package/dist/providers/gemini-identity.d.ts +0 -2
  499. package/dist/providers/gemini-identity.d.ts.map +0 -1
  500. package/dist/providers/gemini-identity.js +0 -14
  501. package/dist/providers/gemini-identity.js.map +0 -1
  502. package/dist/providers/gemini-proxy/main.d.ts +0 -3
  503. package/dist/providers/gemini-proxy/main.d.ts.map +0 -1
  504. package/dist/providers/gemini-proxy/main.js +0 -176
  505. package/dist/providers/gemini-proxy/main.js.map +0 -1
  506. package/dist/providers/gemini-proxy/server.d.ts +0 -57
  507. package/dist/providers/gemini-proxy/server.d.ts.map +0 -1
  508. package/dist/providers/gemini-proxy/server.js +0 -1240
  509. package/dist/providers/gemini-proxy/server.js.map +0 -1
  510. package/dist/providers/gemini-proxy-entry.d.ts +0 -2
  511. package/dist/providers/gemini-proxy-entry.d.ts.map +0 -1
  512. package/dist/providers/gemini-proxy-entry.js +0 -16
  513. package/dist/providers/gemini-proxy-entry.js.map +0 -1
  514. package/dist/providers/gemini-proxy-lifecycle.d.ts +0 -11
  515. package/dist/providers/gemini-proxy-lifecycle.d.ts.map +0 -1
  516. package/dist/providers/gemini-proxy-lifecycle.js +0 -131
  517. package/dist/providers/gemini-proxy-lifecycle.js.map +0 -1
  518. package/dist/providers/gemini.d.ts +0 -137
  519. package/dist/providers/gemini.d.ts.map +0 -1
  520. package/dist/providers/gemini.js +0 -471
  521. package/dist/providers/gemini.js.map +0 -1
  522. package/dist/providers/grok-proxy/auth.d.ts +0 -27
  523. package/dist/providers/grok-proxy/auth.d.ts.map +0 -1
  524. package/dist/providers/grok-proxy/auth.js +0 -123
  525. package/dist/providers/grok-proxy/auth.js.map +0 -1
  526. package/dist/providers/grok-proxy/main.d.ts +0 -3
  527. package/dist/providers/grok-proxy/main.d.ts.map +0 -1
  528. package/dist/providers/grok-proxy/main.js +0 -111
  529. package/dist/providers/grok-proxy/main.js.map +0 -1
  530. package/dist/providers/grok-proxy/server.d.ts +0 -46
  531. package/dist/providers/grok-proxy/server.d.ts.map +0 -1
  532. package/dist/providers/grok-proxy/server.js +0 -595
  533. package/dist/providers/grok-proxy/server.js.map +0 -1
  534. package/dist/providers/grok.d.ts +0 -38
  535. package/dist/providers/grok.d.ts.map +0 -1
  536. package/dist/providers/grok.js +0 -250
  537. package/dist/providers/grok.js.map +0 -1
  538. package/dist/providers/index.d.ts +0 -14
  539. package/dist/providers/index.d.ts.map +0 -1
  540. package/dist/providers/index.js +0 -23
  541. package/dist/providers/index.js.map +0 -1
  542. package/dist/providers/kiro-secret-store.d.ts +0 -39
  543. package/dist/providers/kiro-secret-store.d.ts.map +0 -1
  544. package/dist/providers/kiro-secret-store.js +0 -168
  545. package/dist/providers/kiro-secret-store.js.map +0 -1
  546. package/dist/providers/kiro.d.ts +0 -50
  547. package/dist/providers/kiro.d.ts.map +0 -1
  548. package/dist/providers/kiro.js +0 -373
  549. package/dist/providers/kiro.js.map +0 -1
  550. package/dist/providers/model-policy.d.ts +0 -15
  551. package/dist/providers/model-policy.d.ts.map +0 -1
  552. package/dist/providers/model-policy.js +0 -26
  553. package/dist/providers/model-policy.js.map +0 -1
  554. package/dist/providers/opencode-auth.d.ts +0 -67
  555. package/dist/providers/opencode-auth.d.ts.map +0 -1
  556. package/dist/providers/opencode-auth.js +0 -146
  557. package/dist/providers/opencode-auth.js.map +0 -1
  558. package/dist/providers/opencode-cli-entry.d.ts +0 -36
  559. package/dist/providers/opencode-cli-entry.d.ts.map +0 -1
  560. package/dist/providers/opencode-cli-entry.js +0 -90
  561. package/dist/providers/opencode-cli-entry.js.map +0 -1
  562. package/dist/providers/opencode-proxy/abort.d.ts +0 -8
  563. package/dist/providers/opencode-proxy/abort.d.ts.map +0 -1
  564. package/dist/providers/opencode-proxy/abort.js +0 -42
  565. package/dist/providers/opencode-proxy/abort.js.map +0 -1
  566. package/dist/providers/opencode-proxy/anthropic-handler.d.ts +0 -4
  567. package/dist/providers/opencode-proxy/anthropic-handler.d.ts.map +0 -1
  568. package/dist/providers/opencode-proxy/anthropic-handler.js +0 -108
  569. package/dist/providers/opencode-proxy/anthropic-handler.js.map +0 -1
  570. package/dist/providers/opencode-proxy/auth.d.ts +0 -38
  571. package/dist/providers/opencode-proxy/auth.d.ts.map +0 -1
  572. package/dist/providers/opencode-proxy/auth.js +0 -128
  573. package/dist/providers/opencode-proxy/auth.js.map +0 -1
  574. package/dist/providers/opencode-proxy/body.d.ts +0 -9
  575. package/dist/providers/opencode-proxy/body.d.ts.map +0 -1
  576. package/dist/providers/opencode-proxy/body.js +0 -69
  577. package/dist/providers/opencode-proxy/body.js.map +0 -1
  578. package/dist/providers/opencode-proxy/catalog-handlers.d.ts +0 -7
  579. package/dist/providers/opencode-proxy/catalog-handlers.d.ts.map +0 -1
  580. package/dist/providers/opencode-proxy/catalog-handlers.js +0 -132
  581. package/dist/providers/opencode-proxy/catalog-handlers.js.map +0 -1
  582. package/dist/providers/opencode-proxy/catalog.d.ts +0 -41
  583. package/dist/providers/opencode-proxy/catalog.d.ts.map +0 -1
  584. package/dist/providers/opencode-proxy/catalog.js +0 -146
  585. package/dist/providers/opencode-proxy/catalog.js.map +0 -1
  586. package/dist/providers/opencode-proxy/cli.d.ts +0 -2
  587. package/dist/providers/opencode-proxy/cli.d.ts.map +0 -1
  588. package/dist/providers/opencode-proxy/cli.js +0 -162
  589. package/dist/providers/opencode-proxy/cli.js.map +0 -1
  590. package/dist/providers/opencode-proxy/constants.d.ts +0 -13
  591. package/dist/providers/opencode-proxy/constants.d.ts.map +0 -1
  592. package/dist/providers/opencode-proxy/constants.js +0 -15
  593. package/dist/providers/opencode-proxy/constants.js.map +0 -1
  594. package/dist/providers/opencode-proxy/context-budget.d.ts +0 -31
  595. package/dist/providers/opencode-proxy/context-budget.d.ts.map +0 -1
  596. package/dist/providers/opencode-proxy/context-budget.js +0 -165
  597. package/dist/providers/opencode-proxy/context-budget.js.map +0 -1
  598. package/dist/providers/opencode-proxy/errors.d.ts +0 -5
  599. package/dist/providers/opencode-proxy/errors.d.ts.map +0 -1
  600. package/dist/providers/opencode-proxy/errors.js +0 -45
  601. package/dist/providers/opencode-proxy/errors.js.map +0 -1
  602. package/dist/providers/opencode-proxy/forwarders.d.ts +0 -7
  603. package/dist/providers/opencode-proxy/forwarders.d.ts.map +0 -1
  604. package/dist/providers/opencode-proxy/forwarders.js +0 -214
  605. package/dist/providers/opencode-proxy/forwarders.js.map +0 -1
  606. package/dist/providers/opencode-proxy/http.d.ts +0 -11
  607. package/dist/providers/opencode-proxy/http.d.ts.map +0 -1
  608. package/dist/providers/opencode-proxy/http.js +0 -97
  609. package/dist/providers/opencode-proxy/http.js.map +0 -1
  610. package/dist/providers/opencode-proxy/models.d.ts +0 -42
  611. package/dist/providers/opencode-proxy/models.d.ts.map +0 -1
  612. package/dist/providers/opencode-proxy/models.js +0 -148
  613. package/dist/providers/opencode-proxy/models.js.map +0 -1
  614. package/dist/providers/opencode-proxy/openai-handler.d.ts +0 -5
  615. package/dist/providers/opencode-proxy/openai-handler.d.ts.map +0 -1
  616. package/dist/providers/opencode-proxy/openai-handler.js +0 -115
  617. package/dist/providers/opencode-proxy/openai-handler.js.map +0 -1
  618. package/dist/providers/opencode-proxy/router.d.ts +0 -4
  619. package/dist/providers/opencode-proxy/router.d.ts.map +0 -1
  620. package/dist/providers/opencode-proxy/router.js +0 -65
  621. package/dist/providers/opencode-proxy/router.js.map +0 -1
  622. package/dist/providers/opencode-proxy/runtime.d.ts +0 -23
  623. package/dist/providers/opencode-proxy/runtime.d.ts.map +0 -1
  624. package/dist/providers/opencode-proxy/runtime.js +0 -158
  625. package/dist/providers/opencode-proxy/runtime.js.map +0 -1
  626. package/dist/providers/opencode-proxy/server.d.ts +0 -13
  627. package/dist/providers/opencode-proxy/server.d.ts.map +0 -1
  628. package/dist/providers/opencode-proxy/server.js +0 -52
  629. package/dist/providers/opencode-proxy/server.js.map +0 -1
  630. package/dist/providers/opencode-proxy/stream.d.ts +0 -4
  631. package/dist/providers/opencode-proxy/stream.d.ts.map +0 -1
  632. package/dist/providers/opencode-proxy/stream.js +0 -71
  633. package/dist/providers/opencode-proxy/stream.js.map +0 -1
  634. package/dist/providers/opencode-proxy/translate-stream.d.ts +0 -3
  635. package/dist/providers/opencode-proxy/translate-stream.d.ts.map +0 -1
  636. package/dist/providers/opencode-proxy/translate-stream.js +0 -205
  637. package/dist/providers/opencode-proxy/translate-stream.js.map +0 -1
  638. package/dist/providers/opencode-proxy/translate.d.ts +0 -11
  639. package/dist/providers/opencode-proxy/translate.d.ts.map +0 -1
  640. package/dist/providers/opencode-proxy/translate.js +0 -250
  641. package/dist/providers/opencode-proxy/translate.js.map +0 -1
  642. package/dist/providers/opencode-proxy/types.d.ts +0 -110
  643. package/dist/providers/opencode-proxy/types.d.ts.map +0 -1
  644. package/dist/providers/opencode-proxy/types.js +0 -38
  645. package/dist/providers/opencode-proxy/types.js.map +0 -1
  646. package/dist/providers/opencode-proxy-lifecycle.d.ts +0 -11
  647. package/dist/providers/opencode-proxy-lifecycle.d.ts.map +0 -1
  648. package/dist/providers/opencode-proxy-lifecycle.js +0 -144
  649. package/dist/providers/opencode-proxy-lifecycle.js.map +0 -1
  650. package/dist/providers/opencode.d.ts +0 -40
  651. package/dist/providers/opencode.d.ts.map +0 -1
  652. package/dist/providers/opencode.js +0 -190
  653. package/dist/providers/opencode.js.map +0 -1
  654. package/dist/providers/protocol/anthropic-convert.d.ts +0 -12
  655. package/dist/providers/protocol/anthropic-convert.d.ts.map +0 -1
  656. package/dist/providers/protocol/anthropic-convert.js +0 -113
  657. package/dist/providers/protocol/anthropic-convert.js.map +0 -1
  658. package/dist/providers/protocol/anthropic-helpers.d.ts +0 -13
  659. package/dist/providers/protocol/anthropic-helpers.d.ts.map +0 -1
  660. package/dist/providers/protocol/anthropic-helpers.js +0 -179
  661. package/dist/providers/protocol/anthropic-helpers.js.map +0 -1
  662. package/dist/providers/protocol/anthropic-stream-reader.d.ts +0 -13
  663. package/dist/providers/protocol/anthropic-stream-reader.d.ts.map +0 -1
  664. package/dist/providers/protocol/anthropic-stream-reader.js +0 -46
  665. package/dist/providers/protocol/anthropic-stream-reader.js.map +0 -1
  666. package/dist/providers/protocol/anthropic-stream.d.ts +0 -7
  667. package/dist/providers/protocol/anthropic-stream.d.ts.map +0 -1
  668. package/dist/providers/protocol/anthropic-stream.js +0 -318
  669. package/dist/providers/protocol/anthropic-stream.js.map +0 -1
  670. package/dist/providers/protocol/anthropic-types.d.ts +0 -240
  671. package/dist/providers/protocol/anthropic-types.d.ts.map +0 -1
  672. package/dist/providers/protocol/anthropic.d.ts +0 -20
  673. package/dist/providers/protocol/anthropic.d.ts.map +0 -1
  674. package/dist/providers/protocol/gemini/translate-anthropic.d.ts +0 -15
  675. package/dist/providers/protocol/gemini/translate-anthropic.d.ts.map +0 -1
  676. package/dist/providers/protocol/gemini/translate-anthropic.js +0 -84
  677. package/dist/providers/protocol/gemini/translate-anthropic.js.map +0 -1
  678. package/dist/providers/protocol/gemini/translate-chat.d.ts +0 -5
  679. package/dist/providers/protocol/gemini/translate-chat.d.ts.map +0 -1
  680. package/dist/providers/protocol/gemini/translate-chat.js +0 -142
  681. package/dist/providers/protocol/gemini/translate-chat.js.map +0 -1
  682. package/dist/providers/protocol/gemini/translate-models.d.ts +0 -40
  683. package/dist/providers/protocol/gemini/translate-models.d.ts.map +0 -1
  684. package/dist/providers/protocol/gemini/translate-models.js +0 -186
  685. package/dist/providers/protocol/gemini/translate-models.js.map +0 -1
  686. package/dist/providers/protocol/gemini/translate-responses.d.ts +0 -6
  687. package/dist/providers/protocol/gemini/translate-responses.d.ts.map +0 -1
  688. package/dist/providers/protocol/gemini/translate-responses.js +0 -187
  689. package/dist/providers/protocol/gemini/translate-responses.js.map +0 -1
  690. package/dist/providers/protocol/gemini/translate-schema.d.ts +0 -9
  691. package/dist/providers/protocol/gemini/translate-schema.d.ts.map +0 -1
  692. package/dist/providers/protocol/gemini/translate-schema.js +0 -48
  693. package/dist/providers/protocol/gemini/translate-schema.js.map +0 -1
  694. package/dist/providers/protocol/gemini/translate-shared.d.ts +0 -8
  695. package/dist/providers/protocol/gemini/translate-shared.d.ts.map +0 -1
  696. package/dist/providers/protocol/gemini/translate-shared.js +0 -47
  697. package/dist/providers/protocol/gemini/translate-shared.js.map +0 -1
  698. package/dist/providers/protocol/gemini/translate-thinking.d.ts +0 -7
  699. package/dist/providers/protocol/gemini/translate-thinking.d.ts.map +0 -1
  700. package/dist/providers/protocol/gemini/translate-thinking.js +0 -65
  701. package/dist/providers/protocol/gemini/translate-thinking.js.map +0 -1
  702. package/dist/providers/protocol/gemini/translate-types.d.ts +0 -133
  703. package/dist/providers/protocol/gemini/translate-types.d.ts.map +0 -1
  704. package/dist/providers/protocol/gemini/translate.d.ts +0 -7
  705. package/dist/providers/protocol/gemini/translate.d.ts.map +0 -1
  706. package/dist/providers/protocol/json-schema.d.ts +0 -52
  707. package/dist/providers/protocol/json-schema.d.ts.map +0 -1
  708. package/dist/providers/protocol/json-schema.js +0 -189
  709. package/dist/providers/protocol/json-schema.js.map +0 -1
  710. package/dist/providers/protocol/token-estimate.d.ts +0 -15
  711. package/dist/providers/protocol/token-estimate.d.ts.map +0 -1
  712. package/dist/providers/protocol/token-estimate.js +0 -34
  713. package/dist/providers/protocol/token-estimate.js.map +0 -1
  714. package/dist/providers/proxy-hub-backend.d.ts +0 -4
  715. package/dist/providers/proxy-hub-backend.d.ts.map +0 -1
  716. package/dist/providers/proxy-hub-backend.js +0 -11
  717. package/dist/providers/proxy-hub-backend.js.map +0 -1
  718. package/dist/providers/proxy-process.d.ts +0 -35
  719. package/dist/providers/proxy-process.d.ts.map +0 -1
  720. package/dist/providers/proxy-process.js +0 -119
  721. package/dist/providers/proxy-process.js.map +0 -1
  722. package/dist/providers/proxy-shared.d.ts +0 -43
  723. package/dist/providers/proxy-shared.d.ts.map +0 -1
  724. package/dist/providers/proxy-shared.js +0 -128
  725. package/dist/providers/proxy-shared.js.map +0 -1
  726. package/dist/providers/quota-guard.d.ts +0 -49
  727. package/dist/providers/quota-guard.d.ts.map +0 -1
  728. package/dist/providers/quota-guard.js +0 -107
  729. package/dist/providers/quota-guard.js.map +0 -1
  730. package/dist/providers/reasoning.d.ts +0 -27
  731. package/dist/providers/reasoning.d.ts.map +0 -1
  732. package/dist/providers/reasoning.js +0 -61
  733. package/dist/providers/reasoning.js.map +0 -1
  734. package/dist/providers/upstream-policy.d.ts +0 -33
  735. package/dist/providers/upstream-policy.d.ts.map +0 -1
  736. package/dist/providers/upstream-policy.js +0 -97
  737. package/dist/providers/upstream-policy.js.map +0 -1
  738. package/dist/public-types.d.ts +0 -3
  739. package/dist/public-types.d.ts.map +0 -1
  740. package/dist/public.d.ts +0 -19
  741. package/dist/public.d.ts.map +0 -1
  742. package/dist/public.js +0 -16
  743. package/dist/public.js.map +0 -1
  744. package/dist/sources/account-adapters.d.ts +0 -64
  745. package/dist/sources/account-adapters.d.ts.map +0 -1
  746. package/dist/sources/account-adapters.js +0 -205
  747. package/dist/sources/account-adapters.js.map +0 -1
  748. package/dist/sources/gateway-adapters.d.ts +0 -26
  749. package/dist/sources/gateway-adapters.d.ts.map +0 -1
  750. package/dist/sources/gateway-adapters.js +0 -43
  751. package/dist/sources/gateway-adapters.js.map +0 -1
  752. package/dist/sources/kiro-proxy-bin.d.ts +0 -41
  753. package/dist/sources/kiro-proxy-bin.d.ts.map +0 -1
  754. package/dist/sources/kiro-proxy-bin.js +0 -140
  755. package/dist/sources/kiro-proxy-bin.js.map +0 -1
  756. package/dist/sources/proxy-hub-adapters.d.ts +0 -7
  757. package/dist/sources/proxy-hub-adapters.d.ts.map +0 -1
  758. package/dist/sources/proxy-hub-adapters.js +0 -26
  759. package/dist/sources/proxy-hub-adapters.js.map +0 -1
  760. package/dist/testing.d.ts +0 -9
  761. package/dist/testing.d.ts.map +0 -1
  762. package/dist/testing.js +0 -6
  763. package/dist/tray/AnyPickTray.swift +0 -3
  764. package/dist/tray/activity.d.ts +0 -18
  765. package/dist/tray/activity.d.ts.map +0 -1
  766. package/dist/tray/activity.js +0 -51
  767. package/dist/tray/activity.js.map +0 -1
  768. package/dist/tray/app-icons/icon-1024.png +0 -0
  769. package/dist/tray/app-icons/icon-128.png +0 -0
  770. package/dist/tray/app-icons/icon-16.png +0 -0
  771. package/dist/tray/app-icons/icon-256.png +0 -0
  772. package/dist/tray/app-icons/icon-32.png +0 -0
  773. package/dist/tray/app-icons/icon-512.png +0 -0
  774. package/dist/tray/app-icons/icon-64.png +0 -0
  775. package/dist/tray/icons/claude.svg +0 -1
  776. package/dist/tray/icons/googlegemini.svg +0 -1
  777. package/dist/tray/icons/grok.svg +0 -1
  778. package/dist/tray/icons/kiro.svg +0 -1
  779. package/dist/tray/icons/openai.svg +0 -1
  780. package/dist/tray/icons/opencode.svg +0 -1
  781. package/dist/tray/icons/openrouter.svg +0 -1
  782. package/dist/tray/model-role-actions.d.ts +0 -15
  783. package/dist/tray/model-role-actions.d.ts.map +0 -1
  784. package/dist/tray/model-role-actions.js +0 -41
  785. package/dist/tray/model-role-actions.js.map +0 -1
  786. package/dist/tray/native/AccountsPanel.swift +0 -434
  787. package/dist/tray/native/AppEntry.swift +0 -229
  788. package/dist/tray/native/MainWindow.swift +0 -300
  789. package/dist/tray/native/ManageFormChrome.swift +0 -332
  790. package/dist/tray/native/ManageForms.swift +0 -472
  791. package/dist/tray/native/ManagePanel.swift +0 -356
  792. package/dist/tray/native/Models.swift +0 -259
  793. package/dist/tray/native/ModelsEditor.swift +0 -390
  794. package/dist/tray/native/ModelsOverview.swift +0 -76
  795. package/dist/tray/native/ModelsPickers.swift +0 -273
  796. package/dist/tray/native/ModelsRoutePickers.swift +0 -718
  797. package/dist/tray/native/MonitorPanel.swift +0 -375
  798. package/dist/tray/native/ProxyPanel.swift +0 -326
  799. package/dist/tray/native/QuickActivityRow.swift +0 -40
  800. package/dist/tray/native/QuickNav.swift +0 -62
  801. package/dist/tray/native/QuickPanel.swift +0 -447
  802. package/dist/tray/native/QuickRouteRow.swift +0 -189
  803. package/dist/tray/native/QuickServiceRows.swift +0 -292
  804. package/dist/tray/native/RoutingIssues.swift +0 -293
  805. package/dist/tray/native/SettingsPanel.swift +0 -225
  806. package/dist/tray/native/SharedUI.swift +0 -681
  807. package/dist/tray/native/Store.swift +0 -540
  808. package/dist/tray/native/Theme.swift +0 -139
  809. package/dist/tray/native/TrayChrome.swift +0 -657
  810. package/dist/tray/native/TrayControls.swift +0 -475
  811. package/dist/tray/native/TrayPreferences.swift +0 -46
  812. package/dist/tray/native/sources.txt +0 -26
  813. package/dist/tray/native-sources.d.ts +0 -8
  814. package/dist/tray/native-sources.d.ts.map +0 -1
  815. package/dist/tray/native-sources.js +0 -19
  816. package/dist/tray/native-sources.js.map +0 -1
  817. package/dist/tray/protocol.d.ts +0 -79
  818. package/dist/tray/protocol.d.ts.map +0 -1
  819. package/dist/tray/protocol.js +0 -145
  820. package/dist/tray/protocol.js.map +0 -1
  821. package/dist/tray/settings.d.ts +0 -15
  822. package/dist/tray/settings.d.ts.map +0 -1
  823. package/dist/tray/settings.js +0 -72
  824. package/dist/tray/settings.js.map +0 -1
  825. package/dist/tray/snapshot-client-routes.d.ts +0 -11
  826. package/dist/tray/snapshot-client-routes.d.ts.map +0 -1
  827. package/dist/tray/snapshot-client-routes.js +0 -305
  828. package/dist/tray/snapshot-client-routes.js.map +0 -1
  829. package/dist/tray/snapshot-helpers.d.ts +0 -20
  830. package/dist/tray/snapshot-helpers.d.ts.map +0 -1
  831. package/dist/tray/snapshot-helpers.js +0 -74
  832. package/dist/tray/snapshot-helpers.js.map +0 -1
  833. package/dist/tray/snapshot-hub.d.ts +0 -7
  834. package/dist/tray/snapshot-hub.d.ts.map +0 -1
  835. package/dist/tray/snapshot-hub.js +0 -93
  836. package/dist/tray/snapshot-hub.js.map +0 -1
  837. package/dist/tray/snapshot-resources.d.ts +0 -19
  838. package/dist/tray/snapshot-resources.d.ts.map +0 -1
  839. package/dist/tray/snapshot-resources.js +0 -216
  840. package/dist/tray/snapshot-resources.js.map +0 -1
  841. package/dist/tray/snapshot-types.d.ts +0 -229
  842. package/dist/tray/snapshot-types.d.ts.map +0 -1
  843. package/dist/tray/snapshot-usage.d.ts +0 -9
  844. package/dist/tray/snapshot-usage.d.ts.map +0 -1
  845. package/dist/tray/snapshot-usage.js +0 -35
  846. package/dist/tray/snapshot-usage.js.map +0 -1
  847. package/dist/tray/snapshot.d.ts +0 -7
  848. package/dist/tray/snapshot.d.ts.map +0 -1
  849. package/dist/tray/snapshot.js +0 -48
  850. package/dist/tray/snapshot.js.map +0 -1
  851. package/dist/tray/supervisor-actions.d.ts +0 -19
  852. package/dist/tray/supervisor-actions.d.ts.map +0 -1
  853. package/dist/tray/supervisor-actions.js +0 -224
  854. package/dist/tray/supervisor-actions.js.map +0 -1
  855. package/dist/tray/supervisor-activity.d.ts +0 -5
  856. package/dist/tray/supervisor-activity.d.ts.map +0 -1
  857. package/dist/tray/supervisor-activity.js +0 -19
  858. package/dist/tray/supervisor-activity.js.map +0 -1
  859. package/dist/tray/supervisor-errors.d.ts +0 -9
  860. package/dist/tray/supervisor-errors.d.ts.map +0 -1
  861. package/dist/tray/supervisor-errors.js +0 -91
  862. package/dist/tray/supervisor-errors.js.map +0 -1
  863. package/dist/tray/supervisor-logs.d.ts +0 -6
  864. package/dist/tray/supervisor-logs.d.ts.map +0 -1
  865. package/dist/tray/supervisor-logs.js +0 -52
  866. package/dist/tray/supervisor-logs.js.map +0 -1
  867. package/dist/tray/supervisor-mutations.d.ts +0 -14
  868. package/dist/tray/supervisor-mutations.d.ts.map +0 -1
  869. package/dist/tray/supervisor-mutations.js +0 -218
  870. package/dist/tray/supervisor-mutations.js.map +0 -1
  871. package/dist/tray/supervisor-native.d.ts +0 -22
  872. package/dist/tray/supervisor-native.d.ts.map +0 -1
  873. package/dist/tray/supervisor-native.js +0 -227
  874. package/dist/tray/supervisor-native.js.map +0 -1
  875. package/dist/tray/supervisor-proxies.d.ts +0 -6
  876. package/dist/tray/supervisor-proxies.d.ts.map +0 -1
  877. package/dist/tray/supervisor-proxies.js +0 -37
  878. package/dist/tray/supervisor-proxies.js.map +0 -1
  879. package/dist/tray/supervisor-tauri.d.ts +0 -13
  880. package/dist/tray/supervisor-tauri.d.ts.map +0 -1
  881. package/dist/tray/supervisor-tauri.js +0 -36
  882. package/dist/tray/supervisor-tauri.js.map +0 -1
  883. package/dist/tray/supervisor.d.ts +0 -17
  884. package/dist/tray/supervisor.d.ts.map +0 -1
  885. package/dist/tray/supervisor.js +0 -372
  886. package/dist/tray/supervisor.js.map +0 -1
  887. package/dist/tray/terminal-launcher.d.ts +0 -12
  888. package/dist/tray/terminal-launcher.d.ts.map +0 -1
  889. package/dist/tray/terminal-launcher.js +0 -130
  890. package/dist/tray/terminal-launcher.js.map +0 -1
  891. package/dist/tui/actions/ensure-proxy-up.d.ts +0 -15
  892. package/dist/tui/actions/ensure-proxy-up.d.ts.map +0 -1
  893. package/dist/tui/actions/ensure-proxy-up.js +0 -41
  894. package/dist/tui/actions/ensure-proxy-up.js.map +0 -1
  895. package/dist/tui/actions/use-account-actions.d.ts +0 -35
  896. package/dist/tui/actions/use-account-actions.d.ts.map +0 -1
  897. package/dist/tui/actions/use-account-actions.js +0 -527
  898. package/dist/tui/actions/use-account-actions.js.map +0 -1
  899. package/dist/tui/actions/use-app-bindings.d.ts +0 -83
  900. package/dist/tui/actions/use-app-bindings.d.ts.map +0 -1
  901. package/dist/tui/actions/use-app-bindings.js +0 -472
  902. package/dist/tui/actions/use-app-bindings.js.map +0 -1
  903. package/dist/tui/actions/use-gateway-actions.d.ts +0 -45
  904. package/dist/tui/actions/use-gateway-actions.d.ts.map +0 -1
  905. package/dist/tui/actions/use-gateway-actions.js +0 -370
  906. package/dist/tui/actions/use-gateway-actions.js.map +0 -1
  907. package/dist/tui/actions/use-home-filter.d.ts +0 -24
  908. package/dist/tui/actions/use-home-filter.d.ts.map +0 -1
  909. package/dist/tui/actions/use-home-filter.js +0 -48
  910. package/dist/tui/actions/use-home-filter.js.map +0 -1
  911. package/dist/tui/actions/use-model-role-editor.d.ts +0 -44
  912. package/dist/tui/actions/use-model-role-editor.d.ts.map +0 -1
  913. package/dist/tui/actions/use-model-role-editor.js +0 -68
  914. package/dist/tui/actions/use-model-role-editor.js.map +0 -1
  915. package/dist/tui/actions/use-provider-filter.d.ts +0 -10
  916. package/dist/tui/actions/use-provider-filter.d.ts.map +0 -1
  917. package/dist/tui/actions/use-provider-filter.js +0 -22
  918. package/dist/tui/actions/use-provider-filter.js.map +0 -1
  919. package/dist/tui/actions/use-proxy-actions.d.ts +0 -31
  920. package/dist/tui/actions/use-proxy-actions.d.ts.map +0 -1
  921. package/dist/tui/actions/use-proxy-actions.js +0 -474
  922. package/dist/tui/actions/use-proxy-actions.js.map +0 -1
  923. package/dist/tui/actions/use-text-input-submit.d.ts +0 -16
  924. package/dist/tui/actions/use-text-input-submit.d.ts.map +0 -1
  925. package/dist/tui/actions/use-text-input-submit.js +0 -96
  926. package/dist/tui/actions/use-text-input-submit.js.map +0 -1
  927. package/dist/tui/actions/use-tray-runtime-actions.d.ts +0 -18
  928. package/dist/tui/actions/use-tray-runtime-actions.d.ts.map +0 -1
  929. package/dist/tui/actions/use-tray-runtime-actions.js +0 -78
  930. package/dist/tui/actions/use-tray-runtime-actions.js.map +0 -1
  931. package/dist/tui/app-ui-helpers.d.ts +0 -14
  932. package/dist/tui/app-ui-helpers.d.ts.map +0 -1
  933. package/dist/tui/app-ui-helpers.js +0 -48
  934. package/dist/tui/app-ui-helpers.js.map +0 -1
  935. package/dist/tui/app-ui.d.ts +0 -19
  936. package/dist/tui/app-ui.d.ts.map +0 -1
  937. package/dist/tui/app-ui.js +0 -98
  938. package/dist/tui/app-ui.js.map +0 -1
  939. package/dist/tui/components/chrome/header.d.ts +0 -39
  940. package/dist/tui/components/chrome/header.d.ts.map +0 -1
  941. package/dist/tui/components/chrome/header.js +0 -161
  942. package/dist/tui/components/chrome/header.js.map +0 -1
  943. package/dist/tui/components/chrome/inputs.d.ts +0 -34
  944. package/dist/tui/components/chrome/inputs.d.ts.map +0 -1
  945. package/dist/tui/components/chrome/inputs.js +0 -82
  946. package/dist/tui/components/chrome/inputs.js.map +0 -1
  947. package/dist/tui/components/chrome/layout.d.ts +0 -61
  948. package/dist/tui/components/chrome/layout.d.ts.map +0 -1
  949. package/dist/tui/components/chrome/layout.js +0 -119
  950. package/dist/tui/components/chrome/layout.js.map +0 -1
  951. package/dist/tui/components/chrome/legacy.d.ts +0 -84
  952. package/dist/tui/components/chrome/legacy.d.ts.map +0 -1
  953. package/dist/tui/components/chrome/legacy.js +0 -6
  954. package/dist/tui/components/chrome/rows.d.ts +0 -89
  955. package/dist/tui/components/chrome/rows.d.ts.map +0 -1
  956. package/dist/tui/components/chrome/rows.js +0 -151
  957. package/dist/tui/components/chrome/rows.js.map +0 -1
  958. package/dist/tui/components/chrome/status.d.ts +0 -50
  959. package/dist/tui/components/chrome/status.d.ts.map +0 -1
  960. package/dist/tui/components/chrome/status.js +0 -157
  961. package/dist/tui/components/chrome/status.js.map +0 -1
  962. package/dist/tui/components/chrome.d.ts +0 -7
  963. package/dist/tui/components/chrome.d.ts.map +0 -1
  964. package/dist/tui/components/chrome.js +0 -7
  965. package/dist/tui/components.d.ts +0 -26
  966. package/dist/tui/components.d.ts.map +0 -1
  967. package/dist/tui/components.js +0 -182
  968. package/dist/tui/components.js.map +0 -1
  969. package/dist/tui/model/anypick.d.ts +0 -106
  970. package/dist/tui/model/anypick.d.ts.map +0 -1
  971. package/dist/tui/model/anypick.js +0 -116
  972. package/dist/tui/model/anypick.js.map +0 -1
  973. package/dist/tui/model/bindings.d.ts +0 -39
  974. package/dist/tui/model/bindings.d.ts.map +0 -1
  975. package/dist/tui/model/bindings.js +0 -102
  976. package/dist/tui/model/bindings.js.map +0 -1
  977. package/dist/tui/model/detail.d.ts +0 -6
  978. package/dist/tui/model/detail.d.ts.map +0 -1
  979. package/dist/tui/model/detail.js +0 -85
  980. package/dist/tui/model/detail.js.map +0 -1
  981. package/dist/tui/model/gateway.d.ts +0 -46
  982. package/dist/tui/model/gateway.d.ts.map +0 -1
  983. package/dist/tui/model/gateway.js +0 -134
  984. package/dist/tui/model/gateway.js.map +0 -1
  985. package/dist/tui/model/home-format.d.ts +0 -52
  986. package/dist/tui/model/home-format.d.ts.map +0 -1
  987. package/dist/tui/model/home-format.js +0 -64
  988. package/dist/tui/model/home-format.js.map +0 -1
  989. package/dist/tui/model/home-load.d.ts +0 -8
  990. package/dist/tui/model/home-load.d.ts.map +0 -1
  991. package/dist/tui/model/home-load.js +0 -244
  992. package/dist/tui/model/home-load.js.map +0 -1
  993. package/dist/tui/model/identity.d.ts +0 -53
  994. package/dist/tui/model/identity.d.ts.map +0 -1
  995. package/dist/tui/model/identity.js +0 -176
  996. package/dist/tui/model/identity.js.map +0 -1
  997. package/dist/tui/model/line-editor.d.ts +0 -99
  998. package/dist/tui/model/line-editor.d.ts.map +0 -1
  999. package/dist/tui/model/line-editor.js +0 -186
  1000. package/dist/tui/model/line-editor.js.map +0 -1
  1001. package/dist/tui/model/names.d.ts +0 -28
  1002. package/dist/tui/model/names.d.ts.map +0 -1
  1003. package/dist/tui/model/names.js +0 -42
  1004. package/dist/tui/model/names.js.map +0 -1
  1005. package/dist/tui/model/pool.d.ts +0 -11
  1006. package/dist/tui/model/pool.d.ts.map +0 -1
  1007. package/dist/tui/model/pool.js +0 -115
  1008. package/dist/tui/model/pool.js.map +0 -1
  1009. package/dist/tui/model/provider-filter.d.ts +0 -14
  1010. package/dist/tui/model/provider-filter.d.ts.map +0 -1
  1011. package/dist/tui/model/provider-filter.js +0 -46
  1012. package/dist/tui/model/provider-filter.js.map +0 -1
  1013. package/dist/tui/model/proxy-hub.d.ts +0 -23
  1014. package/dist/tui/model/proxy-hub.d.ts.map +0 -1
  1015. package/dist/tui/model/proxy-hub.js +0 -69
  1016. package/dist/tui/model/proxy-hub.js.map +0 -1
  1017. package/dist/tui/model/proxy-labels.d.ts +0 -5
  1018. package/dist/tui/model/proxy-labels.d.ts.map +0 -1
  1019. package/dist/tui/model/proxy-labels.js +0 -18
  1020. package/dist/tui/model/proxy-labels.js.map +0 -1
  1021. package/dist/tui/model/proxy.d.ts +0 -15
  1022. package/dist/tui/model/proxy.d.ts.map +0 -1
  1023. package/dist/tui/model/proxy.js +0 -214
  1024. package/dist/tui/model/proxy.js.map +0 -1
  1025. package/dist/tui/model/root.d.ts +0 -20
  1026. package/dist/tui/model/root.d.ts.map +0 -1
  1027. package/dist/tui/model/root.js +0 -126
  1028. package/dist/tui/model/root.js.map +0 -1
  1029. package/dist/tui/model/route-builder.d.ts +0 -25
  1030. package/dist/tui/model/route-builder.d.ts.map +0 -1
  1031. package/dist/tui/model/route-builder.js +0 -199
  1032. package/dist/tui/model/route-builder.js.map +0 -1
  1033. package/dist/tui/model/screen.d.ts +0 -260
  1034. package/dist/tui/model/screen.d.ts.map +0 -1
  1035. package/dist/tui/model/types.d.ts +0 -179
  1036. package/dist/tui/model/types.d.ts.map +0 -1
  1037. package/dist/tui/model.d.ts +0 -18
  1038. package/dist/tui/model.d.ts.map +0 -1
  1039. package/dist/tui/model.js +0 -17
  1040. package/dist/tui/proxy-models-fetch.d.ts +0 -34
  1041. package/dist/tui/proxy-models-fetch.d.ts.map +0 -1
  1042. package/dist/tui/proxy-models-fetch.js +0 -87
  1043. package/dist/tui/proxy-models-fetch.js.map +0 -1
  1044. package/dist/tui/routes/account.d.ts +0 -4
  1045. package/dist/tui/routes/account.d.ts.map +0 -1
  1046. package/dist/tui/routes/account.js +0 -327
  1047. package/dist/tui/routes/account.js.map +0 -1
  1048. package/dist/tui/routes/apps.d.ts +0 -3
  1049. package/dist/tui/routes/apps.d.ts.map +0 -1
  1050. package/dist/tui/routes/apps.js +0 -296
  1051. package/dist/tui/routes/apps.js.map +0 -1
  1052. package/dist/tui/routes/common.d.ts +0 -4
  1053. package/dist/tui/routes/common.d.ts.map +0 -1
  1054. package/dist/tui/routes/common.js +0 -117
  1055. package/dist/tui/routes/common.js.map +0 -1
  1056. package/dist/tui/routes/context.d.ts +0 -43
  1057. package/dist/tui/routes/context.d.ts.map +0 -1
  1058. package/dist/tui/routes/gateway.d.ts +0 -3
  1059. package/dist/tui/routes/gateway.d.ts.map +0 -1
  1060. package/dist/tui/routes/gateway.js +0 -199
  1061. package/dist/tui/routes/gateway.js.map +0 -1
  1062. package/dist/tui/routes/proxy.d.ts +0 -3
  1063. package/dist/tui/routes/proxy.d.ts.map +0 -1
  1064. package/dist/tui/routes/proxy.js +0 -234
  1065. package/dist/tui/routes/proxy.js.map +0 -1
  1066. package/dist/tui/screens/account-detail.d.ts +0 -14
  1067. package/dist/tui/screens/account-detail.d.ts.map +0 -1
  1068. package/dist/tui/screens/account-detail.js +0 -98
  1069. package/dist/tui/screens/account-detail.js.map +0 -1
  1070. package/dist/tui/screens/accounts-home.d.ts +0 -42
  1071. package/dist/tui/screens/accounts-home.d.ts.map +0 -1
  1072. package/dist/tui/screens/accounts-home.js +0 -321
  1073. package/dist/tui/screens/accounts-home.js.map +0 -1
  1074. package/dist/tui/screens/add-account.d.ts +0 -70
  1075. package/dist/tui/screens/add-account.d.ts.map +0 -1
  1076. package/dist/tui/screens/add-account.js +0 -323
  1077. package/dist/tui/screens/add-account.js.map +0 -1
  1078. package/dist/tui/screens/anypick-home.d.ts +0 -39
  1079. package/dist/tui/screens/anypick-home.d.ts.map +0 -1
  1080. package/dist/tui/screens/anypick-home.js +0 -253
  1081. package/dist/tui/screens/anypick-home.js.map +0 -1
  1082. package/dist/tui/screens/anypick-preview.d.ts +0 -13
  1083. package/dist/tui/screens/anypick-preview.d.ts.map +0 -1
  1084. package/dist/tui/screens/anypick-preview.js +0 -49
  1085. package/dist/tui/screens/anypick-preview.js.map +0 -1
  1086. package/dist/tui/screens/app-route-preview.d.ts +0 -14
  1087. package/dist/tui/screens/app-route-preview.d.ts.map +0 -1
  1088. package/dist/tui/screens/app-route-preview.js +0 -35
  1089. package/dist/tui/screens/app-route-preview.js.map +0 -1
  1090. package/dist/tui/screens/app-route-source.d.ts +0 -15
  1091. package/dist/tui/screens/app-route-source.d.ts.map +0 -1
  1092. package/dist/tui/screens/app-route-source.js +0 -97
  1093. package/dist/tui/screens/app-route-source.js.map +0 -1
  1094. package/dist/tui/screens/apps-home.d.ts +0 -22
  1095. package/dist/tui/screens/apps-home.d.ts.map +0 -1
  1096. package/dist/tui/screens/apps-home.js +0 -111
  1097. package/dist/tui/screens/apps-home.js.map +0 -1
  1098. package/dist/tui/screens/confirm.d.ts +0 -19
  1099. package/dist/tui/screens/confirm.d.ts.map +0 -1
  1100. package/dist/tui/screens/confirm.js +0 -42
  1101. package/dist/tui/screens/confirm.js.map +0 -1
  1102. package/dist/tui/screens/credential-form.d.ts +0 -30
  1103. package/dist/tui/screens/credential-form.d.ts.map +0 -1
  1104. package/dist/tui/screens/credential-form.js +0 -241
  1105. package/dist/tui/screens/credential-form.js.map +0 -1
  1106. package/dist/tui/screens/gateway-connection-form.d.ts +0 -16
  1107. package/dist/tui/screens/gateway-connection-form.d.ts.map +0 -1
  1108. package/dist/tui/screens/gateway-connection-form.js +0 -127
  1109. package/dist/tui/screens/gateway-connection-form.js.map +0 -1
  1110. package/dist/tui/screens/gateway-pick-provider.d.ts +0 -19
  1111. package/dist/tui/screens/gateway-pick-provider.d.ts.map +0 -1
  1112. package/dist/tui/screens/gateway-pick-provider.js +0 -62
  1113. package/dist/tui/screens/gateway-pick-provider.js.map +0 -1
  1114. package/dist/tui/screens/gateways-home.d.ts +0 -38
  1115. package/dist/tui/screens/gateways-home.d.ts.map +0 -1
  1116. package/dist/tui/screens/gateways-home.js +0 -247
  1117. package/dist/tui/screens/gateways-home.js.map +0 -1
  1118. package/dist/tui/screens/health.d.ts +0 -16
  1119. package/dist/tui/screens/health.d.ts.map +0 -1
  1120. package/dist/tui/screens/health.js +0 -109
  1121. package/dist/tui/screens/health.js.map +0 -1
  1122. package/dist/tui/screens/help.d.ts +0 -10
  1123. package/dist/tui/screens/help.d.ts.map +0 -1
  1124. package/dist/tui/screens/help.js +0 -213
  1125. package/dist/tui/screens/help.js.map +0 -1
  1126. package/dist/tui/screens/manage-apps.d.ts +0 -29
  1127. package/dist/tui/screens/manage-apps.d.ts.map +0 -1
  1128. package/dist/tui/screens/manage-apps.js +0 -165
  1129. package/dist/tui/screens/manage-apps.js.map +0 -1
  1130. package/dist/tui/screens/proxy-board-helpers.d.ts +0 -9
  1131. package/dist/tui/screens/proxy-board-helpers.d.ts.map +0 -1
  1132. package/dist/tui/screens/proxy-board-helpers.js +0 -70
  1133. package/dist/tui/screens/proxy-board-helpers.js.map +0 -1
  1134. package/dist/tui/screens/proxy-board.d.ts +0 -43
  1135. package/dist/tui/screens/proxy-board.d.ts.map +0 -1
  1136. package/dist/tui/screens/proxy-board.js +0 -351
  1137. package/dist/tui/screens/proxy-board.js.map +0 -1
  1138. package/dist/tui/screens/proxy-hub.d.ts +0 -21
  1139. package/dist/tui/screens/proxy-hub.d.ts.map +0 -1
  1140. package/dist/tui/screens/proxy-hub.js +0 -150
  1141. package/dist/tui/screens/proxy-hub.js.map +0 -1
  1142. package/dist/tui/screens/proxy-models-utils.d.ts +0 -13
  1143. package/dist/tui/screens/proxy-models-utils.d.ts.map +0 -1
  1144. package/dist/tui/screens/proxy-models-utils.js +0 -53
  1145. package/dist/tui/screens/proxy-models-utils.js.map +0 -1
  1146. package/dist/tui/screens/proxy-models.d.ts +0 -65
  1147. package/dist/tui/screens/proxy-models.d.ts.map +0 -1
  1148. package/dist/tui/screens/proxy-models.js +0 -252
  1149. package/dist/tui/screens/proxy-models.js.map +0 -1
  1150. package/dist/tui/screens/proxy.d.ts +0 -26
  1151. package/dist/tui/screens/proxy.d.ts.map +0 -1
  1152. package/dist/tui/screens/text-input.d.ts +0 -18
  1153. package/dist/tui/screens/text-input.d.ts.map +0 -1
  1154. package/dist/tui/screens/text-input.js +0 -67
  1155. package/dist/tui/screens/text-input.js.map +0 -1
  1156. package/dist/tui/screens/tray-runtime.d.ts +0 -19
  1157. package/dist/tui/screens/tray-runtime.d.ts.map +0 -1
  1158. package/dist/tui/screens/tray-runtime.js +0 -108
  1159. package/dist/tui/screens/tray-runtime.js.map +0 -1
  1160. package/dist/tui/use-tui-nav.d.ts +0 -40
  1161. package/dist/tui/use-tui-nav.d.ts.map +0 -1
  1162. package/dist/tui/use-tui-nav.js +0 -256
  1163. package/dist/tui/use-tui-nav.js.map +0 -1
  1164. package/dist/tui/use-tui-shell.d.ts +0 -46
  1165. package/dist/tui/use-tui-shell.d.ts.map +0 -1
  1166. package/dist/tui/use-tui-shell.js +0 -95
  1167. package/dist/tui/use-tui-shell.js.map +0 -1
  1168. package/dist/types/account.d.ts +0 -410
  1169. package/dist/types/account.d.ts.map +0 -1
  1170. package/dist/types/account.js +0 -7
  1171. package/dist/types/account.js.map +0 -1
  1172. package/dist/types/bindings.d.ts +0 -300
  1173. package/dist/types/bindings.d.ts.map +0 -1
  1174. package/dist/types/catalog.d.ts +0 -165
  1175. package/dist/types/catalog.d.ts.map +0 -1
  1176. package/dist/types/clients.d.ts +0 -174
  1177. package/dist/types/clients.d.ts.map +0 -1
  1178. package/dist/types/clients.js +0 -11
  1179. package/dist/types/clients.js.map +0 -1
  1180. package/dist/types/plugins.d.ts +0 -89
  1181. package/dist/types/plugins.d.ts.map +0 -1
  1182. package/dist/types/plugins.js +0 -14
  1183. package/dist/types/plugins.js.map +0 -1
  1184. package/dist/types/proxy-hub.d.ts +0 -109
  1185. package/dist/types/proxy-hub.d.ts.map +0 -1
  1186. package/dist/types.d.ts +0 -7
  1187. package/dist/types.d.ts.map +0 -1
  1188. package/dist/types.js +0 -1
  1189. package/dist/utils/errors.d.ts +0 -61
  1190. package/dist/utils/errors.d.ts.map +0 -1
  1191. package/dist/utils/errors.js +0 -119
  1192. package/dist/utils/errors.js.map +0 -1
  1193. package/dist/utils/fs.d.ts +0 -39
  1194. package/dist/utils/fs.d.ts.map +0 -1
  1195. package/dist/utils/fs.js +0 -126
  1196. package/dist/utils/fs.js.map +0 -1
  1197. package/dist/utils/lock.d.ts +0 -33
  1198. package/dist/utils/lock.d.ts.map +0 -1
  1199. package/dist/utils/lock.js +0 -95
  1200. package/dist/utils/lock.js.map +0 -1
  1201. package/dist/utils/log.d.ts +0 -10
  1202. package/dist/utils/log.d.ts.map +0 -1
  1203. package/dist/utils/log.js +0 -21
  1204. package/dist/utils/log.js.map +0 -1
  1205. package/dist/utils/network.d.ts +0 -3
  1206. package/dist/utils/network.d.ts.map +0 -1
  1207. package/dist/utils/network.js +0 -13
  1208. package/dist/utils/network.js.map +0 -1
  1209. package/dist/utils/process/binary.d.ts +0 -14
  1210. package/dist/utils/process/binary.d.ts.map +0 -1
  1211. package/dist/utils/process/binary.js +0 -29
  1212. package/dist/utils/process/binary.js.map +0 -1
  1213. package/dist/utils/process/follow.d.ts +0 -2
  1214. package/dist/utils/process/follow.d.ts.map +0 -1
  1215. package/dist/utils/process/follow.js +0 -90
  1216. package/dist/utils/process/follow.js.map +0 -1
  1217. package/dist/utils/process/health.d.ts +0 -43
  1218. package/dist/utils/process/health.d.ts.map +0 -1
  1219. package/dist/utils/process/health.js +0 -132
  1220. package/dist/utils/process/health.js.map +0 -1
  1221. package/dist/utils/process/pid.d.ts +0 -95
  1222. package/dist/utils/process/pid.d.ts.map +0 -1
  1223. package/dist/utils/process/pid.js +0 -243
  1224. package/dist/utils/process/pid.js.map +0 -1
  1225. package/dist/utils/process.d.ts +0 -5
  1226. package/dist/utils/process.d.ts.map +0 -1
  1227. package/dist/utils/process.js +0 -5
  1228. package/dist/utils/slug.d.ts +0 -18
  1229. package/dist/utils/slug.d.ts.map +0 -1
  1230. package/dist/utils/slug.js +0 -42
  1231. package/dist/utils/slug.js.map +0 -1
@@ -1,110 +0,0 @@
1
- import type { ServerResponse } from 'node:http';
2
- import type { EgressTransport } from '../../network/egress/types.js';
3
- import type { OpenCodeAuthMode, OpenCodeCatalog, OpenCodeCredential } from './auth.js';
4
- import type { OpenCodeModelDescriptor, OpenCodeModelProtocol } from './models.js';
5
- import type { QuotaGuardOptions } from '../quota-guard.js';
6
- export interface OpenCodeProxyServerOptions {
7
- host: string;
8
- port: number;
9
- authPath: string;
10
- authPaths?: string[];
11
- /** Pool account labels in the same order as authPath + authPaths. */
12
- authAccountNames?: string[];
13
- authMode?: OpenCodeAuthMode;
14
- quotaGuard?: QuotaGuardOptions;
15
- upstream?: string;
16
- zenUpstream?: string;
17
- goUpstream?: string;
18
- modelMetadataUrl?: string | false;
19
- token?: string;
20
- log?: (line: string) => void;
21
- quiet?: boolean;
22
- egress?: EgressTransport;
23
- }
24
- export interface CatalogModel extends OpenCodeModelDescriptor {
25
- catalog: OpenCodeCatalog;
26
- }
27
- export interface CatalogCache {
28
- byModel: Map<string, CatalogModel>;
29
- ids: string[];
30
- fetchedAt: number;
31
- }
32
- export interface OpenCodeModelResponse {
33
- id: string;
34
- object: 'model';
35
- owned_by: string;
36
- created?: number;
37
- protocol?: OpenCodeModelProtocol;
38
- /** Best-effort limit hints for clients that inspect OpenAI-compatible model metadata. */
39
- context_window?: number;
40
- max_context_window?: number;
41
- auto_compact_token_limit?: number;
42
- max_input_tokens?: number;
43
- max_output_tokens?: number;
44
- }
45
- export interface OpenCodeRequestContext {
46
- runtime: OpenCodeProxyRuntime;
47
- log: (line: string) => void;
48
- proxyToken: string;
49
- sessionId: string;
50
- }
51
- export interface OpenCodeProxyRuntime {
52
- readonly authMode: OpenCodeAuthMode;
53
- readonly catalog: OpenCodeCatalogStore;
54
- readonly egress: EgressTransport;
55
- readonly sessionId: string;
56
- credential(): Promise<OpenCodeCredential>;
57
- credentials(): Promise<OpenCodeCredential[]>;
58
- inferenceFetch(target: string, init: RequestInit, model: string, preferredCredential: OpenCodeCredential): Promise<Response>;
59
- baseFor(catalog: OpenCodeCatalog): string;
60
- }
61
- export interface OpenCodeCatalogStore {
62
- live(): Promise<CatalogCache>;
63
- route(modelId: string): Promise<{
64
- catalog: OpenCodeCatalog;
65
- base: string;
66
- }>;
67
- /** Drop the cached model list so the next read refetches from upstream. */
68
- invalidate(): void;
69
- }
70
- export interface OpenAIResponsesResult {
71
- id?: string;
72
- model?: string;
73
- output?: Array<{
74
- type?: string;
75
- id?: string;
76
- call_id?: string;
77
- name?: string;
78
- arguments?: string;
79
- content?: Array<{
80
- type?: string;
81
- text?: string;
82
- }>;
83
- summary?: Array<{
84
- type?: string;
85
- text?: string;
86
- }>;
87
- }>;
88
- output_text?: string;
89
- usage?: {
90
- input_tokens?: number;
91
- output_tokens?: number;
92
- };
93
- error?: {
94
- type?: string;
95
- message?: string;
96
- code?: string;
97
- };
98
- }
99
- export interface AnthropicErrorResult {
100
- type: 'error';
101
- error: {
102
- type: string;
103
- message: string;
104
- code?: string;
105
- };
106
- }
107
- export type AnthropicResult = import('../protocol/anthropic.js').AnthropicMessageResponse | AnthropicErrorResult;
108
- export declare function modelObject(id: string, model: CatalogModel | undefined): OpenCodeModelResponse;
109
- export type ResponseWriter = ServerResponse;
110
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/opencode-proxy/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AACpF,OAAO,KAAK,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,qEAAqE;IACrE,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,eAAe,CAAC;CAC1B;AAED,MAAM,WAAW,YAAa,SAAQ,uBAAuB;IAC3D,OAAO,EAAE,eAAe,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACnC,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IACjC,yFAAyF;IACzF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,oBAAoB,CAAC;IAC9B,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,UAAU,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC1C,WAAW,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAC7C,cAAc,CACZ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,MAAM,EACb,mBAAmB,EAAE,kBAAkB,GACtC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrB,OAAO,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAAC;CAC3C;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,eAAe,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5E,2EAA2E;IAC3E,UAAU,IAAI,IAAI,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,KAAK,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAClD,OAAO,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACnD,CAAC,CAAC;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1D,KAAK,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5D;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACzD;AAED,MAAM,MAAM,eAAe,GACvB,OAAO,uBAAuB,EAAE,wBAAwB,GACxD,oBAAoB,CAAC;AAEzB,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,SAAS,GAAG,qBAAqB,CAoB9F;AAuBD,MAAM,MAAM,cAAc,GAAG,cAAc,CAAC"}
@@ -1,38 +0,0 @@
1
- //#region src/providers/opencode-proxy/types.ts
2
- function modelObject(id, model) {
3
- const contextWindow = model?.limits?.context;
4
- const autoCompactLimit = model && contextWindow != null ? autoCompactTokenLimit(model) : void 0;
5
- return {
6
- id,
7
- object: "model",
8
- owned_by: model?.ownedBy ?? (model?.catalog === "go" ? "opencode-go" : "opencode"),
9
- ...model?.created != null ? { created: model.created } : {},
10
- ...model?.protocol ? { protocol: model.protocol } : {},
11
- ...contextWindow != null ? {
12
- context_window: contextWindow,
13
- max_context_window: contextWindow,
14
- ...autoCompactLimit != null ? { auto_compact_token_limit: autoCompactLimit } : {}
15
- } : {},
16
- ...model?.limits?.input != null ? { max_input_tokens: model.limits.input } : {},
17
- ...model?.limits?.output != null ? { max_output_tokens: model.limits.output } : {}
18
- };
19
- }
20
- /**
21
- * Publish the same usable-input boundary OpenCode uses before compaction.
22
- * OpenCode caps generation at 32k, reserves up to 20k when the provider has a
23
- * separate input limit, and otherwise subtracts the full generation budget
24
- * from the context window. This is metadata only—the proxy never rewrites a
25
- * caller's generation budget.
26
- */
27
- function autoCompactTokenLimit(model) {
28
- const context = model.limits?.context;
29
- if (context == null || !Number.isFinite(context) || context <= 0) return;
30
- const outputMax = Math.min(model.limits?.output ?? 32e3, 32e3);
31
- const input = model.limits?.input;
32
- const usable = input != null && Number.isFinite(input) && input > 0 ? input - Math.min(2e4, outputMax) : context - outputMax;
33
- return Number.isFinite(usable) && usable > 0 ? Math.floor(usable) : void 0;
34
- }
35
- //#endregion
36
- export { modelObject };
37
-
38
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../src/providers/opencode-proxy/types.ts"],"sourcesContent":["import type { ServerResponse } from 'node:http';\nimport type { EgressTransport } from '../../network/egress/types';\nimport type { OpenCodeAuthMode, OpenCodeCatalog, OpenCodeCredential } from './auth';\nimport type { OpenCodeModelDescriptor, OpenCodeModelProtocol } from './models';\nimport type { QuotaGuardOptions } from '../quota-guard';\n\nexport interface OpenCodeProxyServerOptions {\n host: string;\n port: number;\n authPath: string;\n authPaths?: string[];\n /** Pool account labels in the same order as authPath + authPaths. */\n authAccountNames?: string[];\n authMode?: OpenCodeAuthMode;\n quotaGuard?: QuotaGuardOptions;\n upstream?: string;\n zenUpstream?: string;\n goUpstream?: string;\n modelMetadataUrl?: string | false;\n token?: string;\n log?: (line: string) => void;\n quiet?: boolean;\n egress?: EgressTransport;\n}\n\nexport interface CatalogModel extends OpenCodeModelDescriptor {\n catalog: OpenCodeCatalog;\n}\n\nexport interface CatalogCache {\n byModel: Map<string, CatalogModel>;\n ids: string[];\n fetchedAt: number;\n}\n\nexport interface OpenCodeModelResponse {\n id: string;\n object: 'model';\n owned_by: string;\n created?: number;\n protocol?: OpenCodeModelProtocol;\n /** Best-effort limit hints for clients that inspect OpenAI-compatible model metadata. */\n context_window?: number;\n max_context_window?: number;\n auto_compact_token_limit?: number;\n max_input_tokens?: number;\n max_output_tokens?: number;\n}\n\nexport interface OpenCodeRequestContext {\n runtime: OpenCodeProxyRuntime;\n log: (line: string) => void;\n proxyToken: string;\n sessionId: string;\n}\n\nexport interface OpenCodeProxyRuntime {\n readonly authMode: OpenCodeAuthMode;\n readonly catalog: OpenCodeCatalogStore;\n readonly egress: EgressTransport;\n readonly sessionId: string;\n credential(): Promise<OpenCodeCredential>;\n credentials(): Promise<OpenCodeCredential[]>;\n inferenceFetch(\n target: string,\n init: RequestInit,\n model: string,\n preferredCredential: OpenCodeCredential,\n ): Promise<Response>;\n baseFor(catalog: OpenCodeCatalog): string;\n}\n\nexport interface OpenCodeCatalogStore {\n live(): Promise<CatalogCache>;\n route(modelId: string): Promise<{ catalog: OpenCodeCatalog; base: string }>;\n /** Drop the cached model list so the next read refetches from upstream. */\n invalidate(): void;\n}\n\nexport interface OpenAIResponsesResult {\n id?: string;\n model?: string;\n output?: Array<{\n type?: string;\n id?: string;\n call_id?: string;\n name?: string;\n arguments?: string;\n content?: Array<{ type?: string; text?: string }>;\n summary?: Array<{ type?: string; text?: string }>;\n }>;\n output_text?: string;\n usage?: { input_tokens?: number; output_tokens?: number };\n error?: { type?: string; message?: string; code?: string };\n}\n\nexport interface AnthropicErrorResult {\n type: 'error';\n error: { type: string; message: string; code?: string };\n}\n\nexport type AnthropicResult =\n | import('../protocol/anthropic').AnthropicMessageResponse\n | AnthropicErrorResult;\n\nexport function modelObject(id: string, model: CatalogModel | undefined): OpenCodeModelResponse {\n const contextWindow = model?.limits?.context;\n const autoCompactLimit =\n model && contextWindow != null ? autoCompactTokenLimit(model) : undefined;\n return {\n id,\n object: 'model',\n owned_by: model?.ownedBy ?? (model?.catalog === 'go' ? 'opencode-go' : 'opencode'),\n ...(model?.created != null ? { created: model.created } : {}),\n ...(model?.protocol ? { protocol: model.protocol } : {}),\n ...(contextWindow != null\n ? {\n context_window: contextWindow,\n max_context_window: contextWindow,\n ...(autoCompactLimit != null ? { auto_compact_token_limit: autoCompactLimit } : {}),\n }\n : {}),\n ...(model?.limits?.input != null ? { max_input_tokens: model.limits.input } : {}),\n ...(model?.limits?.output != null ? { max_output_tokens: model.limits.output } : {}),\n };\n}\n\n/**\n * Publish the same usable-input boundary OpenCode uses before compaction.\n * OpenCode caps generation at 32k, reserves up to 20k when the provider has a\n * separate input limit, and otherwise subtracts the full generation budget\n * from the context window. This is metadata only—the proxy never rewrites a\n * caller's generation budget.\n */\nfunction autoCompactTokenLimit(model: CatalogModel): number | undefined {\n const context = model.limits?.context;\n if (context == null || !Number.isFinite(context) || context <= 0) {\n return undefined;\n }\n const outputMax = Math.min(model.limits?.output ?? 32_000, 32_000);\n const input = model.limits?.input;\n const usable =\n input != null && Number.isFinite(input) && input > 0\n ? input - Math.min(20_000, outputMax)\n : context - outputMax;\n return Number.isFinite(usable) && usable > 0 ? Math.floor(usable) : undefined;\n}\n\nexport type ResponseWriter = ServerResponse;\n"],"mappings":";AAyGA,SAAgB,YAAY,IAAY,OAAwD;CAC9F,MAAM,gBAAgB,OAAO,QAAQ;CACrC,MAAM,mBACJ,SAAS,iBAAiB,OAAO,sBAAsB,KAAK,IAAI,KAAA;CAClE,OAAO;EACL;EACA,QAAQ;EACR,UAAU,OAAO,YAAY,OAAO,YAAY,OAAO,gBAAgB;EACvE,GAAI,OAAO,WAAW,OAAO,EAAE,SAAS,MAAM,QAAQ,IAAI,CAAC;EAC3D,GAAI,OAAO,WAAW,EAAE,UAAU,MAAM,SAAS,IAAI,CAAC;EACtD,GAAI,iBAAiB,OACjB;GACE,gBAAgB;GAChB,oBAAoB;GACpB,GAAI,oBAAoB,OAAO,EAAE,0BAA0B,iBAAiB,IAAI,CAAC;EACnF,IACA,CAAC;EACL,GAAI,OAAO,QAAQ,SAAS,OAAO,EAAE,kBAAkB,MAAM,OAAO,MAAM,IAAI,CAAC;EAC/E,GAAI,OAAO,QAAQ,UAAU,OAAO,EAAE,mBAAmB,MAAM,OAAO,OAAO,IAAI,CAAC;CACpF;AACF;;;;;;;;AASA,SAAS,sBAAsB,OAAyC;CACtE,MAAM,UAAU,MAAM,QAAQ;CAC9B,IAAI,WAAW,QAAQ,CAAC,OAAO,SAAS,OAAO,KAAK,WAAW,GAC7D;CAEF,MAAM,YAAY,KAAK,IAAI,MAAM,QAAQ,UAAU,MAAQ,IAAM;CACjE,MAAM,QAAQ,MAAM,QAAQ;CAC5B,MAAM,SACJ,SAAS,QAAQ,OAAO,SAAS,KAAK,KAAK,QAAQ,IAC/C,QAAQ,KAAK,IAAI,KAAQ,SAAS,IAClC,UAAU;CAChB,OAAO,OAAO,SAAS,MAAM,KAAK,SAAS,IAAI,KAAK,MAAM,MAAM,IAAI,KAAA;AACtE"}
@@ -1,11 +0,0 @@
1
- import type { ProxyContext, ProxyHandle, ProxyStatus } from '../types.js';
2
- export interface OpenCodeProxyLifecycleOptions {
3
- authPath: string;
4
- compatibility: string;
5
- defaultPort: number;
6
- }
7
- export declare function startOpenCodeProxy(ctx: ProxyContext, opts: OpenCodeProxyLifecycleOptions): Promise<ProxyHandle>;
8
- export declare function stopOpenCodeProxy(ctx: ProxyContext): Promise<void>;
9
- export declare function openCodeProxyStatus(ctx: ProxyContext, compatibility: string, defaultPort: number): Promise<ProxyStatus>;
10
- export declare function readOpenCodeProxyLogs(ctx: ProxyContext, lines?: number): Promise<string>;
11
- //# sourceMappingURL=opencode-proxy-lifecycle.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"opencode-proxy-lifecycle.d.ts","sourceRoot":"","sources":["../../src/providers/opencode-proxy-lifecycle.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAcvE,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,6BAA6B,GAClC,OAAO,CAAC,WAAW,CAAC,CA4KtB;AAED,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAExE;AAED,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,YAAY,EACjB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,WAAW,CAAC,CA0CtB;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAS1F"}
@@ -1,144 +0,0 @@
1
- import { AnyPickError } from "../utils/errors.js";
2
- import { ensureDir, pathExists, readJsonFile } from "../utils/fs.js";
3
- import { waitForHttp } from "../utils/process/health.js";
4
- import { isProcessRunning, readPidFile, spawnDetached, stopPidFile } from "../utils/process/pid.js";
5
- import { assertLoopbackHost } from "../utils/network.js";
6
- import { listZenGoCredentials } from "./opencode-proxy/auth.js";
7
- import { resolveAnyPickCliLaunch } from "./opencode-cli-entry.js";
8
- import { join } from "node:path";
9
- import { writeFile } from "node:fs/promises";
10
- //#region src/providers/opencode-proxy-lifecycle.ts
11
- async function startOpenCodeProxy(ctx, opts) {
12
- const host = ctx.config.host ?? "127.0.0.1";
13
- assertLoopbackHost(host);
14
- const port = ctx.config.port ?? opts.defaultPort;
15
- const authMode = ctx.config.options?.authMode;
16
- if (authMode !== void 0 && authMode !== "auto" && authMode !== "public" && authMode !== "api") throw new AnyPickError("OpenCode auth mode must be auto, public, or api.", "INVALID_USAGE");
17
- await ensureDir(ctx.runtimeDir);
18
- const logPath = join(ctx.runtimeDir, "proxy.log");
19
- const pidPath = join(ctx.runtimeDir, "proxy.pid");
20
- await writeFile(logPath, "", { mode: 384 });
21
- const poolAuthPaths = (Array.isArray(ctx.config.options?.authDirs) ? ctx.config.options.authDirs.filter((dir) => typeof dir === "string" && dir.trim().length > 0) : []).map((dir) => join(dir, "auth.json"));
22
- const poolAccountNames = Array.isArray(ctx.config.options?.quotaGuardAccountNames) ? ctx.config.options.quotaGuardAccountNames.filter((name) => typeof name === "string" && name.trim().length > 0) : [];
23
- const authPath = poolAuthPaths[0] ?? (await pathExists(opts.authPath) ? opts.authPath : join(ctx.snapshotDir, "auth.json"));
24
- if (authMode !== "public" && !await pathExists(authPath)) throw new AnyPickError("No OpenCode auth available. Run: opencode auth login then anypick add account opencode --current --name <name>", "NO_LIVE_AUTH");
25
- try {
26
- const data = await readJsonFile(authPath);
27
- if (authMode === "api" && listZenGoCredentials(data).length === 0) throw new AnyPickError("OpenCode proxy needs a Zen/Go API key in auth.json (opencode auth login → OpenCode Zen or Go). OAuth providers (ChatGPT, etc.) are activated via anypick use, not this proxy.", "NO_LIVE_AUTH");
28
- } catch (err) {
29
- if (err instanceof AnyPickError) throw err;
30
- }
31
- const upstream = (typeof ctx.config.options?.upstream === "string" ? ctx.config.options.upstream : void 0) ?? process.env.OPENCODE_PROXY_UPSTREAM ?? void 0;
32
- const subArgs = [
33
- "proxy",
34
- "serve",
35
- "opencode",
36
- "--port",
37
- String(port),
38
- "--host",
39
- host,
40
- "--auth-mode",
41
- authMode ?? "auto"
42
- ];
43
- if (authMode !== "public") subArgs.push("--auth-path", authPath);
44
- if (poolAuthPaths.length > 1) subArgs.push("--auth-paths", poolAuthPaths.slice(1).join(","));
45
- if (poolAccountNames.length > 0) subArgs.push("--auth-account-names", poolAccountNames.join(","));
46
- const quotaGuard = ctx.config.options?.quotaGuard;
47
- if (quotaGuard && typeof quotaGuard === "object" && !Array.isArray(quotaGuard)) {
48
- const policy = quotaGuard;
49
- if (policy.enabled === true) {
50
- subArgs.push("--quota-guard");
51
- if (typeof policy.cooldownMs === "number" && Number.isFinite(policy.cooldownMs)) subArgs.push("--quota-guard-cooldown-ms", String(Math.max(1e3, Math.floor(policy.cooldownMs))));
52
- subArgs.push("--quota-guard-state", join(ctx.runtimeDir, "quota-guard.json"));
53
- }
54
- }
55
- if (upstream) subArgs.push("--upstream", upstream);
56
- const modelMetadataUrl = ctx.config.options?.modelMetadataUrl;
57
- if (modelMetadataUrl === false) subArgs.push("--model-metadata-url", "none");
58
- else if (typeof modelMetadataUrl === "string" && modelMetadataUrl.trim()) subArgs.push("--model-metadata-url", modelMetadataUrl.trim());
59
- const launch = resolveAnyPickCliLaunch(subArgs);
60
- if (!await pathExists(launch.entry)) throw new AnyPickError(`AnyPick CLI entry not found at ${launch.entry}. Run: pnpm build`, "PROXY_BINARY_MISSING");
61
- const endpoint = `http://${host}:${port}`;
62
- const { pid, instanceId } = await spawnDetached(launch.command, launch.args, {
63
- logPath,
64
- pidPath,
65
- endpoint,
66
- provider: "opencode",
67
- account: ctx.accountName,
68
- env: {
69
- ...process.env,
70
- OPENCODE_AUTH_PATH: authPath,
71
- ...ctx.token ? { ANYPICK_PROXY_TOKEN: ctx.token } : {},
72
- ANYPICK_PROXY_LOG: logPath,
73
- ...launch.watch ? { ANYPICK_DEV_WATCH: process.env.ANYPICK_DEV_WATCH ?? "1" } : {}
74
- }
75
- });
76
- if (!await waitForHttp(`${endpoint}/health`, {
77
- timeoutMs: launch.watch ? 15e3 : 5e3,
78
- requirePid: pid,
79
- expectInstanceId: instanceId
80
- }) || !isProcessRunning(pid)) {
81
- const { readFile } = await import("node:fs/promises");
82
- let tail = "";
83
- try {
84
- tail = (await readFile(logPath, "utf8")).split(/\r?\n/).slice(-20).join("\n");
85
- } catch {}
86
- if (isProcessRunning(pid)) try {
87
- process.kill(pid, "SIGTERM");
88
- } catch {}
89
- throw new AnyPickError(`OpenCode proxy failed to bind ${host}:${port} (port busy or crash). AnyPick will try the next free port on retry.${tail ? `\n${tail}` : ""}`, "PROXY_START_FAILED");
90
- }
91
- return {
92
- endpoint,
93
- compatibility: opts.compatibility,
94
- pid,
95
- instanceId,
96
- token: ctx.token,
97
- logPath
98
- };
99
- }
100
- async function stopOpenCodeProxy(ctx) {
101
- await stopPidFile(join(ctx.runtimeDir, "proxy.pid"));
102
- }
103
- async function openCodeProxyStatus(ctx, compatibility, defaultPort) {
104
- const pidPath = join(ctx.runtimeDir, "proxy.pid");
105
- const logPath = join(ctx.runtimeDir, "proxy.log");
106
- const pid = await readPidFile(pidPath);
107
- const running = pid != null && isProcessRunning(pid);
108
- const host = ctx.config.host ?? "127.0.0.1";
109
- const port = ctx.config.port ?? defaultPort;
110
- let detail;
111
- if (!running) detail = ctx.config.enabled ? "stopped · zen+go by model" : "disabled";
112
- else try {
113
- const endpoint = `http://${host}:${port}`;
114
- const res = await fetch(`${endpoint}/health`, { signal: AbortSignal.timeout(2e3) });
115
- if (res.ok) {
116
- const m = (await res.json()).credential?.models;
117
- detail = m ? `zen+go · ${m.total ?? "?"} models (${m.zen ?? "?"} zen, ${m.goOnly ?? "?"} go-only)` : "zen+go · route by model";
118
- } else detail = "running";
119
- } catch {
120
- detail = "running";
121
- }
122
- return {
123
- enabled: ctx.config.enabled,
124
- running,
125
- port,
126
- host,
127
- endpoint: running ? `http://${host}:${port}` : void 0,
128
- compatibility,
129
- pid: running ? pid ?? void 0 : void 0,
130
- logPath: await pathExists(logPath) ? logPath : void 0,
131
- detail
132
- };
133
- }
134
- async function readOpenCodeProxyLogs(ctx, lines = 50) {
135
- const logPath = join(ctx.runtimeDir, "proxy.log");
136
- if (!await pathExists(logPath)) return "(no log file yet)";
137
- const { readFile } = await import("node:fs/promises");
138
- const all = (await readFile(logPath, "utf8")).split(/\r?\n/);
139
- return all.slice(Math.max(0, all.length - lines)).join("\n");
140
- }
141
- //#endregion
142
- export { openCodeProxyStatus, readOpenCodeProxyLogs, startOpenCodeProxy, stopOpenCodeProxy };
143
-
144
- //# sourceMappingURL=opencode-proxy-lifecycle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"opencode-proxy-lifecycle.js","names":[],"sources":["../../src/providers/opencode-proxy-lifecycle.ts"],"sourcesContent":["import { join } from 'node:path';\nimport { writeFile } from 'node:fs/promises';\nimport type { ProxyContext, ProxyHandle, ProxyStatus } from '../types';\nimport { ensureDir, pathExists, readJsonFile } from '../utils/fs';\nimport { AnyPickError } from '../utils/errors';\nimport { assertLoopbackHost } from '../utils/network';\nimport {\n isProcessRunning,\n readPidFile,\n spawnDetached,\n stopPidFile,\n waitForHttp,\n} from '../utils/process';\nimport { listZenGoCredentials } from './opencode-proxy/auth';\nimport { resolveAnyPickCliLaunch } from './opencode-cli-entry';\n\nexport interface OpenCodeProxyLifecycleOptions {\n authPath: string;\n compatibility: string;\n defaultPort: number;\n}\n\nexport async function startOpenCodeProxy(\n ctx: ProxyContext,\n opts: OpenCodeProxyLifecycleOptions,\n): Promise<ProxyHandle> {\n const host = ctx.config.host ?? '127.0.0.1';\n assertLoopbackHost(host);\n const port = ctx.config.port ?? opts.defaultPort;\n const authMode = ctx.config.options?.authMode;\n if (\n authMode !== undefined &&\n authMode !== 'auto' &&\n authMode !== 'public' &&\n authMode !== 'api'\n ) {\n throw new AnyPickError('OpenCode auth mode must be auto, public, or api.', 'INVALID_USAGE');\n }\n await ensureDir(ctx.runtimeDir);\n const logPath = join(ctx.runtimeDir, 'proxy.log');\n const pidPath = join(ctx.runtimeDir, 'proxy.pid');\n await writeFile(logPath, '', { mode: 0o600 });\n\n const poolDirs = Array.isArray(ctx.config.options?.authDirs)\n ? (ctx.config.options.authDirs as unknown[]).filter(\n (dir): dir is string => typeof dir === 'string' && dir.trim().length > 0,\n )\n : [];\n const poolAuthPaths = poolDirs.map((dir) => join(dir, 'auth.json'));\n const poolAccountNames = Array.isArray(ctx.config.options?.quotaGuardAccountNames)\n ? (ctx.config.options.quotaGuardAccountNames as unknown[]).filter(\n (name): name is string => typeof name === 'string' && name.trim().length > 0,\n )\n : [];\n // A pool must be isolated from whichever unrelated account happens to be\n // live in ~/.local/share/opencode. Its configured member order is the\n // credential failover order.\n const authPath =\n poolAuthPaths[0] ??\n ((await pathExists(opts.authPath)) ? opts.authPath : join(ctx.snapshotDir, 'auth.json'));\n\n if (authMode !== 'public' && !(await pathExists(authPath))) {\n throw new AnyPickError(\n 'No OpenCode auth available. Run: opencode auth login then anypick add account opencode --current --name <name>',\n 'NO_LIVE_AUTH',\n );\n }\n\n // Proxy needs a Zen/Go API key (oauth-only accounts cannot drive this proxy)\n try {\n const data = await readJsonFile<Record<string, unknown>>(authPath);\n if (authMode === 'api' && listZenGoCredentials(data).length === 0) {\n throw new AnyPickError(\n 'OpenCode proxy needs a Zen/Go API key in auth.json (opencode auth login → OpenCode Zen or Go). OAuth providers (ChatGPT, etc.) are activated via anypick use, not this proxy.',\n 'NO_LIVE_AUTH',\n );\n }\n } catch (err) {\n if (err instanceof AnyPickError) {\n throw err;\n }\n // unreadable — let proxy process fail with clearer log\n }\n\n // Optional single-upstream override (tests). Default: dual zen+go, route by model.\n const upstream =\n (typeof ctx.config.options?.upstream === 'string' ? ctx.config.options.upstream : undefined) ??\n process.env.OPENCODE_PROXY_UPSTREAM ??\n undefined;\n\n const subArgs = [\n 'proxy',\n 'serve',\n 'opencode',\n '--port',\n String(port),\n '--host',\n host,\n '--auth-mode',\n authMode ?? 'auto',\n ];\n if (authMode !== 'public') {\n subArgs.push('--auth-path', authPath);\n }\n if (poolAuthPaths.length > 1) {\n // auth-path already contains the primary member. Do not repeat it: the\n // account-name vector must remain exactly aligned with the credential ring.\n subArgs.push('--auth-paths', poolAuthPaths.slice(1).join(','));\n }\n if (poolAccountNames.length > 0) {\n subArgs.push('--auth-account-names', poolAccountNames.join(','));\n }\n const quotaGuard = ctx.config.options?.quotaGuard;\n if (quotaGuard && typeof quotaGuard === 'object' && !Array.isArray(quotaGuard)) {\n const policy = quotaGuard as Record<string, unknown>;\n if (policy.enabled === true) {\n subArgs.push('--quota-guard');\n if (typeof policy.cooldownMs === 'number' && Number.isFinite(policy.cooldownMs)) {\n subArgs.push(\n '--quota-guard-cooldown-ms',\n String(Math.max(1_000, Math.floor(policy.cooldownMs))),\n );\n }\n subArgs.push('--quota-guard-state', join(ctx.runtimeDir, 'quota-guard.json'));\n }\n }\n if (upstream) {\n subArgs.push('--upstream', upstream);\n }\n const modelMetadataUrl = ctx.config.options?.modelMetadataUrl;\n if (modelMetadataUrl === false) {\n subArgs.push('--model-metadata-url', 'none');\n } else if (typeof modelMetadataUrl === 'string' && modelMetadataUrl.trim()) {\n subArgs.push('--model-metadata-url', modelMetadataUrl.trim());\n }\n\n const launch = resolveAnyPickCliLaunch(subArgs);\n if (!(await pathExists(launch.entry))) {\n throw new AnyPickError(\n `AnyPick CLI entry not found at ${launch.entry}. Run: pnpm build`,\n 'PROXY_BINARY_MISSING',\n );\n }\n\n const endpoint = `http://${host}:${port}`;\n const { pid, instanceId } = await spawnDetached(launch.command, launch.args, {\n logPath,\n pidPath,\n endpoint,\n provider: 'opencode',\n account: ctx.accountName,\n env: {\n ...process.env,\n OPENCODE_AUTH_PATH: authPath,\n ...(ctx.token ? { ANYPICK_PROXY_TOKEN: ctx.token } : {}),\n ANYPICK_PROXY_LOG: logPath,\n ...(launch.watch ? { ANYPICK_DEV_WATCH: process.env.ANYPICK_DEV_WATCH ?? '1' } : {}),\n },\n });\n\n const ready = await waitForHttp(`${endpoint}/health`, {\n timeoutMs: launch.watch ? 15_000 : 5_000,\n requirePid: pid,\n expectInstanceId: instanceId,\n });\n\n if (!ready || !isProcessRunning(pid)) {\n const { readFile } = await import('node:fs/promises');\n let tail = '';\n try {\n const raw = await readFile(logPath, 'utf8');\n tail = raw.split(/\\r?\\n/).slice(-20).join('\\n');\n } catch {\n // ignore\n }\n // Only stop the child we just spawned (our pid file) — not whatever held the port\n if (isProcessRunning(pid)) {\n try {\n process.kill(pid, 'SIGTERM');\n } catch {\n // ignore\n }\n }\n throw new AnyPickError(\n `OpenCode proxy failed to bind ${host}:${port} (port busy or crash). AnyPick will try the next free port on retry.${tail ? `\\n${tail}` : ''}`,\n 'PROXY_START_FAILED',\n );\n }\n\n return {\n endpoint,\n compatibility: opts.compatibility,\n pid,\n instanceId,\n token: ctx.token,\n logPath,\n };\n}\n\nexport async function stopOpenCodeProxy(ctx: ProxyContext): Promise<void> {\n await stopPidFile(join(ctx.runtimeDir, 'proxy.pid'));\n}\n\nexport async function openCodeProxyStatus(\n ctx: ProxyContext,\n compatibility: string,\n defaultPort: number,\n): Promise<ProxyStatus> {\n const pidPath = join(ctx.runtimeDir, 'proxy.pid');\n const logPath = join(ctx.runtimeDir, 'proxy.log');\n const pid = await readPidFile(pidPath);\n const running = pid != null && isProcessRunning(pid);\n const host = ctx.config.host ?? '127.0.0.1';\n const port = ctx.config.port ?? defaultPort;\n\n let detail: string | undefined;\n if (!running) {\n detail = ctx.config.enabled ? 'stopped · zen+go by model' : 'disabled';\n } else {\n try {\n const endpoint = `http://${host}:${port}`;\n const res = await fetch(`${endpoint}/health`, { signal: AbortSignal.timeout(2000) });\n if (res.ok) {\n const h = (await res.json()) as {\n credential?: { models?: { total?: number; zen?: number; goOnly?: number } };\n };\n const m = h.credential?.models;\n detail = m\n ? `zen+go · ${m.total ?? '?'} models (${m.zen ?? '?'} zen, ${m.goOnly ?? '?'} go-only)`\n : 'zen+go · route by model';\n } else {\n detail = 'running';\n }\n } catch {\n detail = 'running';\n }\n }\n\n return {\n enabled: ctx.config.enabled,\n running,\n port,\n host,\n endpoint: running ? `http://${host}:${port}` : undefined,\n compatibility,\n pid: running ? (pid ?? undefined) : undefined,\n logPath: (await pathExists(logPath)) ? logPath : undefined,\n detail,\n };\n}\n\nexport async function readOpenCodeProxyLogs(ctx: ProxyContext, lines = 50): Promise<string> {\n const logPath = join(ctx.runtimeDir, 'proxy.log');\n if (!(await pathExists(logPath))) {\n return '(no log file yet)';\n }\n const { readFile } = await import('node:fs/promises');\n const raw = await readFile(logPath, 'utf8');\n const all = raw.split(/\\r?\\n/);\n return all.slice(Math.max(0, all.length - lines)).join('\\n');\n}\n"],"mappings":"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"}
@@ -1,40 +0,0 @@
1
- import type { Account, AccountMeta, LiveAuthStatus, ModelDiscoveryContext, Provider, ProxyContext, ProxyHubBackendContext, ProxyHubBackendHandle, ProxyHandle, ProxyStatus, SourceAdapter } from '../types.js';
2
- export declare class OpenCodeProvider implements Provider {
3
- private readonly home;
4
- readonly id = "opencode";
5
- readonly name = "OpenCode";
6
- readonly shortName = "OpenCode";
7
- readonly description = "Manages OpenCode CLI auth (oauth + api keys) + optional Zen/Go proxy";
8
- readonly defaultProxyPort = 4120;
9
- readonly proxyCompatibility = "OpenAI + Anthropic API";
10
- roleDefaults(): Record<string, string>;
11
- fetchLiveModels(ctx: ModelDiscoveryContext): Promise<readonly string[]>;
12
- constructor(home?: string);
13
- sourceAdapter(account: Account): SourceAdapter;
14
- poolSourceAdapter(): SourceAdapter;
15
- createProxyHubBackend(ctx: ProxyHubBackendContext): Promise<ProxyHubBackendHandle>;
16
- private get dataDir();
17
- private get authPath();
18
- private get accountPath();
19
- detectLive(): Promise<LiveAuthStatus>;
20
- backup(destDir: string): Promise<Partial<Pick<AccountMeta, 'identity' | 'label' | 'notes'>>>;
21
- restore(srcDir: string): Promise<void>;
22
- describeSnapshot(srcDir: string): Promise<Partial<Pick<AccountMeta, 'identity' | 'label' | 'notes'>>>;
23
- /**
24
- * Clear local OpenCode auth only — does NOT revoke OAuth / API keys server-side.
25
- * Saved anypick snapshots stay valid for later restore (same as codex stash).
26
- */
27
- clearLive(): Promise<void>;
28
- /**
29
- * Refresh OAuth tokens inside a snapshot (openai ChatGPT, etc.).
30
- * API-key providers are left as-is.
31
- */
32
- refreshAuth(authDir: string): Promise<Partial<Pick<AccountMeta, 'identity' | 'label' | 'notes'>>>;
33
- snapshotMatchesLive(snapshotDir: string): Promise<boolean>;
34
- startProxy(ctx: ProxyContext): Promise<ProxyHandle>;
35
- stopProxy(ctx: ProxyContext): Promise<void>;
36
- proxyStatus(ctx: ProxyContext): Promise<ProxyStatus>;
37
- readProxyLogs(ctx: ProxyContext, lines?: number): Promise<string>;
38
- }
39
- export declare const opencodeProvider: OpenCodeProvider;
40
- //# sourceMappingURL=opencode.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../src/providers/opencode.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,OAAO,EACP,WAAW,EACX,cAAc,EACd,qBAAqB,EACrB,QAAQ,EACR,YAAY,EACZ,sBAAsB,EACtB,qBAAqB,EACrB,WAAW,EACX,WAAW,EACX,aAAa,EACd,MAAM,UAAU,CAAC;AAiDlB,qBAAa,gBAAiB,YAAW,QAAQ;IAsCnC,OAAO,CAAC,QAAQ,CAAC,IAAI;IArCjC,QAAQ,CAAC,EAAE,cAAc;IACzB,QAAQ,CAAC,IAAI,cAAc;IAC3B,QAAQ,CAAC,SAAS,cAAc;IAChC,QAAQ,CAAC,WAAW,0EAA0E;IAC9F,QAAQ,CAAC,gBAAgB,QAAgB;IACzC,QAAQ,CAAC,kBAAkB,4BAA4B;IAIvD,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAErC;IAEK,eAAe,CAAC,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAsB5E;IAED,YAA6B,IAAI,SAAY,EAAI;IAEjD,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,CAE7C;IAED,iBAAiB,IAAI,aAAa,CAEjC;IAEK,qBAAqB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CA0BvF;IAED,OAAO,KAAK,OAAO,GASlB;IAED,OAAO,KAAK,QAAQ,GAEnB;IAED,OAAO,KAAK,WAAW,GAEtB;IAEK,UAAU,IAAI,OAAO,CAAC,cAAc,CAAC,CAiB1C;IAEK,MAAM,CACV,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAarE;IAEK,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAO3C;IAEK,gBAAgB,CACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAWrE;IAED;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAS/B;IAED;;;OAGG;IACG,WAAW,CACf,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CASrE;IAEK,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/D;IAIK,UAAU,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAMxD;IAEK,SAAS,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAEhD;IAEK,WAAW,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAEzD;IAEK,aAAa,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAElE;CACF;AAED,eAAO,MAAM,gBAAgB,kBAAyB,CAAC"}
@@ -1,190 +0,0 @@
1
- import { backupRequiredFile, copyFileSafe, ensureDir, pathExists, readJsonFile, restoreRequiredFile, writeJsonFile } from "../utils/fs.js";
2
- import { fetchOpenAiStyleModels } from "../catalog/model-fetch.js";
3
- import { opencodeAccountAdapter, poolAdapterFor } from "../sources/account-adapters.js";
4
- import { rolesFromLiveDiscovery } from "./model-policy.js";
5
- import { closeProxyHubBackend } from "./proxy-hub-backend.js";
6
- import { extractOpenCodeIdentity, hasAnyAuth, refreshOpenCodeAuth, summarizeAuth } from "./opencode-auth.js";
7
- import { snapshotMatchesLiveDefault } from "./auth-fingerprint.js";
8
- import { loadOpenCodeCredential } from "./opencode-proxy/auth.js";
9
- import { openCodeProxyStatus, readOpenCodeProxyLogs, startOpenCodeProxy, stopOpenCodeProxy } from "./opencode-proxy-lifecycle.js";
10
- import { listenOpenCodeProxy } from "./opencode-proxy/server.js";
11
- import { join } from "node:path";
12
- import { homedir } from "node:os";
13
- //#region src/providers/opencode.ts
14
- /**
15
- * OpenCode CLI — multi-provider auth (like Codex) + optional Zen/Go proxy.
16
- *
17
- * Live auth: ~/.local/share/opencode/auth.json
18
- *
19
- * Auth entry types (per provider id):
20
- * oauth — ChatGPT Plus/Pro, GitLab, xAI SuperGrok, … (refreshable)
21
- * api — API keys (OpenCode Zen/Go, DeepSeek, MiniMax, …)
22
- * wellknown — remote org tokens
23
- *
24
- * Optional companion: account.json (multi-account map)
25
- *
26
- * Built-in proxy (optional) uses Zen/Go **api** keys only:
27
- * Go: https://opencode.ai/zen/go/v1
28
- * Zen: https://opencode.ai/zen/v1
29
- * Dual protocol for Codex + Claude Code.
30
- */
31
- var DEFAULT_PORT = 4120;
32
- var OpenCodeProvider = class {
33
- home;
34
- id = "opencode";
35
- name = "OpenCode";
36
- shortName = "OpenCode";
37
- description = "Manages OpenCode CLI auth (oauth + api keys) + optional Zen/Go proxy";
38
- defaultProxyPort = DEFAULT_PORT;
39
- proxyCompatibility = "OpenAI + Anthropic API";
40
- roleDefaults() {
41
- return rolesFromLiveDiscovery();
42
- }
43
- async fetchLiveModels(ctx) {
44
- let apiKey = ctx.apiKey;
45
- if (!apiKey && await pathExists(this.authPath)) try {
46
- apiKey = (await loadOpenCodeCredential(this.authPath)).apiKey;
47
- } catch {}
48
- const discoveryCtx = {
49
- ...ctx,
50
- ...apiKey ? { apiKey } : {}
51
- };
52
- const zenModels = await fetchOpenAiStyleModels({
53
- ...discoveryCtx,
54
- endpoint: ctx.endpoint ?? "https://opencode.ai/zen"
55
- });
56
- const goModels = await fetchOpenAiStyleModels({
57
- ...discoveryCtx,
58
- endpoint: ctx.endpoint ? `${ctx.endpoint.replace(/\/$/, "")}/go` : "https://opencode.ai/zen/go"
59
- });
60
- return [.../* @__PURE__ */ new Set([...zenModels, ...goModels])];
61
- }
62
- constructor(home = homedir()) {
63
- this.home = home;
64
- }
65
- sourceAdapter(account) {
66
- return opencodeAccountAdapter(account);
67
- }
68
- poolSourceAdapter() {
69
- return poolAdapterFor(this.id, this);
70
- }
71
- async createProxyHubBackend(ctx) {
72
- const [primary, ...rest] = ctx.accounts;
73
- if (!primary) throw new Error("OpenCode Hub backend requires at least one account");
74
- const options = primary.proxy.options ?? {};
75
- const authMode = options.authMode === "public" || options.authMode === "api" || options.authMode === "auto" ? options.authMode : "auto";
76
- const { server, endpoint } = await listenOpenCodeProxy({
77
- host: "127.0.0.1",
78
- port: 0,
79
- authPath: join(primary.snapshotDir, "auth.json"),
80
- authPaths: rest.map((account) => join(account.snapshotDir, "auth.json")),
81
- authAccountNames: ctx.accounts.map((account) => account.name),
82
- authMode,
83
- upstream: typeof options.upstream === "string" ? options.upstream : void 0,
84
- modelMetadataUrl: options.modelMetadataUrl === false || typeof options.modelMetadataUrl === "string" ? options.modelMetadataUrl : void 0,
85
- token: ctx.token,
86
- log: ctx.log
87
- });
88
- return {
89
- endpoint,
90
- close: () => closeProxyHubBackend(server)
91
- };
92
- }
93
- get dataDir() {
94
- if (process.env.OPENCODE_DATA_DIR) return process.env.OPENCODE_DATA_DIR;
95
- return join(this.home === homedir() && process.env.XDG_DATA_HOME ? process.env.XDG_DATA_HOME : join(this.home, ".local", "share"), "opencode");
96
- }
97
- get authPath() {
98
- return process.env.OPENCODE_AUTH_PATH ?? join(this.dataDir, "auth.json");
99
- }
100
- get accountPath() {
101
- return join(this.dataDir, "account.json");
102
- }
103
- async detectLive() {
104
- if (!await pathExists(this.authPath)) return { present: false };
105
- try {
106
- const data = await readJsonFile(this.authPath);
107
- if (!hasAnyAuth(data)) return { present: false };
108
- return {
109
- present: true,
110
- identity: extractOpenCodeIdentity(data),
111
- details: summarizeAuth(data)
112
- };
113
- } catch {
114
- return {
115
- present: true,
116
- details: "auth.json present (unreadable)"
117
- };
118
- }
119
- }
120
- async backup(destDir) {
121
- await ensureDir(destDir);
122
- await backupRequiredFile(this.authPath, join(destDir, "auth.json"), "OpenCode auth.json");
123
- if (await pathExists(this.accountPath)) await copyFileSafe(this.accountPath, join(destDir, "account.json"));
124
- try {
125
- return { identity: extractOpenCodeIdentity(await readJsonFile(join(destDir, "auth.json"))) };
126
- } catch {
127
- return {};
128
- }
129
- }
130
- async restore(srcDir) {
131
- await ensureDir(this.dataDir);
132
- await restoreRequiredFile(join(srcDir, "auth.json"), this.authPath, "auth.json");
133
- const accountSrc = join(srcDir, "account.json");
134
- if (await pathExists(accountSrc)) await copyFileSafe(accountSrc, this.accountPath);
135
- }
136
- async describeSnapshot(srcDir) {
137
- const path = join(srcDir, "auth.json");
138
- if (!await pathExists(path)) return {};
139
- try {
140
- return { identity: extractOpenCodeIdentity(await readJsonFile(path)) };
141
- } catch {
142
- return {};
143
- }
144
- }
145
- /**
146
- * Clear local OpenCode auth only — does NOT revoke OAuth / API keys server-side.
147
- * Saved anypick snapshots stay valid for later restore (same as codex stash).
148
- */
149
- async clearLive() {
150
- const { rm } = await import("node:fs/promises");
151
- for (const p of [this.authPath, this.accountPath]) try {
152
- await rm(p, { force: true });
153
- } catch {}
154
- }
155
- /**
156
- * Refresh OAuth tokens inside a snapshot (openai ChatGPT, etc.).
157
- * API-key providers are left as-is.
158
- */
159
- async refreshAuth(authDir) {
160
- const path = join(authDir, "auth.json");
161
- if (!await pathExists(path)) throw new Error(`No auth.json in ${authDir}`);
162
- const { data, identity } = await refreshOpenCodeAuth(await readJsonFile(path));
163
- await writeJsonFile(path, data, 384);
164
- return { identity };
165
- }
166
- async snapshotMatchesLive(snapshotDir) {
167
- return snapshotMatchesLiveDefault("opencode", snapshotDir);
168
- }
169
- async startProxy(ctx) {
170
- return startOpenCodeProxy(ctx, {
171
- authPath: this.authPath,
172
- compatibility: this.proxyCompatibility,
173
- defaultPort: DEFAULT_PORT
174
- });
175
- }
176
- async stopProxy(ctx) {
177
- await stopOpenCodeProxy(ctx);
178
- }
179
- async proxyStatus(ctx) {
180
- return openCodeProxyStatus(ctx, this.proxyCompatibility, DEFAULT_PORT);
181
- }
182
- async readProxyLogs(ctx, lines = 50) {
183
- return readOpenCodeProxyLogs(ctx, lines);
184
- }
185
- };
186
- var opencodeProvider = new OpenCodeProvider();
187
- //#endregion
188
- export { OpenCodeProvider, opencodeProvider };
189
-
190
- //# sourceMappingURL=opencode.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"opencode.js","names":[],"sources":["../../src/providers/opencode.ts"],"sourcesContent":["import { join } from 'node:path';\nimport { homedir } from 'node:os';\nimport type {\n Account,\n AccountMeta,\n LiveAuthStatus,\n ModelDiscoveryContext,\n Provider,\n ProxyContext,\n ProxyHubBackendContext,\n ProxyHubBackendHandle,\n ProxyHandle,\n ProxyStatus,\n SourceAdapter,\n} from '../types';\nimport { opencodeAccountAdapter, poolAdapterFor } from '../sources/account-adapters';\nimport {\n backupRequiredFile,\n copyFileSafe,\n ensureDir,\n pathExists,\n readJsonFile,\n restoreRequiredFile,\n writeJsonFile,\n} from '../utils/fs';\nimport { snapshotMatchesLiveDefault } from './auth-fingerprint';\nimport {\n extractOpenCodeIdentity,\n hasAnyAuth,\n refreshOpenCodeAuth,\n summarizeAuth,\n} from './opencode-auth';\nimport { rolesFromLiveDiscovery } from './model-policy';\nimport {\n startOpenCodeProxy,\n stopOpenCodeProxy,\n openCodeProxyStatus,\n readOpenCodeProxyLogs,\n} from './opencode-proxy-lifecycle';\nimport { listenOpenCodeProxy } from './opencode-proxy/server';\nimport { closeProxyHubBackend } from './proxy-hub-backend';\nimport { fetchOpenAiStyleModels } from '../catalog/model-fetch';\nimport { loadOpenCodeCredential } from './opencode-proxy/auth';\n\n/**\n * OpenCode CLI — multi-provider auth (like Codex) + optional Zen/Go proxy.\n *\n * Live auth: ~/.local/share/opencode/auth.json\n *\n * Auth entry types (per provider id):\n * oauth — ChatGPT Plus/Pro, GitLab, xAI SuperGrok, … (refreshable)\n * api — API keys (OpenCode Zen/Go, DeepSeek, MiniMax, …)\n * wellknown — remote org tokens\n *\n * Optional companion: account.json (multi-account map)\n *\n * Built-in proxy (optional) uses Zen/Go **api** keys only:\n * Go: https://opencode.ai/zen/go/v1\n * Zen: https://opencode.ai/zen/v1\n * Dual protocol for Codex + Claude Code.\n */\nconst DEFAULT_PORT = 4120;\n\nexport class OpenCodeProvider implements Provider {\n readonly id = 'opencode';\n readonly name = 'OpenCode';\n readonly shortName = 'OpenCode';\n readonly description = 'Manages OpenCode CLI auth (oauth + api keys) + optional Zen/Go proxy';\n readonly defaultProxyPort = DEFAULT_PORT;\n readonly proxyCompatibility = 'OpenAI + Anthropic API';\n\n // Static Claude maps mislead the OpenCode proxy — the real list comes from\n // /v1/models, which reflects the account's Zen/Go entitlements.\n roleDefaults(): Record<string, string> {\n return rolesFromLiveDiscovery();\n }\n\n async fetchLiveModels(ctx: ModelDiscoveryContext): Promise<readonly string[]> {\n let apiKey = ctx.apiKey;\n if (!apiKey && (await pathExists(this.authPath))) {\n try {\n const cred = await loadOpenCodeCredential(this.authPath);\n apiKey = cred.apiKey;\n } catch {\n // ignore\n }\n }\n const discoveryCtx = { ...ctx, ...(apiKey ? { apiKey } : {}) };\n const zenModels = await fetchOpenAiStyleModels({\n ...discoveryCtx,\n endpoint: ctx.endpoint ?? 'https://opencode.ai/zen',\n });\n const goModels = await fetchOpenAiStyleModels({\n ...discoveryCtx,\n endpoint: ctx.endpoint\n ? `${ctx.endpoint.replace(/\\/$/, '')}/go`\n : 'https://opencode.ai/zen/go',\n });\n return [...new Set([...zenModels, ...goModels])];\n }\n\n constructor(private readonly home = homedir()) {}\n\n sourceAdapter(account: Account): SourceAdapter {\n return opencodeAccountAdapter(account);\n }\n\n poolSourceAdapter(): SourceAdapter {\n return poolAdapterFor(this.id, this);\n }\n\n async createProxyHubBackend(ctx: ProxyHubBackendContext): Promise<ProxyHubBackendHandle> {\n const [primary, ...rest] = ctx.accounts;\n if (!primary) {\n throw new Error('OpenCode Hub backend requires at least one account');\n }\n const options = primary.proxy.options ?? {};\n const authMode =\n options.authMode === 'public' || options.authMode === 'api' || options.authMode === 'auto'\n ? options.authMode\n : 'auto';\n const { server, endpoint } = await listenOpenCodeProxy({\n host: '127.0.0.1',\n port: 0,\n authPath: join(primary.snapshotDir, 'auth.json'),\n authPaths: rest.map((account) => join(account.snapshotDir, 'auth.json')),\n authAccountNames: ctx.accounts.map((account) => account.name),\n authMode,\n upstream: typeof options.upstream === 'string' ? options.upstream : undefined,\n modelMetadataUrl:\n options.modelMetadataUrl === false || typeof options.modelMetadataUrl === 'string'\n ? options.modelMetadataUrl\n : undefined,\n token: ctx.token,\n log: ctx.log,\n });\n return { endpoint, close: () => closeProxyHubBackend(server) };\n }\n\n private get dataDir(): string {\n if (process.env.OPENCODE_DATA_DIR) {\n return process.env.OPENCODE_DATA_DIR;\n }\n const xdgShare =\n this.home === homedir() && process.env.XDG_DATA_HOME\n ? process.env.XDG_DATA_HOME\n : join(this.home, '.local', 'share');\n return join(xdgShare, 'opencode');\n }\n\n private get authPath(): string {\n return process.env.OPENCODE_AUTH_PATH ?? join(this.dataDir, 'auth.json');\n }\n\n private get accountPath(): string {\n return join(this.dataDir, 'account.json');\n }\n\n async detectLive(): Promise<LiveAuthStatus> {\n if (!(await pathExists(this.authPath))) {\n return { present: false };\n }\n try {\n const data = await readJsonFile<Record<string, unknown>>(this.authPath);\n if (!hasAnyAuth(data)) {\n return { present: false };\n }\n return {\n present: true,\n identity: extractOpenCodeIdentity(data),\n details: summarizeAuth(data),\n };\n } catch {\n return { present: true, details: 'auth.json present (unreadable)' };\n }\n }\n\n async backup(\n destDir: string,\n ): Promise<Partial<Pick<AccountMeta, 'identity' | 'label' | 'notes'>>> {\n await ensureDir(destDir);\n await backupRequiredFile(this.authPath, join(destDir, 'auth.json'), 'OpenCode auth.json');\n // Best-effort multi-account map (OpenCode may keep parallel accounts)\n if (await pathExists(this.accountPath)) {\n await copyFileSafe(this.accountPath, join(destDir, 'account.json'));\n }\n try {\n const data = await readJsonFile<Record<string, unknown>>(join(destDir, 'auth.json'));\n return { identity: extractOpenCodeIdentity(data) };\n } catch {\n return {};\n }\n }\n\n async restore(srcDir: string): Promise<void> {\n await ensureDir(this.dataDir);\n await restoreRequiredFile(join(srcDir, 'auth.json'), this.authPath, 'auth.json');\n const accountSrc = join(srcDir, 'account.json');\n if (await pathExists(accountSrc)) {\n await copyFileSafe(accountSrc, this.accountPath);\n }\n }\n\n async describeSnapshot(\n srcDir: string,\n ): Promise<Partial<Pick<AccountMeta, 'identity' | 'label' | 'notes'>>> {\n const path = join(srcDir, 'auth.json');\n if (!(await pathExists(path))) {\n return {};\n }\n try {\n const data = await readJsonFile<Record<string, unknown>>(path);\n return { identity: extractOpenCodeIdentity(data) };\n } catch {\n return {};\n }\n }\n\n /**\n * Clear local OpenCode auth only — does NOT revoke OAuth / API keys server-side.\n * Saved anypick snapshots stay valid for later restore (same as codex stash).\n */\n async clearLive(): Promise<void> {\n const { rm } = await import('node:fs/promises');\n for (const p of [this.authPath, this.accountPath]) {\n try {\n await rm(p, { force: true });\n } catch {\n // ignore\n }\n }\n }\n\n /**\n * Refresh OAuth tokens inside a snapshot (openai ChatGPT, etc.).\n * API-key providers are left as-is.\n */\n async refreshAuth(\n authDir: string,\n ): Promise<Partial<Pick<AccountMeta, 'identity' | 'label' | 'notes'>>> {\n const path = join(authDir, 'auth.json');\n if (!(await pathExists(path))) {\n throw new Error(`No auth.json in ${authDir}`);\n }\n const current = await readJsonFile<Record<string, unknown>>(path);\n const { data, identity } = await refreshOpenCodeAuth(current);\n await writeJsonFile(path, data, 0o600);\n return { identity };\n }\n\n async snapshotMatchesLive(snapshotDir: string): Promise<boolean> {\n return snapshotMatchesLiveDefault('opencode', snapshotDir);\n }\n\n // ── Built-in proxy (Zen/Go API keys → Codex + Claude) ───────────\n\n async startProxy(ctx: ProxyContext): Promise<ProxyHandle> {\n return startOpenCodeProxy(ctx, {\n authPath: this.authPath,\n compatibility: this.proxyCompatibility,\n defaultPort: DEFAULT_PORT,\n });\n }\n\n async stopProxy(ctx: ProxyContext): Promise<void> {\n await stopOpenCodeProxy(ctx);\n }\n\n async proxyStatus(ctx: ProxyContext): Promise<ProxyStatus> {\n return openCodeProxyStatus(ctx, this.proxyCompatibility, DEFAULT_PORT);\n }\n\n async readProxyLogs(ctx: ProxyContext, lines = 50): Promise<string> {\n return readOpenCodeProxyLogs(ctx, lines);\n }\n}\n\nexport const opencodeProvider = new OpenCodeProvider();\n"],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- import type { AnthropicMessageRequest, AnthropicMessageResponse, AnthropicToOpenAIOptions, OpenAIChatRequest, OpenAIChatResponse } from './anthropic-types.js';
2
- export declare function anthropicToOpenAI(req: AnthropicMessageRequest, options?: AnthropicToOpenAIOptions): OpenAIChatRequest;
3
- /** Convert OpenAI chat completion → Anthropic message. */
4
- export declare function openAIToAnthropic(res: OpenAIChatResponse, fallbackModel: string, inputTokensFallback?: number): AnthropicMessageResponse | {
5
- type: 'error';
6
- error: {
7
- type: string;
8
- message: string;
9
- code?: string;
10
- };
11
- };
12
- //# sourceMappingURL=anthropic-convert.d.ts.map