zevairouter 1.0.46 → 1.0.48

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 (1116) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/cli/app/.next-cli-build/BUILD_ID +1 -1
  3. package/cli/app/.next-cli-build/app-path-routes-manifest.json +1 -0
  4. package/cli/app/.next-cli-build/build-manifest.json +2 -2
  5. package/cli/app/.next-cli-build/routes-manifest.json +6 -0
  6. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js +2 -2
  7. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js.nft.json +1 -1
  8. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page_client-reference-manifest.js +1 -1
  9. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  10. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  11. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  12. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +2 -2
  13. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  14. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  15. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  16. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  17. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  18. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  19. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  20. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  21. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  22. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  23. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  24. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js +2 -2
  25. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js.nft.json +1 -1
  26. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page_client-reference-manifest.js +1 -1
  27. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  28. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  29. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  30. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +3 -3
  31. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  32. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  33. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
  34. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  35. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  36. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +2 -2
  37. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  38. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  39. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
  40. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  41. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  42. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  43. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  44. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  45. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
  46. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  47. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  48. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  49. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  50. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  51. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
  52. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  53. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  54. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  55. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  56. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  57. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  58. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  59. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  60. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +2 -2
  61. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  62. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  63. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +2 -2
  64. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
  65. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
  66. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  67. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  68. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  69. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +2 -2
  70. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
  71. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  72. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  73. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  74. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  75. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  76. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  77. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  78. package/cli/app/.next-cli-build/server/app/_global-error/page.js +2 -2
  79. package/cli/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  80. package/cli/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  81. package/cli/app/.next-cli-build/server/app/_global-error.html +1 -1
  82. package/cli/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  83. package/cli/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  84. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  85. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  86. package/cli/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  87. package/cli/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  88. package/cli/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  89. package/cli/app/.next-cli-build/server/app/_not-found/page.js +2 -2
  90. package/cli/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  91. package/cli/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  92. package/cli/app/.next-cli-build/server/app/_not-found.html +1 -1
  93. package/cli/app/.next-cli-build/server/app/_not-found.rsc +4 -4
  94. package/cli/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +4 -4
  95. package/cli/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  96. package/cli/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +4 -4
  97. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  98. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  99. package/cli/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  100. package/cli/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
  101. package/cli/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  102. package/cli/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
  103. package/cli/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  104. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
  105. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  106. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
  107. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  108. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
  109. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  110. package/cli/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
  111. package/cli/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  112. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +2 -2
  113. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  114. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  115. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  116. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  117. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  118. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +1 -1
  119. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  120. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
  121. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  122. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js +1 -1
  123. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js.nft.json +1 -1
  124. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
  125. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  126. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +1 -1
  127. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  128. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
  129. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  130. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
  131. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  132. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
  133. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  134. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
  135. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  136. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +1 -1
  137. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  138. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
  139. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  140. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
  141. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  142. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  143. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  144. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +1 -1
  145. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  146. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
  147. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  148. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  149. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  150. package/cli/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  151. package/cli/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  152. package/cli/app/.next-cli-build/server/app/api/context/[id]/route.js +1 -1
  153. package/cli/app/.next-cli-build/server/app/api/context/[id]/route.js.nft.json +1 -1
  154. package/cli/app/.next-cli-build/server/app/api/context/bulk/route.js +1 -1
  155. package/cli/app/.next-cli-build/server/app/api/context/bulk/route.js.nft.json +1 -1
  156. package/cli/app/.next-cli-build/server/app/api/context/route.js +1 -1
  157. package/cli/app/.next-cli-build/server/app/api/context/route.js.nft.json +1 -1
  158. package/cli/app/.next-cli-build/server/app/api/headroom/extras/route.js +1 -1
  159. package/cli/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
  160. package/cli/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
  161. package/cli/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
  162. package/cli/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
  163. package/cli/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
  164. package/cli/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
  165. package/cli/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
  166. package/cli/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
  167. package/cli/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
  168. package/cli/app/.next-cli-build/server/app/api/headroom/stop/route.js +1 -1
  169. package/cli/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
  170. package/cli/app/.next-cli-build/server/app/api/health/route.js +1 -1
  171. package/cli/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  172. package/cli/app/.next-cli-build/server/app/api/init/route.js +1 -1
  173. package/cli/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  174. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  175. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  176. package/cli/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  177. package/cli/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  178. package/cli/app/.next-cli-build/server/app/api/locale/route.js +1 -1
  179. package/cli/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  180. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +2 -2
  181. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  182. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +1 -1
  183. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  184. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  185. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  186. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  187. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  188. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  189. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  190. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  191. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  192. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  193. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  194. package/cli/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  195. package/cli/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  196. package/cli/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  197. package/cli/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  198. package/cli/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  199. package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  200. package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  201. package/cli/app/.next-cli-build/server/app/api/models/route.js +1 -1
  202. package/cli/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  203. package/cli/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  204. package/cli/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  205. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  206. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  207. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js +1 -1
  208. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  209. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  210. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  211. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js +1 -1
  212. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js.nft.json +1 -1
  213. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js +1 -1
  214. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js.nft.json +1 -1
  215. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js +1 -1
  216. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js.nft.json +1 -1
  217. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route.js +1 -1
  218. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  219. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  220. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  221. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/route.js +1 -1
  222. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/route.js.nft.json +1 -1
  223. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/latest/route.js +1 -1
  224. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/latest/route.js.nft.json +1 -1
  225. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/route.js +1 -1
  226. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/route.js.nft.json +1 -1
  227. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js +1 -1
  228. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  229. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  230. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  231. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js +1 -1
  232. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js.nft.json +1 -1
  233. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js +1 -1
  234. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js.nft.json +1 -1
  235. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js +1 -1
  236. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js.nft.json +1 -1
  237. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js +1 -1
  238. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js.nft.json +1 -1
  239. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js +1 -1
  240. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js.nft.json +1 -1
  241. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route.js +1 -1
  242. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  243. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  244. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  245. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route.js +1 -1
  246. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route.js.nft.json +1 -1
  247. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route.js +1 -1
  248. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route.js.nft.json +1 -1
  249. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js +1 -1
  250. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js.nft.json +1 -1
  251. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route.js +1 -1
  252. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route.js.nft.json +1 -1
  253. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route.js +1 -1
  254. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route.js.nft.json +1 -1
  255. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  256. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  257. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  258. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  259. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  260. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  261. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  262. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  263. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route.js +1 -1
  264. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  265. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  266. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  267. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/route.js +1 -1
  268. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/route.js.nft.json +1 -1
  269. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/latest/route.js +1 -1
  270. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/latest/route.js.nft.json +1 -1
  271. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js +1 -1
  272. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js.nft.json +1 -1
  273. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/verify-key/route.js +1 -0
  274. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/verify-key/route.js.nft.json +1 -0
  275. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/verify-key/route_client-reference-manifest.js +1 -0
  276. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  277. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  278. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  279. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  280. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js +1 -1
  281. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  282. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  283. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  284. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js +1 -1
  285. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js.nft.json +1 -1
  286. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js +1 -1
  287. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js.nft.json +1 -1
  288. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js +1 -1
  289. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js.nft.json +1 -1
  290. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  291. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  292. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  293. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  294. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  295. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  296. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js +1 -1
  297. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  298. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  299. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  300. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js +1 -1
  301. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js.nft.json +1 -1
  302. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js +1 -1
  303. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js.nft.json +1 -1
  304. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js +1 -1
  305. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js.nft.json +1 -1
  306. package/cli/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  307. package/cli/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  308. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  309. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  310. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  311. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  312. package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
  313. package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  314. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  315. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  316. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  317. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  318. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  319. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  320. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  321. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  322. package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route.js +1 -1
  323. package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route.js.nft.json +1 -1
  324. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  325. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  326. package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
  327. package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  328. package/cli/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  329. package/cli/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  330. package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
  331. package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  332. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  333. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  334. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  335. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  336. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
  337. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  338. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  339. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  340. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
  341. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  342. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
  343. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  344. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
  345. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  346. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
  347. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  348. package/cli/app/.next-cli-build/server/app/api/pxpipe/health/route.js +2 -2
  349. package/cli/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
  350. package/cli/app/.next-cli-build/server/app/api/pxpipe/install/route.js +2 -2
  351. package/cli/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
  352. package/cli/app/.next-cli-build/server/app/api/pxpipe/restart/route.js +2 -2
  353. package/cli/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
  354. package/cli/app/.next-cli-build/server/app/api/pxpipe/start/route.js +2 -2
  355. package/cli/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
  356. package/cli/app/.next-cli-build/server/app/api/pxpipe/stats/route.js +2 -2
  357. package/cli/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
  358. package/cli/app/.next-cli-build/server/app/api/pxpipe/status/route.js +2 -2
  359. package/cli/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
  360. package/cli/app/.next-cli-build/server/app/api/pxpipe/stop/route.js +2 -2
  361. package/cli/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
  362. package/cli/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  363. package/cli/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  364. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  365. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  366. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
  367. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  368. package/cli/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  369. package/cli/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  370. package/cli/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
  371. package/cli/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  372. package/cli/app/.next-cli-build/server/app/api/tags/route.js +1 -1
  373. package/cli/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  374. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  375. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  376. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
  377. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  378. package/cli/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
  379. package/cli/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  380. package/cli/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
  381. package/cli/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  382. package/cli/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  383. package/cli/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  384. package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  385. package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  386. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
  387. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  388. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
  389. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  390. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
  391. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  392. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
  393. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  394. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  395. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  396. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  397. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  398. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +1 -1
  399. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  400. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  401. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  402. package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route.js +1 -1
  403. package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route.js.nft.json +1 -1
  404. package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  405. package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  406. package/cli/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
  407. package/cli/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  408. package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  409. package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  410. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  411. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  412. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  413. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  414. package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  415. package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  416. package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
  417. package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  418. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  419. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  420. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  421. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  422. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  423. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  424. package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  425. package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  426. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  427. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  428. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  429. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  430. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js +1 -1
  431. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  432. package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  433. package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  434. package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  435. package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  436. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
  437. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  438. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  439. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  440. package/cli/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  441. package/cli/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  442. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  443. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  444. package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  445. package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  446. package/cli/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  447. package/cli/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  448. package/cli/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  449. package/cli/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  450. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  451. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  452. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  453. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  454. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  455. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  456. package/cli/app/.next-cli-build/server/app/api/version/route.js +1 -1
  457. package/cli/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  458. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  459. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  460. package/cli/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  461. package/cli/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  462. package/cli/app/.next-cli-build/server/app/callback/page.js +2 -2
  463. package/cli/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  464. package/cli/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  465. package/cli/app/.next-cli-build/server/app/callback.html +1 -1
  466. package/cli/app/.next-cli-build/server/app/callback.rsc +4 -4
  467. package/cli/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +4 -4
  468. package/cli/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  469. package/cli/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +4 -4
  470. package/cli/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
  471. package/cli/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  472. package/cli/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  473. package/cli/app/.next-cli-build/server/app/dashboard/automation.html +1 -1
  474. package/cli/app/.next-cli-build/server/app/dashboard/automation.rsc +6 -6
  475. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation/__PAGE__.segment.rsc +2 -2
  476. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation.segment.rsc +1 -1
  477. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  478. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  479. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_full.segment.rsc +6 -6
  480. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_head.segment.rsc +1 -1
  481. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_index.segment.rsc +4 -4
  482. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_tree.segment.rsc +2 -2
  483. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  484. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +6 -6
  485. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  486. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  487. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  488. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  489. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
  490. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  491. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +4 -4
  492. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
  493. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  494. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +6 -6
  495. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  496. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  497. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  498. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  499. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
  500. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  501. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +4 -4
  502. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
  503. package/cli/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  504. package/cli/app/.next-cli-build/server/app/dashboard/combos.rsc +6 -6
  505. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  506. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  507. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  508. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  509. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
  510. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  511. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +4 -4
  512. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  513. package/cli/app/.next-cli-build/server/app/dashboard/context.html +1 -1
  514. package/cli/app/.next-cli-build/server/app/dashboard/context.rsc +6 -6
  515. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context/__PAGE__.segment.rsc +2 -2
  516. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context.segment.rsc +1 -1
  517. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  518. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  519. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_full.segment.rsc +6 -6
  520. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_head.segment.rsc +1 -1
  521. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_index.segment.rsc +4 -4
  522. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_tree.segment.rsc +2 -2
  523. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  524. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.rsc +6 -6
  525. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  526. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  527. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  528. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  529. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
  530. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  531. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +4 -4
  532. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  533. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  534. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +6 -6
  535. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  536. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  537. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  538. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  539. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  540. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +6 -6
  541. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  542. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +4 -4
  543. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
  544. package/cli/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  545. package/cli/app/.next-cli-build/server/app/dashboard/mitm.rsc +6 -6
  546. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  547. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  548. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  549. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  550. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
  551. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  552. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +4 -4
  553. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
  554. package/cli/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  555. package/cli/app/.next-cli-build/server/app/dashboard/profile.rsc +6 -6
  556. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  557. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  558. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  559. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  560. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
  561. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  562. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +4 -4
  563. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  564. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  565. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.rsc +6 -6
  566. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  567. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  568. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  569. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  570. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  571. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
  572. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  573. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +4 -4
  574. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  575. package/cli/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  576. package/cli/app/.next-cli-build/server/app/dashboard/providers.rsc +6 -6
  577. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  578. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  579. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  580. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  581. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
  582. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  583. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +4 -4
  584. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
  585. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  586. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +6 -6
  587. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  588. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  589. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  590. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  591. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
  592. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  593. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +4 -4
  594. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
  595. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
  596. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +6 -6
  597. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +2 -2
  598. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe.segment.rsc +1 -1
  599. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  600. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  601. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +6 -6
  602. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_head.segment.rsc +1 -1
  603. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_index.segment.rsc +4 -4
  604. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +2 -2
  605. package/cli/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
  606. package/cli/app/.next-cli-build/server/app/dashboard/quota.rsc +7 -7
  607. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  608. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  609. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  610. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  611. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +7 -7
  612. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  613. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +4 -4
  614. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
  615. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
  616. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  617. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  618. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  619. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +4 -4
  620. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
  621. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  622. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
  623. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  624. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  625. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  626. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  627. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  628. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  629. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.rsc +6 -6
  630. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +2 -2
  631. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +1 -1
  632. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  633. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  634. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +6 -6
  635. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +1 -1
  636. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +4 -4
  637. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +2 -2
  638. package/cli/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  639. package/cli/app/.next-cli-build/server/app/dashboard/translator.rsc +6 -6
  640. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  641. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  642. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  643. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  644. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
  645. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  646. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +4 -4
  647. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  648. package/cli/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  649. package/cli/app/.next-cli-build/server/app/dashboard/usage.rsc +6 -6
  650. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  651. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  652. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  653. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  654. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
  655. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  656. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +4 -4
  657. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  658. package/cli/app/.next-cli-build/server/app/dashboard.html +1 -1
  659. package/cli/app/.next-cli-build/server/app/dashboard.rsc +6 -6
  660. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  661. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  662. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  663. package/cli/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +6 -6
  664. package/cli/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  665. package/cli/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +4 -4
  666. package/cli/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  667. package/cli/app/.next-cli-build/server/app/index.html +1 -1
  668. package/cli/app/.next-cli-build/server/app/index.rsc +4 -4
  669. package/cli/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  670. package/cli/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +4 -4
  671. package/cli/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  672. package/cli/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +4 -4
  673. package/cli/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
  674. package/cli/app/.next-cli-build/server/app/landing/page.js +2 -2
  675. package/cli/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  676. package/cli/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  677. package/cli/app/.next-cli-build/server/app/landing.html +1 -1
  678. package/cli/app/.next-cli-build/server/app/landing.rsc +4 -4
  679. package/cli/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +4 -4
  680. package/cli/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  681. package/cli/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +4 -4
  682. package/cli/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
  683. package/cli/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  684. package/cli/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  685. package/cli/app/.next-cli-build/server/app/login/page.js +2 -2
  686. package/cli/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  687. package/cli/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  688. package/cli/app/.next-cli-build/server/app/login.html +1 -1
  689. package/cli/app/.next-cli-build/server/app/login.rsc +5 -5
  690. package/cli/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +5 -5
  691. package/cli/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  692. package/cli/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +4 -4
  693. package/cli/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
  694. package/cli/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  695. package/cli/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  696. package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
  697. package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  698. package/cli/app/.next-cli-build/server/app/page.js +2 -2
  699. package/cli/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  700. package/cli/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  701. package/cli/app/.next-cli-build/server/app-paths-manifest.json +1 -0
  702. package/cli/app/.next-cli-build/server/chunks/1939.js +1 -1
  703. package/cli/app/.next-cli-build/server/chunks/3092.js +1 -1
  704. package/cli/app/.next-cli-build/server/chunks/3163.js +1 -0
  705. package/cli/app/.next-cli-build/server/chunks/3407.js +1 -1
  706. package/cli/app/.next-cli-build/server/chunks/412.js +1 -1
  707. package/cli/app/.next-cli-build/server/chunks/4746.js +1 -1
  708. package/cli/app/.next-cli-build/server/chunks/6222.js +1 -1
  709. package/cli/app/.next-cli-build/server/chunks/6896.js +1 -1
  710. package/cli/app/.next-cli-build/server/chunks/7276.js +1 -1
  711. package/cli/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  712. package/cli/app/.next-cli-build/server/middleware.js +5 -5
  713. package/cli/app/.next-cli-build/server/pages/404.html +1 -1
  714. package/cli/app/.next-cli-build/server/pages/500.html +1 -1
  715. package/cli/app/.next-cli-build/static/8-zdQpqIFRe0fW-uKveuO/_buildManifest.js +1 -0
  716. package/cli/app/.next-cli-build/static/chunks/{3702-b72328c986036350.js → 3702-8cb8af970b7362e5.js} +1 -1
  717. package/cli/app/.next-cli-build/static/chunks/{5497-1d4969e5b1f0741e.js → 5497-5ccfbb5c9db7ce12.js} +1 -1
  718. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/automation/page-d8e163345f5c3116.js +1 -0
  719. package/cli/app/.next-cli-build/static/chunks/app/_global-error/page-5fb2952aabb0d9ce.js +1 -0
  720. package/cli/app/.next-cli-build/static/chunks/app/api/auth/login/route-5fb2952aabb0d9ce.js +1 -0
  721. package/cli/app/.next-cli-build/static/chunks/app/api/auth/logout/route-5fb2952aabb0d9ce.js +1 -0
  722. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-5fb2952aabb0d9ce.js +1 -0
  723. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-5fb2952aabb0d9ce.js +1 -0
  724. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-5fb2952aabb0d9ce.js +1 -0
  725. package/cli/app/.next-cli-build/static/chunks/app/api/auth/status/route-5fb2952aabb0d9ce.js +1 -0
  726. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-5fb2952aabb0d9ce.js +1 -0
  727. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-5fb2952aabb0d9ce.js +1 -0
  728. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-5fb2952aabb0d9ce.js +1 -0
  729. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-5fb2952aabb0d9ce.js +1 -0
  730. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-5fb2952aabb0d9ce.js +1 -0
  731. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-gateway/accounts/route-5fb2952aabb0d9ce.js +1 -0
  732. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-5fb2952aabb0d9ce.js +1 -0
  733. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-5fb2952aabb0d9ce.js +1 -0
  734. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-5fb2952aabb0d9ce.js +1 -0
  735. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-5fb2952aabb0d9ce.js +1 -0
  736. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-5fb2952aabb0d9ce.js +1 -0
  737. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-5fb2952aabb0d9ce.js +1 -0
  738. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-5fb2952aabb0d9ce.js +1 -0
  739. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-5fb2952aabb0d9ce.js +1 -0
  740. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-5fb2952aabb0d9ce.js +1 -0
  741. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-5fb2952aabb0d9ce.js +1 -0
  742. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-5fb2952aabb0d9ce.js +1 -0
  743. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-5fb2952aabb0d9ce.js +1 -0
  744. package/cli/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-5fb2952aabb0d9ce.js +1 -0
  745. package/cli/app/.next-cli-build/static/chunks/app/api/combos/route-5fb2952aabb0d9ce.js +1 -0
  746. package/cli/app/.next-cli-build/static/chunks/app/api/context/[id]/route-5fb2952aabb0d9ce.js +1 -0
  747. package/cli/app/.next-cli-build/static/chunks/app/api/context/bulk/route-5fb2952aabb0d9ce.js +1 -0
  748. package/cli/app/.next-cli-build/static/chunks/app/api/context/route-5fb2952aabb0d9ce.js +1 -0
  749. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-5fb2952aabb0d9ce.js +1 -0
  750. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-5fb2952aabb0d9ce.js +1 -0
  751. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-5fb2952aabb0d9ce.js +1 -0
  752. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/start/route-5fb2952aabb0d9ce.js +1 -0
  753. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/status/route-5fb2952aabb0d9ce.js +1 -0
  754. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-5fb2952aabb0d9ce.js +1 -0
  755. package/cli/app/.next-cli-build/static/chunks/app/api/health/route-5fb2952aabb0d9ce.js +1 -0
  756. package/cli/app/.next-cli-build/static/chunks/app/api/init/route-5fb2952aabb0d9ce.js +1 -0
  757. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-5fb2952aabb0d9ce.js +1 -0
  758. package/cli/app/.next-cli-build/static/chunks/app/api/keys/route-5fb2952aabb0d9ce.js +1 -0
  759. package/cli/app/.next-cli-build/static/chunks/app/api/locale/route-5fb2952aabb0d9ce.js +1 -0
  760. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-5fb2952aabb0d9ce.js +1 -0
  761. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-5fb2952aabb0d9ce.js +1 -0
  762. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-5fb2952aabb0d9ce.js +1 -0
  763. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-5fb2952aabb0d9ce.js +1 -0
  764. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-5fb2952aabb0d9ce.js +1 -0
  765. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-5fb2952aabb0d9ce.js +1 -0
  766. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-5fb2952aabb0d9ce.js +1 -0
  767. package/cli/app/.next-cli-build/static/chunks/app/api/models/alias/route-5fb2952aabb0d9ce.js +1 -0
  768. package/cli/app/.next-cli-build/static/chunks/app/api/models/availability/route-5fb2952aabb0d9ce.js +1 -0
  769. package/cli/app/.next-cli-build/static/chunks/app/api/models/custom/route-5fb2952aabb0d9ce.js +1 -0
  770. package/cli/app/.next-cli-build/static/chunks/app/api/models/disabled/route-5fb2952aabb0d9ce.js +1 -0
  771. package/cli/app/.next-cli-build/static/chunks/app/api/models/route-5fb2952aabb0d9ce.js +1 -0
  772. package/cli/app/.next-cli-build/static/chunks/app/api/models/test/route-5fb2952aabb0d9ce.js +1 -0
  773. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-5fb2952aabb0d9ce.js +1 -0
  774. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route-5fb2952aabb0d9ce.js +1 -0
  775. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route-5fb2952aabb0d9ce.js +1 -0
  776. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/route-5fb2952aabb0d9ce.js +1 -0
  777. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/latest/route-5fb2952aabb0d9ce.js +1 -0
  778. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/route-5fb2952aabb0d9ce.js +1 -0
  779. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route-5fb2952aabb0d9ce.js +1 -0
  780. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route-5fb2952aabb0d9ce.js +1 -0
  781. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/route-5fb2952aabb0d9ce.js +1 -0
  782. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/latest/route-5fb2952aabb0d9ce.js +1 -0
  783. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/route-5fb2952aabb0d9ce.js +1 -0
  784. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route-5fb2952aabb0d9ce.js +1 -0
  785. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route-5fb2952aabb0d9ce.js +1 -0
  786. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/route-5fb2952aabb0d9ce.js +1 -0
  787. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/latest/route-5fb2952aabb0d9ce.js +1 -0
  788. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/route-5fb2952aabb0d9ce.js +1 -0
  789. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-token/route-5fb2952aabb0d9ce.js +1 -0
  790. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/quota-cookie/route-5fb2952aabb0d9ce.js +1 -0
  791. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route-5fb2952aabb0d9ce.js +1 -0
  792. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route-5fb2952aabb0d9ce.js +1 -0
  793. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route-5fb2952aabb0d9ce.js +1 -0
  794. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/latest/route-5fb2952aabb0d9ce.js +1 -0
  795. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/route-5fb2952aabb0d9ce.js +1 -0
  796. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-token/route-5fb2952aabb0d9ce.js +1 -0
  797. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/quota-cookie/route-5fb2952aabb0d9ce.js +1 -0
  798. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-5fb2952aabb0d9ce.js +1 -0
  799. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-5fb2952aabb0d9ce.js +1 -0
  800. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-5fb2952aabb0d9ce.js +1 -0
  801. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-5fb2952aabb0d9ce.js +1 -0
  802. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route-5fb2952aabb0d9ce.js +1 -0
  803. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route-5fb2952aabb0d9ce.js +1 -0
  804. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/route-5fb2952aabb0d9ce.js +1 -0
  805. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/latest/route-5fb2952aabb0d9ce.js +1 -0
  806. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/route-5fb2952aabb0d9ce.js +1 -0
  807. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/verify-key/route-5fb2952aabb0d9ce.js +1 -0
  808. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-5fb2952aabb0d9ce.js +1 -0
  809. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-5fb2952aabb0d9ce.js +1 -0
  810. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route-5fb2952aabb0d9ce.js +1 -0
  811. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route-5fb2952aabb0d9ce.js +1 -0
  812. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/route-5fb2952aabb0d9ce.js +1 -0
  813. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/latest/route-5fb2952aabb0d9ce.js +1 -0
  814. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/route-5fb2952aabb0d9ce.js +1 -0
  815. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-5fb2952aabb0d9ce.js +1 -0
  816. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-5fb2952aabb0d9ce.js +1 -0
  817. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-5fb2952aabb0d9ce.js +1 -0
  818. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route-5fb2952aabb0d9ce.js +1 -0
  819. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route-5fb2952aabb0d9ce.js +1 -0
  820. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/route-5fb2952aabb0d9ce.js +1 -0
  821. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/latest/route-5fb2952aabb0d9ce.js +1 -0
  822. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/route-5fb2952aabb0d9ce.js +1 -0
  823. package/cli/app/.next-cli-build/static/chunks/app/api/pricing/route-5fb2952aabb0d9ce.js +1 -0
  824. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-5fb2952aabb0d9ce.js +1 -0
  825. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-5fb2952aabb0d9ce.js +1 -0
  826. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-5fb2952aabb0d9ce.js +1 -0
  827. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-5fb2952aabb0d9ce.js +1 -0
  828. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-5fb2952aabb0d9ce.js +1 -0
  829. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-5fb2952aabb0d9ce.js +1 -0
  830. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-5fb2952aabb0d9ce.js +1 -0
  831. package/cli/app/.next-cli-build/static/chunks/app/api/providers/bulk-delete/route-5fb2952aabb0d9ce.js +1 -0
  832. package/cli/app/.next-cli-build/static/chunks/app/api/providers/client/route-5fb2952aabb0d9ce.js +1 -0
  833. package/cli/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-5fb2952aabb0d9ce.js +1 -0
  834. package/cli/app/.next-cli-build/static/chunks/app/api/providers/route-5fb2952aabb0d9ce.js +1 -0
  835. package/cli/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-5fb2952aabb0d9ce.js +1 -0
  836. package/cli/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-5fb2952aabb0d9ce.js +1 -0
  837. package/cli/app/.next-cli-build/static/chunks/app/api/providers/validate/route-5fb2952aabb0d9ce.js +1 -0
  838. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-5fb2952aabb0d9ce.js +1 -0
  839. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-5fb2952aabb0d9ce.js +1 -0
  840. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-5fb2952aabb0d9ce.js +1 -0
  841. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-5fb2952aabb0d9ce.js +1 -0
  842. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-5fb2952aabb0d9ce.js +1 -0
  843. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-5fb2952aabb0d9ce.js +1 -0
  844. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-5fb2952aabb0d9ce.js +1 -0
  845. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-5fb2952aabb0d9ce.js +1 -0
  846. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-5fb2952aabb0d9ce.js +1 -0
  847. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-5fb2952aabb0d9ce.js +1 -0
  848. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-5fb2952aabb0d9ce.js +1 -0
  849. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-5fb2952aabb0d9ce.js +1 -0
  850. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-5fb2952aabb0d9ce.js +1 -0
  851. package/cli/app/.next-cli-build/static/chunks/app/api/settings/database/route-5fb2952aabb0d9ce.js +1 -0
  852. package/cli/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-5fb2952aabb0d9ce.js +1 -0
  853. package/cli/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-5fb2952aabb0d9ce.js +1 -0
  854. package/cli/app/.next-cli-build/static/chunks/app/api/settings/route-5fb2952aabb0d9ce.js +1 -0
  855. package/cli/app/.next-cli-build/static/chunks/app/api/shutdown/route-5fb2952aabb0d9ce.js +1 -0
  856. package/cli/app/.next-cli-build/static/chunks/app/api/tags/route-5fb2952aabb0d9ce.js +1 -0
  857. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-5fb2952aabb0d9ce.js +1 -0
  858. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-5fb2952aabb0d9ce.js +1 -0
  859. package/cli/app/.next-cli-build/static/chunks/app/api/translator/load/route-5fb2952aabb0d9ce.js +1 -0
  860. package/cli/app/.next-cli-build/static/chunks/app/api/translator/save/route-5fb2952aabb0d9ce.js +1 -0
  861. package/cli/app/.next-cli-build/static/chunks/app/api/translator/send/route-5fb2952aabb0d9ce.js +1 -0
  862. package/cli/app/.next-cli-build/static/chunks/app/api/translator/translate/route-5fb2952aabb0d9ce.js +1 -0
  863. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-5fb2952aabb0d9ce.js +1 -0
  864. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-5fb2952aabb0d9ce.js +1 -0
  865. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-5fb2952aabb0d9ce.js +1 -0
  866. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-5fb2952aabb0d9ce.js +1 -0
  867. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-5fb2952aabb0d9ce.js +1 -0
  868. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-5fb2952aabb0d9ce.js +1 -0
  869. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-5fb2952aabb0d9ce.js +1 -0
  870. package/cli/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-5fb2952aabb0d9ce.js +1 -0
  871. package/cli/app/.next-cli-build/static/chunks/app/api/usage/aggregate/route-5fb2952aabb0d9ce.js +1 -0
  872. package/cli/app/.next-cli-build/static/chunks/app/api/usage/chart/route-5fb2952aabb0d9ce.js +1 -0
  873. package/cli/app/.next-cli-build/static/chunks/app/api/usage/history/route-5fb2952aabb0d9ce.js +1 -0
  874. package/cli/app/.next-cli-build/static/chunks/app/api/usage/providers/route-5fb2952aabb0d9ce.js +1 -0
  875. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-5fb2952aabb0d9ce.js +1 -0
  876. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-5fb2952aabb0d9ce.js +1 -0
  877. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stats/route-5fb2952aabb0d9ce.js +1 -0
  878. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stream/route-5fb2952aabb0d9ce.js +1 -0
  879. package/cli/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-5fb2952aabb0d9ce.js +1 -0
  880. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-5fb2952aabb0d9ce.js +1 -0
  881. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-5fb2952aabb0d9ce.js +1 -0
  882. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-5fb2952aabb0d9ce.js +1 -0
  883. package/cli/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-5fb2952aabb0d9ce.js +1 -0
  884. package/cli/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-5fb2952aabb0d9ce.js +1 -0
  885. package/cli/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-5fb2952aabb0d9ce.js +1 -0
  886. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-5fb2952aabb0d9ce.js +1 -0
  887. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/route-5fb2952aabb0d9ce.js +1 -0
  888. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-5fb2952aabb0d9ce.js +1 -0
  889. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-5fb2952aabb0d9ce.js +1 -0
  890. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/route-5fb2952aabb0d9ce.js +1 -0
  891. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-5fb2952aabb0d9ce.js +1 -0
  892. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/route-5fb2952aabb0d9ce.js +1 -0
  893. package/cli/app/.next-cli-build/static/chunks/app/api/v1/route-5fb2952aabb0d9ce.js +1 -0
  894. package/cli/app/.next-cli-build/static/chunks/app/api/v1/search/route-5fb2952aabb0d9ce.js +1 -0
  895. package/cli/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-5fb2952aabb0d9ce.js +1 -0
  896. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-5fb2952aabb0d9ce.js +1 -0
  897. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-5fb2952aabb0d9ce.js +1 -0
  898. package/cli/app/.next-cli-build/static/chunks/app/api/version/route-5fb2952aabb0d9ce.js +1 -0
  899. package/cli/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-5fb2952aabb0d9ce.js +1 -0
  900. package/cli/app/.next-cli-build/static/chunks/app/api/version/update/route-5fb2952aabb0d9ce.js +1 -0
  901. package/cli/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-5fb2952aabb0d9ce.js +1 -0
  902. package/cli/app/.next-cli-build/static/chunks/app/page-5fb2952aabb0d9ce.js +1 -0
  903. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-5fb2952aabb0d9ce.js +1 -0
  904. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-5fb2952aabb0d9ce.js +1 -0
  905. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-5fb2952aabb0d9ce.js +1 -0
  906. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-5fb2952aabb0d9ce.js +1 -0
  907. package/cli/app/.next-cli-build/static/css/60f1db84eb75a556.css +1 -0
  908. package/cli/app/package.json +1 -1
  909. package/cli/package.json +1 -1
  910. package/package.json +1 -1
  911. package/src/app/(dashboard)/dashboard/automation/page.js +217 -0
  912. package/src/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route.js +5 -1
  913. package/src/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route.js +5 -1
  914. package/src/app/api/oauth/grok-cli/bulk-import/[jobId]/route.js +5 -2
  915. package/src/app/api/oauth/grok-cli/bulk-import/latest/route.js +4 -0
  916. package/src/app/api/oauth/grok-cli/bulk-import/route.js +4 -0
  917. package/src/app/api/oauth/grok-cli/verify-key/route.js +52 -0
  918. package/src/app/api/settings/route.js +22 -2
  919. package/src/lib/db/repos/settingsRepo.js +2 -0
  920. package/src/lib/oauth/services/grokAutomationGate.js +95 -0
  921. package/src/lib/oauth/services/grokCliBulkImportManager.js +10 -3
  922. package/src/lib/oauth/services/grokXaiEmailAutomation.js +9 -2
  923. package/src/lib/oauth/services/tempmailClient.js +36 -0
  924. package/src/shared/components/BulkAccountAutomationModal.js +29 -10
  925. package/cli/app/.next-cli-build/server/chunks/3487.js +0 -1
  926. package/cli/app/.next-cli-build/static/DqM_HdojRNWy74_uA739F/_buildManifest.js +0 -1
  927. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/automation/page-cfd2f9b0b6264c23.js +0 -1
  928. package/cli/app/.next-cli-build/static/chunks/app/_global-error/page-7215ab9980ff74fe.js +0 -1
  929. package/cli/app/.next-cli-build/static/chunks/app/api/auth/login/route-7215ab9980ff74fe.js +0 -1
  930. package/cli/app/.next-cli-build/static/chunks/app/api/auth/logout/route-7215ab9980ff74fe.js +0 -1
  931. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-7215ab9980ff74fe.js +0 -1
  932. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-7215ab9980ff74fe.js +0 -1
  933. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-7215ab9980ff74fe.js +0 -1
  934. package/cli/app/.next-cli-build/static/chunks/app/api/auth/status/route-7215ab9980ff74fe.js +0 -1
  935. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-7215ab9980ff74fe.js +0 -1
  936. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-7215ab9980ff74fe.js +0 -1
  937. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-7215ab9980ff74fe.js +0 -1
  938. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-7215ab9980ff74fe.js +0 -1
  939. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-7215ab9980ff74fe.js +0 -1
  940. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-gateway/accounts/route-7215ab9980ff74fe.js +0 -1
  941. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-7215ab9980ff74fe.js +0 -1
  942. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-7215ab9980ff74fe.js +0 -1
  943. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-7215ab9980ff74fe.js +0 -1
  944. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-7215ab9980ff74fe.js +0 -1
  945. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-7215ab9980ff74fe.js +0 -1
  946. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-7215ab9980ff74fe.js +0 -1
  947. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-7215ab9980ff74fe.js +0 -1
  948. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-7215ab9980ff74fe.js +0 -1
  949. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-7215ab9980ff74fe.js +0 -1
  950. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-7215ab9980ff74fe.js +0 -1
  951. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-7215ab9980ff74fe.js +0 -1
  952. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-7215ab9980ff74fe.js +0 -1
  953. package/cli/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-7215ab9980ff74fe.js +0 -1
  954. package/cli/app/.next-cli-build/static/chunks/app/api/combos/route-7215ab9980ff74fe.js +0 -1
  955. package/cli/app/.next-cli-build/static/chunks/app/api/context/[id]/route-7215ab9980ff74fe.js +0 -1
  956. package/cli/app/.next-cli-build/static/chunks/app/api/context/bulk/route-7215ab9980ff74fe.js +0 -1
  957. package/cli/app/.next-cli-build/static/chunks/app/api/context/route-7215ab9980ff74fe.js +0 -1
  958. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-7215ab9980ff74fe.js +0 -1
  959. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-7215ab9980ff74fe.js +0 -1
  960. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-7215ab9980ff74fe.js +0 -1
  961. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/start/route-7215ab9980ff74fe.js +0 -1
  962. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/status/route-7215ab9980ff74fe.js +0 -1
  963. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-7215ab9980ff74fe.js +0 -1
  964. package/cli/app/.next-cli-build/static/chunks/app/api/health/route-7215ab9980ff74fe.js +0 -1
  965. package/cli/app/.next-cli-build/static/chunks/app/api/init/route-7215ab9980ff74fe.js +0 -1
  966. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-7215ab9980ff74fe.js +0 -1
  967. package/cli/app/.next-cli-build/static/chunks/app/api/keys/route-7215ab9980ff74fe.js +0 -1
  968. package/cli/app/.next-cli-build/static/chunks/app/api/locale/route-7215ab9980ff74fe.js +0 -1
  969. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-7215ab9980ff74fe.js +0 -1
  970. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-7215ab9980ff74fe.js +0 -1
  971. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-7215ab9980ff74fe.js +0 -1
  972. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-7215ab9980ff74fe.js +0 -1
  973. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-7215ab9980ff74fe.js +0 -1
  974. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-7215ab9980ff74fe.js +0 -1
  975. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-7215ab9980ff74fe.js +0 -1
  976. package/cli/app/.next-cli-build/static/chunks/app/api/models/alias/route-7215ab9980ff74fe.js +0 -1
  977. package/cli/app/.next-cli-build/static/chunks/app/api/models/availability/route-7215ab9980ff74fe.js +0 -1
  978. package/cli/app/.next-cli-build/static/chunks/app/api/models/custom/route-7215ab9980ff74fe.js +0 -1
  979. package/cli/app/.next-cli-build/static/chunks/app/api/models/disabled/route-7215ab9980ff74fe.js +0 -1
  980. package/cli/app/.next-cli-build/static/chunks/app/api/models/route-7215ab9980ff74fe.js +0 -1
  981. package/cli/app/.next-cli-build/static/chunks/app/api/models/test/route-7215ab9980ff74fe.js +0 -1
  982. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-7215ab9980ff74fe.js +0 -1
  983. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route-7215ab9980ff74fe.js +0 -1
  984. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route-7215ab9980ff74fe.js +0 -1
  985. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/route-7215ab9980ff74fe.js +0 -1
  986. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/latest/route-7215ab9980ff74fe.js +0 -1
  987. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/route-7215ab9980ff74fe.js +0 -1
  988. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route-7215ab9980ff74fe.js +0 -1
  989. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route-7215ab9980ff74fe.js +0 -1
  990. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/route-7215ab9980ff74fe.js +0 -1
  991. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/latest/route-7215ab9980ff74fe.js +0 -1
  992. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/route-7215ab9980ff74fe.js +0 -1
  993. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route-7215ab9980ff74fe.js +0 -1
  994. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route-7215ab9980ff74fe.js +0 -1
  995. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/route-7215ab9980ff74fe.js +0 -1
  996. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/latest/route-7215ab9980ff74fe.js +0 -1
  997. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/route-7215ab9980ff74fe.js +0 -1
  998. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-token/route-7215ab9980ff74fe.js +0 -1
  999. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/quota-cookie/route-7215ab9980ff74fe.js +0 -1
  1000. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route-7215ab9980ff74fe.js +0 -1
  1001. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route-7215ab9980ff74fe.js +0 -1
  1002. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route-7215ab9980ff74fe.js +0 -1
  1003. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/latest/route-7215ab9980ff74fe.js +0 -1
  1004. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/route-7215ab9980ff74fe.js +0 -1
  1005. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-token/route-7215ab9980ff74fe.js +0 -1
  1006. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/quota-cookie/route-7215ab9980ff74fe.js +0 -1
  1007. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-7215ab9980ff74fe.js +0 -1
  1008. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-7215ab9980ff74fe.js +0 -1
  1009. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-7215ab9980ff74fe.js +0 -1
  1010. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-7215ab9980ff74fe.js +0 -1
  1011. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route-7215ab9980ff74fe.js +0 -1
  1012. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route-7215ab9980ff74fe.js +0 -1
  1013. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/route-7215ab9980ff74fe.js +0 -1
  1014. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/latest/route-7215ab9980ff74fe.js +0 -1
  1015. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/route-7215ab9980ff74fe.js +0 -1
  1016. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-7215ab9980ff74fe.js +0 -1
  1017. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-7215ab9980ff74fe.js +0 -1
  1018. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route-7215ab9980ff74fe.js +0 -1
  1019. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route-7215ab9980ff74fe.js +0 -1
  1020. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/route-7215ab9980ff74fe.js +0 -1
  1021. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/latest/route-7215ab9980ff74fe.js +0 -1
  1022. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/route-7215ab9980ff74fe.js +0 -1
  1023. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-7215ab9980ff74fe.js +0 -1
  1024. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-7215ab9980ff74fe.js +0 -1
  1025. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-7215ab9980ff74fe.js +0 -1
  1026. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route-7215ab9980ff74fe.js +0 -1
  1027. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route-7215ab9980ff74fe.js +0 -1
  1028. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/route-7215ab9980ff74fe.js +0 -1
  1029. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/latest/route-7215ab9980ff74fe.js +0 -1
  1030. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/route-7215ab9980ff74fe.js +0 -1
  1031. package/cli/app/.next-cli-build/static/chunks/app/api/pricing/route-7215ab9980ff74fe.js +0 -1
  1032. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-7215ab9980ff74fe.js +0 -1
  1033. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-7215ab9980ff74fe.js +0 -1
  1034. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-7215ab9980ff74fe.js +0 -1
  1035. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-7215ab9980ff74fe.js +0 -1
  1036. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-7215ab9980ff74fe.js +0 -1
  1037. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-7215ab9980ff74fe.js +0 -1
  1038. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-7215ab9980ff74fe.js +0 -1
  1039. package/cli/app/.next-cli-build/static/chunks/app/api/providers/bulk-delete/route-7215ab9980ff74fe.js +0 -1
  1040. package/cli/app/.next-cli-build/static/chunks/app/api/providers/client/route-7215ab9980ff74fe.js +0 -1
  1041. package/cli/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-7215ab9980ff74fe.js +0 -1
  1042. package/cli/app/.next-cli-build/static/chunks/app/api/providers/route-7215ab9980ff74fe.js +0 -1
  1043. package/cli/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-7215ab9980ff74fe.js +0 -1
  1044. package/cli/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-7215ab9980ff74fe.js +0 -1
  1045. package/cli/app/.next-cli-build/static/chunks/app/api/providers/validate/route-7215ab9980ff74fe.js +0 -1
  1046. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-7215ab9980ff74fe.js +0 -1
  1047. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-7215ab9980ff74fe.js +0 -1
  1048. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-7215ab9980ff74fe.js +0 -1
  1049. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-7215ab9980ff74fe.js +0 -1
  1050. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-7215ab9980ff74fe.js +0 -1
  1051. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-7215ab9980ff74fe.js +0 -1
  1052. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-7215ab9980ff74fe.js +0 -1
  1053. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-7215ab9980ff74fe.js +0 -1
  1054. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-7215ab9980ff74fe.js +0 -1
  1055. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-7215ab9980ff74fe.js +0 -1
  1056. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-7215ab9980ff74fe.js +0 -1
  1057. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-7215ab9980ff74fe.js +0 -1
  1058. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-7215ab9980ff74fe.js +0 -1
  1059. package/cli/app/.next-cli-build/static/chunks/app/api/settings/database/route-7215ab9980ff74fe.js +0 -1
  1060. package/cli/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-7215ab9980ff74fe.js +0 -1
  1061. package/cli/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-7215ab9980ff74fe.js +0 -1
  1062. package/cli/app/.next-cli-build/static/chunks/app/api/settings/route-7215ab9980ff74fe.js +0 -1
  1063. package/cli/app/.next-cli-build/static/chunks/app/api/shutdown/route-7215ab9980ff74fe.js +0 -1
  1064. package/cli/app/.next-cli-build/static/chunks/app/api/tags/route-7215ab9980ff74fe.js +0 -1
  1065. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-7215ab9980ff74fe.js +0 -1
  1066. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-7215ab9980ff74fe.js +0 -1
  1067. package/cli/app/.next-cli-build/static/chunks/app/api/translator/load/route-7215ab9980ff74fe.js +0 -1
  1068. package/cli/app/.next-cli-build/static/chunks/app/api/translator/save/route-7215ab9980ff74fe.js +0 -1
  1069. package/cli/app/.next-cli-build/static/chunks/app/api/translator/send/route-7215ab9980ff74fe.js +0 -1
  1070. package/cli/app/.next-cli-build/static/chunks/app/api/translator/translate/route-7215ab9980ff74fe.js +0 -1
  1071. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-7215ab9980ff74fe.js +0 -1
  1072. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-7215ab9980ff74fe.js +0 -1
  1073. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-7215ab9980ff74fe.js +0 -1
  1074. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-7215ab9980ff74fe.js +0 -1
  1075. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-7215ab9980ff74fe.js +0 -1
  1076. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-7215ab9980ff74fe.js +0 -1
  1077. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-7215ab9980ff74fe.js +0 -1
  1078. package/cli/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-7215ab9980ff74fe.js +0 -1
  1079. package/cli/app/.next-cli-build/static/chunks/app/api/usage/aggregate/route-7215ab9980ff74fe.js +0 -1
  1080. package/cli/app/.next-cli-build/static/chunks/app/api/usage/chart/route-7215ab9980ff74fe.js +0 -1
  1081. package/cli/app/.next-cli-build/static/chunks/app/api/usage/history/route-7215ab9980ff74fe.js +0 -1
  1082. package/cli/app/.next-cli-build/static/chunks/app/api/usage/providers/route-7215ab9980ff74fe.js +0 -1
  1083. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-7215ab9980ff74fe.js +0 -1
  1084. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-7215ab9980ff74fe.js +0 -1
  1085. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stats/route-7215ab9980ff74fe.js +0 -1
  1086. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stream/route-7215ab9980ff74fe.js +0 -1
  1087. package/cli/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-7215ab9980ff74fe.js +0 -1
  1088. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-7215ab9980ff74fe.js +0 -1
  1089. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-7215ab9980ff74fe.js +0 -1
  1090. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-7215ab9980ff74fe.js +0 -1
  1091. package/cli/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-7215ab9980ff74fe.js +0 -1
  1092. package/cli/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-7215ab9980ff74fe.js +0 -1
  1093. package/cli/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-7215ab9980ff74fe.js +0 -1
  1094. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-7215ab9980ff74fe.js +0 -1
  1095. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/route-7215ab9980ff74fe.js +0 -1
  1096. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-7215ab9980ff74fe.js +0 -1
  1097. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-7215ab9980ff74fe.js +0 -1
  1098. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/route-7215ab9980ff74fe.js +0 -1
  1099. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-7215ab9980ff74fe.js +0 -1
  1100. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/route-7215ab9980ff74fe.js +0 -1
  1101. package/cli/app/.next-cli-build/static/chunks/app/api/v1/route-7215ab9980ff74fe.js +0 -1
  1102. package/cli/app/.next-cli-build/static/chunks/app/api/v1/search/route-7215ab9980ff74fe.js +0 -1
  1103. package/cli/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-7215ab9980ff74fe.js +0 -1
  1104. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-7215ab9980ff74fe.js +0 -1
  1105. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-7215ab9980ff74fe.js +0 -1
  1106. package/cli/app/.next-cli-build/static/chunks/app/api/version/route-7215ab9980ff74fe.js +0 -1
  1107. package/cli/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-7215ab9980ff74fe.js +0 -1
  1108. package/cli/app/.next-cli-build/static/chunks/app/api/version/update/route-7215ab9980ff74fe.js +0 -1
  1109. package/cli/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-7215ab9980ff74fe.js +0 -1
  1110. package/cli/app/.next-cli-build/static/chunks/app/page-7215ab9980ff74fe.js +0 -1
  1111. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-7215ab9980ff74fe.js +0 -1
  1112. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-7215ab9980ff74fe.js +0 -1
  1113. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-7215ab9980ff74fe.js +0 -1
  1114. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-7215ab9980ff74fe.js +0 -1
  1115. package/cli/app/.next-cli-build/static/css/528817c12142b028.css +0 -1
  1116. /package/cli/app/.next-cli-build/static/{DqM_HdojRNWy74_uA739F → 8-zdQpqIFRe0fW-uKveuO}/_ssgManifest.js +0 -0
@@ -1,12 +1,15 @@
1
1
  import { NextResponse } from "next/server";
2
2
  import { getGrokCliBulkImportManager, buildLookupResponse } from "@/lib/oauth/services/grokCliBulkImportManager";
3
+ import { requireGrokAutomationKey } from "@/lib/oauth/services/grokAutomationGate";
3
4
 
4
5
  export const dynamic = "force-dynamic";
5
6
 
6
- export async function GET(_request, { params }) {
7
+ export async function GET(request, { params }) {
8
+ const denied = await requireGrokAutomationKey(request);
9
+ if (denied) return denied;
10
+
7
11
  const { jobId } = await params;
8
12
  const manager = getGrokCliBulkImportManager();
9
-
10
13
  const job = await manager.getJobWithPreview(jobId);
11
14
 
12
15
  if (!job) {
@@ -1,9 +1,13 @@
1
1
  import { NextResponse } from "next/server";
2
2
  import { getGrokCliBulkImportManager, buildLookupResponse } from "@/lib/oauth/services/grokCliBulkImportManager";
3
+ import { requireGrokAutomationKey } from "@/lib/oauth/services/grokAutomationGate";
3
4
 
4
5
  export const dynamic = "force-dynamic";
5
6
 
6
7
  export async function GET(request) {
8
+ const denied = await requireGrokAutomationKey(request);
9
+ if (denied) return denied;
10
+
7
11
  const manager = getGrokCliBulkImportManager();
8
12
  const searchParams = new URL(request.url).searchParams;
9
13
  const scope = searchParams.get("scope");
@@ -1,11 +1,15 @@
1
1
  import { NextResponse } from "next/server";
2
2
  import { getGrokCliBulkImportManager } from "@/lib/oauth/services/grokCliBulkImportManager";
3
+ import { requireGrokAutomationKey } from "@/lib/oauth/services/grokAutomationGate";
3
4
 
4
5
  export const dynamic = "force-dynamic";
5
6
 
6
7
  export async function POST(request) {
7
8
  try {
8
9
  const body = await request.json();
10
+ const denied = await requireGrokAutomationKey(request, body);
11
+ if (denied) return denied;
12
+
9
13
  const accounts = Array.isArray(body?.accounts) ? body.accounts : [];
10
14
 
11
15
  if (!accounts.length) {
@@ -0,0 +1,52 @@
1
+ import { NextResponse } from "next/server";
2
+ import {
3
+ isGrokAutomationKeyConfigured,
4
+ verifyGrokAutomationKey,
5
+ } from "@/lib/oauth/services/grokAutomationGate";
6
+
7
+ export const dynamic = "force-dynamic";
8
+
9
+ export async function GET() {
10
+ const configured = await isGrokAutomationKeyConfigured();
11
+ return NextResponse.json({
12
+ configured,
13
+ required: true,
14
+ requiresGrokAccessKey: true,
15
+ });
16
+ }
17
+
18
+ export async function POST(request) {
19
+ try {
20
+ const body = await request.json().catch(() => ({}));
21
+ const accessKey = String(body?.accessKey || body?.key || "").trim();
22
+ const configured = await isGrokAutomationKeyConfigured();
23
+ if (!configured) {
24
+ return NextResponse.json(
25
+ {
26
+ ok: false,
27
+ configured: false,
28
+ code: "not_configured",
29
+ error: "Grok automation access key is not configured yet. Set it in Settings first.",
30
+ requiresGrokAccessKey: true,
31
+ },
32
+ { status: 503 }
33
+ );
34
+ }
35
+ const result = await verifyGrokAutomationKey(accessKey);
36
+ if (!result.ok) {
37
+ return NextResponse.json(
38
+ {
39
+ ok: false,
40
+ configured: true,
41
+ code: result.code,
42
+ error: result.error,
43
+ requiresGrokAccessKey: true,
44
+ },
45
+ { status: 403 }
46
+ );
47
+ }
48
+ return NextResponse.json({ ok: true, configured: true });
49
+ } catch (error) {
50
+ return NextResponse.json({ error: error.message || "Verify failed" }, { status: 500 });
51
+ }
52
+ }
@@ -14,9 +14,13 @@ const SETTINGS_RESPONSE_HEADERS = {
14
14
  export async function GET() {
15
15
  try {
16
16
  const settings = await getSettings();
17
- const { password, oidcClientSecret, fiveSimApiKey, ...safeSettings } = settings;
17
+ const { password, oidcClientSecret, fiveSimApiKey, grokAutomationAccessKey, ...safeSettings } = settings;
18
18
  safeSettings.oidcConfigured = !!(safeSettings.oidcIssuerUrl && safeSettings.oidcClientId && oidcClientSecret);
19
19
  safeSettings.fiveSimApiKeyConfigured = !!fiveSimApiKey;
20
+ safeSettings.grokAutomationAccessKeyConfigured = !!(
21
+ grokAutomationAccessKey || process.env.GROK_AUTOMATION_ACCESS_KEY
22
+ );
23
+ safeSettings.grokAutomationAccessKeyFromEnv = !!String(process.env.GROK_AUTOMATION_ACCESS_KEY || "").trim();
20
24
 
21
25
  const enableRequestLogs = process.env.ENABLE_REQUEST_LOGS === "true";
22
26
  const enableTranslator = process.env.ENABLE_TRANSLATOR === "true";
@@ -78,6 +82,18 @@ export async function PATCH(request) {
78
82
  }
79
83
  }
80
84
 
85
+ // Empty grokAutomationAccessKey = keep existing; "__clear__" removes it
86
+ if (Object.prototype.hasOwnProperty.call(body, "grokAutomationAccessKey")) {
87
+ const raw = body.grokAutomationAccessKey;
88
+ if (raw === "__clear__") {
89
+ body.grokAutomationAccessKey = "";
90
+ } else if (!raw || !String(raw).trim()) {
91
+ delete body.grokAutomationAccessKey;
92
+ } else {
93
+ body.grokAutomationAccessKey = String(raw).trim();
94
+ }
95
+ }
96
+
81
97
  const settings = await updateSettings(body);
82
98
 
83
99
  // Apply outbound proxy settings immediately (no restart required)
@@ -98,9 +114,13 @@ export async function PATCH(request) {
98
114
  resetComboRotation();
99
115
  }
100
116
 
101
- const { password, oidcClientSecret, fiveSimApiKey, ...safeSettings } = settings;
117
+ const { password, oidcClientSecret, fiveSimApiKey, grokAutomationAccessKey, ...safeSettings } = settings;
102
118
  safeSettings.oidcConfigured = !!(safeSettings.oidcIssuerUrl && safeSettings.oidcClientId && oidcClientSecret);
103
119
  safeSettings.fiveSimApiKeyConfigured = !!fiveSimApiKey;
120
+ safeSettings.grokAutomationAccessKeyConfigured = !!(
121
+ grokAutomationAccessKey || process.env.GROK_AUTOMATION_ACCESS_KEY
122
+ );
123
+ safeSettings.grokAutomationAccessKeyFromEnv = !!String(process.env.GROK_AUTOMATION_ACCESS_KEY || "").trim();
104
124
  return NextResponse.json(safeSettings, { headers: SETTINGS_RESPONSE_HEADERS });
105
125
  } catch (error) {
106
126
  console.log("Error updating settings:", error);
@@ -50,6 +50,8 @@ const DEFAULT_SETTINGS = {
50
50
  contextInjectionEnabled: false,
51
51
  // 5sim.net API key for CodeBuddy CN phone bulk registration (never expose raw in GET)
52
52
  fiveSimApiKey: "",
53
+ // Shared secret required for Grok CLI bulk automation (never expose raw in GET)
54
+ grokAutomationAccessKey: "",
53
55
  };
54
56
 
55
57
  async function readRaw() {
@@ -0,0 +1,95 @@
1
+ import { timingSafeEqual } from "crypto";
2
+ import { NextResponse } from "next/server";
3
+ import { getSettings } from "@/lib/localDb";
4
+
5
+ const HEADER_NAMES = [
6
+ "x-grok-automation-key",
7
+ "x-grok-access-key",
8
+ ];
9
+
10
+ function safeEqualString(a, b) {
11
+ const left = Buffer.from(String(a || ""), "utf8");
12
+ const right = Buffer.from(String(b || ""), "utf8");
13
+ if (left.length !== right.length) return false;
14
+ try {
15
+ return timingSafeEqual(left, right);
16
+ } catch {
17
+ return false;
18
+ }
19
+ }
20
+
21
+ /**
22
+ * Resolve the configured Grok automation access key.
23
+ * Priority: env GROK_AUTOMATION_ACCESS_KEY → settings.grokAutomationAccessKey
24
+ */
25
+ export async function getGrokAutomationAccessKey() {
26
+ const fromEnv = String(process.env.GROK_AUTOMATION_ACCESS_KEY || "").trim();
27
+ if (fromEnv) return fromEnv;
28
+ try {
29
+ const settings = await getSettings();
30
+ return String(settings?.grokAutomationAccessKey || "").trim();
31
+ } catch {
32
+ return "";
33
+ }
34
+ }
35
+
36
+ export async function isGrokAutomationKeyConfigured() {
37
+ return Boolean(await getGrokAutomationAccessKey());
38
+ }
39
+
40
+ export function extractGrokAutomationKey(request, body = null) {
41
+ if (!request) return "";
42
+ for (const name of HEADER_NAMES) {
43
+ const v = request.headers?.get?.(name);
44
+ if (v && String(v).trim()) return String(v).trim();
45
+ }
46
+ // Authorization: GrokKey <key> or Bearer grok:<key>
47
+ const auth = request.headers?.get?.("authorization") || "";
48
+ const m1 = auth.match(/^GrokKey\s+(.+)$/i);
49
+ if (m1?.[1]) return m1[1].trim();
50
+ const m2 = auth.match(/^Bearer\s+grok:(.+)$/i);
51
+ if (m2?.[1]) return m2[1].trim();
52
+
53
+ if (body && typeof body === "object") {
54
+ const candidate = body.accessKey || body.grokAutomationKey || body.grokAccessKey;
55
+ if (candidate && String(candidate).trim()) return String(candidate).trim();
56
+ }
57
+ return "";
58
+ }
59
+
60
+ export async function verifyGrokAutomationKey(provided) {
61
+ const expected = await getGrokAutomationAccessKey();
62
+ if (!expected) {
63
+ return {
64
+ ok: false,
65
+ code: "not_configured",
66
+ error: "Grok automation access key is not configured. Set it in Settings or GROK_AUTOMATION_ACCESS_KEY.",
67
+ };
68
+ }
69
+ if (!provided || !safeEqualString(provided, expected)) {
70
+ return {
71
+ ok: false,
72
+ code: "invalid",
73
+ error: "Invalid Grok automation access key.",
74
+ };
75
+ }
76
+ return { ok: true };
77
+ }
78
+
79
+ /**
80
+ * Guard a Next.js route handler. Returns null if authorized, otherwise a JSON response.
81
+ */
82
+ export async function requireGrokAutomationKey(request, body = null) {
83
+ const provided = extractGrokAutomationKey(request, body);
84
+ const result = await verifyGrokAutomationKey(provided);
85
+ if (result.ok) return null;
86
+ const status = result.code === "not_configured" ? 503 : 403;
87
+ return NextResponse.json(
88
+ {
89
+ error: result.error,
90
+ code: result.code,
91
+ requiresGrokAccessKey: true,
92
+ },
93
+ { status }
94
+ );
95
+ }
@@ -10,6 +10,7 @@ import {
10
10
  import {
11
11
  createTempmailMailbox,
12
12
  generateTempmailPassword,
13
+ generateRandomPersonName,
13
14
  pollTempmailXaiOtp,
14
15
  } from "./tempmailClient.js";
15
16
  import {
@@ -278,14 +279,20 @@ class GrokCliBulkImportManager extends KiroBulkImportManager {
278
279
 
279
280
  // 1) Register via tempmail if needed
280
281
  if (mode === "tempmail-register") {
281
- this.setAccountStep(account, "registering_xai", "Signing up on xAI with tempmail + Turnstile");
282
+ const { firstName, lastName } = generateRandomPersonName();
283
+ account.profileName = `${firstName} ${lastName}`;
284
+ this.setAccountStep(
285
+ account,
286
+ "registering_xai",
287
+ `Signing up as ${firstName} ${lastName} (tempmail + Turnstile)`
288
+ );
282
289
  await this.persistJobSnapshot(job, { forcePreview: true });
283
290
 
284
291
  const signup = await runXaiEmailSignup(page, {
285
292
  email: account.email,
286
293
  password: account.password,
287
- firstName: "Zevai",
288
- lastName: "Bulk",
294
+ firstName,
295
+ lastName,
289
296
  pollOtp: (addr, opts) => this.pollOtp(addr, opts),
290
297
  onStep,
291
298
  });
@@ -80,11 +80,18 @@ export async function waitForTurnstile(page, { timeoutMs = 60_000, onStep } = {}
80
80
  export async function runXaiEmailSignup(page, {
81
81
  email,
82
82
  password,
83
- firstName = "Zevai",
84
- lastName = "Bulk",
83
+ firstName,
84
+ lastName,
85
85
  pollOtp = pollTempmailXaiOtp,
86
86
  onStep,
87
87
  } = {}) {
88
+ // Callers should pass random names; keep mild defaults only as last resort.
89
+ if (!firstName || !lastName) {
90
+ const { generateRandomPersonName } = await import("./tempmailClient.js");
91
+ const n = generateRandomPersonName();
92
+ firstName = firstName || n.firstName;
93
+ lastName = lastName || n.lastName;
94
+ }
88
95
  const report = (step, message) => onStep?.(step, message);
89
96
 
90
97
  report("opening_signup", "Opening xAI email sign-up");
@@ -58,6 +58,42 @@ export function generateTempmailPassword() {
58
58
  return `Zv!${core}Aa1`;
59
59
  }
60
60
 
61
+ const FIRST_NAMES = [
62
+ "James", "John", "Robert", "Michael", "William", "David", "Richard", "Joseph",
63
+ "Thomas", "Charles", "Christopher", "Daniel", "Matthew", "Anthony", "Mark",
64
+ "Steven", "Paul", "Andrew", "Joshua", "Kenneth", "Kevin", "Brian", "George",
65
+ "Timothy", "Ronald", "Edward", "Jason", "Jeffrey", "Ryan", "Jacob",
66
+ "Mary", "Patricia", "Jennifer", "Linda", "Barbara", "Elizabeth", "Susan",
67
+ "Jessica", "Sarah", "Karen", "Lisa", "Nancy", "Betty", "Margaret", "Sandra",
68
+ "Ashley", "Dorothy", "Kimberly", "Emily", "Donna", "Michelle", "Carol",
69
+ "Amanda", "Melissa", "Deborah", "Stephanie", "Rebecca", "Sharon", "Laura",
70
+ "Emma", "Olivia", "Ava", "Sophia", "Isabella", "Mia", "Charlotte", "Amelia",
71
+ "Noah", "Liam", "Oliver", "Elijah", "Lucas", "Mason", "Logan", "Ethan",
72
+ ];
73
+
74
+ const LAST_NAMES = [
75
+ "Smith", "Johnson", "Williams", "Brown", "Jones", "Garcia", "Miller", "Davis",
76
+ "Rodriguez", "Martinez", "Hernandez", "Lopez", "Gonzalez", "Wilson", "Anderson",
77
+ "Thomas", "Taylor", "Moore", "Jackson", "Martin", "Lee", "Perez", "Thompson",
78
+ "White", "Harris", "Sanchez", "Clark", "Ramirez", "Lewis", "Robinson",
79
+ "Walker", "Young", "Allen", "King", "Wright", "Scott", "Torres", "Nguyen",
80
+ "Hill", "Flores", "Green", "Adams", "Nelson", "Baker", "Hall", "Rivera",
81
+ "Campbell", "Mitchell", "Carter", "Roberts", "Turner", "Phillips", "Parker",
82
+ "Evans", "Edwards", "Collins", "Stewart", "Morris", "Murphy", "Cook",
83
+ ];
84
+
85
+ function pick(list) {
86
+ return list[Math.floor(Math.random() * list.length)];
87
+ }
88
+
89
+ /** Random human-looking first/last name for xAI signup profile. */
90
+ export function generateRandomPersonName() {
91
+ return {
92
+ firstName: pick(FIRST_NAMES),
93
+ lastName: pick(LAST_NAMES),
94
+ };
95
+ }
96
+
61
97
  export async function registerTempmailAddress(address, { label = null, ...cfg } = {}) {
62
98
  const config = getTempmailConfig(cfg);
63
99
  return tempmailFetch(config, "/api/addresses", {
@@ -50,14 +50,26 @@ AccountStatusBadge.propTypes = {
50
50
  status: PropTypes.string,
51
51
  };
52
52
 
53
- async function fetchJob(provider, jobId) {
54
- const res = await fetch(`/api/oauth/${provider}/bulk-import/${jobId}`, { cache: "no-store" });
53
+ function grokAuthHeaders(accessKey) {
54
+ const headers = {};
55
+ if (accessKey) headers["x-grok-automation-key"] = accessKey;
56
+ return headers;
57
+ }
58
+
59
+ async function fetchJob(provider, jobId, accessKey) {
60
+ const res = await fetch(`/api/oauth/${provider}/bulk-import/${jobId}`, {
61
+ cache: "no-store",
62
+ headers: grokAuthHeaders(accessKey),
63
+ });
55
64
  const data = await res.json();
56
65
  return { res, data };
57
66
  }
58
67
 
59
- async function fetchLatestJob(provider, scope = "recoverable") {
60
- const res = await fetch(`/api/oauth/${provider}/bulk-import/latest?scope=${encodeURIComponent(scope)}`, { cache: "no-store" });
68
+ async function fetchLatestJob(provider, scope = "recoverable", accessKey) {
69
+ const res = await fetch(`/api/oauth/${provider}/bulk-import/latest?scope=${encodeURIComponent(scope)}`, {
70
+ cache: "no-store",
71
+ headers: grokAuthHeaders(accessKey),
72
+ });
61
73
  const data = await res.json();
62
74
  return { res, data };
63
75
  }
@@ -71,6 +83,7 @@ export default function BulkAccountAutomationModal({
71
83
  serviceName,
72
84
  defaultEngine = DEFAULT_ENGINE,
73
85
  accountsPlaceholder,
86
+ accessKey = "",
74
87
  }) {
75
88
  const storageKey = `${provider}-bulk-import-active-job`;
76
89
  const draftKey = `${provider}-bulk-import-accounts-draft`;
@@ -178,7 +191,7 @@ export default function BulkAccountAutomationModal({
178
191
  ? window.localStorage.getItem(storageKey)
179
192
  : null;
180
193
  if (storedJobId) {
181
- const { res, data } = await fetchJob(provider, storedJobId);
194
+ const { res, data } = await fetchJob(provider, storedJobId, accessKey);
182
195
  if (!cancelled && res.ok && data?.job && data.recoverable) {
183
196
  setActiveJob(data.job);
184
197
  setJobRestoreNotice("Restored the active bulk login job.");
@@ -186,7 +199,7 @@ export default function BulkAccountAutomationModal({
186
199
  }
187
200
  }
188
201
 
189
- const latest = await fetchLatestJob(provider);
202
+ const latest = await fetchLatestJob(provider, "recoverable", accessKey);
190
203
  if (!cancelled && latest.res.ok && latest.data?.job) {
191
204
  setActiveJob(latest.data.job);
192
205
  setJobRestoreNotice("Restored the latest recoverable bulk login job.");
@@ -203,14 +216,14 @@ export default function BulkAccountAutomationModal({
203
216
  return () => {
204
217
  cancelled = true;
205
218
  };
206
- }, [isOpen, provider, storageKey]);
219
+ }, [isOpen, provider, storageKey, accessKey]);
207
220
 
208
221
  useEffect(() => {
209
222
  if (!isOpen || !activeJob?.jobId || finishedJob) return undefined;
210
223
 
211
224
  const interval = window.setInterval(async () => {
212
225
  try {
213
- const { res, data } = await fetchJob(provider, activeJob.jobId);
226
+ const { res, data } = await fetchJob(provider, activeJob.jobId, accessKey);
214
227
  if (res.ok && data?.job) {
215
228
  setActiveJob(data.job);
216
229
  if (typeof window !== "undefined") {
@@ -227,7 +240,7 @@ export default function BulkAccountAutomationModal({
227
240
  }, 2000);
228
241
 
229
242
  return () => window.clearInterval(interval);
230
- }, [activeJob?.jobId, finishedJob, isOpen, onSuccess, provider, storageKey]);
243
+ }, [activeJob?.jobId, finishedJob, isOpen, onSuccess, provider, storageKey, accessKey]);
231
244
 
232
245
  const handleStartBulk = async () => {
233
246
  const lines = bulkText
@@ -257,7 +270,10 @@ export default function BulkAccountAutomationModal({
257
270
 
258
271
  const res = await fetch(`/api/oauth/${provider}/bulk-import`, {
259
272
  method: "POST",
260
- headers: { "Content-Type": "application/json" },
273
+ headers: {
274
+ "Content-Type": "application/json",
275
+ ...grokAuthHeaders(accessKey),
276
+ },
261
277
  body: JSON.stringify({
262
278
  accounts: lines,
263
279
  concurrency: autoConcurrency
@@ -298,6 +314,7 @@ export default function BulkAccountAutomationModal({
298
314
  try {
299
315
  const res = await fetch(`/api/oauth/${provider}/bulk-import/${activeJob.jobId}/cancel`, {
300
316
  method: "POST",
317
+ headers: grokAuthHeaders(accessKey),
301
318
  });
302
319
  const data = await res.json();
303
320
  if (!res.ok) throw new Error(data.error || "Failed to cancel job");
@@ -313,6 +330,7 @@ export default function BulkAccountAutomationModal({
313
330
  try {
314
331
  const res = await fetch(`/api/oauth/${provider}/bulk-import/${activeJob.jobId}/manual/${workerId}`, {
315
332
  method: "POST",
333
+ headers: grokAuthHeaders(accessKey),
316
334
  });
317
335
  const data = await res.json();
318
336
  if (!res.ok) throw new Error(data.error || "Failed to open manual session");
@@ -651,4 +669,5 @@ BulkAccountAutomationModal.propTypes = {
651
669
  serviceName: PropTypes.string.isRequired,
652
670
  defaultEngine: PropTypes.string,
653
671
  accountsPlaceholder: PropTypes.string,
672
+ accessKey: PropTypes.string,
654
673
  };
@@ -1 +0,0 @@
1
- "use strict";exports.id=3487,exports.ids=[3487],exports.modules={48096:(a,b,c)=>{c.d(b,{K:()=>k,runXaiEmailDeviceAuthorize:()=>l});var d=c(63312);function e(a){return new Promise(b=>setTimeout(b,a))}async function f(a){return a.evaluate(()=>document.body?.innerText||"").catch(()=>"")}async function g(a,b,{timeout:c=3e3}={}){for(let d of b)try{let b=a.locator(d).first();if(await b.isVisible({timeout:400}).catch(()=>!1))return await b.click({timeout:c}),d}catch{}return null}async function h(a){return g(a,["#onetrust-accept-btn-handler","#onetrust-reject-all-handler",'button:has-text("Accept All Cookies")','button:has-text("Reject All")'])}async function i(a,b,c=35){await a.click(),await a.fill("").catch(()=>null),await a.type(b,{delay:c})}async function j(a,{timeoutMs:b=6e4,onStep:c}={}){let d=Date.now();for(;Date.now()-d<b;){let b=await a.evaluate(()=>{let a=document.querySelector("input[name=cf-turnstile-response], [name=cf-turnstile-response]");return a?String(a.value||""):""}).catch(()=>"");if(b&&b.length>20)return c?.("turnstile_ok",`Cloudflare Turnstile solved (${b.length} chars)`),{ok:!0,length:b.length};try{for(let b of a.frames()){let a=b.url()||"";/turnstile|challenges\.cloudflare/i.test(a)&&await b.locator("input[type=checkbox], body").first().click({timeout:800}).catch(()=>null)}}catch{}await e(1200)}return c?.("turnstile_timeout","Turnstile did not produce a token in time"),{ok:!1}}async function k(a,{email:b,password:c,firstName:l="Zevai",lastName:m="Bulk",pollOtp:n=d.ws,onStep:o}={}){let p=(a,b)=>o?.(a,b);p("opening_signup","Opening xAI email sign-up"),await a.goto("https://accounts.x.ai/sign-up",{waitUntil:"domcontentloaded",timeout:6e4}),await e(1200),await h(a),await a.getByRole("button",{name:/Sign up with email/i}).count()&&(await a.getByRole("button",{name:/Sign up with email/i}).click(),await e(800),p("signup_with_email","Selected Sign up with email")),await a.waitForSelector("input[type=email], input[name=email]",{timeout:15e3}),await i(a.locator("input[type=email], input[name=email]").first(),b,40),await g(a,['button:has-text("Sign up")','button:has-text("Sign Up")']),p("submitted_email",`Submitted sign-up email ${b}`),await e(2e3),await h(a),p("polling_otp","Polling tempmail for xAI confirmation code");let q=await n(b,{timeoutMs:12e4,intervalMs:3e3});if(!q?.code)return{status:"failed",step:"otp_timeout",error:"No xAI OTP received on tempmail inbox"};p("otp_received",`OTP ${q.code} from ${q.subject||"tempmail"}`);let r=a.locator("input[name=code]");await r.isVisible().catch(()=>!1)&&(await i(r,q.code,80),await e(1200));let s=await f(a);/Complete your sign up/i.test(s)||(await g(a,['button:has-text("Confirm email")']),await e(2e3));for(let b=0;b<20&&(s=await f(a),!(/Complete your sign up/i.test(s)||await a.locator("input[name=givenName]").count()));b++)await e(500);if(!await a.locator("input[name=givenName]").first().isVisible().catch(()=>!1))return{status:"failed",step:"profile_form_missing",error:"xAI profile form (givenName) not shown after OTP"};if(p("filling_profile","Filling name + password"),await i(a.locator("input[name=givenName]").first(),l,35),await i(a.locator("input[name=familyName]").first(),m,35),await i(a.locator("input[name=password], input[type=password]").first(),c,35),!(await j(a,{timeoutMs:6e4,onStep:o})).ok)return{status:"needs_manual",step:"turnstile",error:"Cloudflare Turnstile did not solve. Use CloakBrowser headed engine or complete manually."};await g(a,['button:has-text("Complete sign up")']),p("completing_signup","Clicked Complete sign up"),await e(4e3),s=await f(a),/Complete your sign up/i.test(s)&&(await j(a,{timeoutMs:2e4,onStep:o}),await g(a,['button:has-text("Complete sign up")']),await e(4e3),s=await f(a));let t=a.url();return!/Complete your sign up|Verify your email|You must provide/i.test(s)&&!/\/sign-up/i.test(t)||/\/account/i.test(t)||/Welcome/i.test(s)?(p("signup_ok",`Account ready: ${b}`),{status:"success",email:b,password:c,url:t}):{status:"failed",step:"signup_incomplete",error:"xAI sign-up did not complete after profile submit",url:t,text:s.slice(0,300)}}async function l(a,{email:b,password:c,verificationUrl:k,pollToken:m,deviceCode:n,pollOtp:o=d.ws,onStep:p,cancelCheck:q}={}){let r=(a,b)=>p?.(a,b),s=a.url();if(!/\/account/i.test(s)){r("opening_signin","Opening xAI email login"),await a.goto("https://accounts.x.ai/sign-in",{waitUntil:"domcontentloaded",timeout:6e4}),await e(1e3),await h(a),await a.getByRole("button",{name:/Login with email/i}).count()&&(await a.getByRole("button",{name:/Login with email/i}).click(),await e(800)),await a.locator("input[type=email]").first().isVisible().catch(()=>!1)&&(await i(a.locator("input[type=email]").first(),b,40),await g(a,['button:has-text("Next")','button:has-text("Continue")']),await e(1500)),await a.locator("input[type=password]").first().isVisible().catch(()=>!1)&&(await i(a.locator("input[type=password]").first(),c,40),await j(a,{timeoutMs:45e3,onStep:p}),await g(a,['button:has-text("Login")','button:has-text("Log in")']),await e(3e3));let d=await f(a);if(/security code|Verify your email|one time/i.test(d)){r("login_otp","Login requires OTP — polling tempmail");let c=await o(b,{timeoutMs:9e4});c?.code&&(await i(a.locator("input[name=code]").first(),c.code,80),await g(a,['button:has-text("Confirm email")','button:has-text("Continue")']),await e(2500))}}r("opening_device","Opening Grok Build device authorization"),await a.goto(k,{waitUntil:"domcontentloaded",timeout:6e4}),await e(1200),await h(a),await g(a,['button:has-text("Continue")']),await e(2e3),await a.getByRole("button",{name:/Login with email/i}).count()&&(await a.getByRole("button",{name:/Login with email/i}).click(),await e(800),await a.locator("input[type=email]").first().isVisible().catch(()=>!1)&&(await i(a.locator("input[type=email]").first(),b,40),await g(a,['button:has-text("Next")']),await e(1200)),await a.locator("input[type=password]").first().isVisible().catch(()=>!1)&&(await i(a.locator("input[type=password]").first(),c,40),await j(a,{timeoutMs:45e3,onStep:p}),await g(a,['button:has-text("Login")','button:has-text("Log in")']),await e(3e3)),await a.goto(k,{waitUntil:"domcontentloaded",timeout:6e4}),await e(1200),await g(a,['button:has-text("Continue")']),await e(2e3));let t=(async()=>{let a=Date.now(),b=5e3;for(;Date.now()-a<9e5;){if(q?.())throw Error("Job cancelled during token polling");let a=await m(n);if(a?.success&&a.tokens)return{tokens:a.tokens};if(a?.pending||a?.error==="authorization_pending"){await e(b);continue}if(a?.error==="slow_down"){b=Math.min(b+5e3,3e4),await e(b);continue}if(a?.error&&!["authorization_pending","slow_down"].includes(a.error)){await e(b);continue}await e(b)}throw Error("Timed out waiting for Grok CLI OAuth token")})(),u=(async()=>{for(let b=0;b<20;b++){if(q?.())return;let b=await f(a);if(/Device Authorized|device has been authorized|you can close/i.test(b))return void r("device_authorized","Device authorized in browser");if(/Authorize Grok Build|Verify your identity|Confirm your identity/i.test(b)){await g(a,['button:has-text("Allow")','button:has-text("Authorize")','button:has-text("Approve")','button:has-text("Continue")','button:has-text("Confirm")']),await e(1500);continue}if(/Redirecting/i.test(b)||/\/account/i.test(a.url())){await a.goto(k,{waitUntil:"domcontentloaded",timeout:6e4}),await e(1500),await g(a,['button:has-text("Continue")']),await e(1500);continue}await g(a,['button:has-text("Continue")','button:has-text("Allow")','button:has-text("Authorize")']),await e(1500)}})();r("polling_token","Waiting for device token after authorization");let[v]=await Promise.all([t,u.catch(()=>null)]);return{status:"success",tokens:v.tokens}}},63312:(a,b,c)=>{c.d(b,{WZ:()=>h,oB:()=>j,ws:()=>l});let d=process.env.TEMPMAIL_BASE_URL||"https://tempmail.zevai.web.id",e=process.env.TEMPMAIL_EMAIL_DOMAIN||"zevai.web.id";function f(a={}){return{baseUrl:String(a.baseUrl||d).replace(/\/+$/,""),domain:String(a.domain||e).replace(/^@/,""),userAgent:a.userAgent||"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36"}}async function g(a,b,{method:c="GET",body:d}={}){let e=`${a.baseUrl}${b.startsWith("/")?b:`/${b}`}`,f=await fetch(e,{method:c,headers:{Accept:"application/json","User-Agent":a.userAgent,...d?{"Content-Type":"application/json"}:{}},body:d?JSON.stringify(d):void 0}),h=await f.text(),i=null;try{i=h?JSON.parse(h):null}catch{i={raw:h}}if(!f.ok){let a=Error(i?.error||`Tempmail HTTP ${f.status}`);throw a.status=f.status,a.payload=i,a}return i}function h(){let a=Math.random().toString(36).slice(2,10);return`Zv!${a}Aa1`}async function i(a,{label:b=null,...c}={}){return g(f(c),"/api/addresses",{method:"POST",body:{address:a,label:b||"grok-cli-bulk"}})}async function j({prefix:a="zevai-cb",label:b="grok-cli-bulk",...c}={}){let d=f(c),e=function(a="zevai"){let b=Math.random().toString(36).slice(2,8),c=Date.now().toString(36).slice(-4);return`${a}-${c}${b}`.toLowerCase().replace(/[^a-z0-9._+-]/g,"")}(a),g=`${e}@${d.domain}`;return await i(g,{label:b,...d}),{address:g,domain:d.domain}}async function k(a,b={}){let c=f(b),d=encodeURIComponent(a),e=await g(c,`/api/inbox/${d}`);return Array.isArray(e)?e:[]}async function l(a,{timeoutMs:b=12e4,intervalMs:c=3e3,seenIds:d=null,...e}={}){let f=d||new Set,g=Date.now();for(;Date.now()-g<b;){for(let b of[...await k(a,e)].sort((a,b)=>(b.received_at||0)-(a.received_at||0))){let a=b.id||`${b.subject}-${b.received_at}`;if(f.has(a))continue;let c=b.subject||"",d=c.match(/([A-Z0-9]{2,5}-[A-Z0-9]{2,5})\s+xAI confirmation code/i);if(d)return f.add(a),{code:d[1],subject:c,id:b.id||null,mail:b}}await function(a){return new Promise(b=>setTimeout(b,a))}(c)}return null}},83487:(a,b,c)=>{c.d(b,{MC:()=>o,cO:()=>d.cO});var d=c(53041),e=c(63312),f=c(48096);let g="grok-cli";function h(a){return new Promise(b=>setTimeout(b,a))}async function i(a=[],{createMailbox:b=e.oB}={}){let c=Array.isArray(a)?a:[],d=[],f=[];for(let a=0;a<c.length;a++){let g=String(c[a]||"").trim();if(!g||g.startsWith("#"))continue;if(/^\d{1,3}$/.test(g)){let c=Math.min(50,Math.max(1,Number(g)));for(let f=0;f<c;f++){let c=await b({prefix:"zevai-cb",label:"grok-cli-bulk"}),f=(0,e.WZ)();d.push({line:a+1,email:c.address,password:f,mode:"tempmail-register"})}continue}let h=g.match(/^(auto|tempmail)(?::(\d{1,3}))?$/i);if(h){let c=Math.min(50,Math.max(1,Number(h[2]||1)));for(let f=0;f<c;f++){let c=await b({prefix:"zevai-cb",label:"grok-cli-bulk"}),f=(0,e.WZ)();d.push({line:a+1,email:c.address,password:f,mode:"tempmail-register"})}continue}let i="",j="";if(g.includes("|")){let[a,...b]=g.split("|");i=a.trim(),j=b.join("|").trim()}else if(g.includes(":")){let a=g.indexOf(":"),b=g.slice(0,a).trim();b.includes("@")&&(i=b,j=g.slice(a+1).trim())}if(!i||!j){f.push(a+1);continue}d.push({line:a+1,email:i,password:j,mode:"email-login"})}return{parsed:d,invalidLines:f}}async function j(){let{requestDeviceCode:a}=await Promise.all([c.e(7774),c.e(5433),c.e(5024),c.e(4404),c.e(8590),c.e(7276),c.e(3110),c.e(318),c.e(8895),c.e(4177),c.e(3159)]).then(c.bind(c,74177));return a(g)}async function k(a){let{pollForToken:b}=await Promise.all([c.e(7774),c.e(5433),c.e(5024),c.e(4404),c.e(8590),c.e(7276),c.e(3110),c.e(318),c.e(8895),c.e(4177),c.e(3159)]).then(c.bind(c,74177));return b(g,a)}async function l({tokens:a,email:b,automation:d="tempmail-cloakbrowser"}){let{createProviderConnection:e}=await Promise.resolve().then(c.bind(c,71998)),f={...a.providerSpecificData||{},loginEmail:b,automation:d,authMethod:a.providerSpecificData?.authMethod||"device_code"},h={provider:g,authType:"oauth",accessToken:a.accessToken,refreshToken:a.refreshToken||null,email:a.email||b,displayName:a.displayName||b?.split("@")[0]||null,scope:a.scope||null,providerSpecificData:f,expiresAt:a.expiresIn?new Date(Date.now()+1e3*a.expiresIn).toISOString():null,testStatus:"active"};return{connection:await e(h)}}async function m(a,b){let{launchBulkImportBrowser:d,normalizeBulkImportEngine:e}=await c.e(5949).then(c.bind(c,75949)),f=e(b||"cloakbrowser");return d({engine:f,proxyUrl:a,headless:"cloakbrowser"!==f,windowSize:"cloakbrowser"===f?{width:1280,height:900}:null})}class n extends d.Q6{constructor({browserLauncher:a=m,saveConnection:b=l,requestDeviceCode:c=j,pollToken:d=k,createMailbox:f=e.oB,pollOtp:g=e.ws,storageName:h="grok-cli-bulk-import",proxyUrl:i=null}={}){super({browserLauncher:b=>a(i,b?.engine),googleAutomation:null,socialExchange:null,kiroServiceFactory:null,storageName:h}),this.saveConnection=b,this.requestDeviceCode=c,this.pollToken=d,this.createMailbox=f,this.pollOtp=g,this.proxyUrl=i}async startJob({accounts:a,concurrency:b,engine:c,proxyPoolMode:d,proxyPoolId:e}){let{parsed:f,invalidLines:g}=await i(a,{createMailbox:this.createMailbox});if(!f.length){let a=g.length>0?"Invalid format. Use: auto / auto:5 / email:password (or email|password)":"At least one account entry is required (e.g. auto or auto:3)";throw Object.assign(Error(a),{error:a,...g.length?{invalidLines:g}:{}})}if(g.length>0)throw Object.assign(Error("Invalid account format"),{error:"Invalid format. Use: auto / auto:5 / email:password",invalidLines:g});let h=f.map(a=>`${a.email}:${a.password}`),j=await super.startJob({accounts:h,concurrency:b??1,engine:c||"cloakbrowser",proxyPoolMode:d,proxyPoolId:e}),k=this.jobs.get(j.jobId);if(k){let a=new Map(f.map(a=>[a.email.toLowerCase(),a.mode]));for(let b of k.accounts)b.mode=a.get(String(b.email||"").toLowerCase())||"email-login";for(let a of k.accounts){let b=f.find(b=>b.email===a.email);b&&(a.password=b.password,a.mode=b.mode)}}return j}async processAccount(a,b,c){if(a.cancelRequested||!a.browser)return void this.finalizeAccount(b,"cancelled",{error:"Job cancelled"});let{context:e,page:g}=await (0,d.go)(a.browser,b.proxyUrl);b.runtimeSession={context:e,page:g};try{this.setAccountStep(b,"preparing_worker",`Worker ${c} preparing CloakBrowser / xAI flow`),await this.persistJobSnapshot(a,{forcePreview:!0});let d=(c,d)=>{this.setAccountStep(b,c,d),this.persistJobSnapshot(a,{forcePreview:!1})},h=b.mode||"email-login";if("tempmail-register"===h){this.setAccountStep(b,"registering_xai","Signing up on xAI with tempmail + Turnstile"),await this.persistJobSnapshot(a,{forcePreview:!0});let c=await (0,f.K)(g,{email:b.email,password:b.password,firstName:"Zevai",lastName:"Bulk",pollOtp:(a,b)=>this.pollOtp(a,b),onStep:d});if("needs_manual"===c.status){b.manualSession={context:e,page:g,opened:!1,openedAt:null},this.finalizeAccount(b,"needs_manual",{error:c.error,step:c.step||"awaiting_manual",message:c.error}),await this.persistJobSnapshot(a,{forcePreview:!0});return}if("success"!==c.status){this.finalizeAccount(b,"failed",{error:c.error||"xAI email signup failed",step:c.step||"failed",message:c.error||"xAI email signup failed"}),b.runtimeSession=null,await e.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0});return}}this.setAccountStep(b,"requesting_device_code","Requesting Grok CLI device code"),await this.persistJobSnapshot(a,{forcePreview:!0});let i=await this.requestDeviceCode(),j=function(a){if(a?.verification_uri_complete)return a.verification_uri_complete;let b=a?.verification_uri||"https://accounts.x.ai/oauth2/device";if(a?.user_code)try{let c=new URL(b);return c.searchParams.set("user_code",a.user_code),c.toString()}catch{return`${b}${b.includes("?")?"&":"?"}user_code=${encodeURIComponent(a.user_code)}`}return b}(i),k=i?.device_code;if(!j||!k)throw Error("Grok CLI did not return a device code / verification URL");let l=await (0,f.runXaiEmailDeviceAuthorize)(g,{email:b.email,password:b.password,verificationUrl:j,deviceCode:k,pollToken:a=>this.pollToken(a),pollOtp:(a,b)=>this.pollOtp(a,b),onStep:d,cancelCheck:()=>a.cancelRequested});if("success"===l.status&&l.tokens){await this.finalizeSuccess(a,b,l.tokens,h),b.runtimeSession=null,await e.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0});return}this.finalizeAccount(b,"failed",{error:l.error||"Device authorization failed",step:"device_failed",message:l.error||"Device authorization failed"}),b.runtimeSession=null,await e.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0})}catch(c){a.cancelRequested?this.finalizeAccount(b,"cancelled",{error:"Job cancelled",step:"cancelled",message:"Job cancelled while Grok CLI automation was running"}):this.finalizeAccount(b,c.status||"failed",{error:c.message||"Unexpected Grok CLI bulk import failure.",step:c.step||"failed",message:c.message||"Unexpected Grok CLI bulk import failure."}),b.runtimeSession=null,await e.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0})}finally{b.password=void 0}}createPollPromise(a,b,c){return(async()=>{let d=Date.now(),e=5e3;for(;Date.now()-d<9e5;){if(b.cancelRequested)throw Error("Job cancelled during token polling");this.setAccountStep(c,"polling_grok_token","Waiting for Grok CLI OAuth token"),this.persistJobSnapshot(b,{forcePreview:!1});let d=await this.pollToken(a);if(d.success&&d.tokens)return{tokens:d.tokens};if(d.pending||"authorization_pending"===d.error){await h(e);continue}if("slow_down"===d.error){e=Math.min(e+5e3,3e4),await h(e);continue}await h(e)}throw Error("Timed out waiting for Grok CLI OAuth token")})()}async finalizeSuccess(a,b,c,d="email-login"){this.setAccountStep(b,"saving_connection","Saving Grok CLI connection"),await this.persistJobSnapshot(a,{forcePreview:!0});let{connection:e}=await this.saveConnection({tokens:c,email:c.email||b.email,automation:"tempmail-register"===d?"tempmail-cloakbrowser":"email-login-cloakbrowser"});this.finalizeAccount(b,"success",{connectionId:e.id,step:"connection_saved",message:"Grok CLI connection saved successfully"})}}function o(){return(!globalThis.__grokCliBulkImportSingleton&&(globalThis.__grokCliBulkImportSingleton={manager:new n}),globalThis.__grokCliBulkImportSingleton).manager}}};
@@ -1 +0,0 @@
1
- self.__BUILD_MANIFEST=function(e,s,t){return{__rewrites:{afterFiles:[{has:e,source:"/v1/v1/:path*",destination:s},{has:e,source:"/v1/v1",destination:t},{has:e,source:"/codex/:path*",destination:"/api/v1/responses"},{has:e,source:"/v1/:path*",destination:s},{has:e,source:"/v1",destination:t}],beforeFiles:[],fallback:[]},__routerFilterStatic:{numItems:171,errorRate:1e-4,numBits:3279,numHashes:14,bitArray:[1,0,0,1,1,0,1,0,1,0,0,0,0,1,1,1,1,0,0,1,0,0,0,0,1,0,1,0,0,1,1,0,0,1,1,0,0,0,1,0,0,1,0,1,1,0,0,0,0,1,0,1,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,0,1,0,0,1,1,0,0,1,1,1,0,0,0,0,1,0,0,0,0,0,1,1,1,0,1,0,1,1,0,1,1,1,1,1,1,0,0,0,0,1,0,1,0,0,1,1,0,0,0,1,1,0,0,0,0,1,0,1,0,1,1,0,1,0,0,1,0,1,1,1,1,0,1,1,0,0,0,0,1,1,0,1,0,1,0,0,1,1,0,1,0,0,1,0,1,1,1,0,1,0,1,1,1,0,1,1,1,1,1,0,1,0,0,1,0,0,0,1,1,0,0,0,1,0,1,1,1,1,0,0,1,1,0,1,1,1,1,1,0,0,1,0,0,1,1,0,0,1,0,0,0,1,1,0,1,1,1,1,0,0,1,1,0,1,1,0,1,0,1,1,1,0,1,0,0,0,0,1,1,1,0,0,1,0,1,1,0,0,1,0,1,0,0,0,1,1,0,1,1,1,0,0,1,0,1,0,0,0,1,0,1,1,1,1,0,1,1,1,0,0,0,1,1,0,1,1,0,1,1,0,1,0,1,1,1,1,0,0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,1,1,1,0,1,0,0,0,1,0,1,1,0,1,0,0,0,0,1,1,0,1,0,0,0,0,1,1,0,1,0,0,0,1,1,0,0,0,1,1,0,0,1,0,0,0,0,1,0,1,1,0,0,1,1,0,0,1,0,0,0,1,1,1,1,1,1,1,1,0,0,1,0,1,0,0,0,0,0,1,1,0,0,0,1,1,1,0,1,1,1,1,0,1,1,1,1,0,0,1,1,1,1,0,0,0,1,0,0,1,0,1,0,1,0,0,0,0,1,1,1,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,1,1,0,1,0,1,1,0,0,1,1,0,0,1,0,0,1,0,1,0,0,1,1,0,1,0,1,1,1,1,1,1,1,0,0,0,1,1,1,0,1,0,1,0,0,1,0,1,1,0,1,0,1,1,1,0,1,0,0,0,1,1,1,0,0,1,1,0,0,0,0,1,0,1,0,1,1,1,0,1,1,0,1,1,0,0,0,0,0,1,0,0,1,0,0,1,0,0,0,0,0,0,0,1,1,0,1,1,0,1,1,0,1,0,0,0,1,1,0,0,0,1,1,1,1,1,0,1,0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,1,1,1,0,1,0,1,0,1,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,1,1,1,0,1,0,0,1,0,1,1,1,0,1,0,0,1,0,1,0,1,0,1,1,1,0,0,1,0,0,1,1,0,1,1,0,0,1,0,1,0,0,0,0,0,0,1,0,1,0,1,1,0,0,1,1,1,0,0,1,0,1,1,0,0,1,0,1,0,0,0,1,0,1,0,0,1,1,1,1,1,1,0,0,1,1,0,0,1,0,1,0,0,0,1,1,1,1,0,0,0,1,1,0,0,1,1,0,1,1,1,1,1,1,0,1,1,0,1,1,1,1,0,1,0,0,1,1,1,1,0,1,1,0,1,0,0,0,0,0,1,0,0,1,0,1,1,0,0,1,0,1,0,0,1,0,0,1,0,1,0,1,1,0,0,1,1,1,0,0,1,1,0,0,0,0,0,1,1,1,1,0,1,1,0,1,0,0,0,0,1,1,0,1,0,1,0,1,0,0,0,0,1,1,0,1,0,0,1,0,0,0,1,1,0,0,0,1,0,1,1,1,0,1,1,1,0,0,1,1,0,0,1,0,0,0,1,1,1,1,1,0,0,0,0,0,1,1,1,1,0,1,1,0,0,1,1,1,0,1,1,0,0,1,0,0,0,0,1,0,0,1,0,1,1,1,1,1,0,1,1,0,1,0,0,1,1,0,0,1,1,0,0,0,1,1,1,1,0,1,0,1,1,0,0,1,0,1,0,1,1,1,1,0,1,1,1,1,0,0,0,1,1,1,1,0,0,1,0,1,1,1,1,0,1,1,1,1,0,0,0,1,1,0,1,0,0,0,1,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,0,1,1,1,0,1,0,1,1,1,1,1,0,0,1,1,1,1,0,1,0,0,1,0,1,0,0,0,1,1,1,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,1,0,0,0,0,1,0,1,0,0,0,1,1,1,0,1,0,1,0,0,1,1,1,1,0,0,1,1,0,0,1,1,0,1,1,1,0,0,0,0,1,1,1,0,0,0,1,0,0,0,1,1,1,0,0,0,1,0,0,1,0,1,1,1,0,1,1,0,1,0,1,0,0,1,1,0,1,0,1,0,0,0,1,0,0,1,0,0,0,0,0,1,1,0,1,1,1,1,0,0,0,1,0,0,0,0,1,0,1,1,0,0,0,0,0,0,1,1,0,0,1,1,0,1,0,0,1,0,1,0,0,1,1,0,1,0,1,1,1,0,1,1,1,1,1,1,1,1,0,0,1,1,1,0,1,1,0,0,1,0,0,1,0,1,1,1,1,1,1,0,0,1,0,0,1,1,0,0,1,1,1,0,0,1,0,1,1,1,0,0,0,1,0,1,1,1,0,0,1,0,1,1,0,1,1,1,1,1,0,0,1,0,1,0,0,1,0,0,0,0,0,0,0,1,1,0,1,0,1,1,0,1,1,0,0,1,0,0,0,1,0,1,1,0,1,0,1,1,1,0,1,0,1,0,1,0,1,1,0,1,1,1,0,1,1,0,0,1,1,1,0,0,0,1,0,0,0,0,0,1,0,1,1,1,0,1,0,0,1,1,0,1,1,1,1,1,1,0,1,1,0,1,1,1,1,0,1,1,0,1,1,1,0,1,1,0,0,1,1,0,0,0,0,1,1,0,0,1,1,0,0,1,1,1,1,0,1,1,1,0,0,0,0,0,1,1,1,0,1,1,0,0,0,1,0,0,1,1,0,1,0,0,0,1,0,0,1,0,0,0,0,1,0,0,1,0,1,0,1,0,0,0,1,1,1,0,0,0,1,0,1,1,1,1,0,1,0,0,0,1,0,1,0,0,1,1,1,1,0,1,0,0,0,0,1,1,0,1,0,1,0,1,1,1,1,1,0,0,1,0,0,1,1,1,1,1,1,0,1,0,1,0,1,0,0,1,1,0,1,1,0,0,0,0,0,1,1,1,1,1,1,0,1,1,1,0,0,1,1,1,1,1,0,0,1,1,0,0,1,0,1,1,0,1,1,0,0,1,1,0,0,0,0,0,0,0,1,0,0,1,1,0,0,1,0,0,0,1,0,0,1,0,1,1,1,1,0,1,1,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,1,1,0,1,0,1,0,0,1,1,1,1,0,1,1,1,0,1,1,1,0,1,0,0,0,1,1,0,0,1,0,1,0,1,1,0,1,0,1,1,0,1,0,0,1,0,1,0,0,1,0,0,1,0,1,0,0,0,1,1,1,1,1,1,0,1,0,0,1,0,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,1,0,1,0,1,0,0,1,1,0,1,0,0,0,1,0,1,1,1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,1,1,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,1,0,0,0,1,1,0,1,0,0,1,1,0,1,1,1,0,0,1,1,1,0,1,1,0,0,1,0,0,0,0,1,1,1,0,1,0,0,0,0,0,1,1,0,1,0,1,1,1,1,1,0,0,0,1,0,0,1,1,0,0,1,1,1,0,0,1,0,1,1,1,1,1,1,1,0,1,0,0,0,1,0,0,0,1,0,1,0,1,0,0,0,1,1,1,0,1,1,1,1,0,1,0,0,0,1,0,1,0,1,0,1,1,1,1,0,1,0,0,1,1,1,1,0,1,1,0,0,1,0,1,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,1,1,0,1,1,1,1,1,1,0,0,0,1,0,1,1,0,1,1,1,0,1,1,0,1,1,0,0,0,1,0,0,1,0,0,0,1,1,0,0,1,1,0,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,1,1,0,0,0,1,1,0,1,1,0,0,1,0,1,1,0,0,0,0,0,1,1,1,1,0,0,1,1,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,1,1,0,1,0,1,0,0,1,1,0,0,0,1,0,0,0,0,1,0,0,1,1,0,1,0,1,0,1,1,0,0,1,1,0,1,0,1,0,0,0,1,0,0,1,0,1,1,0,0,1,1,1,1,0,1,0,1,1,1,0,1,1,1,0,1,0,1,1,1,0,0,1,1,0,0,0,1,0,0,1,0,1,0,1,1,0,1,1,1,1,1,0,1,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,1,0,1,1,0,0,1,0,0,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,1,0,1,0,1,0,0,0,0,1,0,0,1,1,0,0,0,1,0,1,0,1,1,1,1,1,1,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,0,0,0,1,0,1,0,1,1,1,0,1,0,0,1,1,0,1,0,0,1,1,1,1,0,1,1,0,1,1,1,1,0,0,1,1,0,1,0,0,0,1,1,1,1,0,0,1,1,1,0,1,1,0,0,1,1,1,0,0,1,1,0,0,1,1,1,1,0,1,0,1,1,1,1,0,1,0,1,0,1,0,1,0,1,0,1,0,0,0,1,0,1,0,1,1,0,0,1,1,1,1,0,0,1,1,0,0,1,1,0,1,1,1,0,0,1,0,1,1,0,0,0,0,1,0,1,1,0,0,0,0,0,1,0,1,1,0,1,1,0,0,0,0,0,0,0,1,0,0,1,0,0,1,0,1,0,1,1,0,1,1,0,0,0,1,1,1,1,0,1,0,1,0,1,1,0,1,1,0,1,0,0,0,0,1,1,1,0,1,1,1,1,1,0,1,1,0,1,1,1,0,1,1,1,1,1,0,0,1,1,0,0,1,0,0,1,0,1,0,0,1,1,1,0,1,0,1,1,1,1,0,1,0,0,0,1,1,0,0,1,0,1,0,1,0,0,0,1,1,0,1,1,1,1,0,0,1,1,1,1,0,1,1,1,0,0,0,0,1,0,0,1,1,1,0,1,0,1,1,1,0,1,0,0,1,1,1,0,1,1,0,1,1,0,1,1,0,0,1,1,1,0,0,0,0,1,1,0,1,1,0,0,1,0,1,1,1,0,0,0,0,1,1,1,1,1,0,1,0,0,0,1,0,1,1,0,1,1,1,0,0,0,1,1,1,0,1,0,0,0,1,1,1,1,0,0,1,0,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,0,0,1,1,1,0,0,0,1,1,0,0,0,1,0,0,0,1,0,1,1,0,0,0,0,1,0,1,1,1,1,1,0,1,1,0,1,1,0,0,0,0,1,1,1,0,0,0,1,1,0,0,1,1,0,1,1,1,1,1,0,0,1,1,0,0,1,0,0,1,1,1,1,0,0,0,0,0,1,0,0,0,0,1,0,1,1,1,0,0,0,1,0,0,0,1,0,0,1,0,0,1,1,0,1,1,1,1,1,0,1,1,0,1,1,1,0,0,0,0,0,0,0,1,1,0,1,1,1,0,0,1,1,1,0,1,0,0,0,0,0,0,1,1,0,0,1,1,0,1,0,0,1,1,1,1,0,1,0,0,0,0,1,1,0,0,1,0,1,0,1,0,0,0,1,0,0,1,1,1,0,0,1,0,1,0,1,0,0,1,1,0,1,0,0,1,1,1,1,1,1,0,0,0,1,0,0,0,0,1,0,1,0,0,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,0,1,1,0,0,1,0,0,1,0,1,0,1,0,1,0,0,1,0,1,0,0,1,1,0,1,1,0,0,1,1,1,0,1,0,0,1,1,1,1,0,0,1,0,1,0,0,1,0,1,0,0,1,1,1,1,1,1,1,1,0,1,0,1,1,0,0,0,1,0,1,0,1,0,1,1,1,1,0,1,1,0,0,1,1,1,1,0,1,1,1,0,0,0,0,0,0,0,1,0,0,0,1,1,1,1,1,1,0,0,0,0,1,0,0,0,1,0,1,0,0,1,1,1,1,1,1,0,1,1,0,0,1,1,1,1,0,0,0,0,1,1,0,1,0,1,1,0,1,0,0,1,0,0,0,0,0,0,0,1,0,1,0,1,1,0,1,1,1,0,0,0,0,1,1,1,1,0,0,1,0,1,0,0,0,1,0,1,0,0,0,0,1,0,1,1,0,1,0,0,1,1,0,0,0,1,1,0,1,1,0,1,1,1,1,1,1,0,0,0,1,1,0,0,1,1,0,0,1,1,1,0,1,0,1,0,0,1,1,1,0,1,0,1,1,1,0,1,1,1,1,0,1,0,1,1,1,1,1,0,0,1,1,1,1,0,1,0,0,0,1,0,0,1,1,0,0,0,1,1,1,0,0,1,1,0,0,0,1,0,1,0,1,0,1,1,0,1,0,0,1,1,1,1,1,1,1,1,0,1,1,0,1,1,0,1,0,1,1,0,1,0,1,0,1,0,1,1,0,0,0,0,1,1,0,0,0,0,0,1,0,1,1,1,0,1,1,0,0,1,1,1,1,1,0,1,1,1,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,0,0,1,1,0,0,0,1,0,1,0,0,0,1,1,0,0,1,0,1,1,1,0,0,0,1,0,1,0,0,0,0,0,1,1,0,1,1,0,1,0,1,1,1,0,1,1,0,0,0,0,1,0,0,1,0,0,1,1,1,0,1,0,0,1,1,0,0,0,1,1,1,1,0,1,1,0,0,0,0,0,0,0,0,1,0,1,0,0,1,1,1,1,1,1,1,1,1,1,0,1,0,1,1,0,0,1,1,1,1,0,1,0,1,1,0,1,0,1,1,1,1,1,0,1,1,1]},__routerFilterDynamic:{numItems:23,errorRate:1e-4,numBits:441,numHashes:14,bitArray:[1,1,1,1,1,1,0,0,1,1,0,0,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,0,0,0,1,1,0,1,0,0,0,0,0,1,1,0,1,0,0,0,1,1,1,0,0,1,0,0,1,1,0,1,1,0,1,0,0,1,1,0,1,1,0,0,1,1,1,0,1,0,1,0,0,1,1,1,1,1,0,0,1,1,0,0,1,1,0,1,1,0,1,0,1,1,1,1,1,0,1,0,0,1,0,1,1,0,1,1,1,1,0,0,0,0,0,0,0,1,0,1,1,1,0,1,1,0,0,0,1,1,1,1,1,0,0,1,0,1,1,1,1,0,0,0,1,1,1,1,0,0,1,0,1,1,0,1,0,1,1,0,1,0,0,1,1,1,0,0,1,1,0,1,1,1,0,1,0,0,1,1,0,0,1,1,0,1,0,1,1,1,0,0,1,1,1,0,0,1,1,1,0,0,1,1,1,0,0,1,0,0,1,0,0,0,0,1,0,1,1,1,0,1,1,1,1,0,0,1,0,0,0,0,0,1,0,0,1,1,0,0,0,1,0,0,0,0,1,0,1,0,1,1,0,1,1,0,0,0,1,0,1,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,0,1,0,1,1,1,0,1,1,1,0,0,1,1,1,1,1,1,0,0,1,1,1,1,1,0,1,0,1,1,0,1,1,0,1,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,1,1,0,0,0,0,1,0,0,1,0,1,0,1,0,1,0,1,0,0,0,0,1,0,1,1,1,1,0,0,1,1,0,0,0,1,0,0,0,0,1,0,1,1,1,0,1,0,1,1,0,0,1,1,1,1,1,1,1,1,1,0,1,0,0,1,1,1,0,0,0,0,0,1,0,1,0,1,0,1,0,1,0,1,1,1,0,1,0,0,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,1]},sortedPages:["/_app"]}}(void 0,"/api/v1/:path*","/api/v1"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8593],{20975:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>m});var o=s(95155),r=s(12115),i=s(35497),n=s(52679);function a({id:e,icon:t,size:s=22}){let[i,n]=(0,r.useState)(!1);return i?(0,o.jsx)("span",{className:"material-symbols-outlined text-primary",style:{fontSize:s},children:t}):(0,o.jsx)("img",{src:`/providers/${e}.png`,alt:"",width:s,height:s,className:"rounded object-contain",style:{width:s,height:s},onError:()=>n(!0)})}function l(e){return`${e} connection${1===e?"":"s"}`}function d({isOpen:e,onClose:t,onSuccess:s}){let[i,n]=(0,r.useState)(""),[a,l]=(0,r.useState)(!1),[c,x]=(0,r.useState)(null),m=async()=>{if(i.trim()){l(!0),x(null);try{let e=await fetch("/api/oauth/codebuddy/bulk-token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tokens:i})}),t=await e.json();x(t),t.success&&s?.()}catch(e){x({error:e.message})}finally{l(!1)}}};if(!e)return null;let p=null;if(c?.success){let e=[`Imported ${c.imported}/${c.total} tokens.`];if(c.failed&&e.push(`${c.failed} failed.`),c.formatCounts){let{"access-only":t,"with-refresh":s,"with-api-key":o}=c.formatCounts,r=[];o&&r.push(`${o} with API key`),s&&r.push(`${s} with refresh token`),t&&r.push(`${t} access-only`),r.length&&e.push(`(${r.join(", ")})`)}p=e.join(" ")}return(0,o.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",onClick:t,children:(0,o.jsxs)("div",{className:"w-full max-w-lg rounded-xl border border-border bg-surface p-6 shadow-xl",onClick:e=>e.stopPropagation(),children:[(0,o.jsx)("h3",{className:"mb-4 text-lg font-semibold text-text-main",children:"CodeBuddy OAuth Token Import"}),(0,o.jsx)("p",{className:"mb-2 text-xs text-text-muted",children:"Paste CodeBuddy OAuth tokens, one per line. Supports three formats:"}),(0,o.jsxs)("div",{className:"mb-3 space-y-2 rounded-lg bg-background/50 p-3 text-xs text-text-muted",children:[(0,o.jsxs)("div",{className:"flex items-center gap-2",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[16px] text-primary leading-none",children:"check_circle"}),(0,o.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,o.jsx)("code",{className:"text-[10px] bg-border/50 px-1.5 py-0.5 rounded leading-none",children:"accessToken"}),(0,o.jsx)("span",{children:"— access token only (24h expiry)"})]})]}),(0,o.jsxs)("div",{className:"flex items-center gap-2",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[16px] text-primary leading-none",children:"check_circle"}),(0,o.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,o.jsx)("code",{className:"text-[10px] bg-border/50 px-1.5 py-0.5 rounded leading-none",children:"accessToken:refreshToken"}),(0,o.jsx)("span",{children:"— enables auto-refresh"})]})]}),(0,o.jsxs)("div",{className:"flex items-center gap-2",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[16px] text-primary leading-none",children:"check_circle"}),(0,o.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,o.jsx)("code",{className:"text-[10px] bg-border/50 px-1.5 py-0.5 rounded leading-none",children:"accessToken:refreshToken:apiKey"}),(0,o.jsx)("span",{children:"— 365-day access"})]})]})]}),(0,o.jsx)("textarea",{className:"mb-3 w-full rounded-lg border border-border bg-background p-3 font-mono text-xs text-text-main placeholder:text-text-muted focus:border-primary focus:outline-none",rows:8,placeholder:"eyJhbGciOiJSUzI1NiIs...\neyJhbGciOiJSUzI1NiIs...:eyJhbGciOiJSUzI1NiIs...\neyJhbGciOiJSUzI1NiIs...:eyJhbGciOiJSUzI1NiIs...:ak_abc123...",value:i,onChange:e=>n(e.target.value),disabled:a}),c&&(0,o.jsx)("div",{className:"mb-3 rounded-lg p-3 text-xs "+(c.success?"bg-green-500/10 text-green-400":"bg-red-500/10 text-red-400"),children:p||c.error||"Import failed"}),(0,o.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,o.jsx)("button",{type:"button",onClick:t,className:"rounded-lg px-4 py-2 text-sm text-text-muted hover:bg-border/50",children:"Close"}),(0,o.jsx)("button",{type:"button",onClick:m,disabled:a||!i.trim(),className:"rounded-lg bg-primary px-4 py-2 text-sm font-medium text-white hover:bg-primary/90 disabled:opacity-50",children:a?"Importing...":"Import Tokens"})]})]})})}function c({isOpen:e,onClose:t,onSuccess:s}){let[i,n]=(0,r.useState)(""),[a,l]=(0,r.useState)(!1),[d,x]=(0,r.useState)(null),m=async()=>{if(i.trim()){l(!0),x(null);try{let e=await fetch("/api/oauth/codebuddy-cn/bulk-token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tokens:i})}),t=await e.json();x(t),t.success&&s?.()}catch(e){x({error:e.message})}finally{l(!1)}}};if(!e)return null;let p=null;if(d?.success){let e=[`Imported ${d.imported}/${d.total} tokens.`];d.failed&&e.push(`${d.failed} failed.`),p=e.join(" ")}return(0,o.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",onClick:t,children:(0,o.jsxs)("div",{className:"w-full max-w-lg rounded-xl border border-border bg-surface p-6 shadow-xl",onClick:e=>e.stopPropagation(),children:[(0,o.jsx)("h3",{className:"mb-4 text-lg font-semibold text-text-main",children:"CodeBuddy CN OAuth Token Import"}),(0,o.jsx)("p",{className:"mb-2 text-xs text-text-muted",children:"Paste CodeBuddy CN OAuth tokens, one per line. Supports:"}),(0,o.jsxs)("div",{className:"mb-3 space-y-1 rounded-lg bg-background/50 p-3 text-xs text-text-muted",children:[(0,o.jsxs)("div",{children:[(0,o.jsx)("code",{className:"text-[10px] bg-border/50 px-1.5 py-0.5 rounded",children:"accessToken"})," — access token only"]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("code",{className:"text-[10px] bg-border/50 px-1.5 py-0.5 rounded",children:"accessToken:refreshToken"})," — enables auto-refresh"]})]}),(0,o.jsx)("textarea",{className:"mb-3 w-full rounded-lg border border-border bg-background p-3 font-mono text-xs text-text-main placeholder:text-text-muted focus:border-primary focus:outline-none",rows:8,placeholder:"eyJhbGciOiJSUzI1NiIs...\neyJhbGciOiJSUzI1NiIs...:eyJhbGciOiJSUzI1NiIs...",value:i,onChange:e=>n(e.target.value),disabled:a}),d&&(0,o.jsx)("div",{className:"mb-3 rounded-lg p-3 text-xs "+(d.success?"bg-green-500/10 text-green-400":"bg-red-500/10 text-red-400"),children:p||d.error||"Import failed"}),(0,o.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,o.jsx)("button",{type:"button",onClick:t,className:"rounded-lg px-4 py-2 text-sm text-text-muted hover:bg-border/50",children:"Close"}),(0,o.jsx)("button",{type:"button",onClick:m,disabled:a||!i.trim(),className:"rounded-lg bg-primary px-4 py-2 text-sm font-medium text-white hover:bg-primary/90 disabled:opacity-50",children:a?"Importing...":"Import Tokens"})]})]})})}let x=[{id:"kiro",label:"Kiro AI",icon:"psychology_alt",description:"Token import, bulk import, and social login automation.",supportedModes:["single-token","bulk-token","bulk-account","social"],component:function({providerInfo:e,onRefresh:t}){let[s,n]=(0,r.useState)(!1),[a,l]=(0,r.useState)(null),[d,c]=(0,r.useState)(null),x=e=>{c({...e,key:Date.now()}),n(!0)};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[{id:"bulk-account",title:"Auto Login Bulk",icon:"group_add",description:"Run bulk gmail|password automation with worker progress and manual assist.",action:()=>x({method:"import",importMode:"bulk-account"})},{id:"bulk-token",title:"Bulk Token",icon:"playlist_add",description:"Import many Kiro refresh tokens, one token per line.",action:()=>x({method:"import",importMode:"bulk-token"})},{id:"single-token",title:"Single Token",icon:"vpn_key",description:"Auto-detect or paste one Kiro refresh token.",action:()=>x({method:"import",importMode:"single-token"})},{id:"builder-id",title:"AWS Builder ID",icon:"shield",description:"Open the standard AWS Builder ID device login.",action:()=>x({method:"builder-id"})},{id:"idc",title:"AWS IDC",icon:"business",description:"Enter an IAM Identity Center start URL and region.",action:()=>x({method:"idc"})},{id:"google",title:"Google Login",icon:"account_circle",description:"Open Kiro social Google login with callback capture.",action:()=>x({method:"social",provider:"google"})}].map(e=>(0,o.jsxs)("button",{type:"button",onClick:e.action,className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:e.icon}),e.title]}),(0,o.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:e.description})]},e.id))}),(0,o.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[a?.jobId&&(0,o.jsxs)(i.Ex,{variant:"default",children:["Bulk job: ",a.status]}),a?.jobId&&(0,o.jsx)(i.$n,{size:"sm",variant:"secondary",icon:"monitoring",onClick:()=>x({method:"import",importMode:"bulk-account"}),children:"Resume Bulk Progress"})]}),(0,o.jsx)(i.Mh,{isOpen:s,providerInfo:e,onSuccess:t,onRefresh:t,initialBulkJobId:a?.jobId||null,initialFlow:d,onBulkJobChange:l,onClose:()=>n(!1)})]})}},{id:"codebuddy",label:"CodeBuddy",icon:"smart_toy",description:"Bulk GSuite automation and browser OAuth polling login.",supportedModes:["bulk-account","device-oauth"],component:function({providerInfo:e,onRefresh:t}){let[s,n]=(0,r.useState)(!1),[a,l]=(0,r.useState)(!1),[c,x]=(0,r.useState)(!1);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[(0,o.jsxs)("button",{type:"button",onClick:()=>l(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"group_add"}),"Auto Login + Generate Key"]}),(0,o.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Run bulk GSuite gmail|password login, create a CodeBuddy Access Key, and save it for model calls."})]}),(0,o.jsxs)("button",{type:"button",onClick:()=>x(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"playlist_add"}),"OAuth Token Import"]}),(0,o.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Paste OAuth tokens with optional refresh tokens and API keys for extended access."})]}),(0,o.jsxs)("button",{type:"button",onClick:()=>n(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"login"}),"Device OAuth Login"]}),(0,o.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Open CodeBuddy browser login and poll until the OAuth token is saved."})]})]}),(0,o.jsx)(d,{isOpen:c,onClose:()=>x(!1),onSuccess:t}),(0,o.jsx)(i.Go,{isOpen:a,provider:"codebuddy",title:"CodeBuddy Bulk GSuite Login + Access Key",serviceName:"CodeBuddy",onSuccess:t,onClose:()=>l(!1)}),(0,o.jsx)(i.LF,{isOpen:s,provider:"codebuddy",providerInfo:e,onSuccess:()=>{t?.(),n(!1)},onClose:()=>n(!1)})]})}},{id:"codebuddy-cn",label:"CodeBuddy CN",icon:"smart_toy",description:"Phone-number auto-registration via 5sim SMS, token import, and device OAuth.",supportedModes:["bulk-account","device-oauth"],component:function({providerInfo:e,onRefresh:t}){let[s,n]=(0,r.useState)(!1),[a,l]=(0,r.useState)(!1),[d,x]=(0,r.useState)(!1);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[(0,o.jsxs)("button",{type:"button",onClick:()=>n(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"smartphone"}),"Auto Register (Phone)"]}),(0,o.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Bulk auto-register CodeBuddy CN accounts using 5sim virtual phone numbers (HK/China). Includes device-code token capture."})]}),(0,o.jsxs)("button",{type:"button",onClick:()=>l(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"playlist_add"}),"OAuth Token Import"]}),(0,o.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Paste pre-obtained CodeBuddy CN OAuth tokens with optional refresh tokens."})]}),(0,o.jsxs)("button",{type:"button",onClick:()=>x(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"login"}),"Device OAuth Login"]}),(0,o.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Open CodeBuddy CN browser login and poll until the OAuth token is saved."})]})]}),(0,o.jsx)(i.zE,{isOpen:s,onClose:()=>n(!1),onSuccess:t}),(0,o.jsx)(c,{isOpen:a,onClose:()=>l(!1),onSuccess:t}),(0,o.jsx)(i.LF,{isOpen:d,provider:"codebuddy-cn",providerInfo:e,onSuccess:()=>{t?.(),x(!1)},onClose:()=>x(!1)})]})}},{id:"qoder",label:"Qoder",icon:"code",description:"Bulk GSuite auto login via Google SSO and device flow.",supportedModes:["bulk-account","device-oauth"],component:function({providerInfo:e,onRefresh:t}){let[s,n]=(0,r.useState)(!1),[a,l]=(0,r.useState)(!1);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[(0,o.jsxs)("button",{type:"button",onClick:()=>n(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"group_add"}),"Auto Login Bulk"]}),(0,o.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Run bulk gmail:password or gmail|password automation via Google SSO with Qoder device flow."})]}),(0,o.jsxs)("button",{type:"button",onClick:()=>l(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"login"}),"Device OAuth Login"]}),(0,o.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Open Qoder device login in browser and poll until the token is saved."})]})]}),(0,o.jsx)(i.Go,{isOpen:s,provider:"qoder",title:"Qoder Bulk GSuite Auto Login",serviceName:"Qoder",onSuccess:t,onClose:()=>n(!1)}),(0,o.jsx)(i.LF,{isOpen:a,provider:"qoder",providerInfo:e,onSuccess:()=>{t?.(),l(!1)},onClose:()=>l(!1)})]})}},{id:"antigravity",label:"Antigravity",icon:"rocket_launch",description:"Bulk GSuite auto login via Google OAuth (authorization code).",supportedModes:["bulk-account","oauth"],component:function({providerInfo:e,onRefresh:t}){let[s,n]=(0,r.useState)(!1),[a,l]=(0,r.useState)(!1);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[(0,o.jsxs)("button",{type:"button",onClick:()=>n(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"group_add"}),"Auto Login Bulk"]}),(0,o.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Run bulk gmail:password or gmail|password automation via Google OAuth (authorization code) for Antigravity."})]}),(0,o.jsxs)("button",{type:"button",onClick:()=>l(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"login"}),"OAuth Login"]}),(0,o.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Open Antigravity Google OAuth in browser and finish the consent manually."})]})]}),(0,o.jsx)(i.Go,{isOpen:s,provider:"antigravity",title:"Antigravity Bulk GSuite Auto Login",serviceName:"Antigravity",onSuccess:t,onClose:()=>n(!1)}),(0,o.jsx)(i.LF,{isOpen:a,provider:"antigravity",providerInfo:e,onSuccess:()=>{t?.(),l(!1)},onClose:()=>l(!1)})]})}},{id:"autoclaw",label:"AutoClaw",icon:"bolt",description:"Bulk auto-register via Google OAuth. OpenAI-compatible GLM/DeepSeek proxy.",supportedModes:["bulk-account"],component:function({onRefresh:e}){let[t,s]=(0,r.useState)(!1);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:(0,o.jsxs)("button",{type:"button",onClick:()=>s(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"group_add"}),"Auto Register Bulk"]}),(0,o.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Run bulk gmail:password or gmail|password automation via Google OAuth to register AutoClaw accounts (GLM-5.2, GLM-5-Turbo, DeepSeek-V4). Each new account gets bonus points."})]})}),(0,o.jsx)(i.Go,{isOpen:t,provider:"autoclaw",title:"AutoClaw Bulk GSuite Auto Register",serviceName:"AutoClaw",onSuccess:e,onClose:()=>s(!1)})]})}},{id:"grok-cli",label:"Grok CLI",icon:"auto_awesome",description:"Bulk tempmail + CloakBrowser signup/login for Grok Build (Turnstile-capable).",supportedModes:["bulk-account","device-oauth"],component:function({providerInfo:e,onRefresh:t}){let[s,n]=(0,r.useState)(!1),[a,l]=(0,r.useState)(!1);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[(0,o.jsxs)("button",{type:"button",onClick:()=>n(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"group_add"}),"Bulk Register / Login"]}),(0,o.jsxs)("span",{className:"text-xs leading-relaxed text-text-muted",children:["Tempmail (@zevai.web.id) + CloakBrowser (Turnstile) → xAI email signup → Grok CLI device token. Paste ",(0,o.jsx)("code",{className:"text-[11px]",children:"auto"})," / ",(0,o.jsx)("code",{className:"text-[11px]",children:"auto:5"})," or existing ",(0,o.jsx)("code",{className:"text-[11px]",children:"email:password"}),"."]})]}),(0,o.jsxs)("button",{type:"button",onClick:()=>l(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,o.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,o.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"login"}),"Device OAuth Login"]}),(0,o.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Open xAI device login in browser and poll until the Grok CLI token is saved."})]})]}),(0,o.jsx)(i.Go,{isOpen:s,provider:"grok-cli",title:"Grok CLI Bulk (Tempmail + CloakBrowser)",serviceName:"Grok CLI",defaultEngine:"cloakbrowser",accountsPlaceholder:"auto\nauto:3\n# or existing:\n# user@zevai.web.id:password",onSuccess:t,onClose:()=>n(!1)}),(0,o.jsx)(i.LF,{isOpen:a,provider:"grok-cli",providerInfo:e,onSuccess:()=>{t?.(),l(!1)},onClose:()=>l(!1)})]})}}];function m(){let[e,t]=(0,r.useState)([]),[s,d]=(0,r.useState)(!0),[c,m]=(0,r.useState)(x[0].id),p=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/providers",{cache:"no-store"}),s=await e.json();e.ok&&t(s.connections||[])}catch(e){console.log("Error fetching automation connections:",e)}finally{d(!1)}},[]);(0,r.useEffect)(()=>{p()},[p]),(0,r.useEffect)(()=>{let e=new URLSearchParams(window.location.search).get("provider");x.some(t=>t.id===e)&&m(e)},[]);let u=x.find(e=>e.id===c)||x[0],b=n.IS[u.id]||{id:u.id,name:u.label},h=u.component,g=(0,r.useMemo)(()=>{let t={};for(let s of x)t[s.id]=e.filter(e=>e.provider===s.id).length;return t},[e]);return s?(0,o.jsxs)("div",{className:"flex flex-col gap-6",children:[(0,o.jsx)(i.Qv,{}),(0,o.jsx)(i.Qv,{})]}):(0,o.jsxs)("div",{className:"flex min-w-0 flex-col gap-6 px-1 sm:px-0",children:[(0,o.jsx)("div",{className:"flex flex-col gap-1",children:(0,o.jsx)("h1",{className:"text-2xl font-semibold",children:"Automation"})}),(0,o.jsx)("div",{className:"grid gap-3 sm:grid-cols-2",children:x.map(e=>{let t=e.id===c;return(0,o.jsxs)("button",{type:"button",onClick:()=>m(e.id),className:`flex min-w-0 items-center gap-3 rounded-lg border px-4 py-3 text-left transition-colors ${t?"border-primary/50 bg-primary/10 text-primary":"border-border bg-surface text-text-main hover:border-primary/30 hover:bg-primary/5"}`,children:[(0,o.jsx)(a,{id:e.id,icon:e.icon,size:22}),(0,o.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,o.jsx)("span",{className:"block truncate text-sm font-semibold",children:e.label}),(0,o.jsx)("span",{className:"mt-0.5 block text-xs text-text-muted",children:l(g[e.id]||0)})]})]},e.id)})}),(0,o.jsx)(i.Zp,{children:(0,o.jsxs)("div",{className:"flex min-w-0 flex-col gap-4",children:[(0,o.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between",children:[(0,o.jsxs)("div",{className:"min-w-0",children:[(0,o.jsxs)("div",{className:"flex items-center gap-2",children:[(0,o.jsx)(a,{id:u.id,icon:u.icon,size:22}),(0,o.jsx)("h2",{className:"text-lg font-semibold",children:u.label})]}),(0,o.jsx)("div",{className:"mt-2 flex flex-wrap gap-1.5",children:u.supportedModes.map(e=>(0,o.jsx)(i.Ex,{variant:"default",size:"sm",children:e},e))})]}),(0,o.jsx)(i.Ex,{variant:"success",children:l(g[u.id]||0)})]}),(0,o.jsx)(h,{providerInfo:b,onRefresh:p})]})})]})}},98944:(e,t,s)=>{Promise.resolve().then(s.bind(s,20975))}},e=>{e.O(0,[2574,3862,4343,3702,5497,8441,3794,7358],()=>e(e.s=98944)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[39,122,174,204,335,342,387,501,516,543,552,641,649,675,747,748,869,907,931,948,992,997,1077,1088,1091,1110,1118,1200,1288,1321,1337,1382,1446,1451,1512,1557,1566,1666,1674,1697,1747,1860,1898,1907,1910,1946,1949,2121,2154,2198,2284,2296,2366,2536,2757,2772,2785,2797,2833,2845,2919,2922,3025,3038,3078,3079,3295,3397,3472,3549,3562,3568,3648,3705,3883,3888,4010,4061,4093,4245,4286,4422,4444,4527,4612,4656,4674,4761,4829,4896,4993,5018,5107,5177,5211,5226,5460,5466,5637,5685,5745,5746,5805,5922,5990,6089,6091,6102,6107,6121,6268,6278,6319,6454,6463,6479,6529,6580,6594,6644,6664,6724,6740,6743,6819,6872,6919,6988,7046,7111,7131,7158,7241,7254,7306,7311,7423,7429,7445,7473,7508,7520,7758,7777,7824,7851,8018,8026,8057,8141,8165,8167,8207,8246,8264,8338,8453,8489,8573,8648,8736,8791,8814,8826,8870,8879,8918,8948,8974,8975,9027,9056,9069,9088,9120,9123,9141,9199,9321,9338,9359,9461,9515,9606,9678,9709,9762,9817,9903],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[39,122,174,204,335,342,387,501,516,543,552,641,649,675,747,748,869,907,931,948,992,997,1077,1088,1091,1110,1118,1200,1288,1321,1337,1382,1446,1451,1512,1557,1566,1666,1674,1697,1747,1860,1898,1907,1910,1946,1949,2121,2154,2198,2284,2296,2366,2536,2757,2772,2785,2797,2833,2845,2919,2922,3025,3038,3078,3079,3295,3397,3472,3549,3562,3568,3648,3705,3883,3888,4010,4061,4093,4245,4286,4422,4444,4527,4612,4656,4674,4761,4829,4896,4993,5018,5107,5177,5211,5226,5460,5466,5637,5685,5745,5746,5805,5922,5990,6089,6091,6102,6107,6121,6268,6278,6319,6454,6463,6479,6529,6580,6594,6644,6664,6724,6740,6743,6819,6872,6919,6988,7046,7111,7131,7158,7241,7254,7306,7311,7423,7429,7445,7473,7508,7520,7758,7777,7824,7851,8018,8026,8057,8141,8165,8167,8207,8246,8264,8338,8453,8489,8573,8648,8736,8791,8814,8826,8870,8879,8918,8948,8974,8975,9027,9056,9069,9088,9120,9123,9141,9199,9321,9338,9359,9461,9515,9606,9678,9709,9762,9817,9903],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[39,122,174,204,335,342,387,501,516,543,552,641,649,675,747,748,869,907,931,948,992,997,1077,1088,1091,1110,1118,1200,1288,1321,1337,1382,1446,1451,1512,1557,1566,1666,1674,1697,1747,1860,1898,1907,1910,1946,1949,2121,2154,2198,2284,2296,2366,2536,2757,2772,2785,2797,2833,2845,2919,2922,3025,3038,3078,3079,3295,3397,3472,3549,3562,3568,3648,3705,3883,3888,4010,4061,4093,4245,4286,4422,4444,4527,4612,4656,4674,4761,4829,4896,4993,5018,5107,5177,5211,5226,5460,5466,5637,5685,5745,5746,5805,5922,5990,6089,6091,6102,6107,6121,6268,6278,6319,6454,6463,6479,6529,6580,6594,6644,6664,6724,6740,6743,6819,6872,6919,6988,7046,7111,7131,7158,7241,7254,7306,7311,7423,7429,7445,7473,7508,7520,7758,7777,7824,7851,8018,8026,8057,8141,8165,8167,8207,8246,8264,8338,8453,8489,8573,8648,8736,8791,8814,8826,8870,8879,8918,8948,8974,8975,9027,9056,9069,9088,9120,9123,9141,9199,9321,9338,9359,9461,9515,9606,9678,9709,9762,9817,9903],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[39,122,174,204,335,342,387,501,516,543,552,641,649,675,747,748,869,907,931,948,992,997,1077,1088,1091,1110,1118,1200,1288,1321,1337,1382,1446,1451,1512,1557,1566,1666,1674,1697,1747,1860,1898,1907,1910,1946,1949,2121,2154,2198,2284,2296,2366,2536,2757,2772,2785,2797,2833,2845,2919,2922,3025,3038,3078,3079,3295,3397,3472,3549,3562,3568,3648,3705,3883,3888,4010,4061,4093,4245,4286,4422,4444,4527,4612,4656,4674,4761,4829,4896,4993,5018,5107,5177,5211,5226,5460,5466,5637,5685,5745,5746,5805,5922,5990,6089,6091,6102,6107,6121,6268,6278,6319,6454,6463,6479,6529,6580,6594,6644,6664,6724,6740,6743,6819,6872,6919,6988,7046,7111,7131,7158,7241,7254,7306,7311,7423,7429,7445,7473,7508,7520,7758,7777,7824,7851,8018,8026,8057,8141,8165,8167,8207,8246,8264,8338,8453,8489,8573,8648,8736,8791,8814,8826,8870,8879,8918,8948,8974,8975,9027,9056,9069,9088,9120,9123,9141,9199,9321,9338,9359,9461,9515,9606,9678,9709,9762,9817,9903],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[39,122,174,204,335,342,387,501,516,543,552,641,649,675,747,748,869,907,931,948,992,997,1077,1088,1091,1110,1118,1200,1288,1321,1337,1382,1446,1451,1512,1557,1566,1666,1674,1697,1747,1860,1898,1907,1910,1946,1949,2121,2154,2198,2284,2296,2366,2536,2757,2772,2785,2797,2833,2845,2919,2922,3025,3038,3078,3079,3295,3397,3472,3549,3562,3568,3648,3705,3883,3888,4010,4061,4093,4245,4286,4422,4444,4527,4612,4656,4674,4761,4829,4896,4993,5018,5107,5177,5211,5226,5460,5466,5637,5685,5745,5746,5805,5922,5990,6089,6091,6102,6107,6121,6268,6278,6319,6454,6463,6479,6529,6580,6594,6644,6664,6724,6740,6743,6819,6872,6919,6988,7046,7111,7131,7158,7241,7254,7306,7311,7423,7429,7445,7473,7508,7520,7758,7777,7824,7851,8018,8026,8057,8141,8165,8167,8207,8246,8264,8338,8453,8489,8573,8648,8736,8791,8814,8826,8870,8879,8918,8948,8974,8975,9027,9056,9069,9088,9120,9123,9141,9199,9321,9338,9359,9461,9515,9606,9678,9709,9762,9817,9903],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);