@jheavenknows/bluerouter 5.3.40 → 5.3.42

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 (471) hide show
  1. package/app/.next-cli-build/BUILD_ID +1 -1
  2. package/app/.next-cli-build/app-path-routes-manifest.json +16 -16
  3. package/app/.next-cli-build/build-manifest.json +2 -2
  4. package/app/.next-cli-build/server/app/(dashboard)/dashboard/ai-power-index/page.js.nft.json +1 -1
  5. package/app/.next-cli-build/server/app/(dashboard)/dashboard/ai-power-index/page_client-reference-manifest.js +1 -1
  6. package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page.js.nft.json +1 -1
  7. package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
  8. package/app/.next-cli-build/server/app/(dashboard)/dashboard/api-keys/page.js.nft.json +1 -1
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/api-keys/page_client-reference-manifest.js +1 -1
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/model-profiles/page.js.nft.json +1 -1
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/model-profiles/page_client-reference-manifest.js +1 -1
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cluster/page.js.nft.json +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cluster/page_client-reference-manifest.js +1 -1
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/local-ai-report/page.js.nft.json +1 -1
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/local-ai-report/page_client-reference-manifest.js +1 -1
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  34. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  35. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  36. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  37. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  38. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  39. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  40. package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovider/page.js.nft.json +1 -1
  41. package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovider/page_client-reference-manifest.js +1 -1
  42. package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovidermonitor/page.js.nft.json +1 -1
  43. package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovidermonitor/page_client-reference-manifest.js +1 -1
  44. package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalquota/page.js.nft.json +1 -1
  45. package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalquota/page_client-reference-manifest.js +1 -1
  46. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  47. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  48. package/app/.next-cli-build/server/app/(dashboard)/dashboard/prompt-logs/page.js.nft.json +1 -1
  49. package/app/.next-cli-build/server/app/(dashboard)/dashboard/prompt-logs/page_client-reference-manifest.js +1 -1
  50. package/app/.next-cli-build/server/app/(dashboard)/dashboard/provider-health/page.js.nft.json +1 -1
  51. package/app/.next-cli-build/server/app/(dashboard)/dashboard/provider-health/page_client-reference-manifest.js +1 -1
  52. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  53. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  54. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  55. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  56. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  57. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  58. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  59. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  60. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  61. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  62. package/app/.next-cli-build/server/app/(dashboard)/dashboard/resource-monitor/page.js.nft.json +1 -1
  63. package/app/.next-cli-build/server/app/(dashboard)/dashboard/resource-monitor/page_client-reference-manifest.js +1 -1
  64. package/app/.next-cli-build/server/app/(dashboard)/dashboard/routing-topology/page.js.nft.json +1 -1
  65. package/app/.next-cli-build/server/app/(dashboard)/dashboard/routing-topology/page_client-reference-manifest.js +1 -1
  66. package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/pricing/page.js.nft.json +1 -1
  67. package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  68. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
  69. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  70. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
  71. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  72. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  73. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  74. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  75. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  76. package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  77. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  78. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  79. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  80. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  81. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  82. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  83. package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  84. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  85. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  86. package/app/.next-cli-build/server/app/_not-found.rsc +5 -5
  87. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +5 -5
  88. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -5
  89. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  90. package/app/.next-cli-build/server/app/api/auth/ldap/test/route.js.nft.json +1 -1
  91. package/app/.next-cli-build/server/app/api/auth/ldap/users/route.js.nft.json +1 -1
  92. package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  93. package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  94. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  95. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  96. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  97. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  98. package/app/.next-cli-build/server/app/api/auth/view-mode/route.js.nft.json +1 -1
  99. package/app/.next-cli-build/server/app/api/branding/[asset]/route.js.nft.json +1 -1
  100. package/app/.next-cli-build/server/app/api/branding/route.js.nft.json +1 -1
  101. package/app/.next-cli-build/server/app/api/branding/upload/route.js.nft.json +1 -1
  102. package/app/.next-cli-build/server/app/api/cli-model-profiles/cloud-models/route.js.nft.json +1 -1
  103. package/app/.next-cli-build/server/app/api/cli-model-profiles/route.js.nft.json +1 -1
  104. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  105. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  106. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/autostart/route.js.nft.json +1 -1
  107. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/prompt-log-db/route.js.nft.json +1 -1
  108. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/root-ca/route.js.nft.json +1 -1
  109. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  110. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  111. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  112. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  113. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  114. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  115. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  116. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  117. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  118. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  119. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  120. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  121. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  122. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  123. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  124. package/app/.next-cli-build/server/app/api/cli-tools/qwen-settings/route.js.nft.json +1 -1
  125. package/app/.next-cli-build/server/app/api/cluster/config/route.js.nft.json +1 -1
  126. package/app/.next-cli-build/server/app/api/cluster/heartbeat/route.js.nft.json +1 -1
  127. package/app/.next-cli-build/server/app/api/cluster/peers/[id]/command/route.js.nft.json +1 -1
  128. package/app/.next-cli-build/server/app/api/cluster/peers/[id]/route.js.nft.json +1 -1
  129. package/app/.next-cli-build/server/app/api/cluster/peers/route.js.nft.json +1 -1
  130. package/app/.next-cli-build/server/app/api/cluster/snapshot/route.js.nft.json +1 -1
  131. package/app/.next-cli-build/server/app/api/cluster/sync/route.js.nft.json +1 -1
  132. package/app/.next-cli-build/server/app/api/cluster/test/route.js.nft.json +1 -1
  133. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  134. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  135. package/app/.next-cli-build/server/app/api/dashboard/ai-power-index/route.js.nft.json +1 -1
  136. package/app/.next-cli-build/server/app/api/dashboard/analytics/ai-models/route.js.nft.json +1 -1
  137. package/app/.next-cli-build/server/app/api/dashboard/analytics/analyze/route.js.nft.json +1 -1
  138. package/app/.next-cli-build/server/app/api/dashboard/analytics/route.js +2 -50
  139. package/app/.next-cli-build/server/app/api/dashboard/analytics/route.js.nft.json +1 -1
  140. package/app/.next-cli-build/server/app/api/dashboard/combos/route.js.nft.json +1 -1
  141. package/app/.next-cli-build/server/app/api/dashboard/endpoint/route.js.nft.json +1 -1
  142. package/app/.next-cli-build/server/app/api/dashboard/local-ai-report/route.js.nft.json +1 -1
  143. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/[id]/route.js.nft.json +1 -1
  144. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/options/route.js.nft.json +1 -1
  145. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/route.js.nft.json +1 -1
  146. package/app/.next-cli-build/server/app/api/dashboard/routing-topology/config/route.js.nft.json +1 -1
  147. package/app/.next-cli-build/server/app/api/dashboard/routing-topology/live/route.js.nft.json +1 -1
  148. package/app/.next-cli-build/server/app/api/dashboard/routing-topology/route.js.nft.json +1 -1
  149. package/app/.next-cli-build/server/app/api/dashboard/token-saver/route.js.nft.json +1 -1
  150. package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  151. package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  152. package/app/.next-cli-build/server/app/api/keys/[id]/caveman-test/route.js.nft.json +1 -1
  153. package/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js.nft.json +1 -1
  154. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  155. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  156. package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  157. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  158. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  159. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  160. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  161. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  162. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  163. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  164. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  165. package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  166. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  167. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  168. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  169. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  170. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  171. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  172. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  173. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  174. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  175. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  176. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  177. package/app/.next-cli-build/server/app/api/oauth/grok-cli/device-code/route.js.nft.json +1 -1
  178. package/app/.next-cli-build/server/app/api/oauth/grok-cli/poll/route.js.nft.json +1 -1
  179. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  180. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  181. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  182. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  183. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  184. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/api-key-models/route.js.nft.json +1 -1
  185. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/import-models/route.js.nft.json +1 -1
  186. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/models/[...routeModel]/route.js.nft.json +1 -1
  187. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/move/route.js.nft.json +1 -1
  188. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/route.js.nft.json +1 -1
  189. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/usage/route.js.nft.json +1 -1
  190. package/app/.next-cli-build/server/app/api/personal-cloud-providers/client/route.js.nft.json +1 -1
  191. package/app/.next-cli-build/server/app/api/personal-cloud-providers/monitor/route.js.nft.json +1 -1
  192. package/app/.next-cli-build/server/app/api/personal-cloud-providers/permissions/route.js.nft.json +1 -1
  193. package/app/.next-cli-build/server/app/api/personal-cloud-providers/route.js.nft.json +1 -1
  194. package/app/.next-cli-build/server/app/api/personal-cloud-providers/routing/route.js.nft.json +1 -1
  195. package/app/.next-cli-build/server/app/api/personal-cloud-providers/shares/route.js.nft.json +1 -1
  196. package/app/.next-cli-build/server/app/api/personal-cloud-providers/visibility/route.js.nft.json +1 -1
  197. package/app/.next-cli-build/server/app/api/pricing/catalog/route.js.nft.json +1 -1
  198. package/app/.next-cli-build/server/app/api/pricing/recalculate/route.js.nft.json +1 -1
  199. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  200. package/app/.next-cli-build/server/app/api/provider-health/route.js.nft.json +1 -1
  201. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  202. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  203. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  204. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  205. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  206. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  207. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  208. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  209. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  210. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  211. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  212. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  213. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  214. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  215. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  216. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  217. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  218. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  219. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  220. package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  221. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  222. package/app/.next-cli-build/server/app/api/resource-monitor/[id]/route.js.nft.json +1 -1
  223. package/app/.next-cli-build/server/app/api/resource-monitor/ai-models/route.js.nft.json +1 -1
  224. package/app/.next-cli-build/server/app/api/resource-monitor/analyze/route.js.nft.json +1 -1
  225. package/app/.next-cli-build/server/app/api/resource-monitor/history/route.js.nft.json +1 -1
  226. package/app/.next-cli-build/server/app/api/resource-monitor/route.js.nft.json +1 -1
  227. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  228. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  229. package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  230. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  231. package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  232. package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  233. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  234. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  235. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
  236. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  237. package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  238. package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  239. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  240. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  241. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  242. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  243. package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  244. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  245. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  246. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  247. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  248. package/app/.next-cli-build/server/app/api/tunnel/tailscale-login/route.js.nft.json +1 -1
  249. package/app/.next-cli-build/server/app/api/tunnel/tailscale-start-daemon/route.js.nft.json +1 -1
  250. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  251. package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  252. package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  253. package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  254. package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  255. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  256. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  257. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  258. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  259. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  260. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  261. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  262. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  263. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  264. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  265. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  266. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  267. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  268. package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  269. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  270. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  271. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  272. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  273. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  274. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  275. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  276. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  277. package/app/.next-cli-build/server/app/api/version/restart/route.js.nft.json +1 -1
  278. package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  279. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  280. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  281. package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  282. package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  283. package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  284. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  285. package/app/.next-cli-build/server/app/callback.html +1 -1
  286. package/app/.next-cli-build/server/app/callback.rsc +5 -5
  287. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +5 -5
  288. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
  289. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +5 -5
  290. package/app/.next-cli-build/server/app/dashboard/ai-power-index.html +1 -1
  291. package/app/.next-cli-build/server/app/dashboard/ai-power-index.rsc +6 -6
  292. package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/!KGRhc2hib2FyZCk/dashboard/ai-power-index/__PAGE__.segment.rsc +6 -6
  293. package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/_full.segment.rsc +6 -6
  294. package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/_tree.segment.rsc +1 -1
  295. package/app/.next-cli-build/server/app/dashboard/api-keys.html +1 -1
  296. package/app/.next-cli-build/server/app/dashboard/api-keys.rsc +9 -9
  297. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard/api-keys/__PAGE__.segment.rsc +9 -9
  298. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_full.segment.rsc +9 -9
  299. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_tree.segment.rsc +1 -1
  300. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  301. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +7 -7
  302. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +7 -7
  303. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +7 -7
  304. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
  305. package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.html +1 -1
  306. package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.rsc +7 -7
  307. package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/model-profiles/__PAGE__.segment.rsc +7 -7
  308. package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/_full.segment.rsc +7 -7
  309. package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/_tree.segment.rsc +1 -1
  310. package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  311. package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +7 -7
  312. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +7 -7
  313. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +7 -7
  314. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
  315. package/app/.next-cli-build/server/app/dashboard/cluster.html +1 -1
  316. package/app/.next-cli-build/server/app/dashboard/cluster.rsc +6 -6
  317. package/app/.next-cli-build/server/app/dashboard/cluster.segments/!KGRhc2hib2FyZCk/dashboard/cluster/__PAGE__.segment.rsc +6 -6
  318. package/app/.next-cli-build/server/app/dashboard/cluster.segments/_full.segment.rsc +6 -6
  319. package/app/.next-cli-build/server/app/dashboard/cluster.segments/_tree.segment.rsc +1 -1
  320. package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  321. package/app/.next-cli-build/server/app/dashboard/combos.rsc +7 -7
  322. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +7 -7
  323. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +7 -7
  324. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
  325. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  326. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +7 -7
  327. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +7 -7
  328. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +7 -7
  329. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
  330. package/app/.next-cli-build/server/app/dashboard/local-ai-report.html +1 -1
  331. package/app/.next-cli-build/server/app/dashboard/local-ai-report.rsc +6 -6
  332. package/app/.next-cli-build/server/app/dashboard/local-ai-report.segments/!KGRhc2hib2FyZCk/dashboard/local-ai-report/__PAGE__.segment.rsc +6 -6
  333. package/app/.next-cli-build/server/app/dashboard/local-ai-report.segments/_full.segment.rsc +6 -6
  334. package/app/.next-cli-build/server/app/dashboard/local-ai-report.segments/_tree.segment.rsc +1 -1
  335. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  336. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +7 -7
  337. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +7 -7
  338. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +7 -7
  339. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +1 -1
  340. package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  341. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +7 -7
  342. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +7 -7
  343. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +7 -7
  344. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
  345. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  346. package/app/.next-cli-build/server/app/dashboard/profile.rsc +7 -7
  347. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +7 -7
  348. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +7 -7
  349. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
  350. package/app/.next-cli-build/server/app/dashboard/prompt-logs.html +1 -1
  351. package/app/.next-cli-build/server/app/dashboard/prompt-logs.rsc +6 -6
  352. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard/prompt-logs/__PAGE__.segment.rsc +6 -6
  353. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_full.segment.rsc +6 -6
  354. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_tree.segment.rsc +1 -1
  355. package/app/.next-cli-build/server/app/dashboard/provider-health.html +1 -1
  356. package/app/.next-cli-build/server/app/dashboard/provider-health.rsc +6 -6
  357. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard/provider-health/__PAGE__.segment.rsc +6 -6
  358. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_full.segment.rsc +6 -6
  359. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_tree.segment.rsc +1 -1
  360. package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  361. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +7 -7
  362. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +7 -7
  363. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +7 -7
  364. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
  365. package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  366. package/app/.next-cli-build/server/app/dashboard/providers.rsc +7 -7
  367. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +7 -7
  368. package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +7 -7
  369. package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
  370. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  371. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +7 -7
  372. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +7 -7
  373. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +7 -7
  374. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
  375. package/app/.next-cli-build/server/app/dashboard/quota.html +1 -1
  376. package/app/.next-cli-build/server/app/dashboard/quota.rsc +8 -8
  377. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +8 -8
  378. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +8 -8
  379. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
  380. package/app/.next-cli-build/server/app/dashboard/resource-monitor.html +1 -1
  381. package/app/.next-cli-build/server/app/dashboard/resource-monitor.rsc +6 -6
  382. package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/!KGRhc2hib2FyZCk/dashboard/resource-monitor/__PAGE__.segment.rsc +6 -6
  383. package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/_full.segment.rsc +6 -6
  384. package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/_tree.segment.rsc +1 -1
  385. package/app/.next-cli-build/server/app/dashboard/routing-topology.html +1 -1
  386. package/app/.next-cli-build/server/app/dashboard/routing-topology.rsc +6 -6
  387. package/app/.next-cli-build/server/app/dashboard/routing-topology.segments/!KGRhc2hib2FyZCk/dashboard/routing-topology/__PAGE__.segment.rsc +6 -6
  388. package/app/.next-cli-build/server/app/dashboard/routing-topology.segments/_full.segment.rsc +6 -6
  389. package/app/.next-cli-build/server/app/dashboard/routing-topology.segments/_tree.segment.rsc +1 -1
  390. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  391. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +6 -6
  392. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing/__PAGE__.segment.rsc +6 -6
  393. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +6 -6
  394. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
  395. package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  396. package/app/.next-cli-build/server/app/dashboard/skills.rsc +7 -7
  397. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +7 -7
  398. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +7 -7
  399. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +1 -1
  400. package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  401. package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +6 -6
  402. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +6 -6
  403. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +6 -6
  404. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +1 -1
  405. package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  406. package/app/.next-cli-build/server/app/dashboard/translator.rsc +7 -7
  407. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +7 -7
  408. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +7 -7
  409. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
  410. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  411. package/app/.next-cli-build/server/app/dashboard/usage.rsc +7 -7
  412. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +7 -7
  413. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +7 -7
  414. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
  415. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  416. package/app/.next-cli-build/server/app/dashboard.rsc +7 -7
  417. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +7 -7
  418. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +7 -7
  419. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +1 -1
  420. package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
  421. package/app/.next-cli-build/server/app/index.html +1 -1
  422. package/app/.next-cli-build/server/app/index.rsc +5 -5
  423. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +5 -5
  424. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +5 -5
  425. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
  426. package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  427. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  428. package/app/.next-cli-build/server/app/landing.html +1 -1
  429. package/app/.next-cli-build/server/app/landing.rsc +5 -5
  430. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +5 -5
  431. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
  432. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +5 -5
  433. package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  434. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  435. package/app/.next-cli-build/server/app/login.html +1 -1
  436. package/app/.next-cli-build/server/app/login.rsc +6 -6
  437. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +6 -6
  438. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
  439. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +6 -6
  440. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  441. package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  442. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  443. package/app/.next-cli-build/server/app-paths-manifest.json +16 -16
  444. package/app/.next-cli-build/server/chunks/2731.js +330 -2
  445. package/app/.next-cli-build/server/chunks/4746.js +1 -1
  446. package/app/.next-cli-build/server/chunks/5210.js +155 -1
  447. package/app/.next-cli-build/server/chunks/6328.js +1 -1
  448. package/app/.next-cli-build/server/chunks/6811.js +1 -1
  449. package/app/.next-cli-build/server/chunks/6992.js +1 -1
  450. package/app/.next-cli-build/server/chunks/7639.js +1 -0
  451. package/app/.next-cli-build/server/instrumentation.js +1 -1
  452. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  453. package/app/.next-cli-build/server/pages/404.html +1 -1
  454. package/app/.next-cli-build/server/pages/500.html +1 -1
  455. package/app/.next-cli-build/static/chunks/{5263-6992d01dfc1f02c2.js → 5263-611ae67a3e43fdb6.js} +1 -1
  456. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/analytics/page-c8ad699d35b93c2d.js +1 -0
  457. package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/{upgrade-5.3.37-to-5.3.38-5.3.38-20260820-225010 → upgrade-5.3.38-to-5.3.39-5.3.39-20260820-225942}/data.sqlite +0 -0
  458. package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/{upgrade-5.3.30-to-5.3.36-5.3.36-20260820-220853 → upgrade-5.3.39-to-5.3.40-5.3.40-20260820-231033}/data.sqlite +0 -0
  459. package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/{upgrade-5.3.36-to-5.3.37-5.3.37-20260820-223720 → upgrade-5.3.39-to-5.3.40-5.3.40-20260820-231034}/data.sqlite +0 -0
  460. package/app/cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite +0 -0
  461. package/app/package.json +1 -1
  462. package/package.json +1 -1
  463. package/app/.next-cli-build/server/chunks/1184.js +0 -329
  464. package/app/.next-cli-build/server/chunks/2352.js +0 -155
  465. package/app/.next-cli-build/server/chunks/3106.js +0 -1
  466. package/app/.next-cli-build/server/chunks/3740.js +0 -1
  467. package/app/.next-cli-build/server/chunks/6905.js +0 -85
  468. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/analytics/page-1aa930ecd45aaa9e.js +0 -1
  469. package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.3.36-to-5.3.37-5.3.37-20260820-223721/data.sqlite +0 -0
  470. /package/app/.next-cli-build/static/{IEB0Pl8p-nhbBAzbzPoBp → oSthcw4U3bT9SrBfLJEFy}/_buildManifest.js +0 -0
  471. /package/app/.next-cli-build/static/{IEB0Pl8p-nhbBAzbzPoBp → oSthcw4U3bT9SrBfLJEFy}/_ssgManifest.js +0 -0
@@ -88,7 +88,161 @@ Respond ONLY with the JSON object, no other text.`)}else"json_object"===a.type&&
88
88
 
89
89
  `),f.push("data: [DONE]\n\n"),new Response(f.join(""),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}async refreshCredentials(){return null}}d()}catch(a){d(a)}},1)},28759:(a,b,c)=>{c.d(b,{JA:()=>h});var d=c(55511),e=c.n(d),f=c(29610);function g(a,b=""){return e().createHash("sha256").update(a+b).digest("hex")}function h(a,b=null,c=!0){let d=a.includes("::")?a.split("::")[1]:a,i=b||g(d,"machineId"),j=(0,f.Ay)(d,f.Ay.DNS),k=g(d),l=function(a){let b=Math.floor(Date.now()/1e6),c=new Uint8Array([b>>40&255,b>>32&255,b>>24&255,b>>16&255,b>>8&255,255&b]),d=165;for(let a=0;a<c.length;a++)c[a]=(c[a]^d)+a%256&255,d=c[a];let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",f="";for(let a=0;a<c.length;a+=3){let b=c[a],d=a+1<c.length?c[a+1]:0,g=a+2<c.length?c[a+2]:0;f+=e[b>>2],f+=e[(3&b)<<4|d>>4],a+1<c.length&&(f+=e[(15&d)<<2|g>>6]),a+2<c.length&&(f+=e[63&g])}return`${f}${a}`}(i),m="linux";"u">typeof process&&("win32"===process.platform?m="windows":"darwin"===process.platform&&(m="macos"));let n="x64";return"u">typeof process&&"arm64"===process.arch&&(n="aarch64"),{authorization:`Bearer ${d}`,"connect-accept-encoding":"gzip","connect-protocol-version":"1","content-type":"application/connect+proto","user-agent":"connect-es/1.6.1","x-amzn-trace-id":`Root=${e().randomUUID()}`,"x-client-key":k,"x-cursor-checksum":l,"x-cursor-client-version":"3.1.0","x-cursor-client-type":"ide","x-cursor-client-os":m,"x-cursor-client-arch":n,"x-cursor-client-device-type":"desktop","x-cursor-config-version":e().randomUUID(),"x-cursor-timezone":Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC","x-ghost-mode":c?"true":"false","x-request-id":e().randomUUID(),"x-session-id":j}}},32384:(a,b,c)=>{c.d(b,{D:()=>h});var d=c(55511),e=c.n(d),f=c(2750),g=c(30395);class h extends f.H{constructor(){super("qoder",g.xq.qoder)}createSignature(a,b,c,d){if(!d)return"";let f=`${a}:${b}:${c}`,g=e().createHmac("sha256",d);return g.update(f),g.digest("hex")}buildHeaders(a,b=!0){let c=`session-${e().randomUUID()}`,d=Date.now(),f=this.config.headers["User-Agent"]||"Qoder-Cli",g=a.apiKey||a.accessToken||"",h=this.createSignature(f,c,d,g),i={"Content-Type":"application/json",...this.config.headers,"session-id":c,"x-qoder-timestamp":d.toString(),"x-qoder-signature":h};return a.apiKey?i.Authorization=`Bearer ${a.apiKey}`:a.accessToken&&(i.Authorization=`Bearer ${a.accessToken}`),b&&(i.Accept="text/event-stream"),i}buildUrl(a,b,c=0,d=null){return this.config.baseUrl}transformRequest(a,b,c,d){return c&&b.messages&&!b.stream_options&&(b.stream_options={include_usage:!0}),b}}},32564:(a,b,c)=>{c.d(b,{Au:()=>i,XE:()=>f,q:()=>h,rK:()=>e,uG:()=>d,vT:()=>g});let d="0.2.99",e="grok-shell",f={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:"openid profile email offline_access grok-cli:access api:access conversations:read conversations:write",referrer:"grok-build",refreshLeadMs:3e5},g=[{id:"grok-build",name:"Grok Build",contextLength:5e5,maxOutputTokens:64e3,targetFormat:"openai-responses"},{id:"grok-4.5",name:"Grok 4.5",targetFormat:"openai-responses"},{id:"grok-4.5-high",name:"Grok 4.5 (High)",upstreamModelId:"grok-4.5",targetFormat:"openai-responses"},{id:"grok-4.5-medium",name:"Grok 4.5 (Medium)",upstreamModelId:"grok-4.5",targetFormat:"openai-responses"},{id:"grok-4.5-low",name:"Grok 4.5 (Low)",upstreamModelId:"grok-4.5",targetFormat:"openai-responses"}],h={baseUrl:"https://cli-chat-proxy.grok.com/v1/responses",format:"openai-responses",headers:{"User-Agent":`grok-shell/${d} (linux; x86_64)`,"x-xai-token-auth":"xai-grok-cli","x-grok-client-identifier":e,"x-grok-client-version":d},clientId:f.clientId,tokenUrl:f.tokenUrl,refreshUrl:f.refreshUrl,clientIdentifier:e,clientVersion:d,retry:{429:{attempts:2,delayMs:2e3},502:{attempts:2,delayMs:1500},503:{attempts:2,delayMs:1500}}};function i(a){return/^grok-4\.5(?:$|-)/.test(String(a||""))}},37582:(a,b,c)=>{c.r(b),c.d(b,{openaiToVertexRequest:()=>h});var d=c(69887),e=c(42541),f=c(19897),g=c(65556);function h(a,b,c,d){var e=(0,f.openaiToGeminiRequest)(a,b,c,d);if(!e?.contents)return e;for(let a of e.contents)if(Array.isArray(a.parts))for(let b of a.parts)void 0!==b.thoughtSignature&&(b.thoughtSignature=g.n6),b.functionCall&&"id"in b.functionCall&&delete b.functionCall.id,b.functionResponse&&"id"in b.functionResponse&&delete b.functionResponse.id;return e}(0,d.kz)(e.h.OPENAI,e.h.VERTEX,h,null)},40784:(a,b,c)=>{c.r(b),c.d(b,{openaiToCommandCode:()=>h});var d=c(69887),e=c(42541),f=c(55511);function g(a){if(null==a)return"";if("string"==typeof a)return a;if(Array.isArray(a)){let b=[];for(let c of a)"string"==typeof c?b.push(c):c&&"object"==typeof c&&"string"==typeof c.text&&b.push(c.text);return b.join("\n")}return String(a)}function h(a,b,c){let{messages:d,system:e}=function(a=[]){let b=[],c=[];for(let d of a){if(!d)continue;let a=d.role;if("system"===a){let a=g(d.content);a&&c.push(a);continue}if("tool"===a){let a="string"==typeof d.content?d.content:g(d.content);b.push({role:"tool",content:[{type:"tool-result",toolCallId:d.tool_call_id||"",toolName:d.name||"",output:{type:"text",value:a}}]});continue}if("assistant"===a){let a=[],c=g(d.content);if(c&&a.push({type:"text",text:c}),Array.isArray(d.tool_calls))for(let b of d.tool_calls){let c=b.function||{};a.push({type:"tool-call",toolCallId:b.id||"",toolName:c.name||"",input:function(a){if(null==a)return{};if("string"!=typeof a)return a;try{return JSON.parse(a)}catch{return{}}}(c.arguments)})}b.push({role:"assistant",content:a.length?a:[{type:"text",text:""}]});continue}b.push({role:"user",content:function(a){if(null==a)return[{type:"text",text:""}];if("string"==typeof a)return[{type:"text",text:a}];if(Array.isArray(a)){let b=[];for(let c of a)"string"==typeof c?b.push({type:"text",text:c}):c&&"object"==typeof c&&("text"===c.type&&"string"==typeof c.text?b.push({type:"text",text:c.text}):"image_url"===c.type||"image"===c.type?b.push({type:"text",text:"[image omitted]"}):"string"==typeof c.text&&b.push({type:"text",text:c.text}));return b.length?b:[{type:"text",text:""}]}return[{type:"text",text:String(a)}]}(d.content)})}return{messages:b,system:c.join("\n\n")}}(b.messages),h={model:a,messages:d,stream:!1!==c,max_tokens:b.max_tokens??b.max_output_tokens??64e3,temperature:b.temperature??.3};e&&(h.system=e);let i=function(a){if(!Array.isArray(a)||0===a.length)return;let b=[];for(let c of a)c&&("function"===c.type&&c.function?b.push({name:c.function.name,description:c.function.description,input_schema:c.function.parameters||{type:"object"}}):c.name&&(c.input_schema||c.parameters)&&b.push({name:c.name,description:c.description,input_schema:c.input_schema||c.parameters}));return b.length?b:void 0}(b.tools);i&&(h.tools=i),null!=b.top_p&&(h.top_p=b.top_p);let j=new Date().toISOString().slice(0,10);return{threadId:(0,f.randomUUID)(),memory:"",config:{workingDir:process.cwd(),date:j,environment:process.platform,structure:[],isGitRepo:!1,currentBranch:"",mainBranch:"",gitStatus:"",recentCommits:[]},params:h}}(0,d.kz)(e.h.OPENAI,e.h.COMMANDCODE,h,null)},41222:(a,b,c)=>{c.r(b),c.d(b,{claudeToOpenAIResponse:()=>g});var d=c(69887),e=c(42541);function f(a,b,c=null){return{id:`chatcmpl-${a.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:a.model,choices:[{index:0,delta:b,finish_reason:c}]}}function g(a,b){if(!a)return null;let c=[];switch(a.type){case"message_start":b.messageId=a.message?.id||`msg_${Date.now()}`,b.model=a.message?.model,b.toolCallIndex=0,c.push(f(b,{role:"assistant"}));break;case"content_block_start":{let d=a.content_block;if(d?.type==="server_tool_use"){b.serverToolBlockIndex=a.index;break}if(d?.type==="text")b.textBlockStarted=!0;else if(d?.type==="thinking")b.inThinkingBlock=!0,b.currentBlockIndex=a.index,c.push(f(b,{content:"<think>"}));else if(d?.type==="tool_use"){let e=b.toolCallIndex++,g=b.toolNameMap?.get(d.name)||d.name,h={index:e,id:d.id,type:"function",function:{name:g,arguments:""}};b.toolCalls.set(a.index,h),c.push(f(b,{tool_calls:[h]}))}break}case"content_block_delta":{if(a.index===b.serverToolBlockIndex)break;let d=a.delta;if(d?.type==="text_delta"&&d.text)c.push(f(b,{content:d.text}));else if(d?.type==="thinking_delta"&&d.thinking)c.push(f(b,{reasoning_content:d.thinking}));else if(d?.type==="input_json_delta"&&d.partial_json){let e=b.toolCalls.get(a.index);e&&(e.function.arguments+=d.partial_json,c.push(f(b,{tool_calls:[{index:e.index,id:e.id,function:{arguments:d.partial_json}}]})))}break}case"content_block_stop":if(a.index===b.serverToolBlockIndex){b.serverToolBlockIndex=-1;break}b.inThinkingBlock&&a.index===b.currentBlockIndex&&(c.push(f(b,{content:"</think>"})),b.inThinkingBlock=!1),b.textBlockStarted=!1,b.thinkingBlockStarted=!1;break;case"message_delta":if(a.usage&&"object"==typeof a.usage){let c="number"==typeof a.usage.input_tokens?a.usage.input_tokens:0,d="number"==typeof a.usage.output_tokens?a.usage.output_tokens:0,e="number"==typeof a.usage.cache_read_input_tokens?a.usage.cache_read_input_tokens:0,f="number"==typeof a.usage.cache_creation_input_tokens?a.usage.cache_creation_input_tokens:0,g=c+e+f;b.usage={prompt_tokens:g,completion_tokens:d,total_tokens:g+d,input_tokens:c,output_tokens:d},e>0&&(b.usage.cache_read_input_tokens=e),f>0&&(b.usage.cache_creation_input_tokens=f)}if(a.delta?.stop_reason){b.finishReason=function(a){switch(a){case"end_turn":case"stop_sequence":default:return"stop";case"max_tokens":return"length";case"tool_use":return"tool_calls"}}(a.delta.stop_reason);let d={id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{},finish_reason:b.finishReason}]};if(b.usage){d.usage={prompt_tokens:b.usage.prompt_tokens,completion_tokens:b.usage.completion_tokens,total_tokens:b.usage.total_tokens};let a=b.usage.cache_read_input_tokens,c=b.usage.cache_creation_input_tokens;(a>0||c>0)&&(d.usage.prompt_tokens_details={},a>0&&(d.usage.prompt_tokens_details.cached_tokens=a),c>0&&(d.usage.prompt_tokens_details.cache_creation_tokens=c))}c.push(d),b.finishReasonSent=!0}break;case"message_stop":if(!b.finishReasonSent){let a=b.finishReason||(b.toolCalls?.size>0?"tool_calls":"stop"),d=b.usage&&"object"==typeof b.usage?{usage:{prompt_tokens:b.usage.input_tokens||0,completion_tokens:b.usage.output_tokens||0,total_tokens:(b.usage.input_tokens||0)+(b.usage.output_tokens||0)}}:{};c.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{},finish_reason:a}],...d}),b.finishReasonSent=!0}}return c.length>0?c:null}(0,d.kz)(e.h.CLAUDE,e.h.OPENAI,null,g)},41310:(a,b,c)=>{c.d(b,{Xj:()=>q});var d=c(39852),e=c(73024),f=c.n(e),g=c(76760),h=c.n(g),i=c(77598),j=c.n(i),k=c(53859);let l=h().join(k.n,"machine-id"),m=h().join(k.n,"auth"),n=h().join(m,"cli-secret"),o=null,p=null;async function q(a=null){let b=a||process.env.MACHINE_ID_SALT||"endpoint-proxy-salt",c=function(){if(o)return o;try{if(o=f().readFileSync(l,"utf8").trim())return o}catch{}try{o=(0,d.machineIdSync)()}catch{o=j().randomUUID()}try{f().mkdirSync(k.n,{recursive:!0}),f().writeFileSync(l,o,{mode:384})}catch{}return o}(),e="9r-cli-auth"===b?function(){if(p)return p;try{if(p=f().readFileSync(n,"utf8").trim())return p}catch{}p=j().randomBytes(32).toString("hex");try{f().mkdirSync(m,{recursive:!0}),f().writeFileSync(n,p,{mode:384})}catch{}return p}():"";return j().createHash("sha256").update(c+b+e).digest("hex").substring(0,16)}},41815:(a,b,c)=>{c.d(b,{$:()=>n});var d=c(2750),e=c(30395);let f=e.xq["grok-web"].baseUrl,g={"grok-3":{grokModel:"grok-3",modelMode:"MODEL_MODE_GROK_3",isThinking:!1},"grok-3-mini":{grokModel:"grok-3",modelMode:"MODEL_MODE_GROK_3_MINI_THINKING",isThinking:!0},"grok-3-thinking":{grokModel:"grok-3",modelMode:"MODEL_MODE_GROK_3_THINKING",isThinking:!0},"grok-4":{grokModel:"grok-4",modelMode:"MODEL_MODE_GROK_4",isThinking:!1},"grok-4-mini":{grokModel:"grok-4-mini",modelMode:"MODEL_MODE_GROK_4_MINI_THINKING",isThinking:!0},"grok-4-thinking":{grokModel:"grok-4",modelMode:"MODEL_MODE_GROK_4_THINKING",isThinking:!0},"grok-4-heavy":{grokModel:"grok-4",modelMode:"MODEL_MODE_HEAVY",isThinking:!0},"grok-4.1-mini":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_GROK_4_1_MINI_THINKING",isThinking:!0},"grok-4.1-fast":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_FAST",isThinking:!1},"grok-4.1-expert":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_EXPERT",isThinking:!0},"grok-4.1-thinking":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_GROK_4_1_THINKING",isThinking:!0},"grok-4.2":{grokModel:"grok-420",modelMode:"MODEL_MODE_GROK_420",isThinking:!1},"grok-4.20":{grokModel:"grok-420",modelMode:"MODEL_MODE_GROK_420",isThinking:!1},"grok-4.20-beta":{grokModel:"grok-420",modelMode:"MODEL_MODE_GROK_420",isThinking:!1}};function h(a,b=!1){let c=b?"abcdefghijklmnopqrstuvwxyz0123456789":"abcdefghijklmnopqrstuvwxyz",d="";for(let b=0;b<a;b++)d+=c[Math.floor(Math.random()*c.length)];return d}function i(a){let b=new Uint8Array(a);return crypto.getRandomValues(b),Array.from(b,a=>a.toString(16).padStart(2,"0")).join("")}async function*j(a,b){let c=a.getReader(),d=new TextDecoder,e="";try{for(;;){if(b?.aborted)return;let{value:a,done:f}=await c.read();if(f)break;for(e+=d.decode(a,{stream:!0});;){let a=e.indexOf("\n");if(a<0)break;let b=e.slice(0,a).trim();if(e=e.slice(a+1),b)try{yield JSON.parse(b)}catch{}}}let a=(e+=d.decode()).trim();if(a)try{yield JSON.parse(a)}catch{}}finally{c.releaseLock()}}async function*k(a,b,c){let d="",e="",f=!1;for await(let g of j(a,c)){if(g.error)return void(yield{error:g.error.message||`Grok error: ${g.error.code}`,done:!0});let a=g.result?.response;if(a){if(a.llmInfo?.modelHash&&!d&&(d=a.llmInfo.modelHash),a.responseId&&(e=a.responseId),a.modelResponse){let c=a.modelResponse;f&&b&&(c.message&&(yield{thinking:c.message}),f=!1),c.message&&(yield{fullMessage:c.message,fingerprint:d,responseId:e}),c.metadata?.llm_info?.modelHash&&(d=c.metadata.llm_info.modelHash);continue}null!=a.token&&(yield{delta:a.token,fingerprint:d,responseId:e})}}yield{done:!0,fingerprint:d,responseId:e}}function l(a){return`data: ${JSON.stringify(a)}
90
90
 
91
- `}async function m(a,b,c,d,e,f){let g="",h="",i=[];for await(let b of k(a,e,f)){if(b.fingerprint&&(h=b.fingerprint),b.error)return new Response(JSON.stringify({error:{message:b.error,type:"upstream_error",code:"GROK_ERROR"}}),{status:502,headers:{"Content-Type":"application/json"}});if(b.thinking){i.push(b.thinking);continue}if(b.done)break;b.fullMessage?g=b.fullMessage:b.delta&&(g+=b.delta)}let j={role:"assistant",content:g};i.length>0&&(j.reasoning_content=i.join("\n"));let l=Math.ceil(g.length/4),m=Math.ceil(g.length/4);return new Response(JSON.stringify({id:c,object:"chat.completion",created:d,model:b,system_fingerprint:h||null,choices:[{index:0,message:j,finish_reason:"stop",logprobs:null}],usage:{prompt_tokens:l,completion_tokens:m,total_tokens:l+m}}),{status:200,headers:{"Content-Type":"application/json"}})}class n extends d.H{constructor(){super("grok-web",e.xq["grok-web"])}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:j}){let n,o,p=b?.messages;if(!p||!Array.isArray(p)||0===p.length)return{response:new Response(JSON.stringify({error:{message:"Missing or empty messages array",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};let q=g[a];q||j?.info?.("GROK-WEB",`Unmapped model ${a}, defaulting to grok-4.1-fast`);let{grokModel:r,modelMode:s,isThinking:t}=q||g["grok-4.1-fast"],u=function(a){let b=[];for(let c of a){let a=String(c.role||"user");"developer"===a&&(a="system");let d="";"string"==typeof c.content?d=c.content:Array.isArray(c.content)&&(d=c.content.filter(a=>"text"===a.type).map(a=>String(a.text||"")).join(" ")),d.trim()&&b.push({role:a,text:d})}let c=-1;for(let a=b.length-1;a>=0;a--)if("user"===b[a].role){c=a;break}let d=[];for(let a=0;a<b.length;a++){let{role:e,text:f}=b[a];d.push(a===c?f:`${e}: ${f}`)}return d.join("\n\n")}(p);if(!u.trim())return{response:new Response(JSON.stringify({error:{message:"Empty query after processing",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};let v={temporary:!0,modelName:r,modelMode:s,message:u,fileAttachments:[],imageAttachments:[],disableSearch:!1,enableImageGeneration:!1,returnImageBytes:!1,returnRawGrokInXaiRequest:!1,enableImageStreaming:!1,imageGenerationCount:0,forceConcise:!1,toolOverrides:{},enableSideBySide:!0,sendFinalMetadata:!0,isReasoning:!1,disableTextFollowUps:!1,disableMemory:!0,forceSideBySide:!1,isAsyncChat:!1,disableSelfHarmShortCircuit:!1,deviceEnvInfo:{darkModeEnabled:!1,devicePixelRatio:2,screenWidth:2056,screenHeight:1329,viewportWidth:2056,viewportHeight:1083}},w=i(16),x=i(8),y={Accept:"*/*","Accept-Encoding":"gzip, deflate, br, zstd","Accept-Language":"en-US,en;q=0.9",Baggage:"sentry-environment=production,sentry-release=d6add6fb0460641fd482d767a335ef72b9b6abb8,sentry-public_key=b311e0f2690c81f25e2c4cf6d4f7ce1c","Cache-Control":"no-cache","Content-Type":"application/json",Origin:"https://grok.com",Pragma:"no-cache",Referer:"https://grok.com/","Sec-Ch-Ua":'"Google Chrome";v="136", "Chromium";v="136", "Not(A:Brand";v="24"',"Sec-Ch-Ua-Mobile":"?0","Sec-Ch-Ua-Platform":'"macOS"',"Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-origin","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":btoa(.5>Math.random()?`e:TypeError: Cannot read properties of null (reading 'children["${h(5,!0)}"]')`:`e:TypeError: Cannot read properties of undefined (reading '${h(10)}')`),"x-xai-request-id":crypto.randomUUID(),traceparent:`00-${w}-${x}-00`};if(d.apiKey){let a=d.apiKey;a.startsWith("sso=")&&(a=a.slice(4)),y.Cookie=`sso=${a}`}j?.info?.("GROK-WEB",`Query to ${a} (grok=${r}, mode=${s}), len=${u.length}`);try{n=await fetch(f,{method:"POST",headers:y,body:JSON.stringify(v),signal:e})}catch(a){return j?.error?.("GROK-WEB",`Fetch failed: ${a.message||String(a)}`),{response:new Response(JSON.stringify({error:{message:`Grok connection failed: ${a.message||String(a)}`,type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:y,transformedBody:v}}if(!n.ok){let a=n.status,b=`Grok returned HTTP ${a}`;return 401===a||403===a?b="Grok auth failed — SSO cookie may be expired. Re-paste your sso cookie value from grok.com.":429===a&&(b="Grok rate limited. Wait a moment and retry, or rotate cookies."),j?.warn?.("GROK-WEB",b),{response:new Response(JSON.stringify({error:{message:b,type:"upstream_error",code:`HTTP_${a}`}}),{status:a,headers:{"Content-Type":"application/json"}}),url:f,headers:y,transformedBody:v}}if(!n.body)return{response:new Response(JSON.stringify({error:{message:"Grok returned empty response body",type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:y,transformedBody:v};let z=`chatcmpl-grok-${crypto.randomUUID().slice(0,12)}`,A=Math.floor(Date.now()/1e3);if(c){var B;let b;o=new Response((B=n.body,b=new TextEncoder,new ReadableStream({async start(c){try{c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:null,choices:[{index:0,delta:{role:"assistant"},finish_reason:null,logprobs:null}]})));let d="";for await(let f of k(B,t,e)){if(f.fingerprint&&(d=f.fingerprint),f.error){c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{content:`[Error: ${f.error}]`},finish_reason:null,logprobs:null}]})));break}if(f.thinking){c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{reasoning_content:f.thinking},finish_reason:null,logprobs:null}]})));continue}if(f.done)break;f.delta&&c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{content:f.delta},finish_reason:null,logprobs:null}]})))}c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n"))}catch(d){c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:`[Stream error: ${d.message||String(d)}]`},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n"))}finally{c.close()}}})),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache","X-Accel-Buffering":"no"}})}else o=await m(n.body,a,z,A,t,e);return{response:o,url:f,headers:y,transformedBody:v}}}},42541:(a,b,c)=>{c.d(b,{h:()=>d});let d={OPENAI:"openai",OPENAI_RESPONSES:"openai-responses",OPENAI_RESPONSE:"openai-response",CLAUDE:"claude",GEMINI:"gemini",GEMINI_CLI:"gemini-cli",VERTEX:"vertex",CODEX:"codex",ANTIGRAVITY:"antigravity",KIRO:"kiro",CURSOR:"cursor",OLLAMA:"ollama",COMMANDCODE:"commandcode"}},42946:(a,b,c)=>{c(55511),c(48991)},43212:(a,b,c)=>{c(69887),c(42541),c(51525),c(84238),c(92843),c(1758),c(8735),new TextEncoder,process.env.PROMPT_LOG_DB_PROVIDER_STREAM_RAW_MAX_CHARS,process.env.PROMPT_LOG_DB_PROVIDER_STREAM_EVENT_MAX_ITEMS},44991:(a,b,c)=>{c.d(b,{D:()=>f});var d=c(50801),e=c(30395);class f extends d.L{constructor(){super("ollama-local")}buildUrl(a,b,c=0,d=null){return`${(0,e.Ak)(d)}/api/chat`}}},46956:(a,b,c)=>{c.d(b,{proxyAwareFetch:()=>q});var d=c(27910),e=c(8735);let f=globalThis.fetch,g=new Map,h=new Map,i=["cloudcode-pa.googleapis.com","daily-cloudcode-pa.googleapis.com","api.individual.githubcopilot.com","q.us-east-1.amazonaws.com","codewhisperer.us-east-1.amazonaws.com","api2.cursor.sh"],j=["8.8.8.8","8.8.4.4"];function k(a){return null==a?"":String(a).trim()}async function l(a){let b=h.get(a);if(b&&Date.now()<b.expiry)return b.ip;try{let b=await Promise.resolve().then(c.t.bind(c,14985,23)),{promisify:d}=await Promise.resolve().then(c.t.bind(c,28354,23)),f=new b.Resolver;f.setServers(j);let g=d(f.resolve4.bind(f)),i=await g(a);return h.set(a,{ip:i[0],expiry:Date.now()+e.v1.dnsCacheTtlMs}),i[0]}catch(b){return console.warn(`[ProxyFetch] DNS resolve failed for ${a}:`,b.message),null}}function m(a,b){let c,d=k(b);if(!d)return!1;try{c=new URL(a).hostname.toLowerCase()}catch{return!1}return d.split(",").map(a=>a.trim().toLowerCase()).filter(Boolean).some(a=>"*"===a||(a.startsWith(".")?c.endsWith(a)||c===a.slice(1):c===a||c.endsWith(`.${a}`)))}function n(a){let b=k(a);if(!b)return null;try{return new URL(b),b}catch{return`http://${b}`}}async function o(a){let b=n(a);if(!b)return null;if(!g.has(b)){g.size>=e.v1.proxyDispatchersMaxSize&&g.delete(g.keys().next().value);let{ProxyAgent:a}=await c.e(3433).then(c.t.bind(c,3433,19));g.set(b,new a({uri:b}))}return g.get(b)}async function p(a,b,e){let f=await Promise.resolve().then(c.t.bind(c,55591,23)),g=await Promise.resolve().then(c.t.bind(c,91645,23)),h=f.default??f,i=g.default??g;return new Promise((c,f)=>{let g=new i.Socket;g.connect(443,b,()=>{let b={socket:g,servername:a.hostname,path:a.pathname+a.search,method:e.method||"POST",headers:{...e.headers,Host:a.hostname}},i=h.request(b,a=>{let b={ok:a.statusCode>=200&&a.statusCode<300,status:a.statusCode,statusText:a.statusMessage,headers:new Map(Object.entries(a.headers)),body:d.Readable.toWeb(a),text:async()=>{let b=[];for await(let c of a)b.push(c);return Buffer.concat(b).toString()},json:async()=>JSON.parse(await b.text())};c(b)});i.on("error",f),e.body&&i.write("string"==typeof e.body?e.body:JSON.stringify(e.body)),i.end()}),g.on("error",f)})}async function q(a,b={},c=null){let d="string"==typeof a?a:a.toString(),e=k(c?.vercelRelayUrl);if(e){let a=new URL(d),c={...b.headers,"x-relay-target":`${a.protocol}//${a.host}`,"x-relay-path":`${a.pathname}${a.search}`};return f(e,{...b,headers:c})}let g=function(a,b){if(b?.enabled!==!0&&b?.connectionProxyEnabled!==!0)return null;let c=k(b?.url??b?.connectionProxyUrl);if(!c)return null;let d=k(b?.noProxy??b?.connectionNoProxy);return d&&m(a,d)?null:n(c)}(d,c),h=g?null:n(function(a){let b;if(m(a,process.env.NO_PROXY||process.env.no_proxy))return null;try{b=new URL(a).protocol}catch{return null}return"https:"===b?process.env.HTTPS_PROXY||process.env.https_proxy||process.env.ALL_PROXY||process.env.all_proxy:process.env.HTTP_PROXY||process.env.http_proxy||process.env.ALL_PROXY||process.env.all_proxy}(d)),j=g||h;if(function(a){try{let b=new URL(a).hostname;return i.some(a=>b.includes(a))}catch{return!1}}(d)){if(j)try{let c=await o(j);return await f(a,{...b,dispatcher:c})}catch(a){if(c?.strictProxy===!0)throw Error(`[ProxyFetch] Proxy required but failed (strictProxy=true): ${a.message}`);console.warn(`[ProxyFetch] Proxy failed, falling back to direct bypass: ${a.message}`)}try{let a=new URL(d),c=await l(a.hostname);if(c)return await p(a,c,b)}catch(a){console.warn(`[ProxyFetch] MITM bypass failed: ${a.message}`)}}if(j)try{let c=await o(j);return await f(a,{...b,dispatcher:c})}catch(a){if(c?.strictProxy===!0)throw Error(`[ProxyFetch] Proxy required but failed (strictProxy=true): ${a.message}`);console.warn(`[ProxyFetch] Proxy failed, falling back to direct: ${a.message}`)}return f(a,b)}async function r(a,b={}){return q(a,b,null)}globalThis.fetch!==r&&(globalThis.fetch=r)},47153:(a,b,c)=>{c.d(b,{$B:()=>s,Ql:()=>p,Sc:()=>t,Wm:()=>o,pb:()=>v});var d=c(30395),e=c(48991),f=c(46956);let g=null;async function h(a,b){return a?j("xai",a,async()=>{try{g||(g=new(await c.e(2242).then(c.bind(c,62242))).XaiService);let b=await g.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 refresh failed: ${c?.message||c}`);let a=String(c?.message||"");if(a.includes("invalid_grant")||a.includes("invalid_request"))return{error:"invalid_grant"};return null}},b):null}let i=new Map;async function j(a,b,c,d){if(!b)return c();let e=`${a}:${b}`,f=i.get(e);if(f){if(f.promise)return d?.info?.("TOKEN_REFRESH",`Reusing in-flight refresh for ${a}`),f.promise;if(f.expiresAt>Date.now())return d?.info?.("TOKEN_REFRESH",`Reusing recent refresh result for ${a}`),f.result;i.delete(e)}let g=(async()=>{try{let a=await c();return i.set(e,{result:a,expiresAt:Date.now()+1e4}),a}catch(a){throw i.delete(e),a}})();return i.set(e,{promise:g}),g}async function k(a,b,c,e){return b?j(a,b,async()=>{let c=d.xq[a];if(!c||!c.refreshUrl)return e?.warn?.("TOKEN_REFRESH",`No refresh URL configured for provider: ${a}`),null;if(!b)return e?.warn?.("TOKEN_REFRESH",`No refresh token available for provider: ${a}`),null;try{let d=await fetch(c.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:c.clientId,client_secret:c.clientSecret})});if(!d.ok){let b=await d.text();return e?.error?.("TOKEN_REFRESH",`Failed to refresh token for ${a}`,{status:d.status,error:b}),null}let f=await d.json();return e?.info?.("TOKEN_REFRESH",`Successfully refreshed token for ${a}`,{hasNewAccessToken:!!f.access_token,hasNewRefreshToken:!!f.refresh_token,expiresIn:f.expires_in}),{accessToken:f.access_token,refreshToken:f.refresh_token||b,expiresIn:f.expires_in}}catch(b){return e?.error?.("TOKEN_REFRESH",`Error refreshing token for ${a}`,{error:b.message}),null}},e):null}async function l(a,b){return a?j("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 b?.error?.("TOKEN_REFRESH","Failed to refresh Claude OAuth token",{status:c.status,error:a}),null}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 m(a,b,c,d){return a?j(`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 d?.error?.("TOKEN_REFRESH","Failed to refresh Google token",{status:f.status,error:a}),null}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 n(a,b){return a?j("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(()=>"");b?.warn?.("TOKEN_REFRESH","Error with Qwen endpoint",{status:e.status,error:a})}}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 o(a,b){return a?j("codex",a,async()=>{try{let c=await fetch(e.NA.openai.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:d.xq.codex.clientId,scope:"openid profile email offline_access"})});if(!c.ok){let a=await c.text(),d=null;try{let b=JSON.parse(a);d=b?.error?.code||("string"==typeof b?.error?b.error:null)}catch{}if("refresh_token_reused"===d||"invalid_grant"===d||"token_expired"===d||"invalid_token"===d)return b?.error?.("TOKEN_REFRESH","Codex refresh token already used or invalid. Re-auth required.",{status:c.status,errorCode:d}),{error:"unrecoverable_refresh_error",code:d};return b?.error?.("TOKEN_REFRESH","Failed to refresh Codex token",{status:c.status,error:a}),null}let f=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Codex token",{hasNewAccessToken:!!f.access_token,hasNewRefreshToken:!!f.refresh_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 Codex token: ${a.message}`),null}},b):null}async function p(a,b,c,e=null){return a?j("kiro",a,async()=>{let g=b?.authMethod,h=b?.clientId,i=b?.clientSecret,j=b?.region;if(h&&i){let b="idc"===g&&j?`https://oidc.${j}.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:h,clientSecret:i,refreshToken:a,grantType:"refresh_token"})},e);if(!d.ok){let a=await d.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro AWS token",{status:d.status,error:a}),null}let k=await d.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro AWS token",{hasNewAccessToken:!!k.accessToken,expiresIn:k.expiresIn}),{accessToken:k.accessToken,refreshToken:k.refreshToken||a,expiresIn:k.expiresIn}}let k=await (0,f.proxyAwareFetch)(d.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:a})},e);if(!k.ok){let a=await k.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro social token",{status:k.status,error:a}),null}let l=await k.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro social token",{hasNewAccessToken:!!l.accessToken,expiresIn:l.expiresIn}),{accessToken:l.accessToken,refreshToken:l.refreshToken||a,expiresIn:l.expiresIn}},c):null}async function q(a,b){return a?j("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){let a=await f.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh iFlow token",{status:f.status,error:a}),null}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 r(a,b){return a?j("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){let a=await f.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh GitHub token",{status:f.status,error:a}),null}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 s(a,b,c){if(!b.refreshToken)return null;switch(a){case"gemini-cli":case"antigravity":return m(b.refreshToken,d.xq[a].clientId,d.xq[a].clientSecret,c);case"claude":return l(b.refreshToken,c);case"codex":return o(b.refreshToken,c);case"qwen":return n(b.refreshToken,c);case"iflow":return q(b.refreshToken,c);case"github":return r(b.refreshToken,c);case"kiro":return p(b.refreshToken,b.providerSpecificData,c);case"xai":return h(b.refreshToken,c);case"vertex":case"vertex-partner":{let a=t(b.apiKey);if(!a)return null;return v(a,c)}default:return k(a,b.refreshToken,b,c)}}function t(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 u=new Map;async function v(a,b){let d=a.client_email,e=u.get(d);if(e&&e.expiresAt-Date.now()>3e5)return{accessToken:e.token,expiresAt:e.expiresAt};try{let{SignJWT:e,importPKCS8:f}=await c.e(2891).then(c.bind(c,82891));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 u.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}}},48991:(a,b,c)=>{c.d(b,{$V:()=>n,Co:()=>m,J5:()=>k,K:()=>l,NA:()=>o,Ox:()=>i,QH:()=>j,VK:()=>p,go:()=>e,sX:()=>f,x0:()=>g});var d=c(21820);let e="google-genai-sdk/1.41.0 gl-node/v22.19.0";function f(a="unknown"){let b;return`GeminiCLI/0.34.0/${a||"unknown"} (${(0,d.platform)()}; ${"ia32"===(b=(0,d.arch)())?"x86":b}; terminal)`}let g={VSCODE_VERSION:"1.110.0",COPILOT_CHAT_VERSION:"0.38.0",USER_AGENT:"GitHubCopilotChat/0.38.0",API_VERSION:"2025-04-01"};function h(){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)}h();let i={name:"x-request-source",value:"local"},j="_ide",k=new Set(["browser_subagent","command_status","find_by_name","generate_image","grep_search","list_dir","list_resources","multi_replace_file_content","notify_user","read_resource","read_terminal","read_url_content","replace_file_content","run_command","search_web","send_command_input","task_boundary","view_content_chunk","view_file","write_to_file"]),l={"User-Agent":`antigravity/1.107.0 ${(0,d.platform)()}/${(0,d.arch)()}`};JSON.stringify({ideType:9,platform:h(),pluginType:2}),h();let m="You are Claude Code, Anthropic's official CLI for Claude.",n="You are Antigravity, a powerful agentic AI coding assistant designed by the Google Deepmind team working on Advanced Agentic Coding.You are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.**Absolute paths only****Proactiveness**",o={google:{token:"https://oauth2.googleapis.com/token",auth:"https://accounts.google.com/o/oauth2/auth"},openai:{token:"https://auth.openai.com/oauth/token",auth:"https://auth.openai.com/oauth/authorize"},anthropic:{token:"https://api.anthropic.com/v1/oauth/token",auth:"https://api.anthropic.com/v1/oauth/authorize"},qwen:{token:"https://qwen.ai/api/v1/oauth2/token",auth:"https://qwen.ai/api/v1/oauth2/device/code"},iflow:{token:"https://iflow.cn/oauth/token",auth:"https://iflow.cn/oauth"},github:{token:"https://github.com/login/oauth/access_token",auth:"https://github.com/login/oauth/authorize",deviceCode:"https://github.com/login/device/code"}};function p(){return{"X-Msh-Platform":"bluerouter","X-Msh-Version":"2.1.2","X-Msh-Device-Model":"u">typeof process?`${process.platform} ${process.arch}`:"unknown","X-Msh-Device-Id":`kimi-${Date.now()}`}}},49065:(a,b,c)=>{c.r(b),c.d(b,{geminiToOpenAIRequest:()=>g});var d=c(69887),e=c(42541),f=c(58455);function g(a,b,c){let d={model:a,messages:[],stream:c};if(b.generationConfig){let a=b.generationConfig;if(a.maxOutputTokens){let c={max_tokens:a.maxOutputTokens,tools:b.tools};d.max_tokens=(0,f.M)(c)}void 0!==a.temperature&&(d.temperature=a.temperature),void 0!==a.topP&&(d.top_p=a.topP)}if(b.systemInstruction){var e;let a="string"==typeof(e=b.systemInstruction)?e:e.parts&&Array.isArray(e.parts)?e.parts.map(a=>a.text||"").join(""):"";a&&d.messages.push({role:"system",content:a})}if(b.contents&&Array.isArray(b.contents))for(let a of b.contents){let b=function(a){let b="user"===a.role?"user":"assistant";if(!a.parts||!Array.isArray(a.parts))return null;let c=[],d=[];for(let b of a.parts)if(void 0!==b.text&&c.push({type:"text",text:b.text}),b.inlineData&&c.push({type:"image_url",image_url:{url:`data:${b.inlineData.mimeType};base64,${b.inlineData.data}`}}),b.functionCall&&d.push({id:`call_${Date.now()}_${Math.random().toString(36).slice(2,8)}`,type:"function",function:{name:b.functionCall.name,arguments:JSON.stringify(b.functionCall.args||{})}}),b.functionResponse)return{role:"tool",tool_call_id:b.functionResponse.id||b.functionResponse.name,content:JSON.stringify(b.functionResponse.response?.result||b.functionResponse.response||{})};if(d.length>0){let a={role:"assistant"};return c.length>0&&(a.content=1===c.length?c[0].text:c),a.tool_calls=d,a}return c.length>0?{role:b,content:1===c.length&&"text"===c[0].type?c[0].text:c}:null}(a);b&&d.messages.push(b)}if(b.tools&&Array.isArray(b.tools)){for(let a of(d.tools=[],b.tools))if(a.functionDeclarations)for(let b of a.functionDeclarations)d.tools.push({type:"function",function:{name:b.name,description:b.description||"",parameters:b.parameters||{type:"object",properties:{}}}})}return d}(0,d.kz)(e.h.GEMINI,e.h.OPENAI,g,null),(0,d.kz)(e.h.GEMINI_CLI,e.h.OPENAI,g,null)},50270:(a,b,c)=>{c.r(b),c.d(b,{openaiToAntigravityResponse:()=>f});var d=c(69887),e=c(42541);function f(a,b){if(!a)return null;let c=a.choices?.[0];if(!c)return a.usage&&(b._usage=a.usage),null;let d=c.delta||{},e=c.finish_reason;b._toolCallAccum||(b._toolCallAccum={}),b._responseId||(b._responseId=a.id||`resp_${Date.now()}`),b._modelVersion||(b._modelVersion=a.model||"");let f=[],g=d.reasoning_content||d.reasoning;if(g&&f.push({thought:!0,text:g}),d.content&&f.push({text:d.content}),d.tool_calls){for(let a of d.tool_calls){let c=a.index??0;b._toolCallAccum[c]||(b._toolCallAccum[c]={id:"",name:"",arguments:""});let d=b._toolCallAccum[c];a.id&&(d.id=a.id),a.function?.name&&(d.name+=a.function.name),a.function?.arguments&&(d.arguments+=a.function.arguments)}if(0===f.length&&!e)return null}if(e)for(let a of Object.keys(b._toolCallAccum)){let c=b._toolCallAccum[a],d={};try{d=JSON.parse(c.arguments)}catch{}let e=b.toolNameMap?.get(c.name)||c.name;f.push({functionCall:{name:e,args:d}})}if(0===f.length&&!e)return null;0===f.length&&e&&f.push({text:""});let h={content:{role:"model",parts:f}};e&&(h.finishReason=({stop:"STOP",length:"MAX_TOKENS",tool_calls:"STOP",content_filter:"SAFETY"})[e]||"STOP");let i={candidates:[h],modelVersion:b._modelVersion,responseId:b._responseId},j=a.usage||b._usage;return j&&(i.usageMetadata={promptTokenCount:j.prompt_tokens||0,candidatesTokenCount:j.completion_tokens||0,totalTokenCount:j.total_tokens||0},j.completion_tokens_details?.reasoning_tokens&&(i.usageMetadata.thoughtsTokenCount=j.completion_tokens_details.reasoning_tokens),j.prompt_tokens_details?.cached_tokens&&(i.usageMetadata.cachedContentTokenCount=j.prompt_tokens_details.cached_tokens)),{response:i}}(0,d.kz)(e.h.OPENAI,e.h.ANTIGRAVITY,null,f)},50294:(a,b,c)=>{c.d(b,{R:()=>i});var d=c(50801),e=c(30395),f=c(48991);let g="QwenCode/0.12.3 (linux; x64)",h={role:"system",content:[{type:"text",text:"",cache_control:{type:"ephemeral"}}]};class i extends d.L{constructor(){super("qwen")}buildUrl(a,b,c=0,d=null){let e=d?.providerSpecificData?.resourceUrl,f=e?e.replace(/^https?:\/\//,"").replace(/\/$/,""):"portal.qwen.ai";return`https://${f}/v1/chat/completions`}buildHeaders(a,b=!0){return function(a,b=!0){let c=a?.apiKey||a?.accessToken||"",d={"Content-Type":"application/json",Authorization:`Bearer ${c}`,"User-Agent":g,"X-DashScope-AuthType":"qwen-oauth","X-DashScope-CacheControl":"enable","X-DashScope-UserAgent":g,"X-Stainless-Arch":"x64","X-Stainless-Lang":"js","X-Stainless-Os":"Linux","X-Stainless-Package-Version":"5.11.0","X-Stainless-Retry-Count":"1","X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":"v18.19.1",Connection:"keep-alive","Accept-Language":"*","Sec-Fetch-Mode":"cors"};return d.Accept=b?"text/event-stream":"application/json",d}(a,b)}transformRequest(a,b,c,d){let e=b&&"object"==typeof b?{...b}:b;c&&e?.messages&&!e.stream_options&&!e.thinking&&!e.enable_thinking&&!1!==e.stream&&(e.stream_options={include_usage:!0});var f=e=function(a){let b;if(!0!==(b=a?.thinking)&&a?.enable_thinking!==!0&&("object"!=typeof b||null===b||Array.isArray(b)||"enabled"!==b.type))return a;let c=a.tool_choice;return"required"!==c&&("object"!=typeof c||null===c)?a:{...a,tool_choice:"auto"}}(e);if(!f||"object"!=typeof f)return f;let g={...f};return Array.isArray(g.messages)?g.messages=[h,...g.messages]:g.messages=[h],g}async refreshCredentials(a,b){if(!a?.refreshToken)return null;try{let c=await fetch(f.NA.qwen.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:e.xq.qwen.clientId})});if(!c.ok)return null;let d=await c.json();return b?.info?.("TOKEN","qwen refreshed"),{accessToken:d.access_token,refreshToken:d.refresh_token||a.refreshToken,expiresIn:d.expires_in,providerSpecificData:{...a.providerSpecificData||{},...d.resource_url?{resourceUrl:d.resource_url}:{}}}}catch(a){return b?.error?.("TOKEN",`qwen refresh error: ${a.message}`),null}}}},50405:(a,b,c)=>{c.d(b,{Hi:()=>e,n5:()=>f});let d=String(process.env.CODEX_CLIENT_VERSION||"").trim(),e=String(process.env.CODEX_ORIGINATOR||"").trim()||"codex_cli_rs",f=`https://chatgpt.com/backend-api/codex/models?client_version=${encodeURIComponent(d||"0.144.6")}`},50801:(a,b,c)=>{c.d(b,{L:()=>m});var d=c(2750),e=c(30395),f=c(48991),g=c(43469);let h=new Map;var i=c(46956),j=c(80015);function k(a,b){let c=b.toLowerCase();for(let b of Object.keys(a))if(b.toLowerCase()===c)return!0;return!1}let l=new Set(["host","content-length","connection","keep-alive","transfer-encoding","te","trailer","upgrade","proxy-authenticate","proxy-authorization","authorization","x-api-key","cookie","x-connection-id","forwarded","via","x-forwarded-for","x-forwarded-host","x-forwarded-port","x-forwarded-proto","x-real-ip","cf-connecting-ip","cf-ray","cf-visitor"]);class m extends d.H{constructor(a){super(a,e.xq[a]||e.xq.openai)}transformRequest(a,b,c=!0,d=null){let e=this.applyJsonSchemaFallback(b),f=this.normalizeAnthropicApiKeyRequest(e,d);return(0,j.Z)({provider:this.provider,model:a,body:f})}normalizeAnthropicApiKeyRequest(a,b=null){if(!a||"object"!=typeof a||Array.isArray(a)||!b?.apiKey)return a;let c="anthropic"===this.provider,d=this.provider?.startsWith?.("anthropic-compatible-");if(!c&&!d||!Object.prototype.hasOwnProperty.call(a,"context_management"))return a;let e={...a};return delete e.context_management,e}buildUrl(a,b,c=0,d=null,f=null){if(this.provider?.startsWith?.("openai-compatible-")){let a=(d?.providerSpecificData?.baseUrl||"https://api.openai.com/v1").replace(/\/$/,""),b=this.provider.includes("responses")?"/responses":"/chat/completions";return`${a}${b}`}if(this.provider?.startsWith?.("anthropic-compatible-")){let a=(d?.providerSpecificData?.baseUrl||"https://api.anthropic.com/v1").replace(/\/$/,"");return`${a}/messages`}switch(this.provider){case"claude":if(f?.nativeClaudePassthrough===!0){var g;let a;return`${this.config.baseUrl}${!(a="string"==typeof(g=f.query)?g.trim():"")||"?"===a||!a.startsWith("?")||/[\r\n#]/.test(a)?"":a}`}return`${this.config.baseUrl}?beta=true`;case"glm":case"kimi":case"minimax":case"minimax-cn":case"kimi-coding":return`${this.config.baseUrl}?beta=true`;case"gemini":return`${this.config.baseUrl}/${a}:${b?"streamGenerateContent?alt=sse":"generateContent"}`;default:{if("xiaomi-tokenplan"===this.provider)return`${(0,e.Yg)(d)}/chat/completions`;let a=this.config.baseUrl;if(a?.includes("{accountId}")){let b=d?.providerSpecificData?.accountId;if(!b)throw Error(`${this.provider} requires accountId in providerSpecificData`);return a.replace("{accountId}",b)}return a}}}applyJsonSchemaFallback(a){if(!this.provider?.startsWith?.("openai-compatible-"))return a;let b=a?.response_format;if(b?.type!=="json_schema"||!b.json_schema?.schema)return a;let c=["You must respond with valid JSON that strictly follows this JSON schema:\n```json",JSON.stringify(b.json_schema.schema,null,2),"```\nRespond ONLY with the JSON object, no other text."].join("\n"),d=Array.isArray(a.messages)?a.messages.map(a=>({...a})):[],e=d.find(a=>"system"===a.role);return e?"string"==typeof e.content?e.content=[e.content,c].filter(Boolean).join("\n\n"):Array.isArray(e.content)?e.content=[...e.content,{type:"text",text:c}]:e.content=c:d.unshift({role:"system",content:c}),{...a,messages:d,response_format:{type:"json_object"}}}buildHeaders(a,b=!0,c=null){if("claude"===this.provider&&c?.nativeClaudePassthrough===!0)return function(a,b,c){let d={};for(let[b,c]of a?"function"==typeof a.entries?Array.from(a.entries()):"object"!=typeof a||Array.isArray(a)?[]:Object.entries(a):[]){let a=String(b||"").trim().toLowerCase();a&&null!=c&&(l.has(a)||a.startsWith("x-9r-")||(d[a]=Array.isArray(c)?c.join(", "):String(c)))}return k(d,"content-type")||(d["content-type"]="application/json"),c&&!k(d,"accept")&&(d.accept="text/event-stream"),b?.apiKey?d["x-api-key"]=b.apiKey:d.authorization=`Bearer ${b?.accessToken||""}`,d}(c.headers,a,b);let d={"Content-Type":"application/json",...this.config.headers};switch(this.provider){case"gemini":a.apiKey?d["x-goog-api-key"]=a.apiKey:d.Authorization=`Bearer ${a.accessToken}`;break;case"claude":{var e;let b=(e=a?.connectionId)&&h.get(e)||null;if(b){for(let a of Object.keys(b)){let c=a.replace(/(^|-)([a-z])/g,(a,b,c)=>b+c.toUpperCase());if("anthropic-beta"===a){let e=new Set((d[c]||d[a]||"").split(",").map(a=>a.trim()).filter(Boolean)),f=new Set(b[a].split(",").map(a=>a.trim()).filter(Boolean));for(let a of e)f.add(a);b[a]=Array.from(f).join(",")}c!==a&&void 0!==d[c]&&delete d[c]}Object.assign(d,b)}a.apiKey?d["x-api-key"]=a.apiKey:d.Authorization=`Bearer ${a.accessToken}`;break}case"glm":case"kimi":case"minimax":case"minimax-cn":case"kimi-coding":d["x-api-key"]=a.apiKey||a.accessToken,"kimi-coding"===this.provider&&Object.assign(d,(0,f.VK)());break;default:this.provider?.startsWith?.("anthropic-compatible-")?(a.apiKey?d["x-api-key"]=a.apiKey:a.accessToken&&(d.Authorization=`Bearer ${a.accessToken}`),k(d,"anthropic-version")||(d["anthropic-version"]="2023-06-01")):"gitlab"===this.provider||"codebuddy"===this.provider?d.Authorization=`Bearer ${a.apiKey||a.accessToken}`:"kilocode"===this.provider?(d.Authorization=`Bearer ${a.apiKey||a.accessToken}`,a.providerSpecificData?.orgId&&(d["X-Kilocode-OrganizationID"]=a.providerSpecificData.orgId)):"cline"===this.provider?Object.assign(d,(0,g.w$)(a.apiKey||a.accessToken)):this.config?.format==="claude"?(d["x-api-key"]=a.apiKey||a.accessToken,k(d,"anthropic-version")||(d["anthropic-version"]="2023-06-01")):d.Authorization=`Bearer ${a.apiKey||a.accessToken}`}if(this.provider?.startsWith?.("anthropic-compatible-")){let b=a?.providerSpecificData?.baseUrl||"";if(!(""===b||b.includes("api.anthropic.com"))){for(let a of(delete d["anthropic-dangerous-direct-browser-access"],delete d["Anthropic-Dangerous-Direct-Browser-Access"],delete d["x-app"],delete d["X-App"],["anthropic-beta","Anthropic-Beta"]))if(d[a]){let b=d[a].split(",").map(a=>a.trim()).filter(a=>a&&"claude-code-20250219"!==a).join(",");b?d[a]=b:delete d[a]}}}return b&&(d.Accept="text/event-stream"),d}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;let d={claude:()=>this.refreshWithJSON(f.NA.anthropic.token,{grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:e.xq.claude.clientId},c),codex:()=>this.refreshWithForm(f.NA.openai.token,{grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:e.xq.codex.clientId,scope:"openid profile email offline_access"},c),qwen:()=>this.refreshWithForm(f.NA.qwen.token,{grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:e.xq.qwen.clientId},c),iflow:()=>this.refreshIflow(a.refreshToken,c),gemini:()=>this.refreshGoogle(a.refreshToken,c),kiro:()=>this.refreshKiro(a.refreshToken,c),cline:()=>this.refreshCline(a.refreshToken,c),"kimi-coding":()=>this.refreshKimiCoding(a.refreshToken,c),kilocode:()=>this.refreshKilocode(a.refreshToken,c)}[this.provider];if(!d)return null;try{let a=await d();return a&&b?.info?.("TOKEN",`${this.provider} refreshed`),a}catch(a){return b?.error?.("TOKEN",`${this.provider} refresh error: ${a.message}`),null}}async refreshWithJSON(a,b,c=null){let d=await (0,i.proxyAwareFetch)(a,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(b)},c);if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,refreshToken:e.refresh_token||b.refresh_token,expiresIn:e.expires_in}}async refreshWithForm(a,b,c=null){let d=await (0,i.proxyAwareFetch)(a,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams(b)},c);if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,refreshToken:e.refresh_token||b.refresh_token,expiresIn:e.expires_in}}async refreshIflow(a,b=null){let c=btoa(`${e.xq.iflow.clientId}:${e.xq.iflow.clientSecret}`),d=await (0,i.proxyAwareFetch)(f.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:e.xq.iflow.clientId,client_secret:e.xq.iflow.clientSecret})},b);if(!d.ok)return null;let g=await d.json();return{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}async refreshGoogle(a,b=null){let c=await (0,i.proxyAwareFetch)(f.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:this.config.clientId,client_secret:this.config.clientSecret})},b);if(!c.ok)return null;let d=await c.json();return{accessToken:d.access_token,refreshToken:d.refresh_token||a,expiresIn:d.expires_in}}async refreshKiro(a,b=null){let c=await (0,i.proxyAwareFetch)(e.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:a})},b);if(!c.ok)return null;let d=await c.json();return{accessToken:d.accessToken,refreshToken:d.refreshToken||a,expiresIn:d.expiresIn}}async refreshCline(a,b=null){console.log("[DEBUG] Refreshing Cline token, refreshToken length:",a?.length);let c=await (0,i.proxyAwareFetch)("https://api.cline.bot/api/v1/auth/refresh",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({refreshToken:a,grantType:"refresh_token",clientType:"extension"})},b);if(console.log("[DEBUG] Cline refresh response status:",c.status),!c.ok)return console.log("[DEBUG] Cline refresh error:",await c.text()),null;let d=await c.json();console.log("[DEBUG] Cline refresh payload:",JSON.stringify(d).substring(0,200));let e=d?.data||d,f=e?.expiresAt,g=f?Math.max(1,Math.floor((new Date(f).getTime()-Date.now())/1e3)):void 0;return console.log("[DEBUG] Cline refresh success, expiresIn:",g),{accessToken:e?.accessToken,refreshToken:e?.refreshToken||a,expiresIn:g}}async refreshKimiCoding(a,b=null){let c=(0,f.VK)(),d=await (0,i.proxyAwareFetch)("https://auth.kimi.com/api/oauth/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",...c},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:"17e5f671-d194-4dfb-9706-5516cb48c098"})},b);if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,refreshToken:e.refresh_token||a,expiresIn:e.expires_in}}async refreshKilocode(a,b=null){return null}}},51525:(a,b,c)=>{c(46363),c(25346)},51529:(a,b,c)=>{},51658:(a,b,c)=>{c(42541),c(69887),c(43212),c(11484),c(7974),c(51525),new TextEncoder},54403:(a,b,c)=>{c.d(b,{c:()=>n});var d=c(55511),e=c.n(d),f=c(2750),g=c(30395),h=c(48991),i=c(8735),j=c(93745),k=c(46956),l=c(13324);let m=Object.freeze({"gemini-3.7-flash":"Gemini 3.7 Flash"});class n extends f.H{constructor(){super("antigravity",g.xq.antigravity)}buildUrl(a,b,c=0){let d=this.getBaseUrls(),e=d[c]||d[0];return`${e}/v1internal:${b?"streamGenerateContent?alt=sse":"generateContent"}`}buildHeaders(a,b=!0,c=null){return{"Content-Type":"application/json",Authorization:`Bearer ${a.accessToken}`,"User-Agent":this.config.headers?.["User-Agent"]||h.K["User-Agent"],[h.Ox.name]:h.Ox.value,...c&&{"X-Machine-Session-Id":c},Accept:b?"text/event-stream":"application/json"}}transformRequest(a,b,c,d){let f=d?.projectId||this.generateProjectId(),g=b.request?.contents?.map(a=>{let b=a.role;a.parts?.some(a=>a.functionResponse)&&(b="user");let c=a.parts?.filter(a=>(!a.thought||!!a.functionCall)&&(!a.thoughtSignature||!!a.functionCall||!!a.text));return b!==a.role||c?.length!==a.parts?.length?{...a,role:b,parts:c}:a}),h=b.request?.tools;if(h&&h.length>0){let a=h.flatMap(a=>(a.functionDeclarations||[]).map(a=>({...a,name:function(a){if(!a)return"_unknown";let b=a.replace(/[^a-zA-Z0-9_.:\-]/g,"_");return/^[a-zA-Z_]/.test(b)||(b="_"+b),b.substring(0,64)}(a.name),parameters:a.parameters?(0,l.Yr)(structuredClone(a.parameters)):{type:"object",properties:{reason:{type:"string",description:"Brief explanation"}},required:["reason"]}})));h=a.length>0?[{functionDeclarations:a}]:[]}let{tools:i,toolConfig:k,...m}=b.request||{},n={...m.generationConfig||{}};n.maxOutputTokens>16384&&(n.maxOutputTokens=16384);let o={...m,generationConfig:n,...g&&{contents:g},...h&&{tools:h},sessionId:b.request?.sessionId||(0,j.RF)(d?.email||d?.connectionId),safetySettings:void 0,...h?.length>0&&{toolConfig:{functionCallingConfig:{mode:"VALIDATED"}}}};return{...b,project:f,model:a,userAgent:"antigravity",requestType:"agent",requestId:`agent-${e().randomUUID()}`,request:o}}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;try{let d=await (0,k.proxyAwareFetch)(h.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.refreshToken,client_id:this.config.clientId,client_secret:this.config.clientSecret})},c);if(!d.ok)return null;let e=await d.json();return b?.info?.("TOKEN","Antigravity refreshed"),{accessToken:e.access_token,refreshToken:e.refresh_token||a.refreshToken,expiresIn:e.expires_in,projectId:a.projectId}}catch(a){return b?.error?.("TOKEN",`Antigravity refresh error: ${a.message}`),null}}generateProjectId(){let a=["useful","bright","swift","calm","bold"][Math.floor(5*Math.random())],b=["fuze","wave","spark","flow","core"][Math.floor(5*Math.random())];return`${a}-${b}-${e().randomUUID().slice(0,5)}`}generateSessionId(){return e().randomUUID()+Date.now().toString()}parseRetryHeaders(a){if(!a?.get)return null;let b=a.get("retry-after");if(b){let a=parseInt(b,10);if(!isNaN(a)&&a>0)return 1e3*a;let c=new Date(b);if(!isNaN(c.getTime())){let a=c.getTime()-Date.now();return a>0?a:null}}let c=a.get("x-ratelimit-reset-after");if(c){let a=parseInt(c,10);if(!isNaN(a)&&a>0)return 1e3*a}let d=a.get("x-ratelimit-reset");if(d){let a=1e3*parseInt(d,10)-Date.now();return a>0?a:null}return null}parseRetryFromErrorMessage(a){if(!a||"string"!=typeof a)return null;let b=a.match(/reset after (\d+h)?(\d+m)?(\d+s)?/i);if(!b)return null;let c=0;return b[1]&&(c+=3600*parseInt(b[1])*1e3),b[2]&&(c+=60*parseInt(b[2])*1e3),b[3]&&(c+=1e3*parseInt(b[3])),c>0?c:null}async resolveDynamicModelId(a,b,c=null,d=null){let e=m[a];if(!e||!b?.accessToken)return a;let f=a=>String(a||"").trim().toLowerCase(),g=f(e);for(let e of[...new Set([...this.getBaseUrls().map(a=>`${a}/v1internal:fetchAvailableModels`),"https://cloudcode-pa.googleapis.com/v1internal:fetchAvailableModels"])])try{let i=await (0,k.proxyAwareFetch)(e,{method:"POST",headers:{Authorization:`Bearer ${b.accessToken}`,"User-Agent":this.config.headers?.["User-Agent"]||h.K["User-Agent"],"Content-Type":"application/json","X-Client-Name":"antigravity","X-Client-Version":"1.107.0","x-request-source":"local"},body:JSON.stringify(b?.projectId?{project:b.projectId}:{})},c);if(!i.ok)continue;let j=await i.json(),l=Object.entries(j?.models||{}).filter(([,a])=>!a?.isInternal),m=l.find(([,a])=>f(a?.displayName)===g);if(m||(m=l.find(([,a])=>{let b=f(a?.displayName);return b.startsWith(g)&&b.includes("high")})),m||(m=l.find(([,a])=>f(a?.displayName).startsWith(g))),m||(m=l.find(([a])=>{let b=f(a);return b.includes("gemini")&&b.includes("3.7")&&b.includes("flash")})),m?.[0]){let b=m[0];return d?.debug?.("MODEL",`Resolved Antigravity ${a} -> ${b}`),b}}catch(a){d?.debug?.("MODEL",`Antigravity model discovery failed on ${e}: ${a.message}`)}return d?.debug?.("MODEL",`No Antigravity upstream id found for ${a}; using requested id`),a}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:f,proxyOptions:g=null}){let h=await this.resolveDynamicModelId(a,d,g,f),j=this.getFallbackCount(),l=null,m=0,n={},o={};for(let a=0;a<j;a++){let p=this.buildUrl(h,c,a),q=this.transformRequest(h,b,c,d),r=q.request?.sessionId,s=this.buildHeaders(d,c,r);n[a]||(n[a]=0),o[a]||(o[a]=0);try{let b=await (0,k.proxyAwareFetch)(p,{method:"POST",headers:s,body:JSON.stringify(q),signal:e},g);if(b.status===i.gx.RATE_LIMITED||b.status===i.gx.SERVICE_UNAVAILABLE){let c=this.parseRetryHeaders(b.headers);if(!c)try{let a=await b.clone().text(),d=JSON.parse(a),e=d?.error?.message||d?.message||"";c=this.parseRetryFromErrorMessage(e)}catch(a){}if(c&&c<=1e4&&o[a]<3){o[a]++,f?.debug?.("RETRY",`${b.status} with Retry-After: ${Math.ceil(c/1e3)}s, waiting... (${o[a]}/3)`),await new Promise(a=>setTimeout(a,c)),a--;continue}if(b.status===i.gx.RATE_LIMITED&&(!c||0===c)&&n[a]<3){n[a]++;let b=Math.min(1e3*2**n[a],1e4);f?.debug?.("RETRY",`429 auto retry ${n[a]}/3 after ${b/1e3}s`),await new Promise(a=>setTimeout(a,b)),a--;continue}if(f?.debug?.("RETRY",`${b.status}, Retry-After ${c?`too long (${Math.ceil(c/1e3)}s)`:"missing"}, trying fallback`),m=b.status,a+1<j)continue}if(this.shouldRetry(b.status,a)){f?.debug?.("RETRY",`${b.status} on ${p}, trying fallback ${a+1}`),m=b.status;continue}return{response:b,url:p,headers:s,transformedBody:q}}catch(b){if(l=b,a+1<j){f?.debug?.("RETRY",`Error on ${p}, trying fallback ${a+1}`);continue}throw b}}throw l||Error(`All ${j} URLs failed with status ${m}`)}static cloakTools(a,b=null){let c=a.request?.tools;if(!c||0===c.length)return{cloakedBody:a,toolNameMap:null};let d="github-copilot"===b,e=new Map,f=[],g=new Set(o.map(a=>a.name));for(let a of c)if(a.functionDeclarations)for(let b of a.functionDeclarations){if(d&&h.J5.has(b.name)||d&&g.has(b.name))continue;if(h.J5.has(b.name)){f.push(b);continue}let a=`${b.name}${h.QH}`;e.set(a,b.name),f.push({...b,name:a})}let i=[],j=new Set;for(let a of[...f,...o])!a?.name||j.has(a.name)||(j.add(a.name),i.push(a));let k=a.request?.contents?.map(a=>{if(!a.parts)return a;let b=a.parts.map(a=>a.functionCall&&!h.J5.has(a.functionCall.name)?{...a,functionCall:{...a.functionCall,name:`${a.functionCall.name}${h.QH}`}}:a.functionResponse&&!h.J5.has(a.functionResponse.name)?{...a,functionResponse:{...a.functionResponse,name:`${a.functionResponse.name}${h.QH}`}}:a);return{...a,parts:b}});return{cloakedBody:{...a,request:{...a.request,tools:[{functionDeclarations:i}],contents:k||a.request.contents}},toolNameMap:e}}}let o=[{name:"browser_subagent",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"command_status",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"find_by_name",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"generate_image",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"grep_search",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"list_dir",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"list_resources",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"mcp_sequential-thinking_sequentialthinking",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"multi_replace_file_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"notify_user",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_resource",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_terminal",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_url_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"replace_file_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"run_command",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"search_web",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"send_command_input",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"task_boundary",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"view_content_chunk",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"view_file",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"write_to_file",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}}]},55599:(a,b,c)=>{c(1758),c(8735),c(42541),c(7974),c(51525)},56248:(a,b,c)=>{c.r(b),c.d(b,{openaiResponsesToOpenAIResponse:()=>n,openaiToOpenAIResponsesResponse:()=>f});var d=c(69887),e=c(42541);function f(a,b){if(!a){var c=b;if(c.completedSent)return[];let a=[],d=(b,d)=>{d.sequence_number=++c.seq,a.push({event:b,data:d})};for(let a in c.msgItemAdded)j(c,d,a);for(let a in i(c,d),c.funcCallIds)k(c,d,a);return l(c,d),a}if(!a.choices?.length)return[];let d=[],e=(a,c)=>{c.sequence_number=++b.seq,d.push({event:a,data:c})},f=a.choices[0],m=f.index||0,n=f.delta||{};b.started||(b.started=!0,b.responseId=a.id?`resp_${a.id}`:b.responseId,e("response.created",{type:"response.created",response:{id:b.responseId,object:"response",created_at:b.created,status:"in_progress",background:!1,error:null,output:[]}}),e("response.in_progress",{type:"response.in_progress",response:{id:b.responseId,object:"response",created_at:b.created,status:"in_progress"}}));let o=n.reasoning_content||n.reasoning;if(o&&(g(b,e,m),h(b,e,o)),n.content){let a=n.content;if(a.includes("<think>")&&(b.inThinking=!0,a=a.replace("<think>",""),g(b,e,m)),a.includes("</think>")){let c=a.split("</think>"),d=c[0],f=c.slice(1).join("</think>");d&&h(b,e,d),i(b,e),b.inThinking=!1,a=f}if(b.inThinking&&a)return h(b,e,a),d;a&&function(a,b,c,d){if(!a.msgItemAdded[c]){a.msgItemAdded[c]=!0;let d=`msg_${a.responseId}_${c}`;b("response.output_item.added",{type:"response.output_item.added",output_index:c,item:{id:d,type:"message",content:[],role:"assistant"}})}a.msgContentAdded[c]||(a.msgContentAdded[c]=!0,b("response.content_part.added",{type:"response.content_part.added",item_id:`msg_${a.responseId}_${c}`,output_index:c,content_index:0,part:{type:"output_text",annotations:[],logprobs:[],text:""}})),b("response.output_text.delta",{type:"response.output_text.delta",item_id:`msg_${a.responseId}_${c}`,output_index:c,content_index:0,delta:d,logprobs:[]}),a.msgTextBuf[c]||(a.msgTextBuf[c]=""),a.msgTextBuf[c]+=d}(b,e,m,a)}if(n.tool_calls)for(let a of(j(b,e,m),n.tool_calls))!function(a,b,c){let d=c.index??0,e=c.id,f=c.function?.name;if(f&&(a.funcNames[d]=f),!a.funcCallIds[d]&&e&&(a.funcCallIds[d]=e,b("response.output_item.added",{type:"response.output_item.added",output_index:d,item:{id:`fc_${e}`,type:"function_call",arguments:"",call_id:e,name:a.funcNames[d]||""}})),a.funcArgsBuf[d]||(a.funcArgsBuf[d]=""),c.function?.arguments){let f=a.funcCallIds[d]||e;f&&b("response.function_call_arguments.delta",{type:"response.function_call_arguments.delta",item_id:`fc_${f}`,output_index:d,delta:c.function.arguments}),a.funcArgsBuf[d]+=c.function.arguments}}(b,e,a);if(n.images?.length)for(let a of(j(b,e,m),n.images))!function(a,b,c,d){let e=d?.image_url?.url||d?.url||"",f=/^data:([^;]+);base64,(.+)$/.exec(e),g=f?f[2]:e;if(!g)return;a.imageIndex=(a.imageIndex||0)+1;let h=`ig_${a.responseId}_${c}_${a.imageIndex}`;b("response.output_item.added",{type:"response.output_item.added",output_index:c,item:{id:h,type:"image_generation_call",status:"in_progress"}}),b("response.output_item.done",{type:"response.output_item.done",output_index:c,item:{id:h,type:"image_generation_call",status:"completed",result:g}})}(b,e,m,a);if(f.finish_reason){for(let a in b.msgItemAdded)j(b,e,a);for(let a in i(b,e),b.funcCallIds)k(b,e,a);l(b,e)}return d}function g(a,b,c){a.reasoningId||(a.reasoningId=`rs_${a.responseId}_${c}`,a.reasoningIndex=c,b("response.output_item.added",{type:"response.output_item.added",output_index:c,item:{id:a.reasoningId,type:"reasoning",summary:[]}}),b("response.reasoning_summary_part.added",{type:"response.reasoning_summary_part.added",item_id:a.reasoningId,output_index:c,summary_index:0,part:{type:"summary_text",text:""}}),a.reasoningPartAdded=!0)}function h(a,b,c){c&&(a.reasoningBuf+=c,b("response.reasoning_summary_text.delta",{type:"response.reasoning_summary_text.delta",item_id:a.reasoningId,output_index:a.reasoningIndex,summary_index:0,delta:c}))}function i(a,b){a.reasoningId&&!a.reasoningDone&&(a.reasoningDone=!0,b("response.reasoning_summary_text.done",{type:"response.reasoning_summary_text.done",item_id:a.reasoningId,output_index:a.reasoningIndex,summary_index:0,text:a.reasoningBuf}),b("response.reasoning_summary_part.done",{type:"response.reasoning_summary_part.done",item_id:a.reasoningId,output_index:a.reasoningIndex,summary_index:0,part:{type:"summary_text",text:a.reasoningBuf}}),b("response.output_item.done",{type:"response.output_item.done",output_index:a.reasoningIndex,item:{id:a.reasoningId,type:"reasoning",summary:[{type:"summary_text",text:a.reasoningBuf}]}}))}function j(a,b,c){if(a.msgItemAdded[c]&&!a.msgItemDone[c]){a.msgItemDone[c]=!0;let d=a.msgTextBuf[c]||"",e=`msg_${a.responseId}_${c}`;b("response.output_text.done",{type:"response.output_text.done",item_id:e,output_index:parseInt(c),content_index:0,text:d,logprobs:[]}),b("response.content_part.done",{type:"response.content_part.done",item_id:e,output_index:parseInt(c),content_index:0,part:{type:"output_text",annotations:[],logprobs:[],text:d}}),b("response.output_item.done",{type:"response.output_item.done",output_index:parseInt(c),item:{id:e,type:"message",content:[{type:"output_text",annotations:[],logprobs:[],text:d}],role:"assistant"}})}}function k(a,b,c){let d=a.funcCallIds[c];if(d&&!a.funcItemDone[c]){let e=a.funcArgsBuf[c]||"{}";b("response.function_call_arguments.done",{type:"response.function_call_arguments.done",item_id:`fc_${d}`,output_index:parseInt(c),arguments:e}),b("response.output_item.done",{type:"response.output_item.done",output_index:parseInt(c),item:{id:`fc_${d}`,type:"function_call",arguments:e,call_id:d,name:a.funcNames[c]||""}}),a.funcItemDone[c]=!0,a.funcArgsDone[c]=!0}}function l(a,b){a.completedSent||(a.completedSent=!0,b("response.completed",{type:"response.completed",response:{id:a.responseId,object:"response",created_at:a.created,status:"completed",background:!1,error:null}}))}function m(a){return a.toolCallIndex>0||a.currentToolCallId?"tool_calls":"stop"}function n(a,b){if(!a){if(b.finishReasonSent||!b.started)return null;let a=m(b);b.finishReasonSent=!0,b.finishReason=a;let c={id:b.chatId||`chatcmpl-${Date.now()}`,object:"chat.completion.chunk",created:b.created||Math.floor(Date.now()/1e3),model:b.model||"unknown",choices:[{index:0,delta:{},finish_reason:a}]};return b.usage&&"object"==typeof b.usage&&(c.usage=b.usage),c}let c=a.type||a.event,d=a.data||a;if(b.started||(b.started=!0,b.chatId=`chatcmpl-${Date.now()}`,b.created=Math.floor(Date.now()/1e3),b.toolCallIndex=0,b.currentToolCallId=null),"response.output_text.delta"===c){let a=d.delta||"";return a?{id:b.chatId,object:"chat.completion.chunk",created:b.created,model:b.model||"unknown",choices:[{index:0,delta:{content:a},finish_reason:null}]}:null}if("response.output_text.done"===c)return null;if("response.output_item.added"===c&&(d.item?.type==="function_call"||d.item?.type==="custom_tool_call")){let a=d.item;return b.currentToolCallId=a.call_id||`call_${Date.now()}`,{id:b.chatId,object:"chat.completion.chunk",created:b.created,model:b.model||"unknown",choices:[{index:0,delta:{tool_calls:[{index:b.toolCallIndex,id:b.currentToolCallId,type:"function",function:{name:a.name||"",arguments:""}}]},finish_reason:null}]}}if("response.function_call_arguments.delta"===c||"response.custom_tool_call_input.delta"===c){let a=d.delta||"";return a?{id:b.chatId,object:"chat.completion.chunk",created:b.created,model:b.model||"unknown",choices:[{index:0,delta:{tool_calls:[{index:b.toolCallIndex,function:{arguments:a}}]},finish_reason:null}]}:null}if("response.output_item.done"===c&&(d.item?.type==="function_call"||d.item?.type==="custom_tool_call"))return b.toolCallIndex++,null;if("response.completed"===c){let a=d.response?.usage;if(a&&"object"==typeof a){let c=a.input_tokens||a.prompt_tokens||0,d=a.output_tokens||a.completion_tokens||0,e=a.input_tokens_details?.cached_tokens||a.cache_read_input_tokens||0;b.usage={prompt_tokens:c,completion_tokens:d,total_tokens:c+d},e>0&&(b.usage.prompt_tokens_details={cached_tokens:e})}if(!b.finishReasonSent){let a=m(b);b.finishReasonSent=!0,b.finishReason=a;let c={id:b.chatId,object:"chat.completion.chunk",created:b.created,model:b.model||"unknown",choices:[{index:0,delta:{},finish_reason:a}]};return b.usage&&"object"==typeof b.usage&&(c.usage=b.usage),c}return null}if("error"===c||"response.failed"===c){if(b.finishReasonSent)return null;let a=d.error||d.response?.error;return a?(b.error=a,b.finishReasonSent=!0,{id:b.chatId||`chatcmpl-${Date.now()}`,object:"chat.completion.chunk",created:b.created||Math.floor(Date.now()/1e3),model:b.model||"unknown",choices:[{index:0,delta:{content:`[Error] ${a.message||JSON.stringify(a)}`},finish_reason:"error"}]}):null}return null}(0,d.kz)(e.h.OPENAI,e.h.OPENAI_RESPONSES,null,f),(0,d.kz)(e.h.OPENAI_RESPONSES,e.h.OPENAI,null,n)},58455:(a,b,c)=>{c.d(b,{M:()=>e});var d=c(8735);function e(a){let b=a.max_tokens||d.Uc;return a.tools&&Array.isArray(a.tools)&&a.tools.length>0&&b<d.eo&&(b=d.eo),a.thinking?.budget_tokens&&b<=a.thinking.budget_tokens&&(b=a.thinking.budget_tokens+1024),b}},59039:(a,b,c)=>{c.a(a,async(a,b)=>{try{c(19458),c(69887),c(42541),c(43212),c(11484),c(47153),c(91083),c(14372),c(1758),c(8735),c(27696),c(51525),c(42352);var d=c(65333);c(7974),c(55599),c(5275),c(51658),c(1447),c(15783),c(4818),c(374);var e=a([d]);d=(e.then?(await e)():e)[0],b()}catch(a){b(a)}})},60083:(a,b,c)=>{c.d(b,{H:()=>i});var d=c(2750),e=c(30395),f=c(80015);let g=new Set(["minimax-m2.5","minimax-m2.7"]),h="https://opencode.ai/zen/go/v1";class i extends d.H{constructor(){super("opencode-go",e.xq["opencode-go"])}buildUrl(a){return this._lastModel=a,g.has(a)?`${h}/messages`:`${h}/chat/completions`}buildHeaders(a,b=!0){let c=a?.apiKey||a?.accessToken,d={"Content-Type":"application/json"};return g.has(this._lastModel)?(d["x-api-key"]=c,d["anthropic-version"]="2023-06-01"):d.Authorization=`Bearer ${c}`,b&&(d.Accept="text/event-stream"),d}transformRequest(a,b){return(0,f.Z)({provider:this.provider,model:a,body:b})}}},64304:(a,b,c)=>{c.d(b,{Ay:()=>y});var d=c(2750),e=c(30395);let f=e.xq["perplexity-web"].baseUrl,g="2.18",h={"pplx-auto":["concise","pplx_pro"],"pplx-sonar":["copilot","experimental"],"pplx-gpt":["copilot","gpt54"],"pplx-gemini":["copilot","gemini31pro_high"],"pplx-sonnet":["copilot","claude46sonnet"],"pplx-opus":["copilot","claude46opus"],"pplx-nemotron":["copilot","nv_nemotron_3_super"]},i={"pplx-gpt":"gpt54_thinking","pplx-sonnet":"claude46sonnetthinking","pplx-opus":"claude46opusthinking"},j=/\[\d+\]/g,k=/<grok:[^>]*>.*?<\/grok:[^>]*>/gs,l=/<grok:[^>]*\/>/g,m=/<[?]xml[^?]*[?]>/g,n=/<\/?response\b[^>]*>/gi,o=/ {2,}/g,p=/\n{3,}/g,q=new Map;function r(a){let b=a.map(a=>`${a.role}:${a.content}`).join("\n"),c=0x811c9dc5;for(let a=0;a<b.length;a++)c^=b.charCodeAt(a),c=0x1000193*c>>>0;return c.toString(16).padStart(8,"0")}function s(a,b,c,d){if(!d)return;let e=r([...a,{role:"user",content:b},{role:"assistant",content:c}]);if(q.set(e,{backendUuid:d,ts:Date.now()}),q.size>200){let a=null,b=1/0;for(let[c,d]of q)d.ts<b&&(b=d.ts,a=c);a&&q.delete(a)}}function t(a,b=!0){let c=a;return c=(c=(c=(c=(c=c.replace(m,"")).replace(j,"")).replace(k,"")).replace(l,"")).replace(n,""),b&&(c=(c=(c=c.replace(o," ")).replace(p,"\n\n")).trim()),c}async function*u(a,b){let c=a.getReader(),d=new TextDecoder,e="",f=[];function g(){if(0===f.length)return null;let a=f.join("\n");f=[];let b=a.trim();if(!b||"[DONE]"===b)return"done";try{return JSON.parse(b)}catch{return null}}try{for(;;){if(b?.aborted)return;let{value:a,done:h}=await c.read();if(h)break;for(e+=d.decode(a,{stream:!0});;){let a=e.indexOf("\n");if(a<0)break;let b=e.slice(0,a);e=e.slice(a+1);let c=b.endsWith("\r")?b.slice(0,-1):b;if(""===c){let a=g();if("done"===a)return;a&&(yield a);continue}if(c.startsWith("data:")&&f.push(c.slice(5).trimStart()),"event: end_of_stream"===c)return}}(e+=d.decode()).trim().startsWith("data:")&&f.push(e.trim().slice(5).trimStart());let a=g();a&&"done"!==a&&(yield a)}finally{c.releaseLock()}}async function*v(a,b){let c="",d=null,e=0,f=new Set;for await(let g of u(a,b)){if(g.error_code||g.error_message)return void(yield{error:g.error_message||`Perplexity error: ${g.error_code}`,done:!0});g.backend_uuid&&(d=g.backend_uuid);let a=g.blocks??[];for(let b of a){let a=b.intended_usage??"";if("pro_search_steps"===a&&b.plan_block?.steps){for(let a of b.plan_block.steps)if("SEARCH_WEB"===a.step_type)for(let b of a.search_web_content?.queries??[]){let a=b.query??"";a&&!f.has(a)&&(f.add(a),yield{thinking:`Searching: ${a}`,backendUuid:d??void 0})}else if("READ_RESULTS"===a.step_type)for(let b of(a.read_results_content?.urls??[]).slice(0,3))b&&!f.has(b)&&(f.add(b),yield{thinking:`Reading: ${b}`,backendUuid:d??void 0})}if("plan"===a&&b.plan_block?.goals)for(let a of b.plan_block.goals){let b=a.description??"";b&&!f.has(b)&&(f.add(b),yield{thinking:b,backendUuid:d??void 0})}if(!a.includes("markdown"))continue;let g=b.markdown_block;if(!g)continue;let h=g.chunks??[];if(0!==h.length)if("DONE"===g.progress)c=h.join("");else{let a=c+h.join("");if(a.length>e){let b=a.slice(e);c=a,e=a.length,yield{delta:b,answer:c,backendUuid:d??void 0}}}}if(0===a.length&&g.text){let a=g.text.trim();if(a.length>e){let b=a.slice(e);c=a,e=a.length,yield{delta:b,answer:c,backendUuid:d??void 0}}}if(g.final||"COMPLETED"===g.status)break}yield{delta:"",answer:c,backendUuid:d??void 0,done:!0}}function w(a){return`data: ${JSON.stringify(a)}
91
+ `}async function m(a,b,c,d,e,f){let g="",h="",i=[];for await(let b of k(a,e,f)){if(b.fingerprint&&(h=b.fingerprint),b.error)return new Response(JSON.stringify({error:{message:b.error,type:"upstream_error",code:"GROK_ERROR"}}),{status:502,headers:{"Content-Type":"application/json"}});if(b.thinking){i.push(b.thinking);continue}if(b.done)break;b.fullMessage?g=b.fullMessage:b.delta&&(g+=b.delta)}let j={role:"assistant",content:g};i.length>0&&(j.reasoning_content=i.join("\n"));let l=Math.ceil(g.length/4),m=Math.ceil(g.length/4);return new Response(JSON.stringify({id:c,object:"chat.completion",created:d,model:b,system_fingerprint:h||null,choices:[{index:0,message:j,finish_reason:"stop",logprobs:null}],usage:{prompt_tokens:l,completion_tokens:m,total_tokens:l+m}}),{status:200,headers:{"Content-Type":"application/json"}})}class n extends d.H{constructor(){super("grok-web",e.xq["grok-web"])}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:j}){let n,o,p=b?.messages;if(!p||!Array.isArray(p)||0===p.length)return{response:new Response(JSON.stringify({error:{message:"Missing or empty messages array",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};let q=g[a];q||j?.info?.("GROK-WEB",`Unmapped model ${a}, defaulting to grok-4.1-fast`);let{grokModel:r,modelMode:s,isThinking:t}=q||g["grok-4.1-fast"],u=function(a){let b=[];for(let c of a){let a=String(c.role||"user");"developer"===a&&(a="system");let d="";"string"==typeof c.content?d=c.content:Array.isArray(c.content)&&(d=c.content.filter(a=>"text"===a.type).map(a=>String(a.text||"")).join(" ")),d.trim()&&b.push({role:a,text:d})}let c=-1;for(let a=b.length-1;a>=0;a--)if("user"===b[a].role){c=a;break}let d=[];for(let a=0;a<b.length;a++){let{role:e,text:f}=b[a];d.push(a===c?f:`${e}: ${f}`)}return d.join("\n\n")}(p);if(!u.trim())return{response:new Response(JSON.stringify({error:{message:"Empty query after processing",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};let v={temporary:!0,modelName:r,modelMode:s,message:u,fileAttachments:[],imageAttachments:[],disableSearch:!1,enableImageGeneration:!1,returnImageBytes:!1,returnRawGrokInXaiRequest:!1,enableImageStreaming:!1,imageGenerationCount:0,forceConcise:!1,toolOverrides:{},enableSideBySide:!0,sendFinalMetadata:!0,isReasoning:!1,disableTextFollowUps:!1,disableMemory:!0,forceSideBySide:!1,isAsyncChat:!1,disableSelfHarmShortCircuit:!1,deviceEnvInfo:{darkModeEnabled:!1,devicePixelRatio:2,screenWidth:2056,screenHeight:1329,viewportWidth:2056,viewportHeight:1083}},w=i(16),x=i(8),y={Accept:"*/*","Accept-Encoding":"gzip, deflate, br, zstd","Accept-Language":"en-US,en;q=0.9",Baggage:"sentry-environment=production,sentry-release=d6add6fb0460641fd482d767a335ef72b9b6abb8,sentry-public_key=b311e0f2690c81f25e2c4cf6d4f7ce1c","Cache-Control":"no-cache","Content-Type":"application/json",Origin:"https://grok.com",Pragma:"no-cache",Referer:"https://grok.com/","Sec-Ch-Ua":'"Google Chrome";v="136", "Chromium";v="136", "Not(A:Brand";v="24"',"Sec-Ch-Ua-Mobile":"?0","Sec-Ch-Ua-Platform":'"macOS"',"Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-origin","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":btoa(.5>Math.random()?`e:TypeError: Cannot read properties of null (reading 'children["${h(5,!0)}"]')`:`e:TypeError: Cannot read properties of undefined (reading '${h(10)}')`),"x-xai-request-id":crypto.randomUUID(),traceparent:`00-${w}-${x}-00`};if(d.apiKey){let a=d.apiKey;a.startsWith("sso=")&&(a=a.slice(4)),y.Cookie=`sso=${a}`}j?.info?.("GROK-WEB",`Query to ${a} (grok=${r}, mode=${s}), len=${u.length}`);try{n=await fetch(f,{method:"POST",headers:y,body:JSON.stringify(v),signal:e})}catch(a){return j?.error?.("GROK-WEB",`Fetch failed: ${a.message||String(a)}`),{response:new Response(JSON.stringify({error:{message:`Grok connection failed: ${a.message||String(a)}`,type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:y,transformedBody:v}}if(!n.ok){let a=n.status,b=`Grok returned HTTP ${a}`;return 401===a||403===a?b="Grok auth failed — SSO cookie may be expired. Re-paste your sso cookie value from grok.com.":429===a&&(b="Grok rate limited. Wait a moment and retry, or rotate cookies."),j?.warn?.("GROK-WEB",b),{response:new Response(JSON.stringify({error:{message:b,type:"upstream_error",code:`HTTP_${a}`}}),{status:a,headers:{"Content-Type":"application/json"}}),url:f,headers:y,transformedBody:v}}if(!n.body)return{response:new Response(JSON.stringify({error:{message:"Grok returned empty response body",type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:y,transformedBody:v};let z=`chatcmpl-grok-${crypto.randomUUID().slice(0,12)}`,A=Math.floor(Date.now()/1e3);if(c){var B;let b;o=new Response((B=n.body,b=new TextEncoder,new ReadableStream({async start(c){try{c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:null,choices:[{index:0,delta:{role:"assistant"},finish_reason:null,logprobs:null}]})));let d="";for await(let f of k(B,t,e)){if(f.fingerprint&&(d=f.fingerprint),f.error){c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{content:`[Error: ${f.error}]`},finish_reason:null,logprobs:null}]})));break}if(f.thinking){c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{reasoning_content:f.thinking},finish_reason:null,logprobs:null}]})));continue}if(f.done)break;f.delta&&c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{content:f.delta},finish_reason:null,logprobs:null}]})))}c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n"))}catch(d){c.enqueue(b.encode(l({id:z,object:"chat.completion.chunk",created:A,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:`[Stream error: ${d.message||String(d)}]`},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n"))}finally{c.close()}}})),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache","X-Accel-Buffering":"no"}})}else o=await m(n.body,a,z,A,t,e);return{response:o,url:f,headers:y,transformedBody:v}}}},42352:(a,b,c)=>{c.d(b,{Wl:()=>r});var d=c(41170);function e(a){return String(a??"").trim()}function f(a,b=null){let c=Number(a);return Number.isFinite(c)?c:b}function g(a,b="mysql"){if(!a)return a;if("mysql"===b)return function a(b){if("string"==typeof b){let a=b.trim().match(/^(\d{4}-\d{2}-\d{2})[ T](\d{2}:\d{2}:\d{2})(?:\.(\d{1,3}))?$/);if(a)return`${a[1]} ${a[2]}.${String(a[3]||"0").padEnd(3,"0")}`}let c=b instanceof Date?b:new Date(b||Date.now());if(Number.isNaN(c.getTime()))return a(new Date);let d=(a,b=2)=>String(a).padStart(b,"0");return`${c.getUTCFullYear()}-${d(c.getUTCMonth()+1)}-${d(c.getUTCDate())} ${d(c.getUTCHours())}:${d(c.getUTCMinutes())}:${d(c.getUTCSeconds())}.${d(c.getUTCMilliseconds(),3)}`}(a);let c=a instanceof Date?a:new Date(a);return Number.isNaN(c.getTime())?a:c.toISOString()}async function h(){return(0,d.I6)(await (0,d.L7)())}async function i(a){let b=new(await Promise.resolve().then(c.bind(c,64939))).Client({host:a.host,port:Number(a.port||5432),database:a.database,user:a.username,password:a.password,ssl:!!a.ssl&&{rejectUnauthorized:!1}});return await b.connect(),{type:"postgres",query:async(a,c=[])=>(await b.query(a,c)).rows,queryOne:async(a,c=[])=>(await b.query(a,c)).rows[0]||null,exec:async a=>{await b.query(a)},close:async()=>{await b.end()}}}async function j(a){let b=await c.e(4790).then(c.t.bind(c,94790,19)),d=await b.createConnection({host:a.host,port:Number(a.port||3306),database:a.database,user:a.username,password:a.password,ssl:a.ssl?{}:void 0,multipleStatements:!0,timezone:"+00:00",dateStrings:!0,connectTimeout:3e3});return{type:"mysql",query:async(a,b=[])=>(await d.query(a,b))[0],queryOne:async(a,b=[])=>((await d.query(a,b))[0]||[])[0]||null,exec:async a=>{await d.query(a)},close:async()=>{await d.end()}}}async function k(a){if("postgres"===a.type)return i(a);if("mysql"===a.type)return j(a);throw Error(`Unsupported prompt log database type: ${a.type}`)}async function l(a){if("postgres"===a.type)await a.exec(`
92
+ CREATE TABLE IF NOT EXISTS request_error_events (
93
+ id BIGSERIAL PRIMARY KEY,
94
+ created_at TIMESTAMPTZ NOT NULL,
95
+ request_id TEXT,
96
+ attempt_index INTEGER DEFAULT 0,
97
+ provider TEXT,
98
+ model TEXT,
99
+ connection_id TEXT,
100
+ account_name TEXT,
101
+ endpoint TEXT,
102
+ gateway_status_code INTEGER,
103
+ upstream_status_code INTEGER,
104
+ status_class TEXT,
105
+ error_source TEXT,
106
+ error_type TEXT,
107
+ error_code TEXT,
108
+ error_message_short TEXT,
109
+ upstream_error_body_snippet TEXT,
110
+ upstream_request_id TEXT,
111
+ latency_ms INTEGER DEFAULT 0,
112
+ api_key_id TEXT,
113
+ api_key_fingerprint TEXT,
114
+ client_ip TEXT,
115
+ client_ip_normalized TEXT,
116
+ source_tool TEXT,
117
+ source_tool_label TEXT,
118
+ session_id TEXT,
119
+ meta_json JSONB
120
+ );
121
+ CREATE INDEX IF NOT EXISTS idx_ree_created_at ON request_error_events(created_at DESC);
122
+ CREATE INDEX IF NOT EXISTS idx_ree_request_id ON request_error_events(request_id);
123
+ CREATE INDEX IF NOT EXISTS idx_ree_gateway_status ON request_error_events(gateway_status_code, created_at DESC);
124
+ CREATE INDEX IF NOT EXISTS idx_ree_upstream_status ON request_error_events(upstream_status_code, created_at DESC);
125
+ CREATE INDEX IF NOT EXISTS idx_ree_error_type ON request_error_events(error_type, created_at DESC);
126
+ CREATE INDEX IF NOT EXISTS idx_ree_error_code ON request_error_events(error_code, created_at DESC);
127
+ CREATE INDEX IF NOT EXISTS idx_ree_error_source ON request_error_events(error_source, created_at DESC);
128
+ CREATE INDEX IF NOT EXISTS idx_ree_provider_model ON request_error_events(provider, model, created_at DESC);
129
+ CREATE INDEX IF NOT EXISTS idx_ree_connection ON request_error_events(connection_id, created_at DESC);
130
+ CREATE INDEX IF NOT EXISTS idx_ree_api_key ON request_error_events(api_key_id, created_at DESC);
131
+ CREATE INDEX IF NOT EXISTS idx_ree_api_fp ON request_error_events(api_key_fingerprint, created_at DESC);
132
+ CREATE INDEX IF NOT EXISTS idx_ree_client_ip ON request_error_events(client_ip_normalized, created_at DESC);
133
+ CREATE INDEX IF NOT EXISTS idx_ree_source_tool ON request_error_events(source_tool, created_at DESC);
134
+ CREATE INDEX IF NOT EXISTS idx_ree_session ON request_error_events(session_id, created_at DESC);
135
+ `);else if("mysql"===a.type)await a.exec(`
136
+ CREATE TABLE IF NOT EXISTS request_error_events (
137
+ id BIGINT AUTO_INCREMENT PRIMARY KEY,
138
+ created_at DATETIME(3) NOT NULL,
139
+ request_id VARCHAR(80),
140
+ attempt_index INT DEFAULT 0,
141
+ provider VARCHAR(120),
142
+ model VARCHAR(255),
143
+ connection_id VARCHAR(120),
144
+ account_name VARCHAR(255),
145
+ endpoint TEXT,
146
+ gateway_status_code INT,
147
+ upstream_status_code INT,
148
+ status_class VARCHAR(32),
149
+ error_source VARCHAR(80),
150
+ error_type VARCHAR(120),
151
+ error_code VARCHAR(160),
152
+ error_message_short TEXT,
153
+ upstream_error_body_snippet TEXT,
154
+ upstream_request_id VARCHAR(255),
155
+ latency_ms INT DEFAULT 0,
156
+ api_key_id VARCHAR(120),
157
+ api_key_fingerprint VARCHAR(120),
158
+ client_ip VARCHAR(64),
159
+ client_ip_normalized VARCHAR(64),
160
+ source_tool VARCHAR(80),
161
+ source_tool_label VARCHAR(120),
162
+ session_id VARCHAR(255),
163
+ meta_json JSON,
164
+ INDEX idx_ree_created_at (created_at),
165
+ INDEX idx_ree_request_id (request_id),
166
+ INDEX idx_ree_gateway_status (gateway_status_code, created_at),
167
+ INDEX idx_ree_upstream_status (upstream_status_code, created_at),
168
+ INDEX idx_ree_error_type (error_type, created_at),
169
+ INDEX idx_ree_error_code (error_code, created_at),
170
+ INDEX idx_ree_error_source (error_source, created_at),
171
+ INDEX idx_ree_provider_model (provider, model, created_at),
172
+ INDEX idx_ree_connection (connection_id, created_at),
173
+ INDEX idx_ree_api_key (api_key_id, created_at),
174
+ INDEX idx_ree_api_fp (api_key_fingerprint, created_at),
175
+ INDEX idx_ree_client_ip (client_ip_normalized, created_at),
176
+ INDEX idx_ree_source_tool (source_tool, created_at),
177
+ INDEX idx_ree_session (session_id, created_at)
178
+ ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
179
+ `);else throw Error(`Unsupported prompt log database type: ${a.type}`)}function m(a={}){return{disabled:!0,total:0,summary:{total:0,serverImpacting:0,gateway:0,upstream:0,client:0,rateLimit:0,unknown:0,serverImpactingRate:0,clientRate:0,rateLimitRate:0},topErrors:[],topServerErrors:[],topClientErrors:[],topRateLimitErrors:[],byFaultOwner:[],byStatusCode:[],byStatusClass:[],byErrorType:[],byErrorSource:[],byProvider:[],byModel:[],byClientIp:[],bySourceTool:[],recent:[],...a}}function n(a,b,c){let d=c.map(a=>`'${a.replace(/'/g,"''")}'`).join(", "),e=`${b} IN (${d})`;return a?`${a} AND ${e}`:`WHERE ${e}`}function o(a={},b={}){let c=f(a.requests,0)||0;return{key:e(a.key)||"unknown",label:e(a.label||a.key)||"unknown",requests:c,success:0,errors:c,errorRate:+!!c,promptTokens:0,completionTokens:0,totalTokens:0,cost:0,lastSeen:a.lastSeen||a.last_seen||a.lastseen||"",...b}}async function p(a,b,c=[]){return a.query(b,c)}async function q(a,b,c=[]){return a.queryOne(b,c)}async function r(a={}){let b=await h();if(!b.enabled)return m({disabled:!0});let c=null;try{var d,i;let h,j,m,r,s,t;c=await k(b),await l(c);let u=function(a={},b="mysql"){let c=[],d=[],f=a=>(d.push(a),"postgres"===b)?`$${d.length}`:"?",h="postgres"===b?"ILIKE":"LIKE";c.push("(COALESCE(upstream_status_code, gateway_status_code) IS NULL OR COALESCE(upstream_status_code, gateway_status_code) < 200 OR COALESCE(upstream_status_code, gateway_status_code) >= 300)"),c.push("(status_class IS NULL OR (lower(status_class) NOT IN ('2xx','ok','success','succeeded','complete','completed','done','200','pending','running','in_progress','queued','processing') AND lower(status_class) NOT LIKE '2__%' AND lower(status_class) NOT LIKE 'ok%' AND lower(status_class) NOT LIKE 'success%' AND lower(status_class) NOT LIKE 'succeeded%' AND lower(status_class) NOT LIKE 'complete%' AND lower(status_class) NOT LIKE 'completed%'))");let i=Array.isArray(a.workingTimeRanges)?a.workingTimeRanges.filter(a=>a?.startIso&&a?.endIso):[];if(i.length?c.push(`(${i.map(a=>`(created_at >= ${f(g(a.startIso,b))} AND created_at < ${f(g(a.endIso,b))})`).join(" OR ")})`):(a.dateFrom&&c.push(`created_at >= ${f(g(a.dateFrom,b))}`),a.dateTo&&c.push(`created_at < ${f(g(a.dateTo,b))}`)),a.provider&&c.push(`provider = ${f(a.provider)}`),Array.isArray(a.providerIds)&&a.providerIds.length){let b=a.providerIds.map(a=>f(a)).join(", ");c.push(`provider IN (${b})`)}if(a.model&&c.push(`model = ${f(a.model)}`),a.connectionId&&c.push(`connection_id = ${f(a.connectionId)}`),a.clientIp&&c.push(`client_ip_normalized ${h} ${f(`%${a.clientIp}%`)}`),a.sourceTool&&c.push(`(source_tool ${h} ${f(`%${a.sourceTool}%`)} OR source_tool_label ${h} ${f(`%${a.sourceTool}%`)})`),a.sessionId&&c.push(`session_id = ${f(a.sessionId)}`),a.endpoint&&c.push(`endpoint ${h} ${f(`%${a.endpoint}%`)}`),a.statusCode&&c.push(`(gateway_status_code = ${f(Number(a.statusCode))} OR upstream_status_code = ${f(Number(a.statusCode))})`),a.status){let b=e(a.status);/^\d+$/.test(b)?c.push(`(gateway_status_code = ${f(Number(b))} OR upstream_status_code = ${f(Number(b))})`):c.push(`(status_class = ${f(b)} OR error_type = ${f(b)} OR error_code = ${f(b)})`)}if(a.errorType&&c.push(`error_type = ${f(a.errorType)}`),a.errorCode&&c.push(`error_code = ${f(a.errorCode)}`),a.errorSource&&c.push(`error_source = ${f(a.errorSource)}`),a.apiKey){let b=`%${a.apiKey}%`;c.push(`(api_key_id ${h} ${f(b)} OR api_key_fingerprint ${h} ${f(b)})`)}let j=a.apiKeyScope;if(j?.enabled)if(j.noMatch)c.push("1 = 0");else{let a=[],b=[...new Set([...j.ids||[],...j.identifiers||[]].map(e).filter(Boolean))],d=[...new Set([...j.fingerprints||[],...j.identifiers||[]].map(e).filter(Boolean))];if(b.length){let c=b.map(a=>f(a)).join(", ");a.push(`api_key_id IN (${c})`)}if(d.length){let b=d.map(a=>f(a)).join(", ");a.push(`api_key_fingerprint IN (${b})`)}c.push(a.length?`(${a.join(" OR ")})`:"1 = 0")}if(a.keyword){let b=`%${a.keyword}%`;c.push(`(error_message_short ${h} ${f(b)} OR upstream_error_body_snippet ${h} ${f(b)} OR request_id ${h} ${f(b)} OR error_code ${h} ${f(b)})`)}return{clause:c.length?`WHERE ${c.join(" AND ")}`:"",params:d}}(a,c.type),v=await q(c,`SELECT COUNT(*) AS total FROM request_error_events ${u.clause}`,u.params),w=f(v?.total,0)||0,x="postgres"===c.type?`$${u.params.length+1}`:"?",y=[...u.params,100],z=(d=c.type,h="mysql"===d?"CHAR":"TEXT",`COALESCE(CAST(upstream_status_code AS ${h}), CAST(gateway_status_code AS ${h}), status_class, 'error')`),A=(c.type,j="COALESCE(upstream_status_code, gateway_status_code)",m="lower(COALESCE(error_type, ''))",r="lower(COALESCE(error_code, ''))",s="lower(COALESCE(error_source, ''))",t="lower(COALESCE(error_message_short, ''))",`CASE
180
+ WHEN (${j} BETWEEN 200 AND 299 OR lower(COALESCE(status_class, '')) IN ('2xx','ok','success','succeeded','complete','completed','done','200')) THEN 'non_error'
181
+ WHEN (${j} = 429 OR ${m} IN ('rate_limit','quota_exceeded') OR ${r} IN ('rate_limit','quota_exceeded') OR ${t} LIKE '%rate limit%' OR ${t} LIKE '%quota%') THEN 'rate_limit'
182
+ WHEN (${m} = 'client_abort' OR ${s} = 'client_abort' OR ${j} = 499) THEN 'client'
183
+ WHEN (COALESCE(upstream_status_code, 0) >= 500) THEN 'upstream'
184
+ WHEN (${m} IN ('provider_unavailable','timeout','network_error','invalid_sse') OR ${s} LIKE '%provider%' OR ${s} LIKE '%upstream%' OR ${s} LIKE '%network%' OR ${s} LIKE '%timeout%' OR ${t} LIKE '%econnreset%' OR ${t} LIKE '%econnrefused%' OR ${t} LIKE '%etimedout%' OR ${t} LIKE '%socket hang up%' OR ${t} LIKE '%fetch failed%') THEN 'upstream'
185
+ WHEN (${m} IN ('invalid_request','invalid_json','model_not_found','context_length_exceeded','auth_error','forbidden') OR ${r} IN ('bad_request','invalid_request','invalid_json','model_not_found','context_length_exceeded','auth_error','forbidden','not_found') OR ${j} IN (400,401,403,404,405,406,413,415,422)) THEN 'client'
186
+ WHEN (COALESCE(gateway_status_code, 0) >= 500 OR ${m} LIKE 'gateway%' OR (${s} LIKE 'gateway%' AND ${s} <> 'gateway_validation')) THEN 'gateway'
187
+ ELSE 'unknown'
188
+ END`),B=(i=c,i?.type==="mysql"?"`key`":"key"),C="mysql"===c.type?"CONCAT(faultOwner, '|', status, '|', errorType, '|', provider, '|', model, '|', endpoint)":"faultOwner || '|' || status || '|' || errorType || '|' || provider || '|' || model || '|' || endpoint",D="mysql"===c.type?"SUBSTRING_INDEX(GROUP_CONCAT(sampleMessage ORDER BY createdAt DESC SEPARATOR '\n'), '\n', 1)":"(ARRAY_AGG(sampleMessage ORDER BY createdAt DESC))[1]",E=a=>`SELECT
189
+ ${C} AS ${B},
190
+ faultOwner,
191
+ status,
192
+ errorType,
193
+ errorCode,
194
+ errorSource,
195
+ provider,
196
+ model,
197
+ endpoint,
198
+ apiKey,
199
+ COUNT(*) AS requests,
200
+ MAX(createdAt) AS lastSeen,
201
+ ${D} AS sampleMessage
202
+ FROM (
203
+ SELECT
204
+ ${A} AS faultOwner,
205
+ ${z} AS status,
206
+ COALESCE(NULLIF(error_type, ''), 'unknown_error') AS errorType,
207
+ COALESCE(NULLIF(error_code, ''), 'unknown_error') AS errorCode,
208
+ COALESCE(NULLIF(error_source, ''), 'unknown') AS errorSource,
209
+ COALESCE(NULLIF(provider, ''), 'unknown') AS provider,
210
+ COALESCE(NULLIF(model, ''), 'unknown') AS model,
211
+ COALESCE(NULLIF(endpoint, ''), 'unknown') AS endpoint,
212
+ COALESCE(NULLIF(api_key_fingerprint, ''), 'local-no-key') AS apiKey,
213
+ created_at AS createdAt,
214
+ error_message_short AS sampleMessage
215
+ FROM request_error_events
216
+ ${a}
217
+ ) scoped_request_errors
218
+ GROUP BY faultOwner, status, errorType, errorCode, errorSource, provider, model, endpoint, apiKey
219
+ ORDER BY requests DESC, lastSeen DESC
220
+ LIMIT ${x}`,F=(a=[])=>a.map(a=>o(a,{label:`${a.faultOwner||"unknown"} \xb7 ${a.status||"error"} \xb7 ${a.errorType||a.errorCode||"unknown_error"}`,faultOwner:a.faultOwner||"unknown",status:a.status||"error",errorType:a.errorType||"",errorCode:a.errorCode||"",errorSource:a.errorSource||"",provider:a.provider||"unknown",model:a.model||"unknown",endpoint:a.endpoint||"unknown",apiKey:a.apiKey||"",sampleMessage:a.sampleMessage||"",serverImpacting:["gateway","upstream"].includes(a.faultOwner||"")})),G=await p(c,E(u.clause),y),H=n(u.clause,A,["gateway","upstream"]),I=n(u.clause,A,["client"]),J=n(u.clause,A,["rate_limit"]),[K,L,M,N]=await Promise.all([p(c,E(H),y),p(c,E(I),y),p(c,E(J),y),p(c,`SELECT faultOwner AS ${B}, faultOwner AS label, COUNT(*) AS requests, MAX(createdAt) AS lastSeen
221
+ FROM (
222
+ SELECT ${A} AS faultOwner, created_at AS createdAt
223
+ FROM request_error_events
224
+ ${u.clause}
225
+ ) scoped_fault_owners
226
+ GROUP BY faultOwner
227
+ ORDER BY requests DESC, lastSeen DESC
228
+ LIMIT ${x}`,y)]),O=new Map(N.map(a=>[e(a.key)||"unknown",f(a.requests,0)])),P=O.get("gateway")||0,Q=O.get("upstream")||0,R=O.get("client")||0,S=O.get("rate_limit")||0,T=O.get("unknown")||0,U=P+Q,V=async(a,b=a)=>(await p(c,`SELECT groupValue AS ${B}, groupValue AS label, COUNT(*) AS requests, MAX(createdAt) AS lastSeen
229
+ FROM (
230
+ SELECT COALESCE(NULLIF(${a}, ''), 'unknown') AS groupValue, created_at AS createdAt
231
+ FROM request_error_events
232
+ ${u.clause}
233
+ ) scoped_group_values
234
+ GROUP BY groupValue
235
+ ORDER BY requests DESC, lastSeen DESC
236
+ LIMIT ${x}`,y)).map(a=>o(a,{[b]:a.key})),W="postgres"===c.type?`$${u.params.length+1}`:"?",X=await p(c,`SELECT id, created_at AS createdAt, request_id AS requestId, provider, model, connection_id AS connectionId, endpoint,
237
+ gateway_status_code AS gatewayStatusCode, upstream_status_code AS upstreamStatusCode, status_class AS statusClass,
238
+ ${A} AS faultOwner,
239
+ error_source AS errorSource, error_type AS errorType, error_code AS errorCode,
240
+ error_message_short AS errorMessageShort, api_key_fingerprint AS apiKeyFingerprint,
241
+ client_ip_normalized AS clientIp, source_tool AS sourceTool, session_id AS sessionId, latency_ms AS latencyMs
242
+ FROM request_error_events
243
+ ${u.clause}
244
+ ORDER BY created_at DESC
245
+ LIMIT ${W}`,[...u.params,50]);return{disabled:!1,total:w,summary:{total:w,serverImpacting:U,gateway:P,upstream:Q,client:R,rateLimit:S,unknown:T,serverImpactingRate:w?U/w:0,clientRate:w?R/w:0,rateLimitRate:w?S/w:0},topErrors:F(G),topServerErrors:F(K),topClientErrors:F(L),topRateLimitErrors:F(M),byFaultOwner:N.map(a=>o(a,{faultOwner:a.key})),byStatusCode:await V(z,"status"),byStatusClass:await V("status_class","statusClass"),byErrorType:await V("error_type","errorType"),byErrorSource:await V("error_source","errorSource"),byProvider:await V("provider","provider"),byModel:await V("model","model"),byClientIp:await V("client_ip_normalized","clientIp"),bySourceTool:await V("source_tool","sourceTool"),recent:X}}catch(a){return m({disabled:!0,error:a?.message||String(a)})}finally{c&&await c.close()}}process.env.REQUEST_ERROR_BODY_SNIPPET_CHARS},42541:(a,b,c)=>{c.d(b,{h:()=>d});let d={OPENAI:"openai",OPENAI_RESPONSES:"openai-responses",OPENAI_RESPONSE:"openai-response",CLAUDE:"claude",GEMINI:"gemini",GEMINI_CLI:"gemini-cli",VERTEX:"vertex",CODEX:"codex",ANTIGRAVITY:"antigravity",KIRO:"kiro",CURSOR:"cursor",OLLAMA:"ollama",COMMANDCODE:"commandcode"}},42946:(a,b,c)=>{c(55511),c(48991)},43212:(a,b,c)=>{c(69887),c(42541),c(51525),c(84238),c(92843),c(1758),c(8735),new TextEncoder,process.env.PROMPT_LOG_DB_PROVIDER_STREAM_RAW_MAX_CHARS,process.env.PROMPT_LOG_DB_PROVIDER_STREAM_EVENT_MAX_ITEMS},44991:(a,b,c)=>{c.d(b,{D:()=>f});var d=c(50801),e=c(30395);class f extends d.L{constructor(){super("ollama-local")}buildUrl(a,b,c=0,d=null){return`${(0,e.Ak)(d)}/api/chat`}}},46956:(a,b,c)=>{c.d(b,{proxyAwareFetch:()=>q});var d=c(27910),e=c(8735);let f=globalThis.fetch,g=new Map,h=new Map,i=["cloudcode-pa.googleapis.com","daily-cloudcode-pa.googleapis.com","api.individual.githubcopilot.com","q.us-east-1.amazonaws.com","codewhisperer.us-east-1.amazonaws.com","api2.cursor.sh"],j=["8.8.8.8","8.8.4.4"];function k(a){return null==a?"":String(a).trim()}async function l(a){let b=h.get(a);if(b&&Date.now()<b.expiry)return b.ip;try{let b=await Promise.resolve().then(c.t.bind(c,14985,23)),{promisify:d}=await Promise.resolve().then(c.t.bind(c,28354,23)),f=new b.Resolver;f.setServers(j);let g=d(f.resolve4.bind(f)),i=await g(a);return h.set(a,{ip:i[0],expiry:Date.now()+e.v1.dnsCacheTtlMs}),i[0]}catch(b){return console.warn(`[ProxyFetch] DNS resolve failed for ${a}:`,b.message),null}}function m(a,b){let c,d=k(b);if(!d)return!1;try{c=new URL(a).hostname.toLowerCase()}catch{return!1}return d.split(",").map(a=>a.trim().toLowerCase()).filter(Boolean).some(a=>"*"===a||(a.startsWith(".")?c.endsWith(a)||c===a.slice(1):c===a||c.endsWith(`.${a}`)))}function n(a){let b=k(a);if(!b)return null;try{return new URL(b),b}catch{return`http://${b}`}}async function o(a){let b=n(a);if(!b)return null;if(!g.has(b)){g.size>=e.v1.proxyDispatchersMaxSize&&g.delete(g.keys().next().value);let{ProxyAgent:a}=await c.e(3433).then(c.t.bind(c,3433,19));g.set(b,new a({uri:b}))}return g.get(b)}async function p(a,b,e){let f=await Promise.resolve().then(c.t.bind(c,55591,23)),g=await Promise.resolve().then(c.t.bind(c,91645,23)),h=f.default??f,i=g.default??g;return new Promise((c,f)=>{let g=new i.Socket;g.connect(443,b,()=>{let b={socket:g,servername:a.hostname,path:a.pathname+a.search,method:e.method||"POST",headers:{...e.headers,Host:a.hostname}},i=h.request(b,a=>{let b={ok:a.statusCode>=200&&a.statusCode<300,status:a.statusCode,statusText:a.statusMessage,headers:new Map(Object.entries(a.headers)),body:d.Readable.toWeb(a),text:async()=>{let b=[];for await(let c of a)b.push(c);return Buffer.concat(b).toString()},json:async()=>JSON.parse(await b.text())};c(b)});i.on("error",f),e.body&&i.write("string"==typeof e.body?e.body:JSON.stringify(e.body)),i.end()}),g.on("error",f)})}async function q(a,b={},c=null){let d="string"==typeof a?a:a.toString(),e=k(c?.vercelRelayUrl);if(e){let a=new URL(d),c={...b.headers,"x-relay-target":`${a.protocol}//${a.host}`,"x-relay-path":`${a.pathname}${a.search}`};return f(e,{...b,headers:c})}let g=function(a,b){if(b?.enabled!==!0&&b?.connectionProxyEnabled!==!0)return null;let c=k(b?.url??b?.connectionProxyUrl);if(!c)return null;let d=k(b?.noProxy??b?.connectionNoProxy);return d&&m(a,d)?null:n(c)}(d,c),h=g?null:n(function(a){let b;if(m(a,process.env.NO_PROXY||process.env.no_proxy))return null;try{b=new URL(a).protocol}catch{return null}return"https:"===b?process.env.HTTPS_PROXY||process.env.https_proxy||process.env.ALL_PROXY||process.env.all_proxy:process.env.HTTP_PROXY||process.env.http_proxy||process.env.ALL_PROXY||process.env.all_proxy}(d)),j=g||h;if(function(a){try{let b=new URL(a).hostname;return i.some(a=>b.includes(a))}catch{return!1}}(d)){if(j)try{let c=await o(j);return await f(a,{...b,dispatcher:c})}catch(a){if(c?.strictProxy===!0)throw Error(`[ProxyFetch] Proxy required but failed (strictProxy=true): ${a.message}`);console.warn(`[ProxyFetch] Proxy failed, falling back to direct bypass: ${a.message}`)}try{let a=new URL(d),c=await l(a.hostname);if(c)return await p(a,c,b)}catch(a){console.warn(`[ProxyFetch] MITM bypass failed: ${a.message}`)}}if(j)try{let c=await o(j);return await f(a,{...b,dispatcher:c})}catch(a){if(c?.strictProxy===!0)throw Error(`[ProxyFetch] Proxy required but failed (strictProxy=true): ${a.message}`);console.warn(`[ProxyFetch] Proxy failed, falling back to direct: ${a.message}`)}return f(a,b)}async function r(a,b={}){return q(a,b,null)}globalThis.fetch!==r&&(globalThis.fetch=r)},47153:(a,b,c)=>{c.d(b,{$B:()=>s,Ql:()=>p,Sc:()=>t,Wm:()=>o,pb:()=>v});var d=c(30395),e=c(48991),f=c(46956);let g=null;async function h(a,b){return a?j("xai",a,async()=>{try{g||(g=new(await c.e(2242).then(c.bind(c,62242))).XaiService);let b=await g.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 refresh failed: ${c?.message||c}`);let a=String(c?.message||"");if(a.includes("invalid_grant")||a.includes("invalid_request"))return{error:"invalid_grant"};return null}},b):null}let i=new Map;async function j(a,b,c,d){if(!b)return c();let e=`${a}:${b}`,f=i.get(e);if(f){if(f.promise)return d?.info?.("TOKEN_REFRESH",`Reusing in-flight refresh for ${a}`),f.promise;if(f.expiresAt>Date.now())return d?.info?.("TOKEN_REFRESH",`Reusing recent refresh result for ${a}`),f.result;i.delete(e)}let g=(async()=>{try{let a=await c();return i.set(e,{result:a,expiresAt:Date.now()+1e4}),a}catch(a){throw i.delete(e),a}})();return i.set(e,{promise:g}),g}async function k(a,b,c,e){return b?j(a,b,async()=>{let c=d.xq[a];if(!c||!c.refreshUrl)return e?.warn?.("TOKEN_REFRESH",`No refresh URL configured for provider: ${a}`),null;if(!b)return e?.warn?.("TOKEN_REFRESH",`No refresh token available for provider: ${a}`),null;try{let d=await fetch(c.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:c.clientId,client_secret:c.clientSecret})});if(!d.ok){let b=await d.text();return e?.error?.("TOKEN_REFRESH",`Failed to refresh token for ${a}`,{status:d.status,error:b}),null}let f=await d.json();return e?.info?.("TOKEN_REFRESH",`Successfully refreshed token for ${a}`,{hasNewAccessToken:!!f.access_token,hasNewRefreshToken:!!f.refresh_token,expiresIn:f.expires_in}),{accessToken:f.access_token,refreshToken:f.refresh_token||b,expiresIn:f.expires_in}}catch(b){return e?.error?.("TOKEN_REFRESH",`Error refreshing token for ${a}`,{error:b.message}),null}},e):null}async function l(a,b){return a?j("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 b?.error?.("TOKEN_REFRESH","Failed to refresh Claude OAuth token",{status:c.status,error:a}),null}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 m(a,b,c,d){return a?j(`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 d?.error?.("TOKEN_REFRESH","Failed to refresh Google token",{status:f.status,error:a}),null}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 n(a,b){return a?j("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(()=>"");b?.warn?.("TOKEN_REFRESH","Error with Qwen endpoint",{status:e.status,error:a})}}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 o(a,b){return a?j("codex",a,async()=>{try{let c=await fetch(e.NA.openai.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:d.xq.codex.clientId,scope:"openid profile email offline_access"})});if(!c.ok){let a=await c.text(),d=null;try{let b=JSON.parse(a);d=b?.error?.code||("string"==typeof b?.error?b.error:null)}catch{}if("refresh_token_reused"===d||"invalid_grant"===d||"token_expired"===d||"invalid_token"===d)return b?.error?.("TOKEN_REFRESH","Codex refresh token already used or invalid. Re-auth required.",{status:c.status,errorCode:d}),{error:"unrecoverable_refresh_error",code:d};return b?.error?.("TOKEN_REFRESH","Failed to refresh Codex token",{status:c.status,error:a}),null}let f=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Codex token",{hasNewAccessToken:!!f.access_token,hasNewRefreshToken:!!f.refresh_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 Codex token: ${a.message}`),null}},b):null}async function p(a,b,c,e=null){return a?j("kiro",a,async()=>{let g=b?.authMethod,h=b?.clientId,i=b?.clientSecret,j=b?.region;if(h&&i){let b="idc"===g&&j?`https://oidc.${j}.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:h,clientSecret:i,refreshToken:a,grantType:"refresh_token"})},e);if(!d.ok){let a=await d.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro AWS token",{status:d.status,error:a}),null}let k=await d.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro AWS token",{hasNewAccessToken:!!k.accessToken,expiresIn:k.expiresIn}),{accessToken:k.accessToken,refreshToken:k.refreshToken||a,expiresIn:k.expiresIn}}let k=await (0,f.proxyAwareFetch)(d.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:a})},e);if(!k.ok){let a=await k.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro social token",{status:k.status,error:a}),null}let l=await k.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro social token",{hasNewAccessToken:!!l.accessToken,expiresIn:l.expiresIn}),{accessToken:l.accessToken,refreshToken:l.refreshToken||a,expiresIn:l.expiresIn}},c):null}async function q(a,b){return a?j("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){let a=await f.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh iFlow token",{status:f.status,error:a}),null}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 r(a,b){return a?j("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){let a=await f.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh GitHub token",{status:f.status,error:a}),null}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 s(a,b,c){if(!b.refreshToken)return null;switch(a){case"gemini-cli":case"antigravity":return m(b.refreshToken,d.xq[a].clientId,d.xq[a].clientSecret,c);case"claude":return l(b.refreshToken,c);case"codex":return o(b.refreshToken,c);case"qwen":return n(b.refreshToken,c);case"iflow":return q(b.refreshToken,c);case"github":return r(b.refreshToken,c);case"kiro":return p(b.refreshToken,b.providerSpecificData,c);case"xai":return h(b.refreshToken,c);case"vertex":case"vertex-partner":{let a=t(b.apiKey);if(!a)return null;return v(a,c)}default:return k(a,b.refreshToken,b,c)}}function t(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 u=new Map;async function v(a,b){let d=a.client_email,e=u.get(d);if(e&&e.expiresAt-Date.now()>3e5)return{accessToken:e.token,expiresAt:e.expiresAt};try{let{SignJWT:e,importPKCS8:f}=await c.e(2891).then(c.bind(c,82891));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 u.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}}},48991:(a,b,c)=>{c.d(b,{$V:()=>n,Co:()=>m,J5:()=>k,K:()=>l,NA:()=>o,Ox:()=>i,QH:()=>j,VK:()=>p,go:()=>e,sX:()=>f,x0:()=>g});var d=c(21820);let e="google-genai-sdk/1.41.0 gl-node/v22.19.0";function f(a="unknown"){let b;return`GeminiCLI/0.34.0/${a||"unknown"} (${(0,d.platform)()}; ${"ia32"===(b=(0,d.arch)())?"x86":b}; terminal)`}let g={VSCODE_VERSION:"1.110.0",COPILOT_CHAT_VERSION:"0.38.0",USER_AGENT:"GitHubCopilotChat/0.38.0",API_VERSION:"2025-04-01"};function h(){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)}h();let i={name:"x-request-source",value:"local"},j="_ide",k=new Set(["browser_subagent","command_status","find_by_name","generate_image","grep_search","list_dir","list_resources","multi_replace_file_content","notify_user","read_resource","read_terminal","read_url_content","replace_file_content","run_command","search_web","send_command_input","task_boundary","view_content_chunk","view_file","write_to_file"]),l={"User-Agent":`antigravity/1.107.0 ${(0,d.platform)()}/${(0,d.arch)()}`};JSON.stringify({ideType:9,platform:h(),pluginType:2}),h();let m="You are Claude Code, Anthropic's official CLI for Claude.",n="You are Antigravity, a powerful agentic AI coding assistant designed by the Google Deepmind team working on Advanced Agentic Coding.You are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.**Absolute paths only****Proactiveness**",o={google:{token:"https://oauth2.googleapis.com/token",auth:"https://accounts.google.com/o/oauth2/auth"},openai:{token:"https://auth.openai.com/oauth/token",auth:"https://auth.openai.com/oauth/authorize"},anthropic:{token:"https://api.anthropic.com/v1/oauth/token",auth:"https://api.anthropic.com/v1/oauth/authorize"},qwen:{token:"https://qwen.ai/api/v1/oauth2/token",auth:"https://qwen.ai/api/v1/oauth2/device/code"},iflow:{token:"https://iflow.cn/oauth/token",auth:"https://iflow.cn/oauth"},github:{token:"https://github.com/login/oauth/access_token",auth:"https://github.com/login/oauth/authorize",deviceCode:"https://github.com/login/device/code"}};function p(){return{"X-Msh-Platform":"bluerouter","X-Msh-Version":"2.1.2","X-Msh-Device-Model":"u">typeof process?`${process.platform} ${process.arch}`:"unknown","X-Msh-Device-Id":`kimi-${Date.now()}`}}},49065:(a,b,c)=>{c.r(b),c.d(b,{geminiToOpenAIRequest:()=>g});var d=c(69887),e=c(42541),f=c(58455);function g(a,b,c){let d={model:a,messages:[],stream:c};if(b.generationConfig){let a=b.generationConfig;if(a.maxOutputTokens){let c={max_tokens:a.maxOutputTokens,tools:b.tools};d.max_tokens=(0,f.M)(c)}void 0!==a.temperature&&(d.temperature=a.temperature),void 0!==a.topP&&(d.top_p=a.topP)}if(b.systemInstruction){var e;let a="string"==typeof(e=b.systemInstruction)?e:e.parts&&Array.isArray(e.parts)?e.parts.map(a=>a.text||"").join(""):"";a&&d.messages.push({role:"system",content:a})}if(b.contents&&Array.isArray(b.contents))for(let a of b.contents){let b=function(a){let b="user"===a.role?"user":"assistant";if(!a.parts||!Array.isArray(a.parts))return null;let c=[],d=[];for(let b of a.parts)if(void 0!==b.text&&c.push({type:"text",text:b.text}),b.inlineData&&c.push({type:"image_url",image_url:{url:`data:${b.inlineData.mimeType};base64,${b.inlineData.data}`}}),b.functionCall&&d.push({id:`call_${Date.now()}_${Math.random().toString(36).slice(2,8)}`,type:"function",function:{name:b.functionCall.name,arguments:JSON.stringify(b.functionCall.args||{})}}),b.functionResponse)return{role:"tool",tool_call_id:b.functionResponse.id||b.functionResponse.name,content:JSON.stringify(b.functionResponse.response?.result||b.functionResponse.response||{})};if(d.length>0){let a={role:"assistant"};return c.length>0&&(a.content=1===c.length?c[0].text:c),a.tool_calls=d,a}return c.length>0?{role:b,content:1===c.length&&"text"===c[0].type?c[0].text:c}:null}(a);b&&d.messages.push(b)}if(b.tools&&Array.isArray(b.tools)){for(let a of(d.tools=[],b.tools))if(a.functionDeclarations)for(let b of a.functionDeclarations)d.tools.push({type:"function",function:{name:b.name,description:b.description||"",parameters:b.parameters||{type:"object",properties:{}}}})}return d}(0,d.kz)(e.h.GEMINI,e.h.OPENAI,g,null),(0,d.kz)(e.h.GEMINI_CLI,e.h.OPENAI,g,null)},50270:(a,b,c)=>{c.r(b),c.d(b,{openaiToAntigravityResponse:()=>f});var d=c(69887),e=c(42541);function f(a,b){if(!a)return null;let c=a.choices?.[0];if(!c)return a.usage&&(b._usage=a.usage),null;let d=c.delta||{},e=c.finish_reason;b._toolCallAccum||(b._toolCallAccum={}),b._responseId||(b._responseId=a.id||`resp_${Date.now()}`),b._modelVersion||(b._modelVersion=a.model||"");let f=[],g=d.reasoning_content||d.reasoning;if(g&&f.push({thought:!0,text:g}),d.content&&f.push({text:d.content}),d.tool_calls){for(let a of d.tool_calls){let c=a.index??0;b._toolCallAccum[c]||(b._toolCallAccum[c]={id:"",name:"",arguments:""});let d=b._toolCallAccum[c];a.id&&(d.id=a.id),a.function?.name&&(d.name+=a.function.name),a.function?.arguments&&(d.arguments+=a.function.arguments)}if(0===f.length&&!e)return null}if(e)for(let a of Object.keys(b._toolCallAccum)){let c=b._toolCallAccum[a],d={};try{d=JSON.parse(c.arguments)}catch{}let e=b.toolNameMap?.get(c.name)||c.name;f.push({functionCall:{name:e,args:d}})}if(0===f.length&&!e)return null;0===f.length&&e&&f.push({text:""});let h={content:{role:"model",parts:f}};e&&(h.finishReason=({stop:"STOP",length:"MAX_TOKENS",tool_calls:"STOP",content_filter:"SAFETY"})[e]||"STOP");let i={candidates:[h],modelVersion:b._modelVersion,responseId:b._responseId},j=a.usage||b._usage;return j&&(i.usageMetadata={promptTokenCount:j.prompt_tokens||0,candidatesTokenCount:j.completion_tokens||0,totalTokenCount:j.total_tokens||0},j.completion_tokens_details?.reasoning_tokens&&(i.usageMetadata.thoughtsTokenCount=j.completion_tokens_details.reasoning_tokens),j.prompt_tokens_details?.cached_tokens&&(i.usageMetadata.cachedContentTokenCount=j.prompt_tokens_details.cached_tokens)),{response:i}}(0,d.kz)(e.h.OPENAI,e.h.ANTIGRAVITY,null,f)},50294:(a,b,c)=>{c.d(b,{R:()=>i});var d=c(50801),e=c(30395),f=c(48991);let g="QwenCode/0.12.3 (linux; x64)",h={role:"system",content:[{type:"text",text:"",cache_control:{type:"ephemeral"}}]};class i extends d.L{constructor(){super("qwen")}buildUrl(a,b,c=0,d=null){let e=d?.providerSpecificData?.resourceUrl,f=e?e.replace(/^https?:\/\//,"").replace(/\/$/,""):"portal.qwen.ai";return`https://${f}/v1/chat/completions`}buildHeaders(a,b=!0){return function(a,b=!0){let c=a?.apiKey||a?.accessToken||"",d={"Content-Type":"application/json",Authorization:`Bearer ${c}`,"User-Agent":g,"X-DashScope-AuthType":"qwen-oauth","X-DashScope-CacheControl":"enable","X-DashScope-UserAgent":g,"X-Stainless-Arch":"x64","X-Stainless-Lang":"js","X-Stainless-Os":"Linux","X-Stainless-Package-Version":"5.11.0","X-Stainless-Retry-Count":"1","X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":"v18.19.1",Connection:"keep-alive","Accept-Language":"*","Sec-Fetch-Mode":"cors"};return d.Accept=b?"text/event-stream":"application/json",d}(a,b)}transformRequest(a,b,c,d){let e=b&&"object"==typeof b?{...b}:b;c&&e?.messages&&!e.stream_options&&!e.thinking&&!e.enable_thinking&&!1!==e.stream&&(e.stream_options={include_usage:!0});var f=e=function(a){let b;if(!0!==(b=a?.thinking)&&a?.enable_thinking!==!0&&("object"!=typeof b||null===b||Array.isArray(b)||"enabled"!==b.type))return a;let c=a.tool_choice;return"required"!==c&&("object"!=typeof c||null===c)?a:{...a,tool_choice:"auto"}}(e);if(!f||"object"!=typeof f)return f;let g={...f};return Array.isArray(g.messages)?g.messages=[h,...g.messages]:g.messages=[h],g}async refreshCredentials(a,b){if(!a?.refreshToken)return null;try{let c=await fetch(f.NA.qwen.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:e.xq.qwen.clientId})});if(!c.ok)return null;let d=await c.json();return b?.info?.("TOKEN","qwen refreshed"),{accessToken:d.access_token,refreshToken:d.refresh_token||a.refreshToken,expiresIn:d.expires_in,providerSpecificData:{...a.providerSpecificData||{},...d.resource_url?{resourceUrl:d.resource_url}:{}}}}catch(a){return b?.error?.("TOKEN",`qwen refresh error: ${a.message}`),null}}}},50405:(a,b,c)=>{c.d(b,{Hi:()=>e,n5:()=>f});let d=String(process.env.CODEX_CLIENT_VERSION||"").trim(),e=String(process.env.CODEX_ORIGINATOR||"").trim()||"codex_cli_rs",f=`https://chatgpt.com/backend-api/codex/models?client_version=${encodeURIComponent(d||"0.144.6")}`},50801:(a,b,c)=>{c.d(b,{L:()=>m});var d=c(2750),e=c(30395),f=c(48991),g=c(43469);let h=new Map;var i=c(46956),j=c(80015);function k(a,b){let c=b.toLowerCase();for(let b of Object.keys(a))if(b.toLowerCase()===c)return!0;return!1}let l=new Set(["host","content-length","connection","keep-alive","transfer-encoding","te","trailer","upgrade","proxy-authenticate","proxy-authorization","authorization","x-api-key","cookie","x-connection-id","forwarded","via","x-forwarded-for","x-forwarded-host","x-forwarded-port","x-forwarded-proto","x-real-ip","cf-connecting-ip","cf-ray","cf-visitor"]);class m extends d.H{constructor(a){super(a,e.xq[a]||e.xq.openai)}transformRequest(a,b,c=!0,d=null){let e=this.applyJsonSchemaFallback(b),f=this.normalizeAnthropicApiKeyRequest(e,d);return(0,j.Z)({provider:this.provider,model:a,body:f})}normalizeAnthropicApiKeyRequest(a,b=null){if(!a||"object"!=typeof a||Array.isArray(a)||!b?.apiKey)return a;let c="anthropic"===this.provider,d=this.provider?.startsWith?.("anthropic-compatible-");if(!c&&!d||!Object.prototype.hasOwnProperty.call(a,"context_management"))return a;let e={...a};return delete e.context_management,e}buildUrl(a,b,c=0,d=null,f=null){if(this.provider?.startsWith?.("openai-compatible-")){let a=(d?.providerSpecificData?.baseUrl||"https://api.openai.com/v1").replace(/\/$/,""),b=this.provider.includes("responses")?"/responses":"/chat/completions";return`${a}${b}`}if(this.provider?.startsWith?.("anthropic-compatible-")){let a=(d?.providerSpecificData?.baseUrl||"https://api.anthropic.com/v1").replace(/\/$/,"");return`${a}/messages`}switch(this.provider){case"claude":if(f?.nativeClaudePassthrough===!0){var g;let a;return`${this.config.baseUrl}${!(a="string"==typeof(g=f.query)?g.trim():"")||"?"===a||!a.startsWith("?")||/[\r\n#]/.test(a)?"":a}`}return`${this.config.baseUrl}?beta=true`;case"glm":case"kimi":case"minimax":case"minimax-cn":case"kimi-coding":return`${this.config.baseUrl}?beta=true`;case"gemini":return`${this.config.baseUrl}/${a}:${b?"streamGenerateContent?alt=sse":"generateContent"}`;default:{if("xiaomi-tokenplan"===this.provider)return`${(0,e.Yg)(d)}/chat/completions`;let a=this.config.baseUrl;if(a?.includes("{accountId}")){let b=d?.providerSpecificData?.accountId;if(!b)throw Error(`${this.provider} requires accountId in providerSpecificData`);return a.replace("{accountId}",b)}return a}}}applyJsonSchemaFallback(a){if(!this.provider?.startsWith?.("openai-compatible-"))return a;let b=a?.response_format;if(b?.type!=="json_schema"||!b.json_schema?.schema)return a;let c=["You must respond with valid JSON that strictly follows this JSON schema:\n```json",JSON.stringify(b.json_schema.schema,null,2),"```\nRespond ONLY with the JSON object, no other text."].join("\n"),d=Array.isArray(a.messages)?a.messages.map(a=>({...a})):[],e=d.find(a=>"system"===a.role);return e?"string"==typeof e.content?e.content=[e.content,c].filter(Boolean).join("\n\n"):Array.isArray(e.content)?e.content=[...e.content,{type:"text",text:c}]:e.content=c:d.unshift({role:"system",content:c}),{...a,messages:d,response_format:{type:"json_object"}}}buildHeaders(a,b=!0,c=null){if("claude"===this.provider&&c?.nativeClaudePassthrough===!0)return function(a,b,c){let d={};for(let[b,c]of a?"function"==typeof a.entries?Array.from(a.entries()):"object"!=typeof a||Array.isArray(a)?[]:Object.entries(a):[]){let a=String(b||"").trim().toLowerCase();a&&null!=c&&(l.has(a)||a.startsWith("x-9r-")||(d[a]=Array.isArray(c)?c.join(", "):String(c)))}return k(d,"content-type")||(d["content-type"]="application/json"),c&&!k(d,"accept")&&(d.accept="text/event-stream"),b?.apiKey?d["x-api-key"]=b.apiKey:d.authorization=`Bearer ${b?.accessToken||""}`,d}(c.headers,a,b);let d={"Content-Type":"application/json",...this.config.headers};switch(this.provider){case"gemini":a.apiKey?d["x-goog-api-key"]=a.apiKey:d.Authorization=`Bearer ${a.accessToken}`;break;case"claude":{var e;let b=(e=a?.connectionId)&&h.get(e)||null;if(b){for(let a of Object.keys(b)){let c=a.replace(/(^|-)([a-z])/g,(a,b,c)=>b+c.toUpperCase());if("anthropic-beta"===a){let e=new Set((d[c]||d[a]||"").split(",").map(a=>a.trim()).filter(Boolean)),f=new Set(b[a].split(",").map(a=>a.trim()).filter(Boolean));for(let a of e)f.add(a);b[a]=Array.from(f).join(",")}c!==a&&void 0!==d[c]&&delete d[c]}Object.assign(d,b)}a.apiKey?d["x-api-key"]=a.apiKey:d.Authorization=`Bearer ${a.accessToken}`;break}case"glm":case"kimi":case"minimax":case"minimax-cn":case"kimi-coding":d["x-api-key"]=a.apiKey||a.accessToken,"kimi-coding"===this.provider&&Object.assign(d,(0,f.VK)());break;default:this.provider?.startsWith?.("anthropic-compatible-")?(a.apiKey?d["x-api-key"]=a.apiKey:a.accessToken&&(d.Authorization=`Bearer ${a.accessToken}`),k(d,"anthropic-version")||(d["anthropic-version"]="2023-06-01")):"gitlab"===this.provider||"codebuddy"===this.provider?d.Authorization=`Bearer ${a.apiKey||a.accessToken}`:"kilocode"===this.provider?(d.Authorization=`Bearer ${a.apiKey||a.accessToken}`,a.providerSpecificData?.orgId&&(d["X-Kilocode-OrganizationID"]=a.providerSpecificData.orgId)):"cline"===this.provider?Object.assign(d,(0,g.w$)(a.apiKey||a.accessToken)):this.config?.format==="claude"?(d["x-api-key"]=a.apiKey||a.accessToken,k(d,"anthropic-version")||(d["anthropic-version"]="2023-06-01")):d.Authorization=`Bearer ${a.apiKey||a.accessToken}`}if(this.provider?.startsWith?.("anthropic-compatible-")){let b=a?.providerSpecificData?.baseUrl||"";if(!(""===b||b.includes("api.anthropic.com"))){for(let a of(delete d["anthropic-dangerous-direct-browser-access"],delete d["Anthropic-Dangerous-Direct-Browser-Access"],delete d["x-app"],delete d["X-App"],["anthropic-beta","Anthropic-Beta"]))if(d[a]){let b=d[a].split(",").map(a=>a.trim()).filter(a=>a&&"claude-code-20250219"!==a).join(",");b?d[a]=b:delete d[a]}}}return b&&(d.Accept="text/event-stream"),d}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;let d={claude:()=>this.refreshWithJSON(f.NA.anthropic.token,{grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:e.xq.claude.clientId},c),codex:()=>this.refreshWithForm(f.NA.openai.token,{grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:e.xq.codex.clientId,scope:"openid profile email offline_access"},c),qwen:()=>this.refreshWithForm(f.NA.qwen.token,{grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:e.xq.qwen.clientId},c),iflow:()=>this.refreshIflow(a.refreshToken,c),gemini:()=>this.refreshGoogle(a.refreshToken,c),kiro:()=>this.refreshKiro(a.refreshToken,c),cline:()=>this.refreshCline(a.refreshToken,c),"kimi-coding":()=>this.refreshKimiCoding(a.refreshToken,c),kilocode:()=>this.refreshKilocode(a.refreshToken,c)}[this.provider];if(!d)return null;try{let a=await d();return a&&b?.info?.("TOKEN",`${this.provider} refreshed`),a}catch(a){return b?.error?.("TOKEN",`${this.provider} refresh error: ${a.message}`),null}}async refreshWithJSON(a,b,c=null){let d=await (0,i.proxyAwareFetch)(a,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(b)},c);if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,refreshToken:e.refresh_token||b.refresh_token,expiresIn:e.expires_in}}async refreshWithForm(a,b,c=null){let d=await (0,i.proxyAwareFetch)(a,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams(b)},c);if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,refreshToken:e.refresh_token||b.refresh_token,expiresIn:e.expires_in}}async refreshIflow(a,b=null){let c=btoa(`${e.xq.iflow.clientId}:${e.xq.iflow.clientSecret}`),d=await (0,i.proxyAwareFetch)(f.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:e.xq.iflow.clientId,client_secret:e.xq.iflow.clientSecret})},b);if(!d.ok)return null;let g=await d.json();return{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}async refreshGoogle(a,b=null){let c=await (0,i.proxyAwareFetch)(f.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:this.config.clientId,client_secret:this.config.clientSecret})},b);if(!c.ok)return null;let d=await c.json();return{accessToken:d.access_token,refreshToken:d.refresh_token||a,expiresIn:d.expires_in}}async refreshKiro(a,b=null){let c=await (0,i.proxyAwareFetch)(e.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:a})},b);if(!c.ok)return null;let d=await c.json();return{accessToken:d.accessToken,refreshToken:d.refreshToken||a,expiresIn:d.expiresIn}}async refreshCline(a,b=null){console.log("[DEBUG] Refreshing Cline token, refreshToken length:",a?.length);let c=await (0,i.proxyAwareFetch)("https://api.cline.bot/api/v1/auth/refresh",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({refreshToken:a,grantType:"refresh_token",clientType:"extension"})},b);if(console.log("[DEBUG] Cline refresh response status:",c.status),!c.ok)return console.log("[DEBUG] Cline refresh error:",await c.text()),null;let d=await c.json();console.log("[DEBUG] Cline refresh payload:",JSON.stringify(d).substring(0,200));let e=d?.data||d,f=e?.expiresAt,g=f?Math.max(1,Math.floor((new Date(f).getTime()-Date.now())/1e3)):void 0;return console.log("[DEBUG] Cline refresh success, expiresIn:",g),{accessToken:e?.accessToken,refreshToken:e?.refreshToken||a,expiresIn:g}}async refreshKimiCoding(a,b=null){let c=(0,f.VK)(),d=await (0,i.proxyAwareFetch)("https://auth.kimi.com/api/oauth/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",...c},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:"17e5f671-d194-4dfb-9706-5516cb48c098"})},b);if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,refreshToken:e.refresh_token||a,expiresIn:e.expires_in}}async refreshKilocode(a,b=null){return null}}},51525:(a,b,c)=>{c(46363),c(25346)},51529:(a,b,c)=>{},51658:(a,b,c)=>{c(42541),c(69887),c(43212),c(11484),c(7974),c(51525),new TextEncoder},54403:(a,b,c)=>{c.d(b,{c:()=>n});var d=c(55511),e=c.n(d),f=c(2750),g=c(30395),h=c(48991),i=c(8735),j=c(93745),k=c(46956),l=c(13324);let m=Object.freeze({"gemini-3.7-flash":"Gemini 3.7 Flash"});class n extends f.H{constructor(){super("antigravity",g.xq.antigravity)}buildUrl(a,b,c=0){let d=this.getBaseUrls(),e=d[c]||d[0];return`${e}/v1internal:${b?"streamGenerateContent?alt=sse":"generateContent"}`}buildHeaders(a,b=!0,c=null){return{"Content-Type":"application/json",Authorization:`Bearer ${a.accessToken}`,"User-Agent":this.config.headers?.["User-Agent"]||h.K["User-Agent"],[h.Ox.name]:h.Ox.value,...c&&{"X-Machine-Session-Id":c},Accept:b?"text/event-stream":"application/json"}}transformRequest(a,b,c,d){let f=d?.projectId||this.generateProjectId(),g=b.request?.contents?.map(a=>{let b=a.role;a.parts?.some(a=>a.functionResponse)&&(b="user");let c=a.parts?.filter(a=>(!a.thought||!!a.functionCall)&&(!a.thoughtSignature||!!a.functionCall||!!a.text));return b!==a.role||c?.length!==a.parts?.length?{...a,role:b,parts:c}:a}),h=b.request?.tools;if(h&&h.length>0){let a=h.flatMap(a=>(a.functionDeclarations||[]).map(a=>({...a,name:function(a){if(!a)return"_unknown";let b=a.replace(/[^a-zA-Z0-9_.:\-]/g,"_");return/^[a-zA-Z_]/.test(b)||(b="_"+b),b.substring(0,64)}(a.name),parameters:a.parameters?(0,l.Yr)(structuredClone(a.parameters)):{type:"object",properties:{reason:{type:"string",description:"Brief explanation"}},required:["reason"]}})));h=a.length>0?[{functionDeclarations:a}]:[]}let{tools:i,toolConfig:k,...m}=b.request||{},n={...m.generationConfig||{}};n.maxOutputTokens>16384&&(n.maxOutputTokens=16384);let o={...m,generationConfig:n,...g&&{contents:g},...h&&{tools:h},sessionId:b.request?.sessionId||(0,j.RF)(d?.email||d?.connectionId),safetySettings:void 0,...h?.length>0&&{toolConfig:{functionCallingConfig:{mode:"VALIDATED"}}}};return{...b,project:f,model:a,userAgent:"antigravity",requestType:"agent",requestId:`agent-${e().randomUUID()}`,request:o}}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;try{let d=await (0,k.proxyAwareFetch)(h.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.refreshToken,client_id:this.config.clientId,client_secret:this.config.clientSecret})},c);if(!d.ok)return null;let e=await d.json();return b?.info?.("TOKEN","Antigravity refreshed"),{accessToken:e.access_token,refreshToken:e.refresh_token||a.refreshToken,expiresIn:e.expires_in,projectId:a.projectId}}catch(a){return b?.error?.("TOKEN",`Antigravity refresh error: ${a.message}`),null}}generateProjectId(){let a=["useful","bright","swift","calm","bold"][Math.floor(5*Math.random())],b=["fuze","wave","spark","flow","core"][Math.floor(5*Math.random())];return`${a}-${b}-${e().randomUUID().slice(0,5)}`}generateSessionId(){return e().randomUUID()+Date.now().toString()}parseRetryHeaders(a){if(!a?.get)return null;let b=a.get("retry-after");if(b){let a=parseInt(b,10);if(!isNaN(a)&&a>0)return 1e3*a;let c=new Date(b);if(!isNaN(c.getTime())){let a=c.getTime()-Date.now();return a>0?a:null}}let c=a.get("x-ratelimit-reset-after");if(c){let a=parseInt(c,10);if(!isNaN(a)&&a>0)return 1e3*a}let d=a.get("x-ratelimit-reset");if(d){let a=1e3*parseInt(d,10)-Date.now();return a>0?a:null}return null}parseRetryFromErrorMessage(a){if(!a||"string"!=typeof a)return null;let b=a.match(/reset after (\d+h)?(\d+m)?(\d+s)?/i);if(!b)return null;let c=0;return b[1]&&(c+=3600*parseInt(b[1])*1e3),b[2]&&(c+=60*parseInt(b[2])*1e3),b[3]&&(c+=1e3*parseInt(b[3])),c>0?c:null}async resolveDynamicModelId(a,b,c=null,d=null){let e=m[a];if(!e||!b?.accessToken)return a;let f=a=>String(a||"").trim().toLowerCase(),g=f(e);for(let e of[...new Set([...this.getBaseUrls().map(a=>`${a}/v1internal:fetchAvailableModels`),"https://cloudcode-pa.googleapis.com/v1internal:fetchAvailableModels"])])try{let i=await (0,k.proxyAwareFetch)(e,{method:"POST",headers:{Authorization:`Bearer ${b.accessToken}`,"User-Agent":this.config.headers?.["User-Agent"]||h.K["User-Agent"],"Content-Type":"application/json","X-Client-Name":"antigravity","X-Client-Version":"1.107.0","x-request-source":"local"},body:JSON.stringify(b?.projectId?{project:b.projectId}:{})},c);if(!i.ok)continue;let j=await i.json(),l=Object.entries(j?.models||{}).filter(([,a])=>!a?.isInternal),m=l.find(([,a])=>f(a?.displayName)===g);if(m||(m=l.find(([,a])=>{let b=f(a?.displayName);return b.startsWith(g)&&b.includes("high")})),m||(m=l.find(([,a])=>f(a?.displayName).startsWith(g))),m||(m=l.find(([a])=>{let b=f(a);return b.includes("gemini")&&b.includes("3.7")&&b.includes("flash")})),m?.[0]){let b=m[0];return d?.debug?.("MODEL",`Resolved Antigravity ${a} -> ${b}`),b}}catch(a){d?.debug?.("MODEL",`Antigravity model discovery failed on ${e}: ${a.message}`)}return d?.debug?.("MODEL",`No Antigravity upstream id found for ${a}; using requested id`),a}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:f,proxyOptions:g=null}){let h=await this.resolveDynamicModelId(a,d,g,f),j=this.getFallbackCount(),l=null,m=0,n={},o={};for(let a=0;a<j;a++){let p=this.buildUrl(h,c,a),q=this.transformRequest(h,b,c,d),r=q.request?.sessionId,s=this.buildHeaders(d,c,r);n[a]||(n[a]=0),o[a]||(o[a]=0);try{let b=await (0,k.proxyAwareFetch)(p,{method:"POST",headers:s,body:JSON.stringify(q),signal:e},g);if(b.status===i.gx.RATE_LIMITED||b.status===i.gx.SERVICE_UNAVAILABLE){let c=this.parseRetryHeaders(b.headers);if(!c)try{let a=await b.clone().text(),d=JSON.parse(a),e=d?.error?.message||d?.message||"";c=this.parseRetryFromErrorMessage(e)}catch(a){}if(c&&c<=1e4&&o[a]<3){o[a]++,f?.debug?.("RETRY",`${b.status} with Retry-After: ${Math.ceil(c/1e3)}s, waiting... (${o[a]}/3)`),await new Promise(a=>setTimeout(a,c)),a--;continue}if(b.status===i.gx.RATE_LIMITED&&(!c||0===c)&&n[a]<3){n[a]++;let b=Math.min(1e3*2**n[a],1e4);f?.debug?.("RETRY",`429 auto retry ${n[a]}/3 after ${b/1e3}s`),await new Promise(a=>setTimeout(a,b)),a--;continue}if(f?.debug?.("RETRY",`${b.status}, Retry-After ${c?`too long (${Math.ceil(c/1e3)}s)`:"missing"}, trying fallback`),m=b.status,a+1<j)continue}if(this.shouldRetry(b.status,a)){f?.debug?.("RETRY",`${b.status} on ${p}, trying fallback ${a+1}`),m=b.status;continue}return{response:b,url:p,headers:s,transformedBody:q}}catch(b){if(l=b,a+1<j){f?.debug?.("RETRY",`Error on ${p}, trying fallback ${a+1}`);continue}throw b}}throw l||Error(`All ${j} URLs failed with status ${m}`)}static cloakTools(a,b=null){let c=a.request?.tools;if(!c||0===c.length)return{cloakedBody:a,toolNameMap:null};let d="github-copilot"===b,e=new Map,f=[],g=new Set(o.map(a=>a.name));for(let a of c)if(a.functionDeclarations)for(let b of a.functionDeclarations){if(d&&h.J5.has(b.name)||d&&g.has(b.name))continue;if(h.J5.has(b.name)){f.push(b);continue}let a=`${b.name}${h.QH}`;e.set(a,b.name),f.push({...b,name:a})}let i=[],j=new Set;for(let a of[...f,...o])!a?.name||j.has(a.name)||(j.add(a.name),i.push(a));let k=a.request?.contents?.map(a=>{if(!a.parts)return a;let b=a.parts.map(a=>a.functionCall&&!h.J5.has(a.functionCall.name)?{...a,functionCall:{...a.functionCall,name:`${a.functionCall.name}${h.QH}`}}:a.functionResponse&&!h.J5.has(a.functionResponse.name)?{...a,functionResponse:{...a.functionResponse,name:`${a.functionResponse.name}${h.QH}`}}:a);return{...a,parts:b}});return{cloakedBody:{...a,request:{...a.request,tools:[{functionDeclarations:i}],contents:k||a.request.contents}},toolNameMap:e}}}let o=[{name:"browser_subagent",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"command_status",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"find_by_name",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"generate_image",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"grep_search",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"list_dir",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"list_resources",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"mcp_sequential-thinking_sequentialthinking",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"multi_replace_file_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"notify_user",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_resource",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_terminal",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_url_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"replace_file_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"run_command",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"search_web",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"send_command_input",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"task_boundary",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"view_content_chunk",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"view_file",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"write_to_file",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}}]},55599:(a,b,c)=>{c(1758),c(8735),c(42541),c(7974),c(51525)},56248:(a,b,c)=>{c.r(b),c.d(b,{openaiResponsesToOpenAIResponse:()=>n,openaiToOpenAIResponsesResponse:()=>f});var d=c(69887),e=c(42541);function f(a,b){if(!a){var c=b;if(c.completedSent)return[];let a=[],d=(b,d)=>{d.sequence_number=++c.seq,a.push({event:b,data:d})};for(let a in c.msgItemAdded)j(c,d,a);for(let a in i(c,d),c.funcCallIds)k(c,d,a);return l(c,d),a}if(!a.choices?.length)return[];let d=[],e=(a,c)=>{c.sequence_number=++b.seq,d.push({event:a,data:c})},f=a.choices[0],m=f.index||0,n=f.delta||{};b.started||(b.started=!0,b.responseId=a.id?`resp_${a.id}`:b.responseId,e("response.created",{type:"response.created",response:{id:b.responseId,object:"response",created_at:b.created,status:"in_progress",background:!1,error:null,output:[]}}),e("response.in_progress",{type:"response.in_progress",response:{id:b.responseId,object:"response",created_at:b.created,status:"in_progress"}}));let o=n.reasoning_content||n.reasoning;if(o&&(g(b,e,m),h(b,e,o)),n.content){let a=n.content;if(a.includes("<think>")&&(b.inThinking=!0,a=a.replace("<think>",""),g(b,e,m)),a.includes("</think>")){let c=a.split("</think>"),d=c[0],f=c.slice(1).join("</think>");d&&h(b,e,d),i(b,e),b.inThinking=!1,a=f}if(b.inThinking&&a)return h(b,e,a),d;a&&function(a,b,c,d){if(!a.msgItemAdded[c]){a.msgItemAdded[c]=!0;let d=`msg_${a.responseId}_${c}`;b("response.output_item.added",{type:"response.output_item.added",output_index:c,item:{id:d,type:"message",content:[],role:"assistant"}})}a.msgContentAdded[c]||(a.msgContentAdded[c]=!0,b("response.content_part.added",{type:"response.content_part.added",item_id:`msg_${a.responseId}_${c}`,output_index:c,content_index:0,part:{type:"output_text",annotations:[],logprobs:[],text:""}})),b("response.output_text.delta",{type:"response.output_text.delta",item_id:`msg_${a.responseId}_${c}`,output_index:c,content_index:0,delta:d,logprobs:[]}),a.msgTextBuf[c]||(a.msgTextBuf[c]=""),a.msgTextBuf[c]+=d}(b,e,m,a)}if(n.tool_calls)for(let a of(j(b,e,m),n.tool_calls))!function(a,b,c){let d=c.index??0,e=c.id,f=c.function?.name;if(f&&(a.funcNames[d]=f),!a.funcCallIds[d]&&e&&(a.funcCallIds[d]=e,b("response.output_item.added",{type:"response.output_item.added",output_index:d,item:{id:`fc_${e}`,type:"function_call",arguments:"",call_id:e,name:a.funcNames[d]||""}})),a.funcArgsBuf[d]||(a.funcArgsBuf[d]=""),c.function?.arguments){let f=a.funcCallIds[d]||e;f&&b("response.function_call_arguments.delta",{type:"response.function_call_arguments.delta",item_id:`fc_${f}`,output_index:d,delta:c.function.arguments}),a.funcArgsBuf[d]+=c.function.arguments}}(b,e,a);if(n.images?.length)for(let a of(j(b,e,m),n.images))!function(a,b,c,d){let e=d?.image_url?.url||d?.url||"",f=/^data:([^;]+);base64,(.+)$/.exec(e),g=f?f[2]:e;if(!g)return;a.imageIndex=(a.imageIndex||0)+1;let h=`ig_${a.responseId}_${c}_${a.imageIndex}`;b("response.output_item.added",{type:"response.output_item.added",output_index:c,item:{id:h,type:"image_generation_call",status:"in_progress"}}),b("response.output_item.done",{type:"response.output_item.done",output_index:c,item:{id:h,type:"image_generation_call",status:"completed",result:g}})}(b,e,m,a);if(f.finish_reason){for(let a in b.msgItemAdded)j(b,e,a);for(let a in i(b,e),b.funcCallIds)k(b,e,a);l(b,e)}return d}function g(a,b,c){a.reasoningId||(a.reasoningId=`rs_${a.responseId}_${c}`,a.reasoningIndex=c,b("response.output_item.added",{type:"response.output_item.added",output_index:c,item:{id:a.reasoningId,type:"reasoning",summary:[]}}),b("response.reasoning_summary_part.added",{type:"response.reasoning_summary_part.added",item_id:a.reasoningId,output_index:c,summary_index:0,part:{type:"summary_text",text:""}}),a.reasoningPartAdded=!0)}function h(a,b,c){c&&(a.reasoningBuf+=c,b("response.reasoning_summary_text.delta",{type:"response.reasoning_summary_text.delta",item_id:a.reasoningId,output_index:a.reasoningIndex,summary_index:0,delta:c}))}function i(a,b){a.reasoningId&&!a.reasoningDone&&(a.reasoningDone=!0,b("response.reasoning_summary_text.done",{type:"response.reasoning_summary_text.done",item_id:a.reasoningId,output_index:a.reasoningIndex,summary_index:0,text:a.reasoningBuf}),b("response.reasoning_summary_part.done",{type:"response.reasoning_summary_part.done",item_id:a.reasoningId,output_index:a.reasoningIndex,summary_index:0,part:{type:"summary_text",text:a.reasoningBuf}}),b("response.output_item.done",{type:"response.output_item.done",output_index:a.reasoningIndex,item:{id:a.reasoningId,type:"reasoning",summary:[{type:"summary_text",text:a.reasoningBuf}]}}))}function j(a,b,c){if(a.msgItemAdded[c]&&!a.msgItemDone[c]){a.msgItemDone[c]=!0;let d=a.msgTextBuf[c]||"",e=`msg_${a.responseId}_${c}`;b("response.output_text.done",{type:"response.output_text.done",item_id:e,output_index:parseInt(c),content_index:0,text:d,logprobs:[]}),b("response.content_part.done",{type:"response.content_part.done",item_id:e,output_index:parseInt(c),content_index:0,part:{type:"output_text",annotations:[],logprobs:[],text:d}}),b("response.output_item.done",{type:"response.output_item.done",output_index:parseInt(c),item:{id:e,type:"message",content:[{type:"output_text",annotations:[],logprobs:[],text:d}],role:"assistant"}})}}function k(a,b,c){let d=a.funcCallIds[c];if(d&&!a.funcItemDone[c]){let e=a.funcArgsBuf[c]||"{}";b("response.function_call_arguments.done",{type:"response.function_call_arguments.done",item_id:`fc_${d}`,output_index:parseInt(c),arguments:e}),b("response.output_item.done",{type:"response.output_item.done",output_index:parseInt(c),item:{id:`fc_${d}`,type:"function_call",arguments:e,call_id:d,name:a.funcNames[c]||""}}),a.funcItemDone[c]=!0,a.funcArgsDone[c]=!0}}function l(a,b){a.completedSent||(a.completedSent=!0,b("response.completed",{type:"response.completed",response:{id:a.responseId,object:"response",created_at:a.created,status:"completed",background:!1,error:null}}))}function m(a){return a.toolCallIndex>0||a.currentToolCallId?"tool_calls":"stop"}function n(a,b){if(!a){if(b.finishReasonSent||!b.started)return null;let a=m(b);b.finishReasonSent=!0,b.finishReason=a;let c={id:b.chatId||`chatcmpl-${Date.now()}`,object:"chat.completion.chunk",created:b.created||Math.floor(Date.now()/1e3),model:b.model||"unknown",choices:[{index:0,delta:{},finish_reason:a}]};return b.usage&&"object"==typeof b.usage&&(c.usage=b.usage),c}let c=a.type||a.event,d=a.data||a;if(b.started||(b.started=!0,b.chatId=`chatcmpl-${Date.now()}`,b.created=Math.floor(Date.now()/1e3),b.toolCallIndex=0,b.currentToolCallId=null),"response.output_text.delta"===c){let a=d.delta||"";return a?{id:b.chatId,object:"chat.completion.chunk",created:b.created,model:b.model||"unknown",choices:[{index:0,delta:{content:a},finish_reason:null}]}:null}if("response.output_text.done"===c)return null;if("response.output_item.added"===c&&(d.item?.type==="function_call"||d.item?.type==="custom_tool_call")){let a=d.item;return b.currentToolCallId=a.call_id||`call_${Date.now()}`,{id:b.chatId,object:"chat.completion.chunk",created:b.created,model:b.model||"unknown",choices:[{index:0,delta:{tool_calls:[{index:b.toolCallIndex,id:b.currentToolCallId,type:"function",function:{name:a.name||"",arguments:""}}]},finish_reason:null}]}}if("response.function_call_arguments.delta"===c||"response.custom_tool_call_input.delta"===c){let a=d.delta||"";return a?{id:b.chatId,object:"chat.completion.chunk",created:b.created,model:b.model||"unknown",choices:[{index:0,delta:{tool_calls:[{index:b.toolCallIndex,function:{arguments:a}}]},finish_reason:null}]}:null}if("response.output_item.done"===c&&(d.item?.type==="function_call"||d.item?.type==="custom_tool_call"))return b.toolCallIndex++,null;if("response.completed"===c){let a=d.response?.usage;if(a&&"object"==typeof a){let c=a.input_tokens||a.prompt_tokens||0,d=a.output_tokens||a.completion_tokens||0,e=a.input_tokens_details?.cached_tokens||a.cache_read_input_tokens||0;b.usage={prompt_tokens:c,completion_tokens:d,total_tokens:c+d},e>0&&(b.usage.prompt_tokens_details={cached_tokens:e})}if(!b.finishReasonSent){let a=m(b);b.finishReasonSent=!0,b.finishReason=a;let c={id:b.chatId,object:"chat.completion.chunk",created:b.created,model:b.model||"unknown",choices:[{index:0,delta:{},finish_reason:a}]};return b.usage&&"object"==typeof b.usage&&(c.usage=b.usage),c}return null}if("error"===c||"response.failed"===c){if(b.finishReasonSent)return null;let a=d.error||d.response?.error;return a?(b.error=a,b.finishReasonSent=!0,{id:b.chatId||`chatcmpl-${Date.now()}`,object:"chat.completion.chunk",created:b.created||Math.floor(Date.now()/1e3),model:b.model||"unknown",choices:[{index:0,delta:{content:`[Error] ${a.message||JSON.stringify(a)}`},finish_reason:"error"}]}):null}return null}(0,d.kz)(e.h.OPENAI,e.h.OPENAI_RESPONSES,null,f),(0,d.kz)(e.h.OPENAI_RESPONSES,e.h.OPENAI,null,n)},58455:(a,b,c)=>{c.d(b,{M:()=>e});var d=c(8735);function e(a){let b=a.max_tokens||d.Uc;return a.tools&&Array.isArray(a.tools)&&a.tools.length>0&&b<d.eo&&(b=d.eo),a.thinking?.budget_tokens&&b<=a.thinking.budget_tokens&&(b=a.thinking.budget_tokens+1024),b}},59039:(a,b,c)=>{c.a(a,async(a,b)=>{try{c(19458),c(69887),c(42541),c(43212),c(11484),c(47153),c(91083),c(14372),c(1758),c(8735),c(27696),c(51525),c(42352);var d=c(65333);c(7974),c(55599),c(5275),c(51658),c(1447),c(15783),c(4818),c(374);var e=a([d]);d=(e.then?(await e)():e)[0],b()}catch(a){b(a)}})},60083:(a,b,c)=>{c.d(b,{H:()=>i});var d=c(2750),e=c(30395),f=c(80015);let g=new Set(["minimax-m2.5","minimax-m2.7"]),h="https://opencode.ai/zen/go/v1";class i extends d.H{constructor(){super("opencode-go",e.xq["opencode-go"])}buildUrl(a){return this._lastModel=a,g.has(a)?`${h}/messages`:`${h}/chat/completions`}buildHeaders(a,b=!0){let c=a?.apiKey||a?.accessToken,d={"Content-Type":"application/json"};return g.has(this._lastModel)?(d["x-api-key"]=c,d["anthropic-version"]="2023-06-01"):d.Authorization=`Bearer ${c}`,b&&(d.Accept="text/event-stream"),d}transformRequest(a,b){return(0,f.Z)({provider:this.provider,model:a,body:b})}}},64304:(a,b,c)=>{c.d(b,{Ay:()=>y});var d=c(2750),e=c(30395);let f=e.xq["perplexity-web"].baseUrl,g="2.18",h={"pplx-auto":["concise","pplx_pro"],"pplx-sonar":["copilot","experimental"],"pplx-gpt":["copilot","gpt54"],"pplx-gemini":["copilot","gemini31pro_high"],"pplx-sonnet":["copilot","claude46sonnet"],"pplx-opus":["copilot","claude46opus"],"pplx-nemotron":["copilot","nv_nemotron_3_super"]},i={"pplx-gpt":"gpt54_thinking","pplx-sonnet":"claude46sonnetthinking","pplx-opus":"claude46opusthinking"},j=/\[\d+\]/g,k=/<grok:[^>]*>.*?<\/grok:[^>]*>/gs,l=/<grok:[^>]*\/>/g,m=/<[?]xml[^?]*[?]>/g,n=/<\/?response\b[^>]*>/gi,o=/ {2,}/g,p=/\n{3,}/g,q=new Map;function r(a){let b=a.map(a=>`${a.role}:${a.content}`).join("\n"),c=0x811c9dc5;for(let a=0;a<b.length;a++)c^=b.charCodeAt(a),c=0x1000193*c>>>0;return c.toString(16).padStart(8,"0")}function s(a,b,c,d){if(!d)return;let e=r([...a,{role:"user",content:b},{role:"assistant",content:c}]);if(q.set(e,{backendUuid:d,ts:Date.now()}),q.size>200){let a=null,b=1/0;for(let[c,d]of q)d.ts<b&&(b=d.ts,a=c);a&&q.delete(a)}}function t(a,b=!0){let c=a;return c=(c=(c=(c=(c=c.replace(m,"")).replace(j,"")).replace(k,"")).replace(l,"")).replace(n,""),b&&(c=(c=(c=c.replace(o," ")).replace(p,"\n\n")).trim()),c}async function*u(a,b){let c=a.getReader(),d=new TextDecoder,e="",f=[];function g(){if(0===f.length)return null;let a=f.join("\n");f=[];let b=a.trim();if(!b||"[DONE]"===b)return"done";try{return JSON.parse(b)}catch{return null}}try{for(;;){if(b?.aborted)return;let{value:a,done:h}=await c.read();if(h)break;for(e+=d.decode(a,{stream:!0});;){let a=e.indexOf("\n");if(a<0)break;let b=e.slice(0,a);e=e.slice(a+1);let c=b.endsWith("\r")?b.slice(0,-1):b;if(""===c){let a=g();if("done"===a)return;a&&(yield a);continue}if(c.startsWith("data:")&&f.push(c.slice(5).trimStart()),"event: end_of_stream"===c)return}}(e+=d.decode()).trim().startsWith("data:")&&f.push(e.trim().slice(5).trimStart());let a=g();a&&"done"!==a&&(yield a)}finally{c.releaseLock()}}async function*v(a,b){let c="",d=null,e=0,f=new Set;for await(let g of u(a,b)){if(g.error_code||g.error_message)return void(yield{error:g.error_message||`Perplexity error: ${g.error_code}`,done:!0});g.backend_uuid&&(d=g.backend_uuid);let a=g.blocks??[];for(let b of a){let a=b.intended_usage??"";if("pro_search_steps"===a&&b.plan_block?.steps){for(let a of b.plan_block.steps)if("SEARCH_WEB"===a.step_type)for(let b of a.search_web_content?.queries??[]){let a=b.query??"";a&&!f.has(a)&&(f.add(a),yield{thinking:`Searching: ${a}`,backendUuid:d??void 0})}else if("READ_RESULTS"===a.step_type)for(let b of(a.read_results_content?.urls??[]).slice(0,3))b&&!f.has(b)&&(f.add(b),yield{thinking:`Reading: ${b}`,backendUuid:d??void 0})}if("plan"===a&&b.plan_block?.goals)for(let a of b.plan_block.goals){let b=a.description??"";b&&!f.has(b)&&(f.add(b),yield{thinking:b,backendUuid:d??void 0})}if(!a.includes("markdown"))continue;let g=b.markdown_block;if(!g)continue;let h=g.chunks??[];if(0!==h.length)if("DONE"===g.progress)c=h.join("");else{let a=c+h.join("");if(a.length>e){let b=a.slice(e);c=a,e=a.length,yield{delta:b,answer:c,backendUuid:d??void 0}}}}if(0===a.length&&g.text){let a=g.text.trim();if(a.length>e){let b=a.slice(e);c=a,e=a.length,yield{delta:b,answer:c,backendUuid:d??void 0}}}if(g.final||"COMPLETED"===g.status)break}yield{delta:"",answer:c,backendUuid:d??void 0,done:!0}}function w(a){return`data: ${JSON.stringify(a)}
92
246
 
93
247
  `}async function x(a,b,c,d,e,f,g){let h="",i=null,j=[];for await(let b of v(a,g)){if(b.backendUuid&&(i=b.backendUuid),b.error)return new Response(JSON.stringify({error:{message:b.error,type:"upstream_error",code:"PPLX_ERROR"}}),{status:502,headers:{"Content-Type":"application/json"}});if(b.thinking){j.push(b.thinking);continue}if(b.done){h=b.answer||h;break}b.answer&&(h=b.answer)}s(e,f,h=t(h),i);let k=j.length>0?j.join("\n"):void 0,l={role:"assistant",content:h};k&&(l.reasoning_content=k);let m=Math.ceil(f.length/4),n=Math.ceil(h.length/4);return new Response(JSON.stringify({id:c,object:"chat.completion",created:d,model:b,system_fingerprint:null,choices:[{index:0,message:l,finish_reason:"stop",logprobs:null}],usage:{prompt_tokens:m,completion_tokens:n,total_tokens:m+n}}),{status:200,headers:{"Content-Type":"application/json"}})}class y extends d.H{constructor(){super("perplexity-web",e.xq["perplexity-web"])}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:j}){var k,l,m,n,o;let p,u,y,z,A,B=b?.messages;if(!B||!Array.isArray(B)||0===B.length)return{response:new Response(JSON.stringify({error:{message:"Missing or empty messages array",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};(b?.thinking===!0||b?.reasoning_effort!=null&&"none"!==b.reasoning_effort)&&i[a]?(p="copilot",u=i[a],j?.info?.("PPLX-WEB",`Thinking mode → ${a} using ${u}`)):h[a]?[p,u]=h[a]:(p="copilot",u=a,j?.info?.("PPLX-WEB",`Unmapped model ${a}, using as raw preference`));let C=function(a){let b="",c=[];for(let d of a){let a=String(d.role||"user");"developer"===a&&(a="system");let e="";"string"==typeof d.content?e=d.content:Array.isArray(d.content)&&(e=d.content.filter(a=>"text"===a.type).map(a=>String(a.text||"")).join(" ")),e.trim()&&("system"===a?b+=e+"\n":("user"===a||"assistant"===a)&&c.push({role:a,content:e}))}let d="";return c.length>0&&"user"===c[c.length-1].role&&(d=c.pop().content),{systemMsg:b,history:c,currentMsg:d}}(B),D=function(a){if(0===a.length)return null;let b=r(a),c=q.get(b);return c?Date.now()-c.ts>36e5?(q.delete(b),null):c.backendUuid:null}(C.history);D&&j?.info?.("PPLX-WEB",`Session continue: ${D.slice(0,12)}...`);let E=function(a,b,c){if(b)return a.currentMsg;let d={},e=[];a.systemMsg.trim()&&e.push(a.systemMsg.trim());let f=function(a){if(!Array.isArray(a)||0===a.length)return"";let b=a.map(a=>{let b=a?.function||a||{},c=b.name||"unnamed",d=(b.description||"").split("\n")[0].slice(0,200);return`- ${c}: ${d}`});return`Available tools (reference only, cannot invoke):
94
248
  ${b.join("\n")}`}(c);f&&e.push(f),e.push("You have built-in web search. Answer questions directly using search results."),d.instructions=e,a.history.length>0&&(d.history=a.history),a.currentMsg?d.query=a.currentMsg:0===a.history.length&&(d.query="");let g=JSON.stringify(d);return g.length>96e3?g.slice(-96e3):g}(C,D,b?.tools);if(!E.trim())return{response:new Response(JSON.stringify({error:{message:"Empty query after processing",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:f,headers:{},transformedBody:b};let F=(k=p,l=u,A="u">typeof Intl?Intl.DateTimeFormat().resolvedOptions().timeZone:"UTC",{query_str:E,params:{query_str:E,search_focus:"internet",mode:k,model_preference:l,sources:["web"],attachments:[],frontend_uuid:crypto.randomUUID(),frontend_context_uuid:crypto.randomUUID(),version:g,language:"en-US",timezone:A,search_recency_filter:null,is_incognito:!0,use_schematized_api:!0,last_backend_uuid:D}}),G={"Content-Type":"application/json",Accept:"text/event-stream",Origin:"https://www.perplexity.ai",Referer:"https://www.perplexity.ai/","User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36","X-App-ApiClient":"default","X-App-ApiVersion":g};d.accessToken?G.Authorization=`Bearer ${d.accessToken}`:d.apiKey&&(G.Cookie=`__Secure-next-auth.session-token=${d.apiKey}`),j?.info?.("PPLX-WEB",`Query to ${a} (pref=${u}, mode=${p}), len=${E.length}`);let H={method:"POST",headers:G,body:JSON.stringify(F)};e&&(H.signal=e);try{y=await fetch(f,H)}catch(a){return j?.error?.("PPLX-WEB",`Fetch failed: ${a.message||String(a)}`),{response:new Response(JSON.stringify({error:{message:`Perplexity connection failed: ${a.message||String(a)}`,type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:G,transformedBody:F}}if(!y.ok){let a=y.status,b=`Perplexity returned HTTP ${a}`;return 401===a||403===a?b="Perplexity auth failed — session cookie may be expired. Re-paste your __Secure-next-auth.session-token.":429===a&&(b="Perplexity rate limited. Wait a moment and retry."),j?.warn?.("PPLX-WEB",b),{response:new Response(JSON.stringify({error:{message:b,type:"upstream_error",code:`HTTP_${a}`}}),{status:a,headers:{"Content-Type":"application/json"}}),url:f,headers:G,transformedBody:F}}if(!y.body)return{response:new Response(JSON.stringify({error:{message:"Perplexity returned empty response body",type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:f,headers:G,transformedBody:F};let I=`chatcmpl-pplx-${crypto.randomUUID().slice(0,12)}`,J=Math.floor(Date.now()/1e3);if(c){let b;z=new Response((m=y.body,n=C.history,o=C.currentMsg,b=new TextEncoder,new ReadableStream({async start(c){try{c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{role:"assistant"},finish_reason:null,logprobs:null}]})));let d="",f=null;for await(let g of v(m,e)){if(g.backendUuid&&(f=g.backendUuid),g.error){c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:`[Error: ${g.error}]`},finish_reason:null,logprobs:null}]})));break}if(g.thinking){c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{reasoning_content:g.thinking+"\n"},finish_reason:null,logprobs:null}]})));continue}if(g.done){d=g.answer||d;break}let e=g.delta||"";e&&(e=t(e,!1))&&c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:e},finish_reason:null,logprobs:null}]}))),g.answer&&(d=g.answer)}c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n")),s(n,o,t(d),f)}catch(d){c.enqueue(b.encode(w({id:I,object:"chat.completion.chunk",created:J,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:`[Stream error: ${d.message||String(d)}]`},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode("data: [DONE]\n\n"))}finally{c.close()}}})),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache","X-Accel-Buffering":"no"}})}else z=await x(y.body,a,I,J,C.history,C.currentMsg,e);return{response:z,url:f,headers:G,transformedBody:F}}}},65294:(a,b,c)=>{c.r(b),c.d(b,{convertCommandCodeToOpenAI:()=>h});var d=c(69887),e=c(42541);function f(a,b,c=null){return{id:a.responseId,object:"chat.completion.chunk",created:a.created,model:a.model,choices:[{index:0,delta:b,finish_reason:c}]}}function g(a){switch(a){case"stop":case"error":return"stop";case"length":return"length";case"tool-calls":case"tool_use":return"tool_calls";case"content-filter":return"content_filter";default:return a||"stop"}}function h(a,b){var c;if(!a)return null;if(a&&"object"==typeof a&&"chat.completion.chunk"===a.object)return a;let d=a;if("string"==typeof a){let b=a.trim();if(!b)return null;let c=b.startsWith("data:")?b.slice(5).trim():b;if(!c||"[DONE]"===c)return null;try{d=JSON.parse(c)}catch{return null}}if(!d||"object"!=typeof d||!d.type)return null;c=d.model,b.responseId||(b.responseId=`chatcmpl-${Date.now()}`,b.created=Math.floor(Date.now()/1e3),b.model=b.model||c||"commandcode",b.chunkIndex=0,b.toolIndex=0,b.toolIndexById=new Map,b.openTools=new Set,b.openText=!1,b.finishReason=null,b.usage=null);let e=[];switch(d.type){case"text-delta":{let a=d.text||d.delta||"";if(!a)break;let c=0===b.chunkIndex?{role:"assistant",content:a}:{content:a};b.chunkIndex++,b.openText=!0,e.push(f(b,c));break}case"reasoning-delta":{let a=d.text||"";if(!a)break;let c=0===b.chunkIndex?{role:"assistant",reasoning_content:a}:{reasoning_content:a};b.chunkIndex++,e.push(f(b,c));break}case"tool-input-start":{let a=d.id||d.toolCallId||`call_${Date.now()}_${b.toolIndex}`,c=b.toolIndexById.get(a);null==c&&(c=b.toolIndex++,b.toolIndexById.set(a,c)),b.openTools.add(a);let g={...0===b.chunkIndex?{role:"assistant"}:{},tool_calls:[{index:c,id:a,type:"function",function:{name:d.toolName||"",arguments:""}}]};b.chunkIndex++,e.push(f(b,g));break}case"tool-input-delta":{let a=d.id||d.toolCallId,c=b.toolIndexById.get(a);if(null==c)break;let g={tool_calls:[{index:c,function:{arguments:d.delta||d.inputTextDelta||""}}]};e.push(f(b,g));break}case"tool-call":{let a=d.toolCallId;if(b.toolIndexById.has(a))break;let c=b.toolIndex++;b.toolIndexById.set(a,c);let g="string"==typeof d.input?d.input:JSON.stringify(d.input??{}),h={...0===b.chunkIndex?{role:"assistant"}:{},tool_calls:[{index:c,id:a,type:"function",function:{name:d.toolName||"",arguments:g}}]};b.chunkIndex++,e.push(f(b,h));break}case"finish-step":b.finishReason=g(d.finishReason),d.usage&&(b.usage=d.usage);break;case"finish":{let a=b.finishReason||g(d.finishReason||"stop"),c=f(b,{},a),h=d.totalUsage||b.usage;h&&(c.usage={prompt_tokens:h.inputTokens??0,completion_tokens:h.outputTokens??0,total_tokens:h.totalTokens??(h.inputTokens??0)+(h.outputTokens??0)}),e.push(c);break}case"error":{b.finishReason="stop";let a=d.error??d.message??"unknown",c="string"==typeof a?a:JSON.stringify(a);e.push(f(b,{content:`