vansrouter 0.91.61 → 0.91.85

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 (1249) hide show
  1. package/README.md +73 -1
  2. package/app/.next-cli-build/BUILD_ID +1 -1
  3. package/app/.next-cli-build/app-path-routes-manifest.json +16 -14
  4. package/app/.next-cli-build/build-manifest.json +3 -3
  5. package/app/.next-cli-build/prerender-manifest.json +3 -3
  6. package/app/.next-cli-build/react-loadable-manifest.json +7 -7
  7. package/app/.next-cli-build/required-server-files.json +2 -1
  8. package/app/.next-cli-build/routes-manifest.json +12 -0
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +2 -2
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +14 -10
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +3 -3
  34. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  35. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  36. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
  37. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  38. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  39. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  40. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  41. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  42. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
  43. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  44. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  45. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  46. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  47. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  48. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +6 -6
  49. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  50. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  51. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  52. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  53. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  54. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  55. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  56. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  57. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-fitness/page.js +2 -2
  58. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-fitness/page.js.nft.json +1 -1
  59. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-fitness/page_client-reference-manifest.js +1 -1
  60. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +4 -4
  61. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  62. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  63. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +2 -2
  64. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
  65. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
  66. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  67. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  68. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  69. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +2 -2
  70. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
  71. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  72. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +2 -2
  73. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
  74. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  75. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  76. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  77. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  78. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  79. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  80. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  81. package/app/.next-cli-build/server/app/_global-error/page.js +3 -3
  82. package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  83. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  84. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  85. package/app/.next-cli-build/server/app/_global-error.rsc +2 -2
  86. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +2 -2
  87. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  88. package/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  89. package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  90. package/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  91. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +2 -2
  92. package/app/.next-cli-build/server/app/_not-found/page.js +2 -2
  93. package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  94. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  95. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  96. package/app/.next-cli-build/server/app/_not-found.rsc +5 -5
  97. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +5 -5
  98. package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  99. package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +5 -5
  100. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  101. package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  102. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +3 -3
  103. package/app/.next-cli-build/server/app/api/auth/check/route.js +1 -1
  104. package/app/.next-cli-build/server/app/api/auth/check/route.js.nft.json +1 -1
  105. package/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
  106. package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  107. package/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
  108. package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  109. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
  110. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  111. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
  112. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  113. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
  114. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  115. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js +1 -1
  116. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js.nft.json +1 -1
  117. package/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
  118. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  119. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +5 -30
  120. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  121. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +1 -1
  122. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  123. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  124. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  125. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  126. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  127. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
  128. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  129. package/app/.next-cli-build/server/app/api/cli-tools/codewhale-settings/route.js +2 -2
  130. package/app/.next-cli-build/server/app/api/cli-tools/codewhale-settings/route.js.nft.json +1 -1
  131. package/app/.next-cli-build/server/app/api/cli-tools/codex-profiles/route.js +2 -2
  132. package/app/.next-cli-build/server/app/api/cli-tools/codex-profiles/route.js.nft.json +1 -1
  133. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
  134. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  135. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
  136. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  137. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +1 -1
  138. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  139. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
  140. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  141. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
  142. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  143. package/app/.next-cli-build/server/app/api/cli-tools/crush-settings/route.js +2 -2
  144. package/app/.next-cli-build/server/app/api/cli-tools/crush-settings/route.js.nft.json +1 -1
  145. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
  146. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  147. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js +1 -1
  148. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js.nft.json +1 -1
  149. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
  150. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  151. package/app/.next-cli-build/server/app/api/cli-tools/forge-settings/route.js +1 -1
  152. package/app/.next-cli-build/server/app/api/cli-tools/forge-settings/route.js.nft.json +1 -1
  153. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +2 -2
  154. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js.nft.json +1 -1
  155. package/app/.next-cli-build/server/app/api/cli-tools/hermes-profiles/route.js +45 -0
  156. package/app/.next-cli-build/server/app/api/cli-tools/hermes-profiles/route.js.nft.json +1 -0
  157. package/app/.next-cli-build/server/app/api/cli-tools/hermes-profiles/route_client-reference-manifest.js +1 -0
  158. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +1 -25
  159. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  160. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +3 -3
  161. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  162. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  163. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  164. package/app/.next-cli-build/server/app/api/cli-tools/omp-settings/route.js +3 -3
  165. package/app/.next-cli-build/server/app/api/cli-tools/omp-settings/route.js.nft.json +1 -1
  166. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  167. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  168. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
  169. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  170. package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/route.js +2 -2
  171. package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/route.js.nft.json +1 -1
  172. package/app/.next-cli-build/server/app/api/cli-tools/smelt-settings/route.js +2 -2
  173. package/app/.next-cli-build/server/app/api/cli-tools/smelt-settings/route.js.nft.json +1 -1
  174. package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  175. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  176. package/app/.next-cli-build/server/app/api/combos/presets/route.js +1 -1
  177. package/app/.next-cli-build/server/app/api/combos/presets/route.js.nft.json +1 -1
  178. package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  179. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  180. package/app/.next-cli-build/server/app/api/headroom/extras/route.js +1 -1
  181. package/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
  182. package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
  183. package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
  184. package/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
  185. package/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
  186. package/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
  187. package/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
  188. package/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
  189. package/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
  190. package/app/.next-cli-build/server/app/api/headroom/stop/route.js +1 -1
  191. package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
  192. package/app/.next-cli-build/server/app/api/health/route.js +1 -1
  193. package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  194. package/app/.next-cli-build/server/app/api/init/route.js +1 -1
  195. package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  196. package/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  197. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  198. package/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  199. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  200. package/app/.next-cli-build/server/app/api/locale/route.js +1 -1
  201. package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  202. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +2 -2
  203. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  204. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +2 -2
  205. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  206. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  207. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  208. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  209. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  210. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  211. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  212. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  213. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  214. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  215. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  216. package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  217. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  218. package/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
  219. package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  220. package/app/.next-cli-build/server/app/api/models/catalog-sync/route.js +1 -1
  221. package/app/.next-cli-build/server/app/api/models/catalog-sync/route.js.nft.json +1 -1
  222. package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  223. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  224. package/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  225. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  226. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  227. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  228. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  229. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  230. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  231. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  232. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
  233. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
  234. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  235. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  236. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  237. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  238. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  239. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  240. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  241. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  242. package/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js +1 -1
  243. package/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js.nft.json +1 -1
  244. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  245. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  246. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js +1 -1
  247. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
  248. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  249. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  250. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  251. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  252. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js +1 -1
  253. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
  254. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  255. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  256. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  257. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  258. package/app/.next-cli-build/server/app/api/oauth/zed/auto-import/route.js +2 -2
  259. package/app/.next-cli-build/server/app/api/oauth/zed/auto-import/route.js.nft.json +1 -1
  260. package/app/.next-cli-build/server/app/api/oauth/zed/import/route.js +1 -1
  261. package/app/.next-cli-build/server/app/api/oauth/zed/import/route.js.nft.json +1 -1
  262. package/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  263. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  264. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  265. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  266. package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  267. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  268. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +2 -2
  269. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  270. package/app/.next-cli-build/server/app/api/providers/[id]/gcp-projects/route.js +1 -1
  271. package/app/.next-cli-build/server/app/api/providers/[id]/gcp-projects/route.js.nft.json +1 -1
  272. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  273. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  274. package/app/.next-cli-build/server/app/api/providers/[id]/overrides/route.js +1 -1
  275. package/app/.next-cli-build/server/app/api/providers/[id]/overrides/route.js.nft.json +1 -1
  276. package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  277. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  278. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  279. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  280. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  281. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  282. package/app/.next-cli-build/server/app/api/providers/bulk/route.js +1 -1
  283. package/app/.next-cli-build/server/app/api/providers/bulk/route.js.nft.json +1 -1
  284. package/app/.next-cli-build/server/app/api/providers/circuit-breakers/[name]/reset/route.js +1 -1
  285. package/app/.next-cli-build/server/app/api/providers/circuit-breakers/[name]/reset/route.js.nft.json +1 -1
  286. package/app/.next-cli-build/server/app/api/providers/circuit-breakers/route.js +1 -1
  287. package/app/.next-cli-build/server/app/api/providers/circuit-breakers/route.js.nft.json +1 -1
  288. package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  289. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  290. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
  291. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  292. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  293. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  294. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +2 -2
  295. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  296. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  297. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  298. package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  299. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  300. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/fitness/clear/route.js +1 -1
  301. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/fitness/clear/route.js.nft.json +1 -1
  302. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
  303. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  304. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  305. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  306. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +3 -3
  307. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  308. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +3 -3
  309. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  310. package/app/.next-cli-build/server/app/api/proxy-pools/fitness/clear-all/route.js +1 -1
  311. package/app/.next-cli-build/server/app/api/proxy-pools/fitness/clear-all/route.js.nft.json +1 -1
  312. package/app/.next-cli-build/server/app/api/proxy-pools/fitness/route.js +1 -1
  313. package/app/.next-cli-build/server/app/api/proxy-pools/fitness/route.js.nft.json +1 -1
  314. package/app/.next-cli-build/server/app/api/proxy-pools/netlify-deploy/route.js +68 -0
  315. package/app/.next-cli-build/server/app/api/proxy-pools/netlify-deploy/route.js.nft.json +1 -0
  316. package/app/.next-cli-build/server/app/api/proxy-pools/netlify-deploy/route_client-reference-manifest.js +1 -0
  317. package/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
  318. package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  319. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +3 -3
  320. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  321. package/app/.next-cli-build/server/app/api/pxpipe/health/route.js +2 -2
  322. package/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
  323. package/app/.next-cli-build/server/app/api/pxpipe/install/route.js +2 -2
  324. package/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
  325. package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js +2 -2
  326. package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js.nft.json +1 -1
  327. package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js +2 -2
  328. package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
  329. package/app/.next-cli-build/server/app/api/pxpipe/start/route.js +2 -2
  330. package/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
  331. package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js +2 -2
  332. package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
  333. package/app/.next-cli-build/server/app/api/pxpipe/status/route.js +2 -2
  334. package/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
  335. package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js +2 -2
  336. package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
  337. package/app/.next-cli-build/server/app/api/ready/route.js +1 -1
  338. package/app/.next-cli-build/server/app/api/ready/route.js.nft.json +1 -1
  339. package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  340. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  341. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  342. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  343. package/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
  344. package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  345. package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  346. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  347. package/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
  348. package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  349. package/app/.next-cli-build/server/app/api/tags/route.js +1 -1
  350. package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  351. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  352. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  353. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
  354. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  355. package/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
  356. package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  357. package/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
  358. package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  359. package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  360. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  361. package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  362. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  363. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
  364. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  365. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
  366. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  367. package/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
  368. package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  369. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
  370. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  371. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  372. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  373. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  374. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  375. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +3 -3
  376. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  377. package/app/.next-cli-build/server/app/api/usage/[connectionId]/claude-reset/route.js +1 -1
  378. package/app/.next-cli-build/server/app/api/usage/[connectionId]/claude-reset/route.js.nft.json +1 -1
  379. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +1 -1
  380. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
  381. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  382. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  383. package/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  384. package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  385. package/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
  386. package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  387. package/app/.next-cli-build/server/app/api/usage/logs/route.js +1 -1
  388. package/app/.next-cli-build/server/app/api/usage/logs/route.js.nft.json +1 -1
  389. package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  390. package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  391. package/app/.next-cli-build/server/app/api/usage/request-details/[id]/route.js +1 -1
  392. package/app/.next-cli-build/server/app/api/usage/request-details/[id]/route.js.nft.json +1 -1
  393. package/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  394. package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  395. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  396. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  397. package/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  398. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  399. package/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
  400. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  401. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  402. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  403. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  404. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  405. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  406. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  407. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  408. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  409. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  410. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  411. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  412. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  413. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +2 -2
  414. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  415. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  416. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  417. package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  418. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  419. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
  420. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  421. package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  422. package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  423. package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  424. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  425. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  426. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  427. package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  428. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  429. package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  430. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  431. package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  432. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  433. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -1
  434. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js.nft.json +1 -1
  435. package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -1
  436. package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js.nft.json +1 -1
  437. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -1
  438. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js.nft.json +1 -1
  439. package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -1
  440. package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
  441. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  442. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  443. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  444. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  445. package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  446. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  447. package/app/.next-cli-build/server/app/api/version/route.js +1 -1
  448. package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  449. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  450. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  451. package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  452. package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  453. package/app/.next-cli-build/server/app/callback/page.js +2 -2
  454. package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  455. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  456. package/app/.next-cli-build/server/app/callback.html +1 -1
  457. package/app/.next-cli-build/server/app/callback.rsc +5 -5
  458. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +5 -5
  459. package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  460. package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +5 -5
  461. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +3 -3
  462. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  463. package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  464. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  465. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +7 -7
  466. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  467. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  468. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  469. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  470. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +7 -7
  471. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  472. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +5 -5
  473. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +3 -3
  474. package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  475. package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +8 -8
  476. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  477. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  478. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  479. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  480. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +8 -8
  481. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  482. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +5 -5
  483. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +3 -3
  484. package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  485. package/app/.next-cli-build/server/app/dashboard/combos.rsc +7 -7
  486. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  487. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  488. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  489. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  490. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +7 -7
  491. package/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  492. package/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +5 -5
  493. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +3 -3
  494. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  495. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +8 -8
  496. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  497. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  498. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  499. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  500. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +8 -8
  501. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  502. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +5 -5
  503. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +3 -3
  504. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  505. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +7 -7
  506. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  507. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  508. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  509. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  510. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  511. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +7 -7
  512. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  513. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +5 -5
  514. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +3 -3
  515. package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  516. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +7 -7
  517. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  518. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  519. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  520. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  521. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +7 -7
  522. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  523. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +5 -5
  524. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +3 -3
  525. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  526. package/app/.next-cli-build/server/app/dashboard/profile.rsc +7 -7
  527. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  528. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  529. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  530. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  531. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +7 -7
  532. package/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  533. package/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +5 -5
  534. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +3 -3
  535. package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  536. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +7 -7
  537. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  538. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  539. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  540. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  541. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  542. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +7 -7
  543. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  544. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +5 -5
  545. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +3 -3
  546. package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  547. package/app/.next-cli-build/server/app/dashboard/providers.rsc +7 -7
  548. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  549. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  550. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  551. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  552. package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +7 -7
  553. package/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  554. package/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +5 -5
  555. package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +3 -3
  556. package/app/.next-cli-build/server/app/dashboard/proxy-fitness.html +1 -1
  557. package/app/.next-cli-build/server/app/dashboard/proxy-fitness.rsc +7 -7
  558. package/app/.next-cli-build/server/app/dashboard/proxy-fitness.segments/!KGRhc2hib2FyZCk/dashboard/proxy-fitness/__PAGE__.segment.rsc +2 -2
  559. package/app/.next-cli-build/server/app/dashboard/proxy-fitness.segments/!KGRhc2hib2FyZCk/dashboard/proxy-fitness.segment.rsc +1 -1
  560. package/app/.next-cli-build/server/app/dashboard/proxy-fitness.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  561. package/app/.next-cli-build/server/app/dashboard/proxy-fitness.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  562. package/app/.next-cli-build/server/app/dashboard/proxy-fitness.segments/_full.segment.rsc +7 -7
  563. package/app/.next-cli-build/server/app/dashboard/proxy-fitness.segments/_head.segment.rsc +1 -1
  564. package/app/.next-cli-build/server/app/dashboard/proxy-fitness.segments/_index.segment.rsc +5 -5
  565. package/app/.next-cli-build/server/app/dashboard/proxy-fitness.segments/_tree.segment.rsc +3 -3
  566. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  567. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +7 -7
  568. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  569. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  570. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  571. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  572. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +7 -7
  573. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  574. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +5 -5
  575. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +3 -3
  576. package/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
  577. package/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +7 -7
  578. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +2 -2
  579. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe.segment.rsc +1 -1
  580. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  581. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  582. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +7 -7
  583. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_head.segment.rsc +1 -1
  584. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_index.segment.rsc +5 -5
  585. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +3 -3
  586. package/app/.next-cli-build/server/app/dashboard/quota.html +1 -1
  587. package/app/.next-cli-build/server/app/dashboard/quota.rsc +10 -10
  588. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +4 -4
  589. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  590. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  591. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  592. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +10 -10
  593. package/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  594. package/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +5 -5
  595. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +3 -3
  596. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
  597. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  598. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  599. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  600. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +5 -5
  601. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +5 -5
  602. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  603. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +5 -5
  604. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +3 -3
  605. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  606. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  607. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  608. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  609. package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  610. package/app/.next-cli-build/server/app/dashboard/skills.rsc +7 -7
  611. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
  612. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
  613. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  614. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  615. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +7 -7
  616. package/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
  617. package/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +5 -5
  618. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +3 -3
  619. package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  620. package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +7 -7
  621. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +2 -2
  622. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +1 -1
  623. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  624. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  625. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +7 -7
  626. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +1 -1
  627. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +5 -5
  628. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +3 -3
  629. package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  630. package/app/.next-cli-build/server/app/dashboard/translator.rsc +7 -7
  631. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  632. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  633. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  634. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  635. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +7 -7
  636. package/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  637. package/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +5 -5
  638. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +3 -3
  639. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  640. package/app/.next-cli-build/server/app/dashboard/usage.rsc +7 -7
  641. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  642. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  643. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  644. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  645. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +7 -7
  646. package/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  647. package/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +5 -5
  648. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +3 -3
  649. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  650. package/app/.next-cli-build/server/app/dashboard.rsc +7 -7
  651. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  652. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  653. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  654. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +7 -7
  655. package/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  656. package/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +5 -5
  657. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +3 -3
  658. package/app/.next-cli-build/server/app/favicon.ico/route.js +1 -1
  659. package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
  660. package/app/.next-cli-build/server/app/landing/page.js +2 -2
  661. package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  662. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  663. package/app/.next-cli-build/server/app/landing.html +1 -1
  664. package/app/.next-cli-build/server/app/landing.rsc +6 -6
  665. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +6 -6
  666. package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  667. package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +5 -5
  668. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +3 -3
  669. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
  670. package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  671. package/app/.next-cli-build/server/app/login/page.js +2 -2
  672. package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  673. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  674. package/app/.next-cli-build/server/app/login.html +1 -1
  675. package/app/.next-cli-build/server/app/login.rsc +6 -6
  676. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +6 -6
  677. package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  678. package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +5 -5
  679. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +3 -3
  680. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  681. package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  682. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +1 -1
  683. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  684. package/app/.next-cli-build/server/app/masuk/page.js +2 -2
  685. package/app/.next-cli-build/server/app/masuk/page.js.nft.json +1 -1
  686. package/app/.next-cli-build/server/app/masuk/page_client-reference-manifest.js +1 -1
  687. package/app/.next-cli-build/server/app-paths-manifest.json +16 -14
  688. package/app/.next-cli-build/server/chunks/1253.js +1 -1
  689. package/app/.next-cli-build/server/chunks/{6415.js → 1328.js} +2 -2
  690. package/app/.next-cli-build/server/chunks/1685.js +3 -3
  691. package/app/.next-cli-build/server/chunks/1691.js +1 -0
  692. package/app/.next-cli-build/server/chunks/1693.js +8 -8
  693. package/app/.next-cli-build/server/chunks/2098.js +7 -0
  694. package/app/.next-cli-build/server/chunks/224.js +1 -1
  695. package/app/.next-cli-build/server/chunks/2247.js +46 -0
  696. package/app/.next-cli-build/server/chunks/228.js +1 -1
  697. package/app/.next-cli-build/server/chunks/2365.js +1 -1
  698. package/app/.next-cli-build/server/chunks/2445.js +1 -1
  699. package/app/.next-cli-build/server/chunks/2525.js +1 -0
  700. package/app/.next-cli-build/server/chunks/2557.js +6 -6
  701. package/app/.next-cli-build/server/chunks/2732.js +1 -1
  702. package/app/.next-cli-build/server/chunks/2741.js +29 -21
  703. package/app/.next-cli-build/server/chunks/2764.js +1 -0
  704. package/app/.next-cli-build/server/chunks/2994.js +1 -1
  705. package/app/.next-cli-build/server/chunks/3059.js +7 -0
  706. package/app/.next-cli-build/server/chunks/3280.js +7 -0
  707. package/app/.next-cli-build/server/chunks/3519.js +1 -1
  708. package/app/.next-cli-build/server/chunks/3650.js +1 -0
  709. package/app/.next-cli-build/server/chunks/3712.js +1 -1
  710. package/app/.next-cli-build/server/chunks/3750.js +1 -1
  711. package/app/.next-cli-build/server/chunks/4043.js +1 -1
  712. package/app/.next-cli-build/server/chunks/4105.js +1 -1
  713. package/app/.next-cli-build/server/chunks/4121.js +1 -1
  714. package/app/.next-cli-build/server/chunks/4574.js +10 -10
  715. package/app/.next-cli-build/server/chunks/4836.js +1 -1
  716. package/app/.next-cli-build/server/chunks/4855.js +1 -0
  717. package/app/.next-cli-build/server/chunks/506.js +1 -1
  718. package/app/.next-cli-build/server/chunks/5302.js +1 -0
  719. package/app/.next-cli-build/server/chunks/5376.js +1 -0
  720. package/app/.next-cli-build/server/chunks/634.js +1 -0
  721. package/app/.next-cli-build/server/chunks/6385.js +1 -1
  722. package/app/.next-cli-build/server/chunks/6723.js +1 -1
  723. package/app/.next-cli-build/server/chunks/7010.js +1 -1
  724. package/app/.next-cli-build/server/chunks/7074.js +2 -2
  725. package/app/.next-cli-build/server/chunks/7104.js +1 -1
  726. package/app/.next-cli-build/server/chunks/7656.js +2 -2
  727. package/app/.next-cli-build/server/chunks/7863.js +1 -1
  728. package/app/.next-cli-build/server/chunks/7950.js +1 -1
  729. package/app/.next-cli-build/server/chunks/8104.js +1 -0
  730. package/app/.next-cli-build/server/chunks/8413.js +1 -1
  731. package/app/.next-cli-build/server/chunks/{4004.js → 8729.js} +2 -2
  732. package/app/.next-cli-build/server/chunks/88.js +1 -1
  733. package/app/.next-cli-build/server/chunks/883.js +1 -1
  734. package/app/.next-cli-build/server/chunks/9404.js +1 -1
  735. package/app/.next-cli-build/server/chunks/9462.js +1 -1
  736. package/app/.next-cli-build/server/chunks/9536.js +1 -1
  737. package/app/.next-cli-build/server/chunks/9813.js +1 -1
  738. package/app/.next-cli-build/server/chunks/9974.js +1 -1
  739. package/app/.next-cli-build/server/chunks/9984.js +1 -0
  740. package/app/.next-cli-build/server/instrumentation.js +1 -1
  741. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  742. package/app/.next-cli-build/server/middleware-react-loadable-manifest.js +1 -1
  743. package/app/.next-cli-build/server/middleware.js +1 -1
  744. package/app/.next-cli-build/server/pages/404.html +1 -1
  745. package/app/.next-cli-build/server/pages/500.html +1 -1
  746. package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
  747. package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
  748. package/app/.next-cli-build/static/DsIP1InInSX1jxI1CwKX9/_buildManifest.js +1 -0
  749. package/app/.next-cli-build/static/chunks/2884.1ee037d127ecd60f.js +1 -0
  750. package/app/.next-cli-build/static/chunks/3257.e1e47662cfe81b1a.js +1 -0
  751. package/app/.next-cli-build/static/chunks/3657.c58fec9fff675721.js +1 -0
  752. package/app/.next-cli-build/static/chunks/{3809.780748bcfda54fd7.js → 3809.48b8b386bff490fa.js} +1 -1
  753. package/app/.next-cli-build/static/chunks/4385-24249afd9e192496.js +1 -0
  754. package/app/.next-cli-build/static/chunks/{5882-ad13c7cf39f40b42.js → 5882-1249cbe42852fd96.js} +28 -20
  755. package/app/.next-cli-build/static/chunks/736-5c250610e5716d32.js +1 -0
  756. package/app/.next-cli-build/static/chunks/7811.b41ad2c055232420.js +7 -0
  757. package/app/.next-cli-build/static/chunks/8914-12040f56b4d23373.js +27 -0
  758. package/app/.next-cli-build/static/chunks/{9131-ca795c21a2cb139e.js → 9131-d37a1bf502688d4e.js} +1 -1
  759. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-db17236a5b2183ab.js +1 -0
  760. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-7a18b45a954e3c68.js +67 -0
  761. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/{page-5c2b1dad82e86562.js → page-56e6b4ed4f8c5bd1.js} +1 -1
  762. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-a6d3f510934cc6a5.js +27 -0
  763. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/proxy-pools/page-176606799cc947aa.js +4 -0
  764. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-85770718a5ce696c.js +1 -0
  765. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-4f70cffad890fc5b.js +1 -0
  766. package/app/.next-cli-build/static/chunks/app/_global-error/page-e678b3a246de17ed.js +1 -0
  767. package/app/.next-cli-build/static/chunks/app/api/auth/check/route-e678b3a246de17ed.js +1 -0
  768. package/app/.next-cli-build/static/chunks/app/api/auth/login/route-e678b3a246de17ed.js +1 -0
  769. package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-e678b3a246de17ed.js +1 -0
  770. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-e678b3a246de17ed.js +1 -0
  771. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-e678b3a246de17ed.js +1 -0
  772. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-e678b3a246de17ed.js +1 -0
  773. package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-e678b3a246de17ed.js +1 -0
  774. package/app/.next-cli-build/static/chunks/app/api/auth/status/route-e678b3a246de17ed.js +1 -0
  775. package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-e678b3a246de17ed.js +1 -0
  776. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-e678b3a246de17ed.js +1 -0
  777. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-e678b3a246de17ed.js +1 -0
  778. package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-e678b3a246de17ed.js +1 -0
  779. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-e678b3a246de17ed.js +1 -0
  780. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codewhale-settings/route-e678b3a246de17ed.js +1 -0
  781. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-profiles/route-e678b3a246de17ed.js +1 -0
  782. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-e678b3a246de17ed.js +1 -0
  783. package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-e678b3a246de17ed.js +1 -0
  784. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-e678b3a246de17ed.js +1 -0
  785. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-e678b3a246de17ed.js +1 -0
  786. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-e678b3a246de17ed.js +1 -0
  787. package/app/.next-cli-build/static/chunks/app/api/cli-tools/crush-settings/route-e678b3a246de17ed.js +1 -0
  788. package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-e678b3a246de17ed.js +1 -0
  789. package/app/.next-cli-build/static/chunks/app/api/cli-tools/devin-settings/route-e678b3a246de17ed.js +1 -0
  790. package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-e678b3a246de17ed.js +1 -0
  791. package/app/.next-cli-build/static/chunks/app/api/cli-tools/forge-settings/route-e678b3a246de17ed.js +1 -0
  792. package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-build-settings/route-e678b3a246de17ed.js +1 -0
  793. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-profiles/route-e678b3a246de17ed.js +1 -0
  794. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-e678b3a246de17ed.js +1 -0
  795. package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-e678b3a246de17ed.js +1 -0
  796. package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-e678b3a246de17ed.js +1 -0
  797. package/app/.next-cli-build/static/chunks/app/api/cli-tools/omp-settings/route-e678b3a246de17ed.js +1 -0
  798. package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-e678b3a246de17ed.js +1 -0
  799. package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-e678b3a246de17ed.js +1 -0
  800. package/app/.next-cli-build/static/chunks/app/api/cli-tools/pi-settings/route-e678b3a246de17ed.js +1 -0
  801. package/app/.next-cli-build/static/chunks/app/api/cli-tools/smelt-settings/route-e678b3a246de17ed.js +1 -0
  802. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-e678b3a246de17ed.js +1 -0
  803. package/app/.next-cli-build/static/chunks/app/api/combos/presets/route-e678b3a246de17ed.js +1 -0
  804. package/app/.next-cli-build/static/chunks/app/api/combos/route-e678b3a246de17ed.js +1 -0
  805. package/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-e678b3a246de17ed.js +1 -0
  806. package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-e678b3a246de17ed.js +1 -0
  807. package/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-e678b3a246de17ed.js +1 -0
  808. package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-e678b3a246de17ed.js +1 -0
  809. package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-e678b3a246de17ed.js +1 -0
  810. package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-e678b3a246de17ed.js +1 -0
  811. package/app/.next-cli-build/static/chunks/app/api/health/route-e678b3a246de17ed.js +1 -0
  812. package/app/.next-cli-build/static/chunks/app/api/init/route-e678b3a246de17ed.js +1 -0
  813. package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-e678b3a246de17ed.js +1 -0
  814. package/app/.next-cli-build/static/chunks/app/api/keys/route-e678b3a246de17ed.js +1 -0
  815. package/app/.next-cli-build/static/chunks/app/api/locale/route-e678b3a246de17ed.js +1 -0
  816. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-e678b3a246de17ed.js +1 -0
  817. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-e678b3a246de17ed.js +1 -0
  818. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-e678b3a246de17ed.js +1 -0
  819. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-e678b3a246de17ed.js +1 -0
  820. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-e678b3a246de17ed.js +1 -0
  821. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-e678b3a246de17ed.js +1 -0
  822. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-e678b3a246de17ed.js +1 -0
  823. package/app/.next-cli-build/static/chunks/app/api/models/alias/route-e678b3a246de17ed.js +1 -0
  824. package/app/.next-cli-build/static/chunks/app/api/models/availability/route-e678b3a246de17ed.js +1 -0
  825. package/app/.next-cli-build/static/chunks/app/api/models/catalog-sync/route-e678b3a246de17ed.js +1 -0
  826. package/app/.next-cli-build/static/chunks/app/api/models/custom/route-e678b3a246de17ed.js +1 -0
  827. package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-e678b3a246de17ed.js +1 -0
  828. package/app/.next-cli-build/static/chunks/app/api/models/route-e678b3a246de17ed.js +1 -0
  829. package/app/.next-cli-build/static/chunks/app/api/models/test/route-e678b3a246de17ed.js +1 -0
  830. package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-e678b3a246de17ed.js +1 -0
  831. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-e678b3a246de17ed.js +1 -0
  832. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-e678b3a246de17ed.js +1 -0
  833. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-e678b3a246de17ed.js +1 -0
  834. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-e678b3a246de17ed.js +1 -0
  835. package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-e678b3a246de17ed.js +1 -0
  836. package/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/route-e678b3a246de17ed.js +1 -0
  837. package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-e678b3a246de17ed.js +1 -0
  838. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-e678b3a246de17ed.js +1 -0
  839. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-e678b3a246de17ed.js +1 -0
  840. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-e678b3a246de17ed.js +1 -0
  841. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-e678b3a246de17ed.js +1 -0
  842. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-e678b3a246de17ed.js +1 -0
  843. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-e678b3a246de17ed.js +1 -0
  844. package/app/.next-cli-build/static/chunks/app/api/oauth/zed/auto-import/route-e678b3a246de17ed.js +1 -0
  845. package/app/.next-cli-build/static/chunks/app/api/oauth/zed/import/route-e678b3a246de17ed.js +1 -0
  846. package/app/.next-cli-build/static/chunks/app/api/pricing/route-e678b3a246de17ed.js +1 -0
  847. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-e678b3a246de17ed.js +1 -0
  848. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-e678b3a246de17ed.js +1 -0
  849. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-e678b3a246de17ed.js +1 -0
  850. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/gcp-projects/route-e678b3a246de17ed.js +1 -0
  851. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-e678b3a246de17ed.js +1 -0
  852. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/overrides/route-e678b3a246de17ed.js +1 -0
  853. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-e678b3a246de17ed.js +1 -0
  854. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-e678b3a246de17ed.js +1 -0
  855. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-e678b3a246de17ed.js +1 -0
  856. package/app/.next-cli-build/static/chunks/app/api/providers/bulk/route-e678b3a246de17ed.js +1 -0
  857. package/app/.next-cli-build/static/chunks/app/api/providers/circuit-breakers/[name]/reset/route-e678b3a246de17ed.js +1 -0
  858. package/app/.next-cli-build/static/chunks/app/api/providers/circuit-breakers/route-e678b3a246de17ed.js +1 -0
  859. package/app/.next-cli-build/static/chunks/app/api/providers/client/route-e678b3a246de17ed.js +1 -0
  860. package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-e678b3a246de17ed.js +1 -0
  861. package/app/.next-cli-build/static/chunks/app/api/providers/route-e678b3a246de17ed.js +1 -0
  862. package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-e678b3a246de17ed.js +1 -0
  863. package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-e678b3a246de17ed.js +1 -0
  864. package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-e678b3a246de17ed.js +1 -0
  865. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/fitness/clear/route-e678b3a246de17ed.js +1 -0
  866. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-e678b3a246de17ed.js +1 -0
  867. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-e678b3a246de17ed.js +1 -0
  868. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-e678b3a246de17ed.js +1 -0
  869. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-e678b3a246de17ed.js +1 -0
  870. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/fitness/clear-all/route-e678b3a246de17ed.js +1 -0
  871. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/fitness/route-e678b3a246de17ed.js +1 -0
  872. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/netlify-deploy/route-e678b3a246de17ed.js +1 -0
  873. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-e678b3a246de17ed.js +1 -0
  874. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-e678b3a246de17ed.js +1 -0
  875. package/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-e678b3a246de17ed.js +1 -0
  876. package/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-e678b3a246de17ed.js +1 -0
  877. package/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-e678b3a246de17ed.js +1 -0
  878. package/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-e678b3a246de17ed.js +1 -0
  879. package/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-e678b3a246de17ed.js +1 -0
  880. package/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-e678b3a246de17ed.js +1 -0
  881. package/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-e678b3a246de17ed.js +1 -0
  882. package/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-e678b3a246de17ed.js +1 -0
  883. package/app/.next-cli-build/static/chunks/app/api/ready/route-e678b3a246de17ed.js +1 -0
  884. package/app/.next-cli-build/static/chunks/app/api/settings/database/route-e678b3a246de17ed.js +1 -0
  885. package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-e678b3a246de17ed.js +1 -0
  886. package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-e678b3a246de17ed.js +1 -0
  887. package/app/.next-cli-build/static/chunks/app/api/settings/route-e678b3a246de17ed.js +1 -0
  888. package/app/.next-cli-build/static/chunks/app/api/shutdown/route-e678b3a246de17ed.js +1 -0
  889. package/app/.next-cli-build/static/chunks/app/api/tags/route-e678b3a246de17ed.js +1 -0
  890. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-e678b3a246de17ed.js +1 -0
  891. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-e678b3a246de17ed.js +1 -0
  892. package/app/.next-cli-build/static/chunks/app/api/translator/load/route-e678b3a246de17ed.js +1 -0
  893. package/app/.next-cli-build/static/chunks/app/api/translator/save/route-e678b3a246de17ed.js +1 -0
  894. package/app/.next-cli-build/static/chunks/app/api/translator/send/route-e678b3a246de17ed.js +1 -0
  895. package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-e678b3a246de17ed.js +1 -0
  896. package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-e678b3a246de17ed.js +1 -0
  897. package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-e678b3a246de17ed.js +1 -0
  898. package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-e678b3a246de17ed.js +1 -0
  899. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-e678b3a246de17ed.js +1 -0
  900. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-e678b3a246de17ed.js +1 -0
  901. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-e678b3a246de17ed.js +1 -0
  902. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-e678b3a246de17ed.js +1 -0
  903. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/claude-reset/route-e678b3a246de17ed.js +1 -0
  904. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-e678b3a246de17ed.js +1 -0
  905. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-e678b3a246de17ed.js +1 -0
  906. package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-e678b3a246de17ed.js +1 -0
  907. package/app/.next-cli-build/static/chunks/app/api/usage/history/route-e678b3a246de17ed.js +1 -0
  908. package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-e678b3a246de17ed.js +1 -0
  909. package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-e678b3a246de17ed.js +1 -0
  910. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/[id]/route-e678b3a246de17ed.js +1 -0
  911. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-e678b3a246de17ed.js +1 -0
  912. package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-e678b3a246de17ed.js +1 -0
  913. package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-e678b3a246de17ed.js +1 -0
  914. package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-e678b3a246de17ed.js +1 -0
  915. package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-e678b3a246de17ed.js +1 -0
  916. package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-e678b3a246de17ed.js +1 -0
  917. package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-e678b3a246de17ed.js +1 -0
  918. package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-e678b3a246de17ed.js +1 -0
  919. package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-e678b3a246de17ed.js +1 -0
  920. package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-e678b3a246de17ed.js +1 -0
  921. package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-e678b3a246de17ed.js +1 -0
  922. package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-e678b3a246de17ed.js +1 -0
  923. package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-e678b3a246de17ed.js +1 -0
  924. package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-e678b3a246de17ed.js +1 -0
  925. package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-e678b3a246de17ed.js +1 -0
  926. package/app/.next-cli-build/static/chunks/app/api/v1/models/route-e678b3a246de17ed.js +1 -0
  927. package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-e678b3a246de17ed.js +1 -0
  928. package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-e678b3a246de17ed.js +1 -0
  929. package/app/.next-cli-build/static/chunks/app/api/v1/route-e678b3a246de17ed.js +1 -0
  930. package/app/.next-cli-build/static/chunks/app/api/v1/search/route-e678b3a246de17ed.js +1 -0
  931. package/app/.next-cli-build/static/chunks/app/api/v1/videos/[id]/route-e678b3a246de17ed.js +1 -0
  932. package/app/.next-cli-build/static/chunks/app/api/v1/videos/edits/route-e678b3a246de17ed.js +1 -0
  933. package/app/.next-cli-build/static/chunks/app/api/v1/videos/extensions/route-e678b3a246de17ed.js +1 -0
  934. package/app/.next-cli-build/static/chunks/app/api/v1/videos/generations/route-e678b3a246de17ed.js +1 -0
  935. package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-e678b3a246de17ed.js +1 -0
  936. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-e678b3a246de17ed.js +1 -0
  937. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-e678b3a246de17ed.js +1 -0
  938. package/app/.next-cli-build/static/chunks/app/api/version/route-e678b3a246de17ed.js +1 -0
  939. package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-e678b3a246de17ed.js +1 -0
  940. package/app/.next-cli-build/static/chunks/app/api/version/update/route-e678b3a246de17ed.js +1 -0
  941. package/app/.next-cli-build/static/chunks/app/landing/page-7f14f0bddc45bdc9.js +1 -0
  942. package/app/.next-cli-build/static/chunks/app/{layout-b5046cc0c299e73f.js → layout-1c5098d9c2c6039d.js} +1 -1
  943. package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-e678b3a246de17ed.js +1 -0
  944. package/app/.next-cli-build/static/chunks/app/masuk/{page-3089e3164a6e20b3.js → page-f5cec60052c94296.js} +1 -1
  945. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-e678b3a246de17ed.js +1 -0
  946. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-e678b3a246de17ed.js +1 -0
  947. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-e678b3a246de17ed.js +1 -0
  948. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-e678b3a246de17ed.js +1 -0
  949. package/app/.next-cli-build/static/chunks/{webpack-899bd95751864579.js → webpack-619acf270537f5d4.js} +1 -1
  950. package/app/.next-cli-build/static/css/918f11e454be0692.css +1 -0
  951. package/app/.next-cli-build/static/css/{3746f81686a64e69.css → 952cbb175c54324c.css} +1 -1
  952. package/app/_nm/@aws-sdk/credential-providers/dist-cjs/index.js +284 -0
  953. package/app/_nm/@aws-sdk/credential-providers/dist-cjs/loadSts-C4jOcYxJ.js +3 -0
  954. package/app/_nm/@aws-sdk/credential-providers/package.json +85 -0
  955. package/app/package.json +4 -4
  956. package/app/public/providers/bedrock-xai.png +0 -0
  957. package/app/public/providers/bedrock.png +0 -0
  958. package/app/public/providers/nous.png +0 -0
  959. package/app/server.js +1 -1
  960. package/app/src/app/(dashboard)/dashboard/cli-tools/components/ClaudeToolCard.js +40 -11
  961. package/app/src/app/(dashboard)/dashboard/cli-tools/components/HermesToolCard.js +316 -92
  962. package/app/src/app/(dashboard)/dashboard/combos/page.js +1 -1
  963. package/app/src/app/(dashboard)/dashboard/endpoint/EndpointPageClient.js +23 -21
  964. package/app/src/app/(dashboard)/dashboard/media-providers/[kind]/[id]/components/SttExampleCard.js +77 -1
  965. package/app/src/app/(dashboard)/dashboard/media-providers/[kind]/[id]/components/TtsExampleCard.js +17 -2
  966. package/app/src/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +1 -1
  967. package/app/src/app/(dashboard)/dashboard/providers/[id]/AddApiKeyModal.js +88 -8
  968. package/app/src/app/(dashboard)/dashboard/providers/[id]/AutoPingScheduleModal.js +189 -0
  969. package/app/src/app/(dashboard)/dashboard/providers/[id]/ConnectionRow.js +72 -22
  970. package/app/src/app/(dashboard)/dashboard/providers/[id]/ModelRow.js +43 -41
  971. package/app/src/app/(dashboard)/dashboard/providers/[id]/page.js +27 -6
  972. package/app/src/app/(dashboard)/dashboard/proxy-pools/RelayDeployModal.js +109 -0
  973. package/app/src/app/(dashboard)/dashboard/proxy-pools/page.js +144 -167
  974. package/app/src/app/(dashboard)/dashboard/usage/components/ProviderLimits/QuotaTable.js +39 -8
  975. package/app/src/app/(dashboard)/dashboard/usage/components/ProviderLimits/index.js +32 -5
  976. package/app/src/app/(dashboard)/dashboard/usage/components/ProviderLimits/utils.js +79 -2
  977. package/app/src/app/api/cli-tools/hermes-profiles/route.js +17 -0
  978. package/app/src/app/api/cli-tools/hermes-settings/hermesProfiles.js +136 -0
  979. package/app/src/app/api/cli-tools/hermes-settings/hermesYaml.js +265 -0
  980. package/app/src/app/api/cli-tools/hermes-settings/route.js +270 -149
  981. package/app/src/app/api/oauth/[provider]/[action]/route.js +2 -1
  982. package/app/src/app/api/providers/[id]/models/route.js +98 -16
  983. package/app/src/app/api/providers/[id]/route.js +14 -17
  984. package/app/src/app/api/providers/[id]/test/oauthTestConfig.js +152 -0
  985. package/app/src/app/api/providers/[id]/test/testUtils.js +65 -152
  986. package/app/src/app/api/providers/route.js +12 -7
  987. package/app/src/app/api/providers/suggested-models/filters.js +30 -3
  988. package/app/src/app/api/providers/suggested-models/route.js +3 -1
  989. package/app/src/app/api/providers/validate/route.js +30 -1
  990. package/app/src/app/api/proxy-pools/[id]/route.js +1 -1
  991. package/app/src/app/api/proxy-pools/[id]/test/route.js +1 -1
  992. package/app/src/app/api/proxy-pools/netlify-deploy/route.js +146 -0
  993. package/app/src/app/api/proxy-pools/route.js +1 -1
  994. package/app/src/lib/db/repos/nodesRepo.js +5 -0
  995. package/app/src/lib/db/repos/usageRepo.js +14 -10
  996. package/app/src/lib/network/connectionProxy.js +2 -2
  997. package/app/src/lib/network/netlifyRelay.js +212 -0
  998. package/app/src/lib/oauth/constants/oauth.js +12 -0
  999. package/app/src/lib/oauth/providers/index.js +8 -0
  1000. package/app/src/lib/oauth/providers/minimax-code-global.js +4 -0
  1001. package/app/src/lib/oauth/providers/minimax-code-shared.js +149 -0
  1002. package/app/src/lib/oauth/providers/minimax-code.js +4 -0
  1003. package/app/src/lib/oauth/providers/nous.js +110 -0
  1004. package/app/src/lib/providerConnectionResponse.js +16 -0
  1005. package/app/src/mitm/server.js +10 -10
  1006. package/app/src/shared/components/Button.js +4 -3
  1007. package/app/src/shared/components/ComboFormModal.js +8 -0
  1008. package/app/src/shared/components/EditConnectionModal.js +83 -2
  1009. package/app/src/shared/components/Header.js +9 -7
  1010. package/app/src/shared/components/ModelSelectModal.js +281 -59
  1011. package/app/src/shared/components/OAuthModal.js +9 -1
  1012. package/app/src/shared/components/Sidebar.js +10 -8
  1013. package/app/src/shared/components/Tooltip.js +33 -15
  1014. package/app/src/shared/components/UsageStats.js +2 -2
  1015. package/app/src/shared/constants/cliTools.js +22 -9
  1016. package/app/src/shared/constants/config.js +2 -2
  1017. package/app/src/shared/constants/providers.js +6 -0
  1018. package/app/src/shared/constants/ttsProviders.js +6 -0
  1019. package/app/src/shared/services/initializeApp.js +6 -2
  1020. package/app/src/shared/services/quotaAutoPing.js +57 -25
  1021. package/app/src/shared/services/quotaPingSchedule.js +158 -0
  1022. package/app/src/shared/utils/connectionStatus.js +23 -0
  1023. package/app/src/shared/utils/index.js +1 -0
  1024. package/app/src/shared/utils/modelSearchFilter.js +184 -0
  1025. package/app/src/shared/utils/providerIcon.js +4 -0
  1026. package/app/src/sse/handlers/imageGeneration.js +41 -3
  1027. package/app/src/sse/services/allowedModels.js +45 -15
  1028. package/app/src/sse/services/antigravityQuota.js +201 -2
  1029. package/app/src/sse/services/auth.js +26 -8
  1030. package/app/src/sse/services/tokenRefresh.js +5 -0
  1031. package/cli.js +16 -0
  1032. package/package.json +1 -1
  1033. package/src/cli/api/client.js +17 -4
  1034. package/src/cli/commands/connect.js +156 -16
  1035. package/src/cli/commands/connectTools.js +228 -8
  1036. package/src/cli/commands/show.js +101 -0
  1037. package/src/cli/menus/cliTools.js +116 -17
  1038. package/src/cli/menus/combos.js +9 -2
  1039. package/src/cli/menus/providers.js +8 -0
  1040. package/src/cli/utils/comboModelId.js +10 -0
  1041. package/app/.next-cli-build/server/chunks/3180.js +0 -1
  1042. package/app/.next-cli-build/server/chunks/3811.js +0 -1
  1043. package/app/.next-cli-build/server/chunks/3946.js +0 -1
  1044. package/app/.next-cli-build/server/chunks/4684.js +0 -1
  1045. package/app/.next-cli-build/server/chunks/499.js +0 -7
  1046. package/app/.next-cli-build/server/chunks/5296.js +0 -1
  1047. package/app/.next-cli-build/server/chunks/5300.js +0 -1
  1048. package/app/.next-cli-build/server/chunks/5538.js +0 -1
  1049. package/app/.next-cli-build/server/chunks/5598.js +0 -1
  1050. package/app/.next-cli-build/server/chunks/7901.js +0 -1
  1051. package/app/.next-cli-build/server/chunks/8156.js +0 -1
  1052. package/app/.next-cli-build/server/chunks/9306.js +0 -1
  1053. package/app/.next-cli-build/server/chunks/9614.js +0 -7
  1054. package/app/.next-cli-build/server/chunks/9987.js +0 -1
  1055. package/app/.next-cli-build/static/chunks/2884.c2828a385eb15374.js +0 -1
  1056. package/app/.next-cli-build/static/chunks/3257.d85ea7c5fb00c4ad.js +0 -1
  1057. package/app/.next-cli-build/static/chunks/3657.512c2a8e4d8a3378.js +0 -1
  1058. package/app/.next-cli-build/static/chunks/4385-b922404bb5a03104.js +0 -1
  1059. package/app/.next-cli-build/static/chunks/736-496a2f3435a2f07b.js +0 -1
  1060. package/app/.next-cli-build/static/chunks/8914-3f7d0c3f2382c240.js +0 -27
  1061. package/app/.next-cli-build/static/chunks/9078.179627baa7e71262.js +0 -7
  1062. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-dda2267e5dd24d67.js +0 -1
  1063. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-6da24c5f5e4a614b.js +0 -63
  1064. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-0cec5002922a16be.js +0 -27
  1065. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/proxy-pools/page-3d608f55f979c3a3.js +0 -4
  1066. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-a9d4f81863886751.js +0 -1
  1067. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-4df24bf4c7a1dd93.js +0 -1
  1068. package/app/.next-cli-build/static/chunks/app/_global-error/page-f2541f892f6e4aef.js +0 -1
  1069. package/app/.next-cli-build/static/chunks/app/api/auth/check/route-f2541f892f6e4aef.js +0 -1
  1070. package/app/.next-cli-build/static/chunks/app/api/auth/login/route-f2541f892f6e4aef.js +0 -1
  1071. package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-f2541f892f6e4aef.js +0 -1
  1072. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-f2541f892f6e4aef.js +0 -1
  1073. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-f2541f892f6e4aef.js +0 -1
  1074. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-f2541f892f6e4aef.js +0 -1
  1075. package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-f2541f892f6e4aef.js +0 -1
  1076. package/app/.next-cli-build/static/chunks/app/api/auth/status/route-f2541f892f6e4aef.js +0 -1
  1077. package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-f2541f892f6e4aef.js +0 -1
  1078. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-f2541f892f6e4aef.js +0 -1
  1079. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-f2541f892f6e4aef.js +0 -1
  1080. package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-f2541f892f6e4aef.js +0 -1
  1081. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-f2541f892f6e4aef.js +0 -1
  1082. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codewhale-settings/route-f2541f892f6e4aef.js +0 -1
  1083. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-profiles/route-f2541f892f6e4aef.js +0 -1
  1084. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-f2541f892f6e4aef.js +0 -1
  1085. package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-f2541f892f6e4aef.js +0 -1
  1086. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-f2541f892f6e4aef.js +0 -1
  1087. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-f2541f892f6e4aef.js +0 -1
  1088. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-f2541f892f6e4aef.js +0 -1
  1089. package/app/.next-cli-build/static/chunks/app/api/cli-tools/crush-settings/route-f2541f892f6e4aef.js +0 -1
  1090. package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-f2541f892f6e4aef.js +0 -1
  1091. package/app/.next-cli-build/static/chunks/app/api/cli-tools/devin-settings/route-f2541f892f6e4aef.js +0 -1
  1092. package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-f2541f892f6e4aef.js +0 -1
  1093. package/app/.next-cli-build/static/chunks/app/api/cli-tools/forge-settings/route-f2541f892f6e4aef.js +0 -1
  1094. package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-build-settings/route-f2541f892f6e4aef.js +0 -1
  1095. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-f2541f892f6e4aef.js +0 -1
  1096. package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-f2541f892f6e4aef.js +0 -1
  1097. package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-f2541f892f6e4aef.js +0 -1
  1098. package/app/.next-cli-build/static/chunks/app/api/cli-tools/omp-settings/route-f2541f892f6e4aef.js +0 -1
  1099. package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-f2541f892f6e4aef.js +0 -1
  1100. package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-f2541f892f6e4aef.js +0 -1
  1101. package/app/.next-cli-build/static/chunks/app/api/cli-tools/pi-settings/route-f2541f892f6e4aef.js +0 -1
  1102. package/app/.next-cli-build/static/chunks/app/api/cli-tools/smelt-settings/route-f2541f892f6e4aef.js +0 -1
  1103. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-f2541f892f6e4aef.js +0 -1
  1104. package/app/.next-cli-build/static/chunks/app/api/combos/presets/route-f2541f892f6e4aef.js +0 -1
  1105. package/app/.next-cli-build/static/chunks/app/api/combos/route-f2541f892f6e4aef.js +0 -1
  1106. package/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-f2541f892f6e4aef.js +0 -1
  1107. package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-f2541f892f6e4aef.js +0 -1
  1108. package/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-f2541f892f6e4aef.js +0 -1
  1109. package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-f2541f892f6e4aef.js +0 -1
  1110. package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-f2541f892f6e4aef.js +0 -1
  1111. package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-f2541f892f6e4aef.js +0 -1
  1112. package/app/.next-cli-build/static/chunks/app/api/health/route-f2541f892f6e4aef.js +0 -1
  1113. package/app/.next-cli-build/static/chunks/app/api/init/route-f2541f892f6e4aef.js +0 -1
  1114. package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-f2541f892f6e4aef.js +0 -1
  1115. package/app/.next-cli-build/static/chunks/app/api/keys/route-f2541f892f6e4aef.js +0 -1
  1116. package/app/.next-cli-build/static/chunks/app/api/locale/route-f2541f892f6e4aef.js +0 -1
  1117. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-f2541f892f6e4aef.js +0 -1
  1118. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-f2541f892f6e4aef.js +0 -1
  1119. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-f2541f892f6e4aef.js +0 -1
  1120. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-f2541f892f6e4aef.js +0 -1
  1121. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-f2541f892f6e4aef.js +0 -1
  1122. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-f2541f892f6e4aef.js +0 -1
  1123. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-f2541f892f6e4aef.js +0 -1
  1124. package/app/.next-cli-build/static/chunks/app/api/models/alias/route-f2541f892f6e4aef.js +0 -1
  1125. package/app/.next-cli-build/static/chunks/app/api/models/availability/route-f2541f892f6e4aef.js +0 -1
  1126. package/app/.next-cli-build/static/chunks/app/api/models/catalog-sync/route-f2541f892f6e4aef.js +0 -1
  1127. package/app/.next-cli-build/static/chunks/app/api/models/custom/route-f2541f892f6e4aef.js +0 -1
  1128. package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-f2541f892f6e4aef.js +0 -1
  1129. package/app/.next-cli-build/static/chunks/app/api/models/route-f2541f892f6e4aef.js +0 -1
  1130. package/app/.next-cli-build/static/chunks/app/api/models/test/route-f2541f892f6e4aef.js +0 -1
  1131. package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-f2541f892f6e4aef.js +0 -1
  1132. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-f2541f892f6e4aef.js +0 -1
  1133. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-f2541f892f6e4aef.js +0 -1
  1134. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-f2541f892f6e4aef.js +0 -1
  1135. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-f2541f892f6e4aef.js +0 -1
  1136. package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-f2541f892f6e4aef.js +0 -1
  1137. package/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/route-f2541f892f6e4aef.js +0 -1
  1138. package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-f2541f892f6e4aef.js +0 -1
  1139. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-f2541f892f6e4aef.js +0 -1
  1140. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-f2541f892f6e4aef.js +0 -1
  1141. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-f2541f892f6e4aef.js +0 -1
  1142. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-f2541f892f6e4aef.js +0 -1
  1143. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-f2541f892f6e4aef.js +0 -1
  1144. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-f2541f892f6e4aef.js +0 -1
  1145. package/app/.next-cli-build/static/chunks/app/api/oauth/zed/auto-import/route-f2541f892f6e4aef.js +0 -1
  1146. package/app/.next-cli-build/static/chunks/app/api/oauth/zed/import/route-f2541f892f6e4aef.js +0 -1
  1147. package/app/.next-cli-build/static/chunks/app/api/pricing/route-f2541f892f6e4aef.js +0 -1
  1148. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-f2541f892f6e4aef.js +0 -1
  1149. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-f2541f892f6e4aef.js +0 -1
  1150. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-f2541f892f6e4aef.js +0 -1
  1151. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/gcp-projects/route-f2541f892f6e4aef.js +0 -1
  1152. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-f2541f892f6e4aef.js +0 -1
  1153. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/overrides/route-f2541f892f6e4aef.js +0 -1
  1154. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-f2541f892f6e4aef.js +0 -1
  1155. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-f2541f892f6e4aef.js +0 -1
  1156. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-f2541f892f6e4aef.js +0 -1
  1157. package/app/.next-cli-build/static/chunks/app/api/providers/bulk/route-f2541f892f6e4aef.js +0 -1
  1158. package/app/.next-cli-build/static/chunks/app/api/providers/circuit-breakers/[name]/reset/route-f2541f892f6e4aef.js +0 -1
  1159. package/app/.next-cli-build/static/chunks/app/api/providers/circuit-breakers/route-f2541f892f6e4aef.js +0 -1
  1160. package/app/.next-cli-build/static/chunks/app/api/providers/client/route-f2541f892f6e4aef.js +0 -1
  1161. package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-f2541f892f6e4aef.js +0 -1
  1162. package/app/.next-cli-build/static/chunks/app/api/providers/route-f2541f892f6e4aef.js +0 -1
  1163. package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-f2541f892f6e4aef.js +0 -1
  1164. package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-f2541f892f6e4aef.js +0 -1
  1165. package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-f2541f892f6e4aef.js +0 -1
  1166. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/fitness/clear/route-f2541f892f6e4aef.js +0 -1
  1167. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-f2541f892f6e4aef.js +0 -1
  1168. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-f2541f892f6e4aef.js +0 -1
  1169. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-f2541f892f6e4aef.js +0 -1
  1170. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-f2541f892f6e4aef.js +0 -1
  1171. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/fitness/clear-all/route-f2541f892f6e4aef.js +0 -1
  1172. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/fitness/route-f2541f892f6e4aef.js +0 -1
  1173. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-f2541f892f6e4aef.js +0 -1
  1174. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-f2541f892f6e4aef.js +0 -1
  1175. package/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-f2541f892f6e4aef.js +0 -1
  1176. package/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-f2541f892f6e4aef.js +0 -1
  1177. package/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-f2541f892f6e4aef.js +0 -1
  1178. package/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-f2541f892f6e4aef.js +0 -1
  1179. package/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-f2541f892f6e4aef.js +0 -1
  1180. package/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-f2541f892f6e4aef.js +0 -1
  1181. package/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-f2541f892f6e4aef.js +0 -1
  1182. package/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-f2541f892f6e4aef.js +0 -1
  1183. package/app/.next-cli-build/static/chunks/app/api/ready/route-f2541f892f6e4aef.js +0 -1
  1184. package/app/.next-cli-build/static/chunks/app/api/settings/database/route-f2541f892f6e4aef.js +0 -1
  1185. package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-f2541f892f6e4aef.js +0 -1
  1186. package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-f2541f892f6e4aef.js +0 -1
  1187. package/app/.next-cli-build/static/chunks/app/api/settings/route-f2541f892f6e4aef.js +0 -1
  1188. package/app/.next-cli-build/static/chunks/app/api/shutdown/route-f2541f892f6e4aef.js +0 -1
  1189. package/app/.next-cli-build/static/chunks/app/api/tags/route-f2541f892f6e4aef.js +0 -1
  1190. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-f2541f892f6e4aef.js +0 -1
  1191. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-f2541f892f6e4aef.js +0 -1
  1192. package/app/.next-cli-build/static/chunks/app/api/translator/load/route-f2541f892f6e4aef.js +0 -1
  1193. package/app/.next-cli-build/static/chunks/app/api/translator/save/route-f2541f892f6e4aef.js +0 -1
  1194. package/app/.next-cli-build/static/chunks/app/api/translator/send/route-f2541f892f6e4aef.js +0 -1
  1195. package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-f2541f892f6e4aef.js +0 -1
  1196. package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-f2541f892f6e4aef.js +0 -1
  1197. package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-f2541f892f6e4aef.js +0 -1
  1198. package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-f2541f892f6e4aef.js +0 -1
  1199. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-f2541f892f6e4aef.js +0 -1
  1200. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-f2541f892f6e4aef.js +0 -1
  1201. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-f2541f892f6e4aef.js +0 -1
  1202. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-f2541f892f6e4aef.js +0 -1
  1203. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/claude-reset/route-f2541f892f6e4aef.js +0 -1
  1204. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-f2541f892f6e4aef.js +0 -1
  1205. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-f2541f892f6e4aef.js +0 -1
  1206. package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-f2541f892f6e4aef.js +0 -1
  1207. package/app/.next-cli-build/static/chunks/app/api/usage/history/route-f2541f892f6e4aef.js +0 -1
  1208. package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-f2541f892f6e4aef.js +0 -1
  1209. package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-f2541f892f6e4aef.js +0 -1
  1210. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/[id]/route-f2541f892f6e4aef.js +0 -1
  1211. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-f2541f892f6e4aef.js +0 -1
  1212. package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-f2541f892f6e4aef.js +0 -1
  1213. package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-f2541f892f6e4aef.js +0 -1
  1214. package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-f2541f892f6e4aef.js +0 -1
  1215. package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-f2541f892f6e4aef.js +0 -1
  1216. package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-f2541f892f6e4aef.js +0 -1
  1217. package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-f2541f892f6e4aef.js +0 -1
  1218. package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-f2541f892f6e4aef.js +0 -1
  1219. package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-f2541f892f6e4aef.js +0 -1
  1220. package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-f2541f892f6e4aef.js +0 -1
  1221. package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-f2541f892f6e4aef.js +0 -1
  1222. package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-f2541f892f6e4aef.js +0 -1
  1223. package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-f2541f892f6e4aef.js +0 -1
  1224. package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-f2541f892f6e4aef.js +0 -1
  1225. package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-f2541f892f6e4aef.js +0 -1
  1226. package/app/.next-cli-build/static/chunks/app/api/v1/models/route-f2541f892f6e4aef.js +0 -1
  1227. package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-f2541f892f6e4aef.js +0 -1
  1228. package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-f2541f892f6e4aef.js +0 -1
  1229. package/app/.next-cli-build/static/chunks/app/api/v1/route-f2541f892f6e4aef.js +0 -1
  1230. package/app/.next-cli-build/static/chunks/app/api/v1/search/route-f2541f892f6e4aef.js +0 -1
  1231. package/app/.next-cli-build/static/chunks/app/api/v1/videos/[id]/route-f2541f892f6e4aef.js +0 -1
  1232. package/app/.next-cli-build/static/chunks/app/api/v1/videos/edits/route-f2541f892f6e4aef.js +0 -1
  1233. package/app/.next-cli-build/static/chunks/app/api/v1/videos/extensions/route-f2541f892f6e4aef.js +0 -1
  1234. package/app/.next-cli-build/static/chunks/app/api/v1/videos/generations/route-f2541f892f6e4aef.js +0 -1
  1235. package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-f2541f892f6e4aef.js +0 -1
  1236. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-f2541f892f6e4aef.js +0 -1
  1237. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-f2541f892f6e4aef.js +0 -1
  1238. package/app/.next-cli-build/static/chunks/app/api/version/route-f2541f892f6e4aef.js +0 -1
  1239. package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-f2541f892f6e4aef.js +0 -1
  1240. package/app/.next-cli-build/static/chunks/app/api/version/update/route-f2541f892f6e4aef.js +0 -1
  1241. package/app/.next-cli-build/static/chunks/app/landing/page-ef06aab3fafceba8.js +0 -1
  1242. package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-f2541f892f6e4aef.js +0 -1
  1243. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-f2541f892f6e4aef.js +0 -1
  1244. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-f2541f892f6e4aef.js +0 -1
  1245. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-f2541f892f6e4aef.js +0 -1
  1246. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-f2541f892f6e4aef.js +0 -1
  1247. package/app/.next-cli-build/static/css/037a51fb3aab0cf1.css +0 -1
  1248. package/app/.next-cli-build/static/dE8a3jeu028Mjv0t38rwl/_buildManifest.js +0 -1
  1249. /package/app/.next-cli-build/static/{dE8a3jeu028Mjv0t38rwl → DsIP1InInSX1jxI1CwKX9}/_ssgManifest.js +0 -0
@@ -8,6 +8,8 @@ import CapacityBadges from "./CapacityBadges";
8
8
  import { useModelCaps } from "@/shared/hooks/useModelCaps";
9
9
  import { getModelsByProviderId, getModelKind } from "@/shared/constants/models";
10
10
  import { OAUTH_PROVIDERS, APIKEY_PROVIDERS, FREE_PROVIDERS, FREE_TIER_PROVIDERS, AI_PROVIDERS, isOpenAICompatibleProvider, isAnthropicCompatibleProvider, getProviderAlias } from "@/shared/constants/providers";
11
+ import { parseSearchQuery, matchesSearch } from "@/shared/utils/modelSearchFilter";
12
+ import { getDeactivatedProviderIds } from "@/shared/utils/connectionStatus";
11
13
 
12
14
  // Provider order: OAuth first, then Free Tier, then API Key (matches dashboard/providers)
13
15
  const PROVIDER_ORDER = [
@@ -76,24 +78,59 @@ export default function ModelSelectModal({
76
78
  onClose,
77
79
  onSelect,
78
80
  onDeselect,
81
+ onSelectBatch,
82
+ onDeselectBatch,
79
83
  selectedModel,
80
84
  activeProviders = [],
81
85
  title = "Select Model",
86
+ size = "lg",
82
87
  modelAliases = {},
83
88
  kindFilter = null,
84
89
  capFilter = null,
85
90
  addedModelValues = [],
86
91
  closeOnSelect = true,
92
+ allowProviderWildcard = false,
87
93
  }) {
88
- // Filter activeProviders by serviceKinds when kindFilter set (e.g. "webSearch", "webFetch")
94
+ // Live-fetched connections on modal open, fallback to activeProviders prop
95
+ const [fetchedConnections, setFetchedConnections] = useState(null);
96
+
97
+ const fetchConnections = async () => {
98
+ try {
99
+ const res = await fetch("/api/providers");
100
+ if (!res.ok) throw new Error(`Failed to fetch providers: ${res.status}`);
101
+ const data = await res.json();
102
+ setFetchedConnections(data.connections || []);
103
+ } catch (error) {
104
+ console.error("Error fetching providers in ModelSelectModal:", error);
105
+ setFetchedConnections([]);
106
+ }
107
+ };
108
+
109
+ useEffect(() => {
110
+ // eslint-disable-next-line react-hooks/set-state-in-effect -- load on open; the fetched data is external state
111
+ if (isOpen) fetchConnections();
112
+ }, [isOpen]);
113
+
114
+ const effectiveConnections = useMemo(() => {
115
+ return fetchedConnections !== null ? fetchedConnections : (activeProviders || []);
116
+ }, [fetchedConnections, activeProviders]);
117
+
118
+ // Filter effectiveConnections by active state and serviceKinds when kindFilter set (e.g. "webSearch", "webFetch")
89
119
  const filteredActiveProviders = useMemo(() => {
90
- if (!kindFilter) return activeProviders;
91
- return activeProviders.filter((p) => {
120
+ const activeOnly = effectiveConnections.filter((p) => p && p.isActive !== false);
121
+ if (!kindFilter) return activeOnly;
122
+ return activeOnly.filter((p) => {
92
123
  const info = AI_PROVIDERS[p.provider];
93
124
  const kinds = info?.serviceKinds || ["llm"];
94
125
  return kinds.includes(kindFilter);
95
126
  });
96
- }, [activeProviders, kindFilter]);
127
+ }, [effectiveConnections, kindFilter]);
128
+
129
+ // Set of provider IDs that have connections configured, but ALL of them are deactivated (isActive === false)
130
+ const deactivatedProviderIds = useMemo(() => {
131
+ return getDeactivatedProviderIds(effectiveConnections);
132
+ }, [effectiveConnections]);
133
+
97
134
  const { getCaps } = useModelCaps();
98
135
  const [searchQuery, setSearchQuery] = useState("");
99
136
  const [combos, setCombos] = useState([]);
@@ -107,11 +144,11 @@ export default function ModelSelectModal({
107
144
  // activeProviders itself changes.
108
145
  const liveConnectionIdsByProvider = useMemo(() => {
109
146
  const map = Object.fromEntries(LIVE_CATALOG_PROVIDERS.map((id) => [id, []]));
110
- for (const p of activeProviders) {
147
+ for (const p of filteredActiveProviders) {
111
148
  if (p?.id && Object.prototype.hasOwnProperty.call(map, p.provider)) map[p.provider].push(p.id);
112
149
  }
113
150
  return map;
114
- }, [activeProviders]);
151
+ }, [filteredActiveProviders]);
115
152
  const cursorConnectionIds = liveConnectionIdsByProvider.cursor;
116
153
  const clineConnectionIds = liveConnectionIdsByProvider.cline;
117
154
  const clinepassConnectionIds = liveConnectionIdsByProvider.clinepass;
@@ -217,15 +254,33 @@ export default function ModelSelectModal({
217
254
  const activeConnectionIds = filteredActiveProviders.map(p => p.provider);
218
255
 
219
256
  // No-auth providers: filter by kindFilter as well
220
- const noAuthIds = kindFilter
257
+ const noAuthIds = (kindFilter
221
258
  ? NO_AUTH_PROVIDER_IDS.filter((id) => (AI_PROVIDERS[id]?.serviceKinds || ["llm"]).includes(kindFilter))
222
- : NO_AUTH_PROVIDER_IDS;
259
+ : NO_AUTH_PROVIDER_IDS).filter((id) => !deactivatedProviderIds.has(id));
260
+
261
+ // Compatible nodes (OpenAI/Anthropic Compatible) that already have user-added
262
+ // custom models should be selectable even without an API-key connection. Local /
263
+ // self-hosted endpoints (Ollama, internal relays, etc.) don't always need a stored
264
+ // key, so gating on connections hides models the user already added. These nodes
265
+ // are LLM-only, so only surface them when no kind filter is active.
266
+ // See #4177, #2113, #2119, #1988.
267
+ const existingNodeIds = new Set((providerNodes || []).map((n) => n?.id).filter(Boolean));
268
+ const compatibleNodeIds = kindFilter
269
+ ? []
270
+ : customModels
271
+ .map((m) => m.providerAlias)
272
+ .filter((alias) =>
273
+ (isOpenAICompatibleProvider(alias) || isAnthropicCompatibleProvider(alias)) &&
274
+ existingNodeIds.has(alias) &&
275
+ !deactivatedProviderIds.has(alias)
276
+ );
223
277
 
224
278
  // Only show connected providers (including both standard and custom)
225
279
  const providerIdsToShow = new Set([
226
280
  ...activeConnectionIds, // Only connected providers
227
281
  ...noAuthIds, // No-auth providers (kind-filtered)
228
- ]);
282
+ ...compatibleNodeIds, // Compatible nodes with user-added models
283
+ ].filter((id) => !deactivatedProviderIds.has(id)));
229
284
 
230
285
  // Sort by PROVIDER_ORDER
231
286
  const sortedProviderIds = [...providerIdsToShow].sort((a, b) => {
@@ -311,7 +366,7 @@ export default function ModelSelectModal({
311
366
  // Custom (openai/anthropic-compatible) providers are LLM-only — skip for typed media kinds
312
367
  if (kindFilter && TYPED_KINDS.has(kindFilter)) return;
313
368
  // Find connection object to get prefix synchronously without waiting for providerNodes fetch
314
- const connection = activeProviders.find(p => p.provider === providerId);
369
+ const connection = filteredActiveProviders.find(p => p.provider === providerId) || effectiveConnections.find(p => p.provider === providerId);
315
370
  const matchedNode = providerNodes.find(node => node.id === providerId);
316
371
  const displayName = matchedNode?.name || connection?.name || providerInfo.name;
317
372
  const nodePrefix = connection?.providerSpecificData?.prefix || matchedNode?.prefix || providerId;
@@ -428,16 +483,40 @@ export default function ModelSelectModal({
428
483
  if (group.models.length === 0) delete groups[providerId];
429
484
  });
430
485
 
486
+ // Filter by enabledModels if explicitly configured on any active connection for this provider
487
+ Object.entries(groups).forEach(([providerId, group]) => {
488
+ const providerConns = filteredActiveProviders.filter((p) => p.provider === providerId);
489
+ const explicitEnabled = [];
490
+ for (const conn of providerConns) {
491
+ if (Array.isArray(conn.providerSpecificData?.enabledModels) && conn.providerSpecificData.enabledModels.length > 0) {
492
+ explicitEnabled.push(...conn.providerSpecificData.enabledModels);
493
+ }
494
+ }
495
+ if (explicitEnabled.length > 0) {
496
+ const enabledSet = new Set(explicitEnabled);
497
+ const alias = group.alias || getProviderAlias(providerId) || providerId;
498
+ group.models = group.models.filter((m) =>
499
+ enabledSet.has(m.id) ||
500
+ enabledSet.has(m.value) ||
501
+ enabledSet.has(`${alias}/${m.id}`) ||
502
+ (m.value && enabledSet.has(m.value.replace(`${alias}/`, "")))
503
+ );
504
+ if (group.models.length === 0) delete groups[providerId];
505
+ }
506
+ });
507
+
431
508
  return groups;
432
- }, [filteredActiveProviders, modelAliases, allProviders, providerNodes, customModels, disabledModels, kindFilter, activeProviders, cursorModels, clineModels, clinepassModels]);
509
+ }, [filteredActiveProviders, modelAliases, allProviders, providerNodes, customModels, disabledModels, kindFilter, effectiveConnections, deactivatedProviderIds, cursorModels, clineModels, clinepassModels, zedModels]);
510
+
511
+ // Parse search query into structured query (regex, positive tokens, negative tokens)
512
+ const parsedQuery = useMemo(() => parseSearchQuery(searchQuery), [searchQuery]);
433
513
 
434
514
  // Filter combos by search query (and hide combos when kindFilter is set — combos are LLM-only by design)
435
515
  const filteredCombos = useMemo(() => {
436
516
  if (kindFilter || capFilter) return [];
437
- if (!searchQuery.trim()) return combos;
438
- const query = searchQuery.toLowerCase();
439
- return combos.filter(c => c.name.toLowerCase().includes(query));
440
- }, [combos, searchQuery, kindFilter]);
517
+ if (parsedQuery.isEmpty) return combos;
518
+ return combos.filter(c => matchesSearch(c.name, parsedQuery));
519
+ }, [combos, parsedQuery, kindFilter, capFilter]);
441
520
 
442
521
  // Sort models alphabetically, with added models floated to top
443
522
  const sortModels = (models) => {
@@ -446,10 +525,8 @@ export default function ModelSelectModal({
446
525
  return [...added, ...rest];
447
526
  };
448
527
 
449
- // Filter models by search query
528
+ // Filter models by search query (supports substring, regex, and negation !token / -token)
450
529
  const filteredGroups = useMemo(() => {
451
- const query = searchQuery.trim().toLowerCase();
452
-
453
530
  const filtered = {};
454
531
  Object.entries(groupedModels).forEach(([providerId, group]) => {
455
532
  let models = group.models;
@@ -458,14 +535,27 @@ export default function ModelSelectModal({
458
535
  models = models.filter((m) => getCaps(m.value)?.[capFilter] === true);
459
536
  if (models.length === 0) return;
460
537
  }
461
- if (query) {
462
- const providerNameMatches = group.name.toLowerCase().includes(query);
463
- models = models.filter(
464
- (m) =>
465
- m.name.toLowerCase().includes(query) ||
466
- m.id.toLowerCase().includes(query)
538
+ if (!parsedQuery.isEmpty) {
539
+ const providerNameMatches = matchesSearch(group.name, parsedQuery);
540
+ const aliasMatches = allowProviderWildcard && (
541
+ (group.alias && matchesSearch(group.alias, parsedQuery)) ||
542
+ (providerId && matchesSearch(providerId, parsedQuery)) ||
543
+ matchesSearch(`${group.alias}/*`, parsedQuery)
467
544
  );
468
- if (models.length === 0 && !providerNameMatches) return;
545
+
546
+ models = models.filter((m) => {
547
+ if (matchesSearch(m, parsedQuery)) return true;
548
+ // If provider or alias matches, but model doesn't violate negative exclusion terms
549
+ if (providerNameMatches || aliasMatches) {
550
+ if (parsedQuery.negativeTerms.length > 0) {
551
+ return matchesSearch(m, { ...parsedQuery, positiveTerms: [] });
552
+ }
553
+ return true;
554
+ }
555
+ return false;
556
+ });
557
+
558
+ if (models.length === 0) return;
469
559
  }
470
560
  filtered[providerId] = {
471
561
  ...group,
@@ -474,7 +564,46 @@ export default function ModelSelectModal({
474
564
  });
475
565
 
476
566
  return filtered;
477
- }, [groupedModels, searchQuery, addedModelValues]);
567
+ }, [groupedModels, parsedQuery, addedModelValues, allowProviderWildcard]);
568
+
569
+ // Visible models available for batch actions (excluding placeholders)
570
+ const visibleModels = useMemo(() => {
571
+ const list = [];
572
+ Object.values(filteredGroups).forEach((group) => {
573
+ group.models.forEach((m) => {
574
+ if (!m.isPlaceholder) {
575
+ list.push(m);
576
+ }
577
+ });
578
+ });
579
+ return list;
580
+ }, [filteredGroups]);
581
+
582
+ const visibleUnadded = useMemo(() => {
583
+ return visibleModels.filter((m) => !addedModelValues.includes(m.value));
584
+ }, [visibleModels, addedModelValues]);
585
+
586
+ const visibleAdded = useMemo(() => {
587
+ return visibleModels.filter((m) => addedModelValues.includes(m.value));
588
+ }, [visibleModels, addedModelValues]);
589
+
590
+ const handleSelectAllVisible = () => {
591
+ if (visibleUnadded.length === 0) return;
592
+ if (onSelectBatch) {
593
+ onSelectBatch(visibleUnadded);
594
+ } else {
595
+ visibleUnadded.forEach((model) => onSelect(model));
596
+ }
597
+ };
598
+
599
+ const handleDeselectAllVisible = () => {
600
+ if (visibleAdded.length === 0) return;
601
+ if (onDeselectBatch) {
602
+ onDeselectBatch(visibleAdded);
603
+ } else if (onDeselect) {
604
+ visibleAdded.forEach((model) => onDeselect(model));
605
+ }
606
+ };
478
607
 
479
608
  const handleSelect = (model) => {
480
609
  const value = model?.value || model?.name || model;
@@ -500,30 +629,93 @@ export default function ModelSelectModal({
500
629
  setSearchQuery("");
501
630
  }}
502
631
  title={title}
503
- size="md"
632
+ size={size}
504
633
  className="p-4!"
505
634
  footer={null}
506
635
  >
507
636
  {/* Info bar */}
508
637
  <div className="flex items-center gap-2 mb-3 px-2.5 py-2 bg-primary/8 border border-primary/20 rounded-lg text-xs text-text-muted">
509
638
  <span className="material-symbols-outlined text-primary shrink-0" style={{ fontSize: "14px" }}>info</span>
510
- <span>Click to add, click again to remove. Changes are saved automatically.</span>
639
+ <span>
640
+ {allowProviderWildcard
641
+ ? "Click to add/remove a model, or click a provider name for wildcard (e.g. provider/*). Search supports exclusions (e.g. claude -haiku) and RegEx (/pattern/)."
642
+ : "Click to add, click again to remove. Search supports exclusions (e.g. claude -haiku) and RegEx (/pattern/)."}
643
+ </span>
511
644
  </div>
512
645
 
513
- {/* Search - compact */}
514
- <div className="mb-3">
646
+ {/* Search & batch actions */}
647
+ <div className="mb-3 space-y-2">
515
648
  <div className="relative">
516
649
  <span className="material-symbols-outlined absolute left-2.5 top-1/2 -translate-y-1/2 text-text-muted text-[16px]">
517
650
  search
518
651
  </span>
519
652
  <input
520
653
  type="text"
521
- placeholder="Search..."
654
+ placeholder={
655
+ allowProviderWildcard
656
+ ? "Search models (e.g. claude -haiku, oc/*, /regex/)..."
657
+ : "Search models (e.g. claude -haiku, !embed, /regex/)..."
658
+ }
522
659
  value={searchQuery}
523
660
  onChange={(e) => setSearchQuery(e.target.value)}
524
- className="w-full pl-8 pr-3 py-1.5 bg-surface border border-border rounded text-xs focus:outline-none focus:ring-1 focus:ring-primary/50"
661
+ className="w-full pl-8 pr-20 py-1.5 bg-surface border border-border rounded text-xs focus:outline-none focus:ring-1 focus:ring-primary/50"
525
662
  />
663
+ <div className="absolute right-2 top-1/2 -translate-y-1/2 flex items-center gap-1">
664
+ {parsedQuery.isRegex && (
665
+ <span className="text-[10px] px-1 py-0.2 rounded bg-primary/10 text-primary font-mono font-medium">
666
+ regex
667
+ </span>
668
+ )}
669
+ {parsedQuery.negativeTerms.length > 0 && !parsedQuery.isRegex && (
670
+ <span className="text-[10px] px-1 py-0.2 rounded bg-amber-500/10 text-amber-500 font-mono font-medium">
671
+ !exclude
672
+ </span>
673
+ )}
674
+ {searchQuery && (
675
+ <button
676
+ type="button"
677
+ onClick={() => setSearchQuery("")}
678
+ className="text-text-muted hover:text-text-main cursor-pointer p-0.5 rounded"
679
+ title="Clear search"
680
+ >
681
+ <span className="material-symbols-outlined text-[14px] leading-none">close</span>
682
+ </button>
683
+ )}
684
+ </div>
526
685
  </div>
686
+
687
+ {!closeOnSelect && visibleModels.length > 0 && (
688
+ <div className="flex items-center justify-between px-1 text-[11px] text-text-muted">
689
+ <span className="flex items-center gap-1.5">
690
+ <span>{visibleModels.length} models</span>
691
+ {addedModelValues.length > 0 && (
692
+ <span className="text-primary font-medium">({addedModelValues.length} selected)</span>
693
+ )}
694
+ </span>
695
+ <div className="flex items-center gap-1.5">
696
+ {visibleUnadded.length > 0 && (
697
+ <button
698
+ type="button"
699
+ onClick={handleSelectAllVisible}
700
+ className="px-2 py-0.5 rounded text-[11px] font-medium bg-primary/10 text-primary hover:bg-primary/20 transition-colors cursor-pointer"
701
+ title="Select all filtered models"
702
+ >
703
+ Select All ({visibleUnadded.length})
704
+ </button>
705
+ )}
706
+ {visibleAdded.length > 0 && (
707
+ <button
708
+ type="button"
709
+ onClick={handleDeselectAllVisible}
710
+ className="px-2 py-0.5 rounded text-[11px] font-medium bg-border/40 text-text-muted hover:text-text-main hover:bg-border/60 transition-colors cursor-pointer"
711
+ title="Deselect all filtered models"
712
+ >
713
+ Deselect All ({visibleAdded.length})
714
+ </button>
715
+ )}
716
+ </div>
717
+ </div>
718
+ )}
527
719
  </div>
528
720
 
529
721
  {/* Models grouped by provider - compact */}
@@ -565,24 +757,49 @@ export default function ModelSelectModal({
565
757
  )}
566
758
 
567
759
  {/* Provider models */}
568
- {Object.entries(filteredGroups).map(([providerId, group]) => (
569
- <div key={providerId}>
570
- {/* Provider header */}
571
- <div className="flex items-center gap-1.5 mb-1.5 sticky top-0 bg-surface py-0.5">
572
- <ProviderIcon
573
- src={`/providers/${providerId}.png`}
574
- alt={group.name}
575
- size={14}
576
- fallbackText={(group.name || providerId).slice(0, 2).toUpperCase()}
577
- fallbackColor={group.color}
578
- />
579
- <span className="text-xs font-medium text-primary">
580
- {group.name}
581
- </span>
582
- <span className="text-[10px] text-text-muted">
583
- ({group.models.length})
584
- </span>
585
- </div>
760
+ {Object.entries(filteredGroups).map(([providerId, group]) => {
761
+ const wildcardValue = `${group.alias || providerId}/*`;
762
+ const isWildcardAdded = allowProviderWildcard && addedModelValues.includes(wildcardValue);
763
+
764
+ return (
765
+ <div key={providerId}>
766
+ {/* Provider header */}
767
+ <div className="flex items-center gap-1.5 mb-1.5 sticky top-0 bg-surface py-0.5 z-10">
768
+ <ProviderIcon
769
+ src={`/providers/${providerId}.png`}
770
+ alt={group.name}
771
+ size={14}
772
+ fallbackText={(group.name || providerId).slice(0, 2).toUpperCase()}
773
+ fallbackColor={group.color}
774
+ />
775
+ {allowProviderWildcard ? (
776
+ <button
777
+ type="button"
778
+ onClick={() => handleSelect({ value: wildcardValue, name: wildcardValue })}
779
+ title={isWildcardAdded ? `Click to remove wildcard ${wildcardValue}` : `Click to allow all models from ${group.name} (${wildcardValue})`}
780
+ className={`inline-flex items-center gap-1.5 px-2 py-0.5 rounded-md text-xs font-medium transition-all cursor-pointer border ${
781
+ isWildcardAdded
782
+ ? "bg-primary text-white border-primary shadow-2xs hover:bg-primary-hover"
783
+ : "text-primary border-transparent hover:bg-primary/10 hover:border-primary/20"
784
+ }`}
785
+ >
786
+ {isWildcardAdded && (
787
+ <span className="material-symbols-outlined leading-none text-[12px]">check</span>
788
+ )}
789
+ <span>{group.name}</span>
790
+ <span className={`text-[10px] font-mono px-1 py-0.2 rounded ${isWildcardAdded ? "bg-white/20 text-white" : "text-text-muted bg-sidebar border border-border/50"}`}>
791
+ {wildcardValue}
792
+ </span>
793
+ </button>
794
+ ) : (
795
+ <span className="text-xs font-medium text-primary">
796
+ {group.name}
797
+ </span>
798
+ )}
799
+ <span className="text-[10px] text-text-muted">
800
+ ({group.models.length})
801
+ </span>
802
+ </div>
586
803
 
587
804
  <div className="flex flex-wrap gap-1.5">
588
805
  {group.models.map((model) => {
@@ -632,16 +849,17 @@ export default function ModelSelectModal({
632
849
  })}
633
850
  </div>
634
851
  </div>
635
- ))}
852
+ );
853
+ })}
636
854
 
637
- {Object.keys(filteredGroups).length === 0 && filteredCombos.length === 0 && (
638
- <div className="text-center py-4 text-text-muted">
639
- <span className="material-symbols-outlined text-2xl mb-1 block">
640
- search_off
641
- </span>
642
- <p className="text-xs">No models found</p>
643
- </div>
644
- )}
855
+ {Object.keys(filteredGroups).length === 0 && filteredCombos.length === 0 && (
856
+ <div className="text-center py-4 text-text-muted">
857
+ <span className="material-symbols-outlined text-2xl mb-1 block">
858
+ search_off
859
+ </span>
860
+ <p className="text-xs">No models found</p>
861
+ </div>
862
+ )}
645
863
  </div>
646
864
  </Modal>
647
865
  );
@@ -652,6 +870,8 @@ ModelSelectModal.propTypes = {
652
870
  onClose: PropTypes.func.isRequired,
653
871
  onSelect: PropTypes.func.isRequired,
654
872
  onDeselect: PropTypes.func,
873
+ onSelectBatch: PropTypes.func,
874
+ onDeselectBatch: PropTypes.func,
655
875
  selectedModel: PropTypes.string,
656
876
  activeProviders: PropTypes.arrayOf(
657
877
  PropTypes.shape({
@@ -659,8 +879,10 @@ ModelSelectModal.propTypes = {
659
879
  })
660
880
  ),
661
881
  title: PropTypes.string,
882
+ size: PropTypes.string,
662
883
  modelAliases: PropTypes.object,
663
884
  kindFilter: PropTypes.string,
664
885
  addedModelValues: PropTypes.arrayOf(PropTypes.string),
665
886
  closeOnSelect: PropTypes.bool,
887
+ allowProviderWildcard: PropTypes.bool,
666
888
  };
@@ -185,6 +185,10 @@ export default function OAuthModal({ isOpen, provider, providerInfo, onSuccess,
185
185
  "grok-cli",
186
186
  "freebuff",
187
187
  "glm",
188
+ "nous",
189
+
190
+ "minimax-code",
191
+ "minimax-code-global",
188
192
  ];
189
193
  if (deviceCodeProviders.includes(provider)) {
190
194
  setIsDeviceCode(true);
@@ -230,9 +234,13 @@ export default function OAuthModal({ isOpen, provider, providerInfo, onSuccess,
230
234
  ? { _kimiDeviceId: data._kimiDeviceId }
231
235
  : provider === "glm"
232
236
  ? { _zcodePollToken: data._zcodePollToken }
237
+ : (provider === "minimax-code" || provider === "minimax-code-global")
238
+ ? { _minimaxPollByUser: data._minimaxPollByUser }
233
239
  : null;
234
240
  startPolling(
235
- data.device_code,
241
+ // MiniMax's device-code variant returns no device_code: the token
242
+ // endpoint is polled with the user_code itself.
243
+ data.device_code || data.user_code,
236
244
  data.codeVerifier,
237
245
  data.interval || 5,
238
246
  extraData,
@@ -10,7 +10,6 @@ import { MEDIA_PROVIDER_KINDS } from "@/shared/constants/providers";
10
10
  import { useCopyToClipboard } from "@/shared/hooks/useCopyToClipboard";
11
11
  import Button from "./Button";
12
12
  import { ConfirmModal } from "./Modal";
13
- import NineRemotePromoModal from "./NineRemotePromoModal";
14
13
  const ChangelogModal = dynamic(() => import("./ChangelogModal"), { ssr: false });
15
14
 
16
15
  // const VISIBLE_MEDIA_KINDS = ["embedding", "image", "imageToText", "tts", "stt", "webSearch", "webFetch", "video", "music"];
@@ -43,7 +42,6 @@ const systemItems = [
43
42
  export default function Sidebar({ onClose }) {
44
43
  const pathname = usePathname();
45
44
  const [mediaOpen, setMediaOpen] = useState(false);
46
- const [showRemoteModal, setShowRemoteModal] = useState(false);
47
45
  const [showChangelogModal, setShowChangelogModal] = useState(false);
48
46
  const [isDisconnected, setIsDisconnected] = useState(false);
49
47
  const [updateInfo, setUpdateInfo] = useState(null);
@@ -307,8 +305,11 @@ export default function Sidebar({ onClose }) {
307
305
  })}
308
306
 
309
307
  {/* Remote */}
310
- <button
311
- onClick={() => setShowRemoteModal(true)}
308
+ <a
309
+ href="https://9remote.cc"
310
+ target="_blank"
311
+ rel="noreferrer"
312
+ onClick={onClose}
312
313
  className={cn(
313
314
  "flex items-center gap-3 px-3 py-1 rounded-lg transition-all group w-full",
314
315
  "text-text-muted hover:bg-surface-2 hover:text-text-main"
@@ -317,8 +318,11 @@ export default function Sidebar({ onClose }) {
317
318
  <span className="material-symbols-outlined text-[18px] group-hover:text-primary transition-colors">
318
319
  computer
319
320
  </span>
320
- <span className="text-[13px] font-medium">Remote</span>
321
- </button>
321
+ <span className="text-[13px] font-medium">9Remote</span>
322
+ <span className="ml-auto text-[10px] font-semibold px-1 py-0.5 rounded-[3px] bg-orange-500/15 text-orange-400">
323
+ HOT
324
+ </span>
325
+ </a>
322
326
 
323
327
  {/* Settings */}
324
328
  <Link
@@ -346,8 +350,6 @@ export default function Sidebar({ onClose }) {
346
350
 
347
351
  </aside>
348
352
 
349
- {/* Remote Promo Modal */}
350
- <NineRemotePromoModal isOpen={showRemoteModal} onClose={() => setShowRemoteModal(false)} />
351
353
 
352
354
  {/* Changelog Modal */}
353
355
  <ChangelogModal isOpen={showChangelogModal} onClose={() => setShowChangelogModal(false)} />
@@ -1,25 +1,43 @@
1
1
  "use client";
2
2
 
3
+ import { useRef, useState } from "react";
4
+ import { createPortal } from "react-dom";
5
+
3
6
  export default function Tooltip({ text, children, position = "top", color }) {
4
- const posClass = {
5
- top: "bottom-full left-1/2 -translate-x-1/2 mb-1.5",
6
- bottom: "top-full left-1/2 -translate-x-1/2 mt-1.5",
7
- left: "right-full top-1/2 -translate-y-1/2 mr-1.5",
8
- right: "left-full top-1/2 -translate-y-1/2 ml-1.5",
9
- }[position];
7
+ const anchorRef = useRef(null);
8
+ const [style, setStyle] = useState(null);
10
9
 
11
- const bgStyle = color ? { backgroundColor: color } : {};
12
- const bgClass = color ? "" : "bg-gray-900";
10
+ // Render via portal + fixed positioning so overflow/scroll ancestors can't clip the bubble
11
+ const handleMouseEnter = () => {
12
+ const rect = anchorRef.current?.getBoundingClientRect();
13
+ if (!rect) return;
14
+ const midX = rect.left + rect.width / 2;
15
+ const midY = rect.top + rect.height / 2;
16
+ let pos;
17
+ if (position === "bottom") pos = { top: rect.bottom + 6, left: midX, transform: "translateX(-50%)" };
18
+ else if (position === "left") pos = { right: window.innerWidth - rect.left + 6, top: midY, transform: "translateY(-50%)" };
19
+ else if (position === "right") pos = { left: rect.right + 6, top: midY, transform: "translateY(-50%)" };
20
+ else pos = { bottom: window.innerHeight - rect.top + 6, left: midX, transform: "translateX(-50%)" };
21
+ setStyle({ position: "fixed", ...pos });
22
+ };
13
23
 
14
24
  return (
15
- <div className="relative inline-flex group/tt">
25
+ <div
26
+ ref={anchorRef}
27
+ className="relative inline-flex"
28
+ onMouseEnter={handleMouseEnter}
29
+ onMouseLeave={() => setStyle(null)}
30
+ >
16
31
  {children}
17
- <div
18
- className={`pointer-events-none absolute ${posClass} z-50 w-max max-w-56 rounded px-2 py-1 text-[11px] leading-snug ${bgClass} text-white opacity-0 group-hover/tt:opacity-100 transition-opacity duration-150 whitespace-normal`}
19
- style={bgStyle}
20
- >
21
- {text}
22
- </div>
32
+ {style && createPortal(
33
+ <div
34
+ className={`pointer-events-none z-50 w-max max-w-56 rounded px-2 py-1 text-[11px] leading-snug text-white whitespace-normal ${color ? "" : "bg-gray-900"}`}
35
+ style={{ ...style, ...(color ? { backgroundColor: color } : {}) }}
36
+ >
37
+ {text}
38
+ </div>,
39
+ document.body
40
+ )}
23
41
  </div>
24
42
  );
25
43
  }
@@ -199,7 +199,7 @@ function getGroupKey(item, keyField) {
199
199
  switch (keyField) {
200
200
  case "rawModel": return item.rawModel || "Unknown Model";
201
201
  case "accountName": return item.accountName || `Account ${item.connectionId?.slice(0, 8)}...` || "Unknown Account";
202
- case "keyName": return item.keyName || "Unknown Key";
202
+ case "keyName": return item.apiKeyMasked ? `${item.keyName} (${item.apiKeyMasked})` : item.keyName || "Unknown Key";
203
203
  case "endpoint": return item.endpoint || "Unknown Endpoint";
204
204
  default: return item[keyField] || "Unknown";
205
205
  }
@@ -561,7 +561,7 @@ export default function UsageStats({ period: periodProp, setPeriod: setPeriodPro
561
561
  ),
562
562
  renderDetailCells: (item) => (
563
563
  <>
564
- <td className="px-6 py-3 font-medium">{item.keyName}</td>
564
+ <td className="px-6 py-3 font-medium font-mono text-xs">{item.apiKeyMasked || item.keyName}</td>
565
565
  <td className="px-6 py-3">{item.rawModel}</td>
566
566
  <td className="px-6 py-3"><Badge variant="neutral" size="sm">{item.provider}</Badge></td>
567
567
  <td className="px-6 py-3 text-right">{fmt(item.requests)}</td>