zevairouter 1.0.142 → 1.0.143

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 (634) 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 +11 -11
  3. package/cli/app/.next-cli-build/build-manifest.json +3 -3
  4. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js +1 -1
  5. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js.nft.json +1 -1
  6. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page_client-reference-manifest.js +1 -1
  7. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +1 -1
  8. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  9. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  10. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +1 -1
  11. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  12. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  13. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
  14. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  15. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  16. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +1 -1
  17. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  18. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  19. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +1 -1
  20. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  21. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  22. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js +1 -1
  23. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js.nft.json +1 -1
  24. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page_client-reference-manifest.js +1 -1
  25. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +1 -1
  26. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  27. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  28. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +1 -1
  29. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  30. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  31. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +1 -1
  32. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  33. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  34. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +1 -1
  35. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  36. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  37. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +1 -1
  38. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  39. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  40. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +1 -1
  41. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  42. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  43. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +1 -1
  44. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  45. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  46. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js +1 -1
  47. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js.nft.json +1 -1
  48. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
  49. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +1 -1
  50. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  51. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  52. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +1 -1
  53. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  54. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  55. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +1 -1
  56. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  57. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  58. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +1 -1
  59. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  60. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  61. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +1 -1
  62. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  63. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  64. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +1 -1
  65. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
  66. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
  67. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +1 -1
  68. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  69. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  70. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page.js +1 -1
  71. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page.js.nft.json +1 -1
  72. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page_client-reference-manifest.js +1 -1
  73. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +1 -1
  74. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
  75. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  76. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +1 -1
  77. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  78. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  79. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  80. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  81. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  82. package/cli/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  83. package/cli/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  84. package/cli/app/.next-cli-build/server/app/_global-error.html +1 -1
  85. package/cli/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  86. package/cli/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  87. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  88. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  89. package/cli/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  90. package/cli/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  91. package/cli/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  92. package/cli/app/.next-cli-build/server/app/_not-found/page.js +2 -2
  93. package/cli/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  94. package/cli/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  95. package/cli/app/.next-cli-build/server/app/_not-found.html +1 -1
  96. package/cli/app/.next-cli-build/server/app/_not-found.rsc +5 -5
  97. package/cli/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +5 -5
  98. package/cli/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  99. package/cli/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +5 -5
  100. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  101. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  102. package/cli/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +3 -3
  103. package/cli/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  104. package/cli/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  105. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  106. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  107. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  108. package/cli/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  109. package/cli/app/.next-cli-build/server/app/api/cache/stats/route.js.nft.json +1 -1
  110. package/cli/app/.next-cli-build/server/app/api/changelog/route.js.nft.json +1 -1
  111. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  112. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  113. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  114. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  115. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  116. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js.nft.json +1 -1
  117. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  118. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  119. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  120. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  121. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  122. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  123. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  124. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  125. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  126. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  127. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  128. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  129. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  130. package/cli/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  131. package/cli/app/.next-cli-build/server/app/api/context/[id]/route.js.nft.json +1 -1
  132. package/cli/app/.next-cli-build/server/app/api/context/bulk/route.js.nft.json +1 -1
  133. package/cli/app/.next-cli-build/server/app/api/context/route.js.nft.json +1 -1
  134. package/cli/app/.next-cli-build/server/app/api/dashboard/chat/completions/route.js.nft.json +1 -1
  135. package/cli/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
  136. package/cli/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
  137. package/cli/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
  138. package/cli/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
  139. package/cli/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
  140. package/cli/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
  141. package/cli/app/.next-cli-build/server/app/api/health/ready/route.js.nft.json +1 -1
  142. package/cli/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  143. package/cli/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  144. package/cli/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js.nft.json +1 -1
  145. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  146. package/cli/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  147. package/cli/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  148. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  149. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  150. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  151. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  152. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  153. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  154. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  155. package/cli/app/.next-cli-build/server/app/api/metrics/route.js.nft.json +1 -1
  156. package/cli/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  157. package/cli/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  158. package/cli/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  159. package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  160. package/cli/app/.next-cli-build/server/app/api/models/route.js +1 -1
  161. package/cli/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  162. package/cli/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  163. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  164. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  165. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  166. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js.nft.json +1 -1
  167. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js.nft.json +1 -1
  168. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js.nft.json +1 -1
  169. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  170. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  171. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route.js.nft.json +1 -1
  172. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/latest/route.js.nft.json +1 -1
  173. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/route.js.nft.json +1 -1
  174. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  175. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  176. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js.nft.json +1 -1
  177. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js.nft.json +1 -1
  178. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js.nft.json +1 -1
  179. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js.nft.json +1 -1
  180. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js.nft.json +1 -1
  181. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  182. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  183. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route.js.nft.json +1 -1
  184. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route.js.nft.json +1 -1
  185. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js.nft.json +1 -1
  186. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route.js.nft.json +1 -1
  187. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route.js.nft.json +1 -1
  188. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  189. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  190. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  191. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  192. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  193. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  194. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  195. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  196. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js.nft.json +1 -1
  197. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js.nft.json +1 -1
  198. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js.nft.json +1 -1
  199. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  200. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  201. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  202. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  203. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  204. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js.nft.json +1 -1
  205. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js.nft.json +1 -1
  206. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js.nft.json +1 -1
  207. package/cli/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  208. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  209. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  210. package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  211. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  212. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  213. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  214. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  215. package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route.js.nft.json +1 -1
  216. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  217. package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  218. package/cli/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  219. package/cli/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  220. package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  221. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  222. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  223. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  224. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  225. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  226. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  227. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  228. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  229. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  230. package/cli/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
  231. package/cli/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
  232. package/cli/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
  233. package/cli/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
  234. package/cli/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
  235. package/cli/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
  236. package/cli/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
  237. package/cli/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  238. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  239. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  240. package/cli/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  241. package/cli/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  242. package/cli/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  243. package/cli/app/.next-cli-build/server/app/api/terminal/auth/setup/route.js.nft.json +1 -1
  244. package/cli/app/.next-cli-build/server/app/api/terminal/auth/status/route.js.nft.json +1 -1
  245. package/cli/app/.next-cli-build/server/app/api/terminal/auth/unlock/route.js.nft.json +1 -1
  246. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/input/route.js.nft.json +1 -1
  247. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/resize/route.js.nft.json +1 -1
  248. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/route.js.nft.json +1 -1
  249. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/stream/route.js.nft.json +1 -1
  250. package/cli/app/.next-cli-build/server/app/api/terminal/session/route.js.nft.json +1 -1
  251. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  252. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  253. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
  254. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  255. package/cli/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  256. package/cli/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  257. package/cli/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  258. package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  259. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  260. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  261. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  262. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  263. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  264. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  265. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  266. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  267. package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route.js.nft.json +1 -1
  268. package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  269. package/cli/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  270. package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  271. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  272. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  273. package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  274. package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  275. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  276. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  277. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  278. package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  279. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  280. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  281. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  282. package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  283. package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  284. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  285. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  286. package/cli/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  287. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  288. package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  289. package/cli/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  290. package/cli/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  291. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  292. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  293. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  294. package/cli/app/.next-cli-build/server/app/api/version/route.js +1 -1
  295. package/cli/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  296. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  297. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  298. package/cli/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  299. package/cli/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  300. package/cli/app/.next-cli-build/server/app/callback/page.js +1 -1
  301. package/cli/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  302. package/cli/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  303. package/cli/app/.next-cli-build/server/app/callback.html +1 -1
  304. package/cli/app/.next-cli-build/server/app/callback.rsc +5 -5
  305. package/cli/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +5 -5
  306. package/cli/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  307. package/cli/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +5 -5
  308. package/cli/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +3 -3
  309. package/cli/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  310. package/cli/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  311. package/cli/app/.next-cli-build/server/app/dashboard/automation.html +1 -1
  312. package/cli/app/.next-cli-build/server/app/dashboard/automation.rsc +7 -7
  313. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation/__PAGE__.segment.rsc +2 -2
  314. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation.segment.rsc +1 -1
  315. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  316. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  317. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_full.segment.rsc +7 -7
  318. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_head.segment.rsc +1 -1
  319. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_index.segment.rsc +5 -5
  320. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_tree.segment.rsc +3 -3
  321. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  322. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +7 -7
  323. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  324. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  325. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  326. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  327. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +7 -7
  328. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  329. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +5 -5
  330. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +3 -3
  331. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  332. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +7 -7
  333. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  334. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  335. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  336. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  337. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +7 -7
  338. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  339. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +5 -5
  340. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +3 -3
  341. package/cli/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  342. package/cli/app/.next-cli-build/server/app/dashboard/combos.rsc +7 -7
  343. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  344. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  345. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  346. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  347. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +7 -7
  348. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  349. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +5 -5
  350. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +3 -3
  351. package/cli/app/.next-cli-build/server/app/dashboard/context.html +1 -1
  352. package/cli/app/.next-cli-build/server/app/dashboard/context.rsc +7 -7
  353. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context/__PAGE__.segment.rsc +2 -2
  354. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context.segment.rsc +1 -1
  355. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  356. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  357. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_full.segment.rsc +7 -7
  358. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_head.segment.rsc +1 -1
  359. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_index.segment.rsc +5 -5
  360. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_tree.segment.rsc +3 -3
  361. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  362. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.rsc +7 -7
  363. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  364. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  365. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  366. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  367. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +7 -7
  368. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  369. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +5 -5
  370. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +3 -3
  371. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  372. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +7 -7
  373. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  374. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  375. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  376. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  377. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  378. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +7 -7
  379. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  380. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +5 -5
  381. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +3 -3
  382. package/cli/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  383. package/cli/app/.next-cli-build/server/app/dashboard/mitm.rsc +7 -7
  384. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  385. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  386. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  387. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  388. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +7 -7
  389. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  390. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +5 -5
  391. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +3 -3
  392. package/cli/app/.next-cli-build/server/app/dashboard/playground.html +1 -1
  393. package/cli/app/.next-cli-build/server/app/dashboard/playground.rsc +7 -7
  394. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard/playground/__PAGE__.segment.rsc +2 -2
  395. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard/playground.segment.rsc +1 -1
  396. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  397. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  398. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_full.segment.rsc +7 -7
  399. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_head.segment.rsc +1 -1
  400. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_index.segment.rsc +5 -5
  401. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_tree.segment.rsc +3 -3
  402. package/cli/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  403. package/cli/app/.next-cli-build/server/app/dashboard/profile.rsc +7 -7
  404. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  405. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  406. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  407. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  408. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +7 -7
  409. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  410. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +5 -5
  411. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +3 -3
  412. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  413. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.rsc +7 -7
  414. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  415. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  416. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  417. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  418. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  419. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +7 -7
  420. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  421. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +5 -5
  422. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +3 -3
  423. package/cli/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  424. package/cli/app/.next-cli-build/server/app/dashboard/providers.rsc +7 -7
  425. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  426. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  427. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  428. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  429. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +7 -7
  430. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  431. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +5 -5
  432. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +3 -3
  433. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  434. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +7 -7
  435. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  436. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  437. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  438. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  439. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +7 -7
  440. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  441. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +5 -5
  442. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +3 -3
  443. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
  444. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +7 -7
  445. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +2 -2
  446. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe.segment.rsc +1 -1
  447. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  448. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  449. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +7 -7
  450. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_head.segment.rsc +1 -1
  451. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_index.segment.rsc +5 -5
  452. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +3 -3
  453. package/cli/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
  454. package/cli/app/.next-cli-build/server/app/dashboard/quota.rsc +8 -8
  455. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  456. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  457. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  458. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  459. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +8 -8
  460. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  461. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +5 -5
  462. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +3 -3
  463. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
  464. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  465. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  466. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  467. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +5 -5
  468. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +5 -5
  469. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  470. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +5 -5
  471. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +3 -3
  472. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  473. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  474. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  475. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  476. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  477. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.rsc +7 -7
  478. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +2 -2
  479. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +1 -1
  480. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  481. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  482. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +7 -7
  483. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +1 -1
  484. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +5 -5
  485. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +3 -3
  486. package/cli/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  487. package/cli/app/.next-cli-build/server/app/dashboard/translator.rsc +7 -7
  488. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  489. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  490. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  491. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  492. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +7 -7
  493. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  494. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +5 -5
  495. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +3 -3
  496. package/cli/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  497. package/cli/app/.next-cli-build/server/app/dashboard/usage.rsc +7 -7
  498. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  499. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  500. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  501. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  502. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +7 -7
  503. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  504. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +5 -5
  505. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +3 -3
  506. package/cli/app/.next-cli-build/server/app/dashboard.html +1 -1
  507. package/cli/app/.next-cli-build/server/app/dashboard.rsc +7 -7
  508. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  509. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  510. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  511. package/cli/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +7 -7
  512. package/cli/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  513. package/cli/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +5 -5
  514. package/cli/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +3 -3
  515. package/cli/app/.next-cli-build/server/app/index.html +1 -1
  516. package/cli/app/.next-cli-build/server/app/index.rsc +5 -5
  517. package/cli/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  518. package/cli/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +5 -5
  519. package/cli/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  520. package/cli/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +5 -5
  521. package/cli/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +3 -3
  522. package/cli/app/.next-cli-build/server/app/landing/page.js +1 -1
  523. package/cli/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  524. package/cli/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  525. package/cli/app/.next-cli-build/server/app/landing.html +1 -1
  526. package/cli/app/.next-cli-build/server/app/landing.rsc +6 -6
  527. package/cli/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +6 -6
  528. package/cli/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  529. package/cli/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +5 -5
  530. package/cli/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +3 -3
  531. package/cli/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
  532. package/cli/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  533. package/cli/app/.next-cli-build/server/app/login/page.js +1 -1
  534. package/cli/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  535. package/cli/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  536. package/cli/app/.next-cli-build/server/app/login.html +1 -1
  537. package/cli/app/.next-cli-build/server/app/login.rsc +6 -6
  538. package/cli/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +6 -6
  539. package/cli/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  540. package/cli/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +5 -5
  541. package/cli/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +3 -3
  542. package/cli/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  543. package/cli/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  544. package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  545. package/cli/app/.next-cli-build/server/app/page.js +2 -2
  546. package/cli/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  547. package/cli/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  548. package/cli/app/.next-cli-build/server/app-paths-manifest.json +11 -11
  549. package/cli/app/.next-cli-build/server/chunks/3155.js +1 -1
  550. package/cli/app/.next-cli-build/server/chunks/412.js +2 -2
  551. package/cli/app/.next-cli-build/server/chunks/4746.js +1 -1
  552. package/cli/app/.next-cli-build/server/chunks/5189.js +66 -0
  553. package/cli/app/.next-cli-build/server/chunks/5307.js +1 -1
  554. package/cli/app/.next-cli-build/server/chunks/8242.js +2 -2
  555. package/cli/app/.next-cli-build/server/chunks/8306.js +1 -1
  556. package/cli/app/.next-cli-build/server/chunks/9071.js +1 -0
  557. package/cli/app/.next-cli-build/server/chunks/9621.js +1 -0
  558. package/cli/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  559. package/cli/app/.next-cli-build/server/pages/404.html +1 -1
  560. package/cli/app/.next-cli-build/server/pages/500.html +1 -1
  561. package/cli/app/.next-cli-build/static/chunks/3745-7e7bb6aaf8a63e86.js +1 -0
  562. package/cli/app/.next-cli-build/static/chunks/523-078802482e95c757.js +3 -0
  563. package/cli/app/.next-cli-build/static/chunks/5497-bdcd991813da7f3d.js +7 -0
  564. package/cli/app/.next-cli-build/static/chunks/620-d349e71d9ce49f85.js +1 -0
  565. package/cli/app/.next-cli-build/static/chunks/9802-1969f16a588b05f6.js +66 -0
  566. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/automation/{page-d55c4e337a98302a.js → page-bf069c081a5ae279.js} +1 -1
  567. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/page-b9e61d29da8941f7.js +1 -0
  568. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/{page-2361fd82cdac58f9.js → page-f16310d2b403445e.js} +1 -1
  569. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/{page-0186f028c4f68aa9.js → page-27b7575d0d2d59fa.js} +1 -1
  570. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/{page-81c25ef219dfc38b.js → page-92aed83e0b2aba47.js} +1 -1
  571. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/{page-b055dfe6fb0c0172.js → page-eb2a18df1f1f3808.js} +1 -1
  572. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/context/{page-fb93d56bfaccdc19.js → page-86fa4f45899539b7.js} +1 -1
  573. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-9762b5d12b9faca6.js +1 -0
  574. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-eb43268c6d46f931.js → page-a35d16eda369d68e.js} +1 -1
  575. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/{page-7b6e1ef525e44bd1.js → page-5317928a78e74942.js} +1 -1
  576. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/{page-85e7b6f5b4af1dd4.js → page-e7989e6397c3cd28.js} +1 -1
  577. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/{page-29893b095259085d.js → page-72eb287b8ed78360.js} +1 -1
  578. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/{page-c03ae64868d6bc4d.js → page-81eaa9fe75830559.js} +1 -1
  579. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-93b75c738ae813fe.js +1 -0
  580. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/playground/page-35b97573fd86a9fb.js +1 -0
  581. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/{page-3daabb58a77d3b0d.js → page-ceb414eddc31fbfc.js} +1 -1
  582. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/{page-d2cd046c2bea1692.js → page-4f6f0b7c3b3da037.js} +1 -1
  583. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/{page-c38381db33d5aafc.js → page-8692640e1920d5fd.js} +1 -1
  584. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-2cedde97aaf3c729.js +1 -0
  585. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/proxy-pools/{page-eb11e852f7a314c9.js → page-9e3ac0e62a8bba94.js} +1 -1
  586. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/pxpipe/{page-f1c47c7778f23895.js → page-95719c850f15a0cd.js} +1 -1
  587. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/{page-ac445dab96ac6223.js → page-6050ac2547c62b54.js} +1 -1
  588. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/terminal/{page-a3689f5a124bc27a.js → page-e08897cf6cbe1b49.js} +3 -3
  589. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/{page-26d372726ae6df38.js → page-8b89eccb0440a492.js} +1 -1
  590. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/{page-a408f0954e4812ab.js → page-7027d915ac07c723.js} +1 -1
  591. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/{page-2de7b12af94b8721.js → page-bc3ada97fab644b3.js} +1 -1
  592. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/{layout-2ae824d2d09c81ea.js → layout-59c5060c7f023ab8.js} +1 -1
  593. package/cli/app/.next-cli-build/static/chunks/app/landing/page-06b42dda19642072.js +1 -0
  594. package/cli/app/.next-cli-build/static/chunks/app/layout-f01c49fcec50ff21.js +1 -0
  595. package/cli/app/.next-cli-build/static/chunks/app/login/{page-b5822dd005b1f5c2.js → page-9ea3f794879db097.js} +1 -1
  596. package/cli/app/.next-cli-build/static/chunks/{webpack-948b910ed7afd0b8.js → webpack-99944d59834ca8f9.js} +1 -1
  597. package/cli/app/.next-cli-build/static/css/{f0a349c70ab9fca8.css → 081a0afca5a9bd20.css} +1 -1
  598. package/cli/app/.next-cli-build/static/css/0f044621c3f6b6c6.css +1 -0
  599. package/cli/app/package.json +1 -1
  600. package/cli/package.json +1 -1
  601. package/package.json +1 -1
  602. package/src/app/(dashboard)/dashboard/endpoint/EndpointPageClient.js +80 -55
  603. package/src/app/(dashboard)/dashboard/providers/page.js +140 -58
  604. package/src/app/(dashboard)/dashboard/usage/components/OverviewCards.js +72 -25
  605. package/src/app/(dashboard)/dashboard/usage/components/ProviderTopology.js +39 -28
  606. package/src/app/(dashboard)/dashboard/usage/components/UsageChart.js +27 -14
  607. package/src/app/(dashboard)/dashboard/usage/page.js +1 -1
  608. package/src/app/globals.css +59 -48
  609. package/src/app/landing/components/HeroSection.js +31 -6
  610. package/src/app/landing/components/Navigation.js +14 -9
  611. package/src/app/layout.js +0 -1
  612. package/src/shared/components/Button.js +3 -3
  613. package/src/shared/components/Header.js +21 -17
  614. package/src/shared/components/SegmentedControl.js +2 -2
  615. package/src/shared/components/Sidebar.js +52 -69
  616. package/src/shared/components/UsageStats.js +14 -7
  617. package/cli/app/.next-cli-build/server/chunks/4491.js +0 -1
  618. package/cli/app/.next-cli-build/server/chunks/6269.js +0 -1
  619. package/cli/app/.next-cli-build/server/chunks/9476.js +0 -66
  620. package/cli/app/.next-cli-build/static/chunks/4343-ccad00872974a61b.js +0 -66
  621. package/cli/app/.next-cli-build/static/chunks/523-dd1081e3c6074114.js +0 -3
  622. package/cli/app/.next-cli-build/static/chunks/5242-bb1a1a7ec3bfb62f.js +0 -1
  623. package/cli/app/.next-cli-build/static/chunks/5497-471618863a988f25.js +0 -7
  624. package/cli/app/.next-cli-build/static/chunks/85-527f8960e00da0e4.js +0 -1
  625. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/page-fa9d3452d69f2fc7.js +0 -1
  626. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-09e6213a0742752b.js +0 -1
  627. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-fd2453044462eb4f.js +0 -1
  628. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/playground/page-13833a8f417b8d7e.js +0 -1
  629. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-5ab697596491a658.js +0 -1
  630. package/cli/app/.next-cli-build/static/chunks/app/landing/page-a5bcf36367dce737.js +0 -1
  631. package/cli/app/.next-cli-build/static/chunks/app/layout-2aaca42ecdf3a056.js +0 -1
  632. package/cli/app/.next-cli-build/static/css/62b104778c7fb066.css +0 -1
  633. /package/cli/app/.next-cli-build/static/{v3XjbfP9HOIoFNp8g293E → wIIWddjvOxdnEAnkATMEo}/_buildManifest.js +0 -0
  634. /package/cli/app/.next-cli-build/static/{v3XjbfP9HOIoFNp8g293E → wIIWddjvOxdnEAnkATMEo}/_ssgManifest.js +0 -0
@@ -833,14 +833,21 @@ export default function APIPageClient({ machineId }) {
833
833
  return (
834
834
  <div className="flex flex-col gap-6 lg:gap-7">
835
835
  {/* Endpoint Card */}
836
- <Card>
837
- <h2 className="text-lg font-semibold mb-4 flex items-center gap-2">
838
- <span className="material-symbols-outlined text-primary">api</span>
839
- API Endpoint
840
- </h2>
836
+ <Card padding="none">
837
+ <div className="flex items-center gap-3 rounded-t-[13px] border-b border-border-subtle bg-linear-to-r from-primary/[0.07] via-primary/[0.025] to-transparent px-4 py-4 sm:px-5">
838
+ <span className="material-symbols-outlined flex size-11 shrink-0 items-center justify-center rounded-xl bg-primary/12 text-[22px] text-primary ring-1 ring-primary/15">
839
+ terminal
840
+ </span>
841
+ <div>
842
+ <h2 className="text-lg font-semibold leading-tight">API Endpoint</h2>
843
+ <p className="mt-0.5 text-xs text-text-muted">Choose how local and remote clients connect to Zevai Router.</p>
844
+ </div>
845
+ </div>
846
+
847
+ <div className="p-4 sm:p-5">
841
848
 
842
849
  {/* Endpoint rows */}
843
- <div className="flex flex-col gap-2">
850
+ <div className="flex flex-col gap-3">
844
851
  {/* Local */}
845
852
  <EndpointRow
846
853
  label="Local"
@@ -850,13 +857,13 @@ export default function APIPageClient({ machineId }) {
850
857
  onCopy={copy}
851
858
  />
852
859
  {/* Cloudflare Tunnel */}
853
- <div className="flex items-center gap-2">
854
- <span className={`text-xs font-mono px-1.5 py-0.5 rounded shrink-0 min-w-[88px] text-center ${
860
+ <div className="grid min-w-0 grid-cols-[minmax(0,1fr)_auto_auto] items-center gap-2.5 rounded-xl border border-border-subtle bg-bg/55 p-3 transition-colors hover:border-primary/20 sm:flex">
861
+ <span className={`col-span-full inline-flex min-h-8 w-full shrink-0 items-center justify-center rounded-lg px-2.5 text-[11px] font-semibold uppercase tracking-[0.08em] sm:w-[96px] ${
855
862
  tunnelEnabled ? "bg-primary/10 text-primary" : "bg-surface-2 text-text-muted"
856
863
  }`}>Tunnel</span>
857
864
  {tunnelEnabled && !tunnelLoading && tunnelReachable ? (
858
865
  <>
859
- <Input aria-label="Cloudflare Tunnel endpoint URL" value={`${tunnelPublicUrl || tunnelUrl}/v1`} readOnly className="flex-1 font-mono text-sm" />
866
+ <Input aria-label="Cloudflare Tunnel endpoint URL" value={`${tunnelPublicUrl || tunnelUrl}/v1`} readOnly className="w-full min-w-0 font-mono text-sm sm:flex-1" />
860
867
  <button
861
868
  onClick={() => copy(`${tunnelPublicUrl || tunnelUrl}/v1`, "tunnel_url")}
862
869
  className="p-2 hover:bg-black/5 dark:hover:bg-white/5 rounded text-text-muted hover:text-primary transition-colors shrink-0"
@@ -942,13 +949,13 @@ export default function APIPageClient({ machineId }) {
942
949
  )}
943
950
  </div>
944
951
  {/* Tailscale */}
945
- <div className="flex items-center gap-2">
946
- <span className={`text-xs font-mono px-1.5 py-0.5 rounded shrink-0 min-w-[88px] text-center ${
952
+ <div className="grid min-w-0 grid-cols-[minmax(0,1fr)_auto_auto] items-center gap-2.5 rounded-xl border border-border-subtle bg-bg/55 p-3 transition-colors hover:border-primary/20 sm:flex">
953
+ <span className={`col-span-full inline-flex min-h-8 w-full shrink-0 items-center justify-center rounded-lg px-2.5 text-[11px] font-semibold uppercase tracking-[0.08em] sm:w-[96px] ${
947
954
  tsEnabled ? "bg-primary/10 text-primary" : "bg-surface-2 text-text-muted"
948
955
  }`}>Tailscale</span>
949
956
  {tsEnabled && !tsLoading && tsReachable ? (
950
957
  <>
951
- <Input aria-label="Tailscale endpoint URL" value={`${tsUrl}/v1`} readOnly className="flex-1 font-mono text-sm" />
958
+ <Input aria-label="Tailscale endpoint URL" value={`${tsUrl}/v1`} readOnly className="w-full min-w-0 font-mono text-sm sm:flex-1" />
952
959
  <button
953
960
  onClick={() => copy(`${tsUrl}/v1`, "ts_url")}
954
961
  className="p-2 hover:bg-black/5 dark:hover:bg-white/5 rounded text-text-muted hover:text-primary transition-colors shrink-0"
@@ -1070,31 +1077,31 @@ export default function APIPageClient({ machineId }) {
1070
1077
  checked={tunnelDashboardAccess}
1071
1078
  onChange={() => handleTunnelDashboardAccess(!tunnelDashboardAccess)}
1072
1079
  />
1073
- <div className="flex items-center gap-1.5">
1074
- <p className="font-medium text-sm">Allow dashboard access via tunnel</p>
1075
- <Tooltip text="When enabled, the dashboard can be accessed through your tunnel or Tailscale URL (login still required). When disabled, dashboard access via tunnel/Tailscale is completely blocked." />
1076
- </div>
1080
+ <Tooltip text="When enabled, the dashboard can be accessed through your tunnel or Tailscale URL (login still required). When disabled, dashboard access via tunnel/Tailscale is completely blocked." />
1077
1081
  </div>
1078
1082
  )}
1083
+ </div>
1079
1084
  </Card>
1080
1085
 
1081
1086
  {/* Token Saver moved to its own page */}
1082
- <Card id="rtk">
1083
- <div className="flex items-center justify-between gap-4">
1084
- <div className="min-w-0">
1085
- <h2 className="text-lg font-semibold flex items-center gap-2">
1086
- <span className="material-symbols-outlined text-primary">bolt</span>
1087
- Token Saver
1088
- </h2>
1089
- <p className="text-sm text-text-muted mt-1">
1090
- RTK, Caveman, Ponytail, Headroom, and PXPIPE live on the Token Saver page.
1091
- </p>
1087
+ <Card id="rtk" padding="none" className="relative overflow-hidden border-primary/20 bg-linear-to-br from-primary/[0.08] via-surface to-surface">
1088
+ <div className="relative flex flex-col gap-4 p-5 sm:flex-row sm:items-center sm:justify-between">
1089
+ <div className="flex min-w-0 items-center gap-3.5">
1090
+ <span className="material-symbols-outlined flex size-11 shrink-0 items-center justify-center rounded-xl bg-primary text-[22px] text-white shadow-[0_10px_24px_-14px_rgba(229,106,74,0.9)]">
1091
+ bolt
1092
+ </span>
1093
+ <div className="min-w-0">
1094
+ <h2 className="text-lg font-semibold leading-tight">Token Saver</h2>
1095
+ <p className="mt-1 text-sm text-text-muted">
1096
+ Tune RTK, Caveman, Ponytail, Headroom, and PXPIPE in one workspace.
1097
+ </p>
1098
+ </div>
1092
1099
  </div>
1093
1100
  <Link
1094
1101
  href="/dashboard/token-saver"
1095
- className="shrink-0 inline-flex items-center gap-1.5 rounded-lg border border-border px-3 py-2 text-sm font-medium text-text-main hover:border-primary/40 hover:text-primary transition-colors"
1102
+ className="inline-flex w-full shrink-0 items-center justify-center gap-1.5 rounded-lg border border-primary/25 bg-surface/80 px-3.5 py-2 text-sm font-semibold text-text-main shadow-sm transition-[border-color,color,transform] hover:translate-x-0.5 hover:border-primary/50 hover:text-primary sm:w-auto"
1096
1103
  >
1097
- Open
1104
+ Open workspace
1098
1105
  <span className="material-symbols-outlined text-[16px]">arrow_forward</span>
1099
1106
  </Link>
1100
1107
  </div>
@@ -1102,12 +1109,22 @@ export default function APIPageClient({ machineId }) {
1102
1109
 
1103
1110
  {/* API Keys */}
1104
1111
  <Card id="require-api-key">
1105
- <div className="flex items-center justify-between mb-4">
1106
- <h2 className="text-lg font-semibold flex items-center gap-2">
1107
- <span className="material-symbols-outlined text-primary">vpn_key</span>
1108
- API Keys
1109
- </h2>
1110
- <Button icon="add" onClick={() => setShowAddModal(true)}>
1112
+ <div className="mb-5 flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between">
1113
+ <div className="flex min-w-0 items-center gap-3">
1114
+ <span className="material-symbols-outlined flex size-11 shrink-0 items-center justify-center rounded-xl bg-primary/10 text-[21px] text-primary ring-1 ring-primary/15">
1115
+ vpn_key
1116
+ </span>
1117
+ <div className="min-w-0">
1118
+ <div className="flex flex-wrap items-center gap-2">
1119
+ <h2 className="text-lg font-semibold leading-tight">API Keys</h2>
1120
+ <span className="rounded-full bg-surface-2 px-2 py-0.5 text-[10px] font-semibold text-text-muted ring-1 ring-border-subtle">
1121
+ {keys.length} {keys.length === 1 ? "key" : "keys"}
1122
+ </span>
1123
+ </div>
1124
+ <p className="mt-0.5 text-xs text-text-muted">Control authentication and spending per client.</p>
1125
+ </div>
1126
+ </div>
1127
+ <Button icon="add" onClick={() => setShowAddModal(true)} className="w-full sm:w-auto">
1111
1128
  Create Key
1112
1129
  </Button>
1113
1130
  </div>
@@ -1118,18 +1135,25 @@ export default function APIPageClient({ machineId }) {
1118
1135
  </p>
1119
1136
  )}
1120
1137
 
1121
- <div className="flex flex-wrap items-center justify-between gap-3 pb-4 mb-4 border-b border-border">
1122
- <div>
1123
- <p className="font-medium">Require API key</p>
1124
- <p className="text-sm text-text-muted">
1125
- Requests without a valid key will be rejected
1126
- </p>
1138
+ <div className="mb-4 flex flex-col gap-3 rounded-xl border border-primary/15 bg-primary/[0.045] p-4 sm:flex-row sm:items-center sm:justify-between">
1139
+ <div className="flex items-start gap-3">
1140
+ <span className="material-symbols-outlined mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-lg bg-surface text-[17px] text-primary ring-1 ring-border-subtle">
1141
+ shield_lock
1142
+ </span>
1143
+ <div>
1144
+ <p className="font-medium">Require API key</p>
1145
+ <p className="mt-0.5 text-sm text-text-muted">
1146
+ Reject requests that do not include a valid client key.
1147
+ </p>
1148
+ </div>
1149
+ </div>
1150
+ <div className="shrink-0 self-end sm:self-auto">
1151
+ <Toggle
1152
+ label="Require API key"
1153
+ checked={requireApiKey}
1154
+ onChange={() => handleRequireApiKey(!requireApiKey)}
1155
+ />
1127
1156
  </div>
1128
- <Toggle
1129
- label="Require API key"
1130
- checked={requireApiKey}
1131
- onChange={() => handleRequireApiKey(!requireApiKey)}
1132
- />
1133
1157
  </div>
1134
1158
 
1135
1159
  {isRemoteHost && !requireApiKey && (
@@ -1139,7 +1163,7 @@ export default function APIPageClient({ machineId }) {
1139
1163
  )}
1140
1164
 
1141
1165
  {keys.length === 0 ? (
1142
- <div className="text-center py-12">
1166
+ <div className="rounded-xl border border-dashed border-border bg-surface-2/25 py-12 text-center">
1143
1167
  <div className="inline-flex items-center justify-center w-16 h-16 rounded-full bg-primary/10 text-primary mb-4">
1144
1168
  <span className="material-symbols-outlined text-[32px]">vpn_key</span>
1145
1169
  </div>
@@ -1150,11 +1174,11 @@ export default function APIPageClient({ machineId }) {
1150
1174
  </Button>
1151
1175
  </div>
1152
1176
  ) : (
1153
- <div className="flex flex-col">
1177
+ <div className="grid grid-cols-1 gap-3 lg:grid-cols-2">
1154
1178
  {keys.map((key) => (
1155
1179
  <div
1156
1180
  key={key.id}
1157
- className={`group flex flex-wrap items-center justify-between gap-3 py-3 border-b border-black/[0.03] dark:border-white/[0.03] last:border-b-0 ${key.isActive === false ? "opacity-60" : ""}`}
1181
+ className={`group flex min-w-0 flex-wrap items-center justify-between gap-3 rounded-xl border border-border-subtle bg-surface-2/25 p-4 transition-[border-color,box-shadow,opacity] hover:border-primary/20 hover:shadow-[0_14px_28px_-26px_rgba(15,23,42,0.65)] ${key.isActive === false ? "opacity-60" : ""}`}
1158
1182
  >
1159
1183
  <div className="flex-1 min-w-0">
1160
1184
  <p className="text-sm font-medium">{key.name}</p>
@@ -1192,7 +1216,7 @@ export default function APIPageClient({ machineId }) {
1192
1216
  <p className="text-xs text-orange-500 mt-1">Paused</p>
1193
1217
  )}
1194
1218
  {/* Per-key budget caps (0 = unlimited) */}
1195
- <div className="flex items-center gap-3 mt-2">
1219
+ <div className="mt-3 flex flex-wrap items-center gap-3">
1196
1220
  <label className="flex items-center gap-1 text-[11px] text-text-muted">
1197
1221
  Daily $
1198
1222
  <input
@@ -1200,7 +1224,7 @@ export default function APIPageClient({ machineId }) {
1200
1224
  disabled={keyPending === `budget:${key.id}`}
1201
1225
  defaultValue={key.budgetDaily || 0}
1202
1226
  onBlur={(e) => handleBudgetChange(key.id, "budgetDaily", e.target.value)}
1203
- className="w-16 px-1 py-0.5 text-[11px] bg-transparent border border-border rounded"
1227
+ className="w-16 rounded border border-border bg-surface px-1 py-0.5 text-[11px]"
1204
1228
  title="Daily budget cap in USD (0 = unlimited)"
1205
1229
  />
1206
1230
  </label>
@@ -1211,7 +1235,7 @@ export default function APIPageClient({ machineId }) {
1211
1235
  disabled={keyPending === `budget:${key.id}`}
1212
1236
  defaultValue={key.budgetMonthly || 0}
1213
1237
  onBlur={(e) => handleBudgetChange(key.id, "budgetMonthly", e.target.value)}
1214
- className="w-16 px-1 py-0.5 text-[11px] bg-transparent border border-border rounded"
1238
+ className="w-16 rounded border border-border bg-surface px-1 py-0.5 text-[11px]"
1215
1239
  title="Monthly budget cap in USD (0 = unlimited)"
1216
1240
  />
1217
1241
  </label>
@@ -1484,14 +1508,15 @@ export default function APIPageClient({ machineId }) {
1484
1508
  /** Reusable endpoint row component */
1485
1509
  function EndpointRow({ label, url, copyId, copied, onCopy, badge, actions }) {
1486
1510
  return (
1487
- <div className="flex items-center gap-2">
1488
- <span className={`text-xs font-mono px-1.5 py-0.5 rounded shrink-0 min-w-[88px] text-center ${
1511
+ <div className="grid min-w-0 grid-cols-[minmax(0,1fr)_auto_auto] items-center gap-2.5 rounded-xl border border-border-subtle bg-bg/55 p-3 transition-colors hover:border-primary/20 sm:flex">
1512
+ <span className={`col-span-full inline-flex min-h-8 w-full shrink-0 items-center justify-center rounded-lg px-2.5 text-[11px] font-semibold uppercase tracking-[0.08em] sm:w-[96px] ${
1489
1513
  (badge === "CF" || badge === "TS") ? "bg-primary/10 text-primary" : "bg-surface-2 text-text-muted"
1490
1514
  }`}>{label}</span>
1491
- <Input aria-label={`${label} endpoint URL`} value={url} readOnly className="flex-1 font-mono text-sm" />
1515
+ <Input aria-label={`${label} endpoint URL`} value={url} readOnly className="w-full min-w-0 font-mono text-sm sm:flex-1" />
1492
1516
  <button
1493
1517
  onClick={() => onCopy(url, copyId)}
1494
1518
  className="p-2 hover:bg-black/5 dark:hover:bg-white/5 rounded text-text-muted hover:text-primary transition-colors shrink-0"
1519
+ aria-label={`Copy ${label} endpoint URL`}
1495
1520
  >
1496
1521
  <span className="material-symbols-outlined text-[18px]">{copied === copyId ? "check" : "content_copy"}</span>
1497
1522
  </button>
@@ -1528,7 +1553,7 @@ function Tooltip({ text }) {
1528
1553
  return (
1529
1554
  <span className="relative group inline-flex items-center">
1530
1555
  <span className="material-symbols-outlined text-[14px] text-text-muted cursor-help">help</span>
1531
- <span className="pointer-events-none absolute left-5 top-1/2 -translate-y-1/2 z-50 w-64 rounded bg-gray-900 dark:bg-gray-800 text-white text-xs px-2.5 py-1.5 opacity-0 group-hover:opacity-100 transition-opacity shadow-lg">
1556
+ <span className="pointer-events-none absolute right-0 top-full z-50 mt-2 w-[min(16rem,calc(100vw-2rem))] rounded bg-gray-900 px-2.5 py-1.5 text-xs text-white opacity-0 shadow-lg transition-opacity group-hover:opacity-100 dark:bg-gray-800">
1532
1557
  {text}
1533
1558
  </span>
1534
1559
  </span>
@@ -218,6 +218,11 @@ export default function ProvidersPage() {
218
218
  () => connections.filter((c) => c.isActive !== false).length,
219
219
  [connections],
220
220
  );
221
+ const connectedProviderCount = connectionsByProvider.size;
222
+ const pausedConnections = Math.max(0, totalConnections - activeConnections);
223
+ const activePercent = totalConnections > 0
224
+ ? Math.round((activeConnections / totalConnections) * 100)
225
+ : 0;
221
226
 
222
227
  const getProviderStats = (providerId, authType) => {
223
228
  const authTypes = Array.isArray(authType) ? authType : [authType];
@@ -375,19 +380,40 @@ export default function ProvidersPage() {
375
380
  anthropicCompatibleProviders.length > 0;
376
381
 
377
382
  return (
378
- <div className="flex min-w-0 flex-col gap-6 px-1 sm:px-0">
383
+ <div className="flex min-w-0 flex-col gap-6 px-1 sm:px-0 lg:gap-7">
379
384
  {totalConnections > 0 && (
380
- <div className="flex flex-wrap items-center gap-2 rounded-xl border border-border-subtle bg-surface/60 px-4 py-2.5 text-xs text-text-muted">
381
- <span className="material-symbols-outlined text-[16px] text-primary">dns</span>
382
- <span>
383
- <strong className="text-text-main">{totalConnections}</strong> connections loaded
384
- {" · "}
385
- <strong className="text-text-main">{activeConnections}</strong> active
386
- </span>
385
+ <div className="overflow-hidden rounded-2xl border border-primary/15 bg-surface/85 shadow-[0_20px_45px_-38px_rgba(229,106,74,0.8)] backdrop-blur-sm">
386
+ <div className="grid grid-cols-2 divide-x divide-y divide-border-subtle sm:grid-cols-4 sm:divide-y-0">
387
+ <div className="col-span-2 flex items-center gap-3 px-4 py-3.5 sm:col-span-1">
388
+ <span className="flex size-10 shrink-0 items-center justify-center rounded-xl bg-primary/10 text-primary ring-1 ring-primary/15">
389
+ <span aria-hidden="true" className="material-symbols-outlined" style={{ fontSize: 20 }}>dns</span>
390
+ </span>
391
+ <div>
392
+ <p className="text-[10px] font-bold uppercase tracking-[0.12em] text-text-muted">Connection health</p>
393
+ <p className="mt-0.5 text-sm font-semibold text-text-main">{activePercent}% active</p>
394
+ </div>
395
+ </div>
396
+ <div className="px-4 py-3.5">
397
+ <p className="text-[10px] font-bold uppercase tracking-[0.1em] text-text-muted">Connections</p>
398
+ <p className="mt-1 text-xl font-bold tracking-tight text-text-main">{totalConnections}</p>
399
+ </div>
400
+ <div className="px-4 py-3.5">
401
+ <p className="text-[10px] font-bold uppercase tracking-[0.1em] text-text-muted">Active</p>
402
+ <div className="mt-1 flex items-baseline gap-2">
403
+ <p className="text-xl font-bold tracking-tight text-success">{activeConnections}</p>
404
+ {pausedConnections > 0 && <span className="text-[10px] text-text-muted">{pausedConnections} paused</span>}
405
+ </div>
406
+ </div>
407
+ <div className="px-4 py-3.5">
408
+ <p className="text-[10px] font-bold uppercase tracking-[0.1em] text-text-muted">Providers</p>
409
+ <p className="mt-1 text-xl font-bold tracking-tight text-info">{connectedProviderCount}</p>
410
+ </div>
411
+ </div>
387
412
  {totalConnections >= 100 && (
388
- <span className="text-text-subtle">
389
- Tip: open a provider → search/filter connections (paginated)
390
- </span>
413
+ <div className="flex items-center gap-2 border-t border-border-subtle bg-surface-2/35 px-4 py-2 text-[11px] text-text-muted">
414
+ <span aria-hidden="true" className="material-symbols-outlined text-[15px] text-primary">filter_alt</span>
415
+ Open a provider to search and filter its paginated connections.
416
+ </div>
391
417
  )}
392
418
  </div>
393
419
  )}
@@ -408,10 +434,11 @@ export default function ProvidersPage() {
408
434
 
409
435
  {/* Custom Providers (OpenAI/Anthropic Compatible) — dynamic */}
410
436
  <div className="flex flex-col gap-4">
411
- <div className="flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between">
412
- <h2 className="text-lg sm:text-xl font-semibold flex items-center gap-2 leading-tight">
413
- Custom Providers (OpenAI/Anthropic Compatible){" "}
414
- </h2>
437
+ <ProviderSectionHeader
438
+ icon="extension"
439
+ title="Custom Providers"
440
+ description="OpenAI and Anthropic-compatible endpoints"
441
+ >
415
442
  <div className="grid grid-cols-1 gap-2 sm:flex sm:w-auto">
416
443
  <Button
417
444
  size="sm"
@@ -431,12 +458,15 @@ export default function ProvidersPage() {
431
458
  Add OpenAI Compatible
432
459
  </Button>
433
460
  </div>
434
- </div>
461
+ </ProviderSectionHeader>
435
462
  {compatibleProviders.length === 0 &&
436
463
  anthropicCompatibleProviders.length === 0 ? (
437
- <div className="flex items-center justify-center gap-2 py-2 border border-dashed border-border rounded-xl text-text-muted text-sm">
438
- <span className="material-symbols-outlined text-[18px]">extension</span>
439
- <span>No custom providers — use buttons above to add OpenAI/Anthropic compatible endpoints</span>
464
+ <div className="flex items-center gap-3 rounded-xl border border-dashed border-border bg-surface/45 px-4 py-3 text-text-muted">
465
+ <span aria-hidden="true" className="material-symbols-outlined flex size-9 shrink-0 items-center justify-center rounded-lg bg-surface-2 text-[18px]">add_link</span>
466
+ <div>
467
+ <p className="text-sm font-medium text-text-main">No custom endpoints yet</p>
468
+ <p className="mt-0.5 text-xs">Add an OpenAI or Anthropic-compatible endpoint when you need one.</p>
469
+ </div>
440
470
  </div>
441
471
  ) : (
442
472
  <div className="grid grid-cols-1 gap-3 sm:grid-cols-2 sm:gap-4 lg:grid-cols-3 xl:grid-cols-4">
@@ -461,10 +491,11 @@ export default function ProvidersPage() {
461
491
  {/* OAuth Providers */}
462
492
  {oauthEntries.length > 0 && (
463
493
  <div className="flex flex-col gap-4">
464
- <div className="flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between">
465
- <h2 className="text-lg sm:text-xl font-semibold flex items-center gap-2 leading-tight">
466
- OAuth Providers
467
- </h2>
494
+ <ProviderSectionHeader
495
+ icon="passkey"
496
+ title="OAuth Providers"
497
+ description="Connect existing provider accounts securely"
498
+ >
468
499
  <div className="flex w-full flex-col gap-2 sm:w-auto sm:flex-row sm:items-center">
469
500
  <ModelAvailabilityBadge />
470
501
  <button
@@ -486,7 +517,7 @@ export default function ProvidersPage() {
486
517
  {testingMode === "oauth" ? "Testing..." : "Test All"}
487
518
  </button>
488
519
  </div>
489
- </div>
520
+ </ProviderSectionHeader>
490
521
  <div className="grid grid-cols-1 gap-3 sm:grid-cols-2 sm:gap-4 lg:grid-cols-3 xl:grid-cols-4">
491
522
  {oauthEntries.map(([key, info]) => (
492
523
  <ProviderCard
@@ -505,10 +536,11 @@ export default function ProvidersPage() {
505
536
  {/* Free Tier Providers */}
506
537
  {(freeEntries.length > 0 || freeTierEntries.length > 0) && (
507
538
  <div className="flex flex-col gap-4">
508
- <div className="flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between">
509
- <h2 className="text-lg sm:text-xl font-semibold flex items-center gap-2 leading-tight">
510
- Free Tier Providers
511
- </h2>
539
+ <ProviderSectionHeader
540
+ icon="savings"
541
+ title="Free Tier Providers"
542
+ description="Ready-to-use and free-tier routing options"
543
+ >
512
544
  <button
513
545
  onClick={() => handleBatchTest("free")}
514
546
  disabled={!!testingMode}
@@ -527,7 +559,7 @@ export default function ProvidersPage() {
527
559
  </span>
528
560
  {testingMode === "free" ? "Testing..." : "Test All"}
529
561
  </button>
530
- </div>
562
+ </ProviderSectionHeader>
531
563
  <div className="grid grid-cols-1 gap-3 sm:grid-cols-2 sm:gap-4 lg:grid-cols-3 xl:grid-cols-4">
532
564
  {freeEntries.map(([key, info]) => {
533
565
  const hasApiKeyMode = Array.isArray(info?.authModes) && info.authModes.includes("apikey");
@@ -560,10 +592,11 @@ export default function ProvidersPage() {
560
592
  {/* API Key Providers — fixed list */}
561
593
  {apikeyEntries.length > 0 && (
562
594
  <div className="flex flex-col gap-4">
563
- <div className="flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between">
564
- <h2 className="text-lg sm:text-xl font-semibold flex items-center gap-2 leading-tight">
565
- API Key Providers{" "}
566
- </h2>
595
+ <ProviderSectionHeader
596
+ icon="key"
597
+ title="API Key Providers"
598
+ description="Bring your own provider credentials"
599
+ >
567
600
  <button
568
601
  onClick={() => handleBatchTest("apikey")}
569
602
  disabled={!!testingMode}
@@ -582,7 +615,7 @@ export default function ProvidersPage() {
582
615
  </span>
583
616
  {testingMode === "apikey" ? "Testing..." : "Test All"}
584
617
  </button>
585
- </div>
618
+ </ProviderSectionHeader>
586
619
  <div className="grid grid-cols-1 gap-3 sm:grid-cols-2 sm:gap-4 lg:grid-cols-3 xl:grid-cols-4">
587
620
  {visibleApikeyEntries.map(([key, info]) => (
588
621
  <ApiKeyProviderCard
@@ -679,9 +712,34 @@ export default function ProvidersPage() {
679
712
  );
680
713
  }
681
714
 
715
+ function ProviderSectionHeader({ icon, title, description, children }) {
716
+ return (
717
+ <div className="flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between">
718
+ <div className="flex min-w-0 items-center gap-3">
719
+ <span aria-hidden="true" className="material-symbols-outlined flex size-10 shrink-0 items-center justify-center rounded-xl bg-primary/10 text-[20px] text-primary ring-1 ring-primary/15">
720
+ {icon}
721
+ </span>
722
+ <div className="min-w-0">
723
+ <h2 className="text-lg font-semibold leading-tight sm:text-xl">{title}</h2>
724
+ <p className="mt-0.5 text-xs text-text-muted">{description}</p>
725
+ </div>
726
+ </div>
727
+ {children}
728
+ </div>
729
+ );
730
+ }
731
+
732
+ ProviderSectionHeader.propTypes = {
733
+ icon: PropTypes.string.isRequired,
734
+ title: PropTypes.string.isRequired,
735
+ description: PropTypes.string.isRequired,
736
+ children: PropTypes.node,
737
+ };
738
+
682
739
  function ProviderCard({ providerId, provider, stats, authType, onToggle }) {
683
- const { connected, error, errorCode, errorTime, allDisabled } = stats;
740
+ const { connected, error, errorCode, allDisabled } = stats;
684
741
  const isNoAuth = !!provider.noAuth;
742
+ const isReady = !allDisabled && (connected > 0 || isNoAuth);
685
743
 
686
744
  const dotColors = {
687
745
  free: "bg-green-500",
@@ -699,22 +757,27 @@ function ProviderCard({ providerId, provider, stats, authType, onToggle }) {
699
757
  return (
700
758
  <Link href={`/dashboard/providers/${providerId}`} className="group min-w-0">
701
759
  <Card
702
- padding="xs"
703
- className={`h-full hover:bg-black/[0.01] dark:hover:bg-white/[0.01] transition-colors cursor-pointer ${allDisabled ? "opacity-50" : ""}`}
760
+ padding="none"
761
+ className={`relative h-[82px] min-h-[82px] cursor-pointer overflow-hidden transition-[border-color,box-shadow,opacity] sm:h-[94px] sm:min-h-[94px] ${
762
+ isReady
763
+ ? "border-success/25 bg-linear-to-br from-success/[0.045] to-transparent"
764
+ : "group-hover:border-primary/25"
765
+ } ${allDisabled ? "opacity-55" : ""}`}
704
766
  >
705
- <div className="flex min-w-0 items-center justify-between gap-3">
767
+ {isReady && <span className="absolute inset-y-3 left-0 w-0.5 rounded-r-full bg-success" />}
768
+ <div className="flex h-full min-w-0 items-center justify-between gap-3 p-3.5">
706
769
  <div className="flex min-w-0 items-center gap-3">
707
770
  <div
708
- className="size-8 shrink-0 rounded-lg flex items-center justify-center"
771
+ className="flex size-10 shrink-0 items-center justify-center rounded-xl ring-1 ring-black/[0.04] dark:ring-white/[0.06]"
709
772
  style={{
710
773
  backgroundColor: `${provider.color?.length > 7 ? provider.color : provider.color + "15"}`,
711
774
  }}
712
775
  >
713
776
  <ProviderIcon
714
777
  src={`/providers/${provider.id}.png`}
715
- alt={provider.name}
778
+ alt=""
716
779
  size={30}
717
- className="object-contain rounded-lg max-w-[32px] max-h-[32px]"
780
+ className="max-h-[32px] max-w-[32px] rounded-lg object-contain"
718
781
  fallbackText={
719
782
  provider.textIcon || provider.id.slice(0, 2).toUpperCase()
720
783
  }
@@ -722,8 +785,12 @@ function ProviderCard({ providerId, provider, stats, authType, onToggle }) {
722
785
  />
723
786
  </div>
724
787
  <div className="min-w-0">
725
- <h3 className="truncate font-semibold">{provider.name}</h3>
726
- <div className="flex min-w-0 items-center gap-1.5 text-xs flex-wrap">
788
+ <h3 className="truncate text-sm font-semibold text-text-main">{provider.name}</h3>
789
+ <div className="mt-1 flex min-w-0 items-center gap-1.5 overflow-hidden whitespace-nowrap text-xs">
790
+ <span className="inline-flex items-center gap-1 text-[10px] font-medium text-text-muted">
791
+ <span aria-hidden="true" className={`size-1.5 rounded-full ${dotColors[authType] || "bg-text-muted"}`} />
792
+ {dotLabels[authType] || "Provider"}
793
+ </span>
727
794
  {allDisabled ? (
728
795
  <Badge variant="default" size="sm">
729
796
  <span className="flex items-center gap-1">
@@ -738,9 +805,6 @@ function ProviderCard({ providerId, provider, stats, authType, onToggle }) {
738
805
  ) : (
739
806
  <>
740
807
  {getStatusDisplay(connected, error, errorCode)}
741
- {errorTime && (
742
- <span className="text-text-muted">{errorTime}</span>
743
- )}
744
808
  </>
745
809
  )}
746
810
  </div>
@@ -764,6 +828,9 @@ function ProviderCard({ providerId, provider, stats, authType, onToggle }) {
764
828
  />
765
829
  </div>
766
830
  )}
831
+ <span aria-hidden="true" className="material-symbols-outlined text-[18px] text-text-subtle transition-[transform,color] group-hover:translate-x-0.5 group-hover:text-primary">
832
+ chevron_right
833
+ </span>
767
834
  </div>
768
835
  </div>
769
836
  </Card>
@@ -784,6 +851,8 @@ ProviderCard.propTypes = {
784
851
  error: PropTypes.number,
785
852
  errorCode: PropTypes.string,
786
853
  errorTime: PropTypes.string,
854
+ total: PropTypes.number,
855
+ allDisabled: PropTypes.bool,
787
856
  }).isRequired,
788
857
  authType: PropTypes.string,
789
858
  onToggle: PropTypes.func,
@@ -796,7 +865,8 @@ function ApiKeyProviderCard({
796
865
  authType,
797
866
  onToggle,
798
867
  }) {
799
- const { connected, error, errorCode, errorTime, allDisabled } = stats;
868
+ const { connected, error, errorCode, allDisabled } = stats;
869
+ const isReady = !allDisabled && connected > 0;
800
870
  const isCompatible = providerId.startsWith(OPENAI_COMPATIBLE_PREFIX);
801
871
  const isAnthropicCompatible = providerId.startsWith(
802
872
  ANTHROPIC_COMPATIBLE_PREFIX,
@@ -816,6 +886,7 @@ function ApiKeyProviderCard({
816
886
  };
817
887
 
818
888
  const getIconPath = () => {
889
+ if (provider.id === "featherless") return null;
819
890
  if (isCompatible)
820
891
  return provider.apiType === "responses"
821
892
  ? "/providers/oai-r.png"
@@ -827,22 +898,27 @@ function ApiKeyProviderCard({
827
898
  return (
828
899
  <Link href={`/dashboard/providers/${providerId}`} className="group min-w-0">
829
900
  <Card
830
- padding="xs"
831
- className={`h-full hover:bg-black/[0.01] dark:hover:bg-white/[0.01] transition-colors cursor-pointer ${allDisabled ? "opacity-50" : ""}`}
901
+ padding="none"
902
+ className={`relative h-[82px] min-h-[82px] cursor-pointer overflow-hidden transition-[border-color,box-shadow,opacity] sm:h-[94px] sm:min-h-[94px] ${
903
+ isReady
904
+ ? "border-success/25 bg-linear-to-br from-success/[0.045] to-transparent"
905
+ : "group-hover:border-primary/25"
906
+ } ${allDisabled ? "opacity-55" : ""}`}
832
907
  >
833
- <div className="flex min-w-0 items-center justify-between gap-3">
908
+ {isReady && <span className="absolute inset-y-3 left-0 w-0.5 rounded-r-full bg-success" />}
909
+ <div className="flex h-full min-w-0 items-center justify-between gap-3 p-3.5">
834
910
  <div className="flex min-w-0 items-center gap-3">
835
911
  <div
836
- className="size-8 shrink-0 rounded-lg flex items-center justify-center"
912
+ className="flex size-10 shrink-0 items-center justify-center rounded-xl ring-1 ring-black/[0.04] dark:ring-white/[0.06]"
837
913
  style={{
838
914
  backgroundColor: `${provider.color?.length > 7 ? provider.color : provider.color + "15"}`,
839
915
  }}
840
916
  >
841
917
  <ProviderIcon
842
918
  src={getIconPath()}
843
- alt={provider.name}
919
+ alt=""
844
920
  size={30}
845
- className="object-contain rounded-lg max-w-[30px] max-h-[30px]"
921
+ className="max-h-[32px] max-w-[32px] rounded-lg object-contain"
846
922
  fallbackText={
847
923
  provider.textIcon || provider.id.slice(0, 2).toUpperCase()
848
924
  }
@@ -850,8 +926,12 @@ function ApiKeyProviderCard({
850
926
  />
851
927
  </div>
852
928
  <div className="min-w-0">
853
- <h3 className="truncate font-semibold">{provider.name}</h3>
854
- <div className="flex min-w-0 items-center gap-1.5 text-xs flex-wrap">
929
+ <h3 className="truncate text-sm font-semibold text-text-main">{provider.name}</h3>
930
+ <div className="mt-1 flex min-w-0 items-center gap-1.5 overflow-hidden whitespace-nowrap text-xs">
931
+ <span className="inline-flex items-center gap-1 text-[10px] font-medium text-text-muted">
932
+ <span aria-hidden="true" className={`size-1.5 rounded-full ${dotColors[authType] || "bg-text-muted"}`} />
933
+ {dotLabels[authType] || "Provider"}
934
+ </span>
855
935
  {allDisabled ? (
856
936
  <Badge variant="default" size="sm">
857
937
  <span className="flex items-center gap-1">
@@ -876,9 +956,6 @@ function ApiKeyProviderCard({
876
956
  Messages
877
957
  </Badge>
878
958
  )}
879
- {errorTime && (
880
- <span className="text-text-muted">{errorTime}</span>
881
- )}
882
959
  </>
883
960
  )}
884
961
  </div>
@@ -902,6 +979,9 @@ function ApiKeyProviderCard({
902
979
  />
903
980
  </div>
904
981
  )}
982
+ <span aria-hidden="true" className="material-symbols-outlined text-[18px] text-text-subtle transition-[transform,color] group-hover:translate-x-0.5 group-hover:text-primary">
983
+ chevron_right
984
+ </span>
905
985
  </div>
906
986
  </div>
907
987
  </Card>
@@ -923,6 +1003,8 @@ ApiKeyProviderCard.propTypes = {
923
1003
  error: PropTypes.number,
924
1004
  errorCode: PropTypes.string,
925
1005
  errorTime: PropTypes.string,
1006
+ total: PropTypes.number,
1007
+ allDisabled: PropTypes.bool,
926
1008
  }).isRequired,
927
1009
  authType: PropTypes.string,
928
1010
  onToggle: PropTypes.func,