zevairouter 1.0.118 → 1.0.119

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 (1232) hide show
  1. package/cli/app/.next-cli-build/BUILD_ID +1 -1
  2. package/cli/app/.next-cli-build/app-path-routes-manifest.json +9 -6
  3. package/cli/app/.next-cli-build/build-manifest.json +2 -2
  4. package/cli/app/.next-cli-build/routes-manifest.json +20 -0
  5. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js +2 -2
  6. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js.nft.json +1 -1
  7. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page_client-reference-manifest.js +1 -1
  8. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  9. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  10. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  11. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +3 -3
  12. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  13. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  14. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  15. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  16. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  17. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  18. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  19. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  20. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  21. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  22. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  23. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js +2 -2
  24. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js.nft.json +1 -1
  25. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page_client-reference-manifest.js +1 -1
  26. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  27. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  28. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  29. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +3 -3
  30. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  31. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  32. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
  33. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  34. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  35. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +3 -3
  36. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  37. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  38. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
  39. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  40. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  41. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  42. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  43. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  44. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
  45. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  46. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  47. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js +2 -2
  48. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js.nft.json +1 -1
  49. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
  50. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  51. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  52. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  53. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
  54. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  55. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  56. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  57. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  58. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  59. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  60. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  61. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  62. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +3 -3
  63. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  64. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  65. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +2 -2
  66. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
  67. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
  68. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  69. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  70. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  71. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page.js +3 -3
  72. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page.js.nft.json +1 -1
  73. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page_client-reference-manifest.js +1 -1
  74. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +2 -2
  75. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
  76. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  77. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  78. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  79. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  80. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  81. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  82. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  83. package/cli/app/.next-cli-build/server/app/_global-error/page.js +2 -2
  84. package/cli/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  85. package/cli/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  86. package/cli/app/.next-cli-build/server/app/_global-error.html +1 -1
  87. package/cli/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  88. package/cli/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  89. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  90. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  91. package/cli/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  92. package/cli/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  93. package/cli/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  94. package/cli/app/.next-cli-build/server/app/_not-found/page.js +2 -2
  95. package/cli/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  96. package/cli/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  97. package/cli/app/.next-cli-build/server/app/_not-found.html +1 -1
  98. package/cli/app/.next-cli-build/server/app/_not-found.rsc +3 -3
  99. package/cli/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +3 -3
  100. package/cli/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  101. package/cli/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +3 -3
  102. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  103. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  104. package/cli/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  105. package/cli/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
  106. package/cli/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  107. package/cli/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
  108. package/cli/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  109. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
  110. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  111. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
  112. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  113. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
  114. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  115. package/cli/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
  116. package/cli/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  117. package/cli/app/.next-cli-build/server/app/api/cache/stats/route.js +1 -1
  118. package/cli/app/.next-cli-build/server/app/api/cache/stats/route.js.nft.json +1 -1
  119. package/cli/app/.next-cli-build/server/app/api/changelog/route.js +1 -1
  120. package/cli/app/.next-cli-build/server/app/api/changelog/route.js.nft.json +1 -1
  121. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +2 -2
  122. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  123. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  124. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  125. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  126. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  127. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +1 -1
  128. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  129. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
  130. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  131. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js +1 -1
  132. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js.nft.json +1 -1
  133. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
  134. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  135. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +1 -1
  136. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  137. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +1 -1
  138. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  139. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
  140. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  141. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
  142. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  143. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +1 -1
  144. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  145. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +1 -1
  146. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  147. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
  148. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  149. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +1 -1
  150. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  151. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  152. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  153. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  154. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  155. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  156. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  157. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  158. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  159. package/cli/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  160. package/cli/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  161. package/cli/app/.next-cli-build/server/app/api/context/[id]/route.js +1 -1
  162. package/cli/app/.next-cli-build/server/app/api/context/[id]/route.js.nft.json +1 -1
  163. package/cli/app/.next-cli-build/server/app/api/context/bulk/route.js +1 -1
  164. package/cli/app/.next-cli-build/server/app/api/context/bulk/route.js.nft.json +1 -1
  165. package/cli/app/.next-cli-build/server/app/api/context/route.js +1 -1
  166. package/cli/app/.next-cli-build/server/app/api/context/route.js.nft.json +1 -1
  167. package/cli/app/.next-cli-build/server/app/api/dashboard/chat/completions/route.js +1 -1
  168. package/cli/app/.next-cli-build/server/app/api/dashboard/chat/completions/route.js.nft.json +1 -1
  169. package/cli/app/.next-cli-build/server/app/api/headroom/extras/route.js +1 -1
  170. package/cli/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
  171. package/cli/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
  172. package/cli/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
  173. package/cli/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
  174. package/cli/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
  175. package/cli/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
  176. package/cli/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
  177. package/cli/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
  178. package/cli/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
  179. package/cli/app/.next-cli-build/server/app/api/headroom/stop/route.js +1 -1
  180. package/cli/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
  181. package/cli/app/.next-cli-build/server/app/api/health/ready/route.js +1 -0
  182. package/cli/app/.next-cli-build/server/app/api/health/ready/route.js.nft.json +1 -0
  183. package/cli/app/.next-cli-build/server/app/api/health/ready/route_client-reference-manifest.js +1 -0
  184. package/cli/app/.next-cli-build/server/app/api/health/route.js +1 -1
  185. package/cli/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  186. package/cli/app/.next-cli-build/server/app/api/init/route.js +1 -1
  187. package/cli/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  188. package/cli/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js +1 -0
  189. package/cli/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js.nft.json +1 -0
  190. package/cli/app/.next-cli-build/server/app/api/keys/[id]/rotate/route_client-reference-manifest.js +1 -0
  191. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  192. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  193. package/cli/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  194. package/cli/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  195. package/cli/app/.next-cli-build/server/app/api/locale/route.js +1 -1
  196. package/cli/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  197. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +1 -1
  198. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  199. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +2 -2
  200. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  201. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  202. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  203. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  204. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  205. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  206. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  207. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  208. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  209. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  210. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  211. package/cli/app/.next-cli-build/server/app/api/metrics/route.js +4 -0
  212. package/cli/app/.next-cli-build/server/app/api/metrics/route.js.nft.json +1 -0
  213. package/cli/app/.next-cli-build/server/app/api/metrics/route_client-reference-manifest.js +1 -0
  214. package/cli/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  215. package/cli/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  216. package/cli/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
  217. package/cli/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  218. package/cli/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  219. package/cli/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  220. package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  221. package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  222. package/cli/app/.next-cli-build/server/app/api/models/route.js +1 -1
  223. package/cli/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  224. package/cli/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  225. package/cli/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  226. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  227. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  228. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js +1 -1
  229. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  230. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  231. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  232. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js +1 -1
  233. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js.nft.json +1 -1
  234. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js +1 -1
  235. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js.nft.json +1 -1
  236. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js +1 -1
  237. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js.nft.json +1 -1
  238. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route.js +1 -1
  239. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  240. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  241. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  242. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/route.js +1 -1
  243. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/route.js.nft.json +1 -1
  244. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/latest/route.js +1 -1
  245. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/latest/route.js.nft.json +1 -1
  246. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/route.js +1 -1
  247. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/route.js.nft.json +1 -1
  248. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route.js +1 -1
  249. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  250. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  251. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  252. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route.js +1 -1
  253. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route.js.nft.json +1 -1
  254. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/latest/route.js +1 -1
  255. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/latest/route.js.nft.json +1 -1
  256. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/route.js +1 -1
  257. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/route.js.nft.json +1 -1
  258. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js +1 -1
  259. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  260. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  261. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  262. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js +1 -1
  263. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js.nft.json +1 -1
  264. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js +1 -1
  265. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js.nft.json +1 -1
  266. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js +1 -1
  267. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js.nft.json +1 -1
  268. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js +1 -1
  269. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js.nft.json +1 -1
  270. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js +1 -1
  271. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js.nft.json +1 -1
  272. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route.js +1 -1
  273. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  274. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  275. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  276. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route.js +1 -1
  277. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route.js.nft.json +1 -1
  278. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route.js +1 -1
  279. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route.js.nft.json +1 -1
  280. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js +1 -1
  281. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js.nft.json +1 -1
  282. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route.js +1 -1
  283. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route.js.nft.json +1 -1
  284. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route.js +1 -1
  285. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route.js.nft.json +1 -1
  286. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  287. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  288. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  289. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  290. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  291. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  292. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  293. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  294. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route.js +1 -1
  295. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  296. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  297. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  298. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/route.js +1 -1
  299. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/route.js.nft.json +1 -1
  300. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/latest/route.js +1 -1
  301. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/latest/route.js.nft.json +1 -1
  302. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js +1 -1
  303. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js.nft.json +1 -1
  304. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  305. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  306. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  307. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  308. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js +1 -1
  309. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  310. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  311. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  312. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js +1 -1
  313. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js.nft.json +1 -1
  314. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js +1 -1
  315. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js.nft.json +1 -1
  316. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js +1 -1
  317. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js.nft.json +1 -1
  318. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  319. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  320. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  321. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  322. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  323. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  324. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js +1 -1
  325. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  326. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  327. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  328. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js +1 -1
  329. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js.nft.json +1 -1
  330. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js +1 -1
  331. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js.nft.json +1 -1
  332. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js +1 -1
  333. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js.nft.json +1 -1
  334. package/cli/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  335. package/cli/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  336. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  337. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  338. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  339. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  340. package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
  341. package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  342. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  343. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  344. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  345. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  346. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  347. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  348. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  349. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  350. package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route.js +1 -1
  351. package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route.js.nft.json +1 -1
  352. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  353. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  354. package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
  355. package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  356. package/cli/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  357. package/cli/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  358. package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
  359. package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  360. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  361. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  362. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  363. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  364. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
  365. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  366. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  367. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  368. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
  369. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  370. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
  371. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  372. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
  373. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  374. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
  375. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  376. package/cli/app/.next-cli-build/server/app/api/pxpipe/health/route.js +1 -1
  377. package/cli/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
  378. package/cli/app/.next-cli-build/server/app/api/pxpipe/install/route.js +2 -2
  379. package/cli/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
  380. package/cli/app/.next-cli-build/server/app/api/pxpipe/restart/route.js +2 -2
  381. package/cli/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
  382. package/cli/app/.next-cli-build/server/app/api/pxpipe/start/route.js +2 -2
  383. package/cli/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
  384. package/cli/app/.next-cli-build/server/app/api/pxpipe/stats/route.js +2 -2
  385. package/cli/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
  386. package/cli/app/.next-cli-build/server/app/api/pxpipe/status/route.js +2 -2
  387. package/cli/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
  388. package/cli/app/.next-cli-build/server/app/api/pxpipe/stop/route.js +2 -2
  389. package/cli/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
  390. package/cli/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  391. package/cli/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  392. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  393. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  394. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
  395. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  396. package/cli/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  397. package/cli/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  398. package/cli/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
  399. package/cli/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  400. package/cli/app/.next-cli-build/server/app/api/tags/route.js +1 -1
  401. package/cli/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  402. package/cli/app/.next-cli-build/server/app/api/terminal/auth/setup/route.js +1 -1
  403. package/cli/app/.next-cli-build/server/app/api/terminal/auth/setup/route.js.nft.json +1 -1
  404. package/cli/app/.next-cli-build/server/app/api/terminal/auth/status/route.js +1 -1
  405. package/cli/app/.next-cli-build/server/app/api/terminal/auth/status/route.js.nft.json +1 -1
  406. package/cli/app/.next-cli-build/server/app/api/terminal/auth/unlock/route.js +1 -1
  407. package/cli/app/.next-cli-build/server/app/api/terminal/auth/unlock/route.js.nft.json +1 -1
  408. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/input/route.js +1 -1
  409. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/input/route.js.nft.json +1 -1
  410. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/resize/route.js +1 -1
  411. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/resize/route.js.nft.json +1 -1
  412. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/route.js +1 -1
  413. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/route.js.nft.json +1 -1
  414. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/stream/route.js +2 -2
  415. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/stream/route.js.nft.json +1 -1
  416. package/cli/app/.next-cli-build/server/app/api/terminal/session/route.js +1 -1
  417. package/cli/app/.next-cli-build/server/app/api/terminal/session/route.js.nft.json +1 -1
  418. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  419. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  420. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
  421. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  422. package/cli/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
  423. package/cli/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  424. package/cli/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
  425. package/cli/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  426. package/cli/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  427. package/cli/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  428. package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  429. package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  430. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
  431. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  432. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
  433. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  434. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
  435. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  436. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
  437. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  438. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  439. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  440. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  441. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  442. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +3 -3
  443. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  444. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  445. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  446. package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route.js +1 -1
  447. package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route.js.nft.json +1 -1
  448. package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  449. package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  450. package/cli/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
  451. package/cli/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  452. package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  453. package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  454. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  455. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  456. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  457. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  458. package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  459. package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  460. package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
  461. package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  462. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  463. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  464. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  465. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  466. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  467. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  468. package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  469. package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  470. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  471. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  472. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  473. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  474. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js +1 -1
  475. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  476. package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  477. package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  478. package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  479. package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  480. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
  481. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  482. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  483. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  484. package/cli/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  485. package/cli/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  486. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  487. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  488. package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  489. package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  490. package/cli/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  491. package/cli/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  492. package/cli/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  493. package/cli/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  494. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  495. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  496. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  497. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  498. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  499. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  500. package/cli/app/.next-cli-build/server/app/api/version/route.js +1 -1
  501. package/cli/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  502. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  503. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  504. package/cli/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  505. package/cli/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  506. package/cli/app/.next-cli-build/server/app/callback/page.js +2 -2
  507. package/cli/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  508. package/cli/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  509. package/cli/app/.next-cli-build/server/app/callback.html +1 -1
  510. package/cli/app/.next-cli-build/server/app/callback.rsc +3 -3
  511. package/cli/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +3 -3
  512. package/cli/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  513. package/cli/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +3 -3
  514. package/cli/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
  515. package/cli/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  516. package/cli/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  517. package/cli/app/.next-cli-build/server/app/dashboard/automation.html +1 -1
  518. package/cli/app/.next-cli-build/server/app/dashboard/automation.rsc +5 -5
  519. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation/__PAGE__.segment.rsc +2 -2
  520. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation.segment.rsc +1 -1
  521. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  522. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  523. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_full.segment.rsc +5 -5
  524. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_head.segment.rsc +1 -1
  525. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_index.segment.rsc +3 -3
  526. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_tree.segment.rsc +1 -1
  527. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  528. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +5 -5
  529. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  530. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  531. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  532. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  533. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +5 -5
  534. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  535. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +3 -3
  536. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
  537. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  538. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +5 -5
  539. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  540. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  541. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  542. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  543. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +5 -5
  544. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  545. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +3 -3
  546. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
  547. package/cli/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  548. package/cli/app/.next-cli-build/server/app/dashboard/combos.rsc +5 -5
  549. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  550. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  551. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  552. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  553. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +5 -5
  554. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  555. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +3 -3
  556. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
  557. package/cli/app/.next-cli-build/server/app/dashboard/context.html +1 -1
  558. package/cli/app/.next-cli-build/server/app/dashboard/context.rsc +5 -5
  559. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context/__PAGE__.segment.rsc +2 -2
  560. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context.segment.rsc +1 -1
  561. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  562. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  563. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_full.segment.rsc +5 -5
  564. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_head.segment.rsc +1 -1
  565. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_index.segment.rsc +3 -3
  566. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_tree.segment.rsc +1 -1
  567. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  568. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.rsc +5 -5
  569. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  570. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  571. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  572. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  573. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +5 -5
  574. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  575. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +3 -3
  576. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
  577. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  578. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +5 -5
  579. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  580. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  581. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  582. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  583. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  584. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +5 -5
  585. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  586. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +3 -3
  587. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +1 -1
  588. package/cli/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  589. package/cli/app/.next-cli-build/server/app/dashboard/mitm.rsc +5 -5
  590. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  591. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  592. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  593. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  594. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +5 -5
  595. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  596. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +3 -3
  597. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
  598. package/cli/app/.next-cli-build/server/app/dashboard/playground.html +1 -1
  599. package/cli/app/.next-cli-build/server/app/dashboard/playground.rsc +5 -5
  600. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard/playground/__PAGE__.segment.rsc +2 -2
  601. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard/playground.segment.rsc +1 -1
  602. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  603. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  604. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_full.segment.rsc +5 -5
  605. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_head.segment.rsc +1 -1
  606. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_index.segment.rsc +3 -3
  607. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_tree.segment.rsc +1 -1
  608. package/cli/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  609. package/cli/app/.next-cli-build/server/app/dashboard/profile.rsc +5 -5
  610. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  611. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  612. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  613. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  614. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +5 -5
  615. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  616. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +3 -3
  617. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
  618. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  619. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.rsc +5 -5
  620. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  621. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  622. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  623. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  624. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  625. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +5 -5
  626. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  627. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +3 -3
  628. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
  629. package/cli/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  630. package/cli/app/.next-cli-build/server/app/dashboard/providers.rsc +5 -5
  631. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  632. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  633. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  634. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  635. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +5 -5
  636. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  637. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +3 -3
  638. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
  639. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  640. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +5 -5
  641. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  642. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  643. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  644. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  645. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +5 -5
  646. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  647. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +3 -3
  648. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
  649. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
  650. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +5 -5
  651. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +2 -2
  652. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe.segment.rsc +1 -1
  653. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  654. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  655. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +5 -5
  656. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_head.segment.rsc +1 -1
  657. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_index.segment.rsc +3 -3
  658. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +1 -1
  659. package/cli/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
  660. package/cli/app/.next-cli-build/server/app/dashboard/quota.rsc +6 -6
  661. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  662. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  663. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  664. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  665. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +6 -6
  666. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  667. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +3 -3
  668. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
  669. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
  670. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  671. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  672. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  673. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +3 -3
  674. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +3 -3
  675. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  676. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +3 -3
  677. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
  678. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  679. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  680. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  681. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  682. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  683. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.rsc +5 -5
  684. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +2 -2
  685. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +1 -1
  686. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  687. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  688. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +5 -5
  689. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +1 -1
  690. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +3 -3
  691. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +1 -1
  692. package/cli/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  693. package/cli/app/.next-cli-build/server/app/dashboard/translator.rsc +5 -5
  694. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  695. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  696. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  697. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  698. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +5 -5
  699. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  700. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +3 -3
  701. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
  702. package/cli/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  703. package/cli/app/.next-cli-build/server/app/dashboard/usage.rsc +5 -5
  704. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  705. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  706. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  707. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  708. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +5 -5
  709. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  710. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +3 -3
  711. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
  712. package/cli/app/.next-cli-build/server/app/dashboard.html +1 -1
  713. package/cli/app/.next-cli-build/server/app/dashboard.rsc +5 -5
  714. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  715. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  716. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  717. package/cli/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +5 -5
  718. package/cli/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  719. package/cli/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +3 -3
  720. package/cli/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +1 -1
  721. package/cli/app/.next-cli-build/server/app/index.html +1 -1
  722. package/cli/app/.next-cli-build/server/app/index.rsc +3 -3
  723. package/cli/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  724. package/cli/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +3 -3
  725. package/cli/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  726. package/cli/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +3 -3
  727. package/cli/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
  728. package/cli/app/.next-cli-build/server/app/landing/page.js +2 -2
  729. package/cli/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  730. package/cli/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  731. package/cli/app/.next-cli-build/server/app/landing.html +1 -1
  732. package/cli/app/.next-cli-build/server/app/landing.rsc +3 -3
  733. package/cli/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +3 -3
  734. package/cli/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  735. package/cli/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +3 -3
  736. package/cli/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
  737. package/cli/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  738. package/cli/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  739. package/cli/app/.next-cli-build/server/app/login/page.js +2 -2
  740. package/cli/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  741. package/cli/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  742. package/cli/app/.next-cli-build/server/app/login.html +1 -1
  743. package/cli/app/.next-cli-build/server/app/login.rsc +4 -4
  744. package/cli/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +4 -4
  745. package/cli/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  746. package/cli/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +3 -3
  747. package/cli/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
  748. package/cli/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  749. package/cli/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  750. package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
  751. package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  752. package/cli/app/.next-cli-build/server/app/page.js +2 -2
  753. package/cli/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  754. package/cli/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  755. package/cli/app/.next-cli-build/server/app-paths-manifest.json +9 -6
  756. package/cli/app/.next-cli-build/server/chunks/1188.js +1 -0
  757. package/cli/app/.next-cli-build/server/chunks/1818.js +1 -0
  758. package/cli/app/.next-cli-build/server/chunks/2722.js +6 -6
  759. package/cli/app/.next-cli-build/server/chunks/3110.js +1 -1
  760. package/cli/app/.next-cli-build/server/chunks/3155.js +3 -3
  761. package/cli/app/.next-cli-build/server/chunks/318.js +2 -2
  762. package/cli/app/.next-cli-build/server/chunks/319.js +1 -1
  763. package/cli/app/.next-cli-build/server/chunks/3407.js +1 -1
  764. package/cli/app/.next-cli-build/server/chunks/3593.js +1 -1
  765. package/cli/app/.next-cli-build/server/chunks/415.js +1 -1
  766. package/cli/app/.next-cli-build/server/chunks/4746.js +1 -1
  767. package/cli/app/.next-cli-build/server/chunks/4765.js +24 -0
  768. package/cli/app/.next-cli-build/server/chunks/4780.js +1 -1
  769. package/cli/app/.next-cli-build/server/chunks/6269.js +1 -0
  770. package/cli/app/.next-cli-build/server/chunks/6802.js +1 -1
  771. package/cli/app/.next-cli-build/server/chunks/8157.js +1 -1
  772. package/cli/app/.next-cli-build/server/chunks/8242.js +2 -2
  773. package/cli/app/.next-cli-build/server/chunks/8255.js +1 -1
  774. package/cli/app/.next-cli-build/server/chunks/8450.js +1 -1
  775. package/cli/app/.next-cli-build/server/chunks/8895.js +2 -2
  776. package/cli/app/.next-cli-build/server/chunks/915.js +1 -1
  777. package/cli/app/.next-cli-build/server/chunks/9489.js +1 -1
  778. package/cli/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  779. package/cli/app/.next-cli-build/server/middleware.js +8 -8
  780. package/cli/app/.next-cli-build/server/pages/404.html +1 -1
  781. package/cli/app/.next-cli-build/server/pages/500.html +1 -1
  782. package/cli/app/.next-cli-build/server/server-reference-manifest.js +1 -1
  783. package/cli/app/.next-cli-build/server/server-reference-manifest.json +1 -1
  784. package/cli/app/.next-cli-build/static/EsPNkWozNCaNTZu9U2Fs3/_buildManifest.js +1 -0
  785. package/cli/app/.next-cli-build/static/chunks/{3702-5dff3b2add59cd88.js → 3702-5f52882fbc19ed29.js} +1 -1
  786. package/cli/app/.next-cli-build/static/chunks/523-4021d26bfc04bcf5.js +3 -0
  787. package/cli/app/.next-cli-build/static/chunks/{6069-622a346eaea668e8.js → 6069-6bce779705f69e62.js} +7 -7
  788. package/cli/app/.next-cli-build/static/chunks/app/_global-error/page-0958b3b629c68bd2.js +1 -0
  789. package/cli/app/.next-cli-build/static/chunks/app/api/auth/login/route-0958b3b629c68bd2.js +1 -0
  790. package/cli/app/.next-cli-build/static/chunks/app/api/auth/logout/route-0958b3b629c68bd2.js +1 -0
  791. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-0958b3b629c68bd2.js +1 -0
  792. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-0958b3b629c68bd2.js +1 -0
  793. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-0958b3b629c68bd2.js +1 -0
  794. package/cli/app/.next-cli-build/static/chunks/app/api/auth/status/route-0958b3b629c68bd2.js +1 -0
  795. package/cli/app/.next-cli-build/static/chunks/app/api/cache/stats/route-0958b3b629c68bd2.js +1 -0
  796. package/cli/app/.next-cli-build/static/chunks/app/api/changelog/route-0958b3b629c68bd2.js +1 -0
  797. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-0958b3b629c68bd2.js +1 -0
  798. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-0958b3b629c68bd2.js +1 -0
  799. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-0958b3b629c68bd2.js +1 -0
  800. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-0958b3b629c68bd2.js +1 -0
  801. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-0958b3b629c68bd2.js +1 -0
  802. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-gateway/accounts/route-0958b3b629c68bd2.js +1 -0
  803. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-0958b3b629c68bd2.js +1 -0
  804. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-0958b3b629c68bd2.js +1 -0
  805. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-0958b3b629c68bd2.js +1 -0
  806. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-0958b3b629c68bd2.js +1 -0
  807. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-0958b3b629c68bd2.js +1 -0
  808. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-0958b3b629c68bd2.js +1 -0
  809. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-0958b3b629c68bd2.js +1 -0
  810. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-0958b3b629c68bd2.js +1 -0
  811. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-0958b3b629c68bd2.js +1 -0
  812. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-0958b3b629c68bd2.js +1 -0
  813. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-0958b3b629c68bd2.js +1 -0
  814. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-0958b3b629c68bd2.js +1 -0
  815. package/cli/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-0958b3b629c68bd2.js +1 -0
  816. package/cli/app/.next-cli-build/static/chunks/app/api/combos/route-0958b3b629c68bd2.js +1 -0
  817. package/cli/app/.next-cli-build/static/chunks/app/api/context/[id]/route-0958b3b629c68bd2.js +1 -0
  818. package/cli/app/.next-cli-build/static/chunks/app/api/context/bulk/route-0958b3b629c68bd2.js +1 -0
  819. package/cli/app/.next-cli-build/static/chunks/app/api/context/route-0958b3b629c68bd2.js +1 -0
  820. package/cli/app/.next-cli-build/static/chunks/app/api/dashboard/chat/completions/route-0958b3b629c68bd2.js +1 -0
  821. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-0958b3b629c68bd2.js +1 -0
  822. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-0958b3b629c68bd2.js +1 -0
  823. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-0958b3b629c68bd2.js +1 -0
  824. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/start/route-0958b3b629c68bd2.js +1 -0
  825. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/status/route-0958b3b629c68bd2.js +1 -0
  826. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-0958b3b629c68bd2.js +1 -0
  827. package/cli/app/.next-cli-build/static/chunks/app/api/health/ready/route-0958b3b629c68bd2.js +1 -0
  828. package/cli/app/.next-cli-build/static/chunks/app/api/health/route-0958b3b629c68bd2.js +1 -0
  829. package/cli/app/.next-cli-build/static/chunks/app/api/init/route-0958b3b629c68bd2.js +1 -0
  830. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/rotate/route-0958b3b629c68bd2.js +1 -0
  831. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-0958b3b629c68bd2.js +1 -0
  832. package/cli/app/.next-cli-build/static/chunks/app/api/keys/route-0958b3b629c68bd2.js +1 -0
  833. package/cli/app/.next-cli-build/static/chunks/app/api/locale/route-0958b3b629c68bd2.js +1 -0
  834. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-0958b3b629c68bd2.js +1 -0
  835. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-0958b3b629c68bd2.js +1 -0
  836. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-0958b3b629c68bd2.js +1 -0
  837. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-0958b3b629c68bd2.js +1 -0
  838. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-0958b3b629c68bd2.js +1 -0
  839. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-0958b3b629c68bd2.js +1 -0
  840. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-0958b3b629c68bd2.js +1 -0
  841. package/cli/app/.next-cli-build/static/chunks/app/api/metrics/route-0958b3b629c68bd2.js +1 -0
  842. package/cli/app/.next-cli-build/static/chunks/app/api/models/alias/route-0958b3b629c68bd2.js +1 -0
  843. package/cli/app/.next-cli-build/static/chunks/app/api/models/availability/route-0958b3b629c68bd2.js +1 -0
  844. package/cli/app/.next-cli-build/static/chunks/app/api/models/custom/route-0958b3b629c68bd2.js +1 -0
  845. package/cli/app/.next-cli-build/static/chunks/app/api/models/disabled/route-0958b3b629c68bd2.js +1 -0
  846. package/cli/app/.next-cli-build/static/chunks/app/api/models/route-0958b3b629c68bd2.js +1 -0
  847. package/cli/app/.next-cli-build/static/chunks/app/api/models/test/route-0958b3b629c68bd2.js +1 -0
  848. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-0958b3b629c68bd2.js +1 -0
  849. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +1 -0
  850. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +1 -0
  851. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/route-0958b3b629c68bd2.js +1 -0
  852. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/latest/route-0958b3b629c68bd2.js +1 -0
  853. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/route-0958b3b629c68bd2.js +1 -0
  854. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +1 -0
  855. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +1 -0
  856. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/route-0958b3b629c68bd2.js +1 -0
  857. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/latest/route-0958b3b629c68bd2.js +1 -0
  858. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/route-0958b3b629c68bd2.js +1 -0
  859. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +1 -0
  860. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +1 -0
  861. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route-0958b3b629c68bd2.js +1 -0
  862. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/latest/route-0958b3b629c68bd2.js +1 -0
  863. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/route-0958b3b629c68bd2.js +1 -0
  864. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +1 -0
  865. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +1 -0
  866. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/route-0958b3b629c68bd2.js +1 -0
  867. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/latest/route-0958b3b629c68bd2.js +1 -0
  868. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/route-0958b3b629c68bd2.js +1 -0
  869. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-token/route-0958b3b629c68bd2.js +1 -0
  870. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/quota-cookie/route-0958b3b629c68bd2.js +1 -0
  871. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +1 -0
  872. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +1 -0
  873. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route-0958b3b629c68bd2.js +1 -0
  874. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/latest/route-0958b3b629c68bd2.js +1 -0
  875. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/route-0958b3b629c68bd2.js +1 -0
  876. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-token/route-0958b3b629c68bd2.js +1 -0
  877. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/quota-cookie/route-0958b3b629c68bd2.js +1 -0
  878. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-0958b3b629c68bd2.js +1 -0
  879. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-0958b3b629c68bd2.js +1 -0
  880. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-0958b3b629c68bd2.js +1 -0
  881. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-0958b3b629c68bd2.js +1 -0
  882. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +1 -0
  883. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +1 -0
  884. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/route-0958b3b629c68bd2.js +1 -0
  885. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/latest/route-0958b3b629c68bd2.js +1 -0
  886. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/route-0958b3b629c68bd2.js +1 -0
  887. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-0958b3b629c68bd2.js +1 -0
  888. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-0958b3b629c68bd2.js +1 -0
  889. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +1 -0
  890. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +1 -0
  891. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/route-0958b3b629c68bd2.js +1 -0
  892. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/latest/route-0958b3b629c68bd2.js +1 -0
  893. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/route-0958b3b629c68bd2.js +1 -0
  894. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-0958b3b629c68bd2.js +1 -0
  895. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-0958b3b629c68bd2.js +1 -0
  896. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-0958b3b629c68bd2.js +1 -0
  897. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +1 -0
  898. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +1 -0
  899. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/route-0958b3b629c68bd2.js +1 -0
  900. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/latest/route-0958b3b629c68bd2.js +1 -0
  901. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/route-0958b3b629c68bd2.js +1 -0
  902. package/cli/app/.next-cli-build/static/chunks/app/api/pricing/route-0958b3b629c68bd2.js +1 -0
  903. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-0958b3b629c68bd2.js +1 -0
  904. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-0958b3b629c68bd2.js +1 -0
  905. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-0958b3b629c68bd2.js +1 -0
  906. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-0958b3b629c68bd2.js +1 -0
  907. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-0958b3b629c68bd2.js +1 -0
  908. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-0958b3b629c68bd2.js +1 -0
  909. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-0958b3b629c68bd2.js +1 -0
  910. package/cli/app/.next-cli-build/static/chunks/app/api/providers/bulk-delete/route-0958b3b629c68bd2.js +1 -0
  911. package/cli/app/.next-cli-build/static/chunks/app/api/providers/client/route-0958b3b629c68bd2.js +1 -0
  912. package/cli/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-0958b3b629c68bd2.js +1 -0
  913. package/cli/app/.next-cli-build/static/chunks/app/api/providers/route-0958b3b629c68bd2.js +1 -0
  914. package/cli/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-0958b3b629c68bd2.js +1 -0
  915. package/cli/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-0958b3b629c68bd2.js +1 -0
  916. package/cli/app/.next-cli-build/static/chunks/app/api/providers/validate/route-0958b3b629c68bd2.js +1 -0
  917. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-0958b3b629c68bd2.js +1 -0
  918. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-0958b3b629c68bd2.js +1 -0
  919. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-0958b3b629c68bd2.js +1 -0
  920. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-0958b3b629c68bd2.js +1 -0
  921. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-0958b3b629c68bd2.js +1 -0
  922. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-0958b3b629c68bd2.js +1 -0
  923. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-0958b3b629c68bd2.js +1 -0
  924. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-0958b3b629c68bd2.js +1 -0
  925. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-0958b3b629c68bd2.js +1 -0
  926. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-0958b3b629c68bd2.js +1 -0
  927. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-0958b3b629c68bd2.js +1 -0
  928. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-0958b3b629c68bd2.js +1 -0
  929. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-0958b3b629c68bd2.js +1 -0
  930. package/cli/app/.next-cli-build/static/chunks/app/api/settings/database/route-0958b3b629c68bd2.js +1 -0
  931. package/cli/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-0958b3b629c68bd2.js +1 -0
  932. package/cli/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-0958b3b629c68bd2.js +1 -0
  933. package/cli/app/.next-cli-build/static/chunks/app/api/settings/route-0958b3b629c68bd2.js +1 -0
  934. package/cli/app/.next-cli-build/static/chunks/app/api/shutdown/route-0958b3b629c68bd2.js +1 -0
  935. package/cli/app/.next-cli-build/static/chunks/app/api/tags/route-0958b3b629c68bd2.js +1 -0
  936. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/setup/route-0958b3b629c68bd2.js +1 -0
  937. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/status/route-0958b3b629c68bd2.js +1 -0
  938. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/unlock/route-0958b3b629c68bd2.js +1 -0
  939. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/input/route-0958b3b629c68bd2.js +1 -0
  940. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/resize/route-0958b3b629c68bd2.js +1 -0
  941. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/route-0958b3b629c68bd2.js +1 -0
  942. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/stream/route-0958b3b629c68bd2.js +1 -0
  943. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/route-0958b3b629c68bd2.js +1 -0
  944. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-0958b3b629c68bd2.js +1 -0
  945. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-0958b3b629c68bd2.js +1 -0
  946. package/cli/app/.next-cli-build/static/chunks/app/api/translator/load/route-0958b3b629c68bd2.js +1 -0
  947. package/cli/app/.next-cli-build/static/chunks/app/api/translator/save/route-0958b3b629c68bd2.js +1 -0
  948. package/cli/app/.next-cli-build/static/chunks/app/api/translator/send/route-0958b3b629c68bd2.js +1 -0
  949. package/cli/app/.next-cli-build/static/chunks/app/api/translator/translate/route-0958b3b629c68bd2.js +1 -0
  950. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-0958b3b629c68bd2.js +1 -0
  951. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-0958b3b629c68bd2.js +1 -0
  952. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-0958b3b629c68bd2.js +1 -0
  953. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-0958b3b629c68bd2.js +1 -0
  954. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-0958b3b629c68bd2.js +1 -0
  955. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-0958b3b629c68bd2.js +1 -0
  956. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-0958b3b629c68bd2.js +1 -0
  957. package/cli/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-0958b3b629c68bd2.js +1 -0
  958. package/cli/app/.next-cli-build/static/chunks/app/api/usage/aggregate/route-0958b3b629c68bd2.js +1 -0
  959. package/cli/app/.next-cli-build/static/chunks/app/api/usage/chart/route-0958b3b629c68bd2.js +1 -0
  960. package/cli/app/.next-cli-build/static/chunks/app/api/usage/history/route-0958b3b629c68bd2.js +1 -0
  961. package/cli/app/.next-cli-build/static/chunks/app/api/usage/providers/route-0958b3b629c68bd2.js +1 -0
  962. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-0958b3b629c68bd2.js +1 -0
  963. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-0958b3b629c68bd2.js +1 -0
  964. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stats/route-0958b3b629c68bd2.js +1 -0
  965. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stream/route-0958b3b629c68bd2.js +1 -0
  966. package/cli/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-0958b3b629c68bd2.js +1 -0
  967. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-0958b3b629c68bd2.js +1 -0
  968. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-0958b3b629c68bd2.js +1 -0
  969. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-0958b3b629c68bd2.js +1 -0
  970. package/cli/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-0958b3b629c68bd2.js +1 -0
  971. package/cli/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-0958b3b629c68bd2.js +1 -0
  972. package/cli/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-0958b3b629c68bd2.js +1 -0
  973. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-0958b3b629c68bd2.js +1 -0
  974. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/route-0958b3b629c68bd2.js +1 -0
  975. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-0958b3b629c68bd2.js +1 -0
  976. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-0958b3b629c68bd2.js +1 -0
  977. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/route-0958b3b629c68bd2.js +1 -0
  978. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-0958b3b629c68bd2.js +1 -0
  979. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/route-0958b3b629c68bd2.js +1 -0
  980. package/cli/app/.next-cli-build/static/chunks/app/api/v1/route-0958b3b629c68bd2.js +1 -0
  981. package/cli/app/.next-cli-build/static/chunks/app/api/v1/search/route-0958b3b629c68bd2.js +1 -0
  982. package/cli/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-0958b3b629c68bd2.js +1 -0
  983. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-0958b3b629c68bd2.js +1 -0
  984. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-0958b3b629c68bd2.js +1 -0
  985. package/cli/app/.next-cli-build/static/chunks/app/api/version/route-0958b3b629c68bd2.js +1 -0
  986. package/cli/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-0958b3b629c68bd2.js +1 -0
  987. package/cli/app/.next-cli-build/static/chunks/app/api/version/update/route-0958b3b629c68bd2.js +1 -0
  988. package/cli/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-0958b3b629c68bd2.js +1 -0
  989. package/cli/app/.next-cli-build/static/chunks/app/page-0958b3b629c68bd2.js +1 -0
  990. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-0958b3b629c68bd2.js +1 -0
  991. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-0958b3b629c68bd2.js +1 -0
  992. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-0958b3b629c68bd2.js +1 -0
  993. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-0958b3b629c68bd2.js +1 -0
  994. package/cli/app/.openclaude/worktrees/agent-a63139fb/src/lib/terminal/ptyBridge.py +163 -0
  995. package/cli/app/package.json +1 -1
  996. package/cli/app/src/lib/db/adapters/sqljsAdapter.js +40 -3
  997. package/cli/package.json +1 -1
  998. package/open-sse/handlers/chatCore.js +6 -5
  999. package/open-sse/services/combo.js +2 -2
  1000. package/open-sse/utils/streamHandler.js +13 -1
  1001. package/package.json +1 -1
  1002. package/src/app/(dashboard)/dashboard/cli-tools/components/ApiKeySelect.js +9 -61
  1003. package/src/app/(dashboard)/dashboard/endpoint/EndpointPageClient.js +1 -30
  1004. package/src/app/api/dashboard/chat/completions/route.js +1 -1
  1005. package/src/app/api/health/ready/route.js +21 -0
  1006. package/src/app/api/keys/[id]/rotate/route.js +14 -0
  1007. package/src/app/api/keys/[id]/route.js +8 -1
  1008. package/src/app/api/metrics/route.js +32 -0
  1009. package/src/app/api/models/test/ping.js +1 -1
  1010. package/src/lib/db/adapters/sqljsAdapter.js +40 -3
  1011. package/src/lib/db/driver.js +17 -1
  1012. package/src/lib/db/index.js +1 -1
  1013. package/src/lib/db/repos/apiKeysRepo.js +70 -10
  1014. package/src/lib/db/repos/requestDetailsRepo.js +6 -16
  1015. package/src/lib/db/repos/usageRepo.js +1 -5
  1016. package/src/lib/db/schema.js +2 -0
  1017. package/src/lib/localDb.js +1 -1
  1018. package/src/lib/usage/quotaRefresh.js +12 -2
  1019. package/src/shared/services/initializeApp.js +11 -2
  1020. package/src/sse/handlers/chat.js +104 -46
  1021. package/src/sse/services/auth.js +10 -0
  1022. package/cli/app/.next-cli-build/server/chunks/1939.js +0 -24
  1023. package/cli/app/.next-cli-build/server/chunks/3831.js +0 -1
  1024. package/cli/app/.next-cli-build/server/chunks/6896.js +0 -1
  1025. package/cli/app/.next-cli-build/server/chunks/8666.js +0 -1
  1026. package/cli/app/.next-cli-build/server/chunks/8923.js +0 -1
  1027. package/cli/app/.next-cli-build/static/9thlCEOM7BraCgtlZNTC_/_buildManifest.js +0 -1
  1028. package/cli/app/.next-cli-build/static/chunks/523-cdbbfb01e1209d5b.js +0 -3
  1029. package/cli/app/.next-cli-build/static/chunks/app/_global-error/page-7d57d618dd714159.js +0 -1
  1030. package/cli/app/.next-cli-build/static/chunks/app/api/auth/login/route-7d57d618dd714159.js +0 -1
  1031. package/cli/app/.next-cli-build/static/chunks/app/api/auth/logout/route-7d57d618dd714159.js +0 -1
  1032. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-7d57d618dd714159.js +0 -1
  1033. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-7d57d618dd714159.js +0 -1
  1034. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-7d57d618dd714159.js +0 -1
  1035. package/cli/app/.next-cli-build/static/chunks/app/api/auth/status/route-7d57d618dd714159.js +0 -1
  1036. package/cli/app/.next-cli-build/static/chunks/app/api/cache/stats/route-7d57d618dd714159.js +0 -1
  1037. package/cli/app/.next-cli-build/static/chunks/app/api/changelog/route-7d57d618dd714159.js +0 -1
  1038. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-7d57d618dd714159.js +0 -1
  1039. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-7d57d618dd714159.js +0 -1
  1040. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-7d57d618dd714159.js +0 -1
  1041. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-7d57d618dd714159.js +0 -1
  1042. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-7d57d618dd714159.js +0 -1
  1043. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-gateway/accounts/route-7d57d618dd714159.js +0 -1
  1044. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-7d57d618dd714159.js +0 -1
  1045. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-7d57d618dd714159.js +0 -1
  1046. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-7d57d618dd714159.js +0 -1
  1047. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-7d57d618dd714159.js +0 -1
  1048. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-7d57d618dd714159.js +0 -1
  1049. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-7d57d618dd714159.js +0 -1
  1050. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-7d57d618dd714159.js +0 -1
  1051. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-7d57d618dd714159.js +0 -1
  1052. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-7d57d618dd714159.js +0 -1
  1053. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-7d57d618dd714159.js +0 -1
  1054. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-7d57d618dd714159.js +0 -1
  1055. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-7d57d618dd714159.js +0 -1
  1056. package/cli/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-7d57d618dd714159.js +0 -1
  1057. package/cli/app/.next-cli-build/static/chunks/app/api/combos/route-7d57d618dd714159.js +0 -1
  1058. package/cli/app/.next-cli-build/static/chunks/app/api/context/[id]/route-7d57d618dd714159.js +0 -1
  1059. package/cli/app/.next-cli-build/static/chunks/app/api/context/bulk/route-7d57d618dd714159.js +0 -1
  1060. package/cli/app/.next-cli-build/static/chunks/app/api/context/route-7d57d618dd714159.js +0 -1
  1061. package/cli/app/.next-cli-build/static/chunks/app/api/dashboard/chat/completions/route-7d57d618dd714159.js +0 -1
  1062. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-7d57d618dd714159.js +0 -1
  1063. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-7d57d618dd714159.js +0 -1
  1064. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-7d57d618dd714159.js +0 -1
  1065. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/start/route-7d57d618dd714159.js +0 -1
  1066. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/status/route-7d57d618dd714159.js +0 -1
  1067. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-7d57d618dd714159.js +0 -1
  1068. package/cli/app/.next-cli-build/static/chunks/app/api/health/route-7d57d618dd714159.js +0 -1
  1069. package/cli/app/.next-cli-build/static/chunks/app/api/init/route-7d57d618dd714159.js +0 -1
  1070. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-7d57d618dd714159.js +0 -1
  1071. package/cli/app/.next-cli-build/static/chunks/app/api/keys/route-7d57d618dd714159.js +0 -1
  1072. package/cli/app/.next-cli-build/static/chunks/app/api/locale/route-7d57d618dd714159.js +0 -1
  1073. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-7d57d618dd714159.js +0 -1
  1074. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-7d57d618dd714159.js +0 -1
  1075. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-7d57d618dd714159.js +0 -1
  1076. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-7d57d618dd714159.js +0 -1
  1077. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-7d57d618dd714159.js +0 -1
  1078. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-7d57d618dd714159.js +0 -1
  1079. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-7d57d618dd714159.js +0 -1
  1080. package/cli/app/.next-cli-build/static/chunks/app/api/models/alias/route-7d57d618dd714159.js +0 -1
  1081. package/cli/app/.next-cli-build/static/chunks/app/api/models/availability/route-7d57d618dd714159.js +0 -1
  1082. package/cli/app/.next-cli-build/static/chunks/app/api/models/custom/route-7d57d618dd714159.js +0 -1
  1083. package/cli/app/.next-cli-build/static/chunks/app/api/models/disabled/route-7d57d618dd714159.js +0 -1
  1084. package/cli/app/.next-cli-build/static/chunks/app/api/models/route-7d57d618dd714159.js +0 -1
  1085. package/cli/app/.next-cli-build/static/chunks/app/api/models/test/route-7d57d618dd714159.js +0 -1
  1086. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-7d57d618dd714159.js +0 -1
  1087. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route-7d57d618dd714159.js +0 -1
  1088. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route-7d57d618dd714159.js +0 -1
  1089. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/route-7d57d618dd714159.js +0 -1
  1090. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/latest/route-7d57d618dd714159.js +0 -1
  1091. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/route-7d57d618dd714159.js +0 -1
  1092. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route-7d57d618dd714159.js +0 -1
  1093. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route-7d57d618dd714159.js +0 -1
  1094. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/route-7d57d618dd714159.js +0 -1
  1095. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/latest/route-7d57d618dd714159.js +0 -1
  1096. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/route-7d57d618dd714159.js +0 -1
  1097. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route-7d57d618dd714159.js +0 -1
  1098. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route-7d57d618dd714159.js +0 -1
  1099. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route-7d57d618dd714159.js +0 -1
  1100. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/latest/route-7d57d618dd714159.js +0 -1
  1101. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/route-7d57d618dd714159.js +0 -1
  1102. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route-7d57d618dd714159.js +0 -1
  1103. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route-7d57d618dd714159.js +0 -1
  1104. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/route-7d57d618dd714159.js +0 -1
  1105. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/latest/route-7d57d618dd714159.js +0 -1
  1106. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/route-7d57d618dd714159.js +0 -1
  1107. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-token/route-7d57d618dd714159.js +0 -1
  1108. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/quota-cookie/route-7d57d618dd714159.js +0 -1
  1109. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route-7d57d618dd714159.js +0 -1
  1110. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route-7d57d618dd714159.js +0 -1
  1111. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route-7d57d618dd714159.js +0 -1
  1112. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/latest/route-7d57d618dd714159.js +0 -1
  1113. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/route-7d57d618dd714159.js +0 -1
  1114. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-token/route-7d57d618dd714159.js +0 -1
  1115. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/quota-cookie/route-7d57d618dd714159.js +0 -1
  1116. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-7d57d618dd714159.js +0 -1
  1117. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-7d57d618dd714159.js +0 -1
  1118. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-7d57d618dd714159.js +0 -1
  1119. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-7d57d618dd714159.js +0 -1
  1120. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route-7d57d618dd714159.js +0 -1
  1121. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route-7d57d618dd714159.js +0 -1
  1122. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/route-7d57d618dd714159.js +0 -1
  1123. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/latest/route-7d57d618dd714159.js +0 -1
  1124. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/route-7d57d618dd714159.js +0 -1
  1125. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-7d57d618dd714159.js +0 -1
  1126. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-7d57d618dd714159.js +0 -1
  1127. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route-7d57d618dd714159.js +0 -1
  1128. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route-7d57d618dd714159.js +0 -1
  1129. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/route-7d57d618dd714159.js +0 -1
  1130. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/latest/route-7d57d618dd714159.js +0 -1
  1131. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/route-7d57d618dd714159.js +0 -1
  1132. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-7d57d618dd714159.js +0 -1
  1133. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-7d57d618dd714159.js +0 -1
  1134. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-7d57d618dd714159.js +0 -1
  1135. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route-7d57d618dd714159.js +0 -1
  1136. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route-7d57d618dd714159.js +0 -1
  1137. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/route-7d57d618dd714159.js +0 -1
  1138. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/latest/route-7d57d618dd714159.js +0 -1
  1139. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/route-7d57d618dd714159.js +0 -1
  1140. package/cli/app/.next-cli-build/static/chunks/app/api/pricing/route-7d57d618dd714159.js +0 -1
  1141. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-7d57d618dd714159.js +0 -1
  1142. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-7d57d618dd714159.js +0 -1
  1143. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-7d57d618dd714159.js +0 -1
  1144. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-7d57d618dd714159.js +0 -1
  1145. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-7d57d618dd714159.js +0 -1
  1146. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-7d57d618dd714159.js +0 -1
  1147. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-7d57d618dd714159.js +0 -1
  1148. package/cli/app/.next-cli-build/static/chunks/app/api/providers/bulk-delete/route-7d57d618dd714159.js +0 -1
  1149. package/cli/app/.next-cli-build/static/chunks/app/api/providers/client/route-7d57d618dd714159.js +0 -1
  1150. package/cli/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-7d57d618dd714159.js +0 -1
  1151. package/cli/app/.next-cli-build/static/chunks/app/api/providers/route-7d57d618dd714159.js +0 -1
  1152. package/cli/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-7d57d618dd714159.js +0 -1
  1153. package/cli/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-7d57d618dd714159.js +0 -1
  1154. package/cli/app/.next-cli-build/static/chunks/app/api/providers/validate/route-7d57d618dd714159.js +0 -1
  1155. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-7d57d618dd714159.js +0 -1
  1156. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-7d57d618dd714159.js +0 -1
  1157. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-7d57d618dd714159.js +0 -1
  1158. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-7d57d618dd714159.js +0 -1
  1159. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-7d57d618dd714159.js +0 -1
  1160. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-7d57d618dd714159.js +0 -1
  1161. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-7d57d618dd714159.js +0 -1
  1162. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-7d57d618dd714159.js +0 -1
  1163. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-7d57d618dd714159.js +0 -1
  1164. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-7d57d618dd714159.js +0 -1
  1165. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-7d57d618dd714159.js +0 -1
  1166. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-7d57d618dd714159.js +0 -1
  1167. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-7d57d618dd714159.js +0 -1
  1168. package/cli/app/.next-cli-build/static/chunks/app/api/settings/database/route-7d57d618dd714159.js +0 -1
  1169. package/cli/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-7d57d618dd714159.js +0 -1
  1170. package/cli/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-7d57d618dd714159.js +0 -1
  1171. package/cli/app/.next-cli-build/static/chunks/app/api/settings/route-7d57d618dd714159.js +0 -1
  1172. package/cli/app/.next-cli-build/static/chunks/app/api/shutdown/route-7d57d618dd714159.js +0 -1
  1173. package/cli/app/.next-cli-build/static/chunks/app/api/tags/route-7d57d618dd714159.js +0 -1
  1174. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/setup/route-7d57d618dd714159.js +0 -1
  1175. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/status/route-7d57d618dd714159.js +0 -1
  1176. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/unlock/route-7d57d618dd714159.js +0 -1
  1177. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/input/route-7d57d618dd714159.js +0 -1
  1178. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/resize/route-7d57d618dd714159.js +0 -1
  1179. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/route-7d57d618dd714159.js +0 -1
  1180. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/stream/route-7d57d618dd714159.js +0 -1
  1181. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/route-7d57d618dd714159.js +0 -1
  1182. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-7d57d618dd714159.js +0 -1
  1183. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-7d57d618dd714159.js +0 -1
  1184. package/cli/app/.next-cli-build/static/chunks/app/api/translator/load/route-7d57d618dd714159.js +0 -1
  1185. package/cli/app/.next-cli-build/static/chunks/app/api/translator/save/route-7d57d618dd714159.js +0 -1
  1186. package/cli/app/.next-cli-build/static/chunks/app/api/translator/send/route-7d57d618dd714159.js +0 -1
  1187. package/cli/app/.next-cli-build/static/chunks/app/api/translator/translate/route-7d57d618dd714159.js +0 -1
  1188. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-7d57d618dd714159.js +0 -1
  1189. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-7d57d618dd714159.js +0 -1
  1190. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-7d57d618dd714159.js +0 -1
  1191. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-7d57d618dd714159.js +0 -1
  1192. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-7d57d618dd714159.js +0 -1
  1193. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-7d57d618dd714159.js +0 -1
  1194. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-7d57d618dd714159.js +0 -1
  1195. package/cli/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-7d57d618dd714159.js +0 -1
  1196. package/cli/app/.next-cli-build/static/chunks/app/api/usage/aggregate/route-7d57d618dd714159.js +0 -1
  1197. package/cli/app/.next-cli-build/static/chunks/app/api/usage/chart/route-7d57d618dd714159.js +0 -1
  1198. package/cli/app/.next-cli-build/static/chunks/app/api/usage/history/route-7d57d618dd714159.js +0 -1
  1199. package/cli/app/.next-cli-build/static/chunks/app/api/usage/providers/route-7d57d618dd714159.js +0 -1
  1200. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-7d57d618dd714159.js +0 -1
  1201. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-7d57d618dd714159.js +0 -1
  1202. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stats/route-7d57d618dd714159.js +0 -1
  1203. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stream/route-7d57d618dd714159.js +0 -1
  1204. package/cli/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-7d57d618dd714159.js +0 -1
  1205. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-7d57d618dd714159.js +0 -1
  1206. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-7d57d618dd714159.js +0 -1
  1207. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-7d57d618dd714159.js +0 -1
  1208. package/cli/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-7d57d618dd714159.js +0 -1
  1209. package/cli/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-7d57d618dd714159.js +0 -1
  1210. package/cli/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-7d57d618dd714159.js +0 -1
  1211. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-7d57d618dd714159.js +0 -1
  1212. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/route-7d57d618dd714159.js +0 -1
  1213. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-7d57d618dd714159.js +0 -1
  1214. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-7d57d618dd714159.js +0 -1
  1215. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/route-7d57d618dd714159.js +0 -1
  1216. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-7d57d618dd714159.js +0 -1
  1217. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/route-7d57d618dd714159.js +0 -1
  1218. package/cli/app/.next-cli-build/static/chunks/app/api/v1/route-7d57d618dd714159.js +0 -1
  1219. package/cli/app/.next-cli-build/static/chunks/app/api/v1/search/route-7d57d618dd714159.js +0 -1
  1220. package/cli/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-7d57d618dd714159.js +0 -1
  1221. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-7d57d618dd714159.js +0 -1
  1222. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-7d57d618dd714159.js +0 -1
  1223. package/cli/app/.next-cli-build/static/chunks/app/api/version/route-7d57d618dd714159.js +0 -1
  1224. package/cli/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-7d57d618dd714159.js +0 -1
  1225. package/cli/app/.next-cli-build/static/chunks/app/api/version/update/route-7d57d618dd714159.js +0 -1
  1226. package/cli/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-7d57d618dd714159.js +0 -1
  1227. package/cli/app/.next-cli-build/static/chunks/app/page-7d57d618dd714159.js +0 -1
  1228. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-7d57d618dd714159.js +0 -1
  1229. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-7d57d618dd714159.js +0 -1
  1230. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-7d57d618dd714159.js +0 -1
  1231. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-7d57d618dd714159.js +0 -1
  1232. /package/cli/app/.next-cli-build/static/{9thlCEOM7BraCgtlZNTC_ → EsPNkWozNCaNTZu9U2Fs3}/_ssgManifest.js +0 -0
@@ -0,0 +1,32 @@
1
+ import { getActiveRequests, getProviderConnections, getUsageStats } from "@/lib/db/index.js";
2
+ import { responseCache } from "@/lib/responseCache.js";
3
+
4
+ function metric(name, help, type, value) {
5
+ return `# HELP ${name} ${help}\n# TYPE ${name} ${type}\n${name} ${Number(value) || 0}\n`;
6
+ }
7
+
8
+ export async function GET() {
9
+ const [stats, activeRequests, connections] = await Promise.all([
10
+ getUsageStats("all"),
11
+ getActiveRequests(),
12
+ getProviderConnections({ isActive: true }),
13
+ ]);
14
+ const cache = responseCache.getStats();
15
+ const active = activeRequests.reduce((sum, request) => sum + (request.count || 0), 0);
16
+
17
+ const body = [
18
+ metric("zevai_requests_total", "Completed routed requests.", "counter", stats.totalRequests),
19
+ metric("zevai_prompt_tokens_total", "Prompt tokens processed.", "counter", stats.totalPromptTokens),
20
+ metric("zevai_completion_tokens_total", "Completion tokens processed.", "counter", stats.totalCompletionTokens),
21
+ metric("zevai_cost_total", "Estimated provider cost.", "counter", stats.totalCost),
22
+ metric("zevai_active_requests", "Requests currently in flight.", "gauge", active),
23
+ metric("zevai_active_provider_connections", "Configured active provider connections.", "gauge", connections.length),
24
+ metric("zevai_cache_hits_total", "Response cache hits.", "counter", cache.hits),
25
+ metric("zevai_cache_misses_total", "Response cache misses.", "counter", cache.misses),
26
+ metric("zevai_cache_entries", "Responses currently cached.", "gauge", cache.entries),
27
+ ].join("");
28
+
29
+ return new Response(body, {
30
+ headers: { "Content-Type": "text/plain; version=0.0.4; charset=utf-8" },
31
+ });
32
+ }
@@ -40,7 +40,7 @@ function createSilentWavFile() {
40
40
  async function getInternalHeaders() {
41
41
  let apiKey = null;
42
42
  try {
43
- const keys = await getApiKeys();
43
+ const keys = await getApiKeys(true);
44
44
  apiKey = keys.find((k) => k.isActive !== false)?.key || null;
45
45
  } catch {}
46
46
 
@@ -11,7 +11,37 @@ async function loadSql() {
11
11
  }
12
12
 
13
13
  export async function createSqlJsAdapter(filePath) {
14
- const SQLLib = await loadSql();
14
+ const lockPath = `${filePath}.sqljs.lock`;
15
+ let lockFd;
16
+ try {
17
+ lockFd = fs.openSync(lockPath, "wx");
18
+ } catch (error) {
19
+ if (error.code !== "EEXIST") throw error;
20
+ const ownerPid = Number.parseInt(fs.readFileSync(lockPath, "utf8"), 10);
21
+ try {
22
+ if (Number.isInteger(ownerPid) && ownerPid > 0) process.kill(ownerPid, 0);
23
+ throw new Error(`sql.js database is already owned by process ${ownerPid || "unknown"}`);
24
+ } catch (ownerError) {
25
+ if (ownerError.code !== "ESRCH") throw ownerError;
26
+ fs.rmSync(lockPath, { force: true });
27
+ lockFd = fs.openSync(lockPath, "wx");
28
+ }
29
+ }
30
+ fs.writeFileSync(lockFd, String(process.pid));
31
+ fs.closeSync(lockFd);
32
+ const releaseLock = () => {
33
+ try {
34
+ if (fs.readFileSync(lockPath, "utf8") === String(process.pid)) fs.rmSync(lockPath, { force: true });
35
+ } catch {}
36
+ };
37
+
38
+ let SQLLib;
39
+ try {
40
+ SQLLib = await loadSql();
41
+ } catch (error) {
42
+ releaseLock();
43
+ throw error;
44
+ }
15
45
  const buf = fs.existsSync(filePath) ? fs.readFileSync(filePath) : null;
16
46
  let db = new SQLLib.Database(buf);
17
47
  db.exec(PRAGMA_SQL);
@@ -104,9 +134,16 @@ export async function createSqlJsAdapter(filePath) {
104
134
  }
105
135
  }
106
136
 
137
+ let closed = false;
107
138
  function close() {
108
- if (dirty) persist();
109
- db.close();
139
+ if (closed) return;
140
+ closed = true;
141
+ try {
142
+ if (dirty) persist();
143
+ db.close();
144
+ } finally {
145
+ releaseLock();
146
+ }
110
147
  }
111
148
 
112
149
  return { driver: "sql.js", run, get, all, exec, transaction, close, raw: db };
@@ -1,8 +1,9 @@
1
1
  import { ensureDirs, DATA_FILE } from "./paths.js";
2
2
 
3
3
  // Use global to survive Next.js dev hot-reload (module state resets on reload)
4
- if (!global._dbAdapter) global._dbAdapter = { instance: null, initPromise: null, logged: false };
4
+ if (!global._dbAdapter) global._dbAdapter = { instance: null, initPromise: null, closePromise: null, logged: false };
5
5
  const state = global._dbAdapter;
6
+ if (!("closePromise" in state)) state.closePromise = null;
6
7
 
7
8
  async function tryBunSqlite() {
8
9
  // Bun runtime only — built-in, no install needed
@@ -89,6 +90,21 @@ export async function getAdapter() {
89
90
  return state.initPromise;
90
91
  }
91
92
 
93
+ export async function closeAdapter() {
94
+ if (state.closePromise) return state.closePromise;
95
+ state.closePromise = (async () => {
96
+ try {
97
+ const adapter = state.instance || (state.initPromise ? await state.initPromise : null);
98
+ await adapter?.close?.();
99
+ } finally {
100
+ state.instance = null;
101
+ state.initPromise = null;
102
+ state.closePromise = null;
103
+ }
104
+ })();
105
+ return state.closePromise;
106
+ }
107
+
92
108
  export function getAdapterSync() {
93
109
  if (!state.instance) throw new Error("[DB] adapter not initialized — await getAdapter() first");
94
110
  return state.instance;
@@ -43,7 +43,7 @@ export {
43
43
  // API keys
44
44
  export {
45
45
  getApiKeys, getApiKeyById, createApiKey, updateApiKey, deleteApiKey, validateApiKey,
46
- checkApiKeyBudget,
46
+ checkApiKeyBudget, admitApiKeyRequest, rotateApiKey, maskApiKey,
47
47
  } from "./repos/apiKeysRepo.js";
48
48
 
49
49
  // Combos
@@ -1,24 +1,41 @@
1
1
  import { v4 as uuidv4 } from "uuid";
2
2
  import { getAdapter } from "../driver.js";
3
3
 
4
- function rowToKey(row) {
4
+ const activeBudgetKeys = new Set();
5
+ const rateWindows = new Map();
6
+
7
+ function parseAllowedModels(value) {
8
+ if (Array.isArray(value)) return value;
9
+ if (!value) return [];
10
+ try { return JSON.parse(value); } catch { return []; }
11
+ }
12
+
13
+ export function maskApiKey(key) {
14
+ if (!key) return null;
15
+ return key.length <= 12 ? `${key.slice(0, 4)}…` : `${key.slice(0, 8)}…${key.slice(-4)}`;
16
+ }
17
+
18
+ function rowToKey(row, includeSecret = false) {
5
19
  if (!row) return null;
6
20
  return {
7
21
  id: row.id,
8
- key: row.key,
22
+ key: includeSecret ? row.key : undefined,
23
+ maskedKey: maskApiKey(row.key),
9
24
  name: row.name,
10
25
  machineId: row.machineId,
11
26
  isActive: row.isActive === 1 || row.isActive === true,
12
27
  createdAt: row.createdAt,
13
28
  budgetDaily: row.budgetDaily || 0,
14
29
  budgetMonthly: row.budgetMonthly || 0,
30
+ requestsPerMinute: row.requestsPerMinute || 0,
31
+ allowedModels: parseAllowedModels(row.allowedModels),
15
32
  };
16
33
  }
17
34
 
18
- export async function getApiKeys() {
35
+ export async function getApiKeys(includeSecrets = false) {
19
36
  const db = await getAdapter();
20
37
  const rows = db.all(`SELECT * FROM apiKeys ORDER BY createdAt ASC`);
21
- return rows.map(rowToKey);
38
+ return rows.map((row) => rowToKey(row, includeSecrets));
22
39
  }
23
40
 
24
41
  export async function getApiKeyById(id) {
@@ -53,17 +70,62 @@ export async function updateApiKey(id, data) {
53
70
  db.transaction(() => {
54
71
  const row = db.get(`SELECT * FROM apiKeys WHERE id = ?`, [id]);
55
72
  if (!row) return;
56
- const merged = { ...rowToKey(row), ...data };
73
+ const merged = { ...rowToKey(row, true), ...data };
57
74
  db.run(
58
- `UPDATE apiKeys SET key = ?, name = ?, machineId = ?, isActive = ?, budgetDaily = ?, budgetMonthly = ? WHERE id = ?`,
75
+ `UPDATE apiKeys SET key = ?, name = ?, machineId = ?, isActive = ?, budgetDaily = ?, budgetMonthly = ?, requestsPerMinute = ?, allowedModels = ? WHERE id = ?`,
59
76
  [merged.key, merged.name, merged.machineId, merged.isActive ? 1 : 0,
60
- Number(merged.budgetDaily) || 0, Number(merged.budgetMonthly) || 0, id]
77
+ Number(merged.budgetDaily) || 0, Number(merged.budgetMonthly) || 0,
78
+ Number(merged.requestsPerMinute) || 0, JSON.stringify(merged.allowedModels || []), id]
61
79
  );
62
80
  result = merged;
63
81
  });
64
82
  return result;
65
83
  }
66
84
 
85
+ export async function rotateApiKey(id) {
86
+ const db = await getAdapter();
87
+ const row = db.get(`SELECT * FROM apiKeys WHERE id = ?`, [id]);
88
+ if (!row) return null;
89
+ const { generateApiKeyWithMachine } = await import("@/shared/utils/apiKey");
90
+ const key = generateApiKeyWithMachine(row.machineId).key;
91
+ db.run(`UPDATE apiKeys SET key = ? WHERE id = ?`, [key, id]);
92
+ return { ...rowToKey({ ...row, key }), key };
93
+ }
94
+
95
+ export async function admitApiKeyRequest(key, model) {
96
+ const db = await getAdapter();
97
+ const row = db.get(
98
+ `SELECT budgetDaily, budgetMonthly, requestsPerMinute, allowedModels FROM apiKeys WHERE key = ?`,
99
+ [key]
100
+ );
101
+ if (!row) return { allowed: true, release() {} };
102
+
103
+ const allowedModels = parseAllowedModels(row.allowedModels);
104
+ if (allowedModels.length > 0 && !allowedModels.includes(model)) {
105
+ return { allowed: false, status: 403, reason: `Model ${model} is not allowed for this API key` };
106
+ }
107
+
108
+ const rpm = Number(row.requestsPerMinute) || 0;
109
+ if (rpm > 0) {
110
+ const now = Date.now();
111
+ const window = (rateWindows.get(key) || []).filter((timestamp) => now - timestamp < 60_000);
112
+ if (window.length >= rpm) {
113
+ const retryAfter = Math.max(1, Math.ceil((60_000 - (now - window[0])) / 1000));
114
+ rateWindows.set(key, window);
115
+ return { allowed: false, status: 429, retryAfter, reason: "API key rate limit exceeded" };
116
+ }
117
+ window.push(now);
118
+ rateWindows.set(key, window);
119
+ }
120
+
121
+ const budgeted = Number(row.budgetDaily) > 0 || Number(row.budgetMonthly) > 0;
122
+ if (budgeted && activeBudgetKeys.has(key)) {
123
+ return { allowed: false, status: 429, retryAfter: 1, reason: "A budgeted request is already in progress" };
124
+ }
125
+ if (budgeted) activeBudgetKeys.add(key);
126
+ return { allowed: true, release: () => activeBudgetKeys.delete(key) };
127
+ }
128
+
67
129
  export async function deleteApiKey(id) {
68
130
  const db = await getAdapter();
69
131
  const res = db.run(`DELETE FROM apiKeys WHERE id = ?`, [id]);
@@ -118,9 +180,7 @@ export async function checkApiKeyBudget(key) {
118
180
  spentMonthly = r?.total || 0;
119
181
  }
120
182
  } catch (e) {
121
- // On read failure, fail open (don't block legit traffic) but log
122
- console.error("[apiKeysRepo] budget check failed:", e.message);
123
- return { allowed: true };
183
+ return { allowed: false, error: true, reason: "Budget accounting unavailable" };
124
184
  }
125
185
 
126
186
  if (budgetDaily > 0 && spentDaily >= budgetDaily) {
@@ -239,21 +239,11 @@ export async function getRequestDetailById(id) {
239
239
  return row ? parseJson(row.data, null) : null;
240
240
  }
241
241
 
242
- const _shutdownHandler = async () => {
242
+ export async function flushRequestDetails() {
243
243
  if (flushTimer) { clearTimeout(flushTimer); flushTimer = null; }
244
- if (writeBuffer.length > 0) await flushToDatabase();
245
- };
246
-
247
- function ensureShutdownHandler() {
248
- process.off("beforeExit", _shutdownHandler);
249
- process.off("SIGINT", _shutdownHandler);
250
- process.off("SIGTERM", _shutdownHandler);
251
- process.off("exit", _shutdownHandler);
252
-
253
- process.on("beforeExit", _shutdownHandler);
254
- process.on("SIGINT", _shutdownHandler);
255
- process.on("SIGTERM", _shutdownHandler);
256
- process.on("exit", _shutdownHandler);
244
+ while (isFlushing) await new Promise((resolve) => setTimeout(resolve, 10));
245
+ while (writeBuffer.length > 0) {
246
+ await flushToDatabase();
247
+ while (isFlushing) await new Promise((resolve) => setTimeout(resolve, 10));
248
+ }
257
249
  }
258
-
259
- ensureShutdownHandler();
@@ -202,10 +202,6 @@ export function trackPendingRequest(model, provider, connectionId, started, erro
202
202
  if (!started && error && provider) {
203
203
  lastErrorProvider.provider = provider.toLowerCase();
204
204
  lastErrorProvider.ts = Date.now();
205
- // Fire-and-forget alert (alerter respects alertEnabled setting + throttling)
206
- import("../../alerter.js")
207
- .then((m) => m.alertProviderDown(provider, `${provider} request failed`))
208
- .catch(() => {});
209
205
  }
210
206
 
211
207
  const t = new Date().toLocaleTimeString("en-US", { hour12: false, hour: "2-digit", minute: "2-digit", second: "2-digit" });
@@ -359,7 +355,7 @@ export async function getUsageStats(period = "all") {
359
355
  } catch {}
360
356
 
361
357
  let allApiKeys = [];
362
- try { allApiKeys = await getApiKeys(); } catch {}
358
+ try { allApiKeys = await getApiKeys(true); } catch {}
363
359
  const apiKeyMap = {};
364
360
  for (const k of allApiKeys) apiKeyMap[k.key] = { name: k.name, id: k.id, createdAt: k.createdAt };
365
361
 
@@ -82,6 +82,8 @@ export const TABLES = {
82
82
  // Per-key spending caps (USD). NULL/0 = unlimited.
83
83
  budgetDaily: "REAL DEFAULT 0",
84
84
  budgetMonthly: "REAL DEFAULT 0",
85
+ requestsPerMinute: "INTEGER DEFAULT 0",
86
+ allowedModels: "TEXT",
85
87
  },
86
88
  indexes: ["CREATE INDEX IF NOT EXISTS idx_ak_key ON apiKeys(key)"],
87
89
  },
@@ -15,7 +15,7 @@ export {
15
15
  listContextFiles, getEnabledContextFiles, getContextFile,
16
16
  createContextFile, createContextFilesBulk, updateContextFile, deleteContextFile,
17
17
  getApiKeys, getApiKeyById, createApiKey, updateApiKey, deleteApiKey, validateApiKey,
18
- checkApiKeyBudget,
18
+ checkApiKeyBudget, admitApiKeyRequest, rotateApiKey, maskApiKey,
19
19
  getCombos, getComboById, getComboByName,
20
20
  createCombo, updateCombo, deleteCombo,
21
21
  getModelAliases, setModelAlias, deleteModelAlias,
@@ -14,7 +14,7 @@ const STAGGER_MS = 4 * 1000; // gap between connections in a sweep
14
14
  const MIN_START_DELAY_MS = 15 * 1000; // let the server settle before first sweep
15
15
 
16
16
  if (!globalThis._quotaRefreshState) {
17
- globalThis._quotaRefreshState = { started: false, timer: null, running: false };
17
+ globalThis._quotaRefreshState = { started: false, startTimer: null, timer: null, running: false };
18
18
  }
19
19
  const state = globalThis._quotaRefreshState;
20
20
 
@@ -48,11 +48,21 @@ async function sweepOnce() {
48
48
  export function startQuotaRefreshLoop() {
49
49
  if (state.started) return;
50
50
  state.started = true;
51
- setTimeout(() => {
51
+ state.startTimer = setTimeout(() => {
52
+ state.startTimer = null;
52
53
  void sweepOnce();
53
54
  state.timer = setInterval(() => void sweepOnce(), REFRESH_INTERVAL_MS);
54
55
  if (state.timer.unref) state.timer.unref();
55
56
  }, MIN_START_DELAY_MS);
57
+ if (state.startTimer.unref) state.startTimer.unref();
58
+ }
59
+
60
+ export function stopQuotaRefreshLoop() {
61
+ if (state.startTimer) clearTimeout(state.startTimer);
62
+ if (state.timer) clearInterval(state.timer);
63
+ state.startTimer = null;
64
+ state.timer = null;
65
+ state.started = false;
56
66
  }
57
67
 
58
68
  /** Trigger an immediate one-off sweep (fire-and-forget). */
@@ -15,6 +15,9 @@ import {
15
15
  } from "@/lib/tunnel";
16
16
  import { getMitmStatus, startMitm, loadEncryptedPassword, initDbHooks, restoreToolDNS, removeAllDNSEntriesSync } from "@/mitm/manager";
17
17
  import { syncToJson as syncMitmAliasCache } from "@/lib/mitmAliasCache";
18
+ import { flushRequestDetails } from "@/lib/db/repos/requestDetailsRepo";
19
+ import { closeAdapter } from "@/lib/db/driver";
20
+ import { stopQuotaRefreshLoop } from "@/lib/usage/quotaRefresh";
18
21
 
19
22
  // Inject correct paths and DB hooks into manager.js (CJS) from ESM context
20
23
  (function bootstrapMitm() {
@@ -64,7 +67,13 @@ export async function initializeApp() {
64
67
  }
65
68
 
66
69
  if (!g.signalHandlersRegistered) {
67
- const cleanup = () => {
70
+ let shuttingDown = false;
71
+ const cleanup = async () => {
72
+ if (shuttingDown) return;
73
+ shuttingDown = true;
74
+ stopQuotaRefreshLoop();
75
+ try { await flushRequestDetails(); } catch (e) { console.error("[InitApp] request detail flush failed:", e); }
76
+ try { await closeAdapter(); } catch (e) { console.error("[InitApp] database close failed:", e); }
68
77
  try { removeAllDNSEntriesSync(); } catch { /* best effort */ }
69
78
  killCloudflared();
70
79
  process.exit();
@@ -108,7 +117,7 @@ async function autoStartMitm() {
108
117
  return;
109
118
  }
110
119
 
111
- const keys = await getApiKeys();
120
+ const keys = await getApiKeys(true);
112
121
  const activeKey = keys.find(k => k.isActive !== false);
113
122
 
114
123
  console.log("[InitApp] MITM was enabled, auto-starting...");
@@ -85,7 +85,10 @@ export async function handleChat(request, clientRawRequest = null) {
85
85
  const budget = await checkApiKeyBudget(apiKey);
86
86
  if (!budget.allowed) {
87
87
  log.warn("BUDGET", `Blocked: ${budget.reason}`);
88
- return errorResponse(HTTP_STATUS.PAYMENT_REQUIRED, budget.reason || "Budget exceeded");
88
+ return errorResponse(
89
+ budget.error ? HTTP_STATUS.SERVICE_UNAVAILABLE : HTTP_STATUS.PAYMENT_REQUIRED,
90
+ budget.reason || "Budget exceeded"
91
+ );
89
92
  }
90
93
  }
91
94
  }
@@ -95,57 +98,111 @@ export async function handleChat(request, clientRawRequest = null) {
95
98
  return errorResponse(HTTP_STATUS.BAD_REQUEST, "Missing model");
96
99
  }
97
100
 
98
- // ── Response cache: serve identical non-streaming requests instantly ──
99
- const { responseCache, isCacheableRequest } = await import("@/lib/responseCache.js");
100
- const cacheCheck = settings.responseCacheEnabled !== false ? isCacheableRequest(body, request.headers) : { cacheable: false, reason: "disabled" };
101
- let cacheKey = null;
102
- if (cacheCheck.cacheable) {
103
- cacheKey = responseCache.buildKey(body);
104
- const cached = cacheKey ? responseCache.get(cacheKey) : null;
105
- if (cached) {
106
- log.info("CACHE", `HIT ${modelStr} | age=${Math.round((Date.now() - cached.storedAt) / 1000)}s | hits=${cached.hits}`);
107
- return new Response(JSON.stringify(cached.body), {
108
- status: cached.status,
109
- headers: {
110
- "Content-Type": "application/json",
111
- "X-ZevAI-Cache": "HIT",
112
- "X-ZevAI-Cache-Age": String(Math.round((Date.now() - cached.storedAt) / 1000)),
113
- },
101
+ let admission = null;
102
+ if (apiKey) {
103
+ const { admitApiKeyRequest } = await import("@/lib/db/index.js");
104
+ admission = await admitApiKeyRequest(apiKey, modelStr);
105
+ if (!admission.allowed) {
106
+ const headers = admission.retryAfter ? { "Retry-After": String(admission.retryAfter) } : undefined;
107
+ return new Response(JSON.stringify({ error: { message: admission.reason } }), {
108
+ status: admission.status || 429,
109
+ headers: { "Content-Type": "application/json", ...headers },
114
110
  });
115
111
  }
116
- log.debug("CACHE", `MISS ${modelStr} (${cacheCheck.reason || "new"})`);
117
112
  }
113
+ const finishAdmission = (response) => releaseAdmissionOnResponse(response, admission?.release);
118
114
 
119
- // Bypass naming/warmup requests before combo rotation to avoid wasting rotation slots
120
- const userAgent = request?.headers?.get("user-agent") || "";
121
- const bypassResponse = handleBypassRequest(body, modelStr, userAgent, !!settings.ccFilterNaming);
122
- if (bypassResponse) return bypassResponse.response || bypassResponse;
123
-
124
- // Check if model is a combo (has multiple models with fallback)
125
- const comboModels = await getComboModels(modelStr);
126
- if (comboModels) {
127
- // Check for combo-specific strategy first, fallback to global
128
- const comboStrategies = settings.comboStrategies || {};
129
- const comboSpecificStrategy = comboStrategies[modelStr]?.fallbackStrategy;
130
- const comboStrategy = comboSpecificStrategy || settings.comboStrategy || "fallback";
131
-
132
- const comboStickyLimit = settings.comboStickyRoundRobinLimit;
133
- log.info("CHAT", `Combo "${modelStr}" with ${comboModels.length} models (strategy: ${comboStrategy}, sticky: ${comboStickyLimit})`);
134
- const comboResp = await handleComboChat({
135
- body,
136
- models: comboModels,
137
- handleSingleModel: (b, m) => handleSingleModelChat(b, m, clientRawRequest, request, apiKey),
138
- log,
139
- comboName: modelStr,
140
- comboStrategy,
141
- comboStickyLimit
142
- });
143
- return maybeCacheResponse(comboResp, cacheKey, modelStr);
115
+ try {
116
+ // ── Response cache: serve identical non-streaming requests instantly ──
117
+ const { responseCache, isCacheableRequest } = await import("@/lib/responseCache.js");
118
+ const cacheCheck = settings.responseCacheEnabled !== false ? isCacheableRequest(body, request.headers) : { cacheable: false, reason: "disabled" };
119
+ let cacheKey = null;
120
+ if (cacheCheck.cacheable) {
121
+ cacheKey = responseCache.buildKey(body);
122
+ const cached = cacheKey ? responseCache.get(cacheKey) : null;
123
+ if (cached) {
124
+ log.info("CACHE", `HIT ${modelStr} | age=${Math.round((Date.now() - cached.storedAt) / 1000)}s | hits=${cached.hits}`);
125
+ return finishAdmission(new Response(JSON.stringify(cached.body), {
126
+ status: cached.status,
127
+ headers: {
128
+ "Content-Type": "application/json",
129
+ "X-ZevAI-Cache": "HIT",
130
+ "X-ZevAI-Cache-Age": String(Math.round((Date.now() - cached.storedAt) / 1000)),
131
+ },
132
+ }));
133
+ }
134
+ log.debug("CACHE", `MISS ${modelStr} (${cacheCheck.reason || "new"})`);
135
+ }
136
+
137
+ // Bypass naming/warmup requests before combo rotation to avoid wasting rotation slots
138
+ const userAgent = request?.headers?.get("user-agent") || "";
139
+ const bypassResponse = handleBypassRequest(body, modelStr, userAgent, !!settings.ccFilterNaming);
140
+ if (bypassResponse) return finishAdmission(bypassResponse.response || bypassResponse);
141
+
142
+ // Check if model is a combo (has multiple models with fallback)
143
+ const comboModels = await getComboModels(modelStr);
144
+ if (comboModels) {
145
+ // Check for combo-specific strategy first, fallback to global
146
+ const comboStrategies = settings.comboStrategies || {};
147
+ const comboSpecificStrategy = comboStrategies[modelStr]?.fallbackStrategy;
148
+ const comboStrategy = comboSpecificStrategy || settings.comboStrategy || "fallback";
149
+
150
+ const comboStickyLimit = settings.comboStickyRoundRobinLimit;
151
+ log.info("CHAT", `Combo "${modelStr}" with ${comboModels.length} models (strategy: ${comboStrategy}, sticky: ${comboStickyLimit})`);
152
+ const comboResp = await handleComboChat({
153
+ body,
154
+ models: comboModels,
155
+ handleSingleModel: (b, m) => handleSingleModelChat(b, m, clientRawRequest, request, apiKey),
156
+ log,
157
+ comboName: modelStr,
158
+ comboStrategy,
159
+ comboStickyLimit
160
+ });
161
+ return finishAdmission(await maybeCacheResponse(comboResp, cacheKey, modelStr));
162
+ }
163
+
164
+ // Single model request
165
+ const singleResp = await handleSingleModelChat(body, modelStr, clientRawRequest, request, apiKey);
166
+ return finishAdmission(await maybeCacheResponse(singleResp, cacheKey, modelStr));
167
+ } catch (error) {
168
+ admission?.release?.();
169
+ throw error;
170
+ }
171
+ }
172
+
173
+ export function releaseAdmissionOnResponse(response, release) {
174
+ if (!release) return response;
175
+ if (!response?.body || !response.headers.get("content-type")?.includes("text/event-stream")) {
176
+ release();
177
+ return response;
144
178
  }
145
179
 
146
- // Single model request
147
- const singleResp = await handleSingleModelChat(body, modelStr, clientRawRequest, request, apiKey);
148
- return maybeCacheResponse(singleResp, cacheKey, modelStr);
180
+ const reader = response.body.getReader();
181
+ const body = new ReadableStream({
182
+ async pull(controller) {
183
+ try {
184
+ const { done, value } = await reader.read();
185
+ if (done) {
186
+ release();
187
+ controller.close();
188
+ } else {
189
+ controller.enqueue(value);
190
+ }
191
+ } catch (error) {
192
+ release();
193
+ controller.error(error);
194
+ }
195
+ },
196
+ async cancel(reason) {
197
+ release();
198
+ await reader.cancel(reason);
199
+ },
200
+ });
201
+ return new Response(body, {
202
+ status: response.status,
203
+ statusText: response.statusText,
204
+ headers: response.headers,
205
+ });
149
206
  }
150
207
 
151
208
  /**
@@ -346,6 +403,7 @@ async function handleSingleModelChat(body, modelStr, clientRawRequest = null, re
346
403
  },
347
404
  contextInjectionEnabled: !!chatSettings.contextInjectionEnabled,
348
405
  providerThinking,
406
+ signal: request?.signal,
349
407
  // Detect source format by endpoint + body
350
408
  sourceFormatOverride: request?.url ? detectFormatByEndpoint(new URL(request.url).pathname, body) : null,
351
409
  onCredentialsRefreshed: async (newCreds) => {
@@ -341,6 +341,16 @@ export async function markAccountUnavailable(connectionId, status, errorText, pr
341
341
  const lockKey = Object.keys(lockUpdate)[0];
342
342
  const connName = conn?.displayName || conn?.name || conn?.email || connectionId.slice(0, 8);
343
343
  log.warn("AUTH", `${connName} locked ${lockKey} for ${Math.round(cooldownMs / 1000)}s [${status}]`);
344
+ if (provider) {
345
+ import("@/lib/alerter.js")
346
+ .then((alerts) => {
347
+ alerts.alertProviderDown(provider, `${connName}: ${reason}`);
348
+ if (status === 429 || reason.toLowerCase().includes("quota")) {
349
+ alerts.alertQuotaExhausted(provider, connName);
350
+ }
351
+ })
352
+ .catch(() => {});
353
+ }
344
354
 
345
355
  if (provider && status && reason) {
346
356
  console.error(`\u274c ${provider} [${status}]: ${reason}`);