zevairouter 1.0.35 → 1.0.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1058) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/cli/app/.next-cli-build/BUILD_ID +1 -1
  3. package/cli/app/.next-cli-build/app-path-routes-manifest.json +8 -1
  4. package/cli/app/.next-cli-build/build-manifest.json +2 -2
  5. package/cli/app/.next-cli-build/prerender-manifest.json +3 -3
  6. package/cli/app/.next-cli-build/routes-manifest.json +49 -0
  7. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js +2 -2
  8. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js.nft.json +1 -1
  9. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page_client-reference-manifest.js +1 -1
  10. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  11. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  12. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  13. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +2 -2
  14. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  15. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  16. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  17. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  18. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  19. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  20. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  21. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  22. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  23. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  24. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  25. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js +2 -2
  26. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js.nft.json +1 -1
  27. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page_client-reference-manifest.js +1 -1
  28. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  29. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  30. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  31. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +2 -2
  32. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  33. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  34. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
  35. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  36. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  37. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +2 -2
  38. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  39. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  40. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
  41. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  42. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  43. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  44. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  45. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  46. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
  47. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  48. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  49. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  50. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  51. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  52. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
  53. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  54. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  55. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  56. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  57. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  58. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  59. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  60. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  61. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +3 -3
  62. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  63. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  64. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  65. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  66. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  67. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  68. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  69. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  70. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  71. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  72. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  73. package/cli/app/.next-cli-build/server/app/_global-error/page.js +3 -3
  74. package/cli/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  75. package/cli/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  76. package/cli/app/.next-cli-build/server/app/_global-error.html +1 -1
  77. package/cli/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  78. package/cli/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  79. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  80. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  81. package/cli/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  82. package/cli/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  83. package/cli/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  84. package/cli/app/.next-cli-build/server/app/_not-found/page.js +2 -2
  85. package/cli/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  86. package/cli/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  87. package/cli/app/.next-cli-build/server/app/_not-found.html +1 -1
  88. package/cli/app/.next-cli-build/server/app/_not-found.rsc +4 -4
  89. package/cli/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +4 -4
  90. package/cli/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  91. package/cli/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +4 -4
  92. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  93. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  94. package/cli/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  95. package/cli/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
  96. package/cli/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  97. package/cli/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
  98. package/cli/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  99. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
  100. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  101. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
  102. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  103. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
  104. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  105. package/cli/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
  106. package/cli/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  107. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +4 -4
  108. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  109. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  110. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  111. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  112. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  113. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  114. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  115. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +1 -1
  116. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  117. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js +1 -1
  118. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js.nft.json +1 -1
  119. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
  120. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  121. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
  122. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  123. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
  124. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  125. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
  126. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  127. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
  128. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  129. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
  130. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  131. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
  132. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  133. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +3 -3
  134. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  135. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
  136. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  137. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  138. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  139. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  140. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  141. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  142. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  143. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  144. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  145. package/cli/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  146. package/cli/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  147. package/cli/app/.next-cli-build/server/app/api/context/[id]/route.js +1 -1
  148. package/cli/app/.next-cli-build/server/app/api/context/[id]/route.js.nft.json +1 -1
  149. package/cli/app/.next-cli-build/server/app/api/context/bulk/route.js +1 -1
  150. package/cli/app/.next-cli-build/server/app/api/context/bulk/route.js.nft.json +1 -1
  151. package/cli/app/.next-cli-build/server/app/api/context/route.js +1 -1
  152. package/cli/app/.next-cli-build/server/app/api/context/route.js.nft.json +1 -1
  153. package/cli/app/.next-cli-build/server/app/api/health/route.js +1 -1
  154. package/cli/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  155. package/cli/app/.next-cli-build/server/app/api/init/route.js +1 -1
  156. package/cli/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  157. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  158. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  159. package/cli/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  160. package/cli/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  161. package/cli/app/.next-cli-build/server/app/api/locale/route.js +1 -1
  162. package/cli/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  163. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +2 -2
  164. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  165. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +2 -2
  166. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  167. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  168. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  169. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  170. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  171. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  172. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  173. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  174. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  175. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  176. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  177. package/cli/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  178. package/cli/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  179. package/cli/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
  180. package/cli/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  181. package/cli/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  182. package/cli/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  183. package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  184. package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  185. package/cli/app/.next-cli-build/server/app/api/models/route.js +1 -1
  186. package/cli/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  187. package/cli/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  188. package/cli/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  189. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  190. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  191. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js +1 -1
  192. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  193. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  194. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  195. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js +1 -1
  196. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js.nft.json +1 -1
  197. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js +1 -1
  198. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js.nft.json +1 -1
  199. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js +1 -1
  200. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js.nft.json +1 -1
  201. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route.js +1 -1
  202. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  203. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  204. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  205. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/route.js +1 -1
  206. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/route.js.nft.json +1 -1
  207. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/latest/route.js +1 -1
  208. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/latest/route.js.nft.json +1 -1
  209. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/route.js +1 -1
  210. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/route.js.nft.json +1 -1
  211. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js +1 -1
  212. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  213. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  214. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  215. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js +1 -1
  216. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js.nft.json +1 -1
  217. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js +1 -1
  218. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js.nft.json +1 -1
  219. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js +1 -1
  220. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js.nft.json +1 -1
  221. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js +1 -1
  222. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js.nft.json +1 -1
  223. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js +1 -1
  224. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js.nft.json +1 -1
  225. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route.js +1 -0
  226. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route.js.nft.json +1 -0
  227. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route_client-reference-manifest.js +1 -0
  228. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route.js +1 -0
  229. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -0
  230. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route_client-reference-manifest.js +1 -0
  231. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route.js +1 -0
  232. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route.js.nft.json +1 -0
  233. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route_client-reference-manifest.js +1 -0
  234. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route.js +1 -0
  235. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route.js.nft.json +1 -0
  236. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route_client-reference-manifest.js +1 -0
  237. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js +1 -0
  238. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js.nft.json +1 -0
  239. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route_client-reference-manifest.js +1 -0
  240. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route.js +1 -0
  241. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route.js.nft.json +1 -0
  242. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route_client-reference-manifest.js +1 -0
  243. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route.js +1 -0
  244. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route.js.nft.json +1 -0
  245. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route_client-reference-manifest.js +1 -0
  246. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  247. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  248. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  249. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  250. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  251. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  252. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  253. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  254. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  255. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  256. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  257. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  258. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js +1 -1
  259. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  260. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  261. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  262. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js +1 -1
  263. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js.nft.json +1 -1
  264. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js +1 -1
  265. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js.nft.json +1 -1
  266. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js +1 -1
  267. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js.nft.json +1 -1
  268. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  269. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  270. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  271. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  272. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  273. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  274. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js +1 -1
  275. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  276. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  277. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  278. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js +1 -1
  279. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js.nft.json +1 -1
  280. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js +1 -1
  281. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js.nft.json +1 -1
  282. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js +1 -1
  283. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js.nft.json +1 -1
  284. package/cli/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  285. package/cli/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  286. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  287. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  288. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  289. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  290. package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
  291. package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  292. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  293. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  294. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  295. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  296. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  297. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  298. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  299. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  300. package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route.js +1 -1
  301. package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route.js.nft.json +1 -1
  302. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  303. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  304. package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
  305. package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  306. package/cli/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  307. package/cli/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  308. package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
  309. package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  310. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  311. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  312. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  313. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  314. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
  315. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  316. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  317. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  318. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
  319. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  320. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
  321. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  322. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
  323. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  324. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
  325. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  326. package/cli/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  327. package/cli/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  328. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  329. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  330. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
  331. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  332. package/cli/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  333. package/cli/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  334. package/cli/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
  335. package/cli/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  336. package/cli/app/.next-cli-build/server/app/api/tags/route.js +1 -1
  337. package/cli/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  338. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  339. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  340. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
  341. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  342. package/cli/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
  343. package/cli/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  344. package/cli/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
  345. package/cli/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  346. package/cli/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  347. package/cli/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  348. package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  349. package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  350. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
  351. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  352. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
  353. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  354. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
  355. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  356. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
  357. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  358. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  359. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  360. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  361. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  362. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
  363. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  364. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  365. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  366. package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route.js +1 -1
  367. package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route.js.nft.json +1 -1
  368. package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  369. package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  370. package/cli/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
  371. package/cli/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  372. package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  373. package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  374. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  375. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  376. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  377. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  378. package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  379. package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  380. package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
  381. package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  382. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  383. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  384. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  385. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  386. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  387. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  388. package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  389. package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  390. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  391. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  392. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  393. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  394. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js +1 -1
  395. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  396. package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  397. package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  398. package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  399. package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  400. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
  401. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  402. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  403. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  404. package/cli/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  405. package/cli/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  406. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  407. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  408. package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  409. package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  410. package/cli/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  411. package/cli/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  412. package/cli/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  413. package/cli/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  414. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  415. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  416. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  417. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  418. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  419. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  420. package/cli/app/.next-cli-build/server/app/api/version/route.js +1 -1
  421. package/cli/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  422. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  423. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  424. package/cli/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  425. package/cli/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  426. package/cli/app/.next-cli-build/server/app/callback/page.js +2 -2
  427. package/cli/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  428. package/cli/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  429. package/cli/app/.next-cli-build/server/app/callback.html +1 -1
  430. package/cli/app/.next-cli-build/server/app/callback.rsc +4 -4
  431. package/cli/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +4 -4
  432. package/cli/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  433. package/cli/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +4 -4
  434. package/cli/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
  435. package/cli/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  436. package/cli/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  437. package/cli/app/.next-cli-build/server/app/dashboard/automation.html +1 -1
  438. package/cli/app/.next-cli-build/server/app/dashboard/automation.rsc +6 -6
  439. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation/__PAGE__.segment.rsc +2 -2
  440. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation.segment.rsc +1 -1
  441. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  442. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  443. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_full.segment.rsc +6 -6
  444. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_head.segment.rsc +1 -1
  445. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_index.segment.rsc +4 -4
  446. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_tree.segment.rsc +2 -2
  447. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  448. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +6 -6
  449. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  450. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  451. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  452. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  453. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
  454. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  455. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +4 -4
  456. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
  457. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  458. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +6 -6
  459. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  460. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  461. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  462. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  463. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
  464. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  465. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +4 -4
  466. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
  467. package/cli/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  468. package/cli/app/.next-cli-build/server/app/dashboard/combos.rsc +6 -6
  469. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  470. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  471. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  472. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  473. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
  474. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  475. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +4 -4
  476. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  477. package/cli/app/.next-cli-build/server/app/dashboard/context.html +1 -1
  478. package/cli/app/.next-cli-build/server/app/dashboard/context.rsc +6 -6
  479. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context/__PAGE__.segment.rsc +2 -2
  480. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context.segment.rsc +1 -1
  481. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  482. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  483. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_full.segment.rsc +6 -6
  484. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_head.segment.rsc +1 -1
  485. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_index.segment.rsc +4 -4
  486. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_tree.segment.rsc +2 -2
  487. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  488. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.rsc +6 -6
  489. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  490. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  491. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  492. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  493. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
  494. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  495. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +4 -4
  496. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  497. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  498. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +6 -6
  499. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  500. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  501. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  502. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  503. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  504. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +6 -6
  505. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  506. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +4 -4
  507. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
  508. package/cli/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  509. package/cli/app/.next-cli-build/server/app/dashboard/mitm.rsc +6 -6
  510. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  511. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  512. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  513. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  514. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
  515. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  516. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +4 -4
  517. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
  518. package/cli/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  519. package/cli/app/.next-cli-build/server/app/dashboard/profile.rsc +6 -6
  520. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  521. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  522. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  523. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  524. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
  525. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  526. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +4 -4
  527. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  528. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  529. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.rsc +6 -6
  530. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  531. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  532. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  533. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  534. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  535. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
  536. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  537. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +4 -4
  538. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  539. package/cli/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  540. package/cli/app/.next-cli-build/server/app/dashboard/providers.rsc +6 -6
  541. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  542. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  543. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  544. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  545. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
  546. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  547. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +4 -4
  548. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
  549. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  550. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +6 -6
  551. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  552. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  553. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  554. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  555. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
  556. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  557. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +4 -4
  558. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
  559. package/cli/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
  560. package/cli/app/.next-cli-build/server/app/dashboard/quota.rsc +7 -7
  561. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  562. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  563. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  564. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  565. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +7 -7
  566. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  567. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +4 -4
  568. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
  569. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
  570. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  571. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  572. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  573. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +4 -4
  574. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
  575. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  576. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
  577. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  578. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  579. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  580. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  581. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  582. package/cli/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  583. package/cli/app/.next-cli-build/server/app/dashboard/translator.rsc +6 -6
  584. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  585. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  586. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  587. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  588. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
  589. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  590. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +4 -4
  591. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  592. package/cli/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  593. package/cli/app/.next-cli-build/server/app/dashboard/usage.rsc +6 -6
  594. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  595. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  596. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  597. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  598. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
  599. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  600. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +4 -4
  601. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  602. package/cli/app/.next-cli-build/server/app/dashboard.html +1 -1
  603. package/cli/app/.next-cli-build/server/app/dashboard.rsc +6 -6
  604. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  605. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  606. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  607. package/cli/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +6 -6
  608. package/cli/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  609. package/cli/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +4 -4
  610. package/cli/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  611. package/cli/app/.next-cli-build/server/app/index.html +1 -1
  612. package/cli/app/.next-cli-build/server/app/index.rsc +4 -4
  613. package/cli/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  614. package/cli/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +4 -4
  615. package/cli/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  616. package/cli/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +4 -4
  617. package/cli/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
  618. package/cli/app/.next-cli-build/server/app/landing/page.js +2 -2
  619. package/cli/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  620. package/cli/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  621. package/cli/app/.next-cli-build/server/app/landing.html +1 -1
  622. package/cli/app/.next-cli-build/server/app/landing.rsc +4 -4
  623. package/cli/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +4 -4
  624. package/cli/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  625. package/cli/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +4 -4
  626. package/cli/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
  627. package/cli/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  628. package/cli/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  629. package/cli/app/.next-cli-build/server/app/login/page.js +2 -2
  630. package/cli/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  631. package/cli/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  632. package/cli/app/.next-cli-build/server/app/login.html +1 -1
  633. package/cli/app/.next-cli-build/server/app/login.rsc +5 -5
  634. package/cli/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +5 -5
  635. package/cli/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  636. package/cli/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +4 -4
  637. package/cli/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
  638. package/cli/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  639. package/cli/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  640. package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
  641. package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  642. package/cli/app/.next-cli-build/server/app/page.js +2 -2
  643. package/cli/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  644. package/cli/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  645. package/cli/app/.next-cli-build/server/app-paths-manifest.json +8 -1
  646. package/cli/app/.next-cli-build/server/chunks/1396.js +1 -1
  647. package/cli/app/.next-cli-build/server/chunks/1939.js +1 -1
  648. package/cli/app/.next-cli-build/server/chunks/2777.js +1 -1
  649. package/cli/app/.next-cli-build/server/chunks/3110.js +2 -2
  650. package/cli/app/.next-cli-build/server/chunks/318.js +2 -2
  651. package/cli/app/.next-cli-build/server/chunks/412.js +1 -1
  652. package/cli/app/.next-cli-build/server/chunks/4404.js +1 -1
  653. package/cli/app/.next-cli-build/server/chunks/4746.js +1 -1
  654. package/cli/app/.next-cli-build/server/chunks/5000.js +1 -1
  655. package/cli/app/.next-cli-build/server/chunks/5024.js +1 -1
  656. package/cli/app/.next-cli-build/server/chunks/5681.js +1 -1
  657. package/cli/app/.next-cli-build/server/chunks/5827.js +1 -0
  658. package/cli/app/.next-cli-build/server/chunks/5949.js +1 -1
  659. package/cli/app/.next-cli-build/server/chunks/6652.js +1 -0
  660. package/cli/app/.next-cli-build/server/chunks/6896.js +1 -1
  661. package/cli/app/.next-cli-build/server/chunks/7153.js +1 -1
  662. package/cli/app/.next-cli-build/server/chunks/7774.js +27 -27
  663. package/cli/app/.next-cli-build/server/chunks/8371.js +1 -0
  664. package/cli/app/.next-cli-build/server/chunks/8895.js +3 -3
  665. package/cli/app/.next-cli-build/server/chunks/891.js +1 -1
  666. package/cli/app/.next-cli-build/server/chunks/9372.js +1 -0
  667. package/cli/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  668. package/cli/app/.next-cli-build/server/middleware.js +4 -4
  669. package/cli/app/.next-cli-build/server/pages/404.html +1 -1
  670. package/cli/app/.next-cli-build/server/pages/500.html +1 -1
  671. package/cli/app/.next-cli-build/server/server-reference-manifest.js +1 -1
  672. package/cli/app/.next-cli-build/server/server-reference-manifest.json +1 -1
  673. package/cli/app/.next-cli-build/static/Jh26f1tVQgrKUbeB6pi5A/_buildManifest.js +1 -0
  674. package/cli/app/.next-cli-build/static/chunks/1321-1c8d1bf3bb5f6953.js +1 -0
  675. package/cli/app/.next-cli-build/static/chunks/{5497-15b3dc050a875ba5.js → 5497-f496fb3861cb944d.js} +3 -3
  676. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/automation/page-36dfe0b23bf48d41.js +1 -0
  677. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-41ea0d0c8e98a115.js +3 -0
  678. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/layout-d9a30786a04fb360.js +1 -0
  679. package/cli/app/.next-cli-build/static/chunks/app/_global-error/page-47cd0604103a80c1.js +1 -0
  680. package/cli/app/.next-cli-build/static/chunks/app/api/auth/login/route-47cd0604103a80c1.js +1 -0
  681. package/cli/app/.next-cli-build/static/chunks/app/api/auth/logout/route-47cd0604103a80c1.js +1 -0
  682. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-47cd0604103a80c1.js +1 -0
  683. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-47cd0604103a80c1.js +1 -0
  684. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-47cd0604103a80c1.js +1 -0
  685. package/cli/app/.next-cli-build/static/chunks/app/api/auth/status/route-47cd0604103a80c1.js +1 -0
  686. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-47cd0604103a80c1.js +1 -0
  687. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-47cd0604103a80c1.js +1 -0
  688. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-47cd0604103a80c1.js +1 -0
  689. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-47cd0604103a80c1.js +1 -0
  690. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-47cd0604103a80c1.js +1 -0
  691. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-gateway/accounts/route-47cd0604103a80c1.js +1 -0
  692. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-47cd0604103a80c1.js +1 -0
  693. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-47cd0604103a80c1.js +1 -0
  694. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-47cd0604103a80c1.js +1 -0
  695. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-47cd0604103a80c1.js +1 -0
  696. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-47cd0604103a80c1.js +1 -0
  697. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-47cd0604103a80c1.js +1 -0
  698. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-47cd0604103a80c1.js +1 -0
  699. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-47cd0604103a80c1.js +1 -0
  700. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-47cd0604103a80c1.js +1 -0
  701. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-47cd0604103a80c1.js +1 -0
  702. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-47cd0604103a80c1.js +1 -0
  703. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-47cd0604103a80c1.js +1 -0
  704. package/cli/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-47cd0604103a80c1.js +1 -0
  705. package/cli/app/.next-cli-build/static/chunks/app/api/combos/route-47cd0604103a80c1.js +1 -0
  706. package/cli/app/.next-cli-build/static/chunks/app/api/context/[id]/route-47cd0604103a80c1.js +1 -0
  707. package/cli/app/.next-cli-build/static/chunks/app/api/context/bulk/route-47cd0604103a80c1.js +1 -0
  708. package/cli/app/.next-cli-build/static/chunks/app/api/context/route-47cd0604103a80c1.js +1 -0
  709. package/cli/app/.next-cli-build/static/chunks/app/api/health/route-47cd0604103a80c1.js +1 -0
  710. package/cli/app/.next-cli-build/static/chunks/app/api/init/route-47cd0604103a80c1.js +1 -0
  711. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-47cd0604103a80c1.js +1 -0
  712. package/cli/app/.next-cli-build/static/chunks/app/api/keys/route-47cd0604103a80c1.js +1 -0
  713. package/cli/app/.next-cli-build/static/chunks/app/api/locale/route-47cd0604103a80c1.js +1 -0
  714. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-47cd0604103a80c1.js +1 -0
  715. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-47cd0604103a80c1.js +1 -0
  716. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-47cd0604103a80c1.js +1 -0
  717. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-47cd0604103a80c1.js +1 -0
  718. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-47cd0604103a80c1.js +1 -0
  719. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-47cd0604103a80c1.js +1 -0
  720. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-47cd0604103a80c1.js +1 -0
  721. package/cli/app/.next-cli-build/static/chunks/app/api/models/alias/route-47cd0604103a80c1.js +1 -0
  722. package/cli/app/.next-cli-build/static/chunks/app/api/models/availability/route-47cd0604103a80c1.js +1 -0
  723. package/cli/app/.next-cli-build/static/chunks/app/api/models/custom/route-47cd0604103a80c1.js +1 -0
  724. package/cli/app/.next-cli-build/static/chunks/app/api/models/disabled/route-47cd0604103a80c1.js +1 -0
  725. package/cli/app/.next-cli-build/static/chunks/app/api/models/route-47cd0604103a80c1.js +1 -0
  726. package/cli/app/.next-cli-build/static/chunks/app/api/models/test/route-47cd0604103a80c1.js +1 -0
  727. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-47cd0604103a80c1.js +1 -0
  728. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route-47cd0604103a80c1.js +1 -0
  729. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route-47cd0604103a80c1.js +1 -0
  730. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/route-47cd0604103a80c1.js +1 -0
  731. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/latest/route-47cd0604103a80c1.js +1 -0
  732. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/route-47cd0604103a80c1.js +1 -0
  733. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route-47cd0604103a80c1.js +1 -0
  734. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route-47cd0604103a80c1.js +1 -0
  735. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/route-47cd0604103a80c1.js +1 -0
  736. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/latest/route-47cd0604103a80c1.js +1 -0
  737. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/route-47cd0604103a80c1.js +1 -0
  738. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route-47cd0604103a80c1.js +1 -0
  739. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route-47cd0604103a80c1.js +1 -0
  740. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/route-47cd0604103a80c1.js +1 -0
  741. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/latest/route-47cd0604103a80c1.js +1 -0
  742. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/route-47cd0604103a80c1.js +1 -0
  743. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-token/route-47cd0604103a80c1.js +1 -0
  744. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/quota-cookie/route-47cd0604103a80c1.js +1 -0
  745. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route-47cd0604103a80c1.js +1 -0
  746. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route-47cd0604103a80c1.js +1 -0
  747. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route-47cd0604103a80c1.js +1 -0
  748. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/latest/route-47cd0604103a80c1.js +1 -0
  749. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/route-47cd0604103a80c1.js +1 -0
  750. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-token/route-47cd0604103a80c1.js +1 -0
  751. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/quota-cookie/route-47cd0604103a80c1.js +1 -0
  752. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-47cd0604103a80c1.js +1 -0
  753. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-47cd0604103a80c1.js +1 -0
  754. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-47cd0604103a80c1.js +1 -0
  755. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-47cd0604103a80c1.js +1 -0
  756. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-47cd0604103a80c1.js +1 -0
  757. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-47cd0604103a80c1.js +1 -0
  758. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route-47cd0604103a80c1.js +1 -0
  759. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route-47cd0604103a80c1.js +1 -0
  760. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/route-47cd0604103a80c1.js +1 -0
  761. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/latest/route-47cd0604103a80c1.js +1 -0
  762. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/route-47cd0604103a80c1.js +1 -0
  763. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-47cd0604103a80c1.js +1 -0
  764. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-47cd0604103a80c1.js +1 -0
  765. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-47cd0604103a80c1.js +1 -0
  766. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route-47cd0604103a80c1.js +1 -0
  767. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route-47cd0604103a80c1.js +1 -0
  768. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/route-47cd0604103a80c1.js +1 -0
  769. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/latest/route-47cd0604103a80c1.js +1 -0
  770. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/route-47cd0604103a80c1.js +1 -0
  771. package/cli/app/.next-cli-build/static/chunks/app/api/pricing/route-47cd0604103a80c1.js +1 -0
  772. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-47cd0604103a80c1.js +1 -0
  773. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-47cd0604103a80c1.js +1 -0
  774. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-47cd0604103a80c1.js +1 -0
  775. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-47cd0604103a80c1.js +1 -0
  776. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-47cd0604103a80c1.js +1 -0
  777. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-47cd0604103a80c1.js +1 -0
  778. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-47cd0604103a80c1.js +1 -0
  779. package/cli/app/.next-cli-build/static/chunks/app/api/providers/bulk-delete/route-47cd0604103a80c1.js +1 -0
  780. package/cli/app/.next-cli-build/static/chunks/app/api/providers/client/route-47cd0604103a80c1.js +1 -0
  781. package/cli/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-47cd0604103a80c1.js +1 -0
  782. package/cli/app/.next-cli-build/static/chunks/app/api/providers/route-47cd0604103a80c1.js +1 -0
  783. package/cli/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-47cd0604103a80c1.js +1 -0
  784. package/cli/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-47cd0604103a80c1.js +1 -0
  785. package/cli/app/.next-cli-build/static/chunks/app/api/providers/validate/route-47cd0604103a80c1.js +1 -0
  786. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-47cd0604103a80c1.js +1 -0
  787. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-47cd0604103a80c1.js +1 -0
  788. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-47cd0604103a80c1.js +1 -0
  789. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-47cd0604103a80c1.js +1 -0
  790. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-47cd0604103a80c1.js +1 -0
  791. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-47cd0604103a80c1.js +1 -0
  792. package/cli/app/.next-cli-build/static/chunks/app/api/settings/database/route-47cd0604103a80c1.js +1 -0
  793. package/cli/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-47cd0604103a80c1.js +1 -0
  794. package/cli/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-47cd0604103a80c1.js +1 -0
  795. package/cli/app/.next-cli-build/static/chunks/app/api/settings/route-47cd0604103a80c1.js +1 -0
  796. package/cli/app/.next-cli-build/static/chunks/app/api/shutdown/route-47cd0604103a80c1.js +1 -0
  797. package/cli/app/.next-cli-build/static/chunks/app/api/tags/route-47cd0604103a80c1.js +1 -0
  798. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-47cd0604103a80c1.js +1 -0
  799. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-47cd0604103a80c1.js +1 -0
  800. package/cli/app/.next-cli-build/static/chunks/app/api/translator/load/route-47cd0604103a80c1.js +1 -0
  801. package/cli/app/.next-cli-build/static/chunks/app/api/translator/save/route-47cd0604103a80c1.js +1 -0
  802. package/cli/app/.next-cli-build/static/chunks/app/api/translator/send/route-47cd0604103a80c1.js +1 -0
  803. package/cli/app/.next-cli-build/static/chunks/app/api/translator/translate/route-47cd0604103a80c1.js +1 -0
  804. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-47cd0604103a80c1.js +1 -0
  805. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-47cd0604103a80c1.js +1 -0
  806. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-47cd0604103a80c1.js +1 -0
  807. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-47cd0604103a80c1.js +1 -0
  808. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-47cd0604103a80c1.js +1 -0
  809. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-47cd0604103a80c1.js +1 -0
  810. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-47cd0604103a80c1.js +1 -0
  811. package/cli/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-47cd0604103a80c1.js +1 -0
  812. package/cli/app/.next-cli-build/static/chunks/app/api/usage/aggregate/route-47cd0604103a80c1.js +1 -0
  813. package/cli/app/.next-cli-build/static/chunks/app/api/usage/chart/route-47cd0604103a80c1.js +1 -0
  814. package/cli/app/.next-cli-build/static/chunks/app/api/usage/history/route-47cd0604103a80c1.js +1 -0
  815. package/cli/app/.next-cli-build/static/chunks/app/api/usage/providers/route-47cd0604103a80c1.js +1 -0
  816. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-47cd0604103a80c1.js +1 -0
  817. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-47cd0604103a80c1.js +1 -0
  818. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stats/route-47cd0604103a80c1.js +1 -0
  819. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stream/route-47cd0604103a80c1.js +1 -0
  820. package/cli/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-47cd0604103a80c1.js +1 -0
  821. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-47cd0604103a80c1.js +1 -0
  822. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-47cd0604103a80c1.js +1 -0
  823. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-47cd0604103a80c1.js +1 -0
  824. package/cli/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-47cd0604103a80c1.js +1 -0
  825. package/cli/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-47cd0604103a80c1.js +1 -0
  826. package/cli/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-47cd0604103a80c1.js +1 -0
  827. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-47cd0604103a80c1.js +1 -0
  828. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/route-47cd0604103a80c1.js +1 -0
  829. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-47cd0604103a80c1.js +1 -0
  830. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-47cd0604103a80c1.js +1 -0
  831. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/route-47cd0604103a80c1.js +1 -0
  832. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-47cd0604103a80c1.js +1 -0
  833. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/route-47cd0604103a80c1.js +1 -0
  834. package/cli/app/.next-cli-build/static/chunks/app/api/v1/route-47cd0604103a80c1.js +1 -0
  835. package/cli/app/.next-cli-build/static/chunks/app/api/v1/search/route-47cd0604103a80c1.js +1 -0
  836. package/cli/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-47cd0604103a80c1.js +1 -0
  837. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-47cd0604103a80c1.js +1 -0
  838. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-47cd0604103a80c1.js +1 -0
  839. package/cli/app/.next-cli-build/static/chunks/app/api/version/route-47cd0604103a80c1.js +1 -0
  840. package/cli/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-47cd0604103a80c1.js +1 -0
  841. package/cli/app/.next-cli-build/static/chunks/app/api/version/update/route-47cd0604103a80c1.js +1 -0
  842. package/cli/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-47cd0604103a80c1.js +1 -0
  843. package/cli/app/.next-cli-build/static/chunks/app/page-47cd0604103a80c1.js +1 -0
  844. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-47cd0604103a80c1.js +1 -0
  845. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-47cd0604103a80c1.js +1 -0
  846. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-47cd0604103a80c1.js +1 -0
  847. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-47cd0604103a80c1.js +1 -0
  848. package/cli/app/.next-cli-build/static/css/66603789c5d0bb89.css +1 -0
  849. package/cli/app/package.json +3 -3
  850. package/cli/app/src/lib/oauth/services/bulkImportBrowserEngine.js +40 -13
  851. package/cli/app/src/lib/oauth/services/socksHttpBridge.js +157 -0
  852. package/cli/package.json +1 -1
  853. package/open-sse/config/providerModels.js +32 -1
  854. package/open-sse/config/providers.js +14 -0
  855. package/open-sse/executors/codebuddy-cn.js +31 -0
  856. package/open-sse/executors/index.js +7 -0
  857. package/open-sse/executors/mimo-free.js +156 -0
  858. package/open-sse/handlers/chatCore.js +12 -21
  859. package/open-sse/services/model.js +5 -0
  860. package/open-sse/services/usage.js +76 -24
  861. package/open-sse/utils/stream.js +14 -0
  862. package/open-sse/utils/thinkingSuffix.js +64 -0
  863. package/package.json +3 -3
  864. package/src/app/(dashboard)/dashboard/automation/page.js +153 -1
  865. package/src/app/(dashboard)/dashboard/providers/[id]/ModelRow.js +7 -3
  866. package/src/app/(dashboard)/dashboard/providers/[id]/page.js +17 -16
  867. package/src/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route.js +19 -0
  868. package/src/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route.js +30 -0
  869. package/src/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route.js +26 -0
  870. package/src/app/api/oauth/codebuddy-cn/bulk-import/latest/route.js +27 -0
  871. package/src/app/api/oauth/codebuddy-cn/bulk-import/route.js +61 -0
  872. package/src/app/api/oauth/codebuddy-cn/bulk-token/route.js +119 -0
  873. package/src/app/api/oauth/codebuddy-cn/quota-cookie/route.js +28 -0
  874. package/src/app/api/settings/route.js +11 -2
  875. package/src/lib/db/repos/settingsRepo.js +2 -0
  876. package/src/lib/oauth/services/bulkImportBrowserEngine.js +40 -13
  877. package/src/lib/oauth/services/codebuddyBulkImportManager.js +9 -7
  878. package/src/lib/oauth/services/codebuddyCnBulkImportManager.js +1004 -0
  879. package/src/lib/oauth/services/codebuddyCnPhoneAutomation.js +1029 -0
  880. package/src/lib/oauth/services/fiveSimClient.js +370 -0
  881. package/src/lib/oauth/services/kiroBulkImportManager.js +69 -7
  882. package/src/lib/oauth/services/proxyUtils.js +26 -0
  883. package/src/lib/oauth/services/socksHttpBridge.js +157 -0
  884. package/src/lib/usage/quotaService.js +10 -2
  885. package/src/shared/components/CodeBuddyCnPhoneRegisterModal.js +564 -0
  886. package/src/shared/components/index.js +1 -0
  887. package/src/shared/constants/providers.js +59 -1
  888. package/cli/app/.next-cli-build/server/chunks/7340.js +0 -1
  889. package/cli/app/.next-cli-build/server/chunks/9326.js +0 -1
  890. package/cli/app/.next-cli-build/static/FGw-I-CGGpfd2854oBF1w/_buildManifest.js +0 -1
  891. package/cli/app/.next-cli-build/static/chunks/1321-003c18d34f8bf26a.js +0 -1
  892. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/automation/page-cf7cc045f80cb4b0.js +0 -1
  893. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-00b727c93ebc0e37.js +0 -3
  894. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/layout-54ebc81f294cf670.js +0 -1
  895. package/cli/app/.next-cli-build/static/chunks/app/_global-error/page-576986aaa25d6ad2.js +0 -1
  896. package/cli/app/.next-cli-build/static/chunks/app/api/auth/login/route-576986aaa25d6ad2.js +0 -1
  897. package/cli/app/.next-cli-build/static/chunks/app/api/auth/logout/route-576986aaa25d6ad2.js +0 -1
  898. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-576986aaa25d6ad2.js +0 -1
  899. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-576986aaa25d6ad2.js +0 -1
  900. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-576986aaa25d6ad2.js +0 -1
  901. package/cli/app/.next-cli-build/static/chunks/app/api/auth/status/route-576986aaa25d6ad2.js +0 -1
  902. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-576986aaa25d6ad2.js +0 -1
  903. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-576986aaa25d6ad2.js +0 -1
  904. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-576986aaa25d6ad2.js +0 -1
  905. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-576986aaa25d6ad2.js +0 -1
  906. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-576986aaa25d6ad2.js +0 -1
  907. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-gateway/accounts/route-576986aaa25d6ad2.js +0 -1
  908. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-576986aaa25d6ad2.js +0 -1
  909. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-576986aaa25d6ad2.js +0 -1
  910. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-576986aaa25d6ad2.js +0 -1
  911. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-576986aaa25d6ad2.js +0 -1
  912. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-576986aaa25d6ad2.js +0 -1
  913. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-576986aaa25d6ad2.js +0 -1
  914. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-576986aaa25d6ad2.js +0 -1
  915. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-576986aaa25d6ad2.js +0 -1
  916. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-576986aaa25d6ad2.js +0 -1
  917. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-576986aaa25d6ad2.js +0 -1
  918. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-576986aaa25d6ad2.js +0 -1
  919. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-576986aaa25d6ad2.js +0 -1
  920. package/cli/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-576986aaa25d6ad2.js +0 -1
  921. package/cli/app/.next-cli-build/static/chunks/app/api/combos/route-576986aaa25d6ad2.js +0 -1
  922. package/cli/app/.next-cli-build/static/chunks/app/api/context/[id]/route-576986aaa25d6ad2.js +0 -1
  923. package/cli/app/.next-cli-build/static/chunks/app/api/context/bulk/route-576986aaa25d6ad2.js +0 -1
  924. package/cli/app/.next-cli-build/static/chunks/app/api/context/route-576986aaa25d6ad2.js +0 -1
  925. package/cli/app/.next-cli-build/static/chunks/app/api/health/route-576986aaa25d6ad2.js +0 -1
  926. package/cli/app/.next-cli-build/static/chunks/app/api/init/route-576986aaa25d6ad2.js +0 -1
  927. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-576986aaa25d6ad2.js +0 -1
  928. package/cli/app/.next-cli-build/static/chunks/app/api/keys/route-576986aaa25d6ad2.js +0 -1
  929. package/cli/app/.next-cli-build/static/chunks/app/api/locale/route-576986aaa25d6ad2.js +0 -1
  930. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-576986aaa25d6ad2.js +0 -1
  931. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-576986aaa25d6ad2.js +0 -1
  932. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-576986aaa25d6ad2.js +0 -1
  933. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-576986aaa25d6ad2.js +0 -1
  934. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-576986aaa25d6ad2.js +0 -1
  935. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-576986aaa25d6ad2.js +0 -1
  936. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-576986aaa25d6ad2.js +0 -1
  937. package/cli/app/.next-cli-build/static/chunks/app/api/models/alias/route-576986aaa25d6ad2.js +0 -1
  938. package/cli/app/.next-cli-build/static/chunks/app/api/models/availability/route-576986aaa25d6ad2.js +0 -1
  939. package/cli/app/.next-cli-build/static/chunks/app/api/models/custom/route-576986aaa25d6ad2.js +0 -1
  940. package/cli/app/.next-cli-build/static/chunks/app/api/models/disabled/route-576986aaa25d6ad2.js +0 -1
  941. package/cli/app/.next-cli-build/static/chunks/app/api/models/route-576986aaa25d6ad2.js +0 -1
  942. package/cli/app/.next-cli-build/static/chunks/app/api/models/test/route-576986aaa25d6ad2.js +0 -1
  943. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-576986aaa25d6ad2.js +0 -1
  944. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route-576986aaa25d6ad2.js +0 -1
  945. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route-576986aaa25d6ad2.js +0 -1
  946. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/route-576986aaa25d6ad2.js +0 -1
  947. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/latest/route-576986aaa25d6ad2.js +0 -1
  948. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/route-576986aaa25d6ad2.js +0 -1
  949. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route-576986aaa25d6ad2.js +0 -1
  950. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route-576986aaa25d6ad2.js +0 -1
  951. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/route-576986aaa25d6ad2.js +0 -1
  952. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/latest/route-576986aaa25d6ad2.js +0 -1
  953. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/route-576986aaa25d6ad2.js +0 -1
  954. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route-576986aaa25d6ad2.js +0 -1
  955. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route-576986aaa25d6ad2.js +0 -1
  956. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/route-576986aaa25d6ad2.js +0 -1
  957. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/latest/route-576986aaa25d6ad2.js +0 -1
  958. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/route-576986aaa25d6ad2.js +0 -1
  959. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-token/route-576986aaa25d6ad2.js +0 -1
  960. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/quota-cookie/route-576986aaa25d6ad2.js +0 -1
  961. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-576986aaa25d6ad2.js +0 -1
  962. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-576986aaa25d6ad2.js +0 -1
  963. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-576986aaa25d6ad2.js +0 -1
  964. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-576986aaa25d6ad2.js +0 -1
  965. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-576986aaa25d6ad2.js +0 -1
  966. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-576986aaa25d6ad2.js +0 -1
  967. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route-576986aaa25d6ad2.js +0 -1
  968. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route-576986aaa25d6ad2.js +0 -1
  969. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/route-576986aaa25d6ad2.js +0 -1
  970. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/latest/route-576986aaa25d6ad2.js +0 -1
  971. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/route-576986aaa25d6ad2.js +0 -1
  972. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-576986aaa25d6ad2.js +0 -1
  973. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-576986aaa25d6ad2.js +0 -1
  974. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-576986aaa25d6ad2.js +0 -1
  975. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route-576986aaa25d6ad2.js +0 -1
  976. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route-576986aaa25d6ad2.js +0 -1
  977. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/route-576986aaa25d6ad2.js +0 -1
  978. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/latest/route-576986aaa25d6ad2.js +0 -1
  979. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/route-576986aaa25d6ad2.js +0 -1
  980. package/cli/app/.next-cli-build/static/chunks/app/api/pricing/route-576986aaa25d6ad2.js +0 -1
  981. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-576986aaa25d6ad2.js +0 -1
  982. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-576986aaa25d6ad2.js +0 -1
  983. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-576986aaa25d6ad2.js +0 -1
  984. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-576986aaa25d6ad2.js +0 -1
  985. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-576986aaa25d6ad2.js +0 -1
  986. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-576986aaa25d6ad2.js +0 -1
  987. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-576986aaa25d6ad2.js +0 -1
  988. package/cli/app/.next-cli-build/static/chunks/app/api/providers/bulk-delete/route-576986aaa25d6ad2.js +0 -1
  989. package/cli/app/.next-cli-build/static/chunks/app/api/providers/client/route-576986aaa25d6ad2.js +0 -1
  990. package/cli/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-576986aaa25d6ad2.js +0 -1
  991. package/cli/app/.next-cli-build/static/chunks/app/api/providers/route-576986aaa25d6ad2.js +0 -1
  992. package/cli/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-576986aaa25d6ad2.js +0 -1
  993. package/cli/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-576986aaa25d6ad2.js +0 -1
  994. package/cli/app/.next-cli-build/static/chunks/app/api/providers/validate/route-576986aaa25d6ad2.js +0 -1
  995. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-576986aaa25d6ad2.js +0 -1
  996. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-576986aaa25d6ad2.js +0 -1
  997. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-576986aaa25d6ad2.js +0 -1
  998. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-576986aaa25d6ad2.js +0 -1
  999. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-576986aaa25d6ad2.js +0 -1
  1000. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-576986aaa25d6ad2.js +0 -1
  1001. package/cli/app/.next-cli-build/static/chunks/app/api/settings/database/route-576986aaa25d6ad2.js +0 -1
  1002. package/cli/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-576986aaa25d6ad2.js +0 -1
  1003. package/cli/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-576986aaa25d6ad2.js +0 -1
  1004. package/cli/app/.next-cli-build/static/chunks/app/api/settings/route-576986aaa25d6ad2.js +0 -1
  1005. package/cli/app/.next-cli-build/static/chunks/app/api/shutdown/route-576986aaa25d6ad2.js +0 -1
  1006. package/cli/app/.next-cli-build/static/chunks/app/api/tags/route-576986aaa25d6ad2.js +0 -1
  1007. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-576986aaa25d6ad2.js +0 -1
  1008. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-576986aaa25d6ad2.js +0 -1
  1009. package/cli/app/.next-cli-build/static/chunks/app/api/translator/load/route-576986aaa25d6ad2.js +0 -1
  1010. package/cli/app/.next-cli-build/static/chunks/app/api/translator/save/route-576986aaa25d6ad2.js +0 -1
  1011. package/cli/app/.next-cli-build/static/chunks/app/api/translator/send/route-576986aaa25d6ad2.js +0 -1
  1012. package/cli/app/.next-cli-build/static/chunks/app/api/translator/translate/route-576986aaa25d6ad2.js +0 -1
  1013. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-576986aaa25d6ad2.js +0 -1
  1014. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-576986aaa25d6ad2.js +0 -1
  1015. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-576986aaa25d6ad2.js +0 -1
  1016. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-576986aaa25d6ad2.js +0 -1
  1017. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-576986aaa25d6ad2.js +0 -1
  1018. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-576986aaa25d6ad2.js +0 -1
  1019. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-576986aaa25d6ad2.js +0 -1
  1020. package/cli/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-576986aaa25d6ad2.js +0 -1
  1021. package/cli/app/.next-cli-build/static/chunks/app/api/usage/aggregate/route-576986aaa25d6ad2.js +0 -1
  1022. package/cli/app/.next-cli-build/static/chunks/app/api/usage/chart/route-576986aaa25d6ad2.js +0 -1
  1023. package/cli/app/.next-cli-build/static/chunks/app/api/usage/history/route-576986aaa25d6ad2.js +0 -1
  1024. package/cli/app/.next-cli-build/static/chunks/app/api/usage/providers/route-576986aaa25d6ad2.js +0 -1
  1025. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-576986aaa25d6ad2.js +0 -1
  1026. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-576986aaa25d6ad2.js +0 -1
  1027. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stats/route-576986aaa25d6ad2.js +0 -1
  1028. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stream/route-576986aaa25d6ad2.js +0 -1
  1029. package/cli/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-576986aaa25d6ad2.js +0 -1
  1030. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-576986aaa25d6ad2.js +0 -1
  1031. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-576986aaa25d6ad2.js +0 -1
  1032. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-576986aaa25d6ad2.js +0 -1
  1033. package/cli/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-576986aaa25d6ad2.js +0 -1
  1034. package/cli/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-576986aaa25d6ad2.js +0 -1
  1035. package/cli/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-576986aaa25d6ad2.js +0 -1
  1036. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-576986aaa25d6ad2.js +0 -1
  1037. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/route-576986aaa25d6ad2.js +0 -1
  1038. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-576986aaa25d6ad2.js +0 -1
  1039. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-576986aaa25d6ad2.js +0 -1
  1040. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/route-576986aaa25d6ad2.js +0 -1
  1041. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-576986aaa25d6ad2.js +0 -1
  1042. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/route-576986aaa25d6ad2.js +0 -1
  1043. package/cli/app/.next-cli-build/static/chunks/app/api/v1/route-576986aaa25d6ad2.js +0 -1
  1044. package/cli/app/.next-cli-build/static/chunks/app/api/v1/search/route-576986aaa25d6ad2.js +0 -1
  1045. package/cli/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-576986aaa25d6ad2.js +0 -1
  1046. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-576986aaa25d6ad2.js +0 -1
  1047. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-576986aaa25d6ad2.js +0 -1
  1048. package/cli/app/.next-cli-build/static/chunks/app/api/version/route-576986aaa25d6ad2.js +0 -1
  1049. package/cli/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-576986aaa25d6ad2.js +0 -1
  1050. package/cli/app/.next-cli-build/static/chunks/app/api/version/update/route-576986aaa25d6ad2.js +0 -1
  1051. package/cli/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-576986aaa25d6ad2.js +0 -1
  1052. package/cli/app/.next-cli-build/static/chunks/app/page-576986aaa25d6ad2.js +0 -1
  1053. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-576986aaa25d6ad2.js +0 -1
  1054. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-576986aaa25d6ad2.js +0 -1
  1055. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-576986aaa25d6ad2.js +0 -1
  1056. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-576986aaa25d6ad2.js +0 -1
  1057. package/cli/app/.next-cli-build/static/css/6615840a16042b10.css +0 -1
  1058. /package/cli/app/.next-cli-build/static/{FGw-I-CGGpfd2854oBF1w → Jh26f1tVQgrKUbeB6pi5A}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- "use strict";exports.id=1396,exports.ids=[1396,2693],exports.modules={3662:(a,b,c)=>{c.d(b,{EQ:()=>f,LY:()=>d,O:()=>e,fh:()=>h,t2:()=>i,wf:()=>g});let d={400:{type:"invalid_request_error",code:"bad_request"},401:{type:"authentication_error",code:"invalid_api_key"},402:{type:"billing_error",code:"payment_required"},403:{type:"permission_error",code:"insufficient_quota"},404:{type:"invalid_request_error",code:"model_not_found"},406:{type:"invalid_request_error",code:"model_not_supported"},429:{type:"rate_limit_error",code:"rate_limit_exceeded"},500:{type:"server_error",code:"internal_server_error"},502:{type:"server_error",code:"bad_gateway"},503:{type:"server_error",code:"service_unavailable"},504:{type:"server_error",code:"gateway_timeout"}},e={400:"Bad request",401:"Invalid API key provided",402:"Payment required",403:"You exceeded your current quota",404:"Model not found",406:"Model not supported",429:"Rate limit exceeded",500:"Internal server error",502:"Bad gateway - upstream provider error",503:"Service temporarily unavailable",504:"Gateway timeout"},f={base:2e3,max:3e5,maxLevel:15},g=3e4,h=18e5,i=[{text:"no credentials",cooldownMs:12e4},{text:"request not allowed",cooldownMs:5e3},{text:"improperly formed request",cooldownMs:12e4},{text:"rate limit",backoff:!0},{text:"too many requests",backoff:!0},{text:"quota exceeded",backoff:!0},{text:"capacity",backoff:!0},{text:"overloaded",backoff:!0},{status:401,cooldownMs:12e4},{status:402,cooldownMs:12e4},{status:403,cooldownMs:12e4},{status:404,cooldownMs:12e4},{status:429,backoff:!0}]},39609:(a,b,c)=>{c.d(b,{proxyAwareFetch:()=>r});var d=c(47774),e=c(27910),f=c(41004);let g=globalThis.fetch,h=new Map,i=new Map,j=["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"],k=["8.8.8.8","8.8.4.4"];function l(a){return null==a?"":String(a).trim()}async function m(a){let b=i.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)),e=new b.Resolver;e.setServers(k);let g=d(e.resolve4.bind(e)),h=await g(a);return i.set(a,{ip:h[0],expiry:Date.now()+f.v1.dnsCacheTtlMs}),h[0]}catch(b){return console.warn(`[ProxyFetch] DNS resolve failed for ${a}:`,b.message),null}}function n(a,b){let c,d=l(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 o(a){let b=l(a);if(!b)return null;try{return new URL(b),b}catch{return`http://${b}`}}async function p(a){let b=o(a);if(!b)return null;if(!h.has(b)){h.size>=f.v1.proxyDispatchersMaxSize&&h.delete(h.keys().next().value);let{ProxyAgent:a}=await Promise.resolve().then(c.t.bind(c,47774,19));h.set(b,new a({uri:b}))}return h.get(b)}async function q(a,b,d){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:d.method||"POST",headers:{...d.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:e.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),d.body&&i.write("string"==typeof d.body?d.body:JSON.stringify(d.body)),i.end()}),g.on("error",f)})}async function r(a,b={},c=null){let e="string"==typeof a?a:a.toString(),f=l(c?.vercelRelayUrl);if(f){let a=new URL(e),c={...b.headers,"x-relay-target":`${a.protocol}//${a.host}`,"x-relay-path":`${a.pathname}${a.search}`};return g(f,{...b,headers:c})}let h=function(a,b){if(b?.enabled!==!0&&b?.connectionProxyEnabled!==!0)return null;let c=l(b?.url??b?.connectionProxyUrl);if(!c)return null;let d=l(b?.noProxy??b?.connectionNoProxy);return d&&n(a,d)?null:o(c)}(e,c),i=h?null:o(function(a){let b;if(n(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}(e)),k=h||i;if(function(a){try{let b=new URL(a).hostname;return j.some(a=>b.includes(a))}catch{return!1}}(e)){if(k)try{let c=await p(k);return await (0,d.hd)(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(e),c=await m(a.hostname);if(c)return await q(a,c,b)}catch(a){console.warn(`[ProxyFetch] MITM bypass failed: ${a.message}`)}}if(k)try{let c=await p(k);return await (0,d.hd)(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 g(a,b)}async function s(a,b={}){return r(a,b,null)}globalThis.fetch!==s&&(globalThis.fetch=s)},41004:(a,b,c)=>{c.d(b,{C8:()=>l,DR:()=>k,Uc:()=>h,cI:()=>j,eo:()=>i,gx:()=>d,pH:()=>g,v1:()=>e,xM:()=>f}),c(3662);let d={BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,NOT_ACCEPTABLE:406,REQUEST_TIMEOUT:408,RATE_LIMITED:429,SERVER_ERROR:500,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504},e={sessionTtlMs:72e5,sessionCleanupIntervalMs:18e5,dnsCacheTtlMs:3e5,proxyDispatchersMaxSize:20},f=6e4,g=6e4,h=64e3,i=32e3,j={429:{attempts:0,delayMs:0},502:{attempts:3,delayMs:3e3},503:{attempts:3,delayMs:2e3},504:{attempts:2,delayMs:3e3}};function k(a){return null==a?{attempts:0,delayMs:2e3}:"number"==typeof a?{attempts:a,delayMs:2e3}:{attempts:a.attempts||0,delayMs:null!=a.delayMs?a.delayMs:2e3}}let l=["Please write a 5-10 word title for the following conversation:"]},42693:(a,b,c)=>{c.d(b,{$O:()=>m,AUTOCLAW_WALLET_ENDPOINT:()=>k,Cw:()=>g,VR:()=>j,_V:()=>l,buildAutoClawWalletHeaders:()=>o,df:()=>e,dy:()=>h,p8:()=>n,xT:()=>i});var d=c(55511);let e="100003",f="https://autoglm-api.autoglm.ai",g=`${f}/autoclaw-proxy/proxy/autoclaw`,h=`${f}/userapi/overseasv1/google-oauth-url`,i=`${f}/userapi/oauth/google/callback`,j=`${f}/userapi/v1/refresh`,k=`${f}/agent-assetmgr/api/v2/wallets?biz_app_id=autoclaw`,l="1.10.0";function m(a){let b=`${e}&${a}&38d2391985e2369a5fb8227d8e6cd5e5`;return(0,d.createHash)("md5").update(b).digest("hex")}function n(a={}){let b=String(Math.floor(Date.now()/1e3));return{accept:"*/*","content-type":"application/json",origin:"https://autoclaw.z.ai",referer:"https://autoclaw.z.ai/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36","x-auth-appid":e,"x-auth-timestamp":b,"x-auth-sign":m(b),"x-product":"autoclaw","x-version":l,"x-tm":"web","x-channel":"official","x-client-type":"web","x-trace-id":(0,d.randomUUID)(),"x-lang":"zh-CN",...a}}function o(a){let b=String(a||"").replace(/^Bearer\s+/i,"");return n({authorization:`Bearer ${b}`})}},51396:(a,b,c)=>{c.d(b,{cO:()=>e.cO,$X:()=>p,$w:()=>e.$w});var d=c(55511),e=c(33342),f=c(82506);let g=["/userapi/overseasv1/google-oauth-login","/userapi/v1/refresh","/userapi/overseasv1/refresh"];async function h(a){let b;if(!a)return null;try{b=await a.evaluate(()=>{let a={};for(let b=0;b<localStorage.length;b++){let c=localStorage.key(b),d=localStorage.getItem(c);d&&(d.includes("eyJ")||c.toLowerCase().includes("token"))&&(a[c]=d)}return a})}catch{return null}if(!b)return null;let c="",d="";for(let[a,e]of Object.entries(b)){let b=String(e).replace(/^Bearer\s+/i,"");b.startsWith("eyJ")&&(a.toLowerCase().includes("refresh")?d=b:c||(c=b))}return c?{accessToken:c,refreshToken:d}:null}var i=c(39609),j=c(42693);async function k(a,b){let c=await (0,i.proxyAwareFetch)(j.dy,{method:"POST",headers:(0,j.p8)(),body:JSON.stringify({device_id:a,source_id:"web",navigate_uri:j.xT,client_type:"web"})},b);if(!c.ok)throw Error(`AutoClaw oauth-url request failed (HTTP ${c.status})`);let d=await c.json();if(d?.code!==0||!d?.data?.oauth_url)throw Error(`AutoClaw oauth-url response invalid: ${JSON.stringify(d).slice(0,200)}`);return{oauthUrl:d.data.oauth_url,state:d.data.state||""}}async function l(a,b){try{let c=await (0,i.proxyAwareFetch)(j.AUTOCLAW_WALLET_ENDPOINT,{method:"GET",headers:(0,j.buildAutoClawWalletHeaders)(a)},b);if(!c.ok)return null;let d=await c.json();if(d?.code===0)return d.data?.total_balance??null}catch{}return null}async function m({tokens:a,email:b,deviceId:d,balance:e}){let{createProviderConnection:f}=await Promise.resolve().then(c.bind(c,71998)),g={provider:"autoclaw",authType:"oauth",accessToken:a.accessToken,refreshToken:a.refreshToken||"",email:b,displayName:b.split("@")[0],providerSpecificData:{authMethod:"oauth",deviceId:d||"",loginEmail:b,balance:e??null,automation:"gsuite-bulk"},expiresAt:new Date(Date.now()+864e5).toISOString(),testStatus:"active"};return{connection:await f(g)}}async function n(a){let{launchBulkImportBrowser:b}=await c.e(5949).then(c.bind(c,75949));return b({engine:a?.engine||"chromium"})}class o extends e.Q6{constructor({saveConnection:a=m,browserLauncher:b=n,storageName:c="autoclaw-bulk-import"}={}){super({browserLauncher:b,storageName:c}),this.saveConnection=a}async processAccount(a,b,c){let h;if(a.cancelRequested||!a.browser)return void this.finalizeAccount(b,"cancelled",{error:"Job cancelled"});let{context:i,page:j}=await (0,e.go)(a.browser,b.proxyUrl);b.runtimeSession={context:i,page:j};let l=(0,d.randomUUID)(),m=b?.proxyUrl?{enabled:!0,url:b.proxyUrl}:null;try{this.setAccountStep(b,"preparing_worker",`Worker ${c} requesting AutoClaw OAuth URL`),await this.persistJobSnapshot(a,{forcePreview:!0}),{oauthUrl:h}=await k(l,m)}catch(c){this.finalizeAccount(b,"failed",{error:`Failed to get AutoClaw OAuth URL: ${c.message}`,step:"failed",message:c.message}),b.runtimeSession=null,await i.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0});return}let n=function(a,b,{timeoutMs:c=18e4}={}){let d,e,f=new Promise((a,b)=>{d=a,e=b}),h=!1,i=new Set,j=new Map,k=setTimeout(()=>{l(null,Error("Timed out waiting for AutoClaw tokens"))},c);function l(a,b=null){if(!h){for(let a of(h=!0,clearTimeout(k),j.values()))for(let b of a)try{b()}catch{}j.clear(),b?e(b):d(a)}}async function m(a){var b;let c;if(h||!a)return;let d="";try{d=a.url()||""}catch{return}if(!((b=d)&&g.some(a=>b.includes(a))))return;try{c=await a.json()}catch{return}let e=function(a){if(!a||"object"!=typeof a)return null;let b=a.data&&"object"==typeof a.data?a.data:a,c=b.access_token||b.accessToken;return c?{accessToken:String(c).replace(/^Bearer\s+/i,""),refreshToken:String(b.refresh_token||b.refreshToken||"").replace(/^Bearer\s+/i,"")}:null}(c);e&&l(e)}function n(a,b){if(!a||i.has(a))return;i.add(a);let c=a=>{m(a)};a.on("response",c),b.push(()=>{a.off("response",c)})}function o(a,b){if(h||j.has(a))return;let c=[];j.set(a,c);let d=a=>n(a,c);a.on("page",d),c.push(()=>a.off("page",d)),b&&n(b,c)}return o(a,b),f.rebind=({context:a,page:b}={})=>{a&&o(a,b)},f}(i,j,{timeoutMs:18e4});try{let c=await (0,f.rk)({page:j,authUrl:h,email:b.email,password:b.password,successPromise:n,shortTimeoutMs:18e4,serviceLabel:"AutoClaw",openingStep:"opening_autoclaw_login",openingMessage:"Opening AutoClaw Google OAuth page",successStep:"autoclaw_tokens_received",successMessage:"AutoClaw tokens intercepted",onStep:(c,d)=>{this.setAccountStep(b,c,d),this.persistJobSnapshot(a,{forcePreview:!1})}});if("success"===c.status){let d={accessToken:c.accessToken,refreshToken:c.refreshToken||""};if(!d.accessToken)throw Error("AutoClaw automation succeeded but no access token captured");await this.finishSuccess(a,b,d,l,m),b.runtimeSession=null,await i.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0});return}if("needs_manual"===c.status){b.manualSession={context:i,page:j,opened:!1,openedAt:null},this.setAccountStep(b,"awaiting_manual","Waiting for manual completion"),this.finalizeAccount(b,"needs_manual",{error:c.error,step:"awaiting_manual",message:c.error}),await this.persistJobSnapshot(a,{forcePreview:!0}),await this.runAutoClawManualFollowup(a,b,i,j,n,l,m);return}let d=c.status?.startsWith("failed")?c.status:"failed";this.finalizeAccount(b,d,{error:c.error||"AutoClaw Google automation failed.",step:d,message:c.error||"AutoClaw Google automation failed."}),b.runtimeSession=null,await i.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0})}catch(c){this.finalizeAccount(b,"failed",{error:c.message||"Unexpected AutoClaw bulk import failure.",step:"failed",message:c.message||"Unexpected AutoClaw bulk import failure."}),b.runtimeSession=null,await i.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0})}}async finishSuccess(a,b,c,d,e){this.setAccountStep(b,"fetching_balance","Fetching AutoClaw balance"),await this.persistJobSnapshot(a,{forcePreview:!0});let f=await l(c.accessToken,e);this.setAccountStep(b,"saving_connection","Saving AutoClaw connection to database"),await this.persistJobSnapshot(a,{forcePreview:!0});let{connection:g}=await this.saveConnection({tokens:c,email:b.email,deviceId:d,balance:f}),h=null!=f?` (${f} pts)`:"";this.finalizeAccount(b,"success",{connectionId:g.id,step:"connection_saved",message:`AutoClaw connection saved successfully${h}`})}async runAutoClawManualFollowup(a,b,c,d,e,f,g){let i=(async()=>{let j=async()=>{let a=b.manualSession,d=a?.context||c,e=a?.headedBrowser||null;d&&await d.close().catch(()=>null),e&&await e.close().catch(()=>null)};try{let c=null;try{c=await e}catch{c=await h(b.manualSession?.page||d)}if(a.cancelRequested){this.finalizeAccount(b,"cancelled",{error:"Job cancelled",step:"cancelled",message:"Job cancelled while waiting for manual completion"}),await this.persistJobSnapshot(a,{forcePreview:!0});return}if(!c?.accessToken)throw Error("Manual flow finished but no AutoClaw token captured");await this.finishSuccess(a,b,c,f,g),await this.persistJobSnapshot(a,{forcePreview:!0})}catch(c){a.cancelRequested?this.finalizeAccount(b,"cancelled",{error:"Job cancelled",step:"cancelled",message:"Job cancelled while waiting for manual completion"}):this.finalizeAccount(b,"failed",{error:c.message||"Manual assist flow failed.",step:"failed",message:c.message||"Manual assist flow failed."}),await this.persistJobSnapshot(a,{forcePreview:!0})}finally{await j(),b.manualSession=null,b.runtimeSession=null,a.manualFollowups.delete(i),await this.persistJobSnapshot(a,{forcePreview:!0})}})();a.manualFollowups.add(i)}}function p(){return(!globalThis.__autoclawBulkImportSingleton&&(globalThis.__autoclawBulkImportSingleton={manager:new o}),globalThis.__autoclawBulkImportSingleton).manager}}};
1
+ "use strict";exports.id=1396,exports.ids=[1396,2693],exports.modules={3662:(a,b,c)=>{c.d(b,{EQ:()=>f,LY:()=>d,O:()=>e,fh:()=>h,t2:()=>i,wf:()=>g});let d={400:{type:"invalid_request_error",code:"bad_request"},401:{type:"authentication_error",code:"invalid_api_key"},402:{type:"billing_error",code:"payment_required"},403:{type:"permission_error",code:"insufficient_quota"},404:{type:"invalid_request_error",code:"model_not_found"},406:{type:"invalid_request_error",code:"model_not_supported"},429:{type:"rate_limit_error",code:"rate_limit_exceeded"},500:{type:"server_error",code:"internal_server_error"},502:{type:"server_error",code:"bad_gateway"},503:{type:"server_error",code:"service_unavailable"},504:{type:"server_error",code:"gateway_timeout"}},e={400:"Bad request",401:"Invalid API key provided",402:"Payment required",403:"You exceeded your current quota",404:"Model not found",406:"Model not supported",429:"Rate limit exceeded",500:"Internal server error",502:"Bad gateway - upstream provider error",503:"Service temporarily unavailable",504:"Gateway timeout"},f={base:2e3,max:3e5,maxLevel:15},g=3e4,h=18e5,i=[{text:"no credentials",cooldownMs:12e4},{text:"request not allowed",cooldownMs:5e3},{text:"improperly formed request",cooldownMs:12e4},{text:"rate limit",backoff:!0},{text:"too many requests",backoff:!0},{text:"quota exceeded",backoff:!0},{text:"capacity",backoff:!0},{text:"overloaded",backoff:!0},{status:401,cooldownMs:12e4},{status:402,cooldownMs:12e4},{status:403,cooldownMs:12e4},{status:404,cooldownMs:12e4},{status:429,backoff:!0}]},39609:(a,b,c)=>{c.d(b,{proxyAwareFetch:()=>r});var d=c(47774),e=c(27910),f=c(41004);let g=globalThis.fetch,h=new Map,i=new Map,j=["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"],k=["8.8.8.8","8.8.4.4"];function l(a){return null==a?"":String(a).trim()}async function m(a){let b=i.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)),e=new b.Resolver;e.setServers(k);let g=d(e.resolve4.bind(e)),h=await g(a);return i.set(a,{ip:h[0],expiry:Date.now()+f.v1.dnsCacheTtlMs}),h[0]}catch(b){return console.warn(`[ProxyFetch] DNS resolve failed for ${a}:`,b.message),null}}function n(a,b){let c,d=l(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 o(a){let b=l(a);if(!b)return null;try{return new URL(b),b}catch{return`http://${b}`}}async function p(a){let b=o(a);if(!b)return null;if(!h.has(b)){h.size>=f.v1.proxyDispatchersMaxSize&&h.delete(h.keys().next().value);let{ProxyAgent:a}=await Promise.resolve().then(c.t.bind(c,47774,19));h.set(b,new a({uri:b}))}return h.get(b)}async function q(a,b,d){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:d.method||"POST",headers:{...d.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:e.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),d.body&&i.write("string"==typeof d.body?d.body:JSON.stringify(d.body)),i.end()}),g.on("error",f)})}async function r(a,b={},c=null){let e="string"==typeof a?a:a.toString(),f=l(c?.vercelRelayUrl);if(f){let a=new URL(e),c={...b.headers,"x-relay-target":`${a.protocol}//${a.host}`,"x-relay-path":`${a.pathname}${a.search}`};return g(f,{...b,headers:c})}let h=function(a,b){if(b?.enabled!==!0&&b?.connectionProxyEnabled!==!0)return null;let c=l(b?.url??b?.connectionProxyUrl);if(!c)return null;let d=l(b?.noProxy??b?.connectionNoProxy);return d&&n(a,d)?null:o(c)}(e,c),i=h?null:o(function(a){let b;if(n(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}(e)),k=h||i;if(function(a){try{let b=new URL(a).hostname;return j.some(a=>b.includes(a))}catch{return!1}}(e)){if(k)try{let c=await p(k);return await (0,d.hd)(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(e),c=await m(a.hostname);if(c)return await q(a,c,b)}catch(a){console.warn(`[ProxyFetch] MITM bypass failed: ${a.message}`)}}if(k)try{let c=await p(k);return await (0,d.hd)(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 g(a,b)}async function s(a,b={}){return r(a,b,null)}globalThis.fetch!==s&&(globalThis.fetch=s)},41004:(a,b,c)=>{c.d(b,{C8:()=>l,DR:()=>k,Uc:()=>h,cI:()=>j,eo:()=>i,gx:()=>d,pH:()=>g,v1:()=>e,xM:()=>f}),c(3662);let d={BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,NOT_ACCEPTABLE:406,REQUEST_TIMEOUT:408,RATE_LIMITED:429,SERVER_ERROR:500,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504},e={sessionTtlMs:72e5,sessionCleanupIntervalMs:18e5,dnsCacheTtlMs:3e5,proxyDispatchersMaxSize:20},f=6e4,g=6e4,h=64e3,i=32e3,j={429:{attempts:0,delayMs:0},502:{attempts:3,delayMs:3e3},503:{attempts:3,delayMs:2e3},504:{attempts:2,delayMs:3e3}};function k(a){return null==a?{attempts:0,delayMs:2e3}:"number"==typeof a?{attempts:a,delayMs:2e3}:{attempts:a.attempts||0,delayMs:null!=a.delayMs?a.delayMs:2e3}}let l=["Please write a 5-10 word title for the following conversation:"]},42693:(a,b,c)=>{c.d(b,{$O:()=>m,AUTOCLAW_WALLET_ENDPOINT:()=>k,Cw:()=>g,VR:()=>j,_V:()=>l,buildAutoClawWalletHeaders:()=>o,df:()=>e,dy:()=>h,p8:()=>n,xT:()=>i});var d=c(55511);let e="100003",f="https://autoglm-api.autoglm.ai",g=`${f}/autoclaw-proxy/proxy/autoclaw`,h=`${f}/userapi/overseasv1/google-oauth-url`,i=`${f}/userapi/oauth/google/callback`,j=`${f}/userapi/v1/refresh`,k=`${f}/agent-assetmgr/api/v2/wallets?biz_app_id=autoclaw`,l="1.10.0";function m(a){let b=`${e}&${a}&38d2391985e2369a5fb8227d8e6cd5e5`;return(0,d.createHash)("md5").update(b).digest("hex")}function n(a={}){let b=String(Math.floor(Date.now()/1e3));return{accept:"*/*","content-type":"application/json",origin:"https://autoclaw.z.ai",referer:"https://autoclaw.z.ai/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36","x-auth-appid":e,"x-auth-timestamp":b,"x-auth-sign":m(b),"x-product":"autoclaw","x-version":l,"x-tm":"web","x-channel":"official","x-client-type":"web","x-trace-id":(0,d.randomUUID)(),"x-lang":"zh-CN",...a}}function o(a){let b=String(a||"").replace(/^Bearer\s+/i,"");return n({authorization:`Bearer ${b}`})}},51396:(a,b,c)=>{c.d(b,{cO:()=>e.cO,$X:()=>p,$w:()=>e.$w});var d=c(55511),e=c(53041),f=c(82506);let g=["/userapi/overseasv1/google-oauth-login","/userapi/v1/refresh","/userapi/overseasv1/refresh"];async function h(a){let b;if(!a)return null;try{b=await a.evaluate(()=>{let a={};for(let b=0;b<localStorage.length;b++){let c=localStorage.key(b),d=localStorage.getItem(c);d&&(d.includes("eyJ")||c.toLowerCase().includes("token"))&&(a[c]=d)}return a})}catch{return null}if(!b)return null;let c="",d="";for(let[a,e]of Object.entries(b)){let b=String(e).replace(/^Bearer\s+/i,"");b.startsWith("eyJ")&&(a.toLowerCase().includes("refresh")?d=b:c||(c=b))}return c?{accessToken:c,refreshToken:d}:null}var i=c(39609),j=c(42693);async function k(a,b){let c=await (0,i.proxyAwareFetch)(j.dy,{method:"POST",headers:(0,j.p8)(),body:JSON.stringify({device_id:a,source_id:"web",navigate_uri:j.xT,client_type:"web"})},b);if(!c.ok)throw Error(`AutoClaw oauth-url request failed (HTTP ${c.status})`);let d=await c.json();if(d?.code!==0||!d?.data?.oauth_url)throw Error(`AutoClaw oauth-url response invalid: ${JSON.stringify(d).slice(0,200)}`);return{oauthUrl:d.data.oauth_url,state:d.data.state||""}}async function l(a,b){try{let c=await (0,i.proxyAwareFetch)(j.AUTOCLAW_WALLET_ENDPOINT,{method:"GET",headers:(0,j.buildAutoClawWalletHeaders)(a)},b);if(!c.ok)return null;let d=await c.json();if(d?.code===0)return d.data?.total_balance??null}catch{}return null}async function m({tokens:a,email:b,deviceId:d,balance:e}){let{createProviderConnection:f}=await Promise.resolve().then(c.bind(c,71998)),g={provider:"autoclaw",authType:"oauth",accessToken:a.accessToken,refreshToken:a.refreshToken||"",email:b,displayName:b.split("@")[0],providerSpecificData:{authMethod:"oauth",deviceId:d||"",loginEmail:b,balance:e??null,automation:"gsuite-bulk"},expiresAt:new Date(Date.now()+864e5).toISOString(),testStatus:"active"};return{connection:await f(g)}}async function n(a){let{launchBulkImportBrowser:b}=await c.e(5949).then(c.bind(c,75949));return b({engine:a?.engine||"chromium"})}class o extends e.Q6{constructor({saveConnection:a=m,browserLauncher:b=n,storageName:c="autoclaw-bulk-import"}={}){super({browserLauncher:b,storageName:c}),this.saveConnection=a}async processAccount(a,b,c){let h;if(a.cancelRequested||!a.browser)return void this.finalizeAccount(b,"cancelled",{error:"Job cancelled"});let{context:i,page:j}=await (0,e.go)(a.browser,b.proxyUrl);b.runtimeSession={context:i,page:j};let l=(0,d.randomUUID)(),m=b?.proxyUrl?{enabled:!0,url:b.proxyUrl}:null;try{this.setAccountStep(b,"preparing_worker",`Worker ${c} requesting AutoClaw OAuth URL`),await this.persistJobSnapshot(a,{forcePreview:!0}),{oauthUrl:h}=await k(l,m)}catch(c){this.finalizeAccount(b,"failed",{error:`Failed to get AutoClaw OAuth URL: ${c.message}`,step:"failed",message:c.message}),b.runtimeSession=null,await i.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0});return}let n=function(a,b,{timeoutMs:c=18e4}={}){let d,e,f=new Promise((a,b)=>{d=a,e=b}),h=!1,i=new Set,j=new Map,k=setTimeout(()=>{l(null,Error("Timed out waiting for AutoClaw tokens"))},c);function l(a,b=null){if(!h){for(let a of(h=!0,clearTimeout(k),j.values()))for(let b of a)try{b()}catch{}j.clear(),b?e(b):d(a)}}async function m(a){var b;let c;if(h||!a)return;let d="";try{d=a.url()||""}catch{return}if(!((b=d)&&g.some(a=>b.includes(a))))return;try{c=await a.json()}catch{return}let e=function(a){if(!a||"object"!=typeof a)return null;let b=a.data&&"object"==typeof a.data?a.data:a,c=b.access_token||b.accessToken;return c?{accessToken:String(c).replace(/^Bearer\s+/i,""),refreshToken:String(b.refresh_token||b.refreshToken||"").replace(/^Bearer\s+/i,"")}:null}(c);e&&l(e)}function n(a,b){if(!a||i.has(a))return;i.add(a);let c=a=>{m(a)};a.on("response",c),b.push(()=>{a.off("response",c)})}function o(a,b){if(h||j.has(a))return;let c=[];j.set(a,c);let d=a=>n(a,c);a.on("page",d),c.push(()=>a.off("page",d)),b&&n(b,c)}return o(a,b),f.rebind=({context:a,page:b}={})=>{a&&o(a,b)},f}(i,j,{timeoutMs:18e4});try{let c=await (0,f.rk)({page:j,authUrl:h,email:b.email,password:b.password,successPromise:n,shortTimeoutMs:18e4,serviceLabel:"AutoClaw",openingStep:"opening_autoclaw_login",openingMessage:"Opening AutoClaw Google OAuth page",successStep:"autoclaw_tokens_received",successMessage:"AutoClaw tokens intercepted",onStep:(c,d)=>{this.setAccountStep(b,c,d),this.persistJobSnapshot(a,{forcePreview:!1})}});if("success"===c.status){let d={accessToken:c.accessToken,refreshToken:c.refreshToken||""};if(!d.accessToken)throw Error("AutoClaw automation succeeded but no access token captured");await this.finishSuccess(a,b,d,l,m),b.runtimeSession=null,await i.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0});return}if("needs_manual"===c.status){b.manualSession={context:i,page:j,opened:!1,openedAt:null},this.setAccountStep(b,"awaiting_manual","Waiting for manual completion"),this.finalizeAccount(b,"needs_manual",{error:c.error,step:"awaiting_manual",message:c.error}),await this.persistJobSnapshot(a,{forcePreview:!0}),await this.runAutoClawManualFollowup(a,b,i,j,n,l,m);return}let d=c.status?.startsWith("failed")?c.status:"failed";this.finalizeAccount(b,d,{error:c.error||"AutoClaw Google automation failed.",step:d,message:c.error||"AutoClaw Google automation failed."}),b.runtimeSession=null,await i.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0})}catch(c){this.finalizeAccount(b,"failed",{error:c.message||"Unexpected AutoClaw bulk import failure.",step:"failed",message:c.message||"Unexpected AutoClaw bulk import failure."}),b.runtimeSession=null,await i.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0})}}async finishSuccess(a,b,c,d,e){this.setAccountStep(b,"fetching_balance","Fetching AutoClaw balance"),await this.persistJobSnapshot(a,{forcePreview:!0});let f=await l(c.accessToken,e);this.setAccountStep(b,"saving_connection","Saving AutoClaw connection to database"),await this.persistJobSnapshot(a,{forcePreview:!0});let{connection:g}=await this.saveConnection({tokens:c,email:b.email,deviceId:d,balance:f}),h=null!=f?` (${f} pts)`:"";this.finalizeAccount(b,"success",{connectionId:g.id,step:"connection_saved",message:`AutoClaw connection saved successfully${h}`})}async runAutoClawManualFollowup(a,b,c,d,e,f,g){let i=(async()=>{let j=async()=>{let a=b.manualSession,d=a?.context||c,e=a?.headedBrowser||null;d&&await d.close().catch(()=>null),e&&await e.close().catch(()=>null)};try{let c=null;try{c=await e}catch{c=await h(b.manualSession?.page||d)}if(a.cancelRequested){this.finalizeAccount(b,"cancelled",{error:"Job cancelled",step:"cancelled",message:"Job cancelled while waiting for manual completion"}),await this.persistJobSnapshot(a,{forcePreview:!0});return}if(!c?.accessToken)throw Error("Manual flow finished but no AutoClaw token captured");await this.finishSuccess(a,b,c,f,g),await this.persistJobSnapshot(a,{forcePreview:!0})}catch(c){a.cancelRequested?this.finalizeAccount(b,"cancelled",{error:"Job cancelled",step:"cancelled",message:"Job cancelled while waiting for manual completion"}):this.finalizeAccount(b,"failed",{error:c.message||"Manual assist flow failed.",step:"failed",message:c.message||"Manual assist flow failed."}),await this.persistJobSnapshot(a,{forcePreview:!0})}finally{await j(),b.manualSession=null,b.runtimeSession=null,a.manualFollowups.delete(i),await this.persistJobSnapshot(a,{forcePreview:!0})}})();a.manualFollowups.add(i)}}function p(){return(!globalThis.__autoclawBulkImportSingleton&&(globalThis.__autoclawBulkImportSingleton={manager:new o}),globalThis.__autoclawBulkImportSingleton).manager}}};
@@ -7,7 +7,7 @@ exports.id=1939,exports.ids=[1939],exports.modules={644:(a,b,c)=>{"use strict";f
7
7
  provider=excluded.provider, authType=excluded.authType, name=excluded.name,
8
8
  email=excluded.email, priority=excluded.priority, isActive=excluded.isActive,
9
9
  data=excluded.data, updatedAt=excluded.updatedAt`,[c.id,c.provider,c.authType,c.name,c.email,c.priority,c.isActive,c.data,c.createdAt,c.updatedAt])}async function j(a={}){let b=await (0,e.c)(),c=[],d=[];a.provider&&(c.push("provider = ?"),d.push(a.provider)),void 0!==a.isActive&&(c.push("isActive = ?"),d.push(+!!a.isActive));let f=`SELECT * FROM providerConnections${c.length?` WHERE ${c.join(" AND ")}`:""}`,g=b.all(f,d).map(h);return g.sort((a,b)=>(a.priority||999)-(b.priority||999)),g}async function k(a){return h((await (0,e.c)()).get("SELECT * FROM providerConnections WHERE id = ?",[a]))}function l(a,b){let c=a.all("SELECT * FROM providerConnections WHERE provider = ?",[b]).map(h);c.sort((a,b)=>{let c=(a.priority||0)-(b.priority||0);return 0!==c?c:new Date(b.updatedAt||0)-new Date(a.updatedAt||0)}),c.forEach((b,c)=>{a.run("UPDATE providerConnections SET priority = ? WHERE id = ?",[c+1,b.id])})}async function m(a){let b,c=await (0,e.c)(),f=new Date().toISOString();return c.transaction(()=>{let e=c.all("SELECT * FROM providerConnections WHERE provider = ?",[a.provider]).map(h),j=null;if("oauth"===a.authType&&a.email){let b=a.providerSpecificData?.chatgptAccountId;j=e.find(c=>{if("oauth"!==c.authType||c.email!==a.email)return!1;let d=c.providerSpecificData?.chatgptAccountId;return!b||!d||b===d})}else"apikey"===a.authType&&a.name&&(j=e.find(b=>"apikey"===b.authType&&b.name===a.name));if(j){let d={...j,...a,updatedAt:f};i(c,d),b=d;return}let k=a.name||null;k||"oauth"!==a.authType&&"access_token"!==a.authType||(k=a.email||`Account ${e.length+1}`);let m=a.priority;m||(m=e.reduce((a,b)=>Math.max(a,b.priority||0),0)+1);let n={id:(0,d.A)(),provider:a.provider,authType:a.authType||"oauth",name:k,priority:m,isActive:void 0===a.isActive||a.isActive,createdAt:f,updatedAt:f};for(let b of g)void 0!==a[b]&&null!==a[b]&&(n[b]=a[b]);a.providerSpecificData&&Object.keys(a.providerSpecificData).length>0&&(n.providerSpecificData=a.providerSpecificData),void 0!==a.email&&(n.email=a.email),i(c,n),l(c,a.provider),b=n}),b}async function n(a,b){let c,d=await (0,e.c)();return d.transaction(()=>{let e=d.get("SELECT * FROM providerConnections WHERE id = ?",[a]);if(!e){c=null;return}let f=h(e),g={...f,...b,updatedAt:new Date().toISOString()};i(d,g),void 0!==b.priority&&l(d,f.provider),c=g}),c}async function o(a){let b=await (0,e.c)(),c=!1;return b.transaction(()=>{let d=b.get("SELECT provider FROM providerConnections WHERE id = ?",[a]);d&&(b.run("DELETE FROM providerConnections WHERE id = ?",[a]),l(b,d.provider),c=!0)}),c}async function p(a){let b=await (0,e.c)(),c=b.get("SELECT COUNT(*) AS n FROM providerConnections WHERE provider = ?",[a]);return b.run("DELETE FROM providerConnections WHERE provider = ?",[a]),c?.n||0}async function q(a){let b=await (0,e.c)();b.transaction(()=>l(b,a))}async function r(){let a=await (0,e.c)(),b=["displayName","email","globalPriority","defaultModel","accessToken","refreshToken","expiresAt","tokenType","scope","projectId","apiKey","testStatus","lastTested","lastError","lastErrorAt","rateLimitedUntil","expiresIn","consecutiveUseCount"],c=0;return a.transaction(()=>{for(let d of a.all("SELECT * FROM providerConnections")){let e=h(d),f=!1;for(let a of b)(null===e[a]||void 0===e[a])&&a in e&&(delete e[a],c++,f=!0);e.providerSpecificData&&0===Object.keys(e.providerSpecificData).length&&(delete e.providerSpecificData,c++,f=!0),f&&i(a,e)}}),c}},9460:(a,b,c)=>{"use strict";c.d(b,{L9:()=>r,OM:()=>j,S8:()=>o,fv:()=>l,getMitmAlias:()=>q,o5:()=>k,uL:()=>p,uv:()=>n});var d=c(36366),e=c(644),f=c(22846);let g=(0,f.U)("modelAliases"),h=(0,f.U)("customModels"),i=(0,f.U)("mitmAlias");async function j(){return await g.getAll()}async function k(a,b){await g.set(a,b)}async function l(a){await g.remove(a)}function m(a,b,c){return`${a}|${b}|${c}`}async function n(){return Object.values(await h.getAll())}async function o({providerAlias:a,id:b,type:c="llm",name:f}){let g=m(a,b,c),h=await (0,d.c)(),i=!1;return h.transaction(()=>{if(h.get("SELECT 1 FROM kv WHERE scope = 'customModels' AND key = ?",[g]))return;let d=(0,e.s)({providerAlias:a,id:b,type:c,name:f||b});h.run("INSERT INTO kv(scope, key, value) VALUES('customModels', ?, ?)",[g,d]),i=!0}),i}async function p({providerAlias:a,id:b,type:c="llm"}){await h.remove(m(a,b,c))}async function q(a){return a?await i.get(a)||{}:await i.getAll()}async function r(a,b){await i.set(a,b||{})}},22846:(a,b,c)=>{"use strict";c.d(b,{U:()=>f});var d=c(36366),e=c(644);function f(a){return{async get(b,c=null){let f=(await (0,d.c)()).get("SELECT value FROM kv WHERE scope = ? AND key = ?",[a,b]);return f?(0,e.q)(f.value,c):c},async getAll(){let b=(await (0,d.c)()).all("SELECT key, value FROM kv WHERE scope = ?",[a]),c={};for(let a of b)c[a.key]=(0,e.q)(a.value);return c},async set(b,c){(await (0,d.c)()).run("INSERT INTO kv(scope, key, value) VALUES(?, ?, ?) ON CONFLICT(scope, key) DO UPDATE SET value = excluded.value",[a,b,(0,e.s)(c)])},async setMany(b){let c=await (0,d.c)();c.transaction(()=>{for(let[d,f]of Object.entries(b))c.run("INSERT INTO kv(scope, key, value) VALUES(?, ?, ?) ON CONFLICT(scope, key) DO UPDATE SET value = excluded.value",[a,d,(0,e.s)(f)])})},async remove(b){(await (0,d.c)()).run("DELETE FROM kv WHERE scope = ? AND key = ?",[a,b])},async clear(){(await (0,d.c)()).run("DELETE FROM kv WHERE scope = ?",[a])}}}},26556:(a,b,c)=>{"use strict";c.d(b,{KK:()=>f,LF:()=>h,tV:()=>i});var d=c(36366),e=c(644);async function f(a,b,c){if(!a)return;let f=await (0,d.c)(),g=new Date().toISOString();f.run(`INSERT INTO quotaCache(connectionId, provider, data, fetchedAt) VALUES(?, ?, ?, ?)
10
- ON CONFLICT(connectionId) DO UPDATE SET provider = excluded.provider, data = excluded.data, fetchedAt = excluded.fetchedAt`,[a,b||"",(0,e.s)(c||{}),g])}function g(a){return a?{connectionId:a.connectionId,provider:a.provider,fetchedAt:a.fetchedAt,usage:(0,e.q)(a.data,{})}:null}async function h(a){return a?g((await (0,d.c)()).get("SELECT connectionId, provider, data, fetchedAt FROM quotaCache WHERE connectionId = ?",[a])):null}async function i(a=null){let b=await (0,d.c)();return(a?b.all("SELECT connectionId, provider, data, fetchedAt FROM quotaCache WHERE provider = ?",[a]):b.all("SELECT connectionId, provider, data, fetchedAt FROM quotaCache")).map(g)}},31763:(a,b,c)=>{"use strict";c.d(b,{KQ:()=>n,AL:()=>m,HG:()=>l,Or:()=>o,Jh:()=>p});var d=c(76760),e=c.n(d),f=c(73024),g=c.n(f),h=c(49120),i=c(48161),j=c.n(i);let k="9router",l=e().join(h.DATA_DIR,"db"),m=e().join(l,"data.sqlite"),n=e().join(l,"backups"),o={main:e().join(h.DATA_DIR,"db.json"),usage:e().join(h.DATA_DIR,"usage.json"),disabled:e().join(h.DATA_DIR,"disabledModels.json"),details:e().join(h.DATA_DIR,"request-details.json")};function p(){for(let a of(!function(a){if(!a)return;let b=e().join(a,".migrated-from-9router");if(g().existsSync(b)||process.env.DATA_DIR&&process.env.DATA_DIR!==a)return;let c="win32"===process.platform?e().join(process.env.APPDATA||e().join(j().homedir(),"AppData","Roaming"),k):e().join(j().homedir(),`.${k}`);if(g().existsSync(c)){if(g().existsSync(a)){try{g().mkdirSync(a,{recursive:!0}),g().writeFileSync(b,new Date().toISOString())}catch{}return}try{console.log(`[migrate] Copying legacy data ${c} → ${a}`),g().mkdirSync(e().dirname(a),{recursive:!0}),g().cpSync(c,a,{recursive:!0}),g().writeFileSync(b,new Date().toISOString()),console.log(`[migrate] Done. Legacy data kept at ${c} as backup.`)}catch(b){console.warn(`[migrate] Failed to migrate ${c} → ${a}: ${b.message}. Starting fresh.`)}}}(h.DATA_DIR),[h.DATA_DIR,l,n]))g().existsSync(a)||g().mkdirSync(a,{recursive:!0})}},36366:(a,b,c)=>{"use strict";c.d(b,{c:()=>k});var d=c(31763);global._dbAdapter||(global._dbAdapter={instance:null,initPromise:null,logged:!1});let e=global._dbAdapter;async function f(){if(!process.versions.bun)return null;try{let{createBunSqliteAdapter:a}=await c.e(4739).then(c.bind(c,24739));return await a(d.AL)}catch(a){return console.warn(`[DB] bun:sqlite unavailable: ${a.message}`),null}}async function g(){if(process.versions.bun)return null;try{let{createBetterSqliteAdapter:a}=await c.e(5258).then(c.bind(c,25258));return a(d.AL)}catch(a){return console.warn(`[DB] better-sqlite3 unavailable: ${a.message}`),null}}async function h(){if(process.versions.bun)return null;let[a,b]=process.versions.node.split(".").map(Number);if(a<22||22===a&&b<5)return null;try{let{createNodeSqliteAdapter:a}=await c.e(8520).then(c.bind(c,88520));return await a(d.AL)}catch(a){return console.warn(`[DB] node:sqlite unavailable: ${a.message}`),null}}async function i(){try{let{createSqlJsAdapter:a}=await c.e(3593).then(c.bind(c,53593));return await a(d.AL)}catch(a){return console.warn(`[DB] sql.js unavailable: ${a.message}`),null}}async function j(){(0,d.Jh)();let a=await f();if(a||(a=await h()),a||(a=await g()),a||(a=await i()),!a)throw Error("[DB] No SQLite driver available (bun/node/better/sql.js all failed)");e.logged||(console.log(`[DB] Driver: ${a.driver} | file: ${d.AL}`),e.logged=!0);let{runMigrationOnce:b}=await c.e(5217).then(c.bind(c,45217));await b(a);let{runStartupMaintenanceOnce:j}=await c.e(4229).then(c.bind(c,14229));return j(a),a}async function k(){return e.instance?e.instance:(e.initPromise||(e.initPromise=j().then(a=>(e.instance=a,a))),e.initPromise)}},42655:(a,b,c)=>{"use strict";c.d(b,{Xx:()=>j,exportSettings:()=>k,getSettings:()=>i});var d=c(36366),e=c(644);let f={cloudEnabled:!1,tunnelEnabled:!1,tunnelUrl:"",tunnelProvider:"cloudflare",tailscaleEnabled:!1,tailscaleUrl:"",stickyRoundRobinLimit:3,providerStrategies:{},comboStrategy:"fallback",comboStickyRoundRobinLimit:1,comboStrategies:{},requireLogin:!0,tunnelDashboardAccess:!0,authMode:"password",oidcIssuerUrl:"",oidcClientId:"",oidcClientSecret:"",oidcScopes:"openid profile email",oidcLoginLabel:"Sign in with OIDC",enableObservability:!0,observabilityMaxRecords:1e3,observabilityBatchSize:20,observabilityFlushIntervalMs:5e3,observabilityMaxJsonSize:5,outboundProxyEnabled:!1,outboundProxyUrl:"",outboundNoProxy:"",mitmRouterBaseUrl:"http://localhost:1997",dnsToolEnabled:{},rtkEnabled:!0,cavemanEnabled:!1,cavemanLevel:"full",ponytailEnabled:!1,ponytailLevel:"full",contextInjectionEnabled:!1};async function g(){let a=(await (0,d.c)()).get("SELECT data FROM settings WHERE id = 1");return a?(0,e.q)(a.data,{}):{}}function h(a){let b={...f,...a||{}};for(let[a,c]of Object.entries(f))void 0===b[a]&&("outboundProxyEnabled"===a&&"string"==typeof b.outboundProxyUrl&&b.outboundProxyUrl.trim()?b[a]=!0:b[a]=c);return b}async function i(){return h(await g())}async function j(a){let b,c=await (0,d.c)();return c.transaction(()=>{let d=c.get("SELECT data FROM settings WHERE id = 1");b={...d?(0,e.q)(d.data,{}):{},...a},c.run("INSERT INTO settings(id, data) VALUES(1, ?) ON CONFLICT(id) DO UPDATE SET data = excluded.data",[(0,e.s)(b)])}),h(b)}async function k(){return await g()}},49120:(a,b,c)=>{"use strict";c.r(b),c.d(b,{DATA_DIR:()=>m,getDataDir:()=>l});var d=c(73024),e=c.n(d),f=c(33873),g=c.n(f),h=c(21820),i=c.n(h);let j="zevai";function k(){return"win32"===process.platform?g().join(process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming"),j):g().join(i().homedir(),`.${j}`)}function l(){let a=process.env.DATA_DIR;if(!a)return k();try{return e().mkdirSync(a,{recursive:!0}),a}catch(b){if(b?.code==="EACCES"||b?.code==="EPERM")return console.warn(`[DATA_DIR] '${a}' not writable → fallback ~/.${j}`),k();throw b}}let m=l()},62674:(a,b,c)=>{"use strict";function d(a,b,c=null){let e=a.get("SELECT value FROM _meta WHERE key = ?",[b]);return e?e.value:c}function e(a,b,c){a.run("INSERT INTO _meta(key, value) VALUES(?, ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value",[b,String(c)])}c.d(b,{dy:()=>d,np:()=>e}),c(36366)},74452:(a,b,c)=>{"use strict";c.r(b),c.d(b,{createApiKey:()=>i,deleteApiKey:()=>k,getApiKeyById:()=>h,getApiKeys:()=>g,updateApiKey:()=>j,validateApiKey:()=>l});var d=c(94755),e=c(36366);function f(a){return a?{id:a.id,key:a.key,name:a.name,machineId:a.machineId,isActive:1===a.isActive||!0===a.isActive,createdAt:a.createdAt}:null}async function g(){return(await (0,e.c)()).all("SELECT * FROM apiKeys ORDER BY createdAt ASC").map(f)}async function h(a){return f((await (0,e.c)()).get("SELECT * FROM apiKeys WHERE id = ?",[a]))}async function i(a,b){if(!b)throw Error("machineId is required");let f=await (0,e.c)(),{generateApiKeyWithMachine:g}=await c.e(6844).then(c.bind(c,86844)),h=g(b),i={id:(0,d.A)(),name:a,key:h.key,machineId:b,isActive:!0,createdAt:new Date().toISOString()};return f.run("INSERT INTO apiKeys(id, key, name, machineId, isActive, createdAt) VALUES(?, ?, ?, ?, ?, ?)",[i.id,i.key,i.name,i.machineId,1,i.createdAt]),i}async function j(a,b){let c=await (0,e.c)(),d=null;return c.transaction(()=>{let e=c.get("SELECT * FROM apiKeys WHERE id = ?",[a]);if(!e)return;let g={...f(e),...b};c.run("UPDATE apiKeys SET key = ?, name = ?, machineId = ?, isActive = ? WHERE id = ?",[g.key,g.name,g.machineId,+!!g.isActive,a]),d=g}),d}async function k(a){let b=(await (0,e.c)()).run("DELETE FROM apiKeys WHERE id = ?",[a]);return(b?.changes??0)>0}async function l(a){let b=(await (0,e.c)()).get("SELECT isActive FROM apiKeys WHERE key = ?",[a]);return!!b&&(1===b.isActive||!0===b.isActive)}},78335:()=>{},93999:(a,b,c)=>{"use strict";c.d(b,{S8:()=>K.S8,E5:()=>af,bI:()=>g.cleanupProviderConnections,Iq:()=>C.createApiKey,jd:()=>H,QI:()=>y,p3:()=>B,iE:()=>g.createProviderConnection,i0:()=>h.createProviderNode,ZO:()=>n,Lh:()=>C.deleteApiKey,CG:()=>J,NR:()=>A,uL:()=>K.uL,fv:()=>K.fv,fK:()=>g.deleteProviderConnection,op:()=>g.deleteProviderConnectionsByProvider,Pc:()=>h.deleteProviderNode,Yd:()=>p,tm:()=>O,oF:()=>P,zP:()=>as,rg:()=>aa,yg:()=>C.getApiKeyById,PX:()=>C.getApiKeys,j$:()=>ae,L:()=>F,Dj:()=>G,Uv:()=>E,yW:()=>x,uv:()=>K.uv,vF:()=>N,qd:()=>w,c:()=>K.getMitmAlias,OM:()=>K.OM,r4:()=>L.r4,Mc:()=>g.getProviderConnectionById,P:()=>g.getProviderConnections,Qu:()=>h.getProviderNodeById,Fh:()=>h.getProviderNodes,hr:()=>m,ui:()=>l,LF:()=>q.LF,Zx:()=>ag,SL:()=>aq,mt:()=>f.getSettings,BY:()=>ad,K1:()=>at,zY:()=>v,VT:()=>L.VT,yF:()=>L.yF,KK:()=>q.KK,ox:()=>ap,sZ:()=>ab,L9:()=>K.L9,o5:()=>K.o5,_V:()=>W,uw:()=>_,XW:()=>C.updateApiKey,oG:()=>I,dK:()=>z,KJ:()=>L.KJ,rj:()=>g.updateProviderConnection,ho:()=>h.updateProviderNode,Q_:()=>o,Xx:()=>f.Xx,ek:()=>C.validateApiKey});var d=c(36366),e=c(644),f=c(42655),g=c(5781),h=c(1129),i=c(94755);function j(a){return a?{...(0,e.q)(a.data,{}),id:a.id,isActive:1===a.isActive||!0===a.isActive,testStatus:a.testStatus,createdAt:a.createdAt,updatedAt:a.updatedAt}:null}function k(a,b){let c=function(a){let{id:b,isActive:c,testStatus:d,createdAt:f,updatedAt:g,...h}=a;return{id:b,isActive:+(!1!==c),testStatus:d??null,data:(0,e.s)(h),createdAt:f,updatedAt:g}}(b);a.run(`INSERT INTO proxyPools(id, isActive, testStatus, data, createdAt, updatedAt)
10
+ ON CONFLICT(connectionId) DO UPDATE SET provider = excluded.provider, data = excluded.data, fetchedAt = excluded.fetchedAt`,[a,b||"",(0,e.s)(c||{}),g])}function g(a){return a?{connectionId:a.connectionId,provider:a.provider,fetchedAt:a.fetchedAt,usage:(0,e.q)(a.data,{})}:null}async function h(a){return a?g((await (0,d.c)()).get("SELECT connectionId, provider, data, fetchedAt FROM quotaCache WHERE connectionId = ?",[a])):null}async function i(a=null){let b=await (0,d.c)();return(a?b.all("SELECT connectionId, provider, data, fetchedAt FROM quotaCache WHERE provider = ?",[a]):b.all("SELECT connectionId, provider, data, fetchedAt FROM quotaCache")).map(g)}},31763:(a,b,c)=>{"use strict";c.d(b,{KQ:()=>n,AL:()=>m,HG:()=>l,Or:()=>o,Jh:()=>p});var d=c(76760),e=c.n(d),f=c(73024),g=c.n(f),h=c(49120),i=c(48161),j=c.n(i);let k="9router",l=e().join(h.DATA_DIR,"db"),m=e().join(l,"data.sqlite"),n=e().join(l,"backups"),o={main:e().join(h.DATA_DIR,"db.json"),usage:e().join(h.DATA_DIR,"usage.json"),disabled:e().join(h.DATA_DIR,"disabledModels.json"),details:e().join(h.DATA_DIR,"request-details.json")};function p(){for(let a of(!function(a){if(!a)return;let b=e().join(a,".migrated-from-9router");if(g().existsSync(b)||process.env.DATA_DIR&&process.env.DATA_DIR!==a)return;let c="win32"===process.platform?e().join(process.env.APPDATA||e().join(j().homedir(),"AppData","Roaming"),k):e().join(j().homedir(),`.${k}`);if(g().existsSync(c)){if(g().existsSync(a)){try{g().mkdirSync(a,{recursive:!0}),g().writeFileSync(b,new Date().toISOString())}catch{}return}try{console.log(`[migrate] Copying legacy data ${c} → ${a}`),g().mkdirSync(e().dirname(a),{recursive:!0}),g().cpSync(c,a,{recursive:!0}),g().writeFileSync(b,new Date().toISOString()),console.log(`[migrate] Done. Legacy data kept at ${c} as backup.`)}catch(b){console.warn(`[migrate] Failed to migrate ${c} → ${a}: ${b.message}. Starting fresh.`)}}}(h.DATA_DIR),[h.DATA_DIR,l,n]))g().existsSync(a)||g().mkdirSync(a,{recursive:!0})}},36366:(a,b,c)=>{"use strict";c.d(b,{c:()=>k});var d=c(31763);global._dbAdapter||(global._dbAdapter={instance:null,initPromise:null,logged:!1});let e=global._dbAdapter;async function f(){if(!process.versions.bun)return null;try{let{createBunSqliteAdapter:a}=await c.e(4739).then(c.bind(c,24739));return await a(d.AL)}catch(a){return console.warn(`[DB] bun:sqlite unavailable: ${a.message}`),null}}async function g(){if(process.versions.bun)return null;try{let{createBetterSqliteAdapter:a}=await c.e(5258).then(c.bind(c,25258));return a(d.AL)}catch(a){return console.warn(`[DB] better-sqlite3 unavailable: ${a.message}`),null}}async function h(){if(process.versions.bun)return null;let[a,b]=process.versions.node.split(".").map(Number);if(a<22||22===a&&b<5)return null;try{let{createNodeSqliteAdapter:a}=await c.e(8520).then(c.bind(c,88520));return await a(d.AL)}catch(a){return console.warn(`[DB] node:sqlite unavailable: ${a.message}`),null}}async function i(){try{let{createSqlJsAdapter:a}=await c.e(3593).then(c.bind(c,53593));return await a(d.AL)}catch(a){return console.warn(`[DB] sql.js unavailable: ${a.message}`),null}}async function j(){(0,d.Jh)();let a=await f();if(a||(a=await h()),a||(a=await g()),a||(a=await i()),!a)throw Error("[DB] No SQLite driver available (bun/node/better/sql.js all failed)");e.logged||(console.log(`[DB] Driver: ${a.driver} | file: ${d.AL}`),e.logged=!0);let{runMigrationOnce:b}=await c.e(5217).then(c.bind(c,45217));await b(a);let{runStartupMaintenanceOnce:j}=await c.e(4229).then(c.bind(c,14229));return j(a),a}async function k(){return e.instance?e.instance:(e.initPromise||(e.initPromise=j().then(a=>(e.instance=a,a))),e.initPromise)}},42655:(a,b,c)=>{"use strict";c.d(b,{Xx:()=>j,exportSettings:()=>k,getSettings:()=>i});var d=c(36366),e=c(644);let f={cloudEnabled:!1,tunnelEnabled:!1,tunnelUrl:"",tunnelProvider:"cloudflare",tailscaleEnabled:!1,tailscaleUrl:"",stickyRoundRobinLimit:3,providerStrategies:{},comboStrategy:"fallback",comboStickyRoundRobinLimit:1,comboStrategies:{},requireLogin:!0,tunnelDashboardAccess:!0,authMode:"password",oidcIssuerUrl:"",oidcClientId:"",oidcClientSecret:"",oidcScopes:"openid profile email",oidcLoginLabel:"Sign in with OIDC",enableObservability:!0,observabilityMaxRecords:1e3,observabilityBatchSize:20,observabilityFlushIntervalMs:5e3,observabilityMaxJsonSize:5,outboundProxyEnabled:!1,outboundProxyUrl:"",outboundNoProxy:"",mitmRouterBaseUrl:"http://localhost:1997",dnsToolEnabled:{},rtkEnabled:!0,cavemanEnabled:!1,cavemanLevel:"full",ponytailEnabled:!1,ponytailLevel:"full",contextInjectionEnabled:!1,fiveSimApiKey:""};async function g(){let a=(await (0,d.c)()).get("SELECT data FROM settings WHERE id = 1");return a?(0,e.q)(a.data,{}):{}}function h(a){let b={...f,...a||{}};for(let[a,c]of Object.entries(f))void 0===b[a]&&("outboundProxyEnabled"===a&&"string"==typeof b.outboundProxyUrl&&b.outboundProxyUrl.trim()?b[a]=!0:b[a]=c);return b}async function i(){return h(await g())}async function j(a){let b,c=await (0,d.c)();return c.transaction(()=>{let d=c.get("SELECT data FROM settings WHERE id = 1");b={...d?(0,e.q)(d.data,{}):{},...a},c.run("INSERT INTO settings(id, data) VALUES(1, ?) ON CONFLICT(id) DO UPDATE SET data = excluded.data",[(0,e.s)(b)])}),h(b)}async function k(){return await g()}},49120:(a,b,c)=>{"use strict";c.r(b),c.d(b,{DATA_DIR:()=>m,getDataDir:()=>l});var d=c(73024),e=c.n(d),f=c(33873),g=c.n(f),h=c(21820),i=c.n(h);let j="zevai";function k(){return"win32"===process.platform?g().join(process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming"),j):g().join(i().homedir(),`.${j}`)}function l(){let a=process.env.DATA_DIR;if(!a)return k();try{return e().mkdirSync(a,{recursive:!0}),a}catch(b){if(b?.code==="EACCES"||b?.code==="EPERM")return console.warn(`[DATA_DIR] '${a}' not writable → fallback ~/.${j}`),k();throw b}}let m=l()},62674:(a,b,c)=>{"use strict";function d(a,b,c=null){let e=a.get("SELECT value FROM _meta WHERE key = ?",[b]);return e?e.value:c}function e(a,b,c){a.run("INSERT INTO _meta(key, value) VALUES(?, ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value",[b,String(c)])}c.d(b,{dy:()=>d,np:()=>e}),c(36366)},74452:(a,b,c)=>{"use strict";c.r(b),c.d(b,{createApiKey:()=>i,deleteApiKey:()=>k,getApiKeyById:()=>h,getApiKeys:()=>g,updateApiKey:()=>j,validateApiKey:()=>l});var d=c(94755),e=c(36366);function f(a){return a?{id:a.id,key:a.key,name:a.name,machineId:a.machineId,isActive:1===a.isActive||!0===a.isActive,createdAt:a.createdAt}:null}async function g(){return(await (0,e.c)()).all("SELECT * FROM apiKeys ORDER BY createdAt ASC").map(f)}async function h(a){return f((await (0,e.c)()).get("SELECT * FROM apiKeys WHERE id = ?",[a]))}async function i(a,b){if(!b)throw Error("machineId is required");let f=await (0,e.c)(),{generateApiKeyWithMachine:g}=await c.e(6844).then(c.bind(c,86844)),h=g(b),i={id:(0,d.A)(),name:a,key:h.key,machineId:b,isActive:!0,createdAt:new Date().toISOString()};return f.run("INSERT INTO apiKeys(id, key, name, machineId, isActive, createdAt) VALUES(?, ?, ?, ?, ?, ?)",[i.id,i.key,i.name,i.machineId,1,i.createdAt]),i}async function j(a,b){let c=await (0,e.c)(),d=null;return c.transaction(()=>{let e=c.get("SELECT * FROM apiKeys WHERE id = ?",[a]);if(!e)return;let g={...f(e),...b};c.run("UPDATE apiKeys SET key = ?, name = ?, machineId = ?, isActive = ? WHERE id = ?",[g.key,g.name,g.machineId,+!!g.isActive,a]),d=g}),d}async function k(a){let b=(await (0,e.c)()).run("DELETE FROM apiKeys WHERE id = ?",[a]);return(b?.changes??0)>0}async function l(a){let b=(await (0,e.c)()).get("SELECT isActive FROM apiKeys WHERE key = ?",[a]);return!!b&&(1===b.isActive||!0===b.isActive)}},78335:()=>{},93999:(a,b,c)=>{"use strict";c.d(b,{S8:()=>K.S8,E5:()=>af,bI:()=>g.cleanupProviderConnections,Iq:()=>C.createApiKey,jd:()=>H,QI:()=>y,p3:()=>B,iE:()=>g.createProviderConnection,i0:()=>h.createProviderNode,ZO:()=>n,Lh:()=>C.deleteApiKey,CG:()=>J,NR:()=>A,uL:()=>K.uL,fv:()=>K.fv,fK:()=>g.deleteProviderConnection,op:()=>g.deleteProviderConnectionsByProvider,Pc:()=>h.deleteProviderNode,Yd:()=>p,tm:()=>O,oF:()=>P,zP:()=>as,rg:()=>aa,yg:()=>C.getApiKeyById,PX:()=>C.getApiKeys,j$:()=>ae,L:()=>F,Dj:()=>G,Uv:()=>E,yW:()=>x,uv:()=>K.uv,vF:()=>N,qd:()=>w,c:()=>K.getMitmAlias,OM:()=>K.OM,r4:()=>L.r4,Mc:()=>g.getProviderConnectionById,P:()=>g.getProviderConnections,Qu:()=>h.getProviderNodeById,Fh:()=>h.getProviderNodes,hr:()=>m,ui:()=>l,LF:()=>q.LF,Zx:()=>ag,SL:()=>aq,mt:()=>f.getSettings,BY:()=>ad,K1:()=>at,zY:()=>v,VT:()=>L.VT,yF:()=>L.yF,KK:()=>q.KK,ox:()=>ap,sZ:()=>ab,L9:()=>K.L9,o5:()=>K.o5,_V:()=>W,uw:()=>_,XW:()=>C.updateApiKey,oG:()=>I,dK:()=>z,KJ:()=>L.KJ,rj:()=>g.updateProviderConnection,ho:()=>h.updateProviderNode,Q_:()=>o,Xx:()=>f.Xx,ek:()=>C.validateApiKey});var d=c(36366),e=c(644),f=c(42655),g=c(5781),h=c(1129),i=c(94755);function j(a){return a?{...(0,e.q)(a.data,{}),id:a.id,isActive:1===a.isActive||!0===a.isActive,testStatus:a.testStatus,createdAt:a.createdAt,updatedAt:a.updatedAt}:null}function k(a,b){let c=function(a){let{id:b,isActive:c,testStatus:d,createdAt:f,updatedAt:g,...h}=a;return{id:b,isActive:+(!1!==c),testStatus:d??null,data:(0,e.s)(h),createdAt:f,updatedAt:g}}(b);a.run(`INSERT INTO proxyPools(id, isActive, testStatus, data, createdAt, updatedAt)
11
11
  VALUES(?, ?, ?, ?, ?, ?)
12
12
  ON CONFLICT(id) DO UPDATE SET
13
13
  isActive=excluded.isActive, testStatus=excluded.testStatus,
@@ -1 +1 @@
1
- "use strict";exports.id=2777,exports.ids=[1998,2777],exports.modules={19225:(a,b,c)=>{a.exports=c(44870)},39326:(a,b,c)=>{c.d(b,{B:()=>f});var d=c(71998);function e(a){return null==a?"":String(a).trim()}async function f(a={}){try{let b=e(a?.proxyPoolId),c="__none__"===b?"":b,f=function(a={}){let b=a?.connectionProxyEnabled===!0,c=e(a?.connectionProxyUrl);return{connectionProxyEnabled:b,connectionProxyUrl:c,connectionNoProxy:e(a?.connectionNoProxy)}}(a);if(c){let a=await (0,d.hr)(c),b=e(a?.proxyUrl),f=e(a?.noProxy);if(a&&!0===a.isActive&&b){if("vercel"===a.type||"cloudflare"===a.type||"deno"===a.type)return{source:a.type,proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:f,strictProxy:!0===a.strictProxy,vercelRelayUrl:b};return{source:"pool",proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!0,connectionProxyUrl:b,connectionNoProxy:f,strictProxy:!0===a.strictProxy}}}if(f.connectionProxyEnabled&&f.connectionProxyUrl)return{source:"legacy",proxyPoolId:c||null,proxyPool:null,...f};return{source:"none",proxyPoolId:c||null,proxyPool:null,...f}}catch(a){return console.error("[resolveConnectionProxyConfig] Failed to resolve proxy config:",a),{source:"error",proxyPoolId:null,proxyPool:null,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:"",strictProxy:!1}}}},50122:(a,b,c)=>{c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}},61188:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{NS:()=>m,dg:()=>n});var e=c(48895),f=c(89718),g=c(99675),h=c(55330),i=c(39326),j=c(75681),k=a([e,h]);[e,h]=k.then?(await k)():k;let o=["expired","authentication","unauthorized","401","re-authorize"];async function l(a,b=!1,c=null){let d=(0,h.SB)(a.provider),e={accessToken:a.accessToken,refreshToken:a.refreshToken,idToken:a.idToken,expiresAt:a.expiresAt||a.tokenExpiresAt,lastRefreshAt:a.lastRefreshAt,connectionId:a.id,providerSpecificData:a.providerSpecificData,copilotToken:a.providerSpecificData?.copilotToken,copilotTokenExpiresAt:a.providerSpecificData?.copilotTokenExpiresAt};if(!(b||d.needsRefresh(e)))return{connection:a,refreshed:!1};let g=await d.refreshCredentials(e,console,c);if(!g){if(a.accessToken)return{connection:a,refreshed:!1};throw Error("Failed to refresh credentials. Please re-authorize the connection.")}let i={updatedAt:new Date().toISOString()};g.accessToken&&(i.accessToken=g.accessToken),g.refreshToken&&(i.refreshToken=g.refreshToken),g.idToken&&(i.idToken=g.idToken),g.lastRefreshAt&&(i.lastRefreshAt=g.lastRefreshAt),g.expiresIn?(i.expiresAt=new Date(Date.now()+1e3*g.expiresIn).toISOString(),i.expiresIn=g.expiresIn):g.expiresAt&&(i.expiresAt=g.expiresAt);let j={...g.providerSpecificData||{},...g.copilotToken?{copilotToken:g.copilotToken}:{},...g.copilotTokenExpiresAt?{copilotTokenExpiresAt:g.copilotTokenExpiresAt}:{}};return Object.keys(j).length>0&&(i.providerSpecificData={...a.providerSpecificData||{},...j}),await (0,f.updateProviderConnection)(a.id,i),{connection:{...a,...i,providerSpecificData:i.providerSpecificData||a.providerSpecificData},refreshed:!0}}function m(a){return!!a&&("oauth"===a.authType||"apikey"===a.authType&&j.jO.includes(a.provider))}async function n(a,b={}){let{writeCache:c=!1,force:d=!1}=b,e=await (0,f.Mc)(a);if(!e)return{error:"Connection not found",notFound:!0};if(!m(e))return{message:"Usage not available for this connection"};let h=await (0,i.B)(e.providerSpecificData),j={connectionProxyEnabled:!0===h.connectionProxyEnabled,connectionProxyUrl:h.connectionProxyUrl||"",connectionNoProxy:h.connectionNoProxy||"",vercelRelayUrl:h.vercelRelayUrl||"",strictProxy:!1},k=e,p="oauth"===k.authType;p&&(k=(await l(k,d,j)).connection);let q=await (0,g.m)(k,j);if(p&&function(a){if(!a?.message)return!1;let b=a.message.toLowerCase();return o.some(a=>b.includes(a))}(q)&&k.refreshToken)try{k=(await l(k,!0,j)).connection,q=await (0,g.m)(k,j)}catch(a){console.warn(`[Usage] ${k.provider}: force refresh failed: ${a.message}`)}if(c&&q&&!q.error)try{await (0,f.KK)(k.id,k.provider,q)}catch(a){console.warn(`[QuotaCache] save failed for ${k.id}: ${a.message}`)}return q}d()}catch(a){d(a)}})},71998:(a,b,c)=>{c.d(b,{Fh:()=>d.Fh,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.OM,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,createProviderConnection:()=>d.iE,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.getProviderConnections,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,o5:()=>d.o5,op:()=>d.op,rj:()=>d.updateProviderConnection,uL:()=>d.uL,ui:()=>d.ui,uv:()=>d.uv});var d=c(89718)},89718:(a,b,c)=>{c.d(b,{CG:()=>d.CG,Dj:()=>d.Dj,Fh:()=>d.Fh,Iq:()=>d.Iq,K1:()=>d.K1,KJ:()=>d.KJ,KK:()=>d.KK,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,Mc:()=>d.Mc,NR:()=>d.NR,OM:()=>d.OM,PX:()=>d.PX,Pc:()=>d.Pc,QI:()=>d.QI,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Uv:()=>d.Uv,VT:()=>d.VT,XW:()=>d.XW,Xx:()=>d.Xx,Yd:()=>d.Yd,ZO:()=>d.ZO,bI:()=>d.bI,c:()=>d.c,dK:()=>d.dK,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.P,getQuotaSnapshot:()=>d.LF,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,jd:()=>d.jd,mt:()=>d.mt,o5:()=>d.o5,oG:()=>d.oG,op:()=>d.op,p3:()=>d.p3,qd:()=>d.qd,r4:()=>d.r4,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,uv:()=>d.uv,yF:()=>d.yF,yW:()=>d.yW,yg:()=>d.yg,zP:()=>d.zP,zY:()=>d.zY});var d=c(93999)},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},94755:(a,b,c)=>{c.d(b,{A:()=>i});var d=c(77598);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length;var h=c(50122);let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();var i=a,j=c;let k=(i=i||{}).random??i.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(k.length<16)throw Error("Random bytes length must be >= 16");if(k[6]=15&k[6]|64,k[8]=63&k[8]|128,b){if((j=j||0)<0||j+16>b.length)throw RangeError(`UUID byte range ${j}:${j+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[j+a]=k[a];return b}return(0,h.k)(k)}},99675:(a,b,c)=>{c.d(b,{m:()=>k});var d=c(75924),e=c(39609);let f={international:"https://api.z.ai/api/monitor/usage/quota/limit",china:"https://open.bigmodel.cn/api/monitor/usage/quota/limit"},g={minimax:["https://www.minimax.io/v1/token_plan/remains","https://api.minimax.io/v1/api/openplatform/coding_plan/remains"],"minimax-cn":["https://www.minimaxi.com/v1/api/openplatform/coding_plan/remains","https://api.minimaxi.com/v1/api/openplatform/coding_plan/remains"]},h={quotaApiHosts:["https://daily-cloudcode-pa.googleapis.com","https://cloudcode-pa.googleapis.com","https://daily-cloudcode-pa.sandbox.googleapis.com"],fetchAvailableModelsPath:"/v1internal:fetchAvailableModels",retrieveUserQuotaPath:"/v1internal:retrieveUserQuota",loadProjectApiUrl:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",tokenUrl:"https://oauth2.googleapis.com/token",clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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",userAgent:(0,d.A9)()},i="2023-06-01",j={free:"TCACA_code_001_PqouKr6QWV",proMon:"TCACA_code_002_AkiJS3ZHF5",gift:"TCACA_code_006_DbXS0lrypC",activity:"TCACA_code_007_nzdH5h4Nl0",proYear:"TCACA_code_003_FAnt7lcmRT",freeMon:"TCACA_code_008_cfWoLwvjU4",extra:"TCACA_code_009_0XmEQc2xOf"};async function k(a,b=null){let{provider:c,accessToken:d,apiKey:e,providerSpecificData:f,projectId:g}=a,h={...f||{},...g?{projectId:g}:{}};switch(c){case"github":return await q(d,f,b);case"gemini-cli":return await s(d,h,b);case"antigravity":return await w(d,h,b);case"claude":return await z(d,b);case"codex":return await E(d,b);case"kiro":return await F(d,f,b);case"codebuddy":case"codebuddy-cn":return await m(d,f,b,e,c);case"qoder":return await R(d,b);case"autoclaw":return await S(d,b,a);case"qwen":return await G(d,f);case"iflow":return await H(d);case"ollama":return await I(d);case"glm":case"glm-cn":return await J(e,c,b);case"minimax":case"minimax-cn":return await Q(e,c,b);default:return{message:`Usage API not implemented for ${c}`}}}async function l(a,b={},c=null,d="codebuddy"){let f=b?.uid||b?.rawAuth?.uid;if(f)return{uid:f,enterpriseId:b?.enterpriseId||null};let g=b?.domain||b?.rawAuth?.domain||("codebuddy-cn"===d?"www.codebuddy.cn":"www.codebuddy.ai");try{let b=await (0,e.proxyAwareFetch)(`https://${g}/v2/plugin/accounts`,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json","X-Domain":g}},c);if(!b.ok)return{uid:null,enterpriseId:null};let d=await b.json(),f=d?.data?.accounts||[],h=f.find(a=>a.lastLogin)||f[0]||{};return{uid:h.uid||null,enterpriseId:h.enterpriseId||null}}catch{return{uid:null,enterpriseId:null}}}async function m(a,b={},c=null,d=null,f="codebuddy"){let g=b?.authMode==="generated-api-key",h=a||d,i=a?"oauth":d?"api-key":null;if(!h)return{plan:"CodeBuddy",message:"CodeBuddy upstream quota is unavailable because no valid IDE OAuth token or API key is stored.",quotas:{},trackingMode:"unavailable"};try{let a,k,{uid:m,enterpriseId:q}=await l(h,b,c,f),r=await (0,e.proxyAwareFetch)(function(a={},b="codebuddy"){let c=a?.domain||a?.rawAuth?.domain||("codebuddy-cn"===b?"www.codebuddy.cn":"www.codebuddy.ai");return`https://${c}/v2/billing/meter/get-user-resource`}(b,f),{method:"POST",headers:function(a,b={},c=null,d=null,e=null){let f={Authorization:`Bearer ${a}`,Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9","Content-Type":"application/json","X-Domain":b?.domain||b?.rawAuth?.domain||"www.codebuddy.ai"};return e&&(f["X-Api-Key"]=e),c&&(f["X-User-Id"]=c),d&&(f["X-Enterprise-Id"]=d,f["X-Tenant-Id"]=d),f}(h,b,m,q,d),body:JSON.stringify((a=new Date,(k=new Date(a)).setFullYear(k.getFullYear()+101),{PageNumber:1,PageSize:200,ProductCode:"p_tcaca",Status:[0,3],PackageCodes:Object.values(j),PackageEndTimeRangeBegin:o(a),PackageEndTimeRangeEnd:o(k)}))},c),s=await r.text(),t=null;try{t=s?JSON.parse(s):null}catch{t=null}if(401===r.status||403===r.status){if("oauth"===i)return{plan:"CodeBuddy",message:`CodeBuddy IDE OAuth token was rejected (${r.status}). Upstream quota is unavailable; use ZevaiRouter Usage for local request and token tracking.`,quotas:{},authMode:"oauth-rejected",trackingMode:"local-router"};return{plan:"CodeBuddy",message:"CodeBuddy chat key active. Upstream quota is unavailable without a valid IDE OAuth token; use ZevaiRouter Usage for local request and token tracking.",quotas:{},authMode:g?"generated-api-key":"api-key",trackingMode:"local-router"}}if(!r.ok)return{plan:"CodeBuddy",message:`CodeBuddy quota endpoint returned ${r.status}.`,quotas:{}};return{...function(a){let b=a?.data?.Response?.Data||a?.Response?.Data||a?.data||a||{},c=Array.isArray(b?.Accounts)?b.Accounts:Array.isArray(b?.accounts)?b.accounts:[];if(0===c.length)return{plan:"CodeBuddy",message:"CodeBuddy connected. No quota records were returned.",quotas:{}};let d={},e=!1;for(let a of c){var f,g;if(!a||"object"!=typeof a)continue;let b=function(a){switch(a){case j.free:case j.freeMon:case j.proMon:case j.proYear:return"Monthly Credits";case j.gift:return"Gift Credits";case j.extra:return"Extra Credits";case j.activity:return"Activity Credits";default:return a?"Other Credits":null}}(a.PackageCode);if(!b)continue;(a.PackageCode===j.proMon||a.PackageCode===j.proYear)&&(e=!0);let c=function(a){let b=p(a.CycleCapacitySizePrecise,a.CycleCapacitySize,a.CapacitySizePrecise,a.CapacitySize),c=p(a.CycleCapacityRemainPrecise,a.CapacityRemainPrecise,a.CapacityRemain),d=p(a.CapacityUsedPrecise,a.CapacityUsed,null!==b&&null!==c?Math.max(0,b-c):null);if(null===b&&null===c&&null===d)return null;let e=Math.max(0,b??(d??0)+(c??0)),f=Math.max(0,c??Math.max(0,e-(d??0))),g=Math.max(0,d??Math.max(0,e-f));return{total:e,remaining:f,used:g,resetAt:n(a.CycleEndTime||a.DeductionEndTime||a.ExpiredTime)}}(a);c&&(d[b]||(d[b]={used:0,total:0,remaining:0,resetAt:null,unit:"credits",unlimited:!1}),d[b].used+=c.used,d[b].total+=c.total,d[b].remaining+=c.remaining,d[b].resetAt=(f=d[b].resetAt,g=c.resetAt,f?g&&new Date(g).getTime()<new Date(f).getTime()?g:f:g||null))}if(0===Object.keys(d).length)return{plan:e?"Pro":"Free",message:"CodeBuddy connected. Unable to extract quota values.",quotas:{}};for(let a of Object.values(d))a.remainingPercentage=a.total>0?Math.max(0,Math.min(100,a.remaining/a.total*100)):0;return{plan:e?"Pro":"Free",quotas:d}}(t),authMode:i}}catch(a){return{plan:"CodeBuddy",message:`CodeBuddy connected. Unable to fetch quota: ${a.message}`,quotas:{}}}}function n(a){if(!a)return null;try{if(a instanceof Date)return a.toISOString();if("number"==typeof a)return new Date(a<1e12?1e3*a:a).toISOString();if("string"==typeof a){if(/^\d+$/.test(a)){let b=Number(a);return new Date(b<1e12?1e3*b:b).toISOString()}return new Date(a).toISOString()}return null}catch(b){return console.warn(`Failed to parse reset time: ${a}`,b),null}}function o(a){let b=a=>String(a).padStart(2,"0");return`${a.getFullYear()}-${b(a.getMonth()+1)}-${b(a.getDate())} ${b(a.getHours())}:${b(a.getMinutes())}:${b(a.getSeconds())}`}function p(...a){for(let b of a){if(null==b||""===b)continue;let a=Number(b);if(Number.isFinite(a))return a}return null}async function q(a,b,c=null){try{if(!a)throw Error("No GitHub access token available. Please re-authorize the connection.");let b=await (0,e.proxyAwareFetch)("https://api.github.com/copilot_internal/user",{headers:{Authorization:`token ${a}`,Accept:"application/json","X-GitHub-Api-Version":"2022-11-28","User-Agent":"GitHubCopilotChat/0.26.7","Editor-Version":"vscode/1.100.0","Editor-Plugin-Version":"copilot-chat/0.26.7"}},c);if(!b.ok){let a=await b.text();throw Error(`GitHub API error: ${a}`)}let d=await b.json();if(d.quota_snapshots){let a=d.quota_snapshots,b=n(d.quota_reset_date);return{plan:d.copilot_plan,resetDate:d.quota_reset_date,quotas:{chat:{...r(a.chat),resetAt:b},completions:{...r(a.completions),resetAt:b},premium_interactions:{...r(a.premium_interactions),resetAt:b}}}}if(d.monthly_quotas||d.limited_user_quotas){let a=d.monthly_quotas||{},b=d.limited_user_quotas||{},c=n(d.limited_user_reset_date);return{plan:d.copilot_plan||d.access_type_sku,resetDate:d.limited_user_reset_date,quotas:{chat:{used:b.chat||0,total:a.chat||0,unlimited:!1,resetAt:c},completions:{used:b.completions||0,total:a.completions||0,unlimited:!1,resetAt:c}}}}return{message:"GitHub Copilot connected. Unable to parse quota data."}}catch(a){throw Error(`Failed to fetch GitHub usage: ${a.message}`)}}function r(a){return a?{used:a.entitlement-a.remaining,total:a.entitlement,remaining:a.remaining,unlimited:a.unlimited||!1}:{used:0,total:0,unlimited:!0}}async function s(a,b,c=null){if(!a)return{plan:"Free",message:"Gemini CLI access token not available."};try{let d,f=t(b?.projectId),g="Free";if(!f){let b=await u(a,c);f=t(b?.cloudaicompanionProject),g=b?.currentTier?.name||g}if(!f)return{plan:g,message:"Gemini CLI project ID not available. Reconnect Gemini CLI, or configure a Google Cloud project with Gemini Code Assist access before checking quota."};let h=new AbortController,i=setTimeout(()=>h.abort(),1e4);try{d=await (0,e.proxyAwareFetch)("https://cloudcode-pa.googleapis.com/v1internal:retrieveUserQuota",{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/json"},body:JSON.stringify({project:f}),signal:h.signal},c)}finally{clearTimeout(i)}if(!d.ok)return{plan:g,message:`Gemini CLI quota error (${d.status}).`};let j=await d.json(),k={};if(Array.isArray(j.buckets))for(let a of j.buckets){if(!a.modelId||null==a.remainingFraction)continue;let b=Number(a.remainingFraction)||0,c=Math.round(1e3*b),d=Math.max(0,1e3-c);k[a.modelId]={used:d,total:1e3,resetAt:n(a.resetTime),remainingPercentage:100*b,unlimited:!1}}return{plan:g,quotas:k}}catch(a){return{message:`Gemini CLI error: ${a.message}`}}}function t(a){return"string"==typeof a?a.trim()||null:a&&"object"==typeof a&&"string"==typeof a.id&&a.id.trim()||null}async function u(a,b=null){let c=new AbortController,f=setTimeout(()=>c.abort(),1e4);try{let f=await (0,e.proxyAwareFetch)("https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/json"},body:JSON.stringify({metadata:d.Cn}),signal:c.signal},b);if(!f.ok)return null;return await f.json()}catch{return null}finally{clearTimeout(f)}}async function v(a,b,c,d){let f=null;for(let g of h.quotaApiHosts){let i=new AbortController,j=setTimeout(()=>i.abort(),1e4);try{let j=await (0,e.proxyAwareFetch)(`${g}${a}`,{method:"POST",headers:{Authorization:`Bearer ${b}`,"User-Agent":h.userAgent,"Content-Type":"application/json","x-request-source":"local"},body:JSON.stringify(c||{}),signal:i.signal},d);if(j.ok||401===j.status||403===j.status)return{response:j,host:g};f=Error(`Antigravity API error: ${j.status}`)}catch(a){f=a}finally{clearTimeout(j)}}if(f)throw f;throw Error("Antigravity API unavailable")}async function w(a,b,c=null){try{let d,e=t(b?.projectId),f=null,g=e;g||(f=await y(a,c),g=t(f?.cloudaicompanionProject));try{d=await v(h.fetchAvailableModelsPath,a,g?{project:g}:{},c)}catch(a){return{message:`Antigravity quota unavailable: ${a.message}. Chat may still work.`}}let i=d.response;if(401===i.status){let a=await x(b,c);if(a)return{accountDead:!0,message:`Antigravity account ${a}. Reconnect won't help \u2014 recreate the account.`,quotas:{}};return{message:"Antigravity quota API authentication expired. Chat may still work.",quotas:{}}}if(403===i.status)return{message:"Antigravity quota API access forbidden (tier may not expose quota). Chat may still work.",quotas:{}};if(!i.ok)throw Error(`Antigravity API error: ${i.status}`);let j=await i.json(),k=new Map;try{let b=await v(h.retrieveUserQuotaPath,a,g?{project:g}:{},c);if(b.response.ok){let a=await b.response.json();if(Array.isArray(a.buckets))for(let b of a.buckets){let a=String(b.modelId||"").trim();a&&k.set(a,b)}}}catch{}let l={};if(j.models){let a=["gemini-3-flash-agent","gemini-3.5-flash-low","gemini-3.5-flash-extra-low","gemini-pro-agent","gemini-3.1-pro-low","claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b-medium","gemini-3-flash"];for(let[b,c]of Object.entries(j.models)){if(c.isInternal||!a.includes(b))continue;let d=k.get(b),e=d||c.quotaInfo;if(!e)continue;let f=Number(e.remainingFraction)||0,g=100*f,h=Math.round(1e3*f),i=Math.max(0,1e3-h);l[b]={used:i,total:1e3,resetAt:n(e.resetTime),remainingPercentage:g,unlimited:!1,displayName:c.displayName||b,quotaSource:d?"retrieveUserQuota":"fetchAvailableModels"}}}return{plan:f?.currentTier?.name||"Unknown",quotas:l,subscriptionInfo:f}}catch(a){return console.error("[Antigravity Usage] Error:",a.message,a.cause),{message:`Antigravity error: ${a.message}`}}}async function x(a,b=null){let c=a?.refreshToken;if(!c)return null;try{let a,d=new AbortController,f=setTimeout(()=>d.abort(),1e4);try{a=await (0,e.proxyAwareFetch)(h.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:h.clientId,client_secret:h.clientSecret,refresh_token:c,grant_type:"refresh_token"}),signal:d.signal},b)}finally{clearTimeout(f)}if(a.ok)return null;let g=await a.json().catch(()=>({}));if("invalid_grant"===g.error){let a=(g.error_description||"").toLowerCase();if(a.includes("deleted"))return"has been deleted";if(a.includes("disabled")||a.includes("suspend"))return"is disabled/suspended";return"authorization was revoked"}return null}catch{return null}}async function y(a,b=null){let c=new AbortController,f=setTimeout(()=>c.abort(),1e4);try{let f=await (0,e.proxyAwareFetch)(h.loadProjectApiUrl,{method:"POST",headers:{Authorization:`Bearer ${a}`,"User-Agent":h.userAgent,"Content-Type":"application/json","x-request-source":"local"},body:JSON.stringify({metadata:d.Cn,mode:1}),signal:c.signal},b);if(!f.ok)return null;return await f.json()}catch(a){return console.error("[Antigravity Subscription] Error:",a.message),null}finally{clearTimeout(f)}}async function z(a,b=null){try{let c=await (0,e.proxyAwareFetch)("https://api.anthropic.com/api/oauth/usage",{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-beta":"oauth-2025-04-20","anthropic-version":i}},b);if(c.ok){let a=await c.json(),b={},d=a=>a&&"object"==typeof a&&"number"==typeof a.utilization,e=a=>{let b=a.utilization,c=Math.max(0,100-b);return{used:b,total:100,remaining:c,remainingPercentage:c,resetAt:n(a.resets_at),unlimited:!1}};for(let[c,f]of(d(a.five_hour)&&(b["session (5h)"]=e(a.five_hour)),d(a.seven_day)&&(b["weekly (7d)"]=e(a.seven_day)),Object.entries(a)))if(c.startsWith("seven_day_")&&"seven_day"!==c&&d(f)){let a=c.replace("seven_day_","");b[`weekly ${a} (7d)`]=e(f)}return{plan:"Claude Code",extraUsage:a.extra_usage??null,quotas:b}}return console.warn(`[Claude Usage] OAuth endpoint returned ${c.status}, falling back to legacy`),await A(a,b)}catch(a){return{message:`Claude connected. Unable to fetch usage: ${a.message}`}}}async function A(a,b=null){try{let c=await (0,e.proxyAwareFetch)("https://api.anthropic.com/v1/settings",{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":i}},b);if(c.ok){let d=await c.json();if(d.organization_id){let c=await (0,e.proxyAwareFetch)("https://api.anthropic.com/v1/organizations/{org_id}/usage".replace("{org_id}",d.organization_id),{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":i}},b);if(c.ok){let a=await c.json();return{plan:d.plan||"Unknown",organization:d.organization_name,quotas:a}}}return{plan:d.plan||"Unknown",organization:d.organization_name,message:"Claude connected. Usage details require admin access."}}return{message:"Claude connected. Usage API requires admin permissions."}}catch(a){return{message:`Claude connected. Unable to fetch usage: ${a.message}`}}}function B(a){return!a||"object"!=typeof a||Array.isArray(a)?null:a.rate_limit&&"object"==typeof a.rate_limit?a.rate_limit:a}function C(a){let b=Math.max(0,Math.min(100,function(a,b=0){if("number"==typeof a&&Number.isFinite(a))return a;if("string"==typeof a&&a.trim()){let b=Number(a);if(Number.isFinite(b))return b}return b}(a?.used_percent??a?.percent_used,0)));return{used:b,total:100,remaining:Math.max(0,100-b),resetAt:n(a?.reset_at??a?.resets_at??a?.resetAt??null),unlimited:!1}}function D(a,b,c){let d=B(c);if(!d)return!1;let e=d.primary_window||d.primary||c.primary_window||c.primary,f=d.secondary_window||d.secondary||c.secondary_window||c.secondary,g=!1;return e&&(a[b?`${b}_session`:"session"]=C(e),g=!0),f&&(a[b?`${b}_weekly`:"weekly"]=C(f),g=!0),g}async function E(a,b=null){try{let c=await (0,e.proxyAwareFetch)("https://chatgpt.com/backend-api/wham/usage",{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}},b);if(!c.ok)return{message:`Codex connected. Usage API temporarily unavailable (${c.status}).`};let d=await c.json(),f=d.rate_limit||d.rate_limits||d.rate_limits_by_limit_id?.codex||{},g=function(a){if(a.code_review_rate_limit||a.review_rate_limit)return a.code_review_rate_limit||a.review_rate_limit;let b=a.rate_limits_by_limit_id;return b&&"object"==typeof b&&!Array.isArray(b)?b.code_review||b.codex_review||b.review||null:(Array.isArray(a.additional_rate_limits)?a.additional_rate_limits:[]).find(a=>{let b=String(a?.limit_name||a?.metered_feature||a?.id||"").toLowerCase();return"code_review"===b||"codex_review"===b||"review"===b||b.includes("review")})||null}(d),h={};return D(h,"",f),D(h,"review",g),{plan:d.plan_type||d.summary?.plan||"unknown",limitReached:B(f)?.limit_reached||!1,reviewLimitReached:B(g)?.limit_reached||!1,quotas:h}}catch(a){throw Error(`Failed to fetch Codex usage: ${a.message}`)}}async function F(a,b,c=null){let d=b?.profileArn||"arn:aws:codewhisperer:us-east-1:638616132270:profile/AAAACCCCXXXX",f=b?.authMethod||"builder-id",g=new URLSearchParams({isEmailRequired:"true",origin:"AI_EDITOR",resourceType:"AGENTIC_REQUEST"}),h=!1,i=[];for(let b of[{name:"codewhisperer-get",run:async()=>(0,e.proxyAwareFetch)(`https://codewhisperer.us-east-1.amazonaws.com/getUsageLimits?${g.toString()}`,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json","x-amz-user-agent":"aws-sdk-js/1.0.0 KiroIDE","user-agent":"aws-sdk-js/1.0.0 KiroIDE"}},c)},{name:"codewhisperer-post",run:async()=>(0,e.proxyAwareFetch)("https://codewhisperer.us-east-1.amazonaws.com",{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/x-amz-json-1.0","x-amz-target":"AmazonCodeWhispererService.GetUsageLimits",Accept:"application/json"},body:JSON.stringify({origin:"AI_EDITOR",profileArn:d,resourceType:"AGENTIC_REQUEST"})},c)},{name:"q-get",run:async()=>{let b=new URLSearchParams({origin:"AI_EDITOR",profileArn:d,resourceType:"AGENTIC_REQUEST"});return(0,e.proxyAwareFetch)(`https://q.us-east-1.amazonaws.com/getUsageLimits?${b}`,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}},c)}}])try{let a=await b.run();if(!a.ok){let c=await a.text().catch(()=>"");(401===a.status||403===a.status)&&(h=!0),i.push(`${b.name}:${a.status}${c?`:${c}`:""}`);continue}let c=await a.json();return function(a){let b=a.usageBreakdownList||[],c={},d=n(a.nextDateReset||a.resetDate);return b.forEach(a=>{let b=a.resourceType?.toLowerCase()||"unknown",e=a.currentUsageWithPrecision||0,f=a.usageLimitWithPrecision||0;if(c[b]={used:e,total:f,remaining:f-e,resetAt:d,unlimited:!1},a.freeTrialInfo){let e=a.freeTrialInfo.currentUsageWithPrecision||0,f=a.freeTrialInfo.usageLimitWithPrecision||0;c[`${b}_freetrial`]={used:e,total:f,remaining:f-e,resetAt:n(a.freeTrialInfo.freeTrialExpiry||d),unlimited:!1}}}),{plan:a.subscriptionInfo?.subscriptionTitle||"Kiro",quotas:c}}(c)}catch(a){i.push(`${b.name}:${a.message}`)}return h&&"idc"===f?{message:"Kiro quota API is unavailable for the current AWS IAM Identity Center session. Chat may still work. If this persists after renewing your session, reconnect Kiro.",quotas:{}}:h&&("google"===f||"github"===f)?{message:"Kiro quota API authentication expired. Chat may still work.",quotas:{}}:h?{message:"Kiro quota API rejected the current token. Chat may still work.",quotas:{}}:{message:i.length>0?`Unable to fetch Kiro usage right now. (${i[i.length-1]})`:"Unable to fetch Kiro usage right now.",quotas:{}}}async function G(a,b){try{if(!b?.resourceUrl)return{message:"Qwen connected. No resource URL available."};return{message:"Qwen connected. Usage tracked per request."}}catch(a){return{message:"Unable to fetch Qwen usage."}}}async function H(a){try{return{message:"iFlow connected. Usage tracked per request."}}catch(a){return{message:"Unable to fetch iFlow usage."}}}async function I(a,b){try{return{plan:b?.plan||"Free",message:"Ollama Cloud uses a free tier with light usage limits (resets every 5h & 7d). For detailed usage tracking, visit ollama.com/settings/keys.",quotas:[]}}catch(a){return{message:"Unable to fetch Ollama Cloud usage."}}}async function J(a,b,c=null){if(!a)return{message:"GLM API key not available."};let d=f["glm-cn"===b?"china":"international"];try{let b=await (0,e.proxyAwareFetch)(d,{headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}},c);if(!b.ok){if(401===b.status)return{message:"GLM API key invalid or expired."};return{message:`GLM quota API error (${b.status}).`}}let f=await b.json(),g=f?.data&&"object"==typeof f.data?f.data:{},h=Array.isArray(g.limits)?g.limits:[],i={};for(let a of h){if(!a||"TOKENS_LIMIT"!==a.type)continue;let b=Number(a.percentage)||0,c=Number(a.nextResetTime)||0,d=Math.max(0,100-b);i.session={used:b,total:100,remaining:d,remainingPercentage:d,resetAt:c>0?new Date(c).toISOString():null,unlimited:!1}}let j="string"==typeof g.level?g.level:"";return{plan:j?j.charAt(0).toUpperCase()+j.slice(1).toLowerCase():"Unknown",quotas:i}}catch(a){return{message:`GLM error: ${a.message}`}}}function K(a,b,c){return a&&"object"==typeof a?a[b]??a[c]??null:null}function L(a,b,c){if(!a||"object"!=typeof a)return null;let d=a[b]??a[c];if(null==d)return null;let e=Number(d);return Number.isFinite(e)?Math.max(0,Math.min(100,e)):null}function M(a){return Math.max(0,Number(K(a,"current_interval_total_count","currentIntervalTotalCount"))||0)}function N(a){return Math.max(0,Number(K(a,"current_weekly_total_count","currentWeeklyTotalCount"))||0)}function O(a){return!!(M(a)>0||N(a)>0)||null!==L(a,"current_interval_remaining_percent","currentIntervalRemainingPercent")||null!==L(a,"current_weekly_remaining_percent","currentWeeklyRemainingPercent")}function P(a,b,c,d,e,f,g,h,i,j){let k=d(c),l=L(c,g,h);if(k<=0&&null===l)return;let m=Math.max(0,Number(K(c,e,f))||0),o=k,p=m;k<=0&&(o=100,p=j?Math.round(l/100*o):Math.round(o*(1-l/100))),a[b]=function(a,b,c,d,e=null){var f,g,h;let i=Math.max(0,a),j=d?Math.max(i-b,0):Math.min(Math.max(0,b),i),k=Math.max(i-j,0),l=(f=e,g=k,h=i,null!=f&&Number.isFinite(f)?Math.max(0,Math.min(100,f)):h>0?Math.max(0,Math.min(100,g/h*100)):0);return{used:j,total:i,remaining:k,remainingPercentage:l,resetAt:c,unlimited:!1}}(o,p,function(a,b,c,d,e,f){let g=Number(K(a,c,d))||0;return g>0?new Date(b+g).toISOString():n(K(a,e,f))}(c,...i),j,l)}async function Q(a,b,c=null){if(!a)return{message:"MiniMax API key not available."};let d=g[b]||[],f="";for(let b=0;b<d.length;b+=1){let g=d[b],h=b<d.length-1;try{let b=await (0,e.proxyAwareFetch)(g,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json","Content-Type":"application/json"}},c),d=await b.text(),i={};if(d)try{i=JSON.parse(d)}catch{i={}}let j=(i?.base_resp??i?.baseResp)||{},k=Number(j.status_code??j.statusCode)||0,l=String(j.status_msg??j.statusMsg??"").trim(),m=`${l} ${d}`.trim(),n=/token plan|coding plan|invalid api key|invalid key|unauthorized|inactive/i;if(401===b.status||403===b.status||1004===k||n.test(m))return{message:"MiniMax API key invalid or inactive. Use an active Token/Coding Plan key."};if(!b.ok){if(f=`MiniMax usage endpoint error (${b.status})`,(404===b.status||405===b.status||b.status>=500)&&h)continue;return{message:`MiniMax connected. ${f}`}}if(0!==k)return{message:`MiniMax connected. ${l||"Upstream quota API error"}`};let o=i?.model_remains??i?.modelRemains,p=(Array.isArray(o)?o:[]).filter(O);if(0===p.length)return{message:"MiniMax connected. No quota data was returned."};let q=Date.now(),r=g.includes("/coding_plan/remains"),s={};for(let a of p){let b=function(a){let b=String(K(a,"model_name","modelName")||"").trim();return b?"MiniMax-M*"===b||"general"===b?"M-series":b.replace(/[_-]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,a=>a.toUpperCase()).replace(/\bTo\b/g,"to").replace(/\bTts\b/g,"TTS").replace(/\bHd\b/g,"HD"):"MiniMax"}(a);P(s,`${b} (5h)`,a,M,"current_interval_usage_count","currentIntervalUsageCount","current_interval_remaining_percent","currentIntervalRemainingPercent",[q,"remains_time","remainsTime","end_time","endTime"],r),P(s,`${b} (7d)`,a,N,"current_weekly_usage_count","currentWeeklyUsageCount","current_weekly_remaining_percent","currentWeeklyRemainingPercent",[q,"weekly_remains_time","weeklyRemainsTime","weekly_end_time","weeklyEndTime"],r)}if(0===Object.keys(s).length)return{message:"MiniMax connected. Unable to extract quota usage."};return{quotas:s}}catch(a){if(f=a.message,!h)break}}return{message:f?`MiniMax connected. Unable to fetch usage: ${f}`:"MiniMax connected. Unable to fetch usage."}}async function R(a,b=null){if(!a)return{message:"Qoder usage unavailable: no access token"};try{let c=await (0,e.proxyAwareFetch)("https://openapi.qoder.sh/api/v2/quota/usage",{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}},b);if(!c.ok)return{message:`Qoder connected. Usage fetch returned ${c.status}.`};let d=await c.json().catch(()=>null);if(!d)return{message:"Qoder connected. Usage response was not JSON."};let f=d.userQuota||{},g=d.orgResourcePackage||{},h=Number.isFinite(Number(d.expiresAt))&&Number(d.expiresAt)>0?Number(d.expiresAt):null,i=h?new Date(h).toISOString():null;return{quotas:{user:{total:Number(f.total)||0,used:Number(f.used)||0,remaining:Number(f.remaining)||0,unit:f.unit||"credits",resetAt:i},organization:{total:Number(g.total)||0,used:Number(g.used)||0,remaining:Number(g.remaining)||0,unit:g.unit||"credits",resetAt:i}},totalUsagePercentage:Number(d.totalUsagePercentage)||0,isQuotaExceeded:!!d.isQuotaExceeded,expiresAt:h}}catch(a){return{message:`Qoder connected. Unable to fetch usage: ${a.message}`}}}async function S(a,b=null,d=null){if(!a)return{message:"AutoClaw usage unavailable: no access token"};try{let{AUTOCLAW_WALLET_ENDPOINT:f,buildAutoClawWalletHeaders:g}=await Promise.resolve().then(c.bind(c,42693)),h=await (0,e.proxyAwareFetch)(f,{method:"GET",headers:g(a)},b);if(!h.ok)return{message:`AutoClaw connected. Usage fetch returned ${h.status}.`};let i=await h.json().catch(()=>null);if(!i||0!==i.code)return{message:"AutoClaw connected. Unable to read balance."};let j=Number(i.data?.total_balance),k=Number.isFinite(j)?j:0,l=k;try{if(d?.id){let{getQuotaSnapshot:a}=await Promise.resolve().then(c.bind(c,89718)),b=await a(d.id),e=Number(b?.usage?.quotas?.points?.total)||0,f=Number(b?.usage?.quotas?.points?.remaining);l=Math.max(e,k,Number.isFinite(f)?f:0)}}catch{}let m=Math.max(0,l-k);return{quotas:{points:{total:l,used:m,remaining:k,unit:"points",resetAt:null}},totalUsagePercentage:l>0?Math.round(m/l*100):0,isQuotaExceeded:k<=0}}catch(a){return{message:`AutoClaw connected. Unable to fetch balance: ${a.message}`}}}}};
1
+ "use strict";exports.id=2777,exports.ids=[1998,2777],exports.modules={19225:(a,b,c)=>{a.exports=c(44870)},39326:(a,b,c)=>{c.d(b,{B:()=>f});var d=c(71998);function e(a){return null==a?"":String(a).trim()}async function f(a={}){try{let b=e(a?.proxyPoolId),c="__none__"===b?"":b,f=function(a={}){let b=a?.connectionProxyEnabled===!0,c=e(a?.connectionProxyUrl);return{connectionProxyEnabled:b,connectionProxyUrl:c,connectionNoProxy:e(a?.connectionNoProxy)}}(a);if(c){let a=await (0,d.hr)(c),b=e(a?.proxyUrl),f=e(a?.noProxy);if(a&&!0===a.isActive&&b){if("vercel"===a.type||"cloudflare"===a.type||"deno"===a.type)return{source:a.type,proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:f,strictProxy:!0===a.strictProxy,vercelRelayUrl:b};return{source:"pool",proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!0,connectionProxyUrl:b,connectionNoProxy:f,strictProxy:!0===a.strictProxy}}}if(f.connectionProxyEnabled&&f.connectionProxyUrl)return{source:"legacy",proxyPoolId:c||null,proxyPool:null,...f};return{source:"none",proxyPoolId:c||null,proxyPool:null,...f}}catch(a){return console.error("[resolveConnectionProxyConfig] Failed to resolve proxy config:",a),{source:"error",proxyPoolId:null,proxyPool:null,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:"",strictProxy:!1}}}},50122:(a,b,c)=>{c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}},61188:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{NS:()=>m,dg:()=>n});var e=c(48895),f=c(89718),g=c(99675),h=c(55330),i=c(39326),j=c(75681),k=a([e,h]);[e,h]=k.then?(await k)():k;let o=["expired","authentication","unauthorized","401","re-authorize"];async function l(a,b=!1,c=null){let d=(0,h.SB)(a.provider),e={accessToken:a.accessToken,refreshToken:a.refreshToken,idToken:a.idToken,expiresAt:a.expiresAt||a.tokenExpiresAt,lastRefreshAt:a.lastRefreshAt,connectionId:a.id,providerSpecificData:a.providerSpecificData,copilotToken:a.providerSpecificData?.copilotToken,copilotTokenExpiresAt:a.providerSpecificData?.copilotTokenExpiresAt};if(!(b||d.needsRefresh(e)))return{connection:a,refreshed:!1};let g=await d.refreshCredentials(e,console,c);if(!g){if(a.accessToken)return{connection:a,refreshed:!1};throw Error("Failed to refresh credentials. Please re-authorize the connection.")}let i={updatedAt:new Date().toISOString()};g.accessToken&&(i.accessToken=g.accessToken),g.refreshToken&&(i.refreshToken=g.refreshToken),g.idToken&&(i.idToken=g.idToken),g.lastRefreshAt&&(i.lastRefreshAt=g.lastRefreshAt),g.expiresIn?(i.expiresAt=new Date(Date.now()+1e3*g.expiresIn).toISOString(),i.expiresIn=g.expiresIn):g.expiresAt&&(i.expiresAt=g.expiresAt);let j={...g.providerSpecificData||{},...g.copilotToken?{copilotToken:g.copilotToken}:{},...g.copilotTokenExpiresAt?{copilotTokenExpiresAt:g.copilotTokenExpiresAt}:{}};return Object.keys(j).length>0&&(i.providerSpecificData={...a.providerSpecificData||{},...j}),await (0,f.updateProviderConnection)(a.id,i),{connection:{...a,...i,providerSpecificData:i.providerSpecificData||a.providerSpecificData},refreshed:!0}}function m(a){var b;let c;if(!a)return!1;let d=(b=a.authType,c=String(b||"").toLowerCase().trim(),"api-key"===c||"api_key"===c||"api key"===c?"apikey":c);return"oauth"===d||"apikey"===d&&j.jO.includes(a.provider)}async function n(a,b={}){let{writeCache:c=!1,force:d=!1}=b,e=await (0,f.Mc)(a);if(!e)return{error:"Connection not found",notFound:!0};if(!m(e))return{message:"Usage not available for this connection"};let h=await (0,i.B)(e.providerSpecificData),j={connectionProxyEnabled:!0===h.connectionProxyEnabled,connectionProxyUrl:h.connectionProxyUrl||"",connectionNoProxy:h.connectionNoProxy||"",vercelRelayUrl:h.vercelRelayUrl||"",strictProxy:!1},k=e,p="oauth"===k.authType;p&&(k=(await l(k,d,j)).connection);let q=await (0,g.m)(k,j);if(p&&function(a){if(!a?.message)return!1;let b=a.message.toLowerCase();return o.some(a=>b.includes(a))}(q)&&k.refreshToken)try{k=(await l(k,!0,j)).connection,q=await (0,g.m)(k,j)}catch(a){console.warn(`[Usage] ${k.provider}: force refresh failed: ${a.message}`)}if(c&&q&&!q.error)try{await (0,f.KK)(k.id,k.provider,q)}catch(a){console.warn(`[QuotaCache] save failed for ${k.id}: ${a.message}`)}return q}d()}catch(a){d(a)}})},71998:(a,b,c)=>{c.d(b,{Fh:()=>d.Fh,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.OM,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,createProviderConnection:()=>d.iE,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.getProviderConnections,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,o5:()=>d.o5,op:()=>d.op,rj:()=>d.updateProviderConnection,uL:()=>d.uL,ui:()=>d.ui,uv:()=>d.uv});var d=c(89718)},89718:(a,b,c)=>{c.d(b,{CG:()=>d.CG,Dj:()=>d.Dj,Fh:()=>d.Fh,Iq:()=>d.Iq,K1:()=>d.K1,KJ:()=>d.KJ,KK:()=>d.KK,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,Mc:()=>d.Mc,NR:()=>d.NR,OM:()=>d.OM,PX:()=>d.PX,Pc:()=>d.Pc,QI:()=>d.QI,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Uv:()=>d.Uv,VT:()=>d.VT,XW:()=>d.XW,Xx:()=>d.Xx,Yd:()=>d.Yd,ZO:()=>d.ZO,bI:()=>d.bI,c:()=>d.c,dK:()=>d.dK,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.P,getQuotaSnapshot:()=>d.LF,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,jd:()=>d.jd,mt:()=>d.mt,o5:()=>d.o5,oG:()=>d.oG,op:()=>d.op,p3:()=>d.p3,qd:()=>d.qd,r4:()=>d.r4,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,uv:()=>d.uv,yF:()=>d.yF,yW:()=>d.yW,yg:()=>d.yg,zP:()=>d.zP,zY:()=>d.zY});var d=c(93999)},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},94755:(a,b,c)=>{c.d(b,{A:()=>i});var d=c(77598);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length;var h=c(50122);let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();var i=a,j=c;let k=(i=i||{}).random??i.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(k.length<16)throw Error("Random bytes length must be >= 16");if(k[6]=15&k[6]|64,k[8]=63&k[8]|128,b){if((j=j||0)<0||j+16>b.length)throw RangeError(`UUID byte range ${j}:${j+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[j+a]=k[a];return b}return(0,h.k)(k)}},99675:(a,b,c)=>{c.d(b,{m:()=>k});var d=c(75924),e=c(39609);let f={international:"https://api.z.ai/api/monitor/usage/quota/limit",china:"https://open.bigmodel.cn/api/monitor/usage/quota/limit"},g={minimax:["https://www.minimax.io/v1/token_plan/remains","https://api.minimax.io/v1/api/openplatform/coding_plan/remains"],"minimax-cn":["https://www.minimaxi.com/v1/api/openplatform/coding_plan/remains","https://api.minimaxi.com/v1/api/openplatform/coding_plan/remains"]},h={quotaApiHosts:["https://daily-cloudcode-pa.googleapis.com","https://cloudcode-pa.googleapis.com","https://daily-cloudcode-pa.sandbox.googleapis.com"],fetchAvailableModelsPath:"/v1internal:fetchAvailableModels",retrieveUserQuotaPath:"/v1internal:retrieveUserQuota",loadProjectApiUrl:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",tokenUrl:"https://oauth2.googleapis.com/token",clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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",userAgent:(0,d.A9)()},i="2023-06-01",j={free:"TCACA_code_001_PqouKr6QWV",proMon:"TCACA_code_002_AkiJS3ZHF5",gift:"TCACA_code_006_DbXS0lrypC",activity:"TCACA_code_007_nzdH5h4Nl0",proYear:"TCACA_code_003_FAnt7lcmRT",freeMon:"TCACA_code_008_cfWoLwvjU4",extra:"TCACA_code_009_0XmEQc2xOf"};async function k(a,b=null){let{provider:c,accessToken:d,apiKey:e,providerSpecificData:f,projectId:g}=a,h={...f||{},...g?{projectId:g}:{}};switch(c){case"github":return await q(d,f,b);case"gemini-cli":return await s(d,h,b);case"antigravity":return await w(d,h,b);case"claude":return await z(d,b);case"codex":return await E(d,b);case"kiro":return await F(d,f,b);case"codebuddy":case"codebuddy-cn":return await m(d,f,b,e,c);case"qoder":return await R(d,b);case"autoclaw":return await S(d,b,a);case"qwen":return await G(d,f);case"iflow":return await H(d);case"ollama":return await I(d);case"glm":case"glm-cn":return await J(e,c,b);case"minimax":case"minimax-cn":return await Q(e,c,b);default:return{message:`Usage API not implemented for ${c}`}}}async function l(a,b={},c=null,d="codebuddy"){let f=b?.uid||b?.rawAuth?.uid;if(f)return{uid:f,enterpriseId:b?.enterpriseId||null};let g=b?.domain||b?.rawAuth?.domain||("codebuddy-cn"===d?"www.codebuddy.cn":"www.codebuddy.ai");try{let b=await (0,e.proxyAwareFetch)(`https://${g}/v2/plugin/accounts`,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json","X-Domain":g}},c);if(!b.ok)return{uid:null,enterpriseId:null};let d=await b.json(),f=d?.data?.accounts||[],h=f.find(a=>a.lastLogin)||f[0]||{};return{uid:h.uid||null,enterpriseId:h.enterpriseId||null}}catch{return{uid:null,enterpriseId:null}}}async function m(a,b={},c=null,d=null,f="codebuddy"){let g=b?.authMode==="generated-api-key",h=a||d,i=a?"oauth":d?"api-key":null;if(!h)return{plan:"CodeBuddy",message:"CodeBuddy upstream quota is unavailable because no valid IDE OAuth token or API key is stored.",quotas:{},trackingMode:"unavailable"};try{let a,k,{uid:m,enterpriseId:q}=await l(h,b,c,f),r=await (0,e.proxyAwareFetch)(function(a={},b="codebuddy"){let c=a?.domain||a?.rawAuth?.domain||("codebuddy-cn"===b?"www.codebuddy.cn":"www.codebuddy.ai");return`https://${c}/v2/billing/meter/get-user-resource`}(b,f),{method:"POST",headers:function(a,b={},c=null,d=null,e=null){let f={Authorization:`Bearer ${a}`,Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9","Content-Type":"application/json","X-Domain":b?.domain||b?.rawAuth?.domain||"www.codebuddy.ai"};return e&&(f["X-Api-Key"]=e),c&&(f["X-User-Id"]=c),d&&(f["X-Enterprise-Id"]=d,f["X-Tenant-Id"]=d),f}(h,b,m,q,d),body:JSON.stringify((a=new Date,(k=new Date(a)).setFullYear(k.getFullYear()+101),{PageNumber:1,PageSize:200,ProductCode:"p_tcaca",Status:[0,3],PackageCodes:Object.values(j),PackageEndTimeRangeBegin:o(a),PackageEndTimeRangeEnd:o(k)}))},c),s=await r.text(),t=null;try{t=s?JSON.parse(s):null}catch{t=null}if(401===r.status||403===r.status){if("oauth"===i)return{plan:"CodeBuddy",message:`CodeBuddy IDE OAuth token was rejected (${r.status}). Upstream quota is unavailable; use ZevaiRouter Usage for local request and token tracking.`,quotas:{},authMode:"oauth-rejected",trackingMode:"local-router"};return{plan:"CodeBuddy",message:"CodeBuddy chat key active. Upstream quota is unavailable without a valid IDE OAuth token; use ZevaiRouter Usage for local request and token tracking.",quotas:{},authMode:g?"generated-api-key":"api-key",trackingMode:"local-router"}}if(!r.ok)return{plan:"CodeBuddy",message:`CodeBuddy quota endpoint returned ${r.status}.`,quotas:{}};return{...function(a){let b=a?.data?.Response?.Data||a?.Response?.Data||a?.data||a||{},c=Array.isArray(b?.Accounts)?b.Accounts:Array.isArray(b?.accounts)?b.accounts:[];if(0===c.length)return{plan:"CodeBuddy",message:"CodeBuddy connected. No quota records were returned.",quotas:{}};let d=a=>{let b=n(a.CycleEndTime);return b?new Date(b).getTime():1/0},e=a=>{let b=d(a),c=Number(a.DeductionEndTime);return Number.isFinite(b)&&Number.isFinite(c)&&c-b>1728e5},f=(a,b)=>d(a)-d(b),g=c.filter(e).sort(f),h=c.filter(a=>!e(a)).sort(f),i={},k=!1,l=(a,b,{recurring:c})=>{var d,e;let f=function(a,{useCycle:b=!0}={}){let c=b?p(a.CycleCapacitySizePrecise,a.CycleCapacitySize,a.CapacitySizePrecise,a.CapacitySize):p(a.CapacitySizePrecise,a.CapacitySize,a.CycleCapacitySizePrecise,a.CycleCapacitySize),d=b?p(a.CycleCapacityRemainPrecise,a.CapacityRemainPrecise,a.CapacityRemain):p(a.CapacityRemainPrecise,a.CapacityRemain,a.CycleCapacityRemainPrecise),e=p(a.CapacityUsedPrecise,a.CapacityUsed,null!==c&&null!==d?Math.max(0,c-d):null);if(null===c&&null===d&&null===e)return null;let f=Math.max(0,c??(e??0)+(d??0)),g=Math.max(0,d??Math.max(0,f-(e??0))),h=Math.max(0,e??Math.max(0,f-g));return{total:f,remaining:g,used:h,resetAt:n(a.CycleEndTime||a.DeductionEndTime||a.ExpiredTime)}}(b,{useCycle:c});f&&((b.PackageCode===j.proMon||b.PackageCode===j.proYear)&&(k=!0),i[a]||(i[a]={used:0,total:0,remaining:0,resetAt:null,unit:"credits",unlimited:!1,recurring:c}),i[a].used+=f.used,i[a].total+=f.total,i[a].remaining+=f.remaining,i[a].resetAt=(d=i[a].resetAt,e=f.resetAt,d?e&&new Date(e).getTime()<new Date(d).getTime()?e:d:e||null),i[a].recurring=i[a].recurring&&c)};for(let a of g)l("Monthly Credits",a,{recurring:!0});for(let a of h)l("Bonus Credits",a,{recurring:!1});if(h.length>0&&i["Bonus Credits"]&&(i["Bonus Credits"].packCount=h.length),0===Object.keys(i).length)for(let a of c){if(!a||"object"!=typeof a)continue;let b=function(a){switch(a){case j.free:case j.freeMon:case j.proMon:case j.proYear:return"Monthly Credits";case j.gift:return"Gift Credits";case j.extra:return"Extra Credits";case j.activity:return"Activity Credits";default:return a?"Other Credits":null}}(a.PackageCode)||"Other Credits",c="Activity Credits"!==b&&"Gift Credits"!==b;l(c?"Monthly Credits":"Bonus Credits",a,{recurring:c})}if(0===Object.keys(i).length)return{plan:k?"Pro":"Free",message:"CodeBuddy connected. Unable to extract quota values.",quotas:{}};for(let a of Object.values(i))a.remainingPercentage=a.total>0?Math.max(0,Math.min(100,a.remaining/a.total*100)):0;return{plan:k?"Pro":"Free",quotas:i}}(t),authMode:i}}catch(a){return{plan:"CodeBuddy",message:`CodeBuddy connected. Unable to fetch quota: ${a.message}`,quotas:{}}}}function n(a){if(!a)return null;try{if(a instanceof Date)return a.toISOString();if("number"==typeof a)return new Date(a<1e12?1e3*a:a).toISOString();if("string"==typeof a){if(/^\d+$/.test(a)){let b=Number(a);return new Date(b<1e12?1e3*b:b).toISOString()}return new Date(a).toISOString()}return null}catch(b){return console.warn(`Failed to parse reset time: ${a}`,b),null}}function o(a){let b=a=>String(a).padStart(2,"0");return`${a.getFullYear()}-${b(a.getMonth()+1)}-${b(a.getDate())} ${b(a.getHours())}:${b(a.getMinutes())}:${b(a.getSeconds())}`}function p(...a){for(let b of a){if(null==b||""===b)continue;let a=Number(b);if(Number.isFinite(a))return a}return null}async function q(a,b,c=null){try{if(!a)throw Error("No GitHub access token available. Please re-authorize the connection.");let b=await (0,e.proxyAwareFetch)("https://api.github.com/copilot_internal/user",{headers:{Authorization:`token ${a}`,Accept:"application/json","X-GitHub-Api-Version":"2022-11-28","User-Agent":"GitHubCopilotChat/0.26.7","Editor-Version":"vscode/1.100.0","Editor-Plugin-Version":"copilot-chat/0.26.7"}},c);if(!b.ok){let a=await b.text();throw Error(`GitHub API error: ${a}`)}let d=await b.json();if(d.quota_snapshots){let a=d.quota_snapshots,b=n(d.quota_reset_date);return{plan:d.copilot_plan,resetDate:d.quota_reset_date,quotas:{chat:{...r(a.chat),resetAt:b},completions:{...r(a.completions),resetAt:b},premium_interactions:{...r(a.premium_interactions),resetAt:b}}}}if(d.monthly_quotas||d.limited_user_quotas){let a=d.monthly_quotas||{},b=d.limited_user_quotas||{},c=n(d.limited_user_reset_date);return{plan:d.copilot_plan||d.access_type_sku,resetDate:d.limited_user_reset_date,quotas:{chat:{used:b.chat||0,total:a.chat||0,unlimited:!1,resetAt:c},completions:{used:b.completions||0,total:a.completions||0,unlimited:!1,resetAt:c}}}}return{message:"GitHub Copilot connected. Unable to parse quota data."}}catch(a){throw Error(`Failed to fetch GitHub usage: ${a.message}`)}}function r(a){return a?{used:a.entitlement-a.remaining,total:a.entitlement,remaining:a.remaining,unlimited:a.unlimited||!1}:{used:0,total:0,unlimited:!0}}async function s(a,b,c=null){if(!a)return{plan:"Free",message:"Gemini CLI access token not available."};try{let d,f=t(b?.projectId),g="Free";if(!f){let b=await u(a,c);f=t(b?.cloudaicompanionProject),g=b?.currentTier?.name||g}if(!f)return{plan:g,message:"Gemini CLI project ID not available. Reconnect Gemini CLI, or configure a Google Cloud project with Gemini Code Assist access before checking quota."};let h=new AbortController,i=setTimeout(()=>h.abort(),1e4);try{d=await (0,e.proxyAwareFetch)("https://cloudcode-pa.googleapis.com/v1internal:retrieveUserQuota",{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/json"},body:JSON.stringify({project:f}),signal:h.signal},c)}finally{clearTimeout(i)}if(!d.ok)return{plan:g,message:`Gemini CLI quota error (${d.status}).`};let j=await d.json(),k={};if(Array.isArray(j.buckets))for(let a of j.buckets){if(!a.modelId||null==a.remainingFraction)continue;let b=Number(a.remainingFraction)||0,c=Math.round(1e3*b),d=Math.max(0,1e3-c);k[a.modelId]={used:d,total:1e3,resetAt:n(a.resetTime),remainingPercentage:100*b,unlimited:!1}}return{plan:g,quotas:k}}catch(a){return{message:`Gemini CLI error: ${a.message}`}}}function t(a){return"string"==typeof a?a.trim()||null:a&&"object"==typeof a&&"string"==typeof a.id&&a.id.trim()||null}async function u(a,b=null){let c=new AbortController,f=setTimeout(()=>c.abort(),1e4);try{let f=await (0,e.proxyAwareFetch)("https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/json"},body:JSON.stringify({metadata:d.Cn}),signal:c.signal},b);if(!f.ok)return null;return await f.json()}catch{return null}finally{clearTimeout(f)}}async function v(a,b,c,d){let f=null;for(let g of h.quotaApiHosts){let i=new AbortController,j=setTimeout(()=>i.abort(),1e4);try{let j=await (0,e.proxyAwareFetch)(`${g}${a}`,{method:"POST",headers:{Authorization:`Bearer ${b}`,"User-Agent":h.userAgent,"Content-Type":"application/json","x-request-source":"local"},body:JSON.stringify(c||{}),signal:i.signal},d);if(j.ok||401===j.status||403===j.status)return{response:j,host:g};f=Error(`Antigravity API error: ${j.status}`)}catch(a){f=a}finally{clearTimeout(j)}}if(f)throw f;throw Error("Antigravity API unavailable")}async function w(a,b,c=null){try{let d,e=t(b?.projectId),f=null,g=e;g||(f=await y(a,c),g=t(f?.cloudaicompanionProject));try{d=await v(h.fetchAvailableModelsPath,a,g?{project:g}:{},c)}catch(a){return{message:`Antigravity quota unavailable: ${a.message}. Chat may still work.`}}let i=d.response;if(401===i.status){let a=await x(b,c);if(a)return{accountDead:!0,message:`Antigravity account ${a}. Reconnect won't help \u2014 recreate the account.`,quotas:{}};return{message:"Antigravity quota API authentication expired. Chat may still work.",quotas:{}}}if(403===i.status)return{message:"Antigravity quota API access forbidden (tier may not expose quota). Chat may still work.",quotas:{}};if(!i.ok)throw Error(`Antigravity API error: ${i.status}`);let j=await i.json(),k=new Map;try{let b=await v(h.retrieveUserQuotaPath,a,g?{project:g}:{},c);if(b.response.ok){let a=await b.response.json();if(Array.isArray(a.buckets))for(let b of a.buckets){let a=String(b.modelId||"").trim();a&&k.set(a,b)}}}catch{}let l={};if(j.models){let a=["gemini-3-flash-agent","gemini-3.5-flash-low","gemini-3.5-flash-extra-low","gemini-pro-agent","gemini-3.1-pro-low","claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b-medium","gemini-3-flash"];for(let[b,c]of Object.entries(j.models)){if(c.isInternal||!a.includes(b))continue;let d=k.get(b),e=d||c.quotaInfo;if(!e)continue;let f=Number(e.remainingFraction)||0,g=100*f,h=Math.round(1e3*f),i=Math.max(0,1e3-h);l[b]={used:i,total:1e3,resetAt:n(e.resetTime),remainingPercentage:g,unlimited:!1,displayName:c.displayName||b,quotaSource:d?"retrieveUserQuota":"fetchAvailableModels"}}}return{plan:f?.currentTier?.name||"Unknown",quotas:l,subscriptionInfo:f}}catch(a){return console.error("[Antigravity Usage] Error:",a.message,a.cause),{message:`Antigravity error: ${a.message}`}}}async function x(a,b=null){let c=a?.refreshToken;if(!c)return null;try{let a,d=new AbortController,f=setTimeout(()=>d.abort(),1e4);try{a=await (0,e.proxyAwareFetch)(h.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:h.clientId,client_secret:h.clientSecret,refresh_token:c,grant_type:"refresh_token"}),signal:d.signal},b)}finally{clearTimeout(f)}if(a.ok)return null;let g=await a.json().catch(()=>({}));if("invalid_grant"===g.error){let a=(g.error_description||"").toLowerCase();if(a.includes("deleted"))return"has been deleted";if(a.includes("disabled")||a.includes("suspend"))return"is disabled/suspended";return"authorization was revoked"}return null}catch{return null}}async function y(a,b=null){let c=new AbortController,f=setTimeout(()=>c.abort(),1e4);try{let f=await (0,e.proxyAwareFetch)(h.loadProjectApiUrl,{method:"POST",headers:{Authorization:`Bearer ${a}`,"User-Agent":h.userAgent,"Content-Type":"application/json","x-request-source":"local"},body:JSON.stringify({metadata:d.Cn,mode:1}),signal:c.signal},b);if(!f.ok)return null;return await f.json()}catch(a){return console.error("[Antigravity Subscription] Error:",a.message),null}finally{clearTimeout(f)}}async function z(a,b=null){try{let c=await (0,e.proxyAwareFetch)("https://api.anthropic.com/api/oauth/usage",{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-beta":"oauth-2025-04-20","anthropic-version":i}},b);if(c.ok){let a=await c.json(),b={},d=a=>a&&"object"==typeof a&&"number"==typeof a.utilization,e=a=>{let b=a.utilization,c=Math.max(0,100-b);return{used:b,total:100,remaining:c,remainingPercentage:c,resetAt:n(a.resets_at),unlimited:!1}};for(let[c,f]of(d(a.five_hour)&&(b["session (5h)"]=e(a.five_hour)),d(a.seven_day)&&(b["weekly (7d)"]=e(a.seven_day)),Object.entries(a)))if(c.startsWith("seven_day_")&&"seven_day"!==c&&d(f)){let a=c.replace("seven_day_","");b[`weekly ${a} (7d)`]=e(f)}return{plan:"Claude Code",extraUsage:a.extra_usage??null,quotas:b}}return console.warn(`[Claude Usage] OAuth endpoint returned ${c.status}, falling back to legacy`),await A(a,b)}catch(a){return{message:`Claude connected. Unable to fetch usage: ${a.message}`}}}async function A(a,b=null){try{let c=await (0,e.proxyAwareFetch)("https://api.anthropic.com/v1/settings",{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":i}},b);if(c.ok){let d=await c.json();if(d.organization_id){let c=await (0,e.proxyAwareFetch)("https://api.anthropic.com/v1/organizations/{org_id}/usage".replace("{org_id}",d.organization_id),{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":i}},b);if(c.ok){let a=await c.json();return{plan:d.plan||"Unknown",organization:d.organization_name,quotas:a}}}return{plan:d.plan||"Unknown",organization:d.organization_name,message:"Claude connected. Usage details require admin access."}}return{message:"Claude connected. Usage API requires admin permissions."}}catch(a){return{message:`Claude connected. Unable to fetch usage: ${a.message}`}}}function B(a){return!a||"object"!=typeof a||Array.isArray(a)?null:a.rate_limit&&"object"==typeof a.rate_limit?a.rate_limit:a}function C(a){let b=Math.max(0,Math.min(100,function(a,b=0){if("number"==typeof a&&Number.isFinite(a))return a;if("string"==typeof a&&a.trim()){let b=Number(a);if(Number.isFinite(b))return b}return b}(a?.used_percent??a?.percent_used,0)));return{used:b,total:100,remaining:Math.max(0,100-b),resetAt:n(a?.reset_at??a?.resets_at??a?.resetAt??null),unlimited:!1}}function D(a,b,c){let d=B(c);if(!d)return!1;let e=d.primary_window||d.primary||c.primary_window||c.primary,f=d.secondary_window||d.secondary||c.secondary_window||c.secondary,g=!1;return e&&(a[b?`${b}_session`:"session"]=C(e),g=!0),f&&(a[b?`${b}_weekly`:"weekly"]=C(f),g=!0),g}async function E(a,b=null){try{let c=await (0,e.proxyAwareFetch)("https://chatgpt.com/backend-api/wham/usage",{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}},b);if(!c.ok)return{message:`Codex connected. Usage API temporarily unavailable (${c.status}).`};let d=await c.json(),f=d.rate_limit||d.rate_limits||d.rate_limits_by_limit_id?.codex||{},g=function(a){if(a.code_review_rate_limit||a.review_rate_limit)return a.code_review_rate_limit||a.review_rate_limit;let b=a.rate_limits_by_limit_id;return b&&"object"==typeof b&&!Array.isArray(b)?b.code_review||b.codex_review||b.review||null:(Array.isArray(a.additional_rate_limits)?a.additional_rate_limits:[]).find(a=>{let b=String(a?.limit_name||a?.metered_feature||a?.id||"").toLowerCase();return"code_review"===b||"codex_review"===b||"review"===b||b.includes("review")})||null}(d),h={};return D(h,"",f),D(h,"review",g),{plan:d.plan_type||d.summary?.plan||"unknown",limitReached:B(f)?.limit_reached||!1,reviewLimitReached:B(g)?.limit_reached||!1,quotas:h}}catch(a){throw Error(`Failed to fetch Codex usage: ${a.message}`)}}async function F(a,b,c=null){let d=b?.profileArn||"arn:aws:codewhisperer:us-east-1:638616132270:profile/AAAACCCCXXXX",f=b?.authMethod||"builder-id",g=new URLSearchParams({isEmailRequired:"true",origin:"AI_EDITOR",resourceType:"AGENTIC_REQUEST"}),h=!1,i=[];for(let b of[{name:"codewhisperer-get",run:async()=>(0,e.proxyAwareFetch)(`https://codewhisperer.us-east-1.amazonaws.com/getUsageLimits?${g.toString()}`,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json","x-amz-user-agent":"aws-sdk-js/1.0.0 KiroIDE","user-agent":"aws-sdk-js/1.0.0 KiroIDE"}},c)},{name:"codewhisperer-post",run:async()=>(0,e.proxyAwareFetch)("https://codewhisperer.us-east-1.amazonaws.com",{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/x-amz-json-1.0","x-amz-target":"AmazonCodeWhispererService.GetUsageLimits",Accept:"application/json"},body:JSON.stringify({origin:"AI_EDITOR",profileArn:d,resourceType:"AGENTIC_REQUEST"})},c)},{name:"q-get",run:async()=>{let b=new URLSearchParams({origin:"AI_EDITOR",profileArn:d,resourceType:"AGENTIC_REQUEST"});return(0,e.proxyAwareFetch)(`https://q.us-east-1.amazonaws.com/getUsageLimits?${b}`,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}},c)}}])try{let a=await b.run();if(!a.ok){let c=await a.text().catch(()=>"");(401===a.status||403===a.status)&&(h=!0),i.push(`${b.name}:${a.status}${c?`:${c}`:""}`);continue}let c=await a.json();return function(a){let b=a.usageBreakdownList||[],c={},d=n(a.nextDateReset||a.resetDate);return b.forEach(a=>{let b=a.resourceType?.toLowerCase()||"unknown",e=a.currentUsageWithPrecision||0,f=a.usageLimitWithPrecision||0;if(c[b]={used:e,total:f,remaining:f-e,resetAt:d,unlimited:!1},a.freeTrialInfo){let e=a.freeTrialInfo.currentUsageWithPrecision||0,f=a.freeTrialInfo.usageLimitWithPrecision||0;c[`${b}_freetrial`]={used:e,total:f,remaining:f-e,resetAt:n(a.freeTrialInfo.freeTrialExpiry||d),unlimited:!1}}}),{plan:a.subscriptionInfo?.subscriptionTitle||"Kiro",quotas:c}}(c)}catch(a){i.push(`${b.name}:${a.message}`)}return h&&"idc"===f?{message:"Kiro quota API is unavailable for the current AWS IAM Identity Center session. Chat may still work. If this persists after renewing your session, reconnect Kiro.",quotas:{}}:h&&("google"===f||"github"===f)?{message:"Kiro quota API authentication expired. Chat may still work.",quotas:{}}:h?{message:"Kiro quota API rejected the current token. Chat may still work.",quotas:{}}:{message:i.length>0?`Unable to fetch Kiro usage right now. (${i[i.length-1]})`:"Unable to fetch Kiro usage right now.",quotas:{}}}async function G(a,b){try{if(!b?.resourceUrl)return{message:"Qwen connected. No resource URL available."};return{message:"Qwen connected. Usage tracked per request."}}catch(a){return{message:"Unable to fetch Qwen usage."}}}async function H(a){try{return{message:"iFlow connected. Usage tracked per request."}}catch(a){return{message:"Unable to fetch iFlow usage."}}}async function I(a,b){try{return{plan:b?.plan||"Free",message:"Ollama Cloud uses a free tier with light usage limits (resets every 5h & 7d). For detailed usage tracking, visit ollama.com/settings/keys.",quotas:[]}}catch(a){return{message:"Unable to fetch Ollama Cloud usage."}}}async function J(a,b,c=null){if(!a)return{message:"GLM API key not available."};let d=f["glm-cn"===b?"china":"international"];try{let b=await (0,e.proxyAwareFetch)(d,{headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}},c);if(!b.ok){if(401===b.status)return{message:"GLM API key invalid or expired."};return{message:`GLM quota API error (${b.status}).`}}let f=await b.json(),g=f?.data&&"object"==typeof f.data?f.data:{},h=Array.isArray(g.limits)?g.limits:[],i={};for(let a of h){if(!a||"TOKENS_LIMIT"!==a.type)continue;let b=Number(a.percentage)||0,c=Number(a.nextResetTime)||0,d=Math.max(0,100-b);i.session={used:b,total:100,remaining:d,remainingPercentage:d,resetAt:c>0?new Date(c).toISOString():null,unlimited:!1}}let j="string"==typeof g.level?g.level:"";return{plan:j?j.charAt(0).toUpperCase()+j.slice(1).toLowerCase():"Unknown",quotas:i}}catch(a){return{message:`GLM error: ${a.message}`}}}function K(a,b,c){return a&&"object"==typeof a?a[b]??a[c]??null:null}function L(a,b,c){if(!a||"object"!=typeof a)return null;let d=a[b]??a[c];if(null==d)return null;let e=Number(d);return Number.isFinite(e)?Math.max(0,Math.min(100,e)):null}function M(a){return Math.max(0,Number(K(a,"current_interval_total_count","currentIntervalTotalCount"))||0)}function N(a){return Math.max(0,Number(K(a,"current_weekly_total_count","currentWeeklyTotalCount"))||0)}function O(a){return!!(M(a)>0||N(a)>0)||null!==L(a,"current_interval_remaining_percent","currentIntervalRemainingPercent")||null!==L(a,"current_weekly_remaining_percent","currentWeeklyRemainingPercent")}function P(a,b,c,d,e,f,g,h,i,j){let k=d(c),l=L(c,g,h);if(k<=0&&null===l)return;let m=Math.max(0,Number(K(c,e,f))||0),o=k,p=m;k<=0&&(o=100,p=j?Math.round(l/100*o):Math.round(o*(1-l/100))),a[b]=function(a,b,c,d,e=null){var f,g,h;let i=Math.max(0,a),j=d?Math.max(i-b,0):Math.min(Math.max(0,b),i),k=Math.max(i-j,0),l=(f=e,g=k,h=i,null!=f&&Number.isFinite(f)?Math.max(0,Math.min(100,f)):h>0?Math.max(0,Math.min(100,g/h*100)):0);return{used:j,total:i,remaining:k,remainingPercentage:l,resetAt:c,unlimited:!1}}(o,p,function(a,b,c,d,e,f){let g=Number(K(a,c,d))||0;return g>0?new Date(b+g).toISOString():n(K(a,e,f))}(c,...i),j,l)}async function Q(a,b,c=null){if(!a)return{message:"MiniMax API key not available."};let d=g[b]||[],f="";for(let b=0;b<d.length;b+=1){let g=d[b],h=b<d.length-1;try{let b=await (0,e.proxyAwareFetch)(g,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json","Content-Type":"application/json"}},c),d=await b.text(),i={};if(d)try{i=JSON.parse(d)}catch{i={}}let j=(i?.base_resp??i?.baseResp)||{},k=Number(j.status_code??j.statusCode)||0,l=String(j.status_msg??j.statusMsg??"").trim(),m=`${l} ${d}`.trim(),n=/token plan|coding plan|invalid api key|invalid key|unauthorized|inactive/i;if(401===b.status||403===b.status||1004===k||n.test(m))return{message:"MiniMax API key invalid or inactive. Use an active Token/Coding Plan key."};if(!b.ok){if(f=`MiniMax usage endpoint error (${b.status})`,(404===b.status||405===b.status||b.status>=500)&&h)continue;return{message:`MiniMax connected. ${f}`}}if(0!==k)return{message:`MiniMax connected. ${l||"Upstream quota API error"}`};let o=i?.model_remains??i?.modelRemains,p=(Array.isArray(o)?o:[]).filter(O);if(0===p.length)return{message:"MiniMax connected. No quota data was returned."};let q=Date.now(),r=g.includes("/coding_plan/remains"),s={};for(let a of p){let b=function(a){let b=String(K(a,"model_name","modelName")||"").trim();return b?"MiniMax-M*"===b||"general"===b?"M-series":b.replace(/[_-]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,a=>a.toUpperCase()).replace(/\bTo\b/g,"to").replace(/\bTts\b/g,"TTS").replace(/\bHd\b/g,"HD"):"MiniMax"}(a);P(s,`${b} (5h)`,a,M,"current_interval_usage_count","currentIntervalUsageCount","current_interval_remaining_percent","currentIntervalRemainingPercent",[q,"remains_time","remainsTime","end_time","endTime"],r),P(s,`${b} (7d)`,a,N,"current_weekly_usage_count","currentWeeklyUsageCount","current_weekly_remaining_percent","currentWeeklyRemainingPercent",[q,"weekly_remains_time","weeklyRemainsTime","weekly_end_time","weeklyEndTime"],r)}if(0===Object.keys(s).length)return{message:"MiniMax connected. Unable to extract quota usage."};return{quotas:s}}catch(a){if(f=a.message,!h)break}}return{message:f?`MiniMax connected. Unable to fetch usage: ${f}`:"MiniMax connected. Unable to fetch usage."}}async function R(a,b=null){if(!a)return{message:"Qoder usage unavailable: no access token"};try{let c=await (0,e.proxyAwareFetch)("https://openapi.qoder.sh/api/v2/quota/usage",{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}},b);if(!c.ok)return{message:`Qoder connected. Usage fetch returned ${c.status}.`};let d=await c.json().catch(()=>null);if(!d)return{message:"Qoder connected. Usage response was not JSON."};let f=d.userQuota||{},g=d.orgResourcePackage||{},h=Number.isFinite(Number(d.expiresAt))&&Number(d.expiresAt)>0?Number(d.expiresAt):null,i=h?new Date(h).toISOString():null;return{quotas:{user:{total:Number(f.total)||0,used:Number(f.used)||0,remaining:Number(f.remaining)||0,unit:f.unit||"credits",resetAt:i},organization:{total:Number(g.total)||0,used:Number(g.used)||0,remaining:Number(g.remaining)||0,unit:g.unit||"credits",resetAt:i}},totalUsagePercentage:Number(d.totalUsagePercentage)||0,isQuotaExceeded:!!d.isQuotaExceeded,expiresAt:h}}catch(a){return{message:`Qoder connected. Unable to fetch usage: ${a.message}`}}}async function S(a,b=null,d=null){if(!a)return{message:"AutoClaw usage unavailable: no access token"};try{let{AUTOCLAW_WALLET_ENDPOINT:f,buildAutoClawWalletHeaders:g}=await Promise.resolve().then(c.bind(c,42693)),h=await (0,e.proxyAwareFetch)(f,{method:"GET",headers:g(a)},b);if(!h.ok)return{message:`AutoClaw connected. Usage fetch returned ${h.status}.`};let i=await h.json().catch(()=>null);if(!i||0!==i.code)return{message:"AutoClaw connected. Unable to read balance."};let j=Number(i.data?.total_balance),k=Number.isFinite(j)?j:0,l=k;try{if(d?.id){let{getQuotaSnapshot:a}=await Promise.resolve().then(c.bind(c,89718)),b=await a(d.id),e=Number(b?.usage?.quotas?.points?.total)||0,f=Number(b?.usage?.quotas?.points?.remaining);l=Math.max(e,k,Number.isFinite(f)?f:0)}}catch{}let m=Math.max(0,l-k);return{quotas:{points:{total:l,used:m,remaining:k,unit:"points",resetAt:null}},totalUsagePercentage:l>0?Math.round(m/l*100):0,isQuotaExceeded:k<=0}}catch(a){return{message:`AutoClaw connected. Unable to fetch balance: ${a.message}`}}}}};