zevairouter 1.0.271 → 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 (1383) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/cli/app/.next-cli-build/BUILD_ID +1 -1
  3. package/cli/app/.next-cli-build/app-path-routes-manifest.json +5 -3
  4. package/cli/app/.next-cli-build/build-manifest.json +2 -2
  5. package/cli/app/.next-cli-build/prerender-manifest.json +3 -3
  6. package/cli/app/.next-cli-build/required-server-files.json +3 -1
  7. package/cli/app/.next-cli-build/routes-manifest.json +12 -0
  8. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js +2 -2
  9. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js.nft.json +1 -1
  10. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page_client-reference-manifest.js +1 -1
  11. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  12. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  13. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  14. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +2 -2
  15. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  16. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  17. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  18. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  19. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  20. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  21. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  22. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  23. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  24. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  25. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  26. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js +2 -2
  27. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js.nft.json +1 -1
  28. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page_client-reference-manifest.js +1 -1
  29. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  30. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  31. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  32. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +10 -10
  33. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  34. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  35. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
  36. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  37. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  38. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +2 -2
  39. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  40. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  41. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
  42. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  43. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  44. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  45. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  46. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  47. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
  48. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  49. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  50. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js +2 -2
  51. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js.nft.json +1 -1
  52. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
  53. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  54. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  55. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  56. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
  57. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  58. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  59. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  60. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  61. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  62. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  63. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  64. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  65. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +2 -2
  66. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  67. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  68. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +2 -2
  69. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
  70. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
  71. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  72. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  73. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  74. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/pricing/page.js +2 -2
  75. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/pricing/page.js.nft.json +1 -1
  76. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  77. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +2 -2
  78. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
  79. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  80. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page.js +3 -3
  81. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page.js.nft.json +1 -1
  82. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page_client-reference-manifest.js +1 -1
  83. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +2 -2
  84. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
  85. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  86. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  87. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  88. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  89. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  90. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  91. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  92. package/cli/app/.next-cli-build/server/app/_global-error/page.js +2 -2
  93. package/cli/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  94. package/cli/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  95. package/cli/app/.next-cli-build/server/app/_global-error.html +1 -1
  96. package/cli/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  97. package/cli/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  98. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  99. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  100. package/cli/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  101. package/cli/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  102. package/cli/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  103. package/cli/app/.next-cli-build/server/app/_not-found/page.js +2 -2
  104. package/cli/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  105. package/cli/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  106. package/cli/app/.next-cli-build/server/app/_not-found.html +1 -1
  107. package/cli/app/.next-cli-build/server/app/_not-found.rsc +4 -4
  108. package/cli/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +4 -4
  109. package/cli/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  110. package/cli/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +4 -4
  111. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  112. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  113. package/cli/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  114. package/cli/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
  115. package/cli/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  116. package/cli/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
  117. package/cli/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  118. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
  119. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  120. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
  121. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  122. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
  123. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  124. package/cli/app/.next-cli-build/server/app/api/auth/saml/acs/route.js +1 -1
  125. package/cli/app/.next-cli-build/server/app/api/auth/saml/acs/route.js.nft.json +1 -1
  126. package/cli/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js +1 -1
  127. package/cli/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js.nft.json +1 -1
  128. package/cli/app/.next-cli-build/server/app/api/auth/saml/start/route.js +1 -1
  129. package/cli/app/.next-cli-build/server/app/api/auth/saml/start/route.js.nft.json +1 -1
  130. package/cli/app/.next-cli-build/server/app/api/auth/saml/test/route.js +1 -1
  131. package/cli/app/.next-cli-build/server/app/api/auth/saml/test/route.js.nft.json +1 -1
  132. package/cli/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
  133. package/cli/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  134. package/cli/app/.next-cli-build/server/app/api/cache/stats/route.js +1 -1
  135. package/cli/app/.next-cli-build/server/app/api/cache/stats/route.js.nft.json +1 -1
  136. package/cli/app/.next-cli-build/server/app/api/changelog/route.js +1 -1
  137. package/cli/app/.next-cli-build/server/app/api/changelog/route.js.nft.json +1 -1
  138. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +4 -4
  139. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  140. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  141. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  142. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  143. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  144. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  145. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  146. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
  147. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  148. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js +1 -1
  149. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js.nft.json +1 -1
  150. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
  151. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  152. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
  153. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  154. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
  155. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  156. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
  157. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  158. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +2 -2
  159. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  160. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +3 -3
  161. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  162. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
  163. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  164. package/cli/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +3 -3
  165. package/cli/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js.nft.json +1 -1
  166. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
  167. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  168. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
  169. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  170. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  171. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  172. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  173. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  174. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  175. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  176. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  177. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  178. package/cli/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  179. package/cli/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  180. package/cli/app/.next-cli-build/server/app/api/context/[id]/route.js +1 -1
  181. package/cli/app/.next-cli-build/server/app/api/context/[id]/route.js.nft.json +1 -1
  182. package/cli/app/.next-cli-build/server/app/api/context/bulk/route.js +1 -1
  183. package/cli/app/.next-cli-build/server/app/api/context/bulk/route.js.nft.json +1 -1
  184. package/cli/app/.next-cli-build/server/app/api/context/route.js +1 -1
  185. package/cli/app/.next-cli-build/server/app/api/context/route.js.nft.json +1 -1
  186. package/cli/app/.next-cli-build/server/app/api/dashboard/chat/completions/route.js +1 -1
  187. package/cli/app/.next-cli-build/server/app/api/dashboard/chat/completions/route.js.nft.json +1 -1
  188. package/cli/app/.next-cli-build/server/app/api/dashboard/cli-tools/keys/route.js +1 -1
  189. package/cli/app/.next-cli-build/server/app/api/dashboard/cli-tools/keys/route.js.nft.json +1 -1
  190. package/cli/app/.next-cli-build/server/app/api/dashboard/media/[operation]/route.js +1 -1
  191. package/cli/app/.next-cli-build/server/app/api/dashboard/media/[operation]/route.js.nft.json +1 -1
  192. package/cli/app/.next-cli-build/server/app/api/dashboard/media/videos/[id]/route.js +1 -1
  193. package/cli/app/.next-cli-build/server/app/api/dashboard/media/videos/[id]/route.js.nft.json +1 -1
  194. package/cli/app/.next-cli-build/server/app/api/headroom/enable/route.js +1 -1
  195. package/cli/app/.next-cli-build/server/app/api/headroom/enable/route.js.nft.json +1 -1
  196. package/cli/app/.next-cli-build/server/app/api/headroom/extras/route.js +1 -1
  197. package/cli/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
  198. package/cli/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
  199. package/cli/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
  200. package/cli/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
  201. package/cli/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
  202. package/cli/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
  203. package/cli/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
  204. package/cli/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
  205. package/cli/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
  206. package/cli/app/.next-cli-build/server/app/api/headroom/stop/route.js +1 -1
  207. package/cli/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
  208. package/cli/app/.next-cli-build/server/app/api/health/ready/route.js +1 -1
  209. package/cli/app/.next-cli-build/server/app/api/health/ready/route.js.nft.json +1 -1
  210. package/cli/app/.next-cli-build/server/app/api/health/route.js +1 -1
  211. package/cli/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  212. package/cli/app/.next-cli-build/server/app/api/init/route.js +1 -1
  213. package/cli/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  214. package/cli/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js +1 -1
  215. package/cli/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js.nft.json +1 -1
  216. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  217. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  218. package/cli/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  219. package/cli/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  220. package/cli/app/.next-cli-build/server/app/api/locale/route.js +1 -1
  221. package/cli/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  222. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +2 -2
  223. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  224. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +1 -1
  225. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  226. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  227. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  228. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  229. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  230. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  231. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  232. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  233. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  234. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  235. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  236. package/cli/app/.next-cli-build/server/app/api/metrics/route.js +2 -2
  237. package/cli/app/.next-cli-build/server/app/api/metrics/route.js.nft.json +1 -1
  238. package/cli/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  239. package/cli/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  240. package/cli/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
  241. package/cli/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  242. package/cli/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  243. package/cli/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  244. package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  245. package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  246. package/cli/app/.next-cli-build/server/app/api/models/route.js +1 -1
  247. package/cli/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  248. package/cli/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  249. package/cli/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  250. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  251. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  252. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js +1 -1
  253. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  254. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  255. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  256. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js +1 -1
  257. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js.nft.json +1 -1
  258. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js +1 -1
  259. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js.nft.json +1 -1
  260. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js +1 -1
  261. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js.nft.json +1 -1
  262. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route.js +1 -1
  263. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  264. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  265. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  266. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route.js +1 -1
  267. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route.js.nft.json +1 -1
  268. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/latest/route.js +1 -1
  269. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/latest/route.js.nft.json +1 -1
  270. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/route.js +1 -1
  271. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/route.js.nft.json +1 -1
  272. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js +1 -1
  273. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  274. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  275. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  276. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js +1 -1
  277. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js.nft.json +1 -1
  278. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js +1 -1
  279. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js.nft.json +1 -1
  280. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js +1 -1
  281. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js.nft.json +1 -1
  282. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js +1 -1
  283. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js.nft.json +1 -1
  284. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js +1 -1
  285. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js.nft.json +1 -1
  286. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route.js +1 -1
  287. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  288. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  289. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  290. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route.js +1 -1
  291. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route.js.nft.json +1 -1
  292. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route.js +1 -1
  293. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route.js.nft.json +1 -1
  294. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js +1 -1
  295. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js.nft.json +1 -1
  296. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route.js +1 -1
  297. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route.js.nft.json +1 -1
  298. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route.js +1 -1
  299. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route.js.nft.json +1 -1
  300. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  301. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  302. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  303. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  304. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  305. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  306. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  307. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  308. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route.js +1 -1
  309. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  310. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  311. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  312. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/route.js +1 -1
  313. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/route.js.nft.json +1 -1
  314. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/latest/route.js +1 -1
  315. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/latest/route.js.nft.json +1 -1
  316. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js +1 -1
  317. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js.nft.json +1 -1
  318. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-token/route.js +1 -1
  319. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-token/route.js.nft.json +1 -1
  320. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  321. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  322. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js +1 -1
  323. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
  324. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  325. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  326. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js +1 -1
  327. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  328. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  329. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  330. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js +1 -1
  331. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js.nft.json +1 -1
  332. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js +1 -1
  333. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js.nft.json +1 -1
  334. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js +1 -1
  335. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js.nft.json +1 -1
  336. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  337. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  338. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js +1 -1
  339. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
  340. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  341. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  342. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  343. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  344. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js +1 -1
  345. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  346. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  347. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  348. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js +1 -1
  349. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js.nft.json +1 -1
  350. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js +1 -1
  351. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js.nft.json +1 -1
  352. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js +1 -1
  353. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js.nft.json +1 -1
  354. package/cli/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  355. package/cli/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  356. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  357. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  358. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  359. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  360. package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
  361. package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  362. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  363. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  364. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  365. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  366. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  367. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  368. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  369. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  370. package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route.js +1 -1
  371. package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route.js.nft.json +1 -1
  372. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  373. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  374. package/cli/app/.next-cli-build/server/app/api/providers/codebuddy/discover-models/route.js +2 -2
  375. package/cli/app/.next-cli-build/server/app/api/providers/codebuddy/discover-models/route.js.nft.json +1 -1
  376. package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
  377. package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  378. package/cli/app/.next-cli-build/server/app/api/providers/route.js +2 -2
  379. package/cli/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  380. package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
  381. package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  382. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  383. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  384. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -51
  385. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  386. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
  387. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  388. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  389. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  390. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
  391. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  392. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
  393. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  394. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
  395. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  396. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
  397. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  398. package/cli/app/.next-cli-build/server/app/api/pxpipe/health/route.js +2 -2
  399. package/cli/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
  400. package/cli/app/.next-cli-build/server/app/api/pxpipe/install/route.js +2 -2
  401. package/cli/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
  402. package/cli/app/.next-cli-build/server/app/api/pxpipe/logs/route.js +2 -2
  403. package/cli/app/.next-cli-build/server/app/api/pxpipe/logs/route.js.nft.json +1 -1
  404. package/cli/app/.next-cli-build/server/app/api/pxpipe/restart/route.js +2 -2
  405. package/cli/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
  406. package/cli/app/.next-cli-build/server/app/api/pxpipe/start/route.js +2 -2
  407. package/cli/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
  408. package/cli/app/.next-cli-build/server/app/api/pxpipe/stats/route.js +2 -2
  409. package/cli/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
  410. package/cli/app/.next-cli-build/server/app/api/pxpipe/status/route.js +2 -2
  411. package/cli/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
  412. package/cli/app/.next-cli-build/server/app/api/pxpipe/stop/route.js +2 -2
  413. package/cli/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
  414. package/cli/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  415. package/cli/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  416. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  417. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  418. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
  419. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  420. package/cli/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  421. package/cli/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  422. package/cli/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
  423. package/cli/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  424. package/cli/app/.next-cli-build/server/app/api/tags/route.js +1 -1
  425. package/cli/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  426. package/cli/app/.next-cli-build/server/app/api/terminal/auth/setup/route.js +1 -1
  427. package/cli/app/.next-cli-build/server/app/api/terminal/auth/setup/route.js.nft.json +1 -1
  428. package/cli/app/.next-cli-build/server/app/api/terminal/auth/status/route.js +1 -1
  429. package/cli/app/.next-cli-build/server/app/api/terminal/auth/status/route.js.nft.json +1 -1
  430. package/cli/app/.next-cli-build/server/app/api/terminal/auth/unlock/route.js +1 -1
  431. package/cli/app/.next-cli-build/server/app/api/terminal/auth/unlock/route.js.nft.json +1 -1
  432. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/input/route.js +1 -1
  433. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/input/route.js.nft.json +1 -1
  434. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/resize/route.js +1 -1
  435. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/resize/route.js.nft.json +1 -1
  436. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/route.js +1 -1
  437. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/route.js.nft.json +1 -1
  438. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/stream/route.js +2 -2
  439. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/stream/route.js.nft.json +1 -1
  440. package/cli/app/.next-cli-build/server/app/api/terminal/session/route.js +1 -1
  441. package/cli/app/.next-cli-build/server/app/api/terminal/session/route.js.nft.json +1 -1
  442. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  443. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  444. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
  445. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  446. package/cli/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
  447. package/cli/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  448. package/cli/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
  449. package/cli/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  450. package/cli/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  451. package/cli/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  452. package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  453. package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  454. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
  455. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  456. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
  457. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  458. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
  459. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  460. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
  461. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  462. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  463. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  464. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  465. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  466. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +3 -3
  467. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  468. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +1 -1
  469. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
  470. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  471. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  472. package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route.js +1 -1
  473. package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route.js.nft.json +1 -1
  474. package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  475. package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  476. package/cli/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
  477. package/cli/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  478. package/cli/app/.next-cli-build/server/app/api/usage/logs/route.js +1 -1
  479. package/cli/app/.next-cli-build/server/app/api/usage/logs/route.js.nft.json +1 -1
  480. package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  481. package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  482. package/cli/app/.next-cli-build/server/app/api/usage/quota-stream/route.js +3 -0
  483. package/cli/app/.next-cli-build/server/app/api/usage/quota-stream/route.js.nft.json +1 -0
  484. package/cli/app/.next-cli-build/server/app/api/usage/quota-stream/route_client-reference-manifest.js +1 -0
  485. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  486. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  487. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  488. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  489. package/cli/app/.next-cli-build/server/app/api/usage/routing-stream/route.js +4 -0
  490. package/cli/app/.next-cli-build/server/app/api/usage/routing-stream/route.js.nft.json +1 -0
  491. package/cli/app/.next-cli-build/server/app/api/usage/routing-stream/route_client-reference-manifest.js +1 -0
  492. package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  493. package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  494. package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
  495. package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  496. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  497. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  498. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  499. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  500. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  501. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  502. package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  503. package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  504. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  505. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  506. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  507. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  508. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js +1 -1
  509. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  510. package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  511. package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  512. package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  513. package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  514. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
  515. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  516. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  517. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  518. package/cli/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  519. package/cli/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  520. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  521. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  522. package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  523. package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  524. package/cli/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  525. package/cli/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  526. package/cli/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  527. package/cli/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  528. package/cli/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -1
  529. package/cli/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js.nft.json +1 -1
  530. package/cli/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -1
  531. package/cli/app/.next-cli-build/server/app/api/v1/videos/edits/route.js.nft.json +1 -1
  532. package/cli/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -1
  533. package/cli/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js.nft.json +1 -1
  534. package/cli/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -1
  535. package/cli/app/.next-cli-build/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
  536. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  537. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  538. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  539. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  540. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  541. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  542. package/cli/app/.next-cli-build/server/app/api/version/route.js +1 -1
  543. package/cli/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  544. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  545. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  546. package/cli/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  547. package/cli/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  548. package/cli/app/.next-cli-build/server/app/callback/page.js +2 -2
  549. package/cli/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  550. package/cli/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  551. package/cli/app/.next-cli-build/server/app/callback.html +1 -1
  552. package/cli/app/.next-cli-build/server/app/callback.rsc +4 -4
  553. package/cli/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +4 -4
  554. package/cli/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  555. package/cli/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +4 -4
  556. package/cli/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
  557. package/cli/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  558. package/cli/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  559. package/cli/app/.next-cli-build/server/app/dashboard/automation.html +1 -1
  560. package/cli/app/.next-cli-build/server/app/dashboard/automation.rsc +6 -6
  561. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation/__PAGE__.segment.rsc +2 -2
  562. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation.segment.rsc +1 -1
  563. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  564. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  565. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_full.segment.rsc +6 -6
  566. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_head.segment.rsc +1 -1
  567. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_index.segment.rsc +4 -4
  568. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_tree.segment.rsc +2 -2
  569. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  570. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +6 -6
  571. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  572. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  573. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  574. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  575. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
  576. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  577. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +4 -4
  578. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
  579. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  580. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +6 -6
  581. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  582. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  583. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  584. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  585. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
  586. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  587. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +4 -4
  588. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
  589. package/cli/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  590. package/cli/app/.next-cli-build/server/app/dashboard/combos.rsc +6 -6
  591. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  592. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  593. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  594. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  595. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
  596. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  597. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +4 -4
  598. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  599. package/cli/app/.next-cli-build/server/app/dashboard/context.html +1 -1
  600. package/cli/app/.next-cli-build/server/app/dashboard/context.rsc +6 -6
  601. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context/__PAGE__.segment.rsc +2 -2
  602. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context.segment.rsc +1 -1
  603. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  604. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  605. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_full.segment.rsc +6 -6
  606. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_head.segment.rsc +1 -1
  607. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_index.segment.rsc +4 -4
  608. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_tree.segment.rsc +2 -2
  609. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  610. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.rsc +6 -6
  611. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  612. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  613. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  614. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  615. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
  616. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  617. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +4 -4
  618. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  619. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  620. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +6 -6
  621. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  622. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  623. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  624. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  625. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  626. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +6 -6
  627. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  628. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +4 -4
  629. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
  630. package/cli/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  631. package/cli/app/.next-cli-build/server/app/dashboard/mitm.rsc +6 -6
  632. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  633. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  634. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  635. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  636. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
  637. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  638. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +4 -4
  639. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
  640. package/cli/app/.next-cli-build/server/app/dashboard/playground.html +1 -1
  641. package/cli/app/.next-cli-build/server/app/dashboard/playground.rsc +6 -6
  642. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard/playground/__PAGE__.segment.rsc +2 -2
  643. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard/playground.segment.rsc +1 -1
  644. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  645. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  646. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_full.segment.rsc +6 -6
  647. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_head.segment.rsc +1 -1
  648. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_index.segment.rsc +4 -4
  649. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_tree.segment.rsc +2 -2
  650. package/cli/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  651. package/cli/app/.next-cli-build/server/app/dashboard/profile.rsc +6 -6
  652. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  653. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  654. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  655. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  656. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
  657. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  658. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +4 -4
  659. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  660. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  661. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.rsc +6 -6
  662. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  663. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  664. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  665. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  666. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  667. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
  668. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  669. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +4 -4
  670. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  671. package/cli/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  672. package/cli/app/.next-cli-build/server/app/dashboard/providers.rsc +6 -6
  673. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  674. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  675. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  676. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  677. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
  678. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  679. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +4 -4
  680. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
  681. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  682. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +6 -6
  683. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  684. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  685. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  686. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  687. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
  688. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  689. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +4 -4
  690. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
  691. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
  692. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +6 -6
  693. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +2 -2
  694. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe.segment.rsc +1 -1
  695. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  696. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  697. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +6 -6
  698. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_head.segment.rsc +1 -1
  699. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_index.segment.rsc +4 -4
  700. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +2 -2
  701. package/cli/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
  702. package/cli/app/.next-cli-build/server/app/dashboard/quota.rsc +7 -7
  703. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  704. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  705. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  706. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  707. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +7 -7
  708. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  709. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +4 -4
  710. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
  711. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  712. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +5 -5
  713. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  714. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing.segment.rsc +1 -1
  715. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +1 -1
  716. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  717. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  718. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +5 -5
  719. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  720. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
  721. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  722. package/cli/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  723. package/cli/app/.next-cli-build/server/app/dashboard/skills.rsc +6 -6
  724. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
  725. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
  726. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  727. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  728. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +6 -6
  729. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
  730. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +4 -4
  731. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +2 -2
  732. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  733. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.rsc +6 -6
  734. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +2 -2
  735. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +1 -1
  736. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  737. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  738. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +6 -6
  739. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +1 -1
  740. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +4 -4
  741. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +2 -2
  742. package/cli/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  743. package/cli/app/.next-cli-build/server/app/dashboard/translator.rsc +6 -6
  744. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  745. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  746. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  747. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  748. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
  749. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  750. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +4 -4
  751. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  752. package/cli/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  753. package/cli/app/.next-cli-build/server/app/dashboard/usage.rsc +6 -6
  754. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  755. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  756. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  757. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  758. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
  759. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  760. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +4 -4
  761. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  762. package/cli/app/.next-cli-build/server/app/dashboard.html +1 -1
  763. package/cli/app/.next-cli-build/server/app/dashboard.rsc +6 -6
  764. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  765. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  766. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  767. package/cli/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +6 -6
  768. package/cli/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  769. package/cli/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +4 -4
  770. package/cli/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  771. package/cli/app/.next-cli-build/server/app/index.html +1 -1
  772. package/cli/app/.next-cli-build/server/app/index.rsc +4 -4
  773. package/cli/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  774. package/cli/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +4 -4
  775. package/cli/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  776. package/cli/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +4 -4
  777. package/cli/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
  778. package/cli/app/.next-cli-build/server/app/landing/page.js +2 -2
  779. package/cli/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  780. package/cli/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  781. package/cli/app/.next-cli-build/server/app/landing.html +1 -1
  782. package/cli/app/.next-cli-build/server/app/landing.rsc +5 -5
  783. package/cli/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +5 -5
  784. package/cli/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  785. package/cli/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +4 -4
  786. package/cli/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
  787. package/cli/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
  788. package/cli/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  789. package/cli/app/.next-cli-build/server/app/login/page.js +2 -2
  790. package/cli/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  791. package/cli/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  792. package/cli/app/.next-cli-build/server/app/login.html +1 -1
  793. package/cli/app/.next-cli-build/server/app/login.rsc +5 -5
  794. package/cli/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +5 -5
  795. package/cli/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  796. package/cli/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +4 -4
  797. package/cli/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
  798. package/cli/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  799. package/cli/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  800. package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
  801. package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  802. package/cli/app/.next-cli-build/server/app/page.js +2 -2
  803. package/cli/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  804. package/cli/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  805. package/cli/app/.next-cli-build/server/app/provider-icons/[provider]/route.js +2 -2
  806. package/cli/app/.next-cli-build/server/app/provider-icons/[provider]/route.js.nft.json +1 -1
  807. package/cli/app/.next-cli-build/server/app-paths-manifest.json +5 -3
  808. package/cli/app/.next-cli-build/server/chunks/1131.js +1 -1
  809. package/cli/app/.next-cli-build/server/chunks/1133.js +1 -0
  810. package/cli/app/.next-cli-build/server/chunks/1283.js +15 -0
  811. package/cli/app/.next-cli-build/server/chunks/1350.js +1 -1
  812. package/cli/app/.next-cli-build/server/chunks/1585.js +1 -0
  813. package/cli/app/.next-cli-build/server/chunks/1756.js +1 -0
  814. package/cli/app/.next-cli-build/server/chunks/220.js +1 -0
  815. package/cli/app/.next-cli-build/server/chunks/2238.js +1 -0
  816. package/cli/app/.next-cli-build/server/chunks/2442.js +1 -0
  817. package/cli/app/.next-cli-build/server/chunks/2456.js +1 -0
  818. package/cli/app/.next-cli-build/server/chunks/2557.js +1 -1
  819. package/cli/app/.next-cli-build/server/chunks/287.js +1 -0
  820. package/cli/app/.next-cli-build/server/chunks/{2732.js → 3016.js} +2 -2
  821. package/cli/app/.next-cli-build/server/chunks/3373.js +1 -0
  822. package/cli/app/.next-cli-build/server/chunks/3662.js +1 -0
  823. package/cli/app/.next-cli-build/server/chunks/3721.js +49 -0
  824. package/cli/app/.next-cli-build/server/chunks/3792.js +1 -0
  825. package/cli/app/.next-cli-build/server/chunks/3815.js +1 -1
  826. package/cli/app/.next-cli-build/server/chunks/3926.js +2 -0
  827. package/cli/app/.next-cli-build/server/chunks/3949.js +1 -1
  828. package/cli/app/.next-cli-build/server/chunks/3999.js +3 -3
  829. package/cli/app/.next-cli-build/server/chunks/40.js +1 -0
  830. package/cli/app/.next-cli-build/server/chunks/412.js +2 -2
  831. package/cli/app/.next-cli-build/server/chunks/421.js +4 -0
  832. package/cli/app/.next-cli-build/server/chunks/4236.js +1 -0
  833. package/cli/app/.next-cli-build/server/chunks/4315.js +1 -0
  834. package/cli/app/.next-cli-build/server/chunks/4322.js +1 -0
  835. package/cli/app/.next-cli-build/server/chunks/437.js +1 -0
  836. package/cli/app/.next-cli-build/server/chunks/4645.js +1 -0
  837. package/cli/app/.next-cli-build/server/chunks/4720.js +1 -1
  838. package/cli/app/.next-cli-build/server/chunks/4721.js +2 -2
  839. package/cli/app/.next-cli-build/server/chunks/4827.js +1 -1
  840. package/cli/app/.next-cli-build/server/chunks/4897.js +1 -1
  841. package/cli/app/.next-cli-build/server/chunks/5019.js +1 -0
  842. package/cli/app/.next-cli-build/server/chunks/5024.js +1 -1
  843. package/cli/app/.next-cli-build/server/chunks/5330.js +35 -39
  844. package/cli/app/.next-cli-build/server/chunks/5434.js +1 -0
  845. package/cli/app/.next-cli-build/server/chunks/5436.js +1 -1
  846. package/cli/app/.next-cli-build/server/chunks/5752.js +4 -0
  847. package/cli/app/.next-cli-build/server/chunks/5754.js +1 -0
  848. package/cli/app/.next-cli-build/server/chunks/5936.js +1 -0
  849. package/cli/app/.next-cli-build/server/chunks/5949.js +11 -11
  850. package/cli/app/.next-cli-build/server/chunks/6182.js +49 -0
  851. package/cli/app/.next-cli-build/server/chunks/6200.js +1 -0
  852. package/cli/app/.next-cli-build/server/chunks/6476.js +1 -0
  853. package/cli/app/.next-cli-build/server/chunks/{3110.js → 6651.js} +6 -6
  854. package/cli/app/.next-cli-build/server/chunks/6802.js +1 -1
  855. package/cli/app/.next-cli-build/server/chunks/6843.js +2 -0
  856. package/cli/app/.next-cli-build/server/chunks/6936.js +15 -0
  857. package/cli/app/.next-cli-build/server/chunks/6951.js +1 -0
  858. package/cli/app/.next-cli-build/server/chunks/7170.js +1 -1
  859. package/cli/app/.next-cli-build/server/chunks/7319.js +60 -128
  860. package/cli/app/.next-cli-build/server/chunks/7432.js +1 -0
  861. package/cli/app/.next-cli-build/server/chunks/7568.js +1 -0
  862. package/cli/app/.next-cli-build/server/chunks/7582.js +51 -0
  863. package/cli/app/.next-cli-build/server/chunks/7611.js +1 -0
  864. package/cli/app/.next-cli-build/server/chunks/7634.js +1 -1
  865. package/cli/app/.next-cli-build/server/chunks/7875.js +1 -0
  866. package/cli/app/.next-cli-build/server/chunks/8028.js +1 -1
  867. package/cli/app/.next-cli-build/server/chunks/8136.js +1 -0
  868. package/cli/app/.next-cli-build/server/chunks/8255.js +1 -1
  869. package/cli/app/.next-cli-build/server/chunks/8306.js +1 -1
  870. package/cli/app/.next-cli-build/server/chunks/8371.js +1 -1
  871. package/cli/app/.next-cli-build/server/chunks/8491.js +1 -0
  872. package/cli/app/.next-cli-build/server/chunks/8590.js +1 -0
  873. package/cli/app/.next-cli-build/server/chunks/{3069.js → 8653.js} +1 -1
  874. package/cli/app/.next-cli-build/server/chunks/8655.js +4 -0
  875. package/cli/app/.next-cli-build/server/chunks/8895.js +15 -13
  876. package/cli/app/.next-cli-build/server/chunks/891.js +1 -1
  877. package/cli/app/.next-cli-build/server/chunks/8910.js +2 -2
  878. package/cli/app/.next-cli-build/server/chunks/9445.js +1 -0
  879. package/cli/app/.next-cli-build/server/chunks/9489.js +1 -1
  880. package/cli/app/.next-cli-build/server/chunks/9539.js +1 -0
  881. package/cli/app/.next-cli-build/server/chunks/9835.js +1 -0
  882. package/cli/app/.next-cli-build/server/chunks/static/media/server.f66733f4.js +8 -0
  883. package/cli/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  884. package/cli/app/.next-cli-build/server/middleware.js +3 -3
  885. package/cli/app/.next-cli-build/server/pages/404.html +1 -1
  886. package/cli/app/.next-cli-build/server/pages/500.html +1 -1
  887. package/cli/app/.next-cli-build/server/server-reference-manifest.js +1 -1
  888. package/cli/app/.next-cli-build/server/server-reference-manifest.json +1 -1
  889. package/cli/app/.next-cli-build/server/webpack-runtime.js +1 -1
  890. package/cli/app/.next-cli-build/static/C6i_Bn3fJrnsz4at-ntco/_buildManifest.js +1 -0
  891. package/cli/app/.next-cli-build/static/chunks/523-7f951d309a09f363.js +3 -0
  892. package/cli/app/.next-cli-build/static/chunks/5497-27b73ecf920843b1.js +7 -0
  893. package/cli/app/.next-cli-build/static/chunks/{620-014f7e265e6e9748.js → 620-ca95212890b67fc9.js} +1 -1
  894. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-489aca87c755610e.js +1 -0
  895. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-a8613adfc83b3096.js +1 -0
  896. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-15dd47ab818e675d.js → page-a096025e3edc5150.js} +9 -9
  897. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-ca3d31524c44540f.js +3 -0
  898. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-7b3b291fb9d2dc65.js +1 -0
  899. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-36f947b5449cdf6b.js +1 -0
  900. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/layout-9fadcbba0c598e87.js +1 -0
  901. package/cli/app/.next-cli-build/static/chunks/app/_global-error/page-db8d22293b86486b.js +1 -0
  902. package/cli/app/.next-cli-build/static/chunks/app/api/auth/login/route-db8d22293b86486b.js +1 -0
  903. package/cli/app/.next-cli-build/static/chunks/app/api/auth/logout/route-db8d22293b86486b.js +1 -0
  904. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-db8d22293b86486b.js +1 -0
  905. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-db8d22293b86486b.js +1 -0
  906. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-db8d22293b86486b.js +1 -0
  907. package/cli/app/.next-cli-build/static/chunks/app/api/auth/saml/acs/route-db8d22293b86486b.js +1 -0
  908. package/cli/app/.next-cli-build/static/chunks/app/api/auth/saml/metadata/route-db8d22293b86486b.js +1 -0
  909. package/cli/app/.next-cli-build/static/chunks/app/api/auth/saml/start/route-db8d22293b86486b.js +1 -0
  910. package/cli/app/.next-cli-build/static/chunks/app/api/auth/saml/test/route-db8d22293b86486b.js +1 -0
  911. package/cli/app/.next-cli-build/static/chunks/app/api/auth/status/route-db8d22293b86486b.js +1 -0
  912. package/cli/app/.next-cli-build/static/chunks/app/api/cache/stats/route-db8d22293b86486b.js +1 -0
  913. package/cli/app/.next-cli-build/static/chunks/app/api/changelog/route-db8d22293b86486b.js +1 -0
  914. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-db8d22293b86486b.js +1 -0
  915. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-db8d22293b86486b.js +1 -0
  916. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-db8d22293b86486b.js +1 -0
  917. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-db8d22293b86486b.js +1 -0
  918. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-db8d22293b86486b.js +1 -0
  919. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-gateway/accounts/route-db8d22293b86486b.js +1 -0
  920. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-db8d22293b86486b.js +1 -0
  921. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-db8d22293b86486b.js +1 -0
  922. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-db8d22293b86486b.js +1 -0
  923. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-db8d22293b86486b.js +1 -0
  924. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-db8d22293b86486b.js +1 -0
  925. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-db8d22293b86486b.js +1 -0
  926. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-db8d22293b86486b.js +1 -0
  927. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-build-settings/route-db8d22293b86486b.js +1 -0
  928. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-db8d22293b86486b.js +1 -0
  929. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-db8d22293b86486b.js +1 -0
  930. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-db8d22293b86486b.js +1 -0
  931. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-db8d22293b86486b.js +1 -0
  932. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-db8d22293b86486b.js +1 -0
  933. package/cli/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-db8d22293b86486b.js +1 -0
  934. package/cli/app/.next-cli-build/static/chunks/app/api/combos/route-db8d22293b86486b.js +1 -0
  935. package/cli/app/.next-cli-build/static/chunks/app/api/context/[id]/route-db8d22293b86486b.js +1 -0
  936. package/cli/app/.next-cli-build/static/chunks/app/api/context/bulk/route-db8d22293b86486b.js +1 -0
  937. package/cli/app/.next-cli-build/static/chunks/app/api/context/route-db8d22293b86486b.js +1 -0
  938. package/cli/app/.next-cli-build/static/chunks/app/api/dashboard/chat/completions/route-db8d22293b86486b.js +1 -0
  939. package/cli/app/.next-cli-build/static/chunks/app/api/dashboard/cli-tools/keys/route-db8d22293b86486b.js +1 -0
  940. package/cli/app/.next-cli-build/static/chunks/app/api/dashboard/media/[operation]/route-db8d22293b86486b.js +1 -0
  941. package/cli/app/.next-cli-build/static/chunks/app/api/dashboard/media/videos/[id]/route-db8d22293b86486b.js +1 -0
  942. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/enable/route-db8d22293b86486b.js +1 -0
  943. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-db8d22293b86486b.js +1 -0
  944. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-db8d22293b86486b.js +1 -0
  945. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-db8d22293b86486b.js +1 -0
  946. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/start/route-db8d22293b86486b.js +1 -0
  947. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/status/route-db8d22293b86486b.js +1 -0
  948. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-db8d22293b86486b.js +1 -0
  949. package/cli/app/.next-cli-build/static/chunks/app/api/health/ready/route-db8d22293b86486b.js +1 -0
  950. package/cli/app/.next-cli-build/static/chunks/app/api/health/route-db8d22293b86486b.js +1 -0
  951. package/cli/app/.next-cli-build/static/chunks/app/api/init/route-db8d22293b86486b.js +1 -0
  952. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/rotate/route-db8d22293b86486b.js +1 -0
  953. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-db8d22293b86486b.js +1 -0
  954. package/cli/app/.next-cli-build/static/chunks/app/api/keys/route-db8d22293b86486b.js +1 -0
  955. package/cli/app/.next-cli-build/static/chunks/app/api/locale/route-db8d22293b86486b.js +1 -0
  956. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-db8d22293b86486b.js +1 -0
  957. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-db8d22293b86486b.js +1 -0
  958. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-db8d22293b86486b.js +1 -0
  959. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-db8d22293b86486b.js +1 -0
  960. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-db8d22293b86486b.js +1 -0
  961. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-db8d22293b86486b.js +1 -0
  962. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-db8d22293b86486b.js +1 -0
  963. package/cli/app/.next-cli-build/static/chunks/app/api/metrics/route-db8d22293b86486b.js +1 -0
  964. package/cli/app/.next-cli-build/static/chunks/app/api/models/alias/route-db8d22293b86486b.js +1 -0
  965. package/cli/app/.next-cli-build/static/chunks/app/api/models/availability/route-db8d22293b86486b.js +1 -0
  966. package/cli/app/.next-cli-build/static/chunks/app/api/models/custom/route-db8d22293b86486b.js +1 -0
  967. package/cli/app/.next-cli-build/static/chunks/app/api/models/disabled/route-db8d22293b86486b.js +1 -0
  968. package/cli/app/.next-cli-build/static/chunks/app/api/models/route-db8d22293b86486b.js +1 -0
  969. package/cli/app/.next-cli-build/static/chunks/app/api/models/test/route-db8d22293b86486b.js +1 -0
  970. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-db8d22293b86486b.js +1 -0
  971. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route-db8d22293b86486b.js +1 -0
  972. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route-db8d22293b86486b.js +1 -0
  973. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/route-db8d22293b86486b.js +1 -0
  974. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/latest/route-db8d22293b86486b.js +1 -0
  975. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/route-db8d22293b86486b.js +1 -0
  976. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route-db8d22293b86486b.js +1 -0
  977. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route-db8d22293b86486b.js +1 -0
  978. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route-db8d22293b86486b.js +1 -0
  979. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/latest/route-db8d22293b86486b.js +1 -0
  980. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/route-db8d22293b86486b.js +1 -0
  981. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route-db8d22293b86486b.js +1 -0
  982. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route-db8d22293b86486b.js +1 -0
  983. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/route-db8d22293b86486b.js +1 -0
  984. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/latest/route-db8d22293b86486b.js +1 -0
  985. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/route-db8d22293b86486b.js +1 -0
  986. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-token/route-db8d22293b86486b.js +1 -0
  987. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/quota-cookie/route-db8d22293b86486b.js +1 -0
  988. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route-db8d22293b86486b.js +1 -0
  989. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route-db8d22293b86486b.js +1 -0
  990. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route-db8d22293b86486b.js +1 -0
  991. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/latest/route-db8d22293b86486b.js +1 -0
  992. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/route-db8d22293b86486b.js +1 -0
  993. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-token/route-db8d22293b86486b.js +1 -0
  994. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/quota-cookie/route-db8d22293b86486b.js +1 -0
  995. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-db8d22293b86486b.js +1 -0
  996. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-db8d22293b86486b.js +1 -0
  997. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-db8d22293b86486b.js +1 -0
  998. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-db8d22293b86486b.js +1 -0
  999. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route-db8d22293b86486b.js +1 -0
  1000. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route-db8d22293b86486b.js +1 -0
  1001. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/route-db8d22293b86486b.js +1 -0
  1002. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/latest/route-db8d22293b86486b.js +1 -0
  1003. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/route-db8d22293b86486b.js +1 -0
  1004. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-token/route-db8d22293b86486b.js +1 -0
  1005. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-db8d22293b86486b.js +1 -0
  1006. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-db8d22293b86486b.js +1 -0
  1007. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-db8d22293b86486b.js +1 -0
  1008. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route-db8d22293b86486b.js +1 -0
  1009. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route-db8d22293b86486b.js +1 -0
  1010. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/route-db8d22293b86486b.js +1 -0
  1011. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/latest/route-db8d22293b86486b.js +1 -0
  1012. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/route-db8d22293b86486b.js +1 -0
  1013. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-db8d22293b86486b.js +1 -0
  1014. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-db8d22293b86486b.js +1 -0
  1015. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-db8d22293b86486b.js +1 -0
  1016. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-db8d22293b86486b.js +1 -0
  1017. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route-db8d22293b86486b.js +1 -0
  1018. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route-db8d22293b86486b.js +1 -0
  1019. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/route-db8d22293b86486b.js +1 -0
  1020. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/latest/route-db8d22293b86486b.js +1 -0
  1021. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/route-db8d22293b86486b.js +1 -0
  1022. package/cli/app/.next-cli-build/static/chunks/app/api/pricing/route-db8d22293b86486b.js +1 -0
  1023. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-db8d22293b86486b.js +1 -0
  1024. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-db8d22293b86486b.js +1 -0
  1025. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-db8d22293b86486b.js +1 -0
  1026. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-db8d22293b86486b.js +1 -0
  1027. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-db8d22293b86486b.js +1 -0
  1028. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-db8d22293b86486b.js +1 -0
  1029. package/cli/app/.next-cli-build/static/chunks/app/api/providers/bulk-delete/route-db8d22293b86486b.js +1 -0
  1030. package/cli/app/.next-cli-build/static/chunks/app/api/providers/client/route-db8d22293b86486b.js +1 -0
  1031. package/cli/app/.next-cli-build/static/chunks/app/api/providers/codebuddy/discover-models/route-db8d22293b86486b.js +1 -0
  1032. package/cli/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-db8d22293b86486b.js +1 -0
  1033. package/cli/app/.next-cli-build/static/chunks/app/api/providers/route-db8d22293b86486b.js +1 -0
  1034. package/cli/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-db8d22293b86486b.js +1 -0
  1035. package/cli/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-db8d22293b86486b.js +1 -0
  1036. package/cli/app/.next-cli-build/static/chunks/app/api/providers/validate/route-db8d22293b86486b.js +1 -0
  1037. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-db8d22293b86486b.js +1 -0
  1038. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-db8d22293b86486b.js +1 -0
  1039. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-db8d22293b86486b.js +1 -0
  1040. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-db8d22293b86486b.js +1 -0
  1041. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-db8d22293b86486b.js +1 -0
  1042. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-db8d22293b86486b.js +1 -0
  1043. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-db8d22293b86486b.js +1 -0
  1044. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-db8d22293b86486b.js +1 -0
  1045. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-db8d22293b86486b.js +1 -0
  1046. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-db8d22293b86486b.js +1 -0
  1047. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-db8d22293b86486b.js +1 -0
  1048. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-db8d22293b86486b.js +1 -0
  1049. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-db8d22293b86486b.js +1 -0
  1050. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-db8d22293b86486b.js +1 -0
  1051. package/cli/app/.next-cli-build/static/chunks/app/api/settings/database/route-db8d22293b86486b.js +1 -0
  1052. package/cli/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-db8d22293b86486b.js +1 -0
  1053. package/cli/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-db8d22293b86486b.js +1 -0
  1054. package/cli/app/.next-cli-build/static/chunks/app/api/settings/route-db8d22293b86486b.js +1 -0
  1055. package/cli/app/.next-cli-build/static/chunks/app/api/shutdown/route-db8d22293b86486b.js +1 -0
  1056. package/cli/app/.next-cli-build/static/chunks/app/api/tags/route-db8d22293b86486b.js +1 -0
  1057. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/setup/route-db8d22293b86486b.js +1 -0
  1058. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/status/route-db8d22293b86486b.js +1 -0
  1059. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/unlock/route-db8d22293b86486b.js +1 -0
  1060. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/input/route-db8d22293b86486b.js +1 -0
  1061. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/resize/route-db8d22293b86486b.js +1 -0
  1062. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/route-db8d22293b86486b.js +1 -0
  1063. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/stream/route-db8d22293b86486b.js +1 -0
  1064. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/route-db8d22293b86486b.js +1 -0
  1065. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-db8d22293b86486b.js +1 -0
  1066. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-db8d22293b86486b.js +1 -0
  1067. package/cli/app/.next-cli-build/static/chunks/app/api/translator/load/route-db8d22293b86486b.js +1 -0
  1068. package/cli/app/.next-cli-build/static/chunks/app/api/translator/save/route-db8d22293b86486b.js +1 -0
  1069. package/cli/app/.next-cli-build/static/chunks/app/api/translator/send/route-db8d22293b86486b.js +1 -0
  1070. package/cli/app/.next-cli-build/static/chunks/app/api/translator/translate/route-db8d22293b86486b.js +1 -0
  1071. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-db8d22293b86486b.js +1 -0
  1072. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-db8d22293b86486b.js +1 -0
  1073. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-db8d22293b86486b.js +1 -0
  1074. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-db8d22293b86486b.js +1 -0
  1075. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-db8d22293b86486b.js +1 -0
  1076. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-db8d22293b86486b.js +1 -0
  1077. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-db8d22293b86486b.js +1 -0
  1078. package/cli/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-db8d22293b86486b.js +1 -0
  1079. package/cli/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-db8d22293b86486b.js +1 -0
  1080. package/cli/app/.next-cli-build/static/chunks/app/api/usage/aggregate/route-db8d22293b86486b.js +1 -0
  1081. package/cli/app/.next-cli-build/static/chunks/app/api/usage/chart/route-db8d22293b86486b.js +1 -0
  1082. package/cli/app/.next-cli-build/static/chunks/app/api/usage/history/route-db8d22293b86486b.js +1 -0
  1083. package/cli/app/.next-cli-build/static/chunks/app/api/usage/logs/route-db8d22293b86486b.js +1 -0
  1084. package/cli/app/.next-cli-build/static/chunks/app/api/usage/providers/route-db8d22293b86486b.js +1 -0
  1085. package/cli/app/.next-cli-build/static/chunks/app/api/usage/quota-stream/route-db8d22293b86486b.js +1 -0
  1086. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-db8d22293b86486b.js +1 -0
  1087. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-db8d22293b86486b.js +1 -0
  1088. package/cli/app/.next-cli-build/static/chunks/app/api/usage/routing-stream/route-db8d22293b86486b.js +1 -0
  1089. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stats/route-db8d22293b86486b.js +1 -0
  1090. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stream/route-db8d22293b86486b.js +1 -0
  1091. package/cli/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-db8d22293b86486b.js +1 -0
  1092. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-db8d22293b86486b.js +1 -0
  1093. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-db8d22293b86486b.js +1 -0
  1094. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-db8d22293b86486b.js +1 -0
  1095. package/cli/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-db8d22293b86486b.js +1 -0
  1096. package/cli/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-db8d22293b86486b.js +1 -0
  1097. package/cli/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-db8d22293b86486b.js +1 -0
  1098. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-db8d22293b86486b.js +1 -0
  1099. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/route-db8d22293b86486b.js +1 -0
  1100. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-db8d22293b86486b.js +1 -0
  1101. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-db8d22293b86486b.js +1 -0
  1102. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/route-db8d22293b86486b.js +1 -0
  1103. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-db8d22293b86486b.js +1 -0
  1104. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/route-db8d22293b86486b.js +1 -0
  1105. package/cli/app/.next-cli-build/static/chunks/app/api/v1/route-db8d22293b86486b.js +1 -0
  1106. package/cli/app/.next-cli-build/static/chunks/app/api/v1/search/route-db8d22293b86486b.js +1 -0
  1107. package/cli/app/.next-cli-build/static/chunks/app/api/v1/videos/[id]/route-db8d22293b86486b.js +1 -0
  1108. package/cli/app/.next-cli-build/static/chunks/app/api/v1/videos/edits/route-db8d22293b86486b.js +1 -0
  1109. package/cli/app/.next-cli-build/static/chunks/app/api/v1/videos/extensions/route-db8d22293b86486b.js +1 -0
  1110. package/cli/app/.next-cli-build/static/chunks/app/api/v1/videos/generations/route-db8d22293b86486b.js +1 -0
  1111. package/cli/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-db8d22293b86486b.js +1 -0
  1112. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-db8d22293b86486b.js +1 -0
  1113. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-db8d22293b86486b.js +1 -0
  1114. package/cli/app/.next-cli-build/static/chunks/app/api/version/route-db8d22293b86486b.js +1 -0
  1115. package/cli/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-db8d22293b86486b.js +1 -0
  1116. package/cli/app/.next-cli-build/static/chunks/app/api/version/update/route-db8d22293b86486b.js +1 -0
  1117. package/cli/app/.next-cli-build/static/chunks/app/landing/page-345d7bf34da86fee.js +1 -0
  1118. package/cli/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-db8d22293b86486b.js +1 -0
  1119. package/cli/app/.next-cli-build/static/chunks/app/page-db8d22293b86486b.js +1 -0
  1120. package/cli/app/.next-cli-build/static/chunks/app/provider-icons/[provider]/route-db8d22293b86486b.js +1 -0
  1121. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-db8d22293b86486b.js +1 -0
  1122. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-db8d22293b86486b.js +1 -0
  1123. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-db8d22293b86486b.js +1 -0
  1124. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-db8d22293b86486b.js +1 -0
  1125. package/cli/app/.next-cli-build/static/css/2259cb9ea5269549.css +1 -0
  1126. package/cli/app/.worktrees/v1-1-adaptive/.next-cli-build/standalone/src/lib/terminal/ptyBridge.py +163 -0
  1127. package/cli/app/.worktrees/v1-1-adaptive/cli/app/src/lib/terminal/ptyBridge.py +163 -0
  1128. package/cli/app/.worktrees/v1-1-adaptive/src/lib/terminal/ptyBridge.py +163 -0
  1129. package/cli/app/CHANGELOG.md +32 -0
  1130. package/cli/app/cli/hooks/safeGlobalInstall.js +112 -37
  1131. package/cli/app/package.json +6 -1
  1132. package/cli/app/server.js +1 -1
  1133. package/cli/app/src/lib/alerter.js +13 -8
  1134. package/cli/hooks/safeGlobalInstall.js +112 -37
  1135. package/cli/package.json +1 -1
  1136. package/package.json +6 -1
  1137. package/cli/app/.next-cli-build/server/chunks/1051.js +0 -1
  1138. package/cli/app/.next-cli-build/server/chunks/2594.js +0 -1
  1139. package/cli/app/.next-cli-build/server/chunks/3743.js +0 -1
  1140. package/cli/app/.next-cli-build/server/chunks/3839.js +0 -1
  1141. package/cli/app/.next-cli-build/server/chunks/4177.js +0 -1
  1142. package/cli/app/.next-cli-build/server/chunks/5295.js +0 -51
  1143. package/cli/app/.next-cli-build/server/chunks/5307.js +0 -1
  1144. package/cli/app/.next-cli-build/server/chunks/7239.js +0 -63
  1145. package/cli/app/.next-cli-build/server/chunks/7688.js +0 -4
  1146. package/cli/app/.next-cli-build/server/chunks/7769.js +0 -1
  1147. package/cli/app/.next-cli-build/server/chunks/7828.js +0 -1
  1148. package/cli/app/.next-cli-build/server/chunks/8666.js +0 -1
  1149. package/cli/app/.next-cli-build/server/chunks/9484.js +0 -1
  1150. package/cli/app/.next-cli-build/server/chunks/9609.js +0 -1
  1151. package/cli/app/.next-cli-build/static/824D95QIGoN3BCMQNuqnq/_buildManifest.js +0 -1
  1152. package/cli/app/.next-cli-build/static/chunks/523-7fce1a9128358c23.js +0 -3
  1153. package/cli/app/.next-cli-build/static/chunks/5497-1f8d06cd65e1a031.js +0 -7
  1154. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-83d23a03d197fad2.js +0 -1
  1155. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-c3d7b126bbcdeaa2.js +0 -1
  1156. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-e68f446b9c94ade6.js +0 -3
  1157. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-aea189a918ed8a26.js +0 -1
  1158. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-c865ef51004e93fa.js +0 -1
  1159. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/layout-dbfca64b83745c80.js +0 -1
  1160. package/cli/app/.next-cli-build/static/chunks/app/_global-error/page-7f1163bd918d92ca.js +0 -1
  1161. package/cli/app/.next-cli-build/static/chunks/app/api/auth/login/route-7f1163bd918d92ca.js +0 -1
  1162. package/cli/app/.next-cli-build/static/chunks/app/api/auth/logout/route-7f1163bd918d92ca.js +0 -1
  1163. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-7f1163bd918d92ca.js +0 -1
  1164. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-7f1163bd918d92ca.js +0 -1
  1165. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-7f1163bd918d92ca.js +0 -1
  1166. package/cli/app/.next-cli-build/static/chunks/app/api/auth/saml/acs/route-7f1163bd918d92ca.js +0 -1
  1167. package/cli/app/.next-cli-build/static/chunks/app/api/auth/saml/metadata/route-7f1163bd918d92ca.js +0 -1
  1168. package/cli/app/.next-cli-build/static/chunks/app/api/auth/saml/start/route-7f1163bd918d92ca.js +0 -1
  1169. package/cli/app/.next-cli-build/static/chunks/app/api/auth/saml/test/route-7f1163bd918d92ca.js +0 -1
  1170. package/cli/app/.next-cli-build/static/chunks/app/api/auth/status/route-7f1163bd918d92ca.js +0 -1
  1171. package/cli/app/.next-cli-build/static/chunks/app/api/cache/stats/route-7f1163bd918d92ca.js +0 -1
  1172. package/cli/app/.next-cli-build/static/chunks/app/api/changelog/route-7f1163bd918d92ca.js +0 -1
  1173. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-7f1163bd918d92ca.js +0 -1
  1174. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-7f1163bd918d92ca.js +0 -1
  1175. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-7f1163bd918d92ca.js +0 -1
  1176. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-7f1163bd918d92ca.js +0 -1
  1177. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-7f1163bd918d92ca.js +0 -1
  1178. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-gateway/accounts/route-7f1163bd918d92ca.js +0 -1
  1179. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-7f1163bd918d92ca.js +0 -1
  1180. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-7f1163bd918d92ca.js +0 -1
  1181. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-7f1163bd918d92ca.js +0 -1
  1182. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-7f1163bd918d92ca.js +0 -1
  1183. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-7f1163bd918d92ca.js +0 -1
  1184. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-7f1163bd918d92ca.js +0 -1
  1185. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-7f1163bd918d92ca.js +0 -1
  1186. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-build-settings/route-7f1163bd918d92ca.js +0 -1
  1187. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-7f1163bd918d92ca.js +0 -1
  1188. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-7f1163bd918d92ca.js +0 -1
  1189. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-7f1163bd918d92ca.js +0 -1
  1190. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-7f1163bd918d92ca.js +0 -1
  1191. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-7f1163bd918d92ca.js +0 -1
  1192. package/cli/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-7f1163bd918d92ca.js +0 -1
  1193. package/cli/app/.next-cli-build/static/chunks/app/api/combos/route-7f1163bd918d92ca.js +0 -1
  1194. package/cli/app/.next-cli-build/static/chunks/app/api/context/[id]/route-7f1163bd918d92ca.js +0 -1
  1195. package/cli/app/.next-cli-build/static/chunks/app/api/context/bulk/route-7f1163bd918d92ca.js +0 -1
  1196. package/cli/app/.next-cli-build/static/chunks/app/api/context/route-7f1163bd918d92ca.js +0 -1
  1197. package/cli/app/.next-cli-build/static/chunks/app/api/dashboard/chat/completions/route-7f1163bd918d92ca.js +0 -1
  1198. package/cli/app/.next-cli-build/static/chunks/app/api/dashboard/cli-tools/keys/route-7f1163bd918d92ca.js +0 -1
  1199. package/cli/app/.next-cli-build/static/chunks/app/api/dashboard/media/[operation]/route-7f1163bd918d92ca.js +0 -1
  1200. package/cli/app/.next-cli-build/static/chunks/app/api/dashboard/media/videos/[id]/route-7f1163bd918d92ca.js +0 -1
  1201. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/enable/route-7f1163bd918d92ca.js +0 -1
  1202. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-7f1163bd918d92ca.js +0 -1
  1203. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-7f1163bd918d92ca.js +0 -1
  1204. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-7f1163bd918d92ca.js +0 -1
  1205. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/start/route-7f1163bd918d92ca.js +0 -1
  1206. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/status/route-7f1163bd918d92ca.js +0 -1
  1207. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-7f1163bd918d92ca.js +0 -1
  1208. package/cli/app/.next-cli-build/static/chunks/app/api/health/ready/route-7f1163bd918d92ca.js +0 -1
  1209. package/cli/app/.next-cli-build/static/chunks/app/api/health/route-7f1163bd918d92ca.js +0 -1
  1210. package/cli/app/.next-cli-build/static/chunks/app/api/init/route-7f1163bd918d92ca.js +0 -1
  1211. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/rotate/route-7f1163bd918d92ca.js +0 -1
  1212. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-7f1163bd918d92ca.js +0 -1
  1213. package/cli/app/.next-cli-build/static/chunks/app/api/keys/route-7f1163bd918d92ca.js +0 -1
  1214. package/cli/app/.next-cli-build/static/chunks/app/api/locale/route-7f1163bd918d92ca.js +0 -1
  1215. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-7f1163bd918d92ca.js +0 -1
  1216. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-7f1163bd918d92ca.js +0 -1
  1217. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-7f1163bd918d92ca.js +0 -1
  1218. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-7f1163bd918d92ca.js +0 -1
  1219. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-7f1163bd918d92ca.js +0 -1
  1220. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-7f1163bd918d92ca.js +0 -1
  1221. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-7f1163bd918d92ca.js +0 -1
  1222. package/cli/app/.next-cli-build/static/chunks/app/api/metrics/route-7f1163bd918d92ca.js +0 -1
  1223. package/cli/app/.next-cli-build/static/chunks/app/api/models/alias/route-7f1163bd918d92ca.js +0 -1
  1224. package/cli/app/.next-cli-build/static/chunks/app/api/models/availability/route-7f1163bd918d92ca.js +0 -1
  1225. package/cli/app/.next-cli-build/static/chunks/app/api/models/custom/route-7f1163bd918d92ca.js +0 -1
  1226. package/cli/app/.next-cli-build/static/chunks/app/api/models/disabled/route-7f1163bd918d92ca.js +0 -1
  1227. package/cli/app/.next-cli-build/static/chunks/app/api/models/route-7f1163bd918d92ca.js +0 -1
  1228. package/cli/app/.next-cli-build/static/chunks/app/api/models/test/route-7f1163bd918d92ca.js +0 -1
  1229. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-7f1163bd918d92ca.js +0 -1
  1230. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route-7f1163bd918d92ca.js +0 -1
  1231. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route-7f1163bd918d92ca.js +0 -1
  1232. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/route-7f1163bd918d92ca.js +0 -1
  1233. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/latest/route-7f1163bd918d92ca.js +0 -1
  1234. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/route-7f1163bd918d92ca.js +0 -1
  1235. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route-7f1163bd918d92ca.js +0 -1
  1236. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route-7f1163bd918d92ca.js +0 -1
  1237. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route-7f1163bd918d92ca.js +0 -1
  1238. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/latest/route-7f1163bd918d92ca.js +0 -1
  1239. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/route-7f1163bd918d92ca.js +0 -1
  1240. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route-7f1163bd918d92ca.js +0 -1
  1241. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route-7f1163bd918d92ca.js +0 -1
  1242. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/route-7f1163bd918d92ca.js +0 -1
  1243. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/latest/route-7f1163bd918d92ca.js +0 -1
  1244. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/route-7f1163bd918d92ca.js +0 -1
  1245. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-token/route-7f1163bd918d92ca.js +0 -1
  1246. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/quota-cookie/route-7f1163bd918d92ca.js +0 -1
  1247. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route-7f1163bd918d92ca.js +0 -1
  1248. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route-7f1163bd918d92ca.js +0 -1
  1249. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route-7f1163bd918d92ca.js +0 -1
  1250. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/latest/route-7f1163bd918d92ca.js +0 -1
  1251. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/route-7f1163bd918d92ca.js +0 -1
  1252. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-token/route-7f1163bd918d92ca.js +0 -1
  1253. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/quota-cookie/route-7f1163bd918d92ca.js +0 -1
  1254. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-7f1163bd918d92ca.js +0 -1
  1255. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-7f1163bd918d92ca.js +0 -1
  1256. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-7f1163bd918d92ca.js +0 -1
  1257. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-7f1163bd918d92ca.js +0 -1
  1258. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route-7f1163bd918d92ca.js +0 -1
  1259. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route-7f1163bd918d92ca.js +0 -1
  1260. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/route-7f1163bd918d92ca.js +0 -1
  1261. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/latest/route-7f1163bd918d92ca.js +0 -1
  1262. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/route-7f1163bd918d92ca.js +0 -1
  1263. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-token/route-7f1163bd918d92ca.js +0 -1
  1264. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-7f1163bd918d92ca.js +0 -1
  1265. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-7f1163bd918d92ca.js +0 -1
  1266. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-7f1163bd918d92ca.js +0 -1
  1267. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route-7f1163bd918d92ca.js +0 -1
  1268. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route-7f1163bd918d92ca.js +0 -1
  1269. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/route-7f1163bd918d92ca.js +0 -1
  1270. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/latest/route-7f1163bd918d92ca.js +0 -1
  1271. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/route-7f1163bd918d92ca.js +0 -1
  1272. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-7f1163bd918d92ca.js +0 -1
  1273. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-7f1163bd918d92ca.js +0 -1
  1274. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-7f1163bd918d92ca.js +0 -1
  1275. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-7f1163bd918d92ca.js +0 -1
  1276. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route-7f1163bd918d92ca.js +0 -1
  1277. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route-7f1163bd918d92ca.js +0 -1
  1278. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/route-7f1163bd918d92ca.js +0 -1
  1279. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/latest/route-7f1163bd918d92ca.js +0 -1
  1280. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/route-7f1163bd918d92ca.js +0 -1
  1281. package/cli/app/.next-cli-build/static/chunks/app/api/pricing/route-7f1163bd918d92ca.js +0 -1
  1282. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-7f1163bd918d92ca.js +0 -1
  1283. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-7f1163bd918d92ca.js +0 -1
  1284. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-7f1163bd918d92ca.js +0 -1
  1285. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-7f1163bd918d92ca.js +0 -1
  1286. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-7f1163bd918d92ca.js +0 -1
  1287. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-7f1163bd918d92ca.js +0 -1
  1288. package/cli/app/.next-cli-build/static/chunks/app/api/providers/bulk-delete/route-7f1163bd918d92ca.js +0 -1
  1289. package/cli/app/.next-cli-build/static/chunks/app/api/providers/client/route-7f1163bd918d92ca.js +0 -1
  1290. package/cli/app/.next-cli-build/static/chunks/app/api/providers/codebuddy/discover-models/route-7f1163bd918d92ca.js +0 -1
  1291. package/cli/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-7f1163bd918d92ca.js +0 -1
  1292. package/cli/app/.next-cli-build/static/chunks/app/api/providers/route-7f1163bd918d92ca.js +0 -1
  1293. package/cli/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-7f1163bd918d92ca.js +0 -1
  1294. package/cli/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-7f1163bd918d92ca.js +0 -1
  1295. package/cli/app/.next-cli-build/static/chunks/app/api/providers/validate/route-7f1163bd918d92ca.js +0 -1
  1296. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-7f1163bd918d92ca.js +0 -1
  1297. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-7f1163bd918d92ca.js +0 -1
  1298. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-7f1163bd918d92ca.js +0 -1
  1299. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-7f1163bd918d92ca.js +0 -1
  1300. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-7f1163bd918d92ca.js +0 -1
  1301. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-7f1163bd918d92ca.js +0 -1
  1302. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-7f1163bd918d92ca.js +0 -1
  1303. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-7f1163bd918d92ca.js +0 -1
  1304. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-7f1163bd918d92ca.js +0 -1
  1305. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-7f1163bd918d92ca.js +0 -1
  1306. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-7f1163bd918d92ca.js +0 -1
  1307. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-7f1163bd918d92ca.js +0 -1
  1308. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-7f1163bd918d92ca.js +0 -1
  1309. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-7f1163bd918d92ca.js +0 -1
  1310. package/cli/app/.next-cli-build/static/chunks/app/api/settings/database/route-7f1163bd918d92ca.js +0 -1
  1311. package/cli/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-7f1163bd918d92ca.js +0 -1
  1312. package/cli/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-7f1163bd918d92ca.js +0 -1
  1313. package/cli/app/.next-cli-build/static/chunks/app/api/settings/route-7f1163bd918d92ca.js +0 -1
  1314. package/cli/app/.next-cli-build/static/chunks/app/api/shutdown/route-7f1163bd918d92ca.js +0 -1
  1315. package/cli/app/.next-cli-build/static/chunks/app/api/tags/route-7f1163bd918d92ca.js +0 -1
  1316. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/setup/route-7f1163bd918d92ca.js +0 -1
  1317. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/status/route-7f1163bd918d92ca.js +0 -1
  1318. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/unlock/route-7f1163bd918d92ca.js +0 -1
  1319. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/input/route-7f1163bd918d92ca.js +0 -1
  1320. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/resize/route-7f1163bd918d92ca.js +0 -1
  1321. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/route-7f1163bd918d92ca.js +0 -1
  1322. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/stream/route-7f1163bd918d92ca.js +0 -1
  1323. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/route-7f1163bd918d92ca.js +0 -1
  1324. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-7f1163bd918d92ca.js +0 -1
  1325. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-7f1163bd918d92ca.js +0 -1
  1326. package/cli/app/.next-cli-build/static/chunks/app/api/translator/load/route-7f1163bd918d92ca.js +0 -1
  1327. package/cli/app/.next-cli-build/static/chunks/app/api/translator/save/route-7f1163bd918d92ca.js +0 -1
  1328. package/cli/app/.next-cli-build/static/chunks/app/api/translator/send/route-7f1163bd918d92ca.js +0 -1
  1329. package/cli/app/.next-cli-build/static/chunks/app/api/translator/translate/route-7f1163bd918d92ca.js +0 -1
  1330. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-7f1163bd918d92ca.js +0 -1
  1331. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-7f1163bd918d92ca.js +0 -1
  1332. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-7f1163bd918d92ca.js +0 -1
  1333. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-7f1163bd918d92ca.js +0 -1
  1334. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-7f1163bd918d92ca.js +0 -1
  1335. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-7f1163bd918d92ca.js +0 -1
  1336. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-7f1163bd918d92ca.js +0 -1
  1337. package/cli/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-7f1163bd918d92ca.js +0 -1
  1338. package/cli/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-7f1163bd918d92ca.js +0 -1
  1339. package/cli/app/.next-cli-build/static/chunks/app/api/usage/aggregate/route-7f1163bd918d92ca.js +0 -1
  1340. package/cli/app/.next-cli-build/static/chunks/app/api/usage/chart/route-7f1163bd918d92ca.js +0 -1
  1341. package/cli/app/.next-cli-build/static/chunks/app/api/usage/history/route-7f1163bd918d92ca.js +0 -1
  1342. package/cli/app/.next-cli-build/static/chunks/app/api/usage/logs/route-7f1163bd918d92ca.js +0 -1
  1343. package/cli/app/.next-cli-build/static/chunks/app/api/usage/providers/route-7f1163bd918d92ca.js +0 -1
  1344. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-7f1163bd918d92ca.js +0 -1
  1345. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-7f1163bd918d92ca.js +0 -1
  1346. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stats/route-7f1163bd918d92ca.js +0 -1
  1347. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stream/route-7f1163bd918d92ca.js +0 -1
  1348. package/cli/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-7f1163bd918d92ca.js +0 -1
  1349. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-7f1163bd918d92ca.js +0 -1
  1350. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-7f1163bd918d92ca.js +0 -1
  1351. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-7f1163bd918d92ca.js +0 -1
  1352. package/cli/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-7f1163bd918d92ca.js +0 -1
  1353. package/cli/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-7f1163bd918d92ca.js +0 -1
  1354. package/cli/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-7f1163bd918d92ca.js +0 -1
  1355. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-7f1163bd918d92ca.js +0 -1
  1356. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/route-7f1163bd918d92ca.js +0 -1
  1357. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-7f1163bd918d92ca.js +0 -1
  1358. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-7f1163bd918d92ca.js +0 -1
  1359. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/route-7f1163bd918d92ca.js +0 -1
  1360. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-7f1163bd918d92ca.js +0 -1
  1361. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/route-7f1163bd918d92ca.js +0 -1
  1362. package/cli/app/.next-cli-build/static/chunks/app/api/v1/route-7f1163bd918d92ca.js +0 -1
  1363. package/cli/app/.next-cli-build/static/chunks/app/api/v1/search/route-7f1163bd918d92ca.js +0 -1
  1364. package/cli/app/.next-cli-build/static/chunks/app/api/v1/videos/[id]/route-7f1163bd918d92ca.js +0 -1
  1365. package/cli/app/.next-cli-build/static/chunks/app/api/v1/videos/edits/route-7f1163bd918d92ca.js +0 -1
  1366. package/cli/app/.next-cli-build/static/chunks/app/api/v1/videos/extensions/route-7f1163bd918d92ca.js +0 -1
  1367. package/cli/app/.next-cli-build/static/chunks/app/api/v1/videos/generations/route-7f1163bd918d92ca.js +0 -1
  1368. package/cli/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-7f1163bd918d92ca.js +0 -1
  1369. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-7f1163bd918d92ca.js +0 -1
  1370. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-7f1163bd918d92ca.js +0 -1
  1371. package/cli/app/.next-cli-build/static/chunks/app/api/version/route-7f1163bd918d92ca.js +0 -1
  1372. package/cli/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-7f1163bd918d92ca.js +0 -1
  1373. package/cli/app/.next-cli-build/static/chunks/app/api/version/update/route-7f1163bd918d92ca.js +0 -1
  1374. package/cli/app/.next-cli-build/static/chunks/app/landing/page-30ffb960e68fba1a.js +0 -1
  1375. package/cli/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-7f1163bd918d92ca.js +0 -1
  1376. package/cli/app/.next-cli-build/static/chunks/app/page-7f1163bd918d92ca.js +0 -1
  1377. package/cli/app/.next-cli-build/static/chunks/app/provider-icons/[provider]/route-7f1163bd918d92ca.js +0 -1
  1378. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-7f1163bd918d92ca.js +0 -1
  1379. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-7f1163bd918d92ca.js +0 -1
  1380. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-7f1163bd918d92ca.js +0 -1
  1381. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-7f1163bd918d92ca.js +0 -1
  1382. package/cli/app/.next-cli-build/static/css/d3a75038b243e398.css +0 -1
  1383. /package/cli/app/.next-cli-build/static/{824D95QIGoN3BCMQNuqnq → C6i_Bn3fJrnsz4at-ntco}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- exports.id=3839,exports.ids=[1998,3839],exports.modules={9760:(a,b,c)=>{"use strict";c.d(b,{EE:()=>n,U:()=>h,YR:()=>o,gs:()=>e,x0:()=>l});let d="https://api.blackbox.ai",e=`${d}/v1/models`,f=`${d}/key/info`,g=["/veo","/sora","/flux","/stable-diffusion","/seedream","/imagen","/nano-banana","/image-","/image/","-image","/edit","-edit","/mochi","/ray-","/fast-animatediff","/fast-svd","/cogvideox","/hidream","/recraft","/ideogram","/bria/","/playgroundai/","/luma/photon","/sana","/wan-","/dreamshaper","hunyuan-video"];function h(a){let b=Array.isArray(a)?a:a?.data||a?.models||a?.results||[];return Array.isArray(b)?b.map(a=>{let b="string"==typeof a?a.trim():String(a?.id||a?.model||a?.name||"").trim();return b&&function(a){if("string"!=typeof a||!a.trim())return!1;let b=a.trim().toLowerCase();return!g.some(a=>b.includes(a))}(b)?{..."object"==typeof a&&a?a:{},id:b,name:a?.name||a?.display_name||a?.displayName||b}:null}).filter(Boolean):[]}function i(a){let b={Accept:"application/json","Content-Type":"application/json"};return"string"==typeof a&&a.trim()&&(b.Authorization=`Bearer ${a.trim()}`),b}function j(a={}){return a.signal?a.signal:AbortSignal.timeout(a.timeoutMs||8e3)}async function k(a){try{await a?.body?.cancel?.()}catch{}}async function l(a={},b={}){let c=b.fetchImpl||fetch;try{let d=await c(e,{method:"GET",headers:i(a.apiKey||a.accessToken),signal:j(b)});if(!d.ok)return await k(d),null;let f=h(await d.json());return f.length?{models:f}:null}catch{return null}}async function m(a,b={}){let c=b.fetchImpl||fetch;if("string"!=typeof a||!a.trim())return null;try{let d=await c(f,{method:"GET",headers:i(a),signal:j(b)});if(!d.ok)return await k(d),null;let e=await d.json();return e?.info||e||null}catch{return null}}async function n(a,b={}){let c=await m(a,b);if(!c)return{plan:"Blackbox API",message:"Blackbox spend data is unavailable for this key.",quotas:{},trackingMode:"unavailable"};let d=Number(c.spend),e=Number(c.max_budget),f=Number.isFinite(d)&&d>=0?d:0,g=Number.isFinite(e)&&e>0,h=g?e:0,i=g?Math.max(0,h-f):null,j=g?Math.max(0,Math.min(100,i/h*100)):100;return{plan:"Blackbox API",quotas:{Spend:{used:f,total:h,...null==i?{}:{remaining:i},remainingPercentage:j,unlimited:!1,unit:"USD",resetAt:c.budget_reset_at||c.expires||null,displayName:g?"API Budget":"API Spend"}},trackingMode:"upstream",spend:f,maxBudget:g?e:null}}async function o(a,b={}){let c=b.fetchImpl||fetch;try{let d=await c(f,{method:"GET",headers:i(a),signal:j(b)});if(d.ok||429===d.status)return await k(d),{valid:!0,error:null};if(401===d.status||403===d.status||404===d.status)return await k(d),{valid:!1,error:"Invalid API key"};let e="";try{e=(await d.text()).slice(0,240)}catch{}return{valid:!1,error:e?`Blackbox validation failed (${d.status}): ${e}`:`Blackbox validation failed (${d.status})`}}catch(a){return{valid:!1,error:a?.message||"Blackbox validation failed"}}}},15222:(a,b,c)=>{"use strict";c.d(b,{RO:()=>ac,Yt:()=>ab,my:()=>E});var d=c(75924),e=c(39609),f=c(9760);function g(a,b=0){let c="string"==typeof a&&a.trim()?Number(a):a;return Number.isFinite(c)?c:b}function h(a,b){return{plan:a,quotas:{Credits:{used:1,total:1,remaining:0,remainingPercentage:0,resetAt:null,unlimited:!1}},authoritative:!0,limitReached:!0,message:b}}function i(a){let b=Error(a);return b.name="AbortError",b.code="USAGE_REQUEST_ABORTED",b}async function j(a,b={}){let c,d=new AbortController,e=b.parentSignal,f=Number.isFinite(b.timeoutMs)&&b.timeoutMs>0?b.timeoutMs:15e3,g=new Promise((a,b)=>{c=b}),h=a=>{let b=a instanceof Error?a:i("Usage request aborted");d.signal.aborted||d.abort(b),c(b)},k=()=>h(e.reason);e?.aborted?h(e.reason):e?.addEventListener("abort",k,{once:!0});let l=setTimeout(()=>h(i(`Usage request timed out after ${f}ms`)),f);l.unref?.();try{return await Promise.race([Promise.resolve().then(()=>a(d.signal)),g])}finally{clearTimeout(l),e?.removeEventListener("abort",k)}}function k(a){let b=Math.round(100*Math.max(0,Math.min(1,Number(a)||0))),c=100-b;return{used:b,total:100,remaining:c,remainingPercentage:c,resetAt:null,unlimited:!1}}function l(){return{quotaFetchFailed:!0,message:"Ollama Cloud usage temporarily unavailable."}}async function m(a,b=null){let c=a?.apiKey||a?.accessToken;if(!c)return{message:"Ollama Cloud API key not available."};let d={Authorization:`Bearer ${c}`,Accept:"application/json"};try{return await j(async a=>{let c=await (0,e.proxyAwareFetch)("https://ollama.com/api/usage",{method:"GET",headers:d,signal:a},b);if(401===c.status||403===c.status)return{authError:!0,accountDead:!0,message:"Ollama Cloud API key invalid or expired."};if(402===c.status||429===c.status)return h("Ollama Cloud","Ollama Cloud credits are exhausted.");if(!c.ok)return l();let f=await c.json().catch(()=>null);if(!f||"object"!=typeof f)return l();let g=await (0,e.proxyAwareFetch)("https://ollama.com/api/me",{method:"POST",headers:{...d,"Content-Length":"0"},signal:a},b).then(a=>a.ok?a.json():null).catch(b=>{if(a.aborted)throw b;return null}),i="string"==typeof g?.Plan?g.Plan.trim():"",j=i?i.charAt(0).toUpperCase()+i.slice(1).toLowerCase():"Ollama Cloud",m=f.limits&&"object"==typeof f.limits?f.limits:{},n={};return(Number.isFinite(Number(m.session?.usage))&&(n["Session (5h)"]=k(m.session.usage)),Number.isFinite(Number(m.weekly?.usage))&&(n["Weekly (7d)"]=k(m.weekly.usage)),0===Object.keys(n).length)?{plan:j,quotas:n,authoritative:!0,message:"Ollama Cloud connected. No usage limits reported."}:{plan:j,quotas:n,authoritative:!0}},{parentSignal:b?.signal})}catch{return l()}}let n={LEVEL_BASIC:"Moderato",LEVEL_INTERMEDIATE:"Allegretto",LEVEL_ADVANCED:"Allegro",LEVEL_STANDARD:"Vivace"};function o(){return{quotaFetchFailed:!0,message:"Kimi usage temporarily unavailable."}}function p(a,b,c,d){let e=Math.max(0,g(b)),f=Math.max(0,g(a)),h=Math.max(0,g(c,e-f));return{used:f,total:e,remaining:h,remainingPercentage:e>0?Math.min(100,h/e*100):0,resetAt:function(a){if(null==a||""===a)return null;try{if(a instanceof Date)return a.toISOString();if("number"==typeof a||/^\d+$/.test(String(a))){let b=Number(a);return new Date(b<1e12?1e3*b:b).toISOString()}return new Date(a).toISOString()}catch{return null}}(d),unlimited:!1}}async function q(a,b=null){let c="string"==typeof a?.apiKey?a.apiKey.trim():"",f="string"==typeof a?.accessToken?a.accessToken.trim():"";if(!c&&!f)return{message:"Kimi access token or API key not available."};let i=c?{"x-api-key":c}:{Authorization:`Bearer ${f}`,...(0,d.VK)(a?.providerSpecificData?.deviceId)};try{return await j(async a=>{let c,d=await (0,e.proxyAwareFetch)("https://api.kimi.com/coding/v1/usages",{method:"GET",headers:{...i,Accept:"application/json","Content-Type":"application/json"},signal:a},b),f=await d.text().catch(()=>"");if(401===d.status)return{authError:!0,accountDead:!0,message:"Kimi authentication expired. Please re-authorize."};if(403===d.status)return{plan:"Kimi Coding",quotaFetchFailed:!0,usageUnavailable:!0,message:"Kimi connected, but this account has no permission to view usage."};if(402===d.status||429===d.status)return h("Kimi Coding","Kimi credits are exhausted.");if(!d.ok)return o();try{c=JSON.parse(f||"{}")}catch{return o()}let j={},k=c.usage&&"object"==typeof c.usage?c.usage:{},l=g(k.limit??k.Limit);l>0&&(j.Weekly=p(k.used??k.Used,l,k.remaining??k.Remaining,k.resetTime??k.ResetTime??k.reset_at??k.resetAt));let m=(Array.isArray(c.limits)?c.limits:[]).filter(a=>{let b=a?.detail&&"object"==typeof a.detail?a.detail:{};return g(b.limit??b.Limit)>0}),q=new Set;for(let[a,b]of m.entries()){let c=b?.detail&&"object"==typeof b.detail?b.detail:{},d=g(c.limit??c.Limit),e=g(c.remaining??c.Remaining,d);j[function(a,b,c,d){if(1===c)return"Ratelimit";let e=a?.name??a?.type??a?.window??a?.detail?.name??a?.detail?.type??a?.detail?.window,f="string"==typeof e?e.replace(/[^a-zA-Z0-9._ -]/g," ").replace(/\s+/g," ").trim().slice(0,48):"",g=f?`Ratelimit (${f})`:`Ratelimit ${b+1}`,h=g,i=2;for(;d.has(h);)h=`${g} ${i++}`;return d.add(h),h}(b,a,m.length,q)]=p(Math.max(0,d-e),d,e,c.resetTime??c.reset_at??c.resetAt)}let r=c.user?.membership?.level;return{plan:n[r]||(r?String(r).replace(/^LEVEL_/,"").toLowerCase():"Kimi Coding"),quotas:j,authoritative:!0,...0===Object.keys(j).length?{message:"Kimi connected. No usage limits reported."}:{}}},{parentSignal:b?.signal})}catch{return o()}}function r(){return{quotaFetchFailed:!0,message:"DeepSeek balance temporarily unavailable."}}async function s(a,b=null){let c="string"==typeof a?.apiKey?a.apiKey.trim():"";if(!c)return{message:"DeepSeek API key not available. Add a key to view usage."};try{return await j(async a=>{let d=await (0,e.proxyAwareFetch)("https://api.deepseek.com/user/balance",{method:"GET",headers:{Authorization:`Bearer ${c}`,Accept:"application/json","Content-Type":"application/json"},signal:a},b);if(401===d.status||403===d.status)return{authError:!0,accountDead:!0,message:"DeepSeek authentication failed. Check the API key."};if(402===d.status||429===d.status)return h("DeepSeek","DeepSeek balance is exhausted.");if(!d.ok)return r();let f=await d.json().catch(()=>null);if(!f||"object"!=typeof f)return r();let i={};for(let a of Array.isArray(f.balance_infos)?f.balance_infos:[]){if(!a||"object"!=typeof a)continue;let b="string"==typeof a.currency?a.currency.trim().toUpperCase():"";if(!b)continue;let c=Math.max(0,g(a.total_balance??a.totalBalance));i[`Balance (${b})`]={used:0,total:c,remaining:c,remainingPercentage:100*(c>0),resetAt:null,unlimited:!1,unit:b,grantedBalance:Math.max(0,g(a.granted_balance??a.grantedBalance)),toppedUpBalance:Math.max(0,g(a.topped_up_balance??a.toppedUpBalance))}}if(0===Object.keys(i).length)return{plan:"DeepSeek",quotas:i,authoritative:!0,message:"DeepSeek connected. No balance data returned."};let j=!0===f.is_available||!0===f.isAvailable;return{plan:j?"DeepSeek":"DeepSeek (Insufficient Balance)",quotas:i,authoritative:!0,limitReached:!j}},{parentSignal:b?.signal})}catch{return r()}}var t=c(30022),u=c(21031);function v(a,b){let c=Math.max(0,Number(a?.total)||0),d=Math.max(0,Number(a?.used)||0),e=Math.max(0,Number(a?.remaining)||0);return{total:c,used:d,remaining:e,remainingPercentage:c>0?Math.min(100,e/c*100):0,unit:a?.unit||"credits",resetAt:b,unlimited:!1}}function w(){return{quotaFetchFailed:!0,message:"Qoder usage temporarily unavailable."}}async function x(a,b=null){try{return await j(async c=>{let d;try{d=await (0,u.iC)(a,{proxyOptions:b,signal:c})}catch(a){if(a?.status===401||a?.status===403)return{authError:!0,accountDead:!0,message:"Qoder PAT was rejected. Add a valid Personal Access Token."};throw a}if(!d?.accessToken)return{message:"Qoder usage unavailable: no access token"};let f=await (0,e.proxyAwareFetch)(t.x_,{method:"GET",headers:{Authorization:`Bearer ${d.accessToken}`,Accept:"application/json"},signal:c},b);if(401===f.status||403===f.status)return{authError:!0,accountDead:!0,message:"Qoder authentication expired. Reconnect this account."};if(!f.ok)return w();let g=await f.json().catch(()=>null);if(!g||"object"!=typeof g)return w();let h=Number(g.expiresAt),i=Number.isFinite(h)&&h>0?new Date(h).toISOString():null,j={user:v(g.userQuota,i)};return Number(g.orgResourcePackage?.total)>0&&(j.organization=v(g.orgResourcePackage,i)),{quotas:j,totalUsagePercentage:Number(g.totalUsagePercentage)||0,isQuotaExceeded:!0===g.isQuotaExceeded,limitReached:!0===g.isQuotaExceeded,expiresAt:Number.isFinite(h)?h:null,authoritative:!0}},{parentSignal:b?.signal})}catch(a){return w()}}let y={international:"https://api.z.ai/api/monitor/usage/quota/limit",china:"https://open.bigmodel.cn/api/monitor/usage/quota/limit"},z={minimax:["https://www.minimax.io/v1/token_plan/remains","https://api.minimax.io/v1/api/openplatform/coding_plan/remains"],"minimax-cn":["https://www.minimaxi.com/v1/api/openplatform/coding_plan/remains","https://api.minimaxi.com/v1/api/openplatform/coding_plan/remains"]},A={quotaApiHosts:["https://daily-cloudcode-pa.googleapis.com","https://cloudcode-pa.googleapis.com","https://daily-cloudcode-pa.sandbox.googleapis.com"],fetchAvailableModelsPath:"/v1internal:fetchAvailableModels",retrieveUserQuotaPath:"/v1internal:retrieveUserQuota",loadProjectApiUrl:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",tokenUrl:"https://oauth2.googleapis.com/token",clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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",userAgent:(0,d.A9)(),quotaUserAgent:(0,d.P0)()},B=["gemini-3.7-flash-high","gemini-3.7-flash-medium","gemini-3.7-flash-low","gemini-3.6-flash-high","gemini-3.6-flash-medium","gemini-3.6-flash-low","gemini-3-flash-agent","gemini-3.5-flash-low","gemini-3.5-flash-extra-low","gemini-pro-agent","gemini-3.1-pro-low","claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b-medium","gemini-3-flash"],C="2023-06-01",D={free:"TCACA_code_001_PqouKr6QWV",proMon:"TCACA_code_002_AkiJS3ZHF5",gift:"TCACA_code_006_DbXS0lrypC",activity:"TCACA_code_007_nzdH5h4Nl0",proYear:"TCACA_code_003_FAnt7lcmRT",freeMon:"TCACA_code_008_cfWoLwvjU4",extra:"TCACA_code_009_0XmEQc2xOf"};async function E(a,b=null){let{provider:c,accessToken:d,apiKey:g,providerSpecificData:h,projectId:i}=a,j={...h||{},...i?{projectId:i}:{}};switch(c){case"github":return await L(d,h,b);case"gemini-cli":return await N(d,j,b);case"antigravity":return await R(d,j,b);case"claude":return await U(d,b);case"codex":return await aa(d,b);case"kiro":return await ad(d,h,b);case"codebuddy":case"codebuddy-cn":return await G(d,h,b,g,c);case"qoder":return await x(a,b);case"autoclaw":return await ao(d,b,a);case"qwen":return await ae(d,h);case"iflow":return await af(d);case"ollama":return await m(a,b);case"kimi":case"kimi-coding":return await q(a,b);case"deepseek":return await s(a,b);case"glm":case"glm-cn":return await ag(g,c,b);case"minimax":case"minimax-cn":return await an(g,c,b);case"grok-cli":return await as(d,h,b);case"cloudflare-ai":return await ap(g||d,h,b);case"xai":return await ax(d||g,h,b);case"cline":case"clinepass":return await av(d||g,c,b);case"kimchi":return await aw(d||g,h,b);case"blackbox":return await (0,f.EE)(g||d,{fetchImpl:(a,c)=>(0,e.proxyAwareFetch)(a,c,b)});case"cursor":return await ay(d,h);default:return{message:`Usage API not implemented for ${c}`}}}async function F(a,b={},c=null,d="codebuddy"){let f=b?.uid||b?.rawAuth?.uid;if(f)return{uid:f,enterpriseId:b?.enterpriseId||null};let g=b?.domain||b?.rawAuth?.domain||("codebuddy-cn"===d?"www.codebuddy.cn":"www.codebuddy.ai");try{let b=await (0,e.proxyAwareFetch)(`https://${g}/v2/plugin/accounts`,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json","X-Domain":g}},c);if(!b.ok)return{uid:null,enterpriseId:null};let d=await b.json(),f=d?.data?.accounts||[],h=f.find(a=>a.lastLogin)||f[0]||{};return{uid:h.uid||null,enterpriseId:h.enterpriseId||null}}catch{return{uid:null,enterpriseId:null}}}async function G(a,b={},c=null,d=null,f="codebuddy"){let g=b?.authMode==="generated-api-key",h=a||d,i=a?"oauth":d?"api-key":null;if(!h)return{plan:"CodeBuddy",message:"CodeBuddy upstream quota is unavailable because no valid IDE OAuth token or API key is stored.",quotas:{},trackingMode:"unavailable"};try{let a,j,{uid:k,enterpriseId:l}=await F(h,b,c,f),m=await (0,e.proxyAwareFetch)(function(a={},b="codebuddy"){let c=a?.domain||a?.rawAuth?.domain||("codebuddy-cn"===b?"www.codebuddy.cn":"www.codebuddy.ai");return`https://${c}/v2/billing/meter/get-user-resource`}(b,f),{method:"POST",headers:function(a,b={},c=null,d=null,e=null){let f={Authorization:`Bearer ${a}`,Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9","Content-Type":"application/json","X-Domain":b?.domain||b?.rawAuth?.domain||"www.codebuddy.ai"};return e&&(f["X-Api-Key"]=e),c&&(f["X-User-Id"]=c),d&&(f["X-Enterprise-Id"]=d,f["X-Tenant-Id"]=d),f}(h,b,k,l,d),body:JSON.stringify((a=new Date,(j=new Date(a)).setFullYear(j.getFullYear()+101),{PageNumber:1,PageSize:200,ProductCode:"p_tcaca",Status:[0,3],PackageEndTimeRangeBegin:I(a),PackageEndTimeRangeEnd:I(j)}))},c),n=await m.text(),o=null;try{o=n?JSON.parse(n):null}catch{o=null}if(401===m.status||403===m.status){if("oauth"===i)return{plan:"CodeBuddy",message:`CodeBuddy IDE OAuth token was rejected (${m.status}). Upstream quota is unavailable; use ZevaiRouter Usage for local request and token tracking.`,quotas:{},authMode:"oauth-rejected",trackingMode:"local-router"};return{plan:"CodeBuddy",message:"CodeBuddy chat key active. Upstream quota is unavailable without a valid IDE OAuth token; use ZevaiRouter Usage for local request and token tracking.",quotas:{},authMode:g?"generated-api-key":"api-key",trackingMode:"local-router"}}if(!m.ok){let a=408===m.status||425===m.status||429===m.status||m.status>=500;return{plan:"CodeBuddy",message:`CodeBuddy quota endpoint returned ${m.status}.`,quotas:{},...a?{quotaFetchFailed:!0}:{}}}return{...function(a){let b=a?.data?.Response?.Data||a?.Response?.Data||a?.data||a||{},c=Array.isArray(b?.Accounts)?b.Accounts:Array.isArray(b?.accounts)?b.accounts:[];if(0===c.length)return{plan:"CodeBuddy",message:"CodeBuddy connected. No quota records were returned.",quotas:{}};let d=a=>{let b=H(a.CycleEndTime);return b?new Date(b).getTime():1/0},e=a=>{let b=d(a),c=Number(a.DeductionEndTime);return Number.isFinite(b)&&Number.isFinite(c)&&c-b>1728e5},f=(a,b)=>d(a)-d(b),g=c.filter(e).sort(f),h=c.filter(a=>!e(a)).sort(f),i={},j=!1,k=(a,b,{recurring:c})=>{var d,e;let f=function(a,{useCycle:b=!0}={}){let c=J(a,"Cycle"),d=function(a,b,c){return c?a||b:a&&b?a.precision!==b.precision?a.precision>b.precision?a:b:Math.abs(a.values.total-b.values.total)>=1e-9||Math.abs(a.values.used-b.values.used)>=1e-9||Math.abs(a.values.remaining-b.values.remaining)>=1e-9?a:b:b||a}(c,J(a,""),b);return d?{...d.values,resetAt:H(a.CycleEndTime||a.DeductionEndTime||a.ExpiredTime)}:null}(b,{useCycle:c});f&&((b.PackageCode===D.proMon||b.PackageCode===D.proYear)&&(j=!0),i[a]||(i[a]={used:0,total:0,remaining:0,resetAt:null,unit:"credits",unlimited:!1,recurring:c}),i[a].used+=f.used,i[a].total+=f.total,i[a].remaining+=f.remaining,i[a].resetAt=(d=i[a].resetAt,e=f.resetAt,d?e&&new Date(e).getTime()<new Date(d).getTime()?e:d:e||null),i[a].recurring=i[a].recurring&&c)};for(let a of g)k("Monthly Credits",a,{recurring:!0});for(let a of h)k("Bonus Credits",a,{recurring:!1});if(h.length>0&&i["Bonus Credits"]&&(i["Bonus Credits"].packCount=h.length),0===Object.keys(i).length)for(let a of c){if(!a||"object"!=typeof a)continue;let b=function(a){switch(a){case D.free:case D.freeMon:case D.proMon:case D.proYear:return"Monthly Credits";case D.gift:return"Gift Credits";case D.extra:return"Extra Credits";case D.activity:return"Activity Credits";default:return a?"Other Credits":null}}(a.PackageCode)||"Other Credits",c="Activity Credits"!==b&&"Gift Credits"!==b;k(c?"Monthly Credits":"Bonus Credits",a,{recurring:c})}if(0===Object.keys(i).length)return{plan:j?"Pro":"Free",message:"CodeBuddy connected. Unable to extract quota values.",quotas:{}};for(let a of Object.values(i))a.remainingPercentage=a.total>0?Math.max(0,Math.min(100,a.remaining/a.total*100)):0;return{plan:j?"Pro":"Free",quotas:i}}(o),authMode:i}}catch(a){return{plan:"CodeBuddy",message:`CodeBuddy connected. Unable to fetch quota: ${a.message}`,quotas:{},quotaFetchFailed:!0}}}function H(a){if(!a)return null;try{if(a instanceof Date)return a.toISOString();if("number"==typeof a)return new Date(a<1e12?1e3*a:a).toISOString();if("string"==typeof a){if(/^\d+$/.test(a)){let b=Number(a);return new Date(b<1e12?1e3*b:b).toISOString()}return new Date(a).toISOString()}return null}catch(b){return console.warn(`Failed to parse reset time: ${a}`,b),null}}function I(a){let b=a=>String(a).padStart(2,"0");return`${a.getFullYear()}-${b(a.getMonth()+1)}-${b(a.getDate())} ${b(a.getHours())}:${b(a.getMinutes())}:${b(a.getSeconds())}`}function J(a,b){let c=K(a[`${b}CapacitySizePrecise`]),d=c??K(a[`${b}CapacitySize`]),e=K(a[`${b}CapacityUsedPrecise`]),f=K(a[`${b}CapacityRemainPrecise`]),g=e??(null===f?K(a[`${b}CapacityUsed`]):null),h=f??K(a[`${b}CapacityRemain`]);if(null===d||null===g&&null===h)return null;let i=Math.max(0,d),j=null!==g?Math.min(i,Math.max(0,g)):Math.max(0,i-Math.min(i,Math.max(0,h))),k=Math.max(0,i-j),l=null===h?null:Math.min(i,Math.max(0,h)),m=null!==l&&1e-9>Math.abs(j+l-i)?l:k;return{values:{total:i,used:j,remaining:m},precision:+(null!==c)+2*(null!==e||null!==f)}}function K(...a){for(let b of a){if(null==b||""===b)continue;let a=Number(b);if(Number.isFinite(a))return a}return null}async function L(a,b,c=null){try{if(!a)throw Error("No GitHub access token available. Please re-authorize the connection.");let b=await (0,e.proxyAwareFetch)("https://api.github.com/copilot_internal/user",{headers:{Authorization:`token ${a}`,Accept:"application/json","X-GitHub-Api-Version":"2022-11-28","User-Agent":"GitHubCopilotChat/0.26.7","Editor-Version":"vscode/1.100.0","Editor-Plugin-Version":"copilot-chat/0.26.7"}},c);if(!b.ok){let a=await b.text();throw Error(`GitHub API error: ${a}`)}let d=await b.json();if(d.quota_snapshots){let a=d.quota_snapshots,b=H(d.quota_reset_date);return{plan:d.copilot_plan,resetDate:d.quota_reset_date,quotas:{chat:{...M(a.chat),resetAt:b},completions:{...M(a.completions),resetAt:b},premium_interactions:{...M(a.premium_interactions),resetAt:b}}}}if(d.monthly_quotas||d.limited_user_quotas){let a=d.monthly_quotas||{},b=d.limited_user_quotas||{},c=H(d.limited_user_reset_date);return{plan:d.copilot_plan||d.access_type_sku,resetDate:d.limited_user_reset_date,quotas:{chat:{used:b.chat||0,total:a.chat||0,unlimited:!1,resetAt:c},completions:{used:b.completions||0,total:a.completions||0,unlimited:!1,resetAt:c}}}}return{message:"GitHub Copilot connected. Unable to parse quota data."}}catch(a){throw Error(`Failed to fetch GitHub usage: ${a.message}`)}}function M(a){return a?{used:a.entitlement-a.remaining,total:a.entitlement,remaining:a.remaining,unlimited:a.unlimited||!1}:{used:0,total:0,unlimited:!0}}async function N(a,b,c=null){if(!a)return{plan:"Free",message:"Gemini CLI access token not available."};try{let d,f=O(b?.projectId),g="Free";if(!f){let b=await P(a,c);f=O(b?.cloudaicompanionProject),g=b?.currentTier?.name||g}if(!f)return{plan:g,message:"Gemini CLI project ID not available. Reconnect Gemini CLI, or configure a Google Cloud project with Gemini Code Assist access before checking quota."};let h=new AbortController,i=setTimeout(()=>h.abort(),1e4);try{d=await (0,e.proxyAwareFetch)("https://cloudcode-pa.googleapis.com/v1internal:retrieveUserQuota",{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/json"},body:JSON.stringify({project:f}),signal:h.signal},c)}finally{clearTimeout(i)}if(!d.ok)return{plan:g,message:`Gemini CLI quota error (${d.status}).`};let j=await d.json(),k={};if(Array.isArray(j.buckets))for(let a of j.buckets){if(!a.modelId||null==a.remainingFraction)continue;let b=Number(a.remainingFraction)||0,c=Math.round(1e3*b),d=Math.max(0,1e3-c);k[a.modelId]={used:d,total:1e3,resetAt:H(a.resetTime),remainingPercentage:100*b,unlimited:!1}}return{plan:g,quotas:k}}catch(a){return{message:`Gemini CLI error: ${a.message}`}}}function O(a){return"string"==typeof a?a.trim()||null:a&&"object"==typeof a&&"string"==typeof a.id&&a.id.trim()||null}async function P(a,b=null){let c=new AbortController,f=setTimeout(()=>c.abort(),1e4);try{let f=await (0,e.proxyAwareFetch)("https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/json"},body:JSON.stringify({metadata:d.Cn}),signal:c.signal},b);if(!f.ok)return null;return await f.json()}catch{return null}finally{clearTimeout(f)}}async function Q(a,b,c,d){let f=null;for(let g of A.quotaApiHosts){let h=new AbortController,i=setTimeout(()=>h.abort(),1e4);try{let i=await (0,e.proxyAwareFetch)(`${g}${a}`,{method:"POST",headers:{Authorization:`Bearer ${b}`,"User-Agent":A.quotaUserAgent,"Content-Type":"application/json","x-request-source":"local"},body:JSON.stringify(c||{}),signal:h.signal},d);if(i.ok||401===i.status||403===i.status)return{response:i,host:g};f=Error(`Antigravity API error: ${i.status}`)}catch(a){f=a}finally{clearTimeout(i)}}if(f)throw f;throw Error("Antigravity API unavailable")}async function R(a,b,c=null){try{let d,e=O(b?.projectId),f=await T(a,c),g=e||O(f?.cloudaicompanionProject);try{d=await Q(A.fetchAvailableModelsPath,a,g?{project:g}:{},c)}catch(a){return{message:`Antigravity quota unavailable: ${a.message}. Chat may still work.`}}let h=d.response;if(401===h.status){let a=await S(b,c);if(a)return{accountDead:!0,message:`Antigravity account ${a}. Reconnect won't help \u2014 recreate the account.`,quotas:{}};return{message:"Antigravity quota API authentication expired. Chat may still work.",quotas:{}}}if(403===h.status)return{message:"Antigravity quota API access forbidden (tier may not expose quota). Chat may still work.",quotas:{}};if(!h.ok)throw Error(`Antigravity API error: ${h.status}`);let i=await h.json(),j=new Map;try{let b=await Q(A.retrieveUserQuotaPath,a,g?{project:g}:{},c);if(b.response.ok){let a=await b.response.json();if(Array.isArray(a.buckets))for(let b of a.buckets){let a=String(b.modelId||"").trim();a&&j.set(a,b)}}}catch{}let k={};if(i.models)for(let[a,b]of Object.entries(i.models)){if(b.isInternal||!B.includes(a))continue;let c=j.get(a),d=c||b.quotaInfo;if(!d)continue;let e=Number(d.remainingFraction)||0,f=100*e,g=Math.round(1e3*e),h=Math.max(0,1e3-g);k[a]={used:h,total:1e3,resetAt:H(d.resetTime),remainingPercentage:f,unlimited:!1,displayName:b.displayName||a,quotaSource:c?"retrieveUserQuota":"fetchAvailableModels"}}return{plan:f?.currentTier?.name||"Unknown",quotas:k,subscriptionInfo:f}}catch(a){return console.error("[Antigravity Usage] Error:",a.message,a.cause),{message:`Antigravity error: ${a.message}`}}}async function S(a,b=null){let c=a?.refreshToken;if(!c)return null;try{let a,d=new AbortController,f=setTimeout(()=>d.abort(),1e4);try{a=await (0,e.proxyAwareFetch)(A.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:A.clientId,client_secret:A.clientSecret,refresh_token:c,grant_type:"refresh_token"}),signal:d.signal},b)}finally{clearTimeout(f)}if(a.ok)return null;let g=await a.json().catch(()=>({}));if("invalid_grant"===g.error){let a=(g.error_description||"").toLowerCase();if(a.includes("deleted"))return"has been deleted";if(a.includes("disabled")||a.includes("suspend"))return"is disabled/suspended";return"authorization was revoked"}return null}catch{return null}}async function T(a,b=null){let c=new AbortController,f=setTimeout(()=>c.abort(),1e4);try{let f=await (0,e.proxyAwareFetch)(A.loadProjectApiUrl,{method:"POST",headers:{Authorization:`Bearer ${a}`,"User-Agent":A.userAgent,"Content-Type":"application/json","x-request-source":"local"},body:JSON.stringify({metadata:d.Cn,mode:1}),signal:c.signal},b);if(!f.ok)return null;return await f.json()}catch(a){return console.error("[Antigravity Subscription] Error:",a.message),null}finally{clearTimeout(f)}}async function U(a,b=null){try{let c=await (0,e.proxyAwareFetch)("https://api.anthropic.com/api/oauth/usage",{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-beta":"oauth-2025-04-20","anthropic-version":C}},b);if(c.ok){let a=await c.json(),b={},d=a=>a&&"object"==typeof a&&"number"==typeof a.utilization,e=a=>{let b=a.utilization,c=Math.max(0,100-b);return{used:b,total:100,remaining:c,remainingPercentage:c,resetAt:H(a.resets_at),unlimited:!1}};for(let[c,f]of(d(a.five_hour)&&(b["session (5h)"]=e(a.five_hour)),d(a.seven_day)&&(b["weekly (7d)"]=e(a.seven_day)),Object.entries(a)))if(c.startsWith("seven_day_")&&"seven_day"!==c&&d(f)){let a=c.replace("seven_day_","");b[`weekly ${a} (7d)`]=e(f)}return{plan:"Claude Code",extraUsage:a.extra_usage??null,quotas:b}}return console.warn(`[Claude Usage] OAuth endpoint returned ${c.status}, falling back to legacy`),await V(a,b)}catch(a){return{message:`Claude connected. Unable to fetch usage: ${a.message}`}}}async function V(a,b=null){try{let c=await (0,e.proxyAwareFetch)("https://api.anthropic.com/v1/settings",{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":C}},b);if(c.ok){let d=await c.json();if(d.organization_id){let c=await (0,e.proxyAwareFetch)("https://api.anthropic.com/v1/organizations/{org_id}/usage".replace("{org_id}",d.organization_id),{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":C}},b);if(c.ok){let a=await c.json();return{plan:d.plan||"Unknown",organization:d.organization_name,quotas:a}}}return{plan:d.plan||"Unknown",organization:d.organization_name,message:"Claude connected. Usage details require admin access."}}return{message:"Claude connected. Usage API requires admin permissions."}}catch(a){return{message:`Claude connected. Unable to fetch usage: ${a.message}`}}}function W(a,b=0){if("number"==typeof a&&Number.isFinite(a))return a;if("string"==typeof a&&a.trim()){let b=Number(a);if(Number.isFinite(b))return b}return b}function X(a){if(!a)return null;let b=a instanceof Date?a:new Date("number"==typeof a&&a<1e12?1e3*a:a);return Number.isFinite(b.getTime())?b.toISOString():null}function Y(a){return!a||"object"!=typeof a||Array.isArray(a)?null:a.rate_limit&&"object"==typeof a.rate_limit?a.rate_limit:a}function Z(a,b){let c=W(a?.limit_window_seconds??a?.limitWindowSeconds??a?.window_seconds??a?.windowSeconds,null);return null===c||c<=0?b:c<=86400?"session":c<=1209600?"weekly":c<=3888e3?"monthly":b}function $(a){let b=Math.max(0,Math.min(100,W(a?.used_percent??a?.percent_used,0)));return{used:b,total:100,remaining:Math.max(0,100-b),resetAt:H(a?.reset_at??a?.resets_at??a?.resetAt??null),unlimited:!1}}function _(a,b,c){let d=Y(c);if(!d)return!1;let e=d.primary_window||d.primary||c.primary_window||c.primary,f=d.secondary_window||d.secondary||c.secondary_window||c.secondary,g=!1;if(e){let c=Z(e,"session");a[b?`${b}_${c}`:c]=$(e),g=!0}if(f){let c=Z(f,"weekly");a[b?`${b}_${c}`:c]=$(f),g=!0}return g}async function aa(a,b=null){try{let c=await (0,e.proxyAwareFetch)("https://chatgpt.com/backend-api/wham/usage",{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}},b);if(!c.ok)return{message:`Codex connected. Usage API temporarily unavailable (${c.status}).`};let d=await c.json(),f=d.rate_limit||d.rate_limits||d.rate_limits_by_limit_id?.codex||{},g=function(a){if(a.code_review_rate_limit||a.review_rate_limit)return a.code_review_rate_limit||a.review_rate_limit;let b=a.rate_limits_by_limit_id;return b&&"object"==typeof b&&!Array.isArray(b)?b.code_review||b.codex_review||b.review||null:(Array.isArray(a.additional_rate_limits)?a.additional_rate_limits:[]).find(a=>{let b=String(a?.limit_name||a?.metered_feature||a?.id||"").toLowerCase();return"code_review"===b||"codex_review"===b||"review"===b||b.includes("review")})||null}(d),h=Math.max(0,W(d.rate_limit_reset_credits?.available_count,0)),i={};return _(i,"",f),_(i,"review",g),{plan:d.plan_type||d.summary?.plan||"unknown",limitReached:Y(f)?.limit_reached||!1,reviewLimitReached:Y(g)?.limit_reached||!1,resetCredits:{availableCount:h},quotas:i}}catch(a){throw Error(`Failed to fetch Codex usage: ${a.message}`)}}async function ab(a,b=null,c=null){if(!a)throw Error("No Codex access token available. Please re-authorize the connection.");let d={Authorization:`Bearer ${a}`,Accept:"application/json","OpenAI-Beta":"codex-1",originator:"codex_cli_rs"},f=c?.workspaceId||c?.accountId||c?.chatgptAccountId||null;f&&(d["ChatGPT-Account-ID"]=f);let g=await (0,e.proxyAwareFetch)("https://chatgpt.com/backend-api/wham/rate-limit-reset-credits",{method:"GET",headers:d},b),h=await g.json().catch(()=>null);if(!g.ok)throw Error(h?.message||h?.error||h?.detail||`Codex reset credits API unavailable (${g.status}).`);let i=Array.isArray(h?.credits)?h.credits:[];return{availableCount:Math.max(0,W(h?.available_count??h?.availableCount,0)),credits:i.map(a=>({status:String(a?.status||"unknown"),grantedAt:X(a?.granted_at??a?.grantedAt),expiresAt:X(a?.expires_at??a?.expiresAt)}))}}async function ac(a,b,c=null){let d;if(!a)throw Error("No Codex access token available. Please re-authorize the connection.");if(!b||"string"!=typeof b)throw Error("A redeem request id is required to consume a Codex reset credit.");let f=null;try{d=await (0,e.proxyAwareFetch)("https://chatgpt.com/backend-api/wham/rate-limit-reset-credits/consume",{method:"POST",headers:{Authorization:`Bearer ${a}`,Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify({redeem_request_id:b})},c);let g=await d.text();f=g?JSON.parse(g):null}catch(a){throw Error(`Failed to consume Codex reset credit: ${a.message}`)}let g=f?.code||null,h=W(f?.windows_reset,0);return{ok:d.ok&&("reset"===g||h>0),noCredit:d.ok&&"no_credit"===g,status:d.status,code:g,windowsReset:h,message:f?.message||null,raw:f}}async function ad(a,b,c=null){let d=b?.authMethod||"builder-id",f="api_key"===d,g={...f?{tokentype:"API_KEY"}:{},..."external_idp"===d?{TokenType:"EXTERNAL_IDP"}:{}},h=f?b?.profileArn||"":b?.profileArn||"arn:aws:codewhisperer:us-east-1:638616132270:profile/AAAACCCCXXXX",i=new URLSearchParams({isEmailRequired:"true",origin:"AI_EDITOR",resourceType:"AGENTIC_REQUEST"}),j=!1,k=[];for(let b of[{name:"codewhisperer-get",run:async()=>(0,e.proxyAwareFetch)(`https://codewhisperer.us-east-1.amazonaws.com/getUsageLimits?${i.toString()}`,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json","x-amz-user-agent":"aws-sdk-js/1.0.0 KiroIDE-1.0.138","user-agent":"aws-sdk-js/1.0.0 KiroIDE-1.0.138",...g}},c)},{name:"codewhisperer-post",run:async()=>(0,e.proxyAwareFetch)("https://codewhisperer.us-east-1.amazonaws.com",{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/x-amz-json-1.0","x-amz-target":"AmazonCodeWhispererService.GetUsageLimits",Accept:"application/json",...g},body:JSON.stringify({origin:"AI_EDITOR",...h?{profileArn:h}:{},resourceType:"AGENTIC_REQUEST"})},c)},{name:"q-get",run:async()=>{let b=new URLSearchParams({origin:"AI_EDITOR",...h?{profileArn:h}:{},resourceType:"AGENTIC_REQUEST"});return(0,e.proxyAwareFetch)(`https://q.us-east-1.amazonaws.com/getUsageLimits?${b}`,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json",...g}},c)}}])try{let a=await b.run();if(!a.ok){let c=await a.text().catch(()=>"");(401===a.status||403===a.status)&&(j=!0),k.push(`${b.name}:${a.status}${c?`:${c}`:""}`);continue}let c=await a.json();return function(a){let b=a.usageBreakdownList||[],c={},d=H(a.nextDateReset||a.resetDate);return b.forEach(a=>{let b=a.resourceType?.toLowerCase()||"unknown",e=a.currentUsageWithPrecision||0,f=a.usageLimitWithPrecision||0;if(c[b]={used:e,total:f,remaining:f-e,resetAt:d,unlimited:!1},a.freeTrialInfo){let e=a.freeTrialInfo.currentUsageWithPrecision||0,f=a.freeTrialInfo.usageLimitWithPrecision||0;c[`${b}_freetrial`]={used:e,total:f,remaining:f-e,resetAt:H(a.freeTrialInfo.freeTrialExpiry||d),unlimited:!1}}}),{plan:a.subscriptionInfo?.subscriptionTitle||"Kiro",quotas:c}}(c)}catch(a){k.push(`${b.name}:${a.message}`)}return j&&"idc"===d?{message:"Kiro quota API is unavailable for the current AWS IAM Identity Center session. Chat may still work. If this persists after renewing your session, reconnect Kiro.",quotas:{}}:j&&("google"===d||"github"===d)?{message:"Kiro quota API authentication expired. Chat may still work.",quotas:{}}:j?{message:"Kiro quota API rejected the current token. Chat may still work.",quotas:{}}:{message:k.length>0?`Unable to fetch Kiro usage right now. (${k[k.length-1]})`:"Unable to fetch Kiro usage right now.",quotas:{}}}async function ae(a,b){try{if(!b?.resourceUrl)return{message:"Qwen connected. No resource URL available."};return{message:"Qwen connected. Usage tracked per request."}}catch(a){return{message:"Unable to fetch Qwen usage."}}}async function af(a){try{return{message:"iFlow connected. Usage tracked per request."}}catch(a){return{message:"Unable to fetch iFlow usage."}}}async function ag(a,b,c=null){if(!a)return{message:"GLM API key not available."};let d=y["glm-cn"===b?"china":"international"];try{let b=await (0,e.proxyAwareFetch)(d,{headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}},c);if(!b.ok){if(401===b.status)return{message:"GLM API key invalid or expired."};return{message:`GLM quota API error (${b.status}).`}}let f=await b.json(),g=f?.data&&"object"==typeof f.data?f.data:{},h=Array.isArray(g.limits)?g.limits:[],i={};for(let a of h){if(!a||"TOKENS_LIMIT"!==a.type)continue;let b=Number(a.percentage)||0,c=Number(a.nextResetTime)||0,d=Math.max(0,100-b);i.session={used:b,total:100,remaining:d,remainingPercentage:d,resetAt:c>0?new Date(c).toISOString():null,unlimited:!1}}let j="string"==typeof g.level?g.level:"";return{plan:j?j.charAt(0).toUpperCase()+j.slice(1).toLowerCase():"Unknown",quotas:i}}catch(a){return{message:`GLM error: ${a.message}`}}}function ah(a,b,c){return a&&"object"==typeof a?a[b]??a[c]??null:null}function ai(a,b,c){if(!a||"object"!=typeof a)return null;let d=a[b]??a[c];if(null==d)return null;let e=Number(d);return Number.isFinite(e)?Math.max(0,Math.min(100,e)):null}function aj(a){return Math.max(0,Number(ah(a,"current_interval_total_count","currentIntervalTotalCount"))||0)}function ak(a){return Math.max(0,Number(ah(a,"current_weekly_total_count","currentWeeklyTotalCount"))||0)}function al(a){return!!(aj(a)>0||ak(a)>0)||null!==ai(a,"current_interval_remaining_percent","currentIntervalRemainingPercent")||null!==ai(a,"current_weekly_remaining_percent","currentWeeklyRemainingPercent")}function am(a,b,c,d,e,f,g,h,i,j){let k=d(c),l=ai(c,g,h);if(k<=0&&null===l)return;let m=Math.max(0,Number(ah(c,e,f))||0),n=k,o=m;k<=0&&(n=100,o=j?Math.round(l/100*n):Math.round(n*(1-l/100))),a[b]=function(a,b,c,d,e=null){var f,g,h;let i=Math.max(0,a),j=d?Math.max(i-b,0):Math.min(Math.max(0,b),i),k=Math.max(i-j,0),l=(f=e,g=k,h=i,null!=f&&Number.isFinite(f)?Math.max(0,Math.min(100,f)):h>0?Math.max(0,Math.min(100,g/h*100)):0);return{used:j,total:i,remaining:k,remainingPercentage:l,resetAt:c,unlimited:!1}}(n,o,function(a,b,c,d,e,f){let g=Number(ah(a,c,d))||0;return g>0?new Date(b+g).toISOString():H(ah(a,e,f))}(c,...i),j,l)}async function an(a,b,c=null){if(!a)return{message:"MiniMax API key not available."};let d=z[b]||[],f="";for(let b=0;b<d.length;b+=1){let g=d[b],h=b<d.length-1;try{let b=await (0,e.proxyAwareFetch)(g,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json","Content-Type":"application/json"}},c),d=await b.text(),i={};if(d)try{i=JSON.parse(d)}catch{i={}}let j=(i?.base_resp??i?.baseResp)||{},k=Number(j.status_code??j.statusCode)||0,l=String(j.status_msg??j.statusMsg??"").trim(),m=`${l} ${d}`.trim(),n=/token plan|coding plan|invalid api key|invalid key|unauthorized|inactive/i;if(401===b.status||403===b.status||1004===k||n.test(m))return{message:"MiniMax API key invalid or inactive. Use an active Token/Coding Plan key."};if(!b.ok){if(f=`MiniMax usage endpoint error (${b.status})`,(404===b.status||405===b.status||b.status>=500)&&h)continue;return{message:`MiniMax connected. ${f}`}}if(0!==k)return{message:`MiniMax connected. ${l||"Upstream quota API error"}`};let o=i?.model_remains??i?.modelRemains,p=(Array.isArray(o)?o:[]).filter(al);if(0===p.length)return{message:"MiniMax connected. No quota data was returned."};let q=Date.now(),r=g.includes("/coding_plan/remains"),s={};for(let a of p){let b=function(a){let b=String(ah(a,"model_name","modelName")||"").trim();return b?"MiniMax-M*"===b||"general"===b?"M-series":b.replace(/[_-]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,a=>a.toUpperCase()).replace(/\bTo\b/g,"to").replace(/\bTts\b/g,"TTS").replace(/\bHd\b/g,"HD"):"MiniMax"}(a);am(s,`${b} (5h)`,a,aj,"current_interval_usage_count","currentIntervalUsageCount","current_interval_remaining_percent","currentIntervalRemainingPercent",[q,"remains_time","remainsTime","end_time","endTime"],r),am(s,`${b} (7d)`,a,ak,"current_weekly_usage_count","currentWeeklyUsageCount","current_weekly_remaining_percent","currentWeeklyRemainingPercent",[q,"weekly_remains_time","weeklyRemainsTime","weekly_end_time","weeklyEndTime"],r)}if(0===Object.keys(s).length)return{message:"MiniMax connected. Unable to extract quota usage."};return{quotas:s}}catch(a){if(f=a.message,!h)break}}return{message:f?`MiniMax connected. Unable to fetch usage: ${f}`:"MiniMax connected. Unable to fetch usage."}}async function ao(a,b=null,d=null){if(!a)return{message:"AutoClaw usage unavailable: no access token"};try{let{AUTOCLAW_WALLET_ENDPOINT:f,buildAutoClawWalletHeaders:g}=await Promise.resolve().then(c.bind(c,42693)),h=await (0,e.proxyAwareFetch)(f,{method:"GET",headers:g(a)},b);if(!h.ok)return{message:`AutoClaw connected. Usage fetch returned ${h.status}.`};let i=await h.json().catch(()=>null);if(!i||0!==i.code)return{message:"AutoClaw connected. Unable to read balance."};let j=Number(i.data?.total_balance),k=Number.isFinite(j)?j:0,l=k;try{if(d?.id){let{getQuotaSnapshot:a}=await Promise.resolve().then(c.bind(c,89718)),b=await a(d.id),e=Number(b?.usage?.quotas?.points?.total)||0,f=Number(b?.usage?.quotas?.points?.remaining);l=Math.max(e,k,Number.isFinite(f)?f:0)}}catch{}let m=Math.max(0,l-k);return{quotas:{points:{total:l,used:m,remaining:k,unit:"points",resetAt:null}},totalUsagePercentage:l>0?Math.round(m/l*100):0,isQuotaExceeded:k<=0}}catch(a){return{message:`AutoClaw connected. Unable to fetch balance: ${a.message}`}}}async function ap(a,b=null,c=null){let d=String(a||"").trim(),f=String(b?.accountId||"").trim();if(!d)return{message:"Cloudflare API token not available."};if(!f)return{message:"Cloudflare account ID missing. Re-import or edit the connection."};try{let a=await (0,e.proxyAwareFetch)("https://api.cloudflare.com/client/v4/user/tokens/verify",{method:"GET",headers:{Authorization:`Bearer ${d}`,Accept:"application/json"}},c);if(401===a.status||403===a.status)return{message:"Cloudflare API token invalid or expired. Re-import the account."};if(!a.ok){let b=await a.text().catch(()=>"");return{message:`Cloudflare token verify failed (${a.status})${b?`: ${b.slice(0,160)}`:""}`}}let g=await a.json().catch(()=>null),h=g?.result?.status||(g?.success?"active":"unknown"),i=b?.accountName||"";try{let a=await (0,e.proxyAwareFetch)(`https://api.cloudflare.com/client/v4/accounts/${encodeURIComponent(f)}`,{method:"GET",headers:{Authorization:`Bearer ${d}`,Accept:"application/json"}},c);if(a?.ok){let b=await a.json().catch(()=>null);i=b?.result?.name||i}}catch{}let j=f.length>10?`${f.slice(0,8)}…`:f;return{plan:i?`Workers AI \xb7 ${i}`:`Workers AI \xb7 ${j}`,quotas:{"Workers AI":{used:0,total:0,remainingPercentage:100,resetAt:null,unlimited:!0}},message:h&&"active"!==h?`Token status: ${h}. Cloudflare does not publish remaining free-tier neurons via API.`:"Token valid. CF does not expose remaining free-tier neurons via API — model rate limits still apply."}}catch(a){return{message:`Cloudflare usage error: ${a.message}`}}}function aq(a,b=0){return null==a?b:"object"==typeof a&&!Array.isArray(a)&&"val"in a?W(a.val,b):W(a,b)}function ar({used:a,total:b,resetAt:c,unlimited:d=!1}){let e=Math.max(0,W(b,0)),f=Math.max(0,W(a,0));if(d||0===e)return{used:f,total:0,remainingPercentage:100*!!d,resetAt:c||null,unlimited:!0};let g=Math.max(0,e-f);return{used:f,total:e,remainingPercentage:g/e*100,resetAt:c||null,unlimited:!1}}async function as(a,b=null,c=null){if(!a)return{message:"Grok CLI access token not available."};let d=function(a,b={}){let c=b||{},d={Authorization:`Bearer ${a}`,Accept:"application/json","User-Agent":"grok-pager/0.2.93 grok-shell/0.2.93 (linux; x86_64)","x-xai-token-auth":"xai-grok-cli","x-grok-client-identifier":"grok-pager","x-grok-client-version":"0.2.93"},e=c.email,f=c.userId||c.principalId;return e&&(d["x-email"]=e),f&&(d["x-userid"]=f),d}(a,b);try{let[a,b]=await Promise.all([(0,e.proxyAwareFetch)("https://cli-chat-proxy.grok.com/v1/billing?format=credits",{method:"GET",headers:d},c),(0,e.proxyAwareFetch)("https://cli-chat-proxy.grok.com/v1/user?include=subscription",{method:"GET",headers:d},c).catch(()=>null)]);if(401===a.status||403===a.status)return{message:"Grok CLI authentication expired. Please re-authorize."};if(!a.ok){let b=await a.text().catch(()=>""),c=b?`: ${b.slice(0,200)}`:"";return{message:`Grok CLI billing API error (${a.status})${c}`}}let f=await a.json().catch(()=>null);if(!f||"object"!=typeof f)return{message:"Grok CLI billing response was not JSON."};let g=null;b?.ok&&(g=await b.json().catch(()=>null));let h=function(a,b=null){let c,d=a&&"object"==typeof a?a:{},e=d.config&&"object"==typeof d.config&&!Array.isArray(d.config)?d.config:d,f=H(e.billingPeriodEnd)||H(e.currentPeriod?.end)||H(d.billingPeriodEnd)||null,g={},h=aq(e.onDemandCap??d.onDemandCap,NaN),i=aq(e.onDemandUsed??d.onDemandUsed,NaN);if(Number.isFinite(h)&&h>0){let a=Number.isFinite(i)?Math.max(0,i):0;g["On-demand"]=ar({used:a,total:h,resetAt:f})}let j=aq(e.monthlyLimit??d.monthlyLimit,NaN),k=aq(e.used??d.used,NaN);Number.isFinite(j)&&j>0&&(g.Monthly=ar({used:Number.isFinite(k)?Math.max(0,k):0,total:j,resetAt:f}));let l=aq(e.prepaidBalance??d.prepaidBalance,NaN);return Number.isFinite(l)&&l>0&&(g.Prepaid={used:0,total:l,remainingPercentage:100,resetAt:null,unlimited:!1}),(b?.hasGrokCodeAccess===!0||e?.isUnifiedBillingUser===!0)&&(g["Grok Code"]={used:0,total:0,remainingPercentage:100,resetAt:f,unlimited:!0}),0===Object.keys(g).length&&(g.Included={used:0,total:0,remainingPercentage:100,resetAt:f,unlimited:!0}),{plan:(c="string"==typeof b?.subscriptionTier?b.subscriptionTier.trim():"")?c.replace(/[_-]+/g," ").replace(/\b\w/g,a=>a.toUpperCase()):b?.hasGrokCodeAccess===!0?"Grok Code":(e?.isUnifiedBillingUser,"Grok Build"),quotas:g,periodEnd:f}}(f,g);if(!h.quotas||0===Object.keys(h.quotas).length)return{plan:h.plan,message:"Grok Build connected, but no credit allotment was returned. Free promo may be exhausted — upgrade at https://grok.com/supergrok or add credits at https://grok.com/?_s=usage.",quotas:{}};return{plan:h.plan,quotas:h.quotas}}catch(a){return{message:`Grok CLI usage error: ${a.message}`}}}function at(a,b=0,c=""){if(!a||"object"!=typeof a||b>4)return null;let d=[];for(let[e,f]of Object.entries(a)){let a=e.toLowerCase();if(f&&"object"==typeof f&&!Array.isArray(f)){let a=at(f,b+1,c?`${c}.${e}`:e);a&&d.push(a);continue}if("number"!=typeof f&&"string"!=typeof f)continue;let g=W(f,NaN);Number.isFinite(g)&&/(remaining|balance|credit|quota|limit|allowance|cap|used|spent|consumed)/i.test(a)&&d.push({key:c?`${c}.${e}`:e,name:e,value:g,kind:a})}return d.length?d:null}function au(a){if(!a?.length)return null;let b=b=>a.find(a=>b.test(a.kind)||b.test(a.name)),c=b(/remaining|balance|credit(?!s_used)/i),d=b(/limit|cap|allowance|total|quota(?!_used)/i),e=b(/used|spent|consumed/i);if(d&&Number(d.value)>0){let a=e?Math.max(0,Number(e.value)):c?Math.max(0,Number(d.value)-Number(c.value)):0,b=Math.max(0,Number(d.value)-a);return{used:a,total:Number(d.value),remainingPercentage:b/Number(d.value)*100,resetAt:null,unlimited:!1}}if(c&&Number(c.value)>=0){let a=Number(c.value);return{used:0,total:a>0?a:1,remainingPercentage:100*(a>0),resetAt:null,unlimited:!1}}return null}async function av(a,b="cline",d=null){if(!a)return{message:"Cline access token not available."};try{let{buildClineHeaders:f}=await Promise.resolve().then(c.bind(c,15626)),g=f(a,{Accept:"application/json"}),h=await (0,e.proxyAwareFetch)("https://api.cline.bot/api/v1/users/me",{method:"GET",headers:g},d);if(401===h.status||403===h.status)return{message:"Cline authentication expired. Please re-authorize."};if(!h.ok)return{message:`Cline user API error (${h.status})`};let i=await h.json().catch(()=>null);if(!i||"object"!=typeof i)return{message:"Cline user response was not JSON."};let j=i.data&&"object"==typeof i.data?i.data:i,k=j.email||j.user?.email||null,l=j.plan||j.subscription?.plan||j.subscription?.name||j.organization?.plan||j.organizations?.[0]?.plan||("clinepass"===b?"ClinePass":"Cline"),m=at(j)||[],n=au(m),o={};n&&(o.Credits=n);let p=j.organizations||j.organization;if(!Object.keys(o).length&&p&&(o.Account={used:0,total:0,remainingPercentage:100,resetAt:null,unlimited:!0}),!Object.keys(o).length)return{plan:"string"==typeof l?l:"Cline",email:k,message:"Cline connected. No credit allotment was returned by the account API.",quotas:{}};return{plan:"string"==typeof l?l:"Cline",email:k,quotas:o}}catch(a){return{message:`Cline usage error: ${a.message}`}}}async function aw(a,b=null,c=null){if(!a)return{message:"Kimchi access token not available."};try{let d=await (0,e.proxyAwareFetch)("https://app.kimchi.dev/api/v1/me",{method:"GET",headers:{Accept:"application/json",Authorization:`Bearer ${a}`,"User-Agent":"kimchi/0.1.50"}},c);if(401===d.status||403===d.status)return{message:"Kimchi authentication expired. Please re-authorize."};if(!d.ok)return{message:`Kimchi user API error (${d.status})`};let f=await d.json().catch(()=>null);if(!f||"object"!=typeof f)return{message:"Kimchi user response was not JSON."};let g=f.email||b?.username||null,h=f.plan||f.tier||f.subscription?.name||"Kimchi",i=at(f)||[],j=au(i),k={};return j?k.Credits=j:k.Account={used:0,total:0,remainingPercentage:100,resetAt:null,unlimited:!0},{plan:"string"==typeof h?h:"Kimchi",email:g,quotas:k}}catch(a){return{message:`Kimchi usage error: ${a.message}`}}}async function ax(a,b=null,c=null){if(!a)return{message:"xAI token not available."};try{let d={Authorization:`Bearer ${a}`,Accept:"application/json"},f=0,g=null,h=null;for(let a of["https://api.x.ai/v1/api-key","https://api.x.ai/v1/models"]){let b=await (0,e.proxyAwareFetch)(a,{method:"GET",headers:d},c);if(f=b.status,401===b.status||403===b.status)return{message:"xAI authentication expired. Please re-authorize or update the API key."};if(b.ok){g=await b.json().catch(()=>null),h=a;break}}if(!g)return{message:`xAI API error (${f||"unknown"})`};let i=at(g)||[],j=au(i),k={};j?k.Credits=j:(Array.isArray(g?.data)&&g.data.length,k.API={used:0,total:0,remainingPercentage:100,resetAt:null,unlimited:!0});let l=b?.email||null,m=g.name||g.api_key_name||g.team?.name||(h?.includes("api-key")?"xAI API Key":"xAI");return{plan:"string"==typeof m?m:"xAI",email:l,quotas:k}}catch(a){return{message:`xAI usage error: ${a.message}`}}}async function ay(a,b=null){if(!a)return{message:"Cursor access token not available."};let c=b?.plan||b?.membershipType||"Cursor",d=b?.email||null;try{let b=String(a).split(".");if(3===b.length){let a=b[1].replace(/-/g,"+").replace(/_/g,"/"),e=a+"=".repeat((4-a.length%4)%4),f=JSON.parse(Buffer.from(e,"base64").toString("utf8"));d=d||f.email||f.preferred_username||null,c=f.plan||f.subscription||f.membershipType||f.tier||c}}catch{}return{plan:"string"==typeof c?c:"Cursor",email:d,quotas:{Session:{used:0,total:0,remainingPercentage:100,resetAt:null,unlimited:!0}}}}},39326:(a,b,c)=>{"use strict";c.d(b,{B:()=>h,p:()=>g});var d=c(71998);function e(a){return null==a?"":String(a).trim()}let f=new Map;function g(a,b,c){if(!a||0===a.length)return null;if(1===a.length)return a[0];if("round-robin"===b){let b=f.get(c)||{index:-1};return b.index=(b.index+1)%a.length,f.set(c,b),a[b.index]}return"random"===b?a[Math.floor(Math.random()*a.length)]:a[0]}async function h(a={}){try{let b=e(a?.proxyPoolId),c="__none__"===b?"":b,f=function(a={}){let b=a?.connectionProxyEnabled===!0,c=e(a?.connectionProxyUrl);return{connectionProxyEnabled:b,connectionProxyUrl:c,connectionNoProxy:e(a?.connectionNoProxy)}}(a);if(c){let a=await (0,d.hr)(c),b=e(a?.proxyUrl),f=e(a?.noProxy);if(a&&!0===a.isActive&&b){if("vercel"===a.type||"cloudflare"===a.type||"deno"===a.type)return{source:a.type,proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:f,strictProxy:!0===a.strictProxy,vercelRelayUrl:b};return{source:"pool",proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!0,connectionProxyUrl:b,connectionNoProxy:f,strictProxy:!0===a.strictProxy}}}if(f.connectionProxyEnabled&&f.connectionProxyUrl)return{source:"legacy",proxyPoolId:c||null,proxyPool:null,...f};return{source:"none",proxyPoolId:c||null,proxyPool:null,...f}}catch(a){return console.error("[resolveConnectionProxyConfig] Failed to resolve proxy config:",a),{source:"error",proxyPoolId:null,proxyPool:null,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:"",strictProxy:!1}}}},52060:(a,b,c)=>{"use strict";c.d(b,{A:()=>d,C:()=>e});let d="2.135.0",e=`CLI/${d} CodeBuddy/${d}`},61188:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{NS:()=>u,dg:()=>w,qX:()=>t});var e=c(48895),f=c(89718),g=c(15222),h=c(55330),i=c(8590),j=c(39326),k=c(75681),l=c(91254),m=a([e,h]);[e,h]=m.then?(await m)():m;let x=["expired","authentication","unauthorized","401","re-authorize"],y=globalThis._quotaUsageInflight??=new Map;function n(a){return a?.provider==="codex"&&!!a.providerSpecificData?.codexRefreshBlockedAt}function o(a){return String(a?.code||"invalid_refresh_token").replace(/[^a-zA-Z0-9_.:-]/g,"_").slice(0,120)||"invalid_refresh_token"}async function p(a,b){let c=new Date().toISOString(),d=o(b),e={providerSpecificData:{...a.providerSpecificData||{},codexRefreshBlockedAt:c,codexRefreshErrorCode:d},lastError:"Codex refresh token rejected; reconnect this account.",lastErrorAt:c,lastErrorType:"auth",errorCode:d,failureClass:"reauth_required"};try{return await (0,f.updateProviderConnection)(a.id,e)||{...a,...e}}catch(b){return console.warn(`[Usage] Codex refresh rejection state was not persisted: ${b.message}`),{...a,...e}}}async function q(a,b){let c=b?.permanent===!0?b:(0,i.R_)({code:o(b)}),d=await p(a,c);if(a.accessToken)return{connection:d,refreshed:!1,refreshBlocked:!0,refreshError:c};throw c}function r(a){return!!(a?.quotas&&"object"==typeof a.quotas&&Object.keys(a.quotas).length>0)}function s(a,b){return!!(a?.quotaFetchFailed===!0&&!a.accountDead&&!r(a)&&r(b?.usage))}async function t(a,b=!1,c=null){let d,e=(0,h.SB)(a.provider);if(n(a))return a.accessToken?{connection:a,refreshed:!1,refreshBlocked:!0}:q(a,(0,i.R_)({code:a.providerSpecificData.codexRefreshErrorCode||"invalid_refresh_token"}));let g={accessToken:a.accessToken,refreshToken:a.refreshToken,idToken:a.idToken,expiresAt:a.expiresAt||a.tokenExpiresAt,lastRefreshAt:a.lastRefreshAt,connectionId:a.id,providerSpecificData:a.providerSpecificData,copilotToken:a.providerSpecificData?.copilotToken,copilotTokenExpiresAt:a.providerSpecificData?.copilotTokenExpiresAt};if(!(b||e.needsRefresh(g)))return{connection:a,refreshed:!1};try{d=await e.refreshCredentials(g,console,c)}catch(b){if("codex"===a.provider&&b?.permanent===!0)return q(a,b);throw b}if("codex"===a.provider&&(0,i.jT)(d))return q(a,(0,i.R_)(d));if(!d){if(a.accessToken)return{connection:a,refreshed:!1};throw Error("Failed to refresh credentials. Please re-authorize the connection.")}let j={updatedAt:new Date().toISOString()};d.accessToken&&(j.accessToken=d.accessToken),d.refreshToken&&(j.refreshToken=d.refreshToken),d.idToken&&(j.idToken=d.idToken),d.lastRefreshAt&&(j.lastRefreshAt=d.lastRefreshAt),d.expiresIn?(j.expiresAt=new Date(Date.now()+1e3*d.expiresIn).toISOString(),j.expiresIn=d.expiresIn):d.expiresAt&&(j.expiresAt=d.expiresAt);let k={...d.providerSpecificData||{},...d.copilotToken?{copilotToken:d.copilotToken}:{},...d.copilotTokenExpiresAt?{copilotTokenExpiresAt:d.copilotTokenExpiresAt}:{}};return Object.keys(k).length>0&&(j.providerSpecificData={...a.providerSpecificData||{},...k}),await (0,f.updateProviderConnection)(a.id,j),{connection:{...a,...j,providerSpecificData:j.providerSpecificData||a.providerSpecificData},refreshed:!0}}function u(a){var b;let c;if(!a)return!1;let d=(b=a.authType,c=String(b||"").toLowerCase().trim(),"api-key"===c||"api_key"===c||"api key"===c?"apikey":c);return"oauth"===d||"apikey"===d&&k.jO.includes(a.provider)}async function v(a,b,c){let{writeCache:d=!1,force:e=!1}=b,h=await (0,f.Mc)(a);if(!h)return{error:"Connection not found",notFound:!0};if(!u(h))return{message:"Usage not available for this connection"};let i=await (0,j.B)(h.providerSpecificData),k={connectionProxyEnabled:!0===i.connectionProxyEnabled,connectionProxyUrl:i.connectionProxyUrl||"",connectionNoProxy:i.connectionNoProxy||"",vercelRelayUrl:i.vercelRelayUrl||"",strictProxy:!1},m=h,o="oauth"===m.authType;if(o){let a;try{a=await t(m,e,k)}catch(a){if("codex"===m.provider&&a?.permanent===!0)return{message:"Codex refresh token rejected; reconnect this account.",reauthRequired:!0,quotas:{}};throw a}m=a.connection}let p=await (0,g.my)(m,k);if(o&&function(a){if(!a?.message)return!1;let b=a.message.toLowerCase();return x.some(a=>b.includes(a))}(p)&&m.refreshToken&&!n(m))try{m=(await t(m,!0,k)).connection,p=await (0,g.my)(m,k)}catch(a){console.warn(`[Usage] ${m.provider}: force refresh failed: ${a.message}`)}if((d||c.writeCache)&&p&&!p.error)try{if("codebuddy"===m.provider||"codebuddy-cn"===m.provider){let a=null,b=await (0,f.Iu)(m.id,(b,c)=>{if(s(p,c)){var d;return d=p,a={...(0,l.pX)(c.usage,b),stale:!0,refreshError:d.message},{}}return{quotaUsage:(0,l.pX)(p,b)}});p=a||b?.quotaUsage||p}else{let a=await (0,f.getQuotaSnapshot)(m.id);s(p,a)?p={...a.usage,stale:!0,refreshError:p.message}:await (0,f.KK)(m.id,m.provider,p)}}catch(a){console.warn(`[QuotaCache] save failed for ${m.id}: ${a.message}`)}else if("codebuddy"===m.provider||"codebuddy-cn"===m.provider){let a=await (0,f.Mc)(m.id)||m;p=(0,l.pX)(p,a)}return p}async function w(a,b={}){let c=y.get(a);if(c||(c={active:null,queuedForce:null},y.set(a,c)),c.queuedForce)return b.writeCache&&(c.queuedForce.writeCache=!0),c.queuedForce.promise;if(c.active&&(!b.force||c.active.force))return b.writeCache&&(c.active.writeCache=!0),c.active.promise;let d=b=>{c.active===b&&(c.active=null),c.active||c.queuedForce||y.get(a)!==c||y.delete(a)};if(c.active){let e=c.active.promise,f={force:!0,writeCache:!0===b.writeCache,promise:null},g=()=>(c.queuedForce===f&&(c.queuedForce=null),c.active=f,v(a,{...b,force:!0},f));return f.promise=e.then(g,g).finally(()=>d(f)),c.queuedForce=f,f.promise}let e={force:!0===b.force,writeCache:!0===b.writeCache,promise:null};return c.active=e,e.promise=v(a,b,e).finally(()=>d(e)),e.promise}d()}catch(a){d(a)}})},71998:(a,b,c)=>{"use strict";c.d(b,{Fh:()=>d.Fh,Iu:()=>d.Iu,Kg:()=>d.Kg,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.getModelAliases,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,createProviderConnection:()=>d.iE,fK:()=>d.fK,fv:()=>d.deleteModelAlias,getProviderConnections:()=>d.getProviderConnections,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,o5:()=>d.o5,op:()=>d.op,rj:()=>d.updateProviderConnection,uL:()=>d.uL,ui:()=>d.ui,uv:()=>d.uv});var d=c(89718)},78335:()=>{},89718:(a,b,c)=>{"use strict";c.d(b,{CG:()=>d.CG,Dj:()=>d.Dj,Fh:()=>d.Fh,Iq:()=>d.Iq,Iu:()=>d.Iu,K1:()=>d.K1,KJ:()=>d.KJ,KK:()=>d.KK,Kg:()=>d.Kg,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,ME:()=>d.ME,Mc:()=>d.Mc,NR:()=>d.NR,Op:()=>d.Op,PX:()=>d.PX,Pb:()=>d.Pb,Pc:()=>d.Pc,QI:()=>d.QI,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Uv:()=>d.Uv,VT:()=>d.VT,XW:()=>d.XW,Xx:()=>d.Xx,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,dK:()=>d.dK,deleteModelAlias:()=>d.fv,ek:()=>d.ek,fK:()=>d.fK,getModelAliases:()=>d.OM,getProviderConnections:()=>d.P,getQuotaSnapshot:()=>d.LF,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,jd:()=>d.jd,mt:()=>d.mt,o5:()=>d.o5,oG:()=>d.oG,op:()=>d.op,p3:()=>d.p3,qd:()=>d.qd,r4:()=>d.r4,tV:()=>d.tV,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,uv:()=>d.uv,yF:()=>d.yF,yW:()=>d.yW,yg:()=>d.yg,zP:()=>d.zP,zY:()=>d.zY});var d=c(93999)},91254:(a,b,c)=>{"use strict";c.d(b,{CG:()=>p,QN:()=>k,US:()=>o,hN:()=>j,kt:()=>i,pX:()=>q,r_:()=>n,uF:()=>m});let d="codebuddyRuntimeExhaustedAt",e="codebuddyRuntimeExhaustedCode",f="codebuddyRuntimeRejectedAt",g="codebuddyRuntimeRejectedCode";function h(a){return a?.provider==="codebuddy"||a?.provider==="codebuddy-cn"}function i(a){return h(a)&&a.providerSpecificData?.[d]||null}function j(a){return!!i(a)}function k(a,b){return{...a||{},[d]:b,[e]:14018}}function l(a){return a?.provider!=="codebuddy-cn"?null:a.providerSpecificData?.[f]||null}function m(a){return!!l(a)}function n(a,b,c=11140){return{...a||{},[f]:b,[g]:c}}function o(a){let b={...a||{}};return delete b[d],delete b[e],b}function p(a){let b=o(a);return delete b[f],delete b[g],b}function q(a,b){if(!h(b))return a;let c=l(b),d=i(b);if(!c&&!d)return a;let e=a?.billingQuotas||a?.quotas||{};if(c)return{...a||{},message:"CodeBuddy CN chat API rejected this credential (11140); billing package balance is nominal and does not prove chat access.",billingQuotas:e,runtimeStatus:"credential_rejected",chatUsable:!1,runtimeRejectedAt:c,runtimeRejectedCode:Number(b.providerSpecificData?.[g])||11140};let f=Object.fromEntries(Object.entries(e).map(([a,b])=>{let c=Number(b?.total);return[a,{...b||{},...Number.isFinite(c)?{used:c}:{},remaining:0,remainingPercentage:0}]}));return{...a||{},message:"CodeBuddy chat API reported exhausted credits (14018); billing package balance is nominal until a chat request succeeds.",billingQuotas:e,quotas:f,runtimeStatus:"exhausted",chatUsable:!1,runtimeExhausted:!0,runtimeExhaustedAt:d,runtimeExhaustedCode:14018}}},96487:()=>{}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=4177,exports.ids=[4177],exports.modules={38160:(a,b,c)=>{c.d(b,{Ou:()=>k,eG:()=>i,gQ:()=>j});var d=c(75924);let e=new Map,f=new Map,g=null;function h(a){return"string"==typeof a?a.trim()||null:a&&"object"==typeof a&&"string"==typeof a.id&&a.id.trim()||null}async function i(a,b,c={}){if(!a||!b)return null;let d=h(c.preferredProjectId),g=e.get(a);if(g&&Date.now()-g.fetchedAt<36e5&&(!d||d===g.projectId))return g.projectId;let j=d?`${a}::${d}`:a;if(f.has(j))return f.get(j).promise;let k=new AbortController,m=(async()=>{try{let c=await l(b,k.signal,{preferredProjectId:d});if(c)return e.set(a,{projectId:c,fetchedAt:Date.now()}),c;return console.warn("[ProjectId] could not fetch projectId for connection",a.slice(0,8)),null}catch(a){return console.warn(`[ProjectId] Error fetching project ID: ${a.message}`),null}finally{f.delete(j)}})();return f.set(j,{promise:m,controller:k,startedAt:Date.now()}),m}async function j(a,b={}){if(!a)return{projectId:null,tierId:null,requiresUserProject:!1,error:"missing access token"};try{return await m(a,void 0,b)}catch(a){return{projectId:null,tierId:null,requiresUserProject:!1,error:a?.message||String(a)}}}function k(a){e.delete(a)}async function l(a,b,c={}){return(await m(a,b,c)).projectId}async function m(a,b,c={}){let e=h(c.preferredProjectId),f=await fetch(d.nZ.loadCodeAssist,{method:"POST",headers:{...d.Ic,Authorization:`Bearer ${a}`},body:JSON.stringify({metadata:d.zv}),signal:b});if(!f.ok){let a=await f.text().catch(()=>"");throw Error(`loadCodeAssist failed: HTTP ${f.status} ${a.slice(0,200)}`)}let g=await f.json(),i=function(a){if(!a)return null;if("string"==typeof a.cloudaicompanionProject){let b=a.cloudaicompanionProject.trim();if(b)return b}if(a.cloudaicompanionProject&&"object"==typeof a.cloudaicompanionProject){let b=a.cloudaicompanionProject.id;if("string"==typeof b&&b.trim())return b.trim()}return null}(g);if(i)return{projectId:i,tierId:o(g).tierId||null,requiresUserProject:!1,loadRaw:g};let j=o(g),k=j.tierId||"free-tier";if(j.userDefined)return e?{projectId:await n(a,k,b,e)||e,tierId:k,requiresUserProject:!0,loadRaw:g,error:void 0}:(console.warn("[ProjectId] GSuite/DASHER has no free-tier project from loadCodeAssist; caller should reuse a stored/peer managed project id."),{projectId:null,tierId:k,requiresUserProject:!0,loadRaw:g,error:"no managed project on account; use stored or peer projectId"});let l=await n(a,k,b,null);return{projectId:l,tierId:k,requiresUserProject:!1,loadRaw:g,error:l?void 0:"onboardUser did not return a project id"}}async function n(a,b,c,e=null){console.log(`[ProjectId] Onboarding user with tier: ${b}`+(e?` project=${e}`:""));let f={tierId:b,metadata:d.zv};e&&(f.cloudaicompanionProject=e);for(let b=1;b<=5&&!c?.aborted;b++){let g=new AbortController,h=setTimeout(()=>g.abort(),3e4),i=()=>g.abort();c?.addEventListener("abort",i);try{let c=await fetch(d.nZ.onboardUser,{method:"POST",headers:{...d.Ic,Authorization:`Bearer ${a}`},body:JSON.stringify(f),signal:g.signal});if(clearTimeout(h),!c.ok){let a=await c.text().catch(()=>"");throw Error(`onboardUser HTTP ${c.status}: ${a.slice(0,200)}`)}let i=await c.json();if(!0===i.done){let a=function(a){if(!a?.response)return null;let b=a.response.cloudaicompanionProject;if("string"==typeof b){let a=b.trim();if(a)return a}if(b&&"object"==typeof b){let a=b.id;if("string"==typeof a&&a.trim())return a.trim()}return null}(i);if(a)return console.log(`[ProjectId] Successfully onboarded, project ID: ${a}`),a;if(e)return console.log(`[ProjectId] onboard done without id; using preferred project ${e}`),e;throw Error("onboardUser done but no project_id in response")}console.log(`[ProjectId] Onboard attempt ${b}/5: not done yet, waiting...`),await new Promise(a=>setTimeout(a,2e3))}catch(a){if(clearTimeout(h),"AbortError"===a.name){if(console.warn(`[ProjectId] onboardUser attempt ${b} aborted (timeout or connection removed)`),c?.aborted)return null;continue}if(5===b)return console.warn(`[ProjectId] onboardUser failed after 5 attempts: ${a.message}`),null;console.warn(`[ProjectId] onboardUser attempt ${b} failed: ${a.message}, retrying...`),await new Promise(a=>setTimeout(a,2e3))}finally{clearTimeout(h),c?.removeEventListener("abort",i)}}return null}function o(a){let b=null,c=!1;if(a?.currentTier?.id&&"string"==typeof a.currentTier.id&&(b=a.currentTier.id.trim(),c=!!a.currentTier.userDefinedCloudaicompanionProject),Array.isArray(a?.allowedTiers)){for(let d of a.allowedTiers)if(d&&"object"==typeof d&&!0===d.isDefault&&d.id){b=String(d.id).trim(),c=!!d.userDefinedCloudaicompanionProject;break}if(!b){let d=a.allowedTiers.find(a=>a?.id==="free-tier");d?(b="free-tier",c=!!d.userDefinedCloudaicompanionProject):a.allowedTiers[0]?.id&&(b=String(a.allowedTiers[0].id).trim(),c=!!a.allowedTiers[0].userDefinedCloudaicompanionProject)}}return"free-tier"===b&&(c=!1),{tierId:b,userDefined:c}}g=setInterval(()=>{try{let a=Date.now();for(let[b,c]of e)(!c||a-c.fetchedAt>=36e5)&&e.delete(b);for(let[b,c]of f){if(!c||"number"!=typeof c.startedAt){f.delete(b);continue}if(a-c.startedAt>12e4){try{c.controller.abort()}catch(a){}f.delete(b)}}}catch(a){console.warn("[ProjectId] cleanup sweep error:",a?.message??a)}},6e5),g?.unref?.()},74177:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{PY:()=>J,exchangeTokens:()=>G,extractCodexAccountInfo:()=>s,kP:()=>F,pollForToken:()=>I,requestDeviceCode:()=>H,sO:()=>E});var e=c(48895),f=c(55511),g=c.n(f),h=c(38160),i=c(13808),j=c(92990),k=c(73159),l=c(49804),m=a([e]);e=(m.then?(await m)():m)[0];let K=null;function n(a,b){let c,d=String(a||"").trim();if(!d)throw Error(`xai discovery ${b} is empty`);try{c=new URL(d)}catch(a){throw Error(`xai discovery ${b} is invalid: ${a.message}`)}if("https:"!==c.protocol)throw Error(`xai discovery ${b} must use https: ${d}`);let e=c.hostname.toLowerCase().trim();if("x.ai"!==e&&!e.endsWith(".x.ai"))throw Error(`xai discovery ${b} host ${e} is not on x.ai`);return d}async function o(){if(K)return K;try{let a=await fetch(k.oT.discoveryUrl,{headers:{Accept:"application/json"}});if(a.ok){let b=await a.json();return K={authorizeUrl:n(b.authorization_endpoint,"authorization_endpoint"),tokenUrl:n(b.token_endpoint,"token_endpoint")}}}catch{}return K={authorizeUrl:k.oT.authorizeUrl,tokenUrl:k.oT.tokenUrl}}function p(a){if(!a||"string"!=typeof a)return;let b=a.split(".");if(3===b.length)try{let a=b[1].replace(/-/g,"+").replace(/_/g,"/"),c=(L-a.length%L)%L,d=Buffer.from(a+"=".repeat(c),"base64").toString("utf8"),e=JSON.parse(d);return e.email||e.preferred_username||e.sub||void 0}catch{return}}let L=4;function q(a){try{if(!a||"string"!=typeof a)return null;let b=a.split(".");if(3!==b.length)return null;let c=b[1].replace(/-/g,"+").replace(/_/g,"/"),d=(L-c.length%L)%L,e=c+"=".repeat(d);return JSON.parse(Buffer.from(e,"base64").toString("utf8"))}catch{return null}}function r(a){let b=q(a);if(b)return b.email||b.preferred_username||b.sub||void 0}function s(a){let b=q(a);if(!b)return{};let c=b["https://api.openai.com/auth"]||{};return{email:b.email,chatgptAccountId:c.chatgpt_account_id||b.account_id,chatgptPlanType:c.chatgpt_plan_type||b.plan_type}}async function t(a){let b=await a.text();try{return b?JSON.parse(b):{}}catch{return{error:"invalid_response",error_description:b.slice(0,500)}}}async function u(a){let b=await fetch(a.deviceCodeUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({client_id:a.clientId})}),c=await t(b);if(!b.ok)throw Error(`Codex device code request failed: ${c.error_description||c.error||b.status}`);if(!c.device_auth_id||!c.user_code)throw Error("Codex device code response is missing the device id or user code");let d=c.expires_at?Math.max(1,Math.floor((new Date(c.expires_at).getTime()-Date.now())/1e3)):900;return{...c,device_code:c.device_auth_id,verification_uri:a.deviceVerificationUrl,interval:Number.parseInt(c.interval,10)||5,expires_in:d}}async function v(a,b,c,d){let e=d?._codexUserCode||d?.userCode||d?.user_code;if(!e)return{ok:!1,data:{error:"missing_user_code",error_description:"Codex device authorization is missing the user code"}};let f=await fetch(a.deviceTokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({device_auth_id:b,user_code:e})}),g=await t(f),h=403===f.status||404===f.status||"authorization_pending"===g.error;return{ok:f.ok||h,pending:h,data:g}}function w(a,b){for(let c of b){let b=a;for(let a of c){if(null==b||"object"!=typeof b){b=void 0;break}b=b[a]}if("string"==typeof b&&b.trim())return b.trim();if("number"==typeof b)return String(b)}return null}async function x(a){let b=JSON.stringify({loginTraceID:a,login_trace_id:a}),c="no successful response";for(let a of j.SK.loginGuidanceUrls)try{let d=await fetch(a,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json","User-Agent":j.SK.userAgent},body:b});if(!d.ok){c=`${a} HTTP ${d.status}`;continue}let e=await d.json(),f=w(e,[["Result","LoginHost"],["Result","loginHost"],["Result","LoginURL"],["result","loginHost"],["data","Result","LoginHost"],["data","loginHost"],["LoginHost"],["loginHost"]]);if(f)return f;c=`${a} missing LoginHost`}catch(b){c=`${a} ${b.message}`}throw Error(`Trae GetLoginGuidance failed: ${c}`)}function y(){return[...j.SK.apiOrigins]}async function z(a,b){let c=JSON.stringify({ClientID:j.SK.clientId,RefreshToken:a,ClientSecret:j.SK.clientSecret,UserID:""}),d="no successful response";for(let e of y()){let f=`${e.replace(/\/$/,"")}${j.SK.exchangeTokenPath}`;try{let e,g={Accept:"application/json","Content-Type":"application/json","User-Agent":j.SK.userAgent};b&&(g["x-cloudide-token"]=b);let h=await fetch(f,{method:"POST",headers:g,body:c}),i=await h.text();if(!h.ok){d=`${f} HTTP ${h.status}`;continue}try{e=JSON.parse(i)}catch{d=`${f} invalid JSON`;continue}let k=w(e,[["Result","AccessToken"],["Result","accessToken"],["result","access_token"],["accessToken"]]);if(!k){let a=w(e,[["message"],["msg"],["error"],["Result","Message"]])||"missing AccessToken";d=`${f} ${a}`;continue}return{accessToken:k,refreshToken:w(e,[["Result","RefreshToken"],["result","refresh_token"],["refreshToken"]])||a,expiresIn:null,expiresAt:w(e,[["Result","ExpiresAt"],["Result","expiresAt"],["result","expires_at"],["expiresAt"]])}}catch(a){d=`${f} ${a.message}`}}throw Error(`Trae ExchangeToken failed: ${d}`)}async function A(a){for(let b of y()){let c=`${b.replace(/\/$/,"")}${j.SK.getUserInfoPath}`;try{let b=await fetch(c,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json","User-Agent":j.SK.userAgent,"x-cloudide-token":a},body:JSON.stringify({})});if(!b.ok)continue;let d=await b.json();return{email:w(d,[["Result","NonPlainTextEmail"],["Result","Email"],["Result","email"],["email"],["data","email"]]),name:w(d,[["Result","ScreenName"],["Result","Nickname"],["Result","Name"],["result","nickname"],["nickname"],["name"]]),aiRegion:w(d,[["Result","AIRegion"],["Result","aiRegion"],["aiRegion"]]),region:w(d,[["Result","Region"],["Result","region"],["region"]]),tenant:w(d,[["Result","TenantID"],["Result","tenantId"],["tenantId"]]),userId:w(d,[["Result","UserID"],["Result","userId"],["userId"]])}}catch{}}return{email:null,name:null}}let M={config:j.SK,flowType:"authorization_code",callbackPath:j.SK.callbackPath,prepareConfig:async a=>{let b=g().randomUUID(),c=await x(b);return{...a,loginTraceID:b,loginHost:c}},buildAuthUrl:(a,b,c)=>{var d;let e,f,h={plugin_version:j.SK.defaultPluginVersion,machine_id:g().randomUUID(),device_id:j.SK.defaultDeviceId,x_device_brand:"unknown",x_device_type:"unknown",x_os_version:"unknown",x_env:"",x_app_version:j.SK.defaultAppVersion,x_app_type:j.SK.defaultAppType},i=a.loginTraceID||c;return d=a.loginHost,(e=new URL(d.startsWith("http")?d:`https://${d.replace(/^\/+/,"")}`)).pathname=j.SK.authorizationPath,(f=new URLSearchParams).set("login_version","1"),f.set("auth_from","trae"),f.set("login_channel","native_ide"),f.set("plugin_version",h.plugin_version),f.set("auth_type","local"),f.set("client_id",j.SK.clientId),f.set("redirect","0"),f.set("login_trace_id",i),f.set("auth_callback_url",b),f.set("machine_id",h.machine_id),f.set("device_id",h.device_id),f.set("x_device_id",h.device_id),f.set("x_machine_id",h.machine_id),f.set("x_device_brand",h.x_device_brand),f.set("x_device_type",h.x_device_type),f.set("x_os_version",h.x_os_version),f.set("x_env",h.x_env),f.set("x_app_version",h.x_app_version),f.set("x_app_type",h.x_app_type),e.search=f.toString(),e.toString()},exchangeToken:async(a,b)=>{let c=String(b||"").trim();if(!(/[?=&]/.test(c)&&(c.includes("refreshToken")||c.includes("refresh_token"))))return{accessToken:c.replace(/^(Cloud-IDE-JWT|Bearer)\s+/i,""),refreshToken:null,expiresIn:24*j.SK.tokenLifetimeDays*3600,_authMethod:"imported"};let{refreshToken:d,cloudideToken:e}=function(a){let b=String(a||"").trim(),c=b;b.includes("?")&&(c=b.slice(b.indexOf("?")+1)),b.startsWith("#")&&(c=b.slice(1));let d=Object.fromEntries(new URLSearchParams(c)),e=a=>{for(let b of a){let a=d[b];if(a&&String(a).trim())return String(a).trim()}return null},f=e(["error","error_code","errorCode"]);if(f){let a=e(["error_description","error_desc","message"]);throw Error(a?`Trae auth failed: ${f} (${a})`:`Trae auth failed: ${f}`)}let g=e(["refreshToken","refresh_token","RefreshToken"]);if(!g)throw Error("Trae callback missing refreshToken");let h=e(["loginHost","login_host","LoginHost","host","consoleHost"]);if(!h)throw Error("Trae callback missing loginHost");let i=e(["x-cloudide-token","xCloudideToken","accessToken","access_token","token"]);return{refreshToken:g,loginHost:h,cloudideToken:i}}(c);return{...await z(d,e),_authMethod:"oauth"}},postExchange:async a=>({userInfo:await A(a.accessToken)}),mapTokens:(a,b)=>{let c,d=a.expiresIn||(a.expiresAt?Math.max(60,Number(a.expiresAt)-Math.floor(Date.now()/1e3)):24*j.SK.tokenLifetimeDays*3600),e=b?.userInfo||{},f=e.aiRegion||"US-East";return{accessToken:a.accessToken,refreshToken:a.refreshToken,expiresIn:d,email:e.email||void 0,displayName:e.name||void 0,providerSpecificData:{authMethod:a._authMethod||"oauth",aiRegion:f,region:e.region||f,tenant:e.tenant||"marscode",userId:e.userId||"",scope:(c=(f||"").toLowerCase(),"sg"===c||c.includes("singapore")?"marscode-sg":"cn"===c||c.includes("cn")||c.includes("china")?"marscode-cn":"marscode-us"),webId:"",bizUserId:"",userUniqueId:"",appLanguage:"en",appVersion:j.SK.defaultAppVersion,userRegion:"SG"===f?"SG":"US",userIdentity:"Free"}}}};async function B(a,b,c){let d=`${a.replace(/\/$/,"")}${b}`,e=await fetch(d,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json","User-Agent":j.eD.userAgent},body:JSON.stringify(c)}),f=await e.text();if(!e.ok)throw Error(`Windsurf ${b} HTTP ${e.status}: ${f.slice(0,200)}`);try{return JSON.parse(f)}catch{throw Error(`Windsurf ${b} invalid JSON`)}}async function C(a){let b=await B(j.eD.registerApiBaseUrl,j.eD.registerPath,{firebase_id_token:a}),c=w(b,[["apiKey"],["api_key"]]);if(!c)throw Error("Windsurf RegisterUser missing apiKey");let d=w(b,[["apiServerUrl"],["api_server_url"]])||j.eD.defaultApiServerUrl,e=w(b,[["name"]]);return{apiKey:c,apiServerUrl:d,name:e}}async function D(a,b){try{let c=await B(a,j.eD.oneTimeAuthPath,{firebaseIdToken:b}),d=w(c,[["authToken"],["auth_token"]]);if(!d)return{email:null,name:null};let e=await B(a,j.eD.currentUserPath,{authToken:d,includeSubscription:!0}),f=e.user||e;return{email:w(f,[["email"]]),name:w(f,[["name"]])}}catch{return{email:null,name:null}}}let N={config:j.eD,flowType:"authorization_code",callbackPath:j.eD.callbackPath,buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({response_type:"token",client_id:a.clientId,redirect_uri:b,state:c,prompt:"login",redirect_parameters_type:"query",workflow:"onboarding"});return`${a.authBaseUrl}${a.signInPath}?${d.toString()}`},exchangeToken:async(a,b,c,d,e)=>{let f=String(b||"").trim();if(!(f.includes("?")||f.includes("access_token="))){let b=f.replace(/^Bearer\s+/i,"");if(b.startsWith("sk-ws-"))return{accessToken:b,refreshToken:null,expiresIn:null,apiServerUrl:a.defaultApiServerUrl,firebaseIdToken:null,_authMethod:"imported"};let c=await C(b);return{accessToken:c.apiKey,refreshToken:null,expiresIn:null,apiServerUrl:c.apiServerUrl,firebaseIdToken:b,_authMethod:"imported"}}let{firebaseIdToken:g}=function(a,b){let c=String(a||"").trim(),d=c;c.includes("?")&&(d=c.slice(c.indexOf("?")+1)),c.startsWith("#")&&(d=c.slice(1));let e=Object.fromEntries(new URLSearchParams(d)),f=a=>{for(let b of a){let a=e[b];if(a&&String(a).trim())return String(a).trim()}return null},g=f(["error"]);if(g){let a=f(["error_description"]);throw Error(a?`Windsurf auth failed: ${g} (${a})`:`Windsurf auth failed: ${g}`)}let h=f(["access_token","token"]);if(!h)throw Error("Windsurf callback missing access_token");let i=f(["state"]);if(b&&i&&i!==b)throw Error("Windsurf callback state mismatch");return{firebaseIdToken:h}}(f,e),h=await C(g);return{accessToken:h.apiKey,refreshToken:null,expiresIn:null,apiServerUrl:h.apiServerUrl,firebaseIdToken:g,_authMethod:"oauth"}},postExchange:async a=>a.firebaseIdToken?{userInfo:await D(a.apiServerUrl,a.firebaseIdToken)}:{userInfo:{email:null,name:null}},mapTokens:(a,b)=>({accessToken:a.accessToken,refreshToken:null,expiresIn:null,email:b?.userInfo?.email||void 0,displayName:b?.userInfo?.name||void 0,providerSpecificData:{authMethod:a._authMethod||"oauth",apiServerUrl:a.apiServerUrl,firebaseIdToken:a.firebaseIdToken}})},O={config:j.RY,flowType:"authorization_code",callbackPath:"/",prepareConfig:async(a,b)=>{let c=Number(b?.nativeAppPort)||j.RY.defaultNativeAppPort,d=(0,l.le)(a,{nativeAppPort:c});return{...a,...d}},buildAuthUrl:a=>a.authUrl,exchangeToken:async(a,b,c,d)=>{let{userId:e,encryptedAccessToken:f}=(0,l.Q_)(b);return{accessToken:(0,l.Wc)(f,d),userId:e,systemId:a.systemId}},postExchange:async a=>{let b={accessToken:a.accessToken,providerSpecificData:{userId:a.userId,systemId:a.systemId}},c=null;try{c=await (0,l.qJ)(b,{config:j.RY})}catch{}let d=(0,l.k9)(b,c);return{userInfo:c,organizationId:d,email:c?.email||null,name:c?.name||c?.display_name||null}},mapTokens:(a,b)=>({accessToken:a.accessToken,refreshToken:null,expiresIn:null,email:b?.email||void 0,displayName:b?.name||void 0,providerSpecificData:{authMethod:"oauth",userId:a.userId,systemId:a.systemId,organizationId:b?.organizationId||""}})},P={trae:M,windsurf:N,zed:O,claude:{config:j.OV,flowType:"authorization_code_pkce",buildAuthUrl:(a,b,c,d)=>{let e=new URLSearchParams({code:"true",client_id:a.clientId,response_type:"code",redirect_uri:b,scope:a.scopes.join(" "),code_challenge:d,code_challenge_method:a.codeChallengeMethod,state:c});return`${a.authorizeUrl}?${e.toString()}`},exchangeToken:async(a,b,c,d,e)=>{let f=b,g="";if(f.includes("#")){let a=f.split("#");f=a[0],g=a[1]||""}let h=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({code:f,state:g||e,grant_type:"authorization_code",client_id:a.clientId,redirect_uri:c,code_verifier:d})});if(!h.ok){let a=await h.text();throw Error(`Token exchange failed: ${a}`)}return await h.json()},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope})},codex:{config:j.DI,flowType:"authorization_code_pkce",fixedPort:1455,callbackPath:"/auth/callback",requestDeviceCode:u,pollToken:v,buildAuthUrl:(a,b,c,d)=>{let e={response_type:"code",client_id:a.clientId,redirect_uri:b,scope:a.scope,code_challenge:d,code_challenge_method:a.codeChallengeMethod,...a.extraParams,state:c},f=Object.entries(e).map(([a,b])=>`${a}=${encodeURIComponent(b)}`).join("&");return`${a.authorizeUrl}?${f}`},exchangeToken:async(a,b,c,d)=>{let e=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,code:b,redirect_uri:c,code_verifier:d})});if(!e.ok){let a=await e.text();throw Error(`Token exchange failed: ${a}`)}return await e.json()},mapTokens:a=>{let b=s(a.id_token),c={accessToken:a.access_token,refreshToken:a.refresh_token,idToken:a.id_token,expiresIn:a.expires_in,lastRefreshAt:new Date().toISOString()},d=b.email||r(a.access_token);return d&&(c.email=d),(b.chatgptAccountId||b.chatgptPlanType)&&(c.providerSpecificData={chatgptAccountId:b.chatgptAccountId,chatgptPlanType:b.chatgptPlanType}),c}},xai:{config:k.oT,flowType:"authorization_code_pkce",fixedPort:k.oT.loopbackPort,callbackPath:k.oT.callbackPath,pkceVerifierBytes:k.Ue,prepareConfig:async a=>{let b=await o();return{...a,authorizeUrl:b.authorizeUrl,tokenUrl:b.tokenUrl}},buildAuthUrl:(a,b,c,d)=>{let e=g().randomBytes(16).toString("hex"),f={response_type:"code",client_id:a.clientId,redirect_uri:b,scope:a.scope,code_challenge:d,code_challenge_method:a.codeChallengeMethod,state:c,nonce:e,plan:"generic",referrer:"cli-proxy-api"},h=Object.entries(f).map(([a,b])=>`${a}=${encodeURIComponent(b)}`).join("&");return`${a.authorizeUrl}?${h}`},exchangeToken:async(a,b,c,d)=>{let e=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,code:b,redirect_uri:c,code_verifier:d})});if(!e.ok){let a=await e.text();throw Error(`xAI token exchange failed: ${a}`)}return await e.json()},mapTokens:a=>{let b={accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope},c=p(a.id_token);return c&&(b.email=c),a.id_token&&(b.providerSpecificData={idToken:a.id_token}),b}},"gemini-cli":{config:j.LT,flowType:"authorization_code",buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({client_id:a.clientId,response_type:"code",redirect_uri:b,scope:a.scopes.join(" "),state:c,access_type:"offline",prompt:"consent"});return`${a.authorizeUrl}?${d.toString()}`},exchangeToken:async(a,b,c)=>{let d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,client_secret:a.clientSecret,code:b,redirect_uri:c})});if(!d.ok){let a=await d.text();throw Error(`Token exchange failed: ${a}`)}return await d.json()},postExchange:async a=>{let b=await fetch(`${j.LT.userInfoUrl}?alt=json`,{headers:{Authorization:`Bearer ${a.access_token}`}}),c=b.ok?await b.json():{},d="";try{let b=await fetch("https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",{method:"POST",headers:{Authorization:`Bearer ${a.access_token}`,"Content-Type":"application/json"},body:JSON.stringify({metadata:(0,j.cD)(),mode:1})});if(b.ok){let a=await b.json();d=a.cloudaicompanionProject?.id||a.cloudaicompanionProject||""}}catch(a){console.log("Failed to fetch project ID:",a)}return{userInfo:c,projectId:d}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope,email:b?.userInfo?.email,projectId:b?.projectId})},antigravity:{config:j.YT,flowType:"authorization_code",buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({client_id:a.clientId,response_type:"code",redirect_uri:b,scope:a.scopes.join(" "),state:c,access_type:"offline",prompt:"consent"});return`${a.authorizeUrl}?${d.toString()}`},exchangeToken:async(a,b,c)=>{let d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,client_secret:a.clientSecret,code:b,redirect_uri:c})});if(!d.ok){let a=await d.text();throw Error(`Token exchange failed: ${a}`)}return await d.json()},postExchange:async a=>{let b=await fetch(`${j.YT.userInfoUrl}?alt=json`,{headers:{Authorization:`Bearer ${a.access_token}`,"x-request-source":"local"}}),c=b.ok?await b.json():{},d=process.env.ANTIGRAVITY_GCP_PROJECT||process.env.ZEVAI_ANTIGRAVITY_GCP_PROJECT||"",e="";try{let b=await Promise.race([(0,h.gQ)(a.access_token,{preferredProjectId:d||null}),new Promise(a=>setTimeout(()=>a({projectId:null,error:"project resolve timed out"}),2e4))]);(e=b.projectId||d||"")||!b.error||console.warn("[Antigravity OAuth] project resolve:",b.error)}catch(a){console.warn("[Antigravity OAuth] project resolve failed:",a?.message||a)}return{userInfo:c,projectId:e}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope,email:b?.userInfo?.email,projectId:b?.projectId})},iflow:{config:j.ZL,flowType:"authorization_code",buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({loginMethod:a.extraParams.loginMethod,type:a.extraParams.type,redirect:b,state:c,client_id:a.clientId});return`${a.authorizeUrl}?${d.toString()}`},exchangeToken:async(a,b,c)=>{let d=Buffer.from(`${a.clientId}:${a.clientSecret}`).toString("base64"),e=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",Authorization:`Basic ${d}`},body:new URLSearchParams({grant_type:"authorization_code",code:b,redirect_uri:c,client_id:a.clientId,client_secret:a.clientSecret})});if(!e.ok){let a=await e.text();throw Error(`Token exchange failed: ${a}`)}return await e.json()},postExchange:async a=>{let b=await fetch(`${j.ZL.userInfoUrl}?accessToken=${encodeURIComponent(a.access_token)}`,{headers:{Accept:"application/json"}});if(!b.ok){let a=await b.text();throw Error(`Failed to fetch user info: ${a}`)}let c=await b.json();if(!c.success)throw Error(`User info request failed: ${c.message||"Unknown error"}`);let d=c.data||{};if(!d.apiKey||""===d.apiKey.trim())throw Error("Empty API key returned from iFlow");if(!(d.email?.trim()||d.phone?.trim()))throw Error("Missing account email/phone in user info");return{userInfo:d}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,apiKey:b?.userInfo?.apiKey,email:b?.userInfo?.email||b?.userInfo?.phone,displayName:b?.userInfo?.nickname||b?.userInfo?.name})},qoder:{config:j.hF,flowType:"device_code",requestDeviceCode:async a=>{let{QoderService:b}=await c.e(1531).then(c.bind(c,91531)),d=new b().initiateDeviceFlow();return{device_code:d.nonce,user_code:d.nonce.slice(0,8).toUpperCase(),verification_uri:a.loginUrl,verification_uri_complete:d.verificationUriComplete,expires_in:300,interval:2,codeVerifier:d.codeVerifier,_qoderNonce:d.nonce,_qoderMachineId:d.machineId}},pollToken:async(a,b,d,e)=>{let f,{QoderService:g}=await c.e(1531).then(c.bind(c,91531)),h=new g,i=b||e?._qoderNonce,j=d||e?._qoderVerifier;if(!i||!j)return{ok:!1,data:{error:"invalid_request",error_description:"Missing nonce/verifier"}};try{f=await h.pollDeviceToken({nonce:i,codeVerifier:j})}catch(a){return{ok:!1,data:{error:"poll_failed",error_description:a.message}}}if("pending"===f.status)return{ok:!1,data:{error:"authorization_pending"}};let k=await h.fetchUserInfo(f.accessToken),l=Math.floor((f.expireTime-Date.now())/1e3),m=Math.max(86400,l);return{ok:!0,data:{access_token:f.accessToken,refresh_token:f.refreshToken,expires_in:m,_qoderUserId:f.userId,_qoderMachineId:e?._qoderMachineId||"",_qoderName:k.name,_qoderEmail:k.email,_qoderOrganizationId:k.organizationId}}},mapTokens:a=>{let b=(a._qoderEmail||"").trim(),c=(a._qoderName||"").trim()||null,d=a._qoderUserId||"",e=b||(d?`qoder-user-${d}`:null);return{accessToken:a.access_token,refreshToken:a.refresh_token||null,expiresIn:a.expires_in,email:e,displayName:c,providerSpecificData:{authMethod:"device",userId:d,machineId:a._qoderMachineId||"",organizationId:a._qoderOrganizationId||""}}}},qwen:{config:j.Hp,flowType:"device_code",requestDeviceCode:async(a,b)=>{let c=await fetch(a.deviceCodeUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId,scope:a.scope,code_challenge:b,code_challenge_method:a.codeChallengeMethod})});if(!c.ok){let a=await c.text();throw Error(`Device code request failed: ${a}`)}return await c.json()},pollToken:async(a,b,c)=>{let d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:device_code",client_id:a.clientId,device_code:b,code_verifier:c})});return{ok:d.ok,data:await d.json()}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,providerSpecificData:{resourceUrl:a.resource_url}})},github:{config:j.Nu,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(a.deviceCodeUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId,scope:a.scopes})});if(!b.ok){let a=await b.text();throw Error(`Device code request failed: ${a}`)}return await b.json()},pollToken:async(a,b)=>{let c,d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId,device_code:b,grant_type:"urn:ietf:params:oauth:grant-type:device_code"})});try{c=await d.json()}catch(b){let a=await d.text();c={error:"invalid_response",error_description:a}}return{ok:d.ok,data:c}},postExchange:async a=>{let b=await fetch(j.Nu.copilotTokenUrl,{headers:{Authorization:`Bearer ${a.access_token}`,Accept:"application/json","X-GitHub-Api-Version":j.Nu.apiVersion,"User-Agent":j.Nu.userAgent}}),c=b.ok?await b.json():{},d=await fetch(j.Nu.userInfoUrl,{headers:{Authorization:`Bearer ${a.access_token}`,Accept:"application/json","X-GitHub-Api-Version":j.Nu.apiVersion,"User-Agent":j.Nu.userAgent}}),e=d.ok?await d.json():{};return{copilotToken:c,userInfo:e}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,providerSpecificData:{copilotToken:b?.copilotToken?.token,copilotTokenExpiresAt:b?.copilotToken?.expires_at,githubUserId:b?.userInfo?.id,githubLogin:b?.userInfo?.login,githubName:b?.userInfo?.name,githubEmail:b?.userInfo?.email}})},kiro:{config:j.Tx,flowType:"device_code",requestDeviceCode:async(a,b,c={})=>{let d=("string"==typeof c.region?c.region.trim():"")||"us-east-1",e=("string"==typeof c.startUrl?c.startUrl.trim():"")||a.startUrl,f="idc"===c.authMethod?"idc":"builder-id",g=`https://oidc.${d}.amazonaws.com/client/register`,h=`https://oidc.${d}.amazonaws.com/device_authorization`,i=await fetch(g,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientName:a.clientName,clientType:a.clientType,scopes:a.scopes,grantTypes:a.grantTypes,issuerUrl:a.issuerUrl})});if(!i.ok){let a=await i.text();throw Error(`Client registration failed: ${a}`)}let j=await i.json(),k=await fetch(h,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:j.clientId,clientSecret:j.clientSecret,startUrl:e})});if(!k.ok){let a=await k.text();throw Error(`Device authorization failed: ${a}`)}let l=await k.json();return{device_code:l.deviceCode,user_code:l.userCode,verification_uri:l.verificationUri,verification_uri_complete:l.verificationUriComplete,expires_in:l.expiresIn,interval:l.interval||5,_clientId:j.clientId,_clientSecret:j.clientSecret,_region:d,_authMethod:f,_startUrl:e}},pollToken:async(a,b,c,d)=>{let e,f=d?._region||"us-east-1",g=`https://oidc.${f}.amazonaws.com/token`,h=await fetch(g,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:d?._clientId,clientSecret:d?._clientSecret,deviceCode:b,grantType:"urn:ietf:params:oauth:grant-type:device_code"})});try{e=await h.json()}catch(b){let a=await h.text();e={error:"invalid_response",error_description:a}}return e.accessToken?{ok:!0,data:{access_token:e.accessToken,refresh_token:e.refreshToken,expires_in:e.expiresIn,profile_arn:e?.profileArn||null,_clientId:d?._clientId,_clientSecret:d?._clientSecret,_region:d?._region,_authMethod:d?._authMethod,_startUrl:d?._startUrl}}:{ok:!1,data:{error:e.error||"authorization_pending",error_description:e.error_description||e.message}}},mapTokens:a=>{let b=r(a.access_token);return{accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,email:b,providerSpecificData:{profileArn:a?.profile_arn||null,clientId:a._clientId,clientSecret:a._clientSecret,region:a._region||"us-east-1",authMethod:a._authMethod||"builder-id",startUrl:a._startUrl||j.Tx.startUrl}}}},cursor:{config:j.WN,flowType:"import_token",mapTokens:a=>({accessToken:a.accessToken,refreshToken:null,expiresIn:a.expiresIn||86400,providerSpecificData:{machineId:a.machineId,authMethod:"imported"}})},"kimi-coding":{config:j.t,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(a.deviceCodeUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId})});if(!b.ok){let a=await b.text();throw Error(`Device code request failed: ${a}`)}let c=await b.json();return{device_code:c.device_code,user_code:c.user_code,verification_uri:c.verification_uri||"https://www.kimi.com/code/authorize_device",verification_uri_complete:c.verification_uri_complete||`https://www.kimi.com/code/authorize_device?user_code=${c.user_code}`,expires_in:c.expires_in,interval:c.interval||5}},pollToken:async(a,b)=>{let c,d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:device_code",client_id:a.clientId,device_code:b})});try{c=await d.json()}catch(b){let a=await d.text();c={error:"invalid_response",error_description:a}}return{ok:d.ok,data:c}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in})},kilocode:{config:j.MZ,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(a.initiateUrl,{method:"POST",headers:{"Content-Type":"application/json"}});if(!b.ok){if(429===b.status)throw Error("Too many pending authorization requests. Please try again later.");let a=await b.text();throw Error(`Device auth initiation failed: ${a}`)}let c=await b.json();return{device_code:c.code,user_code:c.code,verification_uri:c.verificationUrl,verification_uri_complete:c.verificationUrl,expires_in:c.expiresIn||300,interval:3}},pollToken:async(a,b)=>{let c=await fetch(`${a.pollUrlBase}/${b}`);if(202===c.status)return{ok:!1,data:{error:"authorization_pending"}};if(403===c.status)return{ok:!1,data:{error:"access_denied",error_description:"Authorization denied by user"}};if(410===c.status)return{ok:!1,data:{error:"expired_token",error_description:"Authorization code expired"}};if(!c.ok)return{ok:!1,data:{error:"poll_failed",error_description:`Poll failed: ${c.status}`}};let d=await c.json();if("approved"===d.status&&d.token){let b=null;try{let c=await fetch(`${a.apiBaseUrl}/api/profile`,{headers:{Authorization:`Bearer ${d.token}`}});if(c.ok){let a=await c.json();b=a.organizations?.[0]?.id||null}}catch{}return{ok:!0,data:{access_token:d.token,_userEmail:d.userEmail,_orgId:b}}}return{ok:!1,data:{error:"authorization_pending"}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:null,expiresIn:null,email:a._userEmail,...a._orgId?{providerSpecificData:{orgId:a._orgId}}:{}})},cline:{config:j.lB,flowType:"authorization_code",buildAuthUrl:(a,b)=>{let c=new URLSearchParams({client_type:"extension",callback_url:b,redirect_uri:b});return`${a.authorizeUrl}?${c.toString()}`},exchangeToken:async(a,b,c)=>{try{let a=b,c=4-a.length%4;4!==c&&(a+="=".repeat(c));let d=Buffer.from(a,"base64").toString("utf-8"),e=d.lastIndexOf("}");if(-1===e)throw Error("No JSON found in decoded code");let f=JSON.parse(d.substring(0,e+1));return{access_token:f.accessToken,refresh_token:f.refreshToken,email:f.email,firstName:f.firstName,lastName:f.lastName,expires_at:f.expiresAt}}catch(f){let d=await fetch(a.tokenExchangeUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"authorization_code",code:b,client_type:"extension",redirect_uri:c})});if(!d.ok){let a=await d.text();throw Error(`Cline token exchange failed: ${a}`)}let e=await d.json();return{access_token:e.data?.accessToken||e.accessToken,refresh_token:e.data?.refreshToken||e.refreshToken,email:e.data?.userInfo?.email||"",expires_at:e.data?.expiresAt||e.expiresAt}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_at?Math.floor((new Date(a.expires_at).getTime()-Date.now())/1e3):3600,email:a.email,providerSpecificData:{firstName:a.firstName,lastName:a.lastName}})},clinepass:{config:j.w1,flowType:"authorization_code",buildAuthUrl:(a,b)=>{let c=new URLSearchParams({client_type:"extension",callback_url:b,redirect_uri:b});return`${a.authorizeUrl}?${c.toString()}`},exchangeToken:async(a,b,c)=>{try{let a=b,c=4-a.length%4;4!==c&&(a+="=".repeat(c));let d=Buffer.from(a,"base64").toString("utf-8"),e=d.lastIndexOf("}");if(-1===e)throw Error("No JSON found in decoded code");let f=JSON.parse(d.substring(0,e+1));return{access_token:f.accessToken,refresh_token:f.refreshToken,email:f.email,firstName:f.firstName,lastName:f.lastName,expires_at:f.expiresAt}}catch(g){let d=a.tokenUrl||a.tokenExchangeUrl,e=await fetch(d,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"authorization_code",code:b,client_type:"extension",redirect_uri:c})});if(!e.ok){let a=await e.text();throw Error(`ClinePass token exchange failed: ${a}`)}let f=await e.json();return{access_token:f.data?.accessToken||f.accessToken,refresh_token:f.data?.refreshToken||f.refreshToken,email:f.data?.userInfo?.email||"",expires_at:f.data?.expiresAt||f.expiresAt}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_at?Math.floor((new Date(a.expires_at).getTime()-Date.now())/1e3):3600,email:a.email,providerSpecificData:{firstName:a.firstName,lastName:a.lastName}})},"grok-cli":{config:j.qp,flowType:"device_code",requestDeviceCode:async a=>{let b=new URLSearchParams({client_id:a.clientId,scope:a.scope});a.referrer&&b.set("referrer",a.referrer);let c=await fetch(a.deviceCodeUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json","User-Agent":"grok-pager/0.2.93 grok-shell/0.2.93 (linux; x86_64)"},body:b});if(!c.ok){let a=await c.text();throw Error(`Grok CLI device code request failed: ${a}`)}return await c.json()},pollToken:async(a,b)=>{let c,d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json","User-Agent":"grok-pager/0.2.93 grok-shell/0.2.93 (linux; x86_64)"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:device_code",device_code:b,client_id:a.clientId})});try{c=await d.json()}catch{let a=await d.text();c={error:"invalid_response",error_description:a}}let e=c?.error==="authorization_pending"||c?.error==="slow_down";return{ok:d.ok||e,data:c}},postExchange:async a=>{try{let b=await fetch("https://cli-chat-proxy.grok.com/v1/user",{headers:{Authorization:`Bearer ${a.access_token}`,Accept:"application/json","User-Agent":"grok-pager/0.2.93 grok-shell/0.2.93 (linux; x86_64)","x-xai-token-auth":"xai-grok-cli","x-grok-client-version":"0.2.93"}});if(b.ok)return{user:await b.json()}}catch{}return{user:null}},mapTokens:(a,b)=>{let c=p(a.id_token)||r(a.access_token)||b?.user?.email||null,d=b?.user?.userId||b?.user?.principalId||null,e=[b?.user?.firstName,b?.user?.lastName].filter(Boolean).join(" ").trim()||null;return{accessToken:a.access_token,refreshToken:a.refresh_token||null,expiresIn:a.expires_in,scope:a.scope,email:c||void 0,displayName:e||void 0,providerSpecificData:{authMethod:"device_code",idToken:a.id_token||null,email:c||null,userId:d,hasGrokCodeAccess:b?.user?.hasGrokCodeAccess??null,subscriptionTier:b?.user?.subscriptionTier??null}}}},kimchi:{config:j.Td,flowType:"browser_token",buildAuthUrl:(a,b,c)=>{let d=(a.webAppUrl||"https://app.kimchi.dev").replace(/\/+$/,""),e=new URLSearchParams({callback:b,state:c});return`${d}/cli-auth?${e.toString()}`},exchangeToken:async(a,b)=>{let c=String(b||"").trim();if(!c)throw Error("Missing Kimchi token");let d=a.validationUrl||"https://api.cast.ai/v1/llm/openai/supported-providers",e=await fetch(d,{method:"GET",headers:{Accept:"application/json",Authorization:`Bearer ${c}`}});if(!e.ok)throw Error(`Kimchi token validation failed: ${e.status}`);let f={};if(a.userInfoUrl)try{let b=await fetch(a.userInfoUrl,{method:"GET",headers:{Accept:"application/json",Authorization:`Bearer ${c}`}});b.ok&&(f=await b.json())}catch{f={}}return{access_token:c,token_type:"Bearer",_kimchiUser:f}},mapTokens:a=>{let b=a._kimchiUser||{},c=b.id?String(b.id):"",d=b.username||"",e=b.email||(c?`kimchi-user-${c}`:null);return{accessToken:a.access_token,refreshToken:null,email:e,displayName:b.name||d||null,providerSpecificData:{authMethod:"browser_token",userId:c,username:d}}}},gitlab:{config:j.f7,flowType:"authorization_code_pkce",buildAuthUrl:(a,b,c,d,e={})=>{let f=e.baseUrl||a.defaultBaseUrl,g=e.clientId||"",h=new URLSearchParams({client_id:g,redirect_uri:b,response_type:"code",state:c,scope:a.scope,code_challenge:d,code_challenge_method:a.codeChallengeMethod});return`${f}${a.authorizeUrlPath}?${h.toString()}`},exchangeToken:async(a,b,c,d,e,f={})=>{let g=f.baseUrl||a.defaultBaseUrl,h=f.clientId||"",i=f.clientSecret||"",j=new URLSearchParams({client_id:h,grant_type:"authorization_code",code:b,redirect_uri:c,code_verifier:d});i&&j.set("client_secret",i);let k=await fetch(`${g}${a.tokenUrlPath}`,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:j.toString()});if(!k.ok)throw Error(`GitLab token exchange failed: ${await k.text()}`);let l=await k.json(),m=await fetch(`${g}${a.userInfoUrlPath}`,{headers:{Authorization:`Bearer ${l.access_token}`}}),n=m.ok?await m.json():{};return{...l,_user:n,_baseUrl:g,_clientId:h}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope,providerSpecificData:{username:a._user?.username||"",email:a._user?.email||a._user?.public_email||"",name:a._user?.name||"",baseUrl:a._baseUrl,clientId:a._clientId,authKind:"oauth"}})},codebuddy:{config:j.Nl,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(`${a.stateUrl}?platform=${a.platform}`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":a.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":a.domain,"X-No-Authorization":"true","X-No-User-Id":"true","X-No-Enterprise-Id":"true","X-No-Department-Info":"true","X-Product":"SaaS"},body:"{}"});if(!b.ok)throw Error(`CodeBuddy state request failed: ${await b.text()}`);let c=await b.json();if(0!==c.code||!c.data?.state||!c.data?.authUrl)throw Error(`CodeBuddy state error: ${c.msg||"missing state/authUrl"}`);return{device_code:c.data.state,verification_uri:c.data.authUrl,user_code:"",interval:a.pollInterval/1e3,_isCodeBuddy:!0}},pollToken:async(a,b)=>{let c=new URL(a.tokenUrl);c.searchParams.set("state",b);let d=await fetch(c.toString(),{method:"GET",headers:{Accept:"application/json","User-Agent":a.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":a.domain,"X-No-Authorization":"true","X-No-User-Id":"true","X-No-Enterprise-Id":"true","X-No-Department-Info":"true","X-Product":"SaaS"}});if(!d.ok){let a=await d.text().catch(()=>"");return{ok:!1,data:{error:"request_failed",error_description:a||`${d.status} ${d.statusText}`}}}let e=await d.json();return 0===e.code&&e.data?.accessToken?{ok:!0,data:{access_token:e.data.accessToken,refresh_token:e.data.refreshToken||"",token_type:e.data.tokenType||"Bearer",expires_in:e.data.expiresIn,expires_at:e.data.expiresAt,refresh_expires_in:e.data.refreshExpiresIn,refresh_expires_at:e.data.refreshExpiresAt,domain:e.data.domain||a.domain,raw:e.data}}:11217===e.code?{ok:!0,data:{error:"authorization_pending"}}:{ok:!1,data:{error:e.msg||"unknown_error"}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in||(a.expires_at?Math.max(1,Math.floor((new Date(a.expires_at).getTime()-Date.now())/1e3)):86400),providerSpecificData:{domain:a.domain||j.Nl.domain,refreshExpiresIn:a.refresh_expires_in,refreshExpiresAt:a.refresh_expires_at,tokenType:a.token_type||"Bearer",rawAuth:a.raw}})},"codebuddy-cn":{config:j.ne,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(`${a.stateUrl}?platform=${a.platform}`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":a.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":a.domain,"X-No-Authorization":"true","X-No-User-Id":"true","X-No-Enterprise-Id":"true","X-No-Department-Info":"true","X-Product":"SaaS"},body:"{}"});if(!b.ok)throw Error(`CodeBuddy CN state request failed: ${await b.text()}`);let c=await b.json();if(0!==c.code||!c.data?.state||!c.data?.authUrl)throw Error(`CodeBuddy CN state error: ${c.msg||"missing state/authUrl"}`);return{device_code:c.data.state,verification_uri:c.data.authUrl,user_code:"",interval:a.pollInterval/1e3,_isCodeBuddy:!0}},pollToken:async(a,b)=>{let c=new URL(a.tokenUrl);c.searchParams.set("state",b);let d=await fetch(c.toString(),{method:"GET",headers:{Accept:"application/json","User-Agent":a.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":a.domain,"X-No-Authorization":"true","X-No-User-Id":"true","X-No-Enterprise-Id":"true","X-No-Department-Info":"true","X-Product":"SaaS"}});if(!d.ok){let a=await d.text().catch(()=>"");return{ok:!1,data:{error:"request_failed",error_description:a||`${d.status} ${d.statusText}`}}}let e=await d.json();return 0===e.code&&e.data?.accessToken?{ok:!0,data:{access_token:e.data.accessToken,refresh_token:e.data.refreshToken||"",token_type:e.data.tokenType||"Bearer",expires_in:e.data.expiresIn,expires_at:e.data.expiresAt,refresh_expires_in:e.data.refreshExpiresIn,refresh_expires_at:e.data.refreshExpiresAt,domain:e.data.domain||a.domain,raw:e.data}}:11217===e.code?{ok:!0,data:{error:"authorization_pending"}}:{ok:!1,data:{error:e.msg||"unknown_error"}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in||(a.expires_at?Math.max(1,Math.floor((new Date(a.expires_at).getTime()-Date.now())/1e3)):86400),providerSpecificData:{domain:a.domain||j.ne.domain,refreshExpiresIn:a.refresh_expires_in,refreshExpiresAt:a.refresh_expires_at,tokenType:a.token_type||"Bearer",rawAuth:a.raw}})}};function E(a){let b=P[a];if(!b)throw Error(`Unknown provider: ${a}`);return b}async function F(a,b,c){let d=E(a),e=d.prepareConfig?await d.prepareConfig(d.config,c||{}):d.config,{codeVerifier:f,codeChallenge:g,state:h}=(0,i.lz)(d.pkceVerifierBytes),j=e.loginTraceID||h,k=e.privateKeyVerifier||f;return{authUrl:"device_code"===d.flowType?null:"authorization_code_pkce"===d.flowType?d.buildAuthUrl(e,b,j,g,c||{}):d.buildAuthUrl(e,b,j,void 0,c||{}),state:j,codeVerifier:k,codeChallenge:g,redirectUri:b,flowType:d.flowType,fixedPort:d.fixedPort,callbackPath:d.callbackPath||"/callback"}}async function G(a,b,c,d,e,f){let g=E(a),h=g.prepareConfig?await g.prepareConfig(g.config,f||{}):g.config,i=await g.exchangeToken(h,b,c,d,e,f||{}),j=null;return g.postExchange&&(j=await g.postExchange(i)),g.mapTokens(i,j)}async function H(a,b,c){let d=E(a);if("codex"!==a&&"device_code"!==d.flowType)throw Error(`Provider ${a} does not support device code flow`);return await d.requestDeviceCode(d.config,b,c||{})}async function I(a,b,c,d){let e=E(a);if("codex"!==a&&"device_code"!==e.flowType)throw Error(`Provider ${a} does not support device code flow`);let f=await e.pollToken(e.config,b,c,d);if("codex"===a){if(f.pending)return{success:!1,error:"authorization_pending",errorDescription:"Waiting for Codex authorization",pending:!0};if(!f.ok)return{success:!1,error:f.data.error||"device_authorization_failed",errorDescription:f.data.error_description||f.data.message};let a=f.data.authorization_code,b=f.data.code_verifier;if(!a||!b)return{success:!1,error:"invalid_device_response",errorDescription:"Codex device authorization did not return an authorization code"};try{let c=await G("codex",a,e.config.deviceRedirectUri,b);return{success:!0,tokens:c}}catch(a){return{success:!1,error:"token_exchange_failed",errorDescription:a.message}}}if(f.ok)if(f.data.access_token){let a=null;return e.postExchange&&(a=await e.postExchange(f.data)),{success:!0,tokens:e.mapTokens(f.data,a)}}else if("authorization_pending"===f.data.error||"slow_down"===f.data.error)return{success:!1,error:f.data.error,errorDescription:f.data.error_description||f.data.message,pending:"authorization_pending"===f.data.error};else return{success:!1,error:f.data.error||"no_access_token",errorDescription:f.data.error_description||f.data.message||"No access token received"};return{success:!1,error:f.data.error,errorDescription:f.data.error_description}}P.kimi=P["kimi-coding"];let Q=!1;async function J(){if(!Q){Q=!0;try{let{getProviderConnections:a,updateProviderConnection:b}=await Promise.resolve().then(c.bind(c,89718));for(let c of(await a()).filter(a=>{if("codex"!==a.provider||"oauth"!==a.authType||!a.idToken)return!1;let b=!!a.email,c=!!a.providerSpecificData?.chatgptAccountId;return!b||!c})){let a=s(c.idToken);if(!a.email&&!a.chatgptAccountId)continue;let d={};!c.email&&a.email&&(d.email=a.email),(a.chatgptAccountId||a.chatgptPlanType)&&(d.providerSpecificData={...c.providerSpecificData||{},chatgptAccountId:a.chatgptAccountId,chatgptPlanType:a.chatgptPlanType}),Object.keys(d).length&&await b(c.id,d)}}catch(a){Q=!1,console.log("backfillCodexEmails failed:",a?.message||a)}}}d()}catch(a){d(a)}})}};
@@ -1,51 +0,0 @@
1
- "use strict";exports.id=5295,exports.ids=[5295],exports.modules={6382:(a,b,c)=>{c.d(b,{$D:()=>p,VE:()=>h,ZF:()=>m,aZ:()=>q,gI:()=>l,rG:()=>k});let d="-agentic",e="-thinking",f="1.0.138",g="1.0.0";function h(a){return{userAgent:`aws-sdk-js/${g} ua/2.1 os/windows#10.0.26200 lang/js md/nodejs#22.21.1 api/codewhispererruntime#${g} m/N,E KiroIDE-${f}-${a}`,amzUserAgent:`aws-sdk-js/${g} KiroIDE-${f}-${a}`}}let i=new Set(["1","true","yes","on"]),j=new Set(["0","false","no","off"]),k=`
2
- # CRITICAL: CHUNKED WRITE PROTOCOL (MANDATORY)
3
-
4
- You MUST follow these rules for ALL file operations. Violation causes server timeouts and task failure.
5
-
6
- ## ABSOLUTE LIMITS
7
- - **MAXIMUM 350 LINES** per single write/edit operation - NO EXCEPTIONS
8
- - **RECOMMENDED 300 LINES** or less for optimal performance
9
- - **NEVER** write entire files in one operation if >300 lines
10
-
11
- ## MANDATORY CHUNKED WRITE STRATEGY
12
-
13
- ### For NEW FILES (>300 lines total):
14
- 1. FIRST: Write initial chunk (first 250-300 lines) using write_to_file/fsWrite
15
- 2. THEN: Append remaining content in 250-300 line chunks using file append operations
16
- 3. REPEAT: Continue appending until complete
17
-
18
- ### For EDITING EXISTING FILES:
19
- 1. Use surgical edits (apply_diff/targeted edits) - change ONLY what's needed
20
- 2. NEVER rewrite entire files - use incremental modifications
21
- 3. Split large refactors into multiple small, focused edits
22
-
23
- ### For LARGE CODE GENERATION:
24
- 1. Generate in logical sections (imports, types, functions separately)
25
- 2. Write each section as a separate operation
26
- 3. Use append operations for subsequent sections
27
-
28
- ## EXAMPLES OF CORRECT BEHAVIOR
29
-
30
- CORRECT: Writing a 600-line file
31
- - Operation 1: Write lines 1-300 (initial file creation)
32
- - Operation 2: Append lines 301-600
33
-
34
- CORRECT: Editing multiple functions
35
- - Operation 1: Edit function A
36
- - Operation 2: Edit function B
37
- - Operation 3: Edit function C
38
-
39
- WRONG: Writing 500 lines in single operation -> TIMEOUT
40
- WRONG: Rewriting entire file to change 5 lines -> TIMEOUT
41
- WRONG: Generating massive code blocks without chunking -> TIMEOUT
42
-
43
- ## WHY THIS MATTERS
44
- - Server has 2-3 minute timeout for operations
45
- - Large writes exceed timeout and FAIL completely
46
- - Chunked writes are FASTER and more RELIABLE
47
- - Failed writes waste time and require retry
48
-
49
- REMEMBER: When in doubt, write LESS per operation. Multiple small operations > one large operation.
50
- `.trim();function l(a,b,c){if(function(a){if(!a||"object"!=typeof a)return!1;let b=a.thinking;if(b&&"object"==typeof b&&"disabled"===b.type)return!0;let c=a.reasoning_effort??(a.reasoning&&"object"==typeof a.reasoning?a.reasoning.effort:null);return"string"==typeof c&&"none"===c.toLowerCase()}(a))return!1;if(b){let a=function(a,b){if(!a)return;if("function"==typeof a.get)return a.get(b);let c=b.toLowerCase();for(let b of Object.keys(a))if(b.toLowerCase()===c)return a[b]}(b,"anthropic-beta");if("string"==typeof a&&a.toLowerCase().includes("interleaved-thinking"))return!0}if(a&&"object"==typeof a){let b=a.thinking;if(b&&"object"==typeof b&&"enabled"===b.type){let a=Number(b.budget_tokens);if(!Number.isFinite(a)||a>0)return!0}let c=a.reasoning_effort??(a.reasoning&&"object"==typeof a.reasoning?a.reasoning.effort:null);if("string"==typeof c){let a=c.toLowerCase();if(a&&"none"!==a&&("low"===a||"medium"===a||"high"===a||"auto"===a))return!0}if(function(a){for(let b of Array.isArray(a?.messages)?a.messages:[]){if(!b||"system"!==b.role&&"user"!==b.role)continue;let a=b.content;if("string"==typeof a){if(r(a))return!0}else if(Array.isArray(a))for(let b of a){let a=b?.text;if("string"==typeof a&&r(a))return!0}}return!!("string"==typeof a?.system&&r(a.system))}(a))return!0}if("string"==typeof c&&c){let a=c.toLowerCase();if(a.includes("thinking")||a.includes("-reason"))return!0}return!1}function m(a){let b=t(s(a?.kiro_expose_reasoning,a?.kiroExposeReasoning,a?.metadata?.kiro_expose_reasoning,a?.metadata?.kiroExposeReasoning,a?.extra_body?.kiro_expose_reasoning,a?.extra_body?.kiroExposeReasoning));if(null!==b)return b;let c="u">typeof process?process.env:{};return!0===t(s(c.KIRO_EXPOSE_REASONING,c.ZEVAI_EXPOSE_REASONING))}function n(a){return"string"==typeof a&&a.endsWith(d)}function o(a){return"string"==typeof a&&a.endsWith(e)}function p(a){var b,c;let f=a,g=!1,h=!1;return n(f)&&(g=!0,f=n(b=f)?b.slice(0,-d.length):b),o(f)&&(h=!0,f=o(c=f)?c.slice(0,-e.length):c),{upstream:f,agentic:g,thinking:h}}function q(a=16e3){let b=Math.max(1,Math.min(32e3,Number(a)||16e3));return`<thinking_mode>enabled</thinking_mode>
51
- <max_thinking_length>${b}</max_thinking_length>`}function r(a){return!!a&&!!a.includes("<thinking_mode>")&&(a.includes("<thinking_mode>enabled</thinking_mode>")||a.includes("<thinking_mode>interleaved</thinking_mode>"))}function s(...a){return a.find(a=>null!=a)}function t(a){if("boolean"==typeof a)return a;if("number"==typeof a)return 1===a||0!==a&&null;if("string"!=typeof a)return null;let b=a.trim().toLowerCase();return!!i.has(b)||!j.has(b)&&null}},8590:(a,b,c)=>{c.d(b,{$B:()=>H,I9:()=>u,Og:()=>r,Ql:()=>D,R_:()=>q,Sc:()=>I,jR:()=>G,jT:()=>p,oD:()=>k,pb:()=>K,qZ:()=>L});var d=c(35024),e=c(75924),f=c(39609),g=c(18080),h=c(52060);let i=null;async function j(a,b){return a?o("xai",a,async()=>{try{i||(i=new(await Promise.all([c.e(4897),c.e(2030)]).then(c.bind(c,82030))).XaiService);let b=await i.refreshAccessToken(a);return{accessToken:b.access_token,refreshToken:b.refresh_token||a,expiresIn:b.expires_in,idToken:b.id_token}}catch(c){b?.warn?.("TOKEN_REFRESH","xAI OAuth refresh failed",{status:c?.status||null,code:y(c?.code,c?.status),permanent:c?.permanent===!0});let a=String(c?.message||"");if(c?.permanent===!0||a.includes("invalid_grant")||a.includes("invalid_request"))return{error:"invalid_grant",code:y(c?.code||"invalid_grant",c?.status)};return null}},b):null}let k=3e5,l=new Map;function m(){let a=Error("Request aborted");return a.name="AbortError",a}function n(a,b){return a.waiterCount+=1,new Promise((c,d)=>{let e=!1,f=(c,d)=>{e||(e=!0,b?.removeEventListener?.("abort",g),a.waiterCount=Math.max(0,a.waiterCount-1),0!==a.waiterCount||a.settled||(a.acceptingWaiters=!1,a.controller.abort(m())),c(d))},g=()=>f(d,m());b?.addEventListener?.("abort",g,{once:!0}),b?.aborted&&g(),a.promise.then(a=>f(c,a),a=>f(d,a))})}async function o(a,b,c,d,e=null){let f,g;if(e?.aborted)throw m();if(!b)return c();let h=`${a}:${b}`,i=l.get(h);if(i){if(i.promise){if(!1===i.acceptingWaiters||i.controller.signal.aborted)try{return await (e?.aborted?Promise.reject(m()):new Promise((a,b)=>{let c=!1,d=(a,b)=>{c||(c=!0,e?.removeEventListener?.("abort",f),a(b))},f=()=>d(b,m());e?.addEventListener?.("abort",f,{once:!0}),e?.aborted&&f(),i.promise.then(b=>d(a,b),a=>d(b,a))}))}catch(f){if(e?.aborted)throw m();if(i.controller.signal.aborted&&f?.name==="AbortError")return o(a,b,c,d,e);throw f}return d?.info?.("TOKEN_REFRESH",`Reusing in-flight refresh for ${a}`),n(i,e)}if(i.expiresAt>Date.now())return d?.info?.("TOKEN_REFRESH",`Reusing recent refresh result for ${a}`),i.result;l.delete(h)}let j={controller:new AbortController,promise:new Promise((a,b)=>{f=a,g=b}),acceptingWaiters:!0,settled:!1,waiterCount:0};return l.set(h,j),(async()=>{try{let a=await c(j.controller.signal),b={result:a,expiresAt:Date.now()+1e4};l.set(h,b);let d=setTimeout(()=>{l.get(h)===b&&l.delete(h)},1e4);d.unref?.(),j.settled=!0,f(a)}catch(a){l.get(h)===j&&l.delete(h),j.settled=!0,g(a)}})(),n(j,e)}function p(a){return a&&"object"==typeof a&&("unrecoverable_refresh_error"===a.error||"refresh_token_reused"===a.error||"invalid_request"===a.error||"invalid_grant"===a.error)}function q(a={}){let b=String(a.code||a.error||"refresh_token_rejected").slice(0,120),c=Error("Refresh credential rejected; re-authentication required.");return c.name="RefreshCredentialError",c.code=b,c.permanent=!0,c}function r(a){return e.Wu[a]||k}async function s(a,b,c,e){let f=d.xq[a];return f&&f.refreshUrl?b?o(a,b,async()=>{try{let c=await fetch(f.refreshUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:b,client_id:f.clientId,client_secret:f.clientSecret})});if(!c.ok){let b=await c.text();return z(b,c.status,e,a)}let d=await c.json();return e?.info?.("TOKEN_REFRESH",`Successfully refreshed token for ${a}`,{hasNewAccessToken:!!d.access_token,hasNewRefreshToken:!!d.refresh_token,expiresIn:d.expires_in}),{accessToken:d.access_token,refreshToken:d.refresh_token||b,expiresIn:d.expires_in}}catch(b){return e?.error?.("TOKEN_REFRESH",`Error refreshing token for ${a}`,{error:b.message}),null}},e):(e?.warn?.("TOKEN_REFRESH",`No refresh token available for provider: ${a}`),null):(e?.warn?.("TOKEN_REFRESH",`No refresh URL configured for provider: ${a}`),null)}async function t(a,b){return a?o("claude",a,async()=>{try{let c=await fetch(e.NA.anthropic.token,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.claude.clientId})});if(!c.ok){let a=await c.text();return z(a,c.status,b,"Claude")}let f=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Claude OAuth token",{hasNewAccessToken:!!f.access_token,expiresIn:f.expires_in}),{accessToken:f.access_token,refreshToken:f.refresh_token||a,expiresIn:f.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Claude token: ${a.message}`),null}},b):null}async function u(a,b,c,d){return a?o(`google:${b}`,a,async()=>{try{let f=await fetch(e.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:b,client_secret:c})});if(!f.ok){let a=await f.text();return z(a,f.status,d,"Google")}let g=await f.json();return d?.info?.("TOKEN_REFRESH","Successfully refreshed Google token",{hasNewAccessToken:!!g.access_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}catch(a){return d?.error?.("TOKEN_REFRESH",`Network error refreshing Google token: ${a.message}`),null}},d):null}async function v(a,b){return a?o("qwen",a,async()=>{let c=e.NA.qwen.token;try{let e=await fetch(c,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.qwen.clientId})});if(200===e.status){let c=await e.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Qwen token",{hasNewAccessToken:!!c.access_token,hasNewRefreshToken:!!c.refresh_token,expiresIn:c.expires_in}),{accessToken:c.access_token,refreshToken:c.refresh_token||a,expiresIn:c.expires_in,providerSpecificData:c.resource_url?{resourceUrl:c.resource_url}:void 0}}{let a=await e.text().catch(()=>"");return z(a,e.status,b,"Qwen")}}catch(a){b?.warn?.("TOKEN_REFRESH","Network error trying Qwen endpoint",{error:a.message})}return b?.error?.("TOKEN_REFRESH","Failed to refresh Qwen token"),null},b):null}async function w(a,b,c="codebuddy"){return a?o(c,a,async()=>{try{let e=d.xq[c]||d.xq.codebuddy,g=e.refreshUrl,i=e.domain||"www.codebuddy.ai",j=await (0,f.proxyAwareFetch)(g,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":h.C,"X-Requested-With":"XMLHttpRequest","X-Domain":i,"X-Refresh-Token":a,"X-Auth-Refresh-Source":"plugin","X-Product":"SaaS"},body:"{}"});if(!j.ok){let a=await j.text().catch(()=>"");return z(a,j.status,b,c)}let k=await j.json(),l=k?.data||k,m=l?.accessToken||l?.access_token;if(!m)return null;return{accessToken:m,refreshToken:l?.refreshToken||l?.refresh_token||a,expiresIn:l?.expiresIn||l?.expires_in||86400}}catch(a){return b?.error?.("TOKEN_REFRESH",`Error refreshing token for ${c}`,{error:a.message}),null}},b):null}function x(a="",b=0){let c=null;try{c=a?JSON.parse(a):null}catch{c=null}let d=c?.error&&"object"==typeof c.error?c.error:null,e=d?.code||d?.type||("string"==typeof c?.error?c.error:"")||c?.error_code||"",f=d?.message||d?.error_description||c?.error_description||c?.message||a||"",g=`${e} ${f}`.toLowerCase(),h=400===b||401===b||["refresh_token_expired","refresh_token_reused","refresh_token_invalidated","invalid_refresh_token","invalid_grant"].some(a=>g.includes(a));return{status:b,code:e,description:f,permanent:h}}function y(a,b){let c="string"==typeof a?a.trim():"";return/^[a-zA-Z0-9_.:-]{1,120}$/.test(c)?c:`HTTP_${Number(b)||0}`}function z(a,b,c,d){let e=x(a,b),f=y(e.code,b);return c?.error?.("TOKEN_REFRESH",`${d} OAuth refresh failed`,{status:b,code:f,permanent:e.permanent}),e.permanent?{error:"unrecoverable_refresh_error",code:f}:null}function A(a,b,c,d){let e=function(a="",b=0){let c=null;try{c=a?JSON.parse(a):null}catch{c=null}let d=c?.error&&"object"==typeof c.error?c.error:c,e=[d?.reason,c?.reason,d?.code,c?.code,d?.errorCode,c?.errorCode,d?.type,c?.type,d?.__type,c?.__type,"string"==typeof c?.error?c.error:""].filter(a=>("string"==typeof a||"number"==typeof a)&&String(a).trim()),f=e.map(a=>String(a).trim()).find(a=>/^[A-Za-z0-9_.:#/-]{1,200}$/.test(a)&&!/^aor[A-Za-z0-9._~+/=-]{8,}$/.test(a)&&!/^eyJ[A-Za-z0-9_-]{8,}\./.test(a))||null,g=[d?.message,d?.Message,d?.error_description,c?.message,c?.Message,c?.error_description,c?"":a].find(a=>"string"==typeof a&&a.trim())||"",h=e.map(a=>String(a).replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"")),i=["invalid_grant","invalid_grant_exception","invalid_refresh_token","refresh_token_expired","refresh_token_revoked","refresh_token_reused","refresh_token_invalidated","expired_token","token_revoked","invalid_token","invalid_token_exception","invalid_client","invalid_client_exception","unauthorized_client"],j=h.some(a=>{let b=a.replace(/_exception$/,"");return i.some(a=>b===a||b.endsWith(`_${a}`))}),k=g.toLowerCase().slice(0,4e3),l=400===b||401===b||j||/\binvalid[_ -]?grant\b/.test(k)||/\brefresh token\b.{0,60}\b(?:expired|invalid|revoked|reused|disabled)\b/.test(k)||/\b(?:expired|invalid|revoked|reused|disabled)\b.{0,60}\brefresh token\b/.test(k);return{status:b,code:f,permanent:l}}(b,a.status);c?.error?.("TOKEN_REFRESH",`Kiro ${d} refresh failed`,{status:a.status,code:e.code,permanent:e.permanent});let f=Error(e.permanent?"Kiro refresh credential rejected":"Kiro refresh temporarily unavailable");throw f.name=e.permanent?"KiroRefreshCredentialError":"KiroRefreshTransientError",f.status=a.status,f.code=e.code,f.permanent=e.permanent,f}function B(a,b){a?.error?.("TOKEN_REFRESH",`Kiro ${b} refresh returned no access token`);let c=Error("Kiro refresh returned an invalid response");throw c.name="KiroRefreshTransientError",c.status=502,c.code="MISSING_ACCESS_TOKEN",c.permanent=!1,c}async function C(a,b){return a?o("codex",a,async()=>{try{let c=await fetch(e.NA.openai.token,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({client_id:d.xq.codex.clientId,grant_type:"refresh_token",refresh_token:a})});if(!c.ok){let a=await c.text();return x(a,c.status).permanent,z(a,c.status,b,"Codex")}let f=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Codex token",{hasNewAccessToken:!!f.access_token,hasNewRefreshToken:!!f.refresh_token,hasIdToken:!!f.id_token,expiresIn:f.expires_in}),{accessToken:f.access_token,refreshToken:f.refresh_token||a,idToken:f.id_token,expiresIn:f.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Codex token: ${a.message}`),null}},b):null}async function D(a,b,c,e=null,h=null){return a?o("kiro",a,async h=>{let i=b?.authMethod,j=b?.clientId,k=b?.clientSecret,l=b?.region;if("external_idp"===i){let d;try{d=(0,g.uo)(a,b)}catch(a){return c?.warn?.("TOKEN_REFRESH",`Kiro external IdP refresh rejected: ${a.message}`),null}let i=await (0,f.proxyAwareFetch)(d.tokenEndpoint,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:d.body,signal:h},{...e,singleTransportAttempt:!0});if(!i.ok){let a=await i.text();return A(i,a,c,"external IdP")}let j=await i.json();return j?.access_token?{accessToken:j.access_token,refreshToken:j.refresh_token||a,expiresIn:j.expires_in,providerSpecificData:d.providerSpecificData}:B(c,"external IdP")}if(j&&k){let b="idc"===i&&l?`https://oidc.${l}.amazonaws.com/token`:"https://oidc.us-east-1.amazonaws.com/token",d=await (0,f.proxyAwareFetch)(b,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:j,clientSecret:k,refreshToken:a,grantType:"refresh_token"}),signal:h},{...e,singleTransportAttempt:!0});if(!d.ok){let a=await d.text();return A(d,a,c,"AWS")}let g=await d.json();return g?.accessToken?(c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro AWS token",{hasNewAccessToken:!!g.accessToken,expiresIn:g.expiresIn}),{accessToken:g.accessToken,refreshToken:g.refreshToken||a,expiresIn:g.expiresIn}):B(c,"AWS")}let m=await (0,f.proxyAwareFetch)(d.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/2.12.2"},body:JSON.stringify({refreshToken:a}),signal:h},{...e,singleTransportAttempt:!0});if(!m.ok){let a=await m.text();return A(m,a,c,"social")}let n=await m.json();return n?.accessToken?(c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro social token",{hasNewAccessToken:!!n.accessToken,expiresIn:n.expiresIn}),{accessToken:n.accessToken,refreshToken:n.refreshToken||a,expiresIn:n.expiresIn}):B(c,"social")},c,h):null}async function E(a,b){return a?o("iflow",a,async()=>{let c=btoa(`${d.xq.iflow.clientId}:${d.xq.iflow.clientSecret}`),f=await fetch(e.NA.iflow.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",Authorization:`Basic ${c}`},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.iflow.clientId,client_secret:d.xq.iflow.clientSecret})});if(!f.ok)return z(await f.text(),f.status,b,"iFlow");let g=await f.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed iFlow token",{hasNewAccessToken:!!g.access_token,hasNewRefreshToken:!!g.refresh_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}},b):null}async function F(a,b){return a?o("github",a,async()=>{let c={grant_type:"refresh_token",refresh_token:a,client_id:d.xq.github.clientId};d.xq.github.clientSecret&&(c.client_secret=d.xq.github.clientSecret);let f=await fetch(e.NA.github.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams(c)});if(!f.ok)return z(await f.text(),f.status,b,"GitHub");let g=await f.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed GitHub token",{hasNewAccessToken:!!g.access_token,hasNewRefreshToken:!!g.refresh_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}},b):null}async function G(a,b){return a?o("copilot",a,async()=>{try{let c=await fetch("https://api.github.com/copilot_internal/v2/token",{headers:{Authorization:`token ${a}`,"User-Agent":e.x0.USER_AGENT,"Editor-Version":`vscode/${e.x0.VSCODE_VERSION}`,"Editor-Plugin-Version":`copilot-chat/${e.x0.COPILOT_CHAT_VERSION}`,Accept:"application/json","x-github-api-version":e.x0.API_VERSION}});if(!c.ok)return await c.body?.cancel?.().catch?.(()=>{}),b?.error?.("TOKEN_REFRESH","Copilot token refresh failed",{status:c.status}),null;let d=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Copilot token",{hasToken:!!d.token,expiresAt:d.expires_at}),{token:d.token,expiresAt:d.expires_at}}catch(a){return b?.error?.("TOKEN_REFRESH","Error refreshing Copilot token",{error:a.message}),null}},b):null}async function H(a,b,c){if(!b.refreshToken)return null;switch(a){case"gemini-cli":case"antigravity":return u(b.refreshToken,d.xq[a].clientId,d.xq[a].clientSecret,c);case"claude":return t(b.refreshToken,c);case"codex":return C(b.refreshToken,c);case"qwen":return v(b.refreshToken,c);case"codebuddy":return w(b.refreshToken,c,"codebuddy");case"codebuddy-cn":return w(b.refreshToken,c,"codebuddy-cn");case"iflow":return E(b.refreshToken,c);case"github":return F(b.refreshToken,c);case"kiro":return D(b.refreshToken,b.providerSpecificData,c);case"xai":case"grok-cli":return j(b.refreshToken,c);case"vertex":case"vertex-partner":{let a=I(b.apiKey);if(!a)return null;return K(a,c)}default:return s(a,b.refreshToken,b,c)}}function I(a){if("string"!=typeof a)return null;try{let b=JSON.parse(a);if("service_account"===b.type&&b.client_email&&b.private_key&&b.project_id)return b;return null}catch{return null}}let J=new Map;async function K(a,b){let d=a.client_email,e=J.get(d);if(e&&e.expiresAt-Date.now()>3e5)return{accessToken:e.token,expiresAt:e.expiresAt};try{let{SignJWT:e,importPKCS8:f}=await Promise.all([c.e(6935),c.e(8971)]).then(c.bind(c,8971));b?.debug?.("TOKEN_REFRESH",`Vertex minting token for ${a.client_email}`);let g=await f(a.private_key.replace(/\\n/g,"\n"),"RS256"),h=Math.floor(Date.now()/1e3),i=await new e({scope:"https://www.googleapis.com/auth/cloud-platform"}).setProtectedHeader({alg:"RS256"}).setIssuer(a.client_email).setAudience("https://oauth2.googleapis.com/token").setIssuedAt(h).setExpirationTime(h+3600).sign(g),j=await fetch("https://oauth2.googleapis.com/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:jwt-bearer",assertion:i})});if(!j.ok){let a=await j.text();return b?.error?.("TOKEN_REFRESH",`Vertex token mint failed: ${a}`),null}let{access_token:k,expires_in:l}=await j.json(),m=Date.now()+(l??3600)*1e3;return J.set(d,{token:k,expiresAt:m}),b?.info?.("TOKEN_REFRESH",`Vertex token minted for ${a.client_email}`),{accessToken:k,expiresAt:m}}catch(a){return b?.error?.("TOKEN_REFRESH",`Vertex token error: ${a.message}`),null}}async function L(a,b=3,c=null,d=null){let e=()=>{let a=Error("Request aborted");return a.name="AbortError",a},f=a=>d?d.aborted?Promise.reject(e()):new Promise((b,c)=>{let f,g=()=>{clearTimeout(f),d.removeEventListener("abort",g),c(e())};f=setTimeout(()=>{d.removeEventListener("abort",g),b()},a),d.addEventListener("abort",g,{once:!0})}):new Promise(b=>setTimeout(b,a));for(let g=0;g<b;g++){if(d?.aborted)throw e();if(g>0){let a=1e3*g;c?.debug?.("TOKEN_REFRESH",`Retry ${g}/${b} after ${a}ms`),await f(a)}try{let b=await a();if(p(b))throw q(b);if(b)return b}catch(a){if(d?.aborted||a?.name==="AbortError")throw e();if(a?.permanent===!0)throw a;c?.warn?.("TOKEN_REFRESH",`Attempt ${g+1}/${b} failed: ${a.message}`)}}return c?.error?.("TOKEN_REFRESH",`All ${b} retry attempts failed`),null}},18080:(a,b,c)=>{c.d(b,{Xj:()=>i,uo:()=>j});let d=new Set(["login.microsoftonline.com","login.microsoft.com","login.windows.net"]);function e(a){return"string"==typeof a?a.trim():""}function f(a){let b,c=e(a);if(!c)throw Error("token_endpoint is required");try{b=new URL(c)}catch{throw Error("token_endpoint must be a valid URL")}if("https:"!==b.protocol)throw Error("token_endpoint must use https");if(!d.has(b.hostname.toLowerCase()))throw Error("token_endpoint must be a Microsoft login endpoint");return b.toString()}function g(a){return Array.isArray(a)?a.map(e).filter(Boolean).join(" "):e(a)}function h(a){try{if(!a||"string"!=typeof a)return null;let b=a.split(".");if(3!==b.length)return null;let c=b[1].replace(/-/g,"+").replace(/_/g,"/"),d=(4-c.length%4)%4;return JSON.parse(Buffer.from(`${c}${"=".repeat(d)}`,"base64").toString("utf8"))}catch{return null}}function i(a){let b=a;if("string"==typeof b)try{b=JSON.parse(b)}catch{throw Error("CLIProxyAPI auth JSON is invalid")}if(!b||"object"!=typeof b)throw Error("CLIProxyAPI auth JSON is required");let c=e(b.auth_method||b.authMethod);if(c&&"external_idp"!==c)throw Error("Only external_idp Kiro auth is supported by this importer");let d=e(b.access_token||b.accessToken),i=e(b.refresh_token||b.refreshToken),j=e(b.client_id||b.clientId),k=f(b.token_endpoint||b.tokenEndpoint),l=e(b.profile_arn||b.profileArn),m=e(b.region)||"us-east-1",n=g(b.scopes||b.scope);if(!d)throw Error("access_token is required");if(!i)throw Error("refresh_token is required");if(!j)throw Error("client_id is required");if(!n)throw Error("scopes is required");if(!l)throw Error("profile_arn is required");let o=h(d),p=b.email||o?.email||o?.preferred_username||o?.upn||o?.sub||null;return{accessToken:d,refreshToken:i,expiresAt:function(a){let b=a.expired||a.expires_at||a.expiresAt;if(b){let a=new Date(b).getTime();if(Number.isFinite(a))return new Date(a).toISOString()}let c=Number(a.expires_in||a.expiresIn||0);if(Number.isFinite(c)&&c>0)return new Date(Date.now()+1e3*c).toISOString();let d=h(a.access_token||a.accessToken);return d?.exp?new Date(1e3*d.exp).toISOString():new Date(Date.now()+36e5).toISOString()}(b),email:p,providerSpecificData:{profileArn:l,region:m,authMethod:"external_idp",provider:"CLIProxyAPI",clientId:j,tokenEndpoint:k,scope:n}}}function j(a,b={}){let c=e(b.clientId||b.client_id),d=f(b.tokenEndpoint||b.token_endpoint),h=g(b.scope||b.scopes);if(!a)throw Error("refresh token is required");if(!c)throw Error("clientId is required for external_idp refresh");if(!h)throw Error("scope is required for external_idp refresh");return{tokenEndpoint:d,body:new URLSearchParams({grant_type:"refresh_token",client_id:c,refresh_token:a,scope:h}),providerSpecificData:{...b,authMethod:"external_idp",clientId:c,tokenEndpoint:d,scope:h}}}}};
@@ -1 +0,0 @@
1
- exports.id=5307,exports.ids=[1998,4720,5307],exports.modules={30869:(a,b,c)=>{"use strict";c.d(b,{UY:()=>h,X3:()=>j,eh:()=>f.eh,fg:()=>e.fg,h0:()=>g,oc:()=>i});var d=c(39006),e=c(75681),f=c(81329);d.version;let g={npmPackageName:"zevairouter",installCmd:"npm i -g zevairouter",installCmdLatest:"npm i -g zevairouter@latest --prefer-online",shutdownCountdownSec:3,exitDelayMs:500,statusPort:20129,statusPollIntervalMs:1e3,statusLogTailLines:8,installRetries:3,installRetryDelayMs:5e3,lingerAfterDoneMs:3e4,waitForExitMinMs:5e3,waitForExitMaxMs:2e4,waitForExitCheckMs:500,appPort:1997},h={maxLines:200,pollIntervalMs:1e3},i={tickIntervalMs:6e4,pingLeadMs:5e3,refreshAheadMs:3e5,failureCooldownMs:9e5,providers:{claude:{settingsKey:"claudeAutoPing",quotaKey:"session (5h)",pingModel:"claude-haiku-4-5-20251001",pingText:"hi",pingMaxTokens:1},codex:{settingsKey:"codexAutoPing",quotaKey:"session",pingWhenResetAtSlides:!0,resetAtDriftMs:3e4,minPingIntervalMs:6e5,skipWhenBlockingQuotaExhausted:!0,pingModel:"gpt-5.5",pingText:"hi",pingInstructions:"Reply with OK.",pingReasoningEffort:"none"}}},j={openrouter:"https://openrouter.ai/api/v1/chat/completions",glm:"https://api.z.ai/api/anthropic/v1/messages","glm-cn":"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",kimi:"https://api.kimi.com/coding/v1/messages",minimax:"https://api.minimax.io/anthropic/v1/messages","minimax-cn":"https://api.minimaxi.com/anthropic/v1/messages",alicode:"https://coding.dashscope.aliyuncs.com/v1/chat/completions","alicode-intl":"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions","volcengine-ark":"https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions",byteplus:"https://ark.ap-southeast.bytepluses.com/api/coding/v3/chat/completions",openai:"https://api.openai.com/v1/chat/completions","vercel-ai-gateway":"https://ai-gateway.vercel.sh/v1/chat/completions",anthropic:"https://api.anthropic.com/v1/messages",gemini:"https://generativelanguage.googleapis.com/v1beta/models",ollama:"https://ollama.com/api/chat","ollama-local":"http://localhost:11434/api/chat","notion-ai":"https://app.notion.com/api/v3/runInferenceTranscript"}},39326:(a,b,c)=>{"use strict";c.d(b,{B:()=>h,p:()=>g});var d=c(71998);function e(a){return null==a?"":String(a).trim()}let f=new Map;function g(a,b,c){if(!a||0===a.length)return null;if(1===a.length)return a[0];if("round-robin"===b){let b=f.get(c)||{index:-1};return b.index=(b.index+1)%a.length,f.set(c,b),a[b.index]}return"random"===b?a[Math.floor(Math.random()*a.length)]:a[0]}async function h(a={}){try{let b=e(a?.proxyPoolId),c="__none__"===b?"":b,f=function(a={}){let b=a?.connectionProxyEnabled===!0,c=e(a?.connectionProxyUrl);return{connectionProxyEnabled:b,connectionProxyUrl:c,connectionNoProxy:e(a?.connectionNoProxy)}}(a);if(c){let a=await (0,d.hr)(c),b=e(a?.proxyUrl),f=e(a?.noProxy);if(a&&!0===a.isActive&&b){if("vercel"===a.type||"cloudflare"===a.type||"deno"===a.type)return{source:a.type,proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:f,strictProxy:!0===a.strictProxy,vercelRelayUrl:b};return{source:"pool",proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!0,connectionProxyUrl:b,connectionNoProxy:f,strictProxy:!0===a.strictProxy}}}if(f.connectionProxyEnabled&&f.connectionProxyUrl)return{source:"legacy",proxyPoolId:c||null,proxyPool:null,...f};return{source:"none",proxyPoolId:c||null,proxyPool:null,...f}}catch(a){return console.error("[resolveConnectionProxyConfig] Failed to resolve proxy config:",a),{source:"error",proxyPoolId:null,proxyPool:null,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:"",strictProxy:!1}}}},47293:(a,b,c)=>{"use strict";c.d(b,{A:()=>f});let d=new Uint8Array(16);var e=c(50122);let f=function(a,b,c){return b||a||!crypto.randomUUID?function(a,b,c){let f=(a=a||{}).random??a.rng?.()??crypto.getRandomValues(d);if(f.length<16)throw Error("Random bytes length must be >= 16");if(f[6]=15&f[6]|64,f[8]=63&f[8]|128,b){if((c=c||0)<0||c+16>b.length)throw RangeError(`UUID byte range ${c}:${c+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[c+a]=f[a];return b}return(0,e.k)(f)}(a,b,c):crypto.randomUUID()}},50122:(a,b,c)=>{"use strict";c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}},52060:(a,b,c)=>{"use strict";c.d(b,{A:()=>d,C:()=>e});let d="2.135.0",e=`CLI/${d} CodeBuddy/${d}`},66811:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{F:()=>y});var e=c(89718),f=c(39326),g=c(74926),h=c(75681),i=c(30869),j=c(83477),k=c(35024),l=c(55330),m=c(12557),n=c(53225),o=c(93943),p=c(92990),q=c(63912),r=c(15626),s=a([l]);l=(s.then?(await s)():s)[0];let z={claude:{checkExpiry:!0,refreshable:!0},codex:{url:"https://chatgpt.com/backend-api/codex/responses",method:"POST",authHeader:"Authorization",authPrefix:"Bearer ",extraHeaders:{"Content-Type":"application/json",originator:"codex_cli_rs","User-Agent":"codex_cli_rs/0.136.0"},body:JSON.stringify({model:"gpt-5.3-codex",input:[],stream:!1,store:!1}),acceptStatuses:[400],refreshable:!0},"gemini-cli":{url:"https://www.googleapis.com/oauth2/v1/userinfo?alt=json",method:"GET",authHeader:"Authorization",authPrefix:"Bearer ",refreshable:!0},antigravity:{url:"https://www.googleapis.com/oauth2/v1/userinfo?alt=json",method:"GET",authHeader:"Authorization",authPrefix:"Bearer ",refreshable:!0},github:{url:"https://api.github.com/user",method:"GET",authHeader:"Authorization",authPrefix:"Bearer ",extraHeaders:{"User-Agent":"ZevaiRouter",Accept:"application/vnd.github+json"}},iflow:{buildUrl:a=>`https://iflow.cn/api/oauth/getUserInfo?accessToken=${encodeURIComponent(a)}`,method:"GET",noAuth:!0},qwen:{checkExpiry:!0,refreshable:!0},kiro:{checkExpiry:!0,refreshable:!0},qoder:{url:"https://openapi.qoder.sh/api/v1/userinfo",method:"GET",authHeader:"Authorization",authPrefix:"Bearer ",refreshable:!1},kimi:{checkExpiry:!0,refreshable:!0},"kimi-coding":{checkExpiry:!0,refreshable:!0},cursor:{tokenExists:!0},kilocode:{url:`${p.MZ.apiBaseUrl}/api/profile`,method:"GET",authHeader:"Authorization",authPrefix:"Bearer "},cline:{refreshable:!0},clinepass:{refreshable:!0},kimchi:{url:p.Td.validationUrl||"https://api.cast.ai/v1/llm/openai/supported-providers",method:"GET",authHeader:"Authorization",authPrefix:"Bearer ",extraHeaders:{Accept:"application/json","User-Agent":"kimchi/0.1.40"},refreshable:!1},"grok-cli":{url:k.xq["grok-cli"]?.userUrl||"https://cli-chat-proxy.grok.com/v1/user",method:"GET",authHeader:"Authorization",authPrefix:"Bearer ",extraHeaders:{Accept:"application/json",...k.xq["grok-cli"]?.headers||{"User-Agent":"grok-pager/0.2.93 grok-shell/0.2.93 (linux; x86_64)","x-xai-token-auth":"xai-grok-cli","x-grok-client-identifier":"grok-pager","x-grok-client-version":"0.2.93"}},refreshable:!0},gitlab:{url:"https://gitlab.com/api/v4/user",method:"GET",authHeader:"Authorization",authPrefix:"Bearer "},codebuddy:{tokenExists:!0},"codebuddy-cn":{tokenExists:!0}};async function t(a){return await fetch("https://api.cline.bot/api/v1/users/me",{method:"GET",headers:(0,r.buildClineHeaders)(a,{Accept:"application/json"})})}async function u(a){let b=a.provider,c=a.refreshToken;if(!c)return null;try{if("gemini-cli"===b||"antigravity"===b){let a="gemini-cli"===b?p.LT:p.YT,d=await fetch("https://oauth2.googleapis.com/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:a.clientId,client_secret:a.clientSecret,grant_type:"refresh_token",refresh_token:c})});if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,expiresIn:e.expires_in,refreshToken:e.refresh_token||c}}if("codex"===b||"grok-cli"===b||"xai"===b)return await (0,o.Vq)(b,a,console);if("claude"===b){let a=await fetch(p.OV.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"refresh_token",refresh_token:c,client_id:p.OV.clientId})});if(!a.ok)return null;let b=await a.json();return{accessToken:b.access_token,expiresIn:b.expires_in,refreshToken:b.refresh_token||c}}if("kiro"===b){let b=a.providerSpecificData||{},d=b.clientId||a.clientId,e=b.clientSecret||a.clientSecret,f=b.region||a.region;if(d&&e){let a=`https://oidc.${f||"us-east-1"}.amazonaws.com/token`,b=await fetch(a,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({clientId:d,clientSecret:e,refreshToken:c,grantType:"refresh_token"})});if(!b.ok)return null;let g=await b.json();return{accessToken:g.accessToken,expiresIn:g.expiresIn||3600,refreshToken:g.refreshToken||c}}let g=await fetch(p.Tx.socialRefreshUrl,{method:"POST",headers:{"Content-Type":"application/json","User-Agent":"kiro-cli/2.12.2"},body:JSON.stringify({refreshToken:c})});if(!g.ok)return null;let h=await g.json();return{accessToken:h.accessToken,expiresIn:h.expiresIn||3600,refreshToken:h.refreshToken||c}}if("qwen"===b){let a=await fetch(p.Hp.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:c,client_id:p.Hp.clientId})});if(!a.ok)return null;let b=await a.json();return{accessToken:b.access_token,expiresIn:b.expires_in,refreshToken:b.refresh_token||c}}if("cline"===b||"clinepass"===b){let a=await fetch(p.lB.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({refreshToken:c,grantType:"refresh_token",clientType:"extension"})});if(!a.ok)return null;let b=await a.json(),d=b?.data||b,e=d?.expiresAt?Math.max(1,Math.floor((new Date(d.expiresAt).getTime()-Date.now())/1e3)):3600;return{accessToken:d?.accessToken,expiresIn:e,refreshToken:d?.refreshToken||c}}if("codebuddy"===b||"codebuddy-cn"===b){let a="codebuddy-cn"===b?p.ne:p.Nl,d=await fetch(a.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":a.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":a.domain,"X-Refresh-Token":c,"X-Auth-Refresh-Source":"plugin","X-Product":"SaaS"},body:"{}"});if(!d.ok)return null;let e=await d.json(),f=e?.data||e,g=f?.accessToken||f?.access_token;if(!g)return null;return{accessToken:g,expiresIn:f?.expiresIn||f?.expires_in||86400,refreshToken:f?.refreshToken||f?.refresh_token||c}}return null}catch(a){return console.log(`Error refreshing ${b} token:`,a.message),null}}async function v(a,b=null){if("autoclaw"===a.provider){if(!a.accessToken)return{valid:!1,error:"No access token",refreshed:!1};try{let{AUTOCLAW_WALLET_ENDPOINT:d,buildAutoClawWalletHeaders:e}=await Promise.resolve().then(c.bind(c,42693)),f=await w(d,{method:"GET",headers:e(a.accessToken)},b);if(!f.ok){if(401===f.status||403===f.status)return{valid:!1,error:"Token invalid or revoked",refreshed:!1};return{valid:!1,error:`AutoClaw API returned ${f.status}`,refreshed:!1}}let g=await f.json().catch(()=>null);if(g&&0===g.code)return{valid:!0,error:null,refreshed:!1,newTokens:null};return{valid:!1,error:"Token invalid or revoked",refreshed:!1}}catch(a){return{valid:!1,error:a.message,refreshed:!1}}}let d=z[a.provider];if(!d)return{valid:!1,error:"Provider test not supported",refreshed:!1};if(!a.accessToken)return{valid:!1,error:"No access token",refreshed:!1};if(d.tokenExists)return{valid:!0,error:null,refreshed:!1,newTokens:null};let e=a.accessToken,f=!1,g=null,h=(0,o.fp)(a.provider,a);if(d.refreshable&&h&&a.refreshToken){let b=await u(a);if(!b)return{valid:!1,error:"Token expired and refresh failed",refreshed:!1};e=b.accessToken,f=!0,g=b}if(d.checkExpiry)return f?{valid:!0,error:null,refreshed:f,newTokens:g}:h?{valid:!1,error:"Token expired",refreshed:!1}:{valid:!0,error:null,refreshed:!1,newTokens:null};if("cline"===a.provider||"clinepass"===a.provider){let b=async a=>{let b=await t(a);return b.ok?{valid:!0,error:null,refreshed:f,newTokens:g}:401===b.status?{valid:!1,error:"Token invalid or revoked",refreshed:f}:403===b.status?{valid:!1,error:"Access denied",refreshed:f}:{valid:!1,error:`API returned ${b.status}`,refreshed:f}},c=await b(e);if(c.valid||"Token invalid or revoked"!==c.error||!a.refreshToken)return c;let d=await u(a);return d?.accessToken?(f=!0,g=d,e=d.accessToken,await b(e)):{valid:!1,error:"Token invalid or revoked",refreshed:!1}}try{let c=d.buildUrl?d.buildUrl(e):d.url,h=d.noAuth?{...d.extraHeaders}:{[d.authHeader]:`${d.authPrefix}${e}`,...d.extraHeaders},i={method:d.method,headers:h};d.body&&(i.body=d.body);let j=await w(c,i,b);if(j.ok||d.acceptStatuses&&d.acceptStatuses.includes(j.status))return{valid:!0,error:null,refreshed:f,newTokens:g};if(401===j.status&&d.refreshable&&!f&&a.refreshToken){let e=await u(a);if(e){let a=d.buildUrl?d.buildUrl(e.accessToken):c,f=d.noAuth?{...d.extraHeaders}:{[d.authHeader]:`${d.authPrefix}${e.accessToken}`,...d.extraHeaders},g={method:d.method,headers:f};d.body&&(g.body=d.body);let h=await w(a,g,b);if(h.ok||d.acceptStatuses&&d.acceptStatuses.includes(h.status))return{valid:!0,error:null,refreshed:!0,newTokens:e}}return{valid:!1,error:"Token invalid or revoked",refreshed:!1}}if(401===j.status)return{valid:!1,error:"Token invalid or revoked",refreshed:f};if(403===j.status)return{valid:!1,error:"Access denied",refreshed:f};return{valid:!1,error:`API returned ${j.status}`,refreshed:f}}catch(a){return{valid:!1,error:a.message,refreshed:f}}}async function w(a,b={},d=null){if(d?.vercelRelayUrl){let{proxyAwareFetch:e}=await Promise.resolve().then(c.bind(c,39609));return e(a,b,{vercelRelayUrl:d.vercelRelayUrl})}if(!d?.connectionProxyEnabled||!d?.connectionProxyUrl)return fetch(a,b);let{proxyAwareFetch:e}=await Promise.resolve().then(c.bind(c,39609));return e(a,b,{connectionProxyEnabled:!0,connectionProxyUrl:d.connectionProxyUrl,connectionNoProxy:d.connectionNoProxy||""})}async function x(a,b=null){if((0,h.mq)(a.provider)){let c=a.providerSpecificData?.baseUrl;if(!c)return{valid:!1,error:"Missing base URL"};try{let d=await w(`${c.replace(/\/$/,"")}/models`,{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:d.ok,error:d.ok?null:"Invalid API key or base URL"}}catch(a){return{valid:!1,error:a.message}}}if((0,h.gb)(a.provider)){let c=a.providerSpecificData?.baseUrl;if(!c)return{valid:!1,error:"Missing base URL"};try{(c=c.replace(/\/$/,"")).endsWith("/messages")&&(c=c.slice(0,-9));let d=await w(`${c}/models`,{headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01",Authorization:`Bearer ${a.apiKey}`}},b);return{valid:d.ok,error:d.ok?null:"Invalid API key or base URL"}}catch(a){return{valid:!1,error:a.message}}}try{switch(a.provider){case"qoder":try{let c=await (0,n.EV)(a,{forceRefresh:!0,proxyOptions:b}),d=Array.isArray(c?.models);return{valid:d,error:d?null:"Qoder PAT validation failed"}}catch{return{valid:!1,error:"Qoder PAT validation failed"}}case"cloudflare-ai":{let c=(a.providerSpecificData||{}).accountId;if(!c)return{valid:!1,error:"Missing Account ID"};let d=`https://api.cloudflare.com/client/v4/accounts/${c}/ai/v1/chat/completions`,e=await w(d,{method:"POST",headers:{Authorization:`Bearer ${a.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify({model:(0,j.fZ)("cloudflare-ai"),messages:[{role:"user",content:"test"}],max_tokens:1})},b),f=401!==e.status&&403!==e.status&&404!==e.status;return{valid:f,error:f?null:"Invalid API token or Account ID"}}case"azure":{let c=a.providerSpecificData||{},d=(c.azureEndpoint||"").replace(/\/$/,""),e=c.deployment||"gpt-4",f=c.apiVersion||"2024-10-01-preview",g=`${d}/openai/deployments/${e}/chat/completions?api-version=${f}`,h={"api-key":a.apiKey,"Content-Type":"application/json"};c.organization&&(h["OpenAI-Organization"]=c.organization);let i=await w(g,{method:"POST",headers:h,body:JSON.stringify({messages:[{role:"user",content:"test"}],max_completion_tokens:1})},b),j=401!==i.status&&403!==i.status;return{valid:j,error:j?null:"Invalid API key or Azure configuration"}}case"openai":{let c=await w("https://api.openai.com/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"vercel-ai-gateway":{let c=await w("https://ai-gateway.vercel.sh/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"anthropic":{let c=await w("https://api.anthropic.com/v1/messages",{method:"POST",headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01","content-type":"application/json"},body:JSON.stringify({model:"claude-3-haiku-20240307",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"gemini":{let c=await w(`https://generativelanguage.googleapis.com/v1/models?key=${a.apiKey}`,{},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"openrouter":{let c=await w("https://openrouter.ai/api/v1/auth/key",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"glm":{let c=await w("https://api.z.ai/api/anthropic/v1/messages",{method:"POST",headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01","content-type":"application/json"},body:JSON.stringify({model:"glm-4.7",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"glm-cn":{let c=await w("https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",{method:"POST",headers:{Authorization:`Bearer ${a.apiKey}`,"content-type":"application/json"},body:JSON.stringify({model:"glm-4.7",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"minimax":case"minimax-cn":{let c=await w({minimax:"https://api.minimax.io/anthropic/v1/messages","minimax-cn":"https://api.minimaxi.com/anthropic/v1/messages"}[a.provider],{method:"POST",headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01","content-type":"application/json"},body:JSON.stringify({model:"minimax-m2",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"kimi":{let c=await w("https://api.kimi.com/coding/v1/messages",{method:"POST",headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01","content-type":"application/json"},body:JSON.stringify({model:"kimi-latest",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"alicode":case"alicode-intl":case"alims-intl":{let c="alims-intl"===a.provider?"https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions":"alicode-intl"===a.provider?"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions":"https://coding.dashscope.aliyuncs.com/v1/chat/completions",d=await w(c,{method:"POST",headers:{Authorization:`Bearer ${a.apiKey}`,"content-type":"application/json"},body:JSON.stringify({model:(0,j.fZ)(a.provider),max_tokens:1,messages:[{role:"user",content:"test"}]})},b),e=401!==d.status&&403!==d.status;return{valid:e,error:e?null:"Invalid API key"}}case"volcengine-ark":case"byteplus":{let c=await w(i.X3[a.provider],{method:"POST",headers:{Authorization:`Bearer ${a.apiKey}`,"content-type":"application/json"},body:JSON.stringify({model:(0,j.fZ)(a.provider),max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"deepseek":{let c=await w("https://api.deepseek.com/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"groq":{let c=await w("https://api.groq.com/openai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"mistral":{let c=await w("https://api.mistral.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"xai":{let c=await w("https://api.x.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"nvidia":{let c=await w("https://integrate.api.nvidia.com/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"perplexity":{let c=await w("https://api.perplexity.ai/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"together":{let c=await w("https://api.together.xyz/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"fireworks":{let c=await w("https://api.fireworks.ai/inference/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"cerebras":{let c=await w("https://api.cerebras.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"cohere":{let c=await w("https://api.cohere.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"nebius":{let c=await w("https://api.studio.nebius.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"siliconflow":{let c=await w("https://api.siliconflow.cn/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"hyperbolic":{let c=await w("https://api.hyperbolic.xyz/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"ollama":{let b=await fetch("https://ollama.com/api/tags",{headers:{Authorization:`Bearer ${a.apiKey}`}});return{valid:b.ok,error:b.ok?null:"Invalid API key"}}case"ollama-local":{let b=(0,k.Ak)(a),c=await fetch(`${b}/api/tags`);return{valid:c.ok,error:c.ok?null:`Ollama not reachable at ${b}`}}case"deepgram":{let c=await w("https://api.deepgram.com/v1/projects",{headers:{Authorization:`Token ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"assemblyai":{let c=await w("https://api.assemblyai.com/v1/account",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"nanobanana":{let c=await w("https://api.nanobananaapi.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"fal-ai":{let c=await w("https://api.fal.ai/v1/models?limit=1",{headers:{Authorization:`Key ${a.apiKey}`}},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"chutes":{let c=await w("https://llm.chutes.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"grok-web":{let c=a.apiKey.startsWith("sso=")?a.apiKey.slice(4):a.apiKey,d=a=>Array.from(crypto.getRandomValues(new Uint8Array(a)),a=>a.toString(16).padStart(2,"0")).join(""),e=Buffer.from("e:TypeError: Cannot read properties of null (reading 'children')").toString("base64"),f=await w("https://grok.com/rest/app-chat/conversations/new",{method:"POST",headers:{Accept:"*/*","Content-Type":"application/json",Cookie:`sso=${c}`,Origin:"https://grok.com",Referer:"https://grok.com/","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36","x-statsig-id":e,"x-xai-request-id":crypto.randomUUID(),traceparent:`00-${d(16)}-${d(8)}-00`},body:JSON.stringify({temporary:!0,modelName:"grok-4",message:"ping",fileAttachments:[],imageAttachments:[],disableSearch:!1,enableImageGeneration:!1,sendFinalMetadata:!0})},b),g=401!==f.status&&403!==f.status;return{valid:g,error:g?null:"Invalid SSO cookie"}}case"perplexity-web":{let c=a.apiKey;c.startsWith("__Secure-next-auth.session-token=")&&(c=c.slice(33));let d=await w("https://www.perplexity.ai/api/auth/session",{method:"GET",headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36",Cookie:`__Secure-next-auth.session-token=${c}`}},b);if(!d.ok)return{valid:!1,error:"Invalid session cookie"};let e=await d.json().catch(()=>null),f=!!(e&&e.user);return{valid:f,error:f?null:"Session expired — re-paste cookie"}}case"notion-ai":return(0,q.s$)({apiKey:a.apiKey,providerSpecificData:a.providerSpecificData||{},fetchImpl:(a,c)=>w(a,c,b),signal:AbortSignal.timeout(12e3)});case"opencode-go":{let c=await w("https://opencode.ai/zen/go/v1/chat/completions",{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a.apiKey}`},body:JSON.stringify({model:(0,j.fZ)("opencode-go"),messages:[{role:"user",content:"ping"}],max_tokens:1,stream:!1})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"xiaomi-mimo":case"xiaomi-tokenplan":{let c=await w(`${{"xiaomi-mimo":"https://api.xiaomimimo.com/v1","xiaomi-tokenplan":"https://token-plan-sgp.xiaomimimo.com/v1"}[a.provider]}/models`,{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"codebuddy":case"codebuddy-cn":{let c="codebuddy-cn"===a.provider?"cb-cn":"cb",d=(0,j.fZ)(c),e=(0,l.SB)(a.provider),f={apiKey:a.apiKey,accessToken:a.accessToken,providerSpecificData:a.providerSpecificData||{}},g=e.buildHeaders(f,!0),h=e.transformRequest(d,{model:d,max_tokens:1,stream:!0,messages:[{role:"user",content:"hi"}]},!0,f),i=await w(e.buildUrl(d,!0,0,f),{method:"POST",headers:g,body:e.prepareRequestBody(h,g)},b);if(i.ok){try{await i.body?.cancel?.()}catch{}return{valid:!0,error:null}}let k=await i.json().catch(()=>null);if(k?.code===11102)return{valid:!1,inconclusive:!0,error:"Test model is not available for this account"};let m=429===i.status||400===i.status;return{valid:m,error:m?null:`Invalid API key (${i.status})`}}case"kiro":{let{KiroService:b}=await c.e(4790).then(c.bind(c,62409)),d=a.providerSpecificData?.region||"us-east-1";try{return await new b().validateApiKey(a.apiKey,d),{valid:!0,error:null}}catch(a){return{valid:!1,error:a?.message||"API key validation failed"}}}default:{let c=k.xq[a.provider];if(!c?.baseUrl||"openai"!==c.format)return{valid:!1,error:"Provider test not supported"};let d={Accept:"application/json",...c.headers||{}};"x-api-key"===c.authHeader?d["X-API-Key"]=a.apiKey:d.Authorization=`Bearer ${a.apiKey}`;let e=c.validateUrl||c.baseUrl.replace(/\/chat\/completions$/,"/models"),f=await w(e,{headers:d},b),g=f.ok||429===f.status;return{valid:g,error:g?null:`Invalid API key (${f.status})`}}}}catch(a){return{valid:!1,error:a.message}}}async function y(a){let b,c=await (0,e.Mc)(a);if(!c)return{valid:!1,error:"Connection not found",latencyMs:0,testedAt:new Date().toISOString()};let d=await (0,f.B)(c.providerSpecificData||{});if(d.connectionProxyEnabled&&d.connectionProxyUrl&&!d.vercelRelayUrl){let b=await (0,g.C)({proxyUrl:d.connectionProxyUrl});if(!b.ok){let c=b.error||`Proxy test failed with status ${b.status}`;return await (0,e.updateProviderConnection)(a,{testStatus:"error",lastError:c,lastErrorAt:new Date().toISOString()}),{valid:!1,error:c,latencyMs:0,testedAt:new Date().toISOString()}}}let h=Date.now();b="apikey"===c.authType||"cookie"===c.authType?await x(c,d):await v(c,d);let i=Date.now()-h,j=b.valid&&!!(0,m.kJ)(c),k=b.inconclusive?{}:{testStatus:b.valid?"active":"error",lastError:b.valid?j?c.lastError:null:b.error,lastErrorAt:b.valid?j?c.lastErrorAt:null:new Date().toISOString()};return b.refreshed&&b.newTokens&&(b.newTokens.accessToken&&(k.accessToken=b.newTokens.accessToken),b.newTokens.refreshToken&&(k.refreshToken=b.newTokens.refreshToken),b.newTokens.idToken&&(k.idToken=b.newTokens.idToken),b.newTokens.lastRefreshAt&&(k.lastRefreshAt=b.newTokens.lastRefreshAt),b.newTokens.expiresIn&&(k.expiresIn=b.newTokens.expiresIn),b.newTokens.expiresIn?k.expiresAt=new Date(Date.now()+1e3*b.newTokens.expiresIn).toISOString():b.newTokens.expiresAt&&(k.expiresAt=b.newTokens.expiresAt),b.newTokens.providerSpecificData&&(k.providerSpecificData={...c.providerSpecificData||{},...b.newTokens.providerSpecificData})),await (0,e.updateProviderConnection)(a,k),{valid:b.valid,error:b.error,refreshed:!!b.refreshed,latencyMs:i,testedAt:new Date().toISOString()}}d()}catch(a){d(a)}})},71998:(a,b,c)=>{"use strict";c.d(b,{Fh:()=>d.Fh,Iu:()=>d.Iu,Kg:()=>d.Kg,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.getModelAliases,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,createProviderConnection:()=>d.iE,fK:()=>d.fK,fv:()=>d.deleteModelAlias,getProviderConnections:()=>d.getProviderConnections,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,o5:()=>d.o5,op:()=>d.op,rj:()=>d.updateProviderConnection,uL:()=>d.uL,ui:()=>d.ui,uv:()=>d.uv});var d=c(89718)},73159:(a,b,c)=>{"use strict";c.d(b,{Ue:()=>j,oT:()=>k,qF:()=>h});let d="https://auth.x.ai",e="/oauth2/authorize",f="/oauth2/token",g="/.well-known/openid-configuration",h="openid profile email offline_access grok-cli:access api:access",i="/callback",j=96,k={clientId:"b1a00492-073a-47ea-816f-4c329264a828",issuer:d,authEndpointPath:e,tokenEndpointPath:f,discoveryPath:g,authorizeUrl:`${d}${e}`,tokenUrl:`${d}${f}`,discoveryUrl:`${d}${g}`,scope:h,apiBaseUrl:"https://api.x.ai/v1",redirectUri:`http://127.0.0.1:56121${i}`,loopbackPort:56121,callbackPath:i,pkceVerifierBytes:96,refreshLeadSeconds:300,userAgent:"grok-cli/zevairouter",codeChallengeMethod:"S256"}},74926:(a,b,c)=>{"use strict";c.d(b,{C:()=>f});var d=c(47774);function e(a){return null==a?"":String(a).trim()}async function f({proxyUrl:a,testUrl:b,timeoutMs:c}={}){let g,h=e(a);if(!h)return{ok:!1,status:400,error:"proxyUrl is required"};let i=e(b)||"https://google.com/",j=Number(c),k=Number.isFinite(j)&&j>0?Math.min(j,3e4):8e3;try{try{g=new d.ProxyAgent({uri:h})}catch(a){return{ok:!1,status:400,error:`Invalid proxy URL: ${a?.message||String(a)}`}}let a=new AbortController,b=Date.now(),c=setTimeout(()=>a.abort(),k);try{let c=await (0,d.hd)(i,{method:"HEAD",dispatcher:g,signal:a.signal,headers:{"User-Agent":"ZevaiRouter"}});return{ok:c.ok,status:c.status,statusText:c.statusText,url:i,elapsedMs:Date.now()-b}}catch(b){let a=b?.name==="AbortError"?"Proxy test timed out":function(a){if(!a)return"Unknown error";let b=a?.message||String(a),c=a?.cause?.code||a?.code,d=a?.cause?.message;return d&&d!==b?c?`${b}: ${d} (${c})`:`${b}: ${d}`:c&&!b.includes(c)?`${b} (${c})`:b}(b);return{ok:!1,status:500,error:a}}finally{clearTimeout(c)}}finally{try{await g?.close?.()}catch{}}}},78335:()=>{},81329:(a,b,c)=>{"use strict";c.d(b,{Xg:()=>d.Xg,eh:()=>e,vq:()=>d.vq});var d=c(83477);Object.entries(c(75681).AI_PROVIDERS).filter(([,a])=>a.passthroughModels).map(([a])=>a);let e=Object.entries(d.vq).flatMap(([a,b])=>b.map(b=>({provider:a,model:b.id,name:b.name})))},89718:(a,b,c)=>{"use strict";c.d(b,{CG:()=>d.CG,Dj:()=>d.Dj,Fh:()=>d.Fh,Iq:()=>d.Iq,Iu:()=>d.Iu,K1:()=>d.K1,KJ:()=>d.KJ,KK:()=>d.KK,Kg:()=>d.Kg,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,ME:()=>d.ME,Mc:()=>d.Mc,NR:()=>d.NR,Op:()=>d.Op,PX:()=>d.PX,Pb:()=>d.Pb,Pc:()=>d.Pc,QI:()=>d.QI,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Uv:()=>d.Uv,VT:()=>d.VT,XW:()=>d.XW,Xx:()=>d.Xx,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,dK:()=>d.dK,deleteModelAlias:()=>d.fv,ek:()=>d.ek,fK:()=>d.fK,getModelAliases:()=>d.OM,getProviderConnections:()=>d.P,getQuotaSnapshot:()=>d.LF,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,jd:()=>d.jd,mt:()=>d.mt,o5:()=>d.o5,oG:()=>d.oG,op:()=>d.op,p3:()=>d.p3,qd:()=>d.qd,r4:()=>d.r4,tV:()=>d.tV,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,uv:()=>d.uv,yF:()=>d.yF,yW:()=>d.yW,yg:()=>d.yg,zP:()=>d.zP,zY:()=>d.zY});var d=c(93999)},92990:(a,b,c)=>{"use strict";c.d(b,{DI:()=>i,Hp:()=>k,LT:()=>j,MZ:()=>v,Nl:()=>B,Nu:()=>p,OV:()=>h,RY:()=>F,S6:()=>s,SK:()=>D,Td:()=>y,Tx:()=>q,WN:()=>t,Ww:()=>G,YT:()=>n,ZL:()=>m,cD:()=>o,eD:()=>E,f7:()=>A,hF:()=>l,lB:()=>w,ne:()=>C,qp:()=>z,t:()=>u,w1:()=>x});var d=c(21820),e=c(73159),f=c(52060);function g(){let a=(0,d.platform)(),b=(0,d.arch)();return"darwin"===a?"arm64"===b?2:1:"linux"===a?"arm64"===b?4:3:5*("win32"===a)}let h={clientId:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",authorizeUrl:"https://claude.ai/oauth/authorize",tokenUrl:"https://api.anthropic.com/v1/oauth/token",scopes:["org:create_api_key","user:profile","user:inference"],codeChallengeMethod:"S256"},i={clientId:"app_EMoamEEZ73f0CkXaXp7hrann",authorizeUrl:"https://auth.openai.com/oauth/authorize",tokenUrl:"https://auth.openai.com/oauth/token",deviceCodeUrl:"https://auth.openai.com/api/accounts/deviceauth/usercode",deviceTokenUrl:"https://auth.openai.com/api/accounts/deviceauth/token",deviceVerificationUrl:"https://auth.openai.com/codex/device",deviceRedirectUri:"https://auth.openai.com/deviceauth/callback",scope:"openid profile email offline_access",codeChallengeMethod:"S256",extraParams:{id_token_add_organizations:"true",codex_cli_simplified_flow:"true",originator:"codex_cli_rs"}},j={clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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",authorizeUrl:"https://accounts.google.com/o/oauth2/v2/auth",tokenUrl:"https://oauth2.googleapis.com/token",userInfoUrl:"https://www.googleapis.com/oauth2/v1/userinfo",scopes:["https://www.googleapis.com/auth/cloud-platform","https://www.googleapis.com/auth/userinfo.email","https://www.googleapis.com/auth/userinfo.profile"]},k={clientId:"f0304373b74a44d2b584a3fb70ca9e56",deviceCodeUrl:"https://chat.qwen.ai/api/v1/oauth2/device/code",tokenUrl:"https://chat.qwen.ai/api/v1/oauth2/token",scope:"openid profile email model.completion",codeChallengeMethod:"S256"},l={openApiBaseUrl:"https://openapi.qoder.sh",centerBaseUrl:"https://center.qoder.sh",chatBaseUrl:"https://api3.qoder.sh",deviceTokenUrl:"https://openapi.qoder.sh/api/v1/deviceToken/poll",refreshUrl:"https://center.qoder.sh/algo/api/v3/user/refresh_token",userInfoUrl:"https://openapi.qoder.sh/api/v1/userinfo",quotaUsageUrl:"https://openapi.qoder.sh/api/v2/quota/usage",loginUrl:"https://qoder.com/device/selectAccounts"},m={clientId:"10009311001",clientSecret:"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",authorizeUrl:"https://iflow.cn/oauth",tokenUrl:"https://iflow.cn/oauth/token",userInfoUrl:"https://iflow.cn/api/oauth/getUserInfo",extraParams:{loginMethod:"phone",type:"phone"}},n={clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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",authorizeUrl:"https://accounts.google.com/o/oauth2/v2/auth",tokenUrl:"https://oauth2.googleapis.com/token",userInfoUrl:"https://www.googleapis.com/oauth2/v1/userinfo",scopes:["https://www.googleapis.com/auth/cloud-platform","https://www.googleapis.com/auth/userinfo.email","https://www.googleapis.com/auth/userinfo.profile","https://www.googleapis.com/auth/cclog","https://www.googleapis.com/auth/experimentsandconfigs"],apiEndpoint:"https://cloudcode-pa.googleapis.com",apiVersion:"v1internal",loadCodeAssistEndpoint:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",onboardUserEndpoint:"https://cloudcode-pa.googleapis.com/v1internal:onboardUser",loadCodeAssistUserAgent:"google-api-nodejs-client/9.15.1",loadCodeAssistApiClient:"google-cloud-sdk vscode_cloudshelleditor/0.1",loadCodeAssistClientMetadata:JSON.stringify({ideType:9,platform:g(),pluginType:2})};function o(){return{ideType:9,platform:g(),pluginType:2}}let p={clientId:"Iv1.b507a08c87ecfe98",deviceCodeUrl:"https://github.com/login/device/code",tokenUrl:"https://github.com/login/oauth/access_token",userInfoUrl:"https://api.github.com/user",scopes:"read:user",apiVersion:"2022-11-28",copilotTokenUrl:"https://api.github.com/copilot_internal/v2/token",userAgent:"GitHubCopilotChat/0.26.7",editorVersion:"vscode/1.85.0",editorPluginVersion:"copilot-chat/0.26.7"},q={ssoOidcEndpoint:"https://oidc.us-east-1.amazonaws.com",registerClientUrl:"https://oidc.us-east-1.amazonaws.com/client/register",deviceAuthUrl:"https://oidc.us-east-1.amazonaws.com/device_authorization",tokenUrl:"https://oidc.us-east-1.amazonaws.com/token",startUrl:"https://view.awsapps.com/start",clientName:"kiro-oauth-client",clientType:"public",scopes:["codewhisperer:completions","codewhisperer:analysis","codewhisperer:conversations"],grantTypes:["urn:ietf:params:oauth:grant-type:device_code","refresh_token"],issuerUrl:"https://identitycenter.amazonaws.com/ssoins-722374e8c3c8e6c6",socialAuthEndpoint:"https://prod.us-east-1.auth.desktop.kiro.dev",socialLoginUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/login",socialTokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/oauth/token",socialRefreshUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authMethods:["builder-id","idc","google","github","import"]},r=/^[a-z]{2}-[a-z]+-\d{1,2}$/;function s(a){if("string"!=typeof a||!r.test(a))throw Error("Invalid region");return a}let t={apiEndpoint:"https://api2.cursor.sh",chatEndpoint:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",modelsEndpoint:"/aiserver.v1.AiService/GetDefaultModelNudgeData",api3Endpoint:"https://api3.cursor.sh",agentEndpoint:"https://agent.api5.cursor.sh",agentNonPrivacyEndpoint:"https://agentn.api5.cursor.sh",clientVersion:"3.1.0",clientType:"ide",tokenStoragePaths:{linux:"~/.config/Cursor/User/globalStorage/state.vscdb",macos:"/Users/<user>/Library/Application Support/Cursor/User/globalStorage/state.vscdb",windows:"%APPDATA%\\Cursor\\User\\globalStorage\\state.vscdb"},dbKeys:{accessToken:"cursorAuth/accessToken",machineId:"storage.serviceMachineId"}},u={clientId:process.env.KIMI_CODING_OAUTH_CLIENT_ID||"17e5f671-d194-4dfb-9706-5516cb48c098",deviceCodeUrl:"https://auth.kimi.com/api/oauth/device_authorization",tokenUrl:"https://auth.kimi.com/api/oauth/token"},v={apiBaseUrl:"https://api.kilo.ai",initiateUrl:"https://api.kilo.ai/api/device-auth/codes",pollUrlBase:"https://api.kilo.ai/api/device-auth/codes"},w={appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",authorizeUrl:"https://api.cline.bot/api/v1/auth/authorize",tokenExchangeUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"},x={appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",authorizeUrl:"https://api.cline.bot/api/v1/auth/authorize",tokenUrl:"https://api.cline.bot/api/v1/auth/token",tokenExchangeUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"},y={webAppUrl:"https://app.kimchi.dev",validationUrl:"https://api.cast.ai/v1/llm/openai/supported-providers",userInfoUrl:"https://app.kimchi.dev/api/v1/me",modelsUrl:"https://llm.kimchi.dev/v1/models/metadata?include_in_cli=true"},z={clientId:"b1a00492-073a-47ea-816f-4c329264a828",deviceCodeUrl:"https://auth.x.ai/oauth2/device/code",tokenUrl:"https://auth.x.ai/oauth2/token",refreshUrl:"https://auth.x.ai/oauth2/token",scope:e.qF,referrer:"grok-build",refreshLeadMs:3e5},A={defaultBaseUrl:"https://gitlab.com",authorizeUrlPath:"/oauth/authorize",tokenUrlPath:"/oauth/token",userInfoUrlPath:"/api/v4/user",scope:"api read_user",codeChallengeMethod:"S256"},B={baseUrl:"https://www.codebuddy.ai",stateUrl:"https://www.codebuddy.ai/v2/plugin/auth/state",tokenUrl:"https://www.codebuddy.ai/v2/plugin/auth/token",accountUrl:"https://www.codebuddy.ai/v2/plugin/login/account",accountsUrl:"https://www.codebuddy.ai/v2/plugin/accounts",refreshUrl:"https://www.codebuddy.ai/v2/plugin/auth/token/refresh",userAgent:f.C,domain:"www.codebuddy.ai",platform:"CLI",pollInterval:5e3},C={baseUrl:"https://www.codebuddy.cn",stateUrl:"https://www.codebuddy.cn/v2/plugin/auth/state",tokenUrl:"https://www.codebuddy.cn/v2/plugin/auth/token",accountUrl:"https://www.codebuddy.cn/v2/plugin/login/account",accountsUrl:"https://www.codebuddy.cn/v2/plugin/accounts",refreshUrl:"https://www.codebuddy.cn/v2/plugin/auth/token/refresh",userAgent:f.C,domain:"www.codebuddy.cn",platform:"CLI",pollInterval:5e3},D={clientId:"ono9krqynydwx5",clientSecret:"-",loginGuidanceUrls:["https://api.marscode.com/cloudide/api/v3/trae/GetLoginGuidance","https://api.trae.ai/cloudide/api/v3/trae/GetLoginGuidance","https://www.trae.ai/cloudide/api/v3/trae/GetLoginGuidance"],apiOrigins:["https://api.marscode.com","https://api.trae.ai","https://www.trae.ai","https://www.marscode.com"],exchangeTokenPath:"/cloudide/api/v3/trae/oauth/ExchangeToken",getUserInfoPath:"/cloudide/api/v3/trae/GetUserInfo",authorizationPath:"/authorization",callbackPath:"/callback",minAppVersion:"3.5.54",defaultAppVersion:"3.5.54",defaultAppType:"stable",defaultPluginVersion:"local",defaultDeviceId:"0",userAgent:"Trae/1.0.0 antigravity-cockpit-tools",webUrl:"https://www.trae.ai",authScheme:"Cloud-IDE-JWT",tokenLifetimeDays:14,oauthTimeoutMs:6e5},E={clientId:"3GUryQ7ldAeKEuD2obYnppsnmj58eP5u",authBaseUrl:"https://www.windsurf.com",signInPath:"/windsurf/signin",registerApiBaseUrl:"https://register.windsurf.com",registerPath:"/exa.seat_management_pb.SeatManagementService/RegisterUser",oneTimeAuthPath:"/exa.seat_management_pb.SeatManagementService/GetOneTimeAuthToken",currentUserPath:"/exa.seat_management_pb.SeatManagementService/GetCurrentUser",planStatusPath:"/exa.seat_management_pb.SeatManagementService/GetPlanStatus",userStatusPath:"/exa.seat_management_pb.SeatManagementService/GetUserStatus",defaultApiServerUrl:"https://server.codeium.com",firebaseApiKey:"AIzaSyDsOl-1XpT5err0Tcn0TFFod1H8gVGIycY",callbackPath:"/windsurf-auth-callback",userAgent:"antigravity-cockpit-tools",oauthTimeoutMs:6e5},F={webBaseUrl:"https://zed.dev",cloudBaseUrl:"https://cloud.zed.dev",llmBaseUrl:"https://cloud.zed.dev",defaultNativeAppPort:58443,oauthTimeoutMs:6e5},G=3e5},96487:()=>{}};