tokenhop 1.0.1 → 1.0.3

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 (566) hide show
  1. package/app/.next-cli-build/BUILD_ID +1 -1
  2. package/app/.next-cli-build/app-path-routes-manifest.json +8 -8
  3. package/app/.next-cli-build/build-manifest.json +3 -3
  4. package/app/.next-cli-build/prerender-manifest.json +3 -3
  5. package/app/.next-cli-build/react-loadable-manifest.json +29 -29
  6. package/app/.next-cli-build/required-server-files.json +1 -0
  7. package/app/.next-cli-build/server/app/(dashboard)/dashboard/[...missing]/page.js +1 -1
  8. package/app/.next-cli-build/server/app/(dashboard)/dashboard/[...missing]/page.js.nft.json +1 -1
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/[...missing]/page_client-reference-manifest.js +1 -1
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +1 -1
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +1 -1
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +1 -1
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +1 -1
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +1 -1
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +1 -1
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +1 -1
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  34. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +1 -1
  35. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  36. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  37. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/page.js +1 -1
  38. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/page.js.nft.json +1 -1
  39. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/page_client-reference-manifest.js +1 -1
  40. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +1 -1
  41. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  42. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  43. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +1 -1
  44. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  45. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  46. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +1 -1
  47. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  48. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  49. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +1 -1
  50. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  51. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  52. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +1 -1
  53. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  54. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  55. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +1 -1
  56. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  57. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  58. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +1 -1
  59. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  60. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  61. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +1 -1
  62. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  63. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  64. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +1 -1
  65. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
  66. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
  67. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +1 -1
  68. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  69. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  70. package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/page.js +1 -1
  71. package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/page.js.nft.json +1 -1
  72. package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
  73. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +1 -1
  74. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
  75. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  76. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +1 -1
  77. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
  78. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  79. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +1 -1
  80. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  81. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  82. package/app/.next-cli-build/server/app/(dashboard)/dashboard/ui-kit/page.js +1 -1
  83. package/app/.next-cli-build/server/app/(dashboard)/dashboard/ui-kit/page.js.nft.json +1 -1
  84. package/app/.next-cli-build/server/app/(dashboard)/dashboard/ui-kit/page_client-reference-manifest.js +1 -1
  85. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +1 -1
  86. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  87. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  88. package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  89. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  90. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  91. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  92. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  93. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  94. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  95. package/app/.next-cli-build/server/app/_not-found/page.js +1 -1
  96. package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  97. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  98. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  99. package/app/.next-cli-build/server/app/_not-found.rsc +5 -5
  100. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +5 -5
  101. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -5
  102. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  103. package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  104. package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  105. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  106. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  107. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  108. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js.nft.json +1 -1
  109. package/app/.next-cli-build/server/app/api/auth/saml/acs/route.js.nft.json +1 -1
  110. package/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js.nft.json +1 -1
  111. package/app/.next-cli-build/server/app/api/auth/saml/start/route.js.nft.json +1 -1
  112. package/app/.next-cli-build/server/app/api/auth/saml/test/route.js.nft.json +1 -1
  113. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  114. package/app/.next-cli-build/server/app/api/cli-tool-settings/[toolId]/route.js.nft.json +1 -1
  115. package/app/.next-cli-build/server/app/api/cli-tool-settings/route.js.nft.json +1 -1
  116. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +4 -4
  117. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  118. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +1 -1
  119. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  120. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  121. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  122. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  123. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +1 -1
  124. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  125. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +2 -2
  126. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  127. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
  128. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  129. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +1 -1
  130. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  131. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
  132. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  133. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
  134. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  135. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
  136. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  137. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js +1 -1
  138. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js.nft.json +1 -1
  139. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
  140. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  141. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +2 -2
  142. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js.nft.json +1 -1
  143. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
  144. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  145. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +3 -3
  146. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  147. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  148. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  149. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  150. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  151. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  152. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  153. package/app/.next-cli-build/server/app/api/combos/[id]/headroom/route.js +1 -1
  154. package/app/.next-cli-build/server/app/api/combos/[id]/headroom/route.js.nft.json +1 -1
  155. package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  156. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  157. package/app/.next-cli-build/server/app/api/combos/[id]/test/route.js +1 -1
  158. package/app/.next-cli-build/server/app/api/combos/[id]/test/route.js.nft.json +1 -1
  159. package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  160. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  161. package/app/.next-cli-build/server/app/api/gateway/status/route.js.nft.json +1 -1
  162. package/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
  163. package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
  164. package/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
  165. package/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
  166. package/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
  167. package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
  168. package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  169. package/app/.next-cli-build/server/app/api/home/live-routes/route.js.nft.json +1 -1
  170. package/app/.next-cli-build/server/app/api/home/quota/route.js +1 -1
  171. package/app/.next-cli-build/server/app/api/home/quota/route.js.nft.json +1 -1
  172. package/app/.next-cli-build/server/app/api/home/summary/route.js.nft.json +1 -1
  173. package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  174. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  175. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  176. package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  177. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  178. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  179. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  180. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  181. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  182. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  183. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  184. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  185. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  186. package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  187. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  188. package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  189. package/app/.next-cli-build/server/app/api/models/catalog-sync/route.js +1 -1
  190. package/app/.next-cli-build/server/app/api/models/catalog-sync/route.js.nft.json +1 -1
  191. package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  192. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  193. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  194. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  195. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  196. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  197. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  198. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  199. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  200. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
  201. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
  202. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  203. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  204. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  205. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  206. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  207. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  208. package/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js.nft.json +1 -1
  209. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  210. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js +1 -1
  211. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
  212. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  213. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  214. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  215. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
  216. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  217. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  218. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  219. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  220. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/api-key/route.js.nft.json +1 -1
  221. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/auto-import/route.js +1 -1
  222. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/auto-import/route.js.nft.json +1 -1
  223. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  224. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  225. package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  226. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  227. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  228. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  229. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  230. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  231. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  232. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  233. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  234. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  235. package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  236. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  237. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  238. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  239. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  240. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  241. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  242. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  243. package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  244. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  245. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  246. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  247. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  248. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  249. package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  250. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  251. package/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
  252. package/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
  253. package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js.nft.json +1 -1
  254. package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
  255. package/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
  256. package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
  257. package/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
  258. package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
  259. package/app/.next-cli-build/server/app/api/settings/config/export/route.js.nft.json +1 -1
  260. package/app/.next-cli-build/server/app/api/settings/config/import/route.js +1 -1
  261. package/app/.next-cli-build/server/app/api/settings/config/import/route.js.nft.json +1 -1
  262. package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  263. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  264. package/app/.next-cli-build/server/app/api/settings/environment/route.js.nft.json +1 -1
  265. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  266. package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  267. package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  268. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  269. package/app/.next-cli-build/server/app/api/shell/savings-milestone/route.js.nft.json +1 -1
  270. package/app/.next-cli-build/server/app/api/shell/summary/route.js +1 -1
  271. package/app/.next-cli-build/server/app/api/shell/summary/route.js.nft.json +1 -1
  272. package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  273. package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  274. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  275. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  276. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
  277. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  278. package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  279. package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  280. package/app/.next-cli-build/server/app/api/translator/send/route.js +9 -1
  281. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  282. package/app/.next-cli-build/server/app/api/translator/translate/route.js +9 -1
  283. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  284. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  285. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  286. package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  287. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  288. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  289. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  290. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
  291. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  292. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +9 -1
  293. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
  294. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +9 -1
  295. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  296. package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  297. package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  298. package/app/.next-cli-build/server/app/api/usage/last-activity/route.js.nft.json +1 -1
  299. package/app/.next-cli-build/server/app/api/usage/logs/route.js.nft.json +1 -1
  300. package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  301. package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  302. package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  303. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  304. package/app/.next-cli-build/server/app/api/usage/savings/route.js.nft.json +1 -1
  305. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  306. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  307. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  308. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  309. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  310. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  311. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  312. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  313. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  314. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  315. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  316. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  317. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +9 -1
  318. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  319. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +2 -2
  320. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  321. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  322. package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  323. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  324. package/app/.next-cli-build/server/app/api/v1/models/[...model]/route.js +1 -1
  325. package/app/.next-cli-build/server/app/api/v1/models/[...model]/route.js.nft.json +1 -1
  326. package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  327. package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  328. package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  329. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  330. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  331. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  332. package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  333. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  334. package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  335. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  336. package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  337. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  338. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -1
  339. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js.nft.json +1 -1
  340. package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -1
  341. package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js.nft.json +1 -1
  342. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -1
  343. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js.nft.json +1 -1
  344. package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -1
  345. package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
  346. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  347. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  348. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  349. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  350. package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  351. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  352. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  353. package/app/.next-cli-build/server/app/callback/page.js +1 -1
  354. package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  355. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  356. package/app/.next-cli-build/server/app/callback.html +1 -1
  357. package/app/.next-cli-build/server/app/callback.rsc +5 -5
  358. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +5 -5
  359. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
  360. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +5 -5
  361. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +2 -2
  362. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +11 -11
  363. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +11 -11
  364. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +11 -11
  365. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
  366. package/app/.next-cli-build/server/app/dashboard/combos.html +2 -2
  367. package/app/.next-cli-build/server/app/dashboard/combos.rsc +11 -11
  368. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +11 -11
  369. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +11 -11
  370. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  371. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  372. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +9 -9
  373. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +8 -8
  374. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +9 -9
  375. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  376. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +2 -2
  377. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +11 -11
  378. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +11 -11
  379. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +11 -11
  380. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
  381. package/app/.next-cli-build/server/app/dashboard/media-providers.html +1 -1
  382. package/app/.next-cli-build/server/app/dashboard/media-providers.rsc +10 -10
  383. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/__PAGE__.segment.rsc +10 -10
  384. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/_full.segment.rsc +10 -10
  385. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/_tree.segment.rsc +2 -2
  386. package/app/.next-cli-build/server/app/dashboard/mitm.html +2 -2
  387. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +11 -11
  388. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +11 -11
  389. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +11 -11
  390. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
  391. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  392. package/app/.next-cli-build/server/app/dashboard/profile.rsc +10 -10
  393. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +10 -10
  394. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +10 -10
  395. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  396. package/app/.next-cli-build/server/app/dashboard/providers/new.html +2 -2
  397. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +11 -11
  398. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +11 -11
  399. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +11 -11
  400. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  401. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +2 -2
  402. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +10 -10
  403. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +10 -10
  404. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +10 -10
  405. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
  406. package/app/.next-cli-build/server/app/dashboard/pxpipe.html +2 -2
  407. package/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +10 -10
  408. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +10 -10
  409. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +10 -10
  410. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +2 -2
  411. package/app/.next-cli-build/server/app/dashboard/quota.html +1 -1
  412. package/app/.next-cli-build/server/app/dashboard/quota.rsc +11 -11
  413. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +11 -11
  414. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +11 -11
  415. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
  416. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +1 -1
  417. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  418. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  419. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  420. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +5 -5
  421. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +5 -5
  422. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  423. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +5 -5
  424. package/app/.next-cli-build/server/app/dashboard/settings.html +2 -2
  425. package/app/.next-cli-build/server/app/dashboard/settings.rsc +11 -11
  426. package/app/.next-cli-build/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings/__PAGE__.segment.rsc +11 -11
  427. package/app/.next-cli-build/server/app/dashboard/settings.segments/_full.segment.rsc +11 -11
  428. package/app/.next-cli-build/server/app/dashboard/settings.segments/_tree.segment.rsc +2 -2
  429. package/app/.next-cli-build/server/app/dashboard/skills.html +2 -2
  430. package/app/.next-cli-build/server/app/dashboard/skills.rsc +8 -8
  431. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +8 -8
  432. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +8 -8
  433. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +2 -2
  434. package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  435. package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +11 -11
  436. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +11 -11
  437. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +11 -11
  438. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +2 -2
  439. package/app/.next-cli-build/server/app/dashboard/translator.html +2 -2
  440. package/app/.next-cli-build/server/app/dashboard/translator.rsc +11 -11
  441. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +11 -11
  442. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +11 -11
  443. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  444. package/app/.next-cli-build/server/app/dashboard/ui-kit.html +1 -1
  445. package/app/.next-cli-build/server/app/dashboard/ui-kit.rsc +10 -10
  446. package/app/.next-cli-build/server/app/dashboard/ui-kit.segments/!KGRhc2hib2FyZCk/dashboard/ui-kit/__PAGE__.segment.rsc +10 -10
  447. package/app/.next-cli-build/server/app/dashboard/ui-kit.segments/_full.segment.rsc +10 -10
  448. package/app/.next-cli-build/server/app/dashboard/ui-kit.segments/_tree.segment.rsc +2 -2
  449. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  450. package/app/.next-cli-build/server/app/dashboard/usage.rsc +11 -11
  451. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +11 -11
  452. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +11 -11
  453. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  454. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  455. package/app/.next-cli-build/server/app/dashboard.rsc +11 -11
  456. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +11 -11
  457. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +11 -11
  458. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  459. package/app/.next-cli-build/server/app/index.html +1 -1
  460. package/app/.next-cli-build/server/app/index.rsc +5 -5
  461. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +5 -5
  462. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +5 -5
  463. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
  464. package/app/.next-cli-build/server/app/landing/page.js +1 -1
  465. package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  466. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  467. package/app/.next-cli-build/server/app/landing.html +1 -1
  468. package/app/.next-cli-build/server/app/landing.rsc +6 -6
  469. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +6 -6
  470. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
  471. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +6 -6
  472. package/app/.next-cli-build/server/app/login/page.js +1 -1
  473. package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  474. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  475. package/app/.next-cli-build/server/app/login.html +1 -1
  476. package/app/.next-cli-build/server/app/login.rsc +5 -5
  477. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +5 -5
  478. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
  479. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +5 -5
  480. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  481. package/app/.next-cli-build/server/app/page.js +1 -1
  482. package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  483. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  484. package/app/.next-cli-build/server/app/skills/[...slug]/route.js.nft.json +1 -1
  485. package/app/.next-cli-build/server/app-paths-manifest.json +8 -8
  486. package/app/.next-cli-build/server/chunks/{6734.js → 1004.js} +1 -1
  487. package/app/.next-cli-build/server/chunks/{4037.js → 1215.js} +1 -1
  488. package/app/.next-cli-build/server/chunks/1533.js +1 -1
  489. package/app/.next-cli-build/server/chunks/2217.js +1 -1
  490. package/app/.next-cli-build/server/chunks/2380.js +3 -3
  491. package/app/.next-cli-build/server/chunks/24.js +1 -1
  492. package/app/.next-cli-build/server/chunks/2460.js +1 -1
  493. package/app/.next-cli-build/server/chunks/257.js +10 -0
  494. package/app/.next-cli-build/server/chunks/2592.js +1 -1
  495. package/app/.next-cli-build/server/chunks/2705.js +9 -0
  496. package/app/.next-cli-build/server/chunks/318.js +2 -10
  497. package/app/.next-cli-build/server/chunks/3943.js +1 -1
  498. package/app/.next-cli-build/server/chunks/4123.js +1 -1
  499. package/app/.next-cli-build/server/chunks/4334.js +1 -1
  500. package/app/.next-cli-build/server/chunks/5230.js +1 -0
  501. package/app/.next-cli-build/server/chunks/5260.js +1 -1
  502. package/app/.next-cli-build/server/chunks/5559.js +9 -0
  503. package/app/.next-cli-build/server/chunks/5615.js +1 -1
  504. package/app/.next-cli-build/server/chunks/5649.js +1 -0
  505. package/app/.next-cli-build/server/chunks/5827.js +1 -1
  506. package/app/.next-cli-build/server/chunks/5869.js +9 -0
  507. package/app/.next-cli-build/server/chunks/5908.js +1 -0
  508. package/app/.next-cli-build/server/chunks/620.js +1 -1
  509. package/app/.next-cli-build/server/chunks/{1854.js → 6355.js} +1 -1
  510. package/app/.next-cli-build/server/chunks/6493.js +1 -0
  511. package/app/.next-cli-build/server/chunks/6496.js +1 -1
  512. package/app/.next-cli-build/server/chunks/7485.js +9 -0
  513. package/app/.next-cli-build/server/chunks/{3676.js → 7695.js} +1 -1
  514. package/app/.next-cli-build/server/chunks/7716.js +1 -1
  515. package/app/.next-cli-build/server/chunks/7819.js +1 -1
  516. package/app/.next-cli-build/server/chunks/8171.js +1 -1
  517. package/app/.next-cli-build/server/chunks/8261.js +1 -0
  518. package/app/.next-cli-build/server/chunks/878.js +1 -0
  519. package/app/.next-cli-build/server/chunks/8895.js +10 -10
  520. package/app/.next-cli-build/server/chunks/8954.js +1 -0
  521. package/app/.next-cli-build/server/chunks/9016.js +9 -0
  522. package/app/.next-cli-build/server/chunks/9343.js +1 -1
  523. package/app/.next-cli-build/server/chunks/9421.js +1 -1
  524. package/app/.next-cli-build/server/chunks/9489.js +1 -1
  525. package/app/.next-cli-build/server/chunks/9578.js +1 -1
  526. package/app/.next-cli-build/server/instrumentation.js.nft.json +1 -1
  527. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  528. package/app/.next-cli-build/server/middleware-react-loadable-manifest.js +1 -1
  529. package/app/.next-cli-build/server/middleware.js.nft.json +1 -1
  530. package/app/.next-cli-build/server/pages/404.html +1 -1
  531. package/app/.next-cli-build/server/pages/500.html +1 -1
  532. package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
  533. package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
  534. package/app/.next-cli-build/static/chunks/{198-0c7f5eadfd257db1.js → 198-7c5bbea89ef8bc14.js} +1 -1
  535. package/app/.next-cli-build/static/chunks/{3670-90f5cd325f460eb5.js → 3670-d6dc44bc181c9b8a.js} +1 -1
  536. package/app/.next-cli-build/static/chunks/{6174.f1da2912aec81c15.js → 6174.a18fedfa3d765b1e.js} +1 -1
  537. package/app/.next-cli-build/static/chunks/7899-a12f962af02edf7f.js +1 -0
  538. package/app/.next-cli-build/static/chunks/8105-71d1aea9708976db.js +1 -0
  539. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/{page-084fc21b1dbae00d.js → page-1df6ad7d9adfc2a7.js} +1 -1
  540. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/{page-de53f51d191eec46.js → page-25d06b77bd1a5edb.js} +1 -1
  541. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/{page-243d3da0a2c6cbe9.js → page-5bb99ecaf48bde39.js} +1 -1
  542. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/ui-kit/{page-998f8c5a36dac961.js → page-1bc393f267badc04.js} +1 -1
  543. package/app/.next-cli-build/static/chunks/app/(dashboard)/{layout-96ebd2b46f1f8d39.js → layout-a94f45e334f1841b.js} +1 -1
  544. package/app/.next-cli-build/static/chunks/app/landing/{page-bcaea5febe1c68c0.js → page-98f05847e3372b16.js} +1 -1
  545. package/app/.next-cli-build/static/chunks/app/{layout-c266f1acedfb4651.js → layout-29d74e164758a126.js} +1 -1
  546. package/app/.next-cli-build/static/chunks/{webpack-8693ccf029e9af63.js → webpack-1e19a4b05298b49d.js} +1 -1
  547. package/app/.next-cli-build/static/css/{9f0b95a0d0bc5e51.css → ffa1d9c3cbb4e959.css} +1 -1
  548. package/app/package.json +4 -5
  549. package/app/server.js +1 -1
  550. package/package.json +1 -1
  551. package/app/.next-cli-build/server/chunks/1764.js +0 -1
  552. package/app/.next-cli-build/server/chunks/3306.js +0 -1
  553. package/app/.next-cli-build/server/chunks/3558.js +0 -1
  554. package/app/.next-cli-build/server/chunks/368.js +0 -1
  555. package/app/.next-cli-build/server/chunks/4199.js +0 -2
  556. package/app/.next-cli-build/server/chunks/4903.js +0 -1
  557. package/app/.next-cli-build/server/chunks/6000.js +0 -1
  558. package/app/.next-cli-build/server/chunks/6403.js +0 -1
  559. package/app/.next-cli-build/server/chunks/6565.js +0 -1
  560. package/app/.next-cli-build/server/chunks/7901.js +0 -1
  561. package/app/.next-cli-build/server/chunks/8372.js +0 -1
  562. package/app/.next-cli-build/server/chunks/9219.js +0 -1
  563. package/app/.next-cli-build/static/chunks/7899-83edd7bbf1a98c4a.js +0 -1
  564. package/app/.next-cli-build/static/chunks/8105-bdd81b911fed8537.js +0 -1
  565. /package/app/.next-cli-build/static/{J4xdfHpBUAMOCO5dsemSj → gdVYVwJMM6JES9Y1KPQyw}/_buildManifest.js +0 -0
  566. /package/app/.next-cli-build/static/{J4xdfHpBUAMOCO5dsemSj → gdVYVwJMM6JES9Y1KPQyw}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8105],{51563:(e,a,i)=>{i.d(a,{cI:()=>r,pH:()=>s,Ps:()=>n}),i(4553);var t=i(41463);function o(e,a){let i=t.env[e];if(null==i||""===i)return a;let o=parseInt(i,10);return Number.isFinite(o)&&o>0?o:a}let n=t.env.SEARXNG_URL?.trim()||"http://localhost:8888/search";o("STREAM_STALL_TIMEOUT_MS",36e4),o("COMBO_STREAM_PROBE_MAX_BYTES",262144),o("COMBO_STREAM_PROBE_MAX_MS",1e4),o("STREAM_FIRST_CHUNK_TIMEOUT_MS",2e5);let s=o("FETCH_CONNECT_TIMEOUT_MS",6e4);o("GEMINI_NATIVE_TTS_FETCH_TIMEOUT_MS",45e3);let r={429:{attempts:0,delayMs:0},502:{attempts:3,delayMs:3e3},503:{attempts:3,delayMs:2e3},504:{attempts:2,delayMs:3e3}}},72985:(e,a,i)=>{i.d(a,{A:()=>K});var t=i(54642),o=i(41463);function n(e,a,i){let t=o.env[e]?.trim();if(!t)return a;if(!i.test(t))throw Error(`Invalid ${e}="${t}": expected a value matching ${i}`);return t}let s=/^\d+\.\d+\.\d+$/,r=n("CLAUDE_CLI_VERSION","2.1.280",s),p=n("CLAUDE_CLI_SDK_VERSION","0.112.1",s),d=n("CLAUDE_CLI_RUNTIME_VERSION","v26.3.0",/^v\d+\.\d+\.\d+$/),m=`claude-cli/${r} (external, sdk-cli)`,l=function(e,a,i){let t=o.env[e]?.trim();if(!t)return a;let n=t.split(",").map(e=>e.trim()).filter(Boolean),s=n.filter(e=>!i.test(e));if(0===n.length||s.length)throw Error(`Invalid ${e}: ${s.length?`malformed entries ${s.join(", ")}`:"empty list"}`);return n}("CLAUDE_CLI_BETA_FLAGS",["claude-code-20250219","oauth-2025-04-20","interleaved-thinking-2025-05-14","thinking-token-count-2026-05-13","context-management-2025-06-27","prompt-caching-scope-2026-01-05","mid-conversation-system-2026-04-07","extended-cache-ttl-2025-04-11","structured-outputs-2025-12-15","redact-thinking-2026-02-12"],/^[a-z0-9]+(?:-[a-z0-9]+)*-(?:\d{8}|\d{4}-\d{2}-\d{2})$/);var c=i(41463);let h="2023-06-01",u={"Anthropic-Version":h,"Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},g=["advanced-tool-use-2025-11-20","effort-2025-11-24"];function k({os:e=function(){switch((0,t.platform)()){case"darwin":return"MacOS";case"win32":return"Windows";case"linux":return"Linux";case"freebsd":return"FreeBSD";default:return`Other::${(0,t.platform)()}`}}(),arch:a=function(){switch((0,t.arch)()){case"x64":return"x64";case"arm64":return"arm64";case"ia32":return"x86";default:return`other::${(0,t.arch)()}`}}()}={}){return{"Anthropic-Version":h,"Anthropic-Beta":[...l.filter(e=>"fast-mode-2026-02-01"!==e),...g].join(","),"Anthropic-Dangerous-Direct-Browser-Access":"true","User-Agent":m,"X-App":"cli","X-Stainless-Retry-Count":"0","X-Stainless-Runtime-Version":d,"X-Stainless-Package-Version":p,"X-Stainless-Runtime":"node","X-Stainless-Lang":"js","X-Stainless-Arch":a,"X-Stainless-Os":e,"X-Stainless-Timeout":"600"}}k();let y="https://daily-cloudcode-pa.googleapis.com",b="antigravity/ide/2.11.0 darwin/arm64";function f([e,a]){return{clientId:c.env[e]?.trim()||void 0,clientSecret:c.env[a]?.trim()||void 0}}let v=f(["ANTIGRAVITY_OAUTH_CLIENT_ID","ANTIGRAVITY_OAUTH_CLIENT_SECRET"]),x=f(["GEMINI_OAUTH_CLIENT_ID","GEMINI_OAUTH_CLIENT_SECRET"]),w={id:"antigravity",priority:20,alias:"ag",uiAlias:"ag",display:{name:"Antigravity",icon:"rocket_launch",color:"#F59E0B",website:"https://antigravity.google",notice:{signupUrl:"https://antigravity.google"},deprecated:!0,deprecationNotice:"RISK_NOTICE"},category:"oauth",serviceKinds:["llm","image","webSearch"],transport:{baseUrls:[y],format:"antigravity",headers:{"User-Agent":b},retry:{429:{attempts:3},500:{attempts:3},503:{attempts:3}},usage:{quotaApiUrl:`${y}/v1internal:fetchAvailableModels`,quotaSummaryApiUrl:`${y}/v1internal:retrieveUserQuotaSummary`,loadProjectApiUrl:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",tokenUrl:"https://oauth2.googleapis.com/token"},clientId:v.clientId,clientSecret:v.clientSecret},models:[{id:"gemini-3.8-flash-high",name:"Gemini 3.8 Flash (High)",upstreamModelId:"gemini-3.8-flash-high(high)"},{id:"gemini-3.8-flash-medium",name:"Gemini 3.8 Flash (Medium)",upstreamModelId:"gemini-3.8-flash-medium(medium)"},{id:"gemini-3.8-flash-low",name:"Gemini 3.8 Flash (Low)",upstreamModelId:"gemini-3.8-flash-low(low)"},{id:"gemini-3.8-flash",name:"Gemini 3.8 Flash",upstreamModelId:"gemini-3.8-flash-medium(medium)"},{id:"gemini-3.7-flash-high",name:"Gemini 3.7 Flash (High)",upstreamModelId:"gemini-3.7-flash-tiered(high)"},{id:"gemini-3.7-flash-medium",name:"Gemini 3.7 Flash (Medium)",upstreamModelId:"gemini-3.7-flash-tiered(medium)"},{id:"gemini-3.7-flash-low",name:"Gemini 3.7 Flash (Low)",upstreamModelId:"gemini-3.7-flash-tiered(low)"},{id:"gemini-3.6-flash-high",name:"Gemini 3.6 Flash (High)",upstreamModelId:"gemini-3.6-flash-tiered(high)"},{id:"gemini-3.6-flash-medium",name:"Gemini 3.6 Flash (Medium)",upstreamModelId:"gemini-3.6-flash-tiered(medium)"},{id:"gemini-3.6-flash-low",name:"Gemini 3.6 Flash (Low)",upstreamModelId:"gemini-3.6-flash-tiered(low)"},{id:"gemini-3.5-flash-high",name:"Gemini 3.5 Flash (High)"},{id:"gemini-3-flash-agent",name:"Gemini 3.5 Flash (High)"},{id:"gemini-3.5-flash-low",name:"Gemini 3.5 Flash (Medium)"},{id:"gemini-3.5-flash-extra-low",name:"Gemini 3.5 Flash (Low)"},{id:"gemini-pro-agent",name:"Gemini 3.1 Pro (High)"},{id:"gemini-3.1-pro-low",name:"Gemini 3.1 Pro (Low)"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Thinking)"},{id:"claude-opus-4-6-thinking",name:"Claude Opus 4.6 (Thinking)"},{id:"gpt-oss-120b-medium",name:"GPT-OSS 120B (Medium)"},{id:"gemini-3-flash",name:"Gemini 3 Flash",thinking:!1},{id:"gemini-3.1-flash-image",name:"Gemini 3.1 Flash (Image)",kind:"image",imageGen:!0,capabilities:["textToImage"]}],oauth:{authorizeUrl:"https://accounts.google.com/o/oauth2/v2/auth",tokenUrl:"https://oauth2.googleapis.com/token",userInfoUrl:"https://www.googleapis.com/oauth2/v1/userinfo",scopes:["https://www.googleapis.com/auth/cloud-platform","https://www.googleapis.com/auth/userinfo.email","https://www.googleapis.com/auth/userinfo.profile","https://www.googleapis.com/auth/cclog","https://www.googleapis.com/auth/experimentsandconfigs"],apiEndpoint:"https://daily-cloudcode-pa.googleapis.com",apiVersion:"v1internal",loadCodeAssistEndpoint:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",onboardUserEndpoint:"https://cloudcode-pa.googleapis.com/v1internal:onboardUser",loadCodeAssistUserAgent:b,refreshLeadMs:3e5},searchViaChat:{defaultModel:"gemini-2.5-flash",endpoint:`${y}/v1internal:generateContent`,freeTier:"Free — Google Search grounding through an Antigravity OAuth account."},features:{usage:!0}},M={id:"claude",priority:10,alias:"cc",uiAlias:"cc",display:{name:"Claude Code",icon:"smart_toy",color:"#D97757",website:"https://claude.ai",notice:{signupUrl:"https://claude.ai"},deprecated:!0,deprecationNotice:"RISK_NOTICE"},category:"oauth",transport:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",urlSuffix:"?beta=true",headers:k({os:"MacOS",arch:"arm64"}),quirks:{cloakToolsOnOAuth:!0,claudeToolStrict:!0},auth:{apiKey:{header:"x-api-key",scheme:"raw"},oauth:{header:"Authorization",scheme:"bearer"}},usage:{oauthUrl:"https://api.anthropic.com/api/oauth/usage",profileUrl:"https://api.anthropic.com/api/oauth/profile",orgUrl:"https://api.anthropic.com/v1/organizations/{org_id}/usage",settingsUrl:"https://api.anthropic.com/v1/settings"}},models:[{id:"claude-opus-5-5",name:"Claude Opus 5.5"},{id:"claude-opus-5",name:"Claude Opus 5"},{id:"claude-fable-5-1",name:"Claude Fable 5.1"},{id:"claude-fable-5",name:"Claude Fable 5"},{id:"claude-sonnet-5",name:"Claude Sonnet 5"},{id:"claude-sonnet-5-5",name:"Claude Sonnet 5.5"},{id:"claude-haiku-4-5-20251001",name:"Claude 4.5 Haiku"}],oauth:{clientId:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",authorizeUrl:"https://claude.ai/oauth/authorize",tokenUrl:"https://api.anthropic.com/v1/oauth/token",scopes:["org:create_api_key","user:profile","user:inference"],codeChallengeMethod:"S256",refreshLeadMs:144e5,refresh:{encoding:"json"}},features:{usage:!0,liveModels:!0}},T=n("CODEX_CLI_VERSION","0.155.1",/^\d+\.\d+\.\d+$/),U={id:"codex",priority:30,alias:"cx",uiAlias:"cx",display:{name:"OpenAI Codex",icon:"code",color:"#3B82F6",website:"https://chatgpt.com/codex",notice:{signupUrl:"https://chatgpt.com/codex"},deprecated:!0,deprecationNotice:"RISK_NOTICE",kindNotice:{image:"Requires a ChatGPT Plus (or higher) account. Free accounts are not supported for image generation."}},category:"oauth",thinkingConfig:{options:["auto","none","low","medium","high"],defaultMode:"auto"},transport:{baseUrl:"https://chatgpt.com/backend-api/codex/responses",format:"openai-responses",forceStream:!0,cliVersion:T,headers:{originator:"codex_cli_rs","User-Agent":`codex_cli_rs/${T}`},usage:{url:"https://chatgpt.com/backend-api/wham/usage",resetCreditsUrl:"https://chatgpt.com/backend-api/wham/rate-limit-reset-credits",resetCreditsConsumeUrl:"https://chatgpt.com/backend-api/wham/rate-limit-reset-credits/consume"}},models:[{id:"gpt-6-astra",name:"GPT 6.0 Astra"},{id:"gpt-5.6-sol",name:"GPT 5.6 Sol"},{id:"gpt-5.6-sol-review",name:"GPT 5.6 Sol Review",upstreamModelId:"gpt-5.6-sol",quotaFamily:"review"},{id:"gpt-5.6-terra",name:"GPT 5.6 Terra"},{id:"gpt-5.6-terra-review",name:"GPT 5.6 Terra Review",upstreamModelId:"gpt-5.6-terra",quotaFamily:"review"},{id:"gpt-5.6-luna",name:"GPT 5.6 Luna"},{id:"gpt-5.6-luna-review",name:"GPT 5.6 Luna Review",upstreamModelId:"gpt-5.6-luna",quotaFamily:"review"},{id:"gpt-5.5",name:"GPT 5.5"},{id:"gpt-5.5-review",name:"GPT 5.5 Review",upstreamModelId:"gpt-5.5",quotaFamily:"review"},{id:"codex-auto-review",name:"Codex Auto Review",upstreamModelId:"codex-auto-review",quotaFamily:"review"},{id:"gpt-image-2.5",name:"GPT Image 2.5",capabilities:["text2img","edit","multiImage"],params:["size","quality","background","image_detail","output_format"],kind:"image"},{id:"gpt-image-2.5-flare",name:"GPT Image 2.5 Flare",capabilities:["text2img","edit","multiImage"],params:["size","quality","background","image_detail","output_format"],kind:"image"},{id:"gpt-image-2.5-sunburst",name:"GPT Image 2.5 Sunburst",capabilities:["text2img","edit","multiImage"],params:["size","quality","background","image_detail","output_format"],kind:"image"},{id:"gpt-image-2",name:"GPT Image 2",capabilities:["text2img","edit","multiImage"],params:["size","quality","background","image_detail","output_format"],kind:"image"},{id:"gpt-image-1.5",name:"GPT Image 1.5",capabilities:["text2img","edit","multiImage"],params:["size","quality","background","image_detail","output_format"],kind:"image"},{id:"gpt-5.6-sol-image",name:"GPT 5.6 Sol Image",capabilities:["text2img","edit"],params:["size","quality","background","image_detail","output_format"],kind:"image"},{id:"gpt-5.6-terra-image",name:"GPT 5.6 Terra Image",capabilities:["text2img","edit"],params:["size","quality","background","image_detail","output_format"],kind:"image"},{id:"gpt-5.6-luna-image",name:"GPT 5.6 Luna Image",capabilities:["text2img","edit"],params:["size","quality","background","image_detail","output_format"],kind:"image"},{id:"gpt-5.5-image",name:"GPT 5.5 Image",capabilities:["text2img","edit"],params:["size","quality","background","image_detail","output_format"],kind:"image"},{id:"gpt-5.4-image",name:"GPT 5.4 Image",capabilities:["text2img","edit"],params:["size","quality","background","image_detail","output_format"],kind:"image"},{id:"gpt-5.3-image",name:"GPT 5.3 Image",capabilities:["text2img","edit"],params:["size","quality","background","image_detail","output_format"],kind:"image"}],serviceKinds:["llm","image"],oauth:{clientId:"app_EMoamEEZ73f0CkXaXp7hrann",authorizeUrl:"https://auth.openai.com/oauth/authorize",tokenUrl:"https://auth.openai.com/oauth/token",scope:"openid profile email offline_access",codeChallengeMethod:"S256",fixedPort:1455,callbackPath:"/auth/callback",extraParams:{id_token_add_organizations:"true",codex_cli_simplified_flow:"true",originator:"codex_cli_rs"},refreshLeadMs:432e6,refresh:{encoding:"form",scope:"openid profile email offline_access"},maxRefreshAgeMs:6912e5,trackRefreshAt:!0},features:{usage:!0,liveModels:!0}},C={id:"deepseek",priority:110,alias:"deepseek",aliases:["ds"],uiAlias:"ds",display:{name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com",notice:{apiKeyUrl:"https://platform.deepseek.com/api_keys"}},category:"apikey",transport:{baseUrl:"https://api.deepseek.com/chat/completions",validateUrl:"https://api.deepseek.com/models",reasoningInject:{scope:"all"},quirks:{claudeSupportedToolTypes:["web_search_20250305","web_search_20260209"]}},transports:[{format:"openai",baseUrl:"https://api.deepseek.com/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{format:"claude",baseUrl:"https://api.deepseek.com/anthropic/v1/messages",headers:{...u},auth:{combined:!0,header:"x-api-key",scheme:"raw"}}],models:[{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro"},{id:"deepseek-v4-pro-max",name:"DeepSeek V4 Pro Max",upstreamModelId:"deepseek-v4-pro"},{id:"deepseek-v4-pro-none",name:"DeepSeek V4 Pro No Thinking",upstreamModelId:"deepseek-v4-pro"},{id:"deepseek-v4.1-flash",name:"DeepSeek V4.1 Flash"},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash"},{id:"deepseek-v4-flash-vision-exp",name:"DeepSeek V4 Flash Vision (Exp)"},{id:"deepseek-chat",name:"DeepSeek V3.2 Chat"},{id:"deepseek-reasoner",name:"DeepSeek V3.2 Reasoner"}],features:{usage:!0,usageApikey:!0}},S={id:"gemini-cli",priority:20,hasFree:!0,alias:"gc",uiAlias:"gc",display:{name:"Gemini CLI",icon:"terminal",color:"#4285F4",website:"https://github.com/google-gemini/gemini-cli",notice:{signupUrl:"https://github.com/google-gemini/gemini-cli"},deprecated:!0,deprecationNotice:"RISK_NOTICE"},category:"free",transport:{baseUrl:"https://cloudcode-pa.googleapis.com/v1internal",format:"gemini-cli",cliVersion:"0.34.0",apiClient:"google-genai-sdk/1.41.0 gl-node/v22.19.0",usage:{quotaUrl:"https://cloudcode-pa.googleapis.com/v1internal:retrieveUserQuota",loadCodeAssistUrl:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist"},clientId:x.clientId,clientSecret:x.clientSecret},models:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite"}],oauth:{authorizeUrl:"https://accounts.google.com/o/oauth2/v2/auth",tokenUrl:"https://oauth2.googleapis.com/token",userInfoUrl:"https://www.googleapis.com/oauth2/v1/userinfo",scopes:["https://www.googleapis.com/auth/cloud-platform","https://www.googleapis.com/auth/userinfo.email","https://www.googleapis.com/auth/userinfo.profile"],refresh:{encoding:"form"}},features:{usage:!0}},A={id:"gemini",priority:50,hasFree:!0,alias:"gemini",display:{name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev",notice:{apiKeyUrl:"https://aistudio.google.com/app/apikey"}},category:"freeTier",authType:"apikey",authModes:["apikey"],mediaPriority:1,transport:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",format:"gemini",clientId:x.clientId,clientSecret:x.clientSecret,auth:{apiKey:{header:"x-goog-api-key",scheme:"raw"},oauth:{header:"Authorization",scheme:"bearer"}}},models:[{id:"gemini-3.8-flash",name:"Gemini 3.8 Flash"},{id:"gemini-3.7-flash",name:"Gemini 3.7 Flash"},{id:"gemini-3.6-flash",name:"Gemini 3.6 Flash"},{id:"gemini-3.5-flash-lite",name:"Gemini 3.5 Flash Lite"},{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite"},{id:"gemma-4-31b-it",name:"Gemma 4 31B IT"},{id:"gemini-embedding-2-preview",name:"Gemini Embedding 2 Preview",kind:"embedding"},{id:"gemini-embedding-001",name:"Gemini Embedding 001",kind:"embedding"},{id:"text-embedding-005",name:"Text Embedding 005",kind:"embedding"},{id:"text-embedding-004",name:"Text Embedding 004 (Legacy)",kind:"embedding"},{id:"gemini-3.1-flash-image-preview",name:"Gemini 3.1 Flash Image (Nano Banana 2)",params:[],kind:"image"},{id:"gemini-3-pro-image-preview",name:"Gemini 3 Pro Image (Nano Banana Pro)",params:[],kind:"image"},{id:"gemini-2.5-flash-image",name:"Gemini 2.5 Flash Image (Nano Banana)",params:[],kind:"image"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro (Best)",params:["language","prompt"],kind:"stt"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",params:["language","prompt"],kind:"stt"},{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite (Cheapest)",params:["language","prompt"],kind:"stt"},{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash",params:["language","prompt"],kind:"stt"},{id:"gemini-3.1-flash-tts-preview",name:"Gemini 3.1 Flash TTS",kind:"tts"},{id:"gemini-2.5-flash-preview-tts",name:"Gemini 2.5 Flash TTS",kind:"tts"},{id:"gemini-2.5-pro-preview-tts",name:"Gemini 2.5 Pro TTS",kind:"tts"},{id:"embedding-001",name:"Embedding 001",dimensions:768,kind:"embedding"}],serviceKinds:["llm","embedding","image","imageToText","webSearch","tts","stt"],ttsConfig:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authType:"apikey",authHeader:"key",format:"gemini-tts"},sttConfig:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authType:"apikey",authHeader:"key",format:"gemini-stt"},embeddingConfig:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authType:"apikey",authHeader:"key"},imageConfig:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models"},searchViaChat:{defaultModel:"gemini-2.5-flash",endpoint:"https://generativelanguage.googleapis.com/v1beta/models/{model}:generateContent",pricingUrl:"https://ai.google.dev/pricing",freeTier:"Free tier: 15 RPM, 1M tokens/day on gemini-2.5-flash via AI Studio."}},I={id:"glm",priority:140,alias:"glm",display:{name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn",notice:{apiKeyUrl:"https://open.bigmodel.cn/usercenter/apikeys"}},category:"apikey",transport:{baseUrl:"https://api.z.ai/api/anthropic/v1/messages",format:"claude",urlSuffix:"?beta=true",headers:{...u},auth:{combined:!0,header:"x-api-key",scheme:"raw"},usage:{url:"https://api.z.ai/api/monitor/usage/quota/limit"}},transports:[{format:"openai",baseUrl:"https://api.z.ai/api/coding/paas/v4/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{format:"claude",baseUrl:"https://api.z.ai/api/anthropic/v1/messages",urlSuffix:"?beta=true",headers:{...u},auth:{combined:!0,header:"x-api-key",scheme:"raw"}}],models:[{id:"glm-5.3",name:"GLM 5.3"},{id:"glm-5.3-flash",name:"GLM 5.3 Flash (Vision)"},{id:"glm-5.2",name:"GLM 5.2"},{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5-turbo",name:"GLM 5 Turbo"},{id:"glm-5",name:"GLM 5"},{id:"glm-4.7",name:"GLM 4.7"},{id:"glm-4.6v",name:"GLM 4.6V (Vision)"}],serviceKinds:["llm","webSearch"],searchConfig:{baseUrl:"https://api.z.ai/api/mcp/web_search_prime/mcp",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:0,searchTypes:["web"],defaultMaxResults:5,maxMaxResults:50,timeoutMs:1e4,cacheTTLMs:3e5},features:{usage:!0,usageApikey:!0}},P=n("GROK_CLI_VERSION","1.0.44",/^\d+\.\d+\.\d+$/),F="https://cli-chat-proxy.grok.com/v1",G="grok-shell",L=`grok-shell/${P} (linux; x86_64)`,K=[{id:"alicode-intl",priority:10,alias:"alicode-intl",display:{name:"Alibaba Coding",icon:"cloud",color:"#FF6A00",textIcon:"ALi",website:"https://www.alibabacloud.com/product/coding",notice:{apiKeyUrl:"https://www.alibabacloud.com/product/coding"}},category:"apikey",transport:{baseUrl:"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions",headers:{},quirks:{preserveCacheControl:!0}},models:[{id:"qwen3.5-plus",name:"Qwen3.5 Plus"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"glm-4.7",name:"GLM 4.7"}]},{id:"alicode",priority:20,alias:"alicode",display:{name:"Alibaba",icon:"cloud",color:"#FF6A00",textIcon:"ALi",website:"https://bailian.console.aliyun.com",notice:{apiKeyUrl:"https://bailian.console.aliyun.com/?apiKey=1"}},category:"apikey",transport:{baseUrl:"https://coding.dashscope.aliyuncs.com/v1/chat/completions",headers:{},quirks:{preserveCacheControl:!0}},models:[{id:"qwen3.5-plus",name:"Qwen3.5 Plus"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"qwen3-max-2026-01-23",name:"Qwen3 Max"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"glm-4.7",name:"GLM 4.7"}]},{id:"anthropic",priority:30,alias:"anthropic",display:{name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com",notice:{apiKeyUrl:"https://console.anthropic.com/settings/keys"}},category:"apikey",transport:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",headers:{"anthropic-version":"2023-06-01","Anthropic-Beta":"interleaved-thinking-2025-05-14"}},models:[{id:"claude-sonnet-4-20250514",name:"Claude Sonnet 4"},{id:"claude-opus-4-20250514",name:"Claude Opus 4"},{id:"claude-3-5-sonnet-20241022",name:"Claude 3.5 Sonnet"},{id:"claude-sonnet-5-5",name:"Claude Sonnet 5.5"}],serviceKinds:["llm","imageToText"]},w,{id:"assemblyai",priority:30,alias:"assemblyai",aliases:["aai"],uiAlias:"aai",display:{name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com",notice:{apiKeyUrl:"https://www.assemblyai.com/app/api-keys"}},category:"apikey",authType:"apikey",transport:{baseUrl:"https://api.assemblyai.com/v1/audio/transcriptions",validateUrl:"https://api.assemblyai.com/v1/account"},models:[{id:"universal-3-pro",name:"Universal 3 Pro",params:["language"],kind:"stt"},{id:"universal-2",name:"Universal 2",params:["language"],kind:"stt"},{id:"best",name:"Best (Nano + Universal)",kind:"stt"},{id:"nano",name:"Nano (Fast)",kind:"stt"}],serviceKinds:["stt"],sttConfig:{baseUrl:"https://api.assemblyai.com/v2/transcript",authType:"apikey",authHeader:"authorization",format:"assemblyai"}},{id:"aws-polly",alias:"polly",display:{name:"AWS Polly",icon:"record_voice_over",color:"#FF9900",textIcon:"PL",website:"https://aws.amazon.com/polly/",notice:{text:"Use AWS Secret Access Key as API key; set providerSpecificData.accessKeyId and optional region.",apiKeyUrl:"https://console.aws.amazon.com/iam/home#/security_credentials"}},category:"apikey",authType:"apikey",serviceKinds:["tts"],ttsConfig:{baseUrl:"https://polly.{region}.amazonaws.com/v1/speech",authType:"apikey",authHeader:"aws-sigv4",format:"aws-polly",models:[{id:"standard",name:"Standard"},{id:"neural",name:"Neural"},{id:"long-form",name:"Long-form"},{id:"generative",name:"Generative"}]},hasProviderSpecificData:!0},{id:"azure",priority:40,alias:"azure",display:{name:"Azure OpenAI",icon:"cloud",color:"#0078D4",textIcon:"AZ",website:"https://azure.microsoft.com/en-us/products/ai-services/openai-service",notice:{apiKeyUrl:"https://portal.azure.com/#view/Microsoft_Azure_ProjectOxford/CognitiveServicesHub/~/OpenAI"}},category:"apikey",hasProviderSpecificData:!0,transport:{baseUrl:"",headers:{}}},{id:"black-forest-labs",priority:50,alias:"black-forest-labs",aliases:["bfl"],uiAlias:"bfl",display:{name:"Black Forest Labs",icon:"image",color:"#111827",textIcon:"BF",website:"https://blackforestlabs.ai",notice:{apiKeyUrl:"https://api.bfl.ai"}},category:"apikey",authType:"apikey",transport:null,models:[{id:"flux-pro-1.1",name:"FLUX Pro 1.1",params:["n","size"],kind:"image"},{id:"flux-pro-1.1-ultra",name:"FLUX Pro 1.1 Ultra",params:["size"],kind:"image"},{id:"flux-pro",name:"FLUX Pro",params:["n","size"],kind:"image"},{id:"flux-dev",name:"FLUX Dev",params:["n","size"],kind:"image"},{id:"flux-kontext-pro",name:"FLUX Kontext Pro (Edit)",params:["size"],capabilities:["edit"],kind:"image"},{id:"flux-kontext-max",name:"FLUX Kontext Max (Edit)",params:["size"],capabilities:["edit"],kind:"image"}],serviceKinds:["image"],imageConfig:{baseUrl:"https://api.bfl.ai/v1"}},{id:"blackbox",priority:50,alias:"blackbox",aliases:["bb"],uiAlias:"bb",display:{name:"Blackbox AI",icon:"smart_toy",color:"#5B5FEF",textIcon:"BB",website:"https://blackbox.ai",notice:{apiKeyUrl:"https://www.blackbox.ai/api-management"}},category:"apikey",serviceKinds:["llm"],thinkingConfig:{options:["auto","none","low","medium","high","xhigh"],defaultMode:"auto"},transport:{baseUrl:"https://api.blackbox.ai/v1/chat/completions",thinkingFormat:"openai"},models:[{id:"claude-fable-5",name:"Claude Fable 5",upstreamModelId:"blackboxai/anthropic/claude-fable-5"},{id:"claude-opus-4.8",name:"Claude Opus 4.8",upstreamModelId:"blackboxai/anthropic/claude-opus-4.8"},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6",upstreamModelId:"blackboxai/anthropic/claude-sonnet-4.6"},{id:"gpt-5.5",name:"GPT-5.5",upstreamModelId:"blackboxai/openai/gpt-5.5"},{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",upstreamModelId:"blackboxai/openai/gpt-5.4-pro"},{id:"gpt-5.4",name:"GPT-5.4",upstreamModelId:"blackboxai/openai/gpt-5.4"},{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",upstreamModelId:"blackboxai/openai/gpt-5.3-codex"},{id:"gpt-5.4-nano",name:"GPT-5.4 Nano",upstreamModelId:"blackboxai/openai/gpt-5.4-nano"},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",upstreamModelId:"blackboxai/deepseek/deepseek-v4-flash"},{id:"grok-4.3",name:"Grok 4.3",upstreamModelId:"blackboxai/x-ai/grok-4.3"}]},{id:"brave-search",alias:"brave",display:{name:"Brave Search",icon:"travel_explore",color:"#FB542B",textIcon:"BR",website:"https://brave.com/search/api",notice:{apiKeyUrl:"https://api-dashboard.search.brave.com/app/keys"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch"],searchConfig:{baseUrl:"https://api.search.brave.com/res/v1",method:"GET",authType:"apikey",authHeader:"x-subscription-token",costPerQuery:.005,freeMonthlyQuota:1e3,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:20,timeoutMs:1e4,cacheTTLMs:3e5}},{id:"byteplus",priority:70,alias:"byteplus",aliases:["bpm"],uiAlias:"bpm",display:{name:"BytePlus ModelArk",icon:"cloud",color:"#2563EB",textIcon:"BP",website:"https://console.byteplus.com/ark",notice:{text:"Free credits for new accounts. Access to Seed 2.0, Kimi K2 Thinking, GLM 4.7, GPT-OSS-120B models.",apiKeyUrl:"https://console.byteplus.com/ark/region:ark+ap-southeast-1/apiKey"}},category:"freeTier",transport:{baseUrl:"https://ark.ap-southeast.bytepluses.com/api/coding/v3/chat/completions",headers:{}},models:[{id:"seed-2-0-pro-260328",name:"Seed 2.0 Pro"},{id:"seed-2-0-code-preview-260328",name:"Seed 2.0 Code Preview"},{id:"seed-2-0-mini-260215",name:"Seed 2.0 Mini"},{id:"seed-2-0-lite-260228",name:"Seed 2.0 Lite"},{id:"kimi-k2-thinking-251104",name:"Kimi K2 Thinking"},{id:"glm-4-7-251222",name:"GLM 4.7"},{id:"gpt-oss-120b-250805",name:"GPT-OSS-120B"}],serviceKinds:["llm"]},{id:"cartesia",alias:"cartesia",display:{name:"Cartesia",icon:"spatial_audio",color:"#FF4F8B",textIcon:"CA",website:"https://cartesia.ai",notice:{apiKeyUrl:"https://play.cartesia.ai/keys"}},category:"apikey",authType:"apikey",serviceKinds:["tts"],ttsConfig:{baseUrl:"https://api.cartesia.ai/tts/bytes",authType:"apikey",authHeader:"x-api-key",format:"cartesia",models:[{id:"sonic-2",name:"Sonic 2"},{id:"sonic-3",name:"Sonic 3"}]},hidden:!0},{id:"cerebras",priority:60,alias:"cerebras",display:{name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://www.cerebras.ai",notice:{apiKeyUrl:"https://cloud.cerebras.ai/platform"}},category:"apikey",transport:{baseUrl:"https://api.cerebras.ai/v1/chat/completions",validateUrl:"https://api.cerebras.ai/v1/models",quirks:{dropClientMetadata:!0}},models:[{id:"gpt-oss-120b",name:"GPT OSS 120B"},{id:"zai-glm-4.7",name:"ZAI GLM 4.7"},{id:"llama-3.3-70b",name:"Llama 3.3 70B"},{id:"llama-4-scout-17b-16e-instruct",name:"Llama 4 Scout"},{id:"qwen-3-235b-a22b-instruct-2507",name:"Qwen3 235B A22B"},{id:"qwen-3-32b",name:"Qwen3 32B"}]},{id:"chutes",priority:70,alias:"chutes",aliases:["ch"],uiAlias:"ch",display:{name:"Chutes AI",icon:"water_drop",color:"#ffffffff",textIcon:"CH",website:"https://chutes.ai",notice:{apiKeyUrl:"https://chutes.ai/app/api"}},category:"apikey",transport:{baseUrl:"https://llm.chutes.ai/v1/chat/completions",validateUrl:"https://llm.chutes.ai/v1/models"}},M,{id:"cline",priority:80,alias:"cl",uiAlias:"cl",display:{name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL",website:"https://cline.bot",notice:{signupUrl:"https://cline.bot"}},category:"oauth",authModes:["oauth"],hasOAuth:!0,transport:{baseUrl:"https://api.cline.bot/api/v1/chat/completions",headers:{"HTTP-Referer":"https://cline.bot","X-Title":"Cline"},quirks:{clineEnvelope:!0},tokenUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh",auth:{combined:!0,header:"Authorization",scheme:"bearer",hooks:["clineHeaders"]}},models:[{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7"},{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6"},{id:"openai/gpt-5.3-codex",name:"GPT-5.3 Codex"},{id:"openai/gpt-5.4",name:"GPT-5.4"},{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"kwaipilot/kat-coder-pro",name:"KAT Coder Pro"}],oauth:{appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",authorizeUrl:"https://api.cline.bot/api/v1/auth/authorize",tokenExchangeUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"},features:{liveModels:!0}},{id:"clinepass",priority:85,alias:"clinepass",uiAlias:"clinepass",display:{name:"ClinePass",icon:"vpn_key",color:"#5B9BD5",textIcon:"CP",website:"https://cline.bot",notice:{signupUrl:"https://app.cline.bot"}},category:"oauth",authModes:["apikey","oauth"],hasOAuth:!0,transport:{baseUrl:"https://api.cline.bot/api/v1/chat/completions",headers:{"HTTP-Referer":"https://cline.bot","X-Title":"Cline"},quirks:{clineEnvelope:!0},auth:{combined:!0,header:"Authorization",scheme:"bearer",hooks:["clineHeaders"]}},models:[{id:"cline-pass/glm-5.2",name:"GLM-5.2 (ClinePass)"},{id:"cline-pass/kimi-k2.7-code",name:"Kimi K2.7 Code (ClinePass)"},{id:"cline-pass/kimi-k2.6",name:"Kimi K2.6 (ClinePass)"},{id:"cline-pass/deepseek-v4-pro",name:"DeepSeek V4 Pro (ClinePass)"},{id:"cline-pass/deepseek-v4-flash",name:"DeepSeek V4 Flash (ClinePass)"},{id:"cline-pass/mimo-v2.5",name:"MiMo-V2.5 (ClinePass)"},{id:"cline-pass/mimo-v2.5-pro",name:"MiMo-V2.5-Pro (ClinePass)"},{id:"cline-pass/minimax-m3",name:"MiniMax M3 (ClinePass)"},{id:"cline-pass/qwen3.7-max",name:"Qwen3.7 Max (ClinePass)"},{id:"cline-pass/qwen3.7-plus",name:"Qwen3.7 Plus (ClinePass)"}],oauth:{appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",authorizeUrl:"https://api.cline.bot/api/v1/auth/authorize",tokenUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"},thinkingConfig:{options:["auto","on","off"],defaultMode:"auto"},features:{liveModels:!0}},{id:"cloudflare-ai",priority:60,hasFree:!0,alias:"cloudflare-ai",aliases:["cf"],uiAlias:"cf",display:{name:"Cloudflare",icon:"cloud",color:"#F38020",textIcon:"CF",website:"https://developers.cloudflare.com/workers-ai/",notice:{text:"Workers AI free tier. Requires a Cloudflare API token and Account ID.",apiKeyUrl:"https://dash.cloudflare.com/profile/api-tokens"}},category:"freeTier",authType:"apikey",authModes:["apikey"],hasProviderSpecificData:!0,transport:{baseUrl:"https://api.cloudflare.com/client/v4/accounts/{accountId}/ai/v1/chat/completions",thinkingFormat:"openai"},models:[{id:"@cf/meta/llama-3.2-1b-instruct",name:"Llama 3.2 1B Instruct"},{id:"@cf/meta/llama-3.2-3b-instruct",name:"Llama 3.2 3B Instruct"},{id:"@cf/meta/llama-3.1-8b-instruct-fp8-fast",name:"Llama 3.1 8B Instruct FP8 Fast"},{id:"@cf/meta/llama-3.1-8b-instruct-awq",name:"Llama 3.1 8B Instruct AWQ"},{id:"@cf/mistralai/mistral-small-3.1-24b-instruct",name:"Mistral Small 3.1 24B Instruct"},{id:"@cf/meta/llama-3.1-70b-instruct-fp8-fast",name:"Llama 3.1 70B Instruct FP8 Fast"},{id:"@cf/meta/llama-3.3-70b-instruct-fp8-fast",name:"Llama 3.3 70B Instruct FP8 Fast"},{id:"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b",name:"DeepSeek R1 Distill Qwen 32B"},{id:"@cf/moonshotai/kimi-k2.5",name:"Kimi K2.5"},{id:"@cf/moonshotai/kimi-k2.6",name:"Kimi K2.6"},{id:"@cf/zai-org/glm-4.7-flash",name:"GLM 4.7 Flash"},{id:"@cf/qwen/qwq-32b",name:"QwQ 32B"},{id:"@cf/qwen/qwen2.5-coder-32b-instruct",name:"Qwen 2.5 Coder 32B Instruct"},{id:"@cf/black-forest-labs/flux-2-klein-9b",name:"FLUX.2 Klein 9B",params:["size"],kind:"image"},{id:"@cf/black-forest-labs/flux-2-klein-4b",name:"FLUX.2 Klein 4B",params:["size"],kind:"image"},{id:"@cf/black-forest-labs/flux-2-dev",name:"FLUX.2 Dev",params:["size"],kind:"image"},{id:"@cf/leonardo/lucid-origin",name:"Lucid Origin",params:["size"],kind:"image"},{id:"@cf/leonardo/phoenix-1.0",name:"Phoenix 1.0",params:["size"],kind:"image"},{id:"@cf/black-forest-labs/flux-1-schnell",name:"FLUX.1 Schnell",params:["size"],kind:"image"},{id:"@cf/bytedance/stable-diffusion-xl-lightning",name:"SDXL Lightning",params:["size"],kind:"image"},{id:"@cf/lykon/dreamshaper-8-lcm",name:"DreamShaper 8 LCM",params:["size"],kind:"image"},{id:"@cf/runwayml/stable-diffusion-v1-5-img2img",name:"Stable Diffusion v1.5 Img2Img",params:["size"],capabilities:["edit"],kind:"image"},{id:"@cf/runwayml/stable-diffusion-v1-5-inpainting",name:"Stable Diffusion v1.5 Inpainting",params:["size"],capabilities:["edit","mask"],kind:"image"},{id:"@cf/stabilityai/stable-diffusion-xl-base-1.0",name:"SDXL Base 1.0",params:["size"],kind:"image"}],serviceKinds:["llm","image"],imageConfig:{baseUrl:"https://api.cloudflare.com/client/v4/accounts"}},{id:"codebuddy-cn",alias:"cbcn",uiAlias:"cbcn",hidden:!1,priority:90,display:{name:"CodeBuddy CN",icon:"smart_toy",color:"#006EFF",website:"https://copilot.tencent.com",notice:{signupUrl:"https://copilot.tencent.com"}},category:"oauth",authModes:["oauth","apikey"],hasOAuth:!0,transport:{baseUrl:"https://copilot.tencent.com/v2/chat/completions",forceStream:!0,thinkingFormat:"openai",headers:{"User-Agent":"CLI/2.108.1 CodeBuddy/2.108.1","X-Product":"SaaS","X-IDE-Type":"CLI","X-IDE-Name":"CLI","x-requested-with":"XMLHttpRequest","x-codebuddy-request":"1"},auth:{combined:!0,header:"Authorization",scheme:"bearer"},usage:{url:"https://copilot.tencent.com/v2/billing/meter/get-user-resource"}},models:[{id:"glm-5.2",name:"GLM-5.2"},{id:"glm-5.1",name:"GLM-5.1"},{id:"glm-5v-turbo",name:"GLM-5v-Turbo"},{id:"minimax-m3",name:"MiniMax-M3"},{id:"kimi-k2.7",name:"Kimi-K2.7-Code"},{id:"kimi-k2.6",name:"Kimi-K2.6"},{id:"hy3",name:"Hy3"},{id:"hy4-preview",name:"Hy4-Preview"},{id:"glm-5.3",name:"GLM-5.3"},{id:"glm-5.3-flash",name:"GLM-5.3-Flash"},{id:"kimi-k3-1",name:"Kimi-K3"},{id:"deepseek-v4-pro",name:"DeepSeek-V4-Pro"},{id:"deepseek-v4.1-flash",name:"DeepSeek-V4.1-Flash"}],oauth:{baseUrl:"https://copilot.tencent.com",stateUrl:"https://copilot.tencent.com/v2/plugin/auth/state",tokenUrl:"https://copilot.tencent.com/v2/plugin/auth/token",refreshUrl:"https://copilot.tencent.com/v2/plugin/auth/token/refresh",userAgent:"CLI/2.63.2 CodeBuddy/2.63.2",platform:"CLI",pollInterval:5e3},features:{usage:!0,usageApikey:!0}},U,{id:"cohere",priority:90,alias:"cohere",display:{name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com",notice:{apiKeyUrl:"https://dashboard.cohere.com/api-keys"}},category:"apikey",transport:{baseUrl:"https://api.cohere.ai/v1/chat/completions",validateUrl:"https://api.cohere.ai/v1/models"},models:[{id:"command-r-plus-08-2024",name:"Command R+ (Aug 2024)"},{id:"command-r-08-2024",name:"Command R (Aug 2024)"},{id:"command-a-03-2025",name:"Command A (Mar 2025)"}]},{id:"comfyui",priority:120,alias:"comfyui",display:{name:"ComfyUI",icon:"account_tree",color:"#4CAF50",textIcon:"CF",website:"https://github.com/comfyanonymous/ComfyUI"},category:"apikey",transport:null,models:[{id:"flux-dev",name:"FLUX Dev",params:["n","size"],kind:"image"},{id:"sdxl",name:"SDXL",params:["n","size"],kind:"image"}],serviceKinds:["image"],imageConfig:{baseUrl:"http://localhost:8188"}},{id:"commandcode",priority:100,alias:"commandcode",aliases:["cmc"],uiAlias:"cmc",display:{name:"Command Code",icon:"smart_toy",color:"#000000",textIcon:"CC",website:"https://commandcode.ai",notice:{text:"Use your CommandCode CLI API key (starts with user_...) from ~/.commandcode/auth.json or commandcode.ai/studio.",apiKeyUrl:"https://commandcode.ai/studio"}},category:"apikey",transport:{baseUrl:"https://api.commandcode.ai/alpha/generate",format:"commandcode",forceStream:!0,headers:{"x-command-code-version":"0.25.7","x-cli-environment":"cli"}},models:[{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro"},{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash"},{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6"},{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5"},{id:"zai-org/GLM-5.1",name:"GLM 5.1"},{id:"zai-org/GLM-5",name:"GLM 5"},{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax M2.5"},{id:"Qwen/Qwen3.6-Max-Preview",name:"Qwen 3.6 Max Preview"},{id:"Qwen/Qwen3.6-Plus",name:"Qwen 3.6 Plus"},{id:"stepfun/Step-3.5-Flash",name:"Step 3.5 Flash"}],features:{usage:!0,usageApikey:!0}},{id:"coqui",alias:"coqui",display:{name:"Coqui TTS",icon:"record_voice_over",color:"#10B981",textIcon:"CQ",website:"https://github.com/coqui-ai/TTS"},category:"freeTier",authType:"none",serviceKinds:["tts"],noAuth:!0,ttsConfig:{baseUrl:"http://localhost:5002/api/tts",authType:"none",authHeader:"none",format:"coqui",models:[{id:"tts_models/en/ljspeech/tacotron2-DDC",name:"Tacotron2 DDC (LJSpeech)"}]},hidden:!0},{id:"cursor",priority:50,alias:"cu",uiAlias:"cu",display:{name:"Cursor IDE",icon:"edit_note",color:"#00D4AA",website:"https://cursor.com",notice:{signupUrl:"https://cursor.com"}},category:"oauth",transport:{baseUrl:"https://api2.cursor.sh",chatPath:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",format:"cursor",headers:{"connect-accept-encoding":"gzip","connect-protocol-version":"1","Content-Type":"application/connect+proto","User-Agent":"connect-es/1.6.1"},clientVersion:"3.12.17",usage:{url:"https://api2.cursor.sh/aiserver.v1.DashboardService/GetCurrentPeriodUsage",planInfoUrl:"https://api2.cursor.sh/aiserver.v1.DashboardService/GetPlanInfo"}},models:[{id:"default",name:"Auto (Server Picks)"},{id:"claude-4.5-opus-high-thinking",name:"Claude 4.5 Opus High Thinking"},{id:"claude-4.5-opus-high",name:"Claude 4.5 Opus High"},{id:"claude-4.5-sonnet-thinking",name:"Claude 4.5 Sonnet Thinking"},{id:"claude-4.5-sonnet",name:"Claude 4.5 Sonnet"},{id:"claude-4.5-haiku",name:"Claude 4.5 Haiku"},{id:"claude-4.5-opus",name:"Claude 4.5 Opus"},{id:"gpt-5.2-codex",name:"GPT 5.2 Codex"},{id:"claude-4.6-opus-max",name:"Claude 4.6 Opus Max"},{id:"claude-4.6-sonnet-medium-thinking",name:"Claude 4.6 Sonnet Medium Thinking"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gpt-5.2",name:"GPT 5.2"},{id:"gpt-5.3-codex",name:"GPT 5.3 Codex"}],oauth:{apiEndpoint:"https://api2.cursor.sh",chatEndpoint:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",modelsEndpoint:"/agent.v1.AgentService/GetUsableModels",api3Endpoint:"https://api3.cursor.sh",agentEndpoint:"https://agent.api5.cursor.sh",agentNonPrivacyEndpoint:"https://agentn.api5.cursor.sh",clientVersion:"3.12.17",clientType:"ide",loginUrl:"https://cursor.com/loginDeepControl",pollUrl:"https://api2.cursor.sh/auth/poll",refreshUrl:"https://api2.cursor.sh/oauth/token",refreshClientId:"KbZUR41cY7W6zRSdpSUJ7I7mLYBKOCmB",refreshLeadMs:864e5,dbKeys:{accessToken:"cursorAuth/accessToken",refreshToken:"cursorAuth/refreshToken",machineId:"storage.serviceMachineId"}},features:{usage:!0,liveModels:!0}},{id:"deepgram",priority:20,alias:"deepgram",aliases:["dg"],uiAlias:"dg",display:{name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com",notice:{text:"$200 free credit on signup (no card required). Aura-1: $0.015/1k chars, Aura-2: $0.030/1k chars (Pay-As-You-Go).",apiKeyUrl:"https://console.deepgram.com/api-keys"}},category:"apikey",authType:"apikey",transport:{baseUrl:"https://api.deepgram.com/v1/listen"},models:[{id:"nova-3",name:"Nova 3",params:["language"],kind:"stt"},{id:"nova-2",name:"Nova 2",params:["language"],kind:"stt"},{id:"whisper-large",name:"Whisper Large",params:["language"],kind:"stt"},{id:"nova",name:"Nova",kind:"stt"}],serviceKinds:["stt"],sttConfig:{baseUrl:"https://api.deepgram.com/v1/listen",authType:"apikey",authHeader:"token",format:"deepgram"}},C,{id:"edge-tts",alias:"edge-tts",display:{name:"Edge TTS",icon:"record_voice_over",color:"#0078D4",textIcon:"ET"},category:"freeTier",authType:"none",serviceKinds:["tts"],mediaPriority:5,noAuth:!0,ttsConfig:{baseUrl:"edge-tts",authType:"none",authHeader:"none",format:"edge-tts",models:[]}},{id:"elevenlabs",alias:"el",display:{name:"ElevenLabs",icon:"record_voice_over",color:"#6C47FF",textIcon:"EL",website:"https://elevenlabs.io",notice:{apiKeyUrl:"https://elevenlabs.io/app/settings/api-keys"}},category:"apikey",authType:"apikey",serviceKinds:["tts"],ttsConfig:{baseUrl:"https://api.elevenlabs.io/v1/text-to-speech",authType:"apikey",authHeader:"xi-api-key",format:"elevenlabs",models:[{id:"eleven_multilingual_v2",name:"Eleven Multilingual v2"},{id:"eleven_turbo_v2_5",name:"Eleven Turbo v2.5"}]}},{id:"exa",alias:"exa",display:{name:"Exa",icon:"manage_search",color:"#2563EB",textIcon:"EX",website:"https://exa.ai",notice:{apiKeyUrl:"https://dashboard.exa.ai/api-keys"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch","webFetch"],searchConfig:{baseUrl:"https://api.exa.ai/search",method:"POST",authType:"apikey",authHeader:"x-api-key",costPerQuery:.007,freeMonthlyQuota:1e3,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:100,timeoutMs:1e4,cacheTTLMs:3e5},fetchConfig:{baseUrl:"https://api.exa.ai/contents",method:"POST",authType:"apikey",authHeader:"x-api-key",costPerQuery:.001,freeMonthlyQuota:1e3,formats:["text","markdown"],maxCharacters:1e5,timeoutMs:15e3}},{id:"fal-ai",priority:90,hasFree:!0,alias:"fal-ai",aliases:["fal"],uiAlias:"fal",display:{name:"Fal.ai",icon:"image",color:"#2563EB",textIcon:"FL",website:"https://fal.ai",notice:{apiKeyUrl:"https://fal.ai/dashboard/keys"}},category:"apikey",authType:"apikey",transport:null,models:[{id:"fal-ai/flux/schnell",name:"FLUX Schnell",params:["n","size"],kind:"image"},{id:"fal-ai/flux/dev",name:"FLUX Dev",params:["n","size"],kind:"image"},{id:"fal-ai/flux-pro/v1.1",name:"FLUX Pro v1.1",params:["n","size"],kind:"image"},{id:"fal-ai/flux-pro/v1.1-ultra",name:"FLUX Pro v1.1 Ultra",params:["n","size"],kind:"image"},{id:"fal-ai/recraft-v3",name:"Recraft V3",params:["n","size","style"],kind:"image"},{id:"fal-ai/ideogram/v2",name:"Ideogram V2",params:["n","size","style"],kind:"image"},{id:"fal-ai/stable-diffusion-v35-large",name:"SD 3.5 Large",params:["n","size"],kind:"image"}],serviceKinds:["image"],imageConfig:{baseUrl:"https://queue.fal.run"}},{id:"featherless",priority:65,alias:"featherless",aliases:["fl"],uiAlias:"fl",display:{name:"Featherless",icon:"flutter_dash",color:"#111827",textIcon:"FL",website:"https://featherless.ai",notice:{apiKeyUrl:"https://featherless.ai/account/api-keys"}},category:"apikey",authType:"apikey",transport:{baseUrl:"https://api.featherless.ai/v1/chat/completions",validateUrl:"https://api.featherless.ai/v1/models"},models:[{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro"},{id:"deepseek-ai/DeepSeek-V4-Flash",name:"DeepSeek V4 Flash"},{id:"zai-org/GLM-5.2",name:"GLM 5.2"},{id:"zai-org/GLM-5.1",name:"GLM 5.1"},{id:"moonshotai/Kimi-K2.7-Code",name:"Kimi K2.7 Code"},{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6"},{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5"}]},{id:"firecrawl",alias:"firecrawl",display:{name:"Firecrawl",icon:"local_fire_department",color:"#F59E0B",textIcon:"FC",website:"https://firecrawl.dev",notice:{apiKeyUrl:"https://www.firecrawl.dev/app/api-keys"}},category:"apikey",authType:"apikey",serviceKinds:["webFetch"],fetchConfig:{baseUrl:"https://api.firecrawl.dev/v1/scrape",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:.002,freeMonthlyQuota:500,formats:["markdown","html","text"],maxCharacters:2e5,timeoutMs:3e4}},{id:"fireworks",priority:50,alias:"fireworks",display:{name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai",notice:{apiKeyUrl:"https://fireworks.ai/account/api-keys"}},category:"apikey",authType:"apikey",transport:{baseUrl:"https://api.fireworks.ai/inference/v1/chat/completions",validateUrl:"https://api.fireworks.ai/inference/v1/models"},models:[{id:"accounts/fireworks/models/deepseek-v3p1",name:"DeepSeek V3.1"},{id:"accounts/fireworks/models/llama-v3p3-70b-instruct",name:"Llama 3.3 70B"},{id:"accounts/fireworks/models/qwen3-235b-a22b",name:"Qwen3 235B"},{id:"nomic-ai/nomic-embed-text-v1.5",name:"Nomic Embed Text v1.5",kind:"embedding"}],serviceKinds:["llm","embedding"],embeddingConfig:{baseUrl:"https://api.fireworks.ai/inference/v1/embeddings"}},S,A,{id:"github",priority:40,alias:"gh",uiAlias:"gh",display:{name:"GitHub Copilot",icon:"code",color:"#333333",website:"https://github.com/features/copilot",notice:{signupUrl:"https://github.com/features/copilot"},deprecated:!0,deprecationNotice:"RISK_NOTICE"},category:"oauth",transport:{baseUrl:"https://api.githubcopilot.com/chat/completions",responsesUrl:"https://api.githubcopilot.com/responses",messagesUrl:"https://api.githubcopilot.com/v1/messages",headers:{"copilot-integration-id":"vscode-chat","editor-version":"vscode/1.110.0","editor-plugin-version":"copilot-chat/0.38.0","user-agent":"GitHubCopilotChat/0.38.0","openai-intent":"conversation-panel","x-github-api-version":"2025-04-01","x-vscode-user-agent-library-version":"electron-fetch","X-Initiator":"user",Accept:"application/json","Content-Type":"application/json"},copilot:{vscodeVersion:"1.110.0",chatVersion:"0.38.0",userAgent:"GitHubCopilotChat/0.38.0",apiVersion:"2025-04-01"},usage:{url:"https://api.github.com/copilot_internal/user"}},models:[{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.2-codex",name:"GPT-5.2 Codex"},{id:"gpt-5.3-codex",name:"GPT-5.3 Codex"},{id:"gpt-5.4",name:"GPT-5.4"},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"claude-opus-4.5",name:"Claude Opus 4.5"},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4.6",name:"Claude Opus 4.6"},{id:"claude-opus-4.7",name:"Claude Opus 4.7"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash"},{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro"},{id:"grok-code-fast-1",name:"Grok Code Fast 1"},{id:"oswe-vscode-prime",name:"Raptor Mini"},{id:"goldeneye-free-auto",name:"GoldenEye"},{id:"text-embedding-3-small",name:"Text Embedding 3 Small (GitHub)",kind:"embedding"},{id:"text-embedding-3-large",name:"Text Embedding 3 Large (GitHub)",kind:"embedding"}],serviceKinds:["llm","embedding"],embeddingConfig:{baseUrl:"https://models.github.ai/inference/embeddings",authType:"apikey",authHeader:"bearer"},oauth:{clientId:"Iv1.b507a08c87ecfe98",authorizeUrl:"https://github.com/login/oauth/authorize",deviceCodeUrl:"https://github.com/login/device/code",tokenUrl:"https://github.com/login/oauth/access_token",userInfoUrl:"https://api.github.com/user",scopes:"read:user",apiVersion:"2022-11-28",copilotTokenUrl:"https://api.github.com/copilot_internal/v2/token",userAgent:"GitHubCopilotChat/0.26.7",editorVersion:"vscode/1.85.0",editorPluginVersion:"copilot-chat/0.26.7"},features:{usage:!0,liveModels:!0}},{id:"gitlab",hidden:!0,priority:100,display:{name:"GitLab Duo",icon:"code",color:"#FC6D26",textIcon:"GL",website:"https://gitlab.com",notice:{signupUrl:"https://gitlab.com"}},category:"oauth",transport:{baseUrl:"https://gitlab.com/api/v4/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},oauth:{defaultBaseUrl:"https://gitlab.com",authorizeUrlPath:"/oauth/authorize",tokenUrlPath:"/oauth/token",userInfoUrlPath:"/api/v4/user",scope:"api read_user",codeChallengeMethod:"S256"}},{id:"glm-cn",priority:130,alias:"glm-cn",display:{name:"GLM (China)",icon:"code",color:"#DC2626",textIcon:"GC",website:"https://open.bigmodel.cn",notice:{apiKeyUrl:"https://open.bigmodel.cn/usercenter/apikeys"}},category:"apikey",transport:{baseUrl:"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",headers:{},usage:{url:"https://open.bigmodel.cn/api/monitor/usage/quota/limit"}},models:[{id:"glm-5.3",name:"GLM 5.3"},{id:"glm-5.3-flash",name:"GLM 5.3 Flash (Vision)"},{id:"glm-5.2",name:"GLM 5.2"},{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5-turbo",name:"GLM 5 Turbo"},{id:"glm-5",name:"GLM 5"},{id:"glm-4.7",name:"GLM-4.7"},{id:"glm-4.6v",name:"GLM 4.6V (Vision)"},{id:"glm-4.6",name:"GLM-4.6"},{id:"glm-4.5-air",name:"GLM-4.5-Air"}],features:{usage:!0,usageApikey:!0}},I,{id:"google-pse",alias:"gpse",display:{name:"Google PSE",icon:"search",color:"#4285F4",textIcon:"GP",website:"https://programmablesearchengine.google.com",notice:{apiKeyUrl:"https://programmablesearchengine.google.com/controlpanel/create"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch"],searchConfig:{baseUrl:"https://www.googleapis.com/customsearch/v1",method:"GET",authType:"apikey",authHeader:"key",costPerQuery:.005,freeMonthlyQuota:3e3,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:10,timeoutMs:1e4,cacheTTLMs:3e5}},{id:"google-tts",alias:"google-tts",display:{name:"Google TTS",icon:"record_voice_over",color:"#4285F4",textIcon:"GT"},category:"freeTier",authType:"none",serviceKinds:["tts"],mediaPriority:5,noAuth:!0,ttsConfig:{baseUrl:"google-tts",authType:"none",authHeader:"none",format:"google-tts",models:[]}},{id:"grok-cli",priority:275,alias:"gcli",aliases:["grok-build","gb"],uiAlias:"gcli",display:{name:"Grok CLI (Grok Build)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"GC",website:"https://x.ai",notice:{text:"Sign in with your xAI / Grok account via device code. Uses Grok Build subscription credits (cli-chat-proxy.grok.com).",signupUrl:"https://grok.com/supergrok"}},category:"oauth",authModes:["oauth"],hasOAuth:!0,thinkingConfig:{options:["low","medium","high","xhigh"],defaultMode:"high"},transport:{baseUrl:`${F}/responses`,format:"openai-responses",forceStream:!0,modelsUrl:`${F}/models`,userUrl:`${F}/user`,billingUrl:`${F}/billing`,clientVersion:P,clientIdentifier:G,tokenAuth:"xai-grok-cli",headers:{"User-Agent":L,"x-grok-client-identifier":G,"x-grok-client-version":P},usage:{url:`${F}/billing?format=credits`,userUrl:`${F}/user?include=subscription`},retry:{429:{attempts:2,delayMs:2e3},502:{attempts:2,delayMs:1500},503:{attempts:2,delayMs:1500}}},models:[{id:"grok-build",name:"Grok Build",contextLength:5e5,maxOutputTokens:64e3},{id:"grok-4.5",name:"Grok 4.5"},{id:"grok-4.5-high",name:"Grok 4.5 (High)",upstreamModelId:"grok-4.5"},{id:"grok-4.5-medium",name:"Grok 4.5 (Medium)",upstreamModelId:"grok-4.5"},{id:"grok-4.5-low",name:"Grok 4.5 (Low)",upstreamModelId:"grok-4.5"}],features:{usage:!0,liveModels:!0},oauth:{clientId:"b1a00492-073a-47ea-816f-4c329264a828",deviceCodeUrl:"https://auth.x.ai/oauth2/device/code",tokenUrl:"https://auth.x.ai/oauth2/token",refreshUrl:"https://auth.x.ai/oauth2/token",scope:"openid profile email offline_access grok-cli:access api:access conversations:read conversations:write",referrer:"grok-build",refreshLeadMs:3e5}},{id:"grok-web",priority:150,alias:"grok-web",aliases:["gw"],uiAlias:"gw",display:{name:"Grok Web (Subscription)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"GW",website:"https://grok.com"},category:"webCookie",authType:"cookie",authHint:"Paste your sso= cookie value from grok.com",transport:{baseUrl:"https://grok.com/rest/app-chat/conversations/new",format:"grok-web",authType:"cookie"},models:[{id:"grok-3",name:"Grok 3"},{id:"grok-3-mini",name:"Grok 3 Mini (Thinking)"},{id:"grok-3-thinking",name:"Grok 3 Thinking"},{id:"grok-4",name:"Grok 4"},{id:"grok-4-mini",name:"Grok 4 Mini (Thinking)"},{id:"grok-4-thinking",name:"Grok 4 Thinking"},{id:"grok-4-heavy",name:"Grok 4 Heavy (SuperGrok)"},{id:"grok-4.1-mini",name:"Grok 4.1 Mini (Thinking)"},{id:"grok-4.1-fast",name:"Grok 4.1 Fast"},{id:"grok-4.1-expert",name:"Grok 4.1 Expert"},{id:"grok-4.1-thinking",name:"Grok 4.1 Thinking"},{id:"grok-4.2",name:"Grok 4.2 (4.20 Beta)"}],passthroughModels:!0},{id:"groq",priority:60,hasFree:!0,alias:"groq",display:{name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com",notice:{apiKeyUrl:"https://console.groq.com/keys"}},category:"apikey",transport:{baseUrl:"https://api.groq.com/openai/v1/chat/completions",validateUrl:"https://api.groq.com/openai/v1/models",usage:{url:"https://api.groq.com/openai/v1/models"}},models:[{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B"},{id:"meta-llama/llama-4-maverick-17b-128e-instruct",name:"Llama 4 Maverick"},{id:"qwen/qwen3-32b",name:"Qwen3 32B"},{id:"openai/gpt-oss-120b",name:"GPT-OSS 120B"},{id:"whisper-large-v3",name:"Whisper Large v3",params:["language","response_format","temperature","prompt"],kind:"stt"},{id:"whisper-large-v3-turbo",name:"Whisper Large v3 Turbo",params:["language","response_format","temperature","prompt"],kind:"stt"},{id:"distil-whisper-large-v3-en",name:"Distil Whisper Large v3 EN",params:["language","response_format","temperature","prompt"],kind:"stt"}],serviceKinds:["llm","imageToText","stt"],sttConfig:{baseUrl:"https://api.groq.com/openai/v1/audio/transcriptions",authType:"apikey",authHeader:"bearer",format:"openai"},features:{usage:!0,usageApikey:!0}},{id:"huggingface",priority:70,hasFree:!0,alias:"huggingface",aliases:["hf"],uiAlias:"hf",display:{name:"HuggingFace",icon:"face",color:"#FFD21E",textIcon:"HF",website:"https://huggingface.co",notice:{apiKeyUrl:"https://huggingface.co/settings/tokens"}},category:"apikey",authType:"apikey",hiddenKinds:["tts"],transport:null,models:[{id:"black-forest-labs/FLUX.1-schnell",name:"FLUX.1 Schnell",params:[],kind:"image"},{id:"stabilityai/stable-diffusion-xl-base-1.0",name:"SDXL Base 1.0",params:[],kind:"image"},{id:"openai/whisper-large-v3",name:"Whisper Large v3 (HF)",params:["language"],kind:"stt"},{id:"openai/whisper-small",name:"Whisper Small (HF)",params:["language"],kind:"stt"}],serviceKinds:["image","stt"],imageConfig:{baseUrl:"https://api-inference.huggingface.co/models"}},{id:"hyperbolic",priority:160,alias:"hyperbolic",aliases:["hyp"],uiAlias:"hyp",display:{name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz",notice:{apiKeyUrl:"https://app.hyperbolic.xyz/settings"}},category:"apikey",authType:"apikey",transport:{baseUrl:"https://api.hyperbolic.xyz/v1/chat/completions",validateUrl:"https://api.hyperbolic.xyz/v1/models"},models:[{id:"Qwen/QwQ-32B",name:"QwQ 32B"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"deepseek-ai/DeepSeek-V3",name:"DeepSeek V3"},{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B"},{id:"meta-llama/Llama-3.2-3B-Instruct",name:"Llama 3.2 3B"},{id:"Qwen/Qwen2.5-72B-Instruct",name:"Qwen 2.5 72B"},{id:"Qwen/Qwen2.5-Coder-32B-Instruct",name:"Qwen 2.5 Coder 32B"},{id:"NousResearch/Hermes-3-Llama-3.1-70B",name:"Hermes 3 70B"}]},{id:"iflow",hidden:!0,priority:110,alias:"if",display:{name:"iFlow AI",icon:"water_drop",color:"#6366F1",website:"https://iflow.cn",notice:{signupUrl:"https://iflow.cn"}},category:"oauth",transport:{baseUrl:"https://apis.iflow.cn/v1/chat/completions",thinkingFormat:"openai",headers:{"User-Agent":"iFlow-Cli"}},models:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-max",name:"Qwen3 Max"},{id:"qwen3-vl-plus",name:"Qwen3 VL Plus"},{id:"qwen3-max-preview",name:"Qwen3 Max Preview"},{id:"qwen3-235b",name:"Qwen3 235B A22B"},{id:"qwen3-235b-a22b-instruct",name:"Qwen3 235B A22B Instruct"},{id:"qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking"},{id:"qwen3-32b",name:"Qwen3 32B"},{id:"kimi-k2",name:"Kimi K2"},{id:"deepseek-v3.2",name:"DeepSeek V3.2 Exp"},{id:"deepseek-v3.1",name:"DeepSeek V3.1 Terminus"},{id:"deepseek-v3",name:"DeepSeek V3 671B"},{id:"deepseek-r1",name:"DeepSeek R1"},{id:"glm-4.7",name:"GLM 4.7"},{id:"iflow-rome-30ba3b",name:"iFlow ROME"}],oauth:{clientId:"10009311001",clientSecret:"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",authorizeUrl:"https://iflow.cn/oauth",tokenUrl:"https://iflow.cn/oauth/token",userInfoUrl:"https://iflow.cn/api/oauth/getUserInfo",extraParams:{loginMethod:"phone",type:"phone"},refreshLeadMs:864e5}},{id:"inworld",alias:"inworld",display:{name:"Inworld TTS",icon:"record_voice_over",color:"#FF6B6B",textIcon:"IW",website:"https://inworld.ai",notice:{text:"Free tier: 40 minutes/month TTS. Paid: TTS-1.5 Mini $0.01/min ($15/1M chars), TTS-1.5 Max $0.025/min ($30/1M chars). 270+ voices, 15 languages.",apiKeyUrl:"https://platform.inworld.ai/api-keys"}},category:"apikey",authType:"apikey",serviceKinds:["tts"],ttsConfig:{baseUrl:"https://api.inworld.ai/tts/v1/voice",authType:"apikey",authHeader:"basic",format:"inworld",models:[{id:"inworld-tts-1.5-mini",name:"Inworld TTS 1.5 Mini ($0.01/min)"},{id:"inworld-tts-1.5-max",name:"Inworld TTS 1.5 Max ($0.025/min)"}]}},{id:"jina-ai",alias:"jina",display:{name:"Jina AI",icon:"blur_on",color:"#2563EB",textIcon:"JA",website:"https://jina.ai",notice:{text:"10M free tokens on signup (non-commercial), no credit card required.",apiKeyUrl:"https://jina.ai/?sui=apikey"}},category:"apikey",authType:"apikey",serviceKinds:["embedding"],embeddingConfig:{baseUrl:"https://api.jina.ai/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"jina-embeddings-v3",name:"Jina Embeddings v3",dimensions:1024},{id:"jina-embeddings-v2-base-en",name:"Jina Embeddings v2 Base EN",dimensions:768},{id:"jina-embeddings-v2-base-code",name:"Jina Embeddings v2 Base Code",dimensions:768}]}},{id:"jina-reader",alias:"jina-reader",display:{name:"Jina Reader",icon:"menu_book",color:"#000000",textIcon:"JR",website:"https://jina.ai/reader",notice:{apiKeyUrl:"https://jina.ai/?sui=apikey"}},category:"apikey",authType:"apikey",serviceKinds:["webFetch"],fetchConfig:{baseUrl:"https://r.jina.ai",method:"GET",authType:"apikey",authHeader:"bearer",costPerQuery:0,freeMonthlyQuota:1e6,formats:["markdown","text","html"],maxCharacters:2e5,timeoutMs:3e4}},{id:"kilocode",priority:70,alias:"kc",uiAlias:"kc",display:{name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC",website:"https://kilocode.ai",notice:{signupUrl:"https://kilocode.ai"}},category:"oauth",transport:{baseUrl:"https://api.kilo.ai/api/openrouter/chat/completions",headers:{},auth:{combined:!0,header:"Authorization",scheme:"bearer",hooks:["kilocodeOrg"]}},models:[{id:"anthropic/claude-sonnet-4-20250514",name:"Claude Sonnet 4"},{id:"anthropic/claude-opus-4-20250514",name:"Claude Opus 4"},{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"openai/gpt-4.1",name:"GPT-4.1"},{id:"openai/o3",name:"o3"},{id:"deepseek/deepseek-chat",name:"DeepSeek Chat"},{id:"deepseek/deepseek-reasoner",name:"DeepSeek Reasoner"}],modelsFetcher:{url:"https://api.kilo.ai/api/gateway/models",type:"openrouter-free"},passthroughModels:!0,oauth:{apiBaseUrl:"https://api.kilo.ai",initiateUrl:"https://api.kilo.ai/api/device-auth/codes",pollUrlBase:"https://api.kilo.ai/api/device-auth/codes"}},{id:"kimchi",priority:95,alias:"kimchi",uiAlias:"kimchi",display:{name:"Kimchi",icon:"restaurant",color:"#FF521D",textIcon:"KC",website:"https://kimchi.dev",notice:{signupUrl:"https://app.kimchi.dev"}},category:"freeTier",authModes:["oauth","apikey"],hasOAuth:!0,transport:{baseUrl:"https://llm.kimchi.dev/openai/v1/chat/completions",format:"openai",headers:{"User-Agent":"kimchi/0.1.50"},auth:{combined:!0,header:"Authorization",scheme:"bearer"}},models:[{id:"minimax-m3",name:"MiniMax-M3"},{id:"kimi-k2.7",name:"Kimi-K2.7"},{id:"kimi-k2.6",name:"Kimi-K2.6"},{id:"kimi-k2.5",name:"Kimi-K2.5"},{id:"nemotron-3-ultra-fp4",name:"Nemotron 3 Ultra FP4"},{id:"minimax-m2.7",name:"MiniMax-M2.7"},{id:"claude-opus-4-6",name:"Claude Opus 4.6"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6"}],serviceKinds:["llm","imageToText"],oauth:{webAppUrl:"https://app.kimchi.dev",validationUrl:"https://api.cast.ai/v1/llm/openai/supported-providers",userInfoUrl:"https://app.kimchi.dev/api/v1/me",modelsUrl:"https://llm.kimchi.dev/v1/models/metadata?include_in_cli=true"},features:{liveModels:!0},passthroughModels:!0},{id:"kimi",priority:170,alias:"kimi",aliases:["kimi-coding","kmc"],display:{name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn",notice:{apiKeyUrl:"https://platform.moonshot.ai/console/api-keys",signupUrl:"https://www.kimi.com/code"}},category:"oauth",authModes:["oauth","apikey"],hasOAuth:!0,transport:{baseUrl:"https://api.kimi.com/coding/v1/messages",format:"claude",urlSuffix:"?beta=true",headers:{...u},clientId:"17e5f671-d194-4dfb-9706-5516cb48c098",tokenUrl:"https://auth.kimi.com/api/oauth/token",refreshUrl:"https://auth.kimi.com/api/oauth/token",auth:{combined:!0,header:"x-api-key",scheme:"raw",hooks:["kimiHeaders"]}},transports:[{format:"openai",baseUrl:"https://api.kimi.com/coding/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer",hooks:["kimiHeaders"]}},{format:"claude",baseUrl:"https://api.kimi.com/coding/v1/messages",urlSuffix:"?beta=true",headers:{...u},auth:{combined:!0,header:"x-api-key",scheme:"raw",hooks:["kimiHeaders"]}}],models:[{id:"kimi-k3",name:"Kimi K3"},{id:"k3",name:"Kimi K3 (Code)"},{id:"kimi-for-coding",name:"Kimi for Coding"},{id:"kimi-for-coding-highspeed",name:"Kimi for Coding Highspeed"},{id:"kimi-k2.7-code",name:"Kimi K2.7 Code"},{id:"kimi-k2.7-code-highspeed",name:"Kimi K2.7 Code Highspeed"},{id:"kimi-k2.6",name:"Kimi K2.6"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}],serviceKinds:["llm","webSearch"],searchViaChat:{defaultModel:"kimi-k3",endpoint:"https://api.moonshot.cn/v1/chat/completions",oauthEndpoint:"https://api.kimi.com/coding/v1/chat/completions",oauthModel:"k3",pricingUrl:"https://platform.kimi.ai/docs/pricing/chat"},oauth:{clientId:"17e5f671-d194-4dfb-9706-5516cb48c098",deviceCodeUrl:"https://auth.kimi.com/api/oauth/device_authorization",tokenUrl:"https://auth.kimi.com/api/oauth/token",refreshUrl:"https://auth.kimi.com/api/oauth/token",refreshLeadMs:3e5,authorizeDeviceUrl:"https://www.kimi.com/code/authorize_device"},features:{usage:!0,usageApikey:!0}},{id:"kiro",priority:10,alias:"kr",uiAlias:"kr",display:{name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35",website:"https://kiro.dev",notice:{signupUrl:"https://kiro.dev"},deprecated:!0,deprecationNotice:"RISK_NOTICE"},category:"free",transport:{baseUrl:"https://runtime.us-east-1.kiro.dev/generateAssistantResponse",baseUrls:["https://runtime.us-east-1.kiro.dev/generateAssistantResponse","https://codewhisperer.us-east-1.amazonaws.com/generateAssistantResponse","https://q.us-east-1.amazonaws.com/generateAssistantResponse"],format:"kiro",retry:{429:0},headers:{"Content-Type":"application/json",Accept:"application/vnd.amazon.eventstream","User-Agent":"AWS-SDK-JS/3.0.0 kiro-ide/1.0.0","X-Amz-User-Agent":"aws-sdk-js/3.0.0 kiro-ide/1.0.0"},tokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authUrl:"https://prod.us-east-1.auth.desktop.kiro.dev",usage:{cwHost:"https://codewhisperer.us-east-1.amazonaws.com",qHost:"https://q.us-east-1.amazonaws.com",limitsPath:"/getUsageLimits"}},models:[{id:"claude-opus-5",name:"Claude Opus 5"},{id:"claude-opus-5-thinking",name:"Claude Opus 5 (Thinking)"},{id:"claude-opus-5-agentic",name:"Claude Opus 5 (Agentic)"},{id:"claude-opus-5-thinking-agentic",name:"Claude Opus 5 (Thinking + Agentic)"},{id:"claude-opus-4.8",name:"Claude Opus 4.8"},{id:"claude-opus-4.8-thinking",name:"Claude Opus 4.8 (Thinking)"},{id:"claude-opus-4.8-agentic",name:"Claude Opus 4.8 (Agentic)"},{id:"claude-opus-4.8-thinking-agentic",name:"Claude Opus 4.8 (Thinking + Agentic)"},{id:"claude-opus-4.7",name:"Claude Opus 4.7"},{id:"claude-opus-4.7-thinking",name:"Claude Opus 4.7 (Thinking)"},{id:"claude-opus-4.7-agentic",name:"Claude Opus 4.7 (Agentic)"},{id:"claude-opus-4.7-thinking-agentic",name:"Claude Opus 4.7 (Thinking + Agentic)"},{id:"claude-opus-4.5",name:"Claude Opus 4.5"},{id:"claude-opus-4.5-thinking",name:"Claude Opus 4.5 (Thinking)"},{id:"claude-opus-4.5-agentic",name:"Claude Opus 4.5 (Agentic)"},{id:"claude-opus-4.5-thinking-agentic",name:"Claude Opus 4.5 (Thinking + Agentic)"},{id:"claude-sonnet-5",name:"Claude Sonnet 5"},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"deepseek-3.2",name:"DeepSeek 3.2",strip:["image","audio"]},{id:"qwen3-coder-next",name:"Qwen3 Coder Next",strip:["image","audio"]},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"gpt-5.6-sol",name:"GPT 5.6 Sol",contextLength:272e3,rateMultiplier:2.4,upstreamModelId:"gpt-5.6-sol",description:"Experimental preview of OpenAI GPT 5.6 Sol with 272k context window"},{id:"gpt-5.6-terra",name:"GPT 5.6 Terra",contextLength:272e3,rateMultiplier:1.2,upstreamModelId:"gpt-5.6-terra",description:"Experimental preview of OpenAI GPT 5.6 Terra with 272k context window"},{id:"gpt-5.6-luna",name:"GPT 5.6 Luna",contextLength:272e3,rateMultiplier:.6,upstreamModelId:"gpt-5.6-luna",description:"Experimental preview of OpenAI GPT 5.6 Luna with 272k context window"},{id:"claude-sonnet-5-thinking",name:"Claude Sonnet 5 (Thinking)"},{id:"claude-sonnet-4.5-thinking",name:"Claude Sonnet 4.5 (Thinking)"},{id:"claude-haiku-4.5-thinking",name:"Claude Haiku 4.5 (Thinking)"},{id:"gpt-5.6-sol-thinking",name:"GPT 5.6 Sol (Thinking)",contextLength:272e3,rateMultiplier:2.4,upstreamModelId:"gpt-5.6-sol",description:"Experimental preview of OpenAI GPT 5.6 Sol with 272k context window"},{id:"gpt-5.6-terra-thinking",name:"GPT 5.6 Terra (Thinking)",contextLength:272e3,rateMultiplier:1.2,upstreamModelId:"gpt-5.6-terra",description:"Experimental preview of OpenAI GPT 5.6 Terra with 272k context window"},{id:"gpt-5.6-luna-thinking",name:"GPT 5.6 Luna (Thinking)",contextLength:272e3,rateMultiplier:.6,upstreamModelId:"gpt-5.6-luna",description:"Experimental preview of OpenAI GPT 5.6 Luna with 272k context window"},{id:"claude-sonnet-5-agentic",name:"Claude Sonnet 5 (Agentic)"},{id:"claude-sonnet-4.5-agentic",name:"Claude Sonnet 4.5 (Agentic)"},{id:"claude-haiku-4.5-agentic",name:"Claude Haiku 4.5 (Agentic)"},{id:"gpt-5.6-sol-agentic",name:"GPT 5.6 Sol (Agentic)",contextLength:272e3,rateMultiplier:2.4,upstreamModelId:"gpt-5.6-sol",description:"Experimental preview of OpenAI GPT 5.6 Sol with 272k context window"},{id:"gpt-5.6-terra-agentic",name:"GPT 5.6 Terra (Agentic)",contextLength:272e3,rateMultiplier:1.2,upstreamModelId:"gpt-5.6-terra",description:"Experimental preview of OpenAI GPT 5.6 Terra with 272k context window"},{id:"gpt-5.6-luna-agentic",name:"GPT 5.6 Luna (Agentic)",contextLength:272e3,rateMultiplier:.6,upstreamModelId:"gpt-5.6-luna",description:"Experimental preview of OpenAI GPT 5.6 Luna with 272k context window"},{id:"claude-sonnet-5-thinking-agentic",name:"Claude Sonnet 5 (Thinking + Agentic)"},{id:"claude-sonnet-4.5-thinking-agentic",name:"Claude Sonnet 4.5 (Thinking + Agentic)"},{id:"claude-haiku-4.5-thinking-agentic",name:"Claude Haiku 4.5 (Thinking + Agentic)"},{id:"gpt-5.6-sol-thinking-agentic",name:"GPT 5.6 Sol (Thinking + Agentic)",contextLength:272e3,rateMultiplier:2.4,upstreamModelId:"gpt-5.6-sol",description:"Experimental preview of OpenAI GPT 5.6 Sol with 272k context window"},{id:"gpt-5.6-terra-thinking-agentic",name:"GPT 5.6 Terra (Thinking + Agentic)",contextLength:272e3,rateMultiplier:1.2,upstreamModelId:"gpt-5.6-terra",description:"Experimental preview of OpenAI GPT 5.6 Terra with 272k context window"},{id:"gpt-5.6-luna-thinking-agentic",name:"GPT 5.6 Luna (Thinking + Agentic)",contextLength:272e3,rateMultiplier:.6,upstreamModelId:"gpt-5.6-luna",description:"Experimental preview of OpenAI GPT 5.6 Luna with 272k context window"}],oauth:{ssoOidcEndpoint:"https://oidc.us-east-1.amazonaws.com",registerClientUrl:"https://oidc.us-east-1.amazonaws.com/client/register",deviceAuthUrl:"https://oidc.us-east-1.amazonaws.com/device_authorization",tokenUrl:"https://oidc.us-east-1.amazonaws.com/token",startUrl:"https://view.awsapps.com/start",clientName:"kiro-oauth-client",clientType:"public",scopes:["codewhisperer:completions","codewhisperer:analysis","codewhisperer:conversations"],grantTypes:["urn:ietf:params:oauth:grant-type:device_code","refresh_token"],issuerUrl:"https://identitycenter.amazonaws.com/ssoins-722374e8c3c8e6c6",socialAuthEndpoint:"https://prod.us-east-1.auth.desktop.kiro.dev",socialLoginUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/login",socialTokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/oauth/token",socialRefreshUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authMethods:["builder-id","idc","google","github","import"]},features:{usage:!0,usageApikey:!0,liveModels:!0}},{id:"linkup",alias:"linkup",display:{name:"Linkup",icon:"link",color:"#0EA5E9",textIcon:"LK",website:"https://linkup.so",notice:{apiKeyUrl:"https://app.linkup.so/api-keys"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch"],searchConfig:{baseUrl:"https://api.linkup.so/v1/search",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:.005,freeMonthlyQuota:1e3,searchTypes:["web"],defaultMaxResults:5,maxMaxResults:50,timeoutMs:1e4,cacheTTLMs:3e5}},{id:"local-device",alias:"local-device",display:{name:"Local Device",icon:"speaker",color:"#64748B",textIcon:"LD"},category:"freeTier",authType:"none",serviceKinds:["tts"],mediaPriority:5,noAuth:!0,ttsConfig:{baseUrl:"local-device",authType:"none",authHeader:"none",format:"local-device",models:[]}},{id:"mimo-free",hidden:!0,priority:50,hasFree:!0,alias:"mmf",uiAlias:"mmf",display:{name:"MiMo Code Free",icon:"smart_toy",color:"#FF6900",textIcon:"MF"},category:"free",noAuth:!0,transport:{baseUrl:"https://api.xiaomimimo.com/api/free-ai/openai/chat",noAuth:!0},models:[{id:"mimo-auto",name:"MiMo Auto"}],modelsFetcher:{url:"https://models.dev/api.json",type:"mimo-free"},passthroughModels:!0},{id:"minimax-cn",priority:190,alias:"minimax-cn",display:{name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com",notice:{apiKeyUrl:"https://platform.minimaxi.com/user-center/basic-information/interface-key"}},category:"apikey",transport:{baseUrl:"https://api.minimaxi.com/anthropic/v1/messages",format:"claude",urlSuffix:"?beta=true",headers:{...u},quirks:{dropOutputConfig:!0,requireClaudeToolType:!0},reasoningInject:{scope:"all"},auth:{combined:!0,header:"x-api-key",scheme:"raw"},usage:{urls:["https://www.minimaxi.com/v1/api/openplatform/coding_plan/remains","https://api.minimaxi.com/v1/api/openplatform/coding_plan/remains"]}},transports:[{format:"openai",baseUrl:"https://api.minimaxi.com/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{format:"claude",baseUrl:"https://api.minimaxi.com/anthropic/v1/messages",urlSuffix:"?beta=true",headers:{...u},auth:{combined:!0,header:"x-api-key",scheme:"raw"}}],models:[{id:"MiniMax-M3",name:"MiniMax M3",targetFormat:"claude"},{id:"MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"MiniMax-M2.1",name:"MiniMax M2.1"},{id:"speech-2.8-hd",name:"Speech 2.8 HD",kind:"tts"},{id:"speech-2.8-turbo",name:"Speech 2.8 Turbo",kind:"tts"},{id:"speech-2.6-hd",name:"Speech 2.6 HD",kind:"tts"},{id:"speech-2.6-turbo",name:"Speech 2.6 Turbo",kind:"tts"},{id:"speech-02-hd",name:"Speech 02 HD",kind:"tts"},{id:"speech-02-turbo",name:"Speech 02 Turbo",kind:"tts"},{id:"speech-01-hd",name:"Speech 01 HD",kind:"tts"},{id:"speech-01-turbo",name:"Speech 01 Turbo",kind:"tts"}],serviceKinds:["llm","tts"],ttsConfig:{baseUrl:"https://api.minimaxi.com/v1/t2a_v2",authType:"apikey",authHeader:"bearer",format:"minimax-tts"},features:{usage:!0,usageApikey:!0}},{id:"minimax",priority:90,alias:"minimax",display:{name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com",notice:{apiKeyUrl:"https://platform.minimaxi.com/user-center/basic-information/interface-key"}},category:"apikey",transport:{baseUrl:"https://api.minimax.io/anthropic/v1/messages",format:"claude",urlSuffix:"?beta=true",headers:{...u},quirks:{dropOutputConfig:!0,requireClaudeToolType:!0},reasoningInject:{scope:"all"},auth:{combined:!0,header:"x-api-key",scheme:"raw"},usage:{urls:["https://www.minimax.io/v1/token_plan/remains","https://api.minimax.io/v1/api/openplatform/coding_plan/remains"]}},transports:[{format:"openai",baseUrl:"https://api.minimax.io/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{format:"claude",baseUrl:"https://api.minimax.io/anthropic/v1/messages",urlSuffix:"?beta=true",headers:{...u},auth:{combined:!0,header:"x-api-key",scheme:"raw"}}],models:[{id:"MiniMax-M3",name:"MiniMax M3",targetFormat:"claude"},{id:"MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"MiniMax-M2.1",name:"MiniMax M2.1"},{id:"minimax-image-01",name:"MiniMax Image 01",params:["n","size","response_format"],kind:"image"},{id:"speech-2.8-hd",name:"Speech 2.8 HD",kind:"tts"},{id:"speech-2.8-turbo",name:"Speech 2.8 Turbo",kind:"tts"},{id:"speech-2.6-hd",name:"Speech 2.6 HD",kind:"tts"},{id:"speech-2.6-turbo",name:"Speech 2.6 Turbo",kind:"tts"},{id:"speech-02-hd",name:"Speech 02 HD",kind:"tts"},{id:"speech-02-turbo",name:"Speech 02 Turbo",kind:"tts"},{id:"speech-01-hd",name:"Speech 01 HD",kind:"tts"},{id:"speech-01-turbo",name:"Speech 01 Turbo",kind:"tts"}],serviceKinds:["llm","image","imageToText","webSearch","tts"],ttsConfig:{baseUrl:"https://api.minimax.io/v1/t2a_v2",authType:"apikey",authHeader:"bearer",format:"minimax-tts"},imageConfig:{baseUrl:"https://api.minimaxi.com/v1/images/generations"},searchViaChat:{defaultModel:"MiniMax-M2.7",endpoint:"https://api.minimaxi.com/v1/text/chatcompletion_v2",pricingUrl:"https://www.minimaxi.com/document/price"},features:{usage:!0,usageApikey:!0}},{id:"mistral",priority:80,alias:"mistral",display:{name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai",notice:{apiKeyUrl:"https://console.mistral.ai/api-keys"}},category:"apikey",transport:{baseUrl:"https://api.mistral.ai/v1/chat/completions",validateUrl:"https://api.mistral.ai/v1/models",quirks:{dropClientMetadata:!0}},models:[{id:"mistral-large-latest",name:"Mistral Large 3"},{id:"codestral-latest",name:"Codestral"},{id:"mistral-medium-latest",name:"Mistral Medium 3"},{id:"mistral-embed",name:"Mistral Embed",kind:"embedding"}],serviceKinds:["llm","imageToText","embedding"],embeddingConfig:{baseUrl:"https://api.mistral.ai/v1/embeddings",authType:"apikey",authHeader:"bearer"}},{id:"mmf",hidden:!0,priority:200,display:{name:"MMF",icon:"hub",color:"#6366F1",textIcon:"MF"},category:"apikey",transport:{baseUrl:"https://api.xiaomimimo.com/api/free-ai/openai/chat",noAuth:!0},models:[{id:"mimo-auto",name:"MiMo Auto"}]},{id:"nanobanana",priority:80,hasFree:!0,alias:"nanobanana",aliases:["nb"],uiAlias:"nb",display:{name:"NanoBanana API",icon:"extension",color:"#FFD700",textIcon:"NA",website:"https://nanobananaapi.ai",notice:{text:"3rd-party proxy for Google Nano Banana (Gemini 2.5/3 Flash Image). For official, use Gemini provider.",apiKeyUrl:"https://nanobananaapi.ai/dashboard"}},category:"apikey",transport:{baseUrl:"https://api.nanobananaapi.ai/v1/chat/completions",validateUrl:"https://api.nanobananaapi.ai/v1/models"},models:[{id:"nanobanana-flash",name:"NanoBanana Flash",params:["n","size"],kind:"image"},{id:"nanobanana-pro",name:"NanoBanana Pro",params:["n","size"],kind:"image"}],serviceKinds:["image"],imageConfig:{baseUrl:"https://api.nanobananaapi.ai/api/v1/nanobanana/generate",pollUrl:"https://api.nanobananaapi.ai/api/v1/nanobanana/record-info"}},{id:"nebius",priority:70,alias:"nebius",display:{name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com",notice:{apiKeyUrl:"https://studio.nebius.com/settings/api-keys"}},category:"apikey",authType:"apikey",transport:{baseUrl:"https://api.studio.nebius.ai/v1/chat/completions",validateUrl:"https://api.studio.nebius.ai/v1/models"},models:[{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B Instruct"},{id:"Qwen/Qwen3-Embedding-8B",name:"Qwen3 Embedding 8B",kind:"embedding"}],serviceKinds:["llm","embedding"],embeddingConfig:{baseUrl:"https://api.tokenfactory.nebius.com/v1/embeddings"}},{id:"nvidia",priority:20,hasFree:!0,alias:"nvidia",display:{name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://developer.nvidia.com/nim",notice:{text:"Free access for NVIDIA Developer Program members (prototyping & testing).",apiKeyUrl:"https://build.nvidia.com/settings/api-keys"}},category:"freeTier",authType:"apikey",authModes:["apikey"],transport:{baseUrl:"https://integrate.api.nvidia.com/v1/chat/completions",validateUrl:"https://integrate.api.nvidia.com/v1/models"},models:[{id:"minimaxai/minimax-m2.7",name:"MiniMax M2.7"},{id:"minimaxai/minimax-m3",name:"MiniMax M3"},{id:"z-ai/glm-5.2",name:"GLM 5.2"},{id:"deepseek-ai/deepseek-v4-pro",name:"DeepSeek V4 Pro"},{id:"deepseek-ai/deepseek-v4-flash",name:"DeepSeek V4 Flash"},{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6"},{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra"},{id:"nvidia/nv-embedqa-e5-v5",name:"NV EmbedQA E5 v5",kind:"embedding"},{id:"nvidia/parakeet-ctc-1.1b-asr",name:"Parakeet CTC 1.1B",params:["language"],kind:"stt"},{id:"fastpitch",name:"FastPitch",kind:"tts"},{id:"tacotron2",name:"Tacotron2",kind:"tts"}],serviceKinds:["llm","tts","embedding"],ttsConfig:{baseUrl:"https://integrate.api.nvidia.com/v1/audio/speech",authType:"apikey",authHeader:"bearer",format:"nvidia-tts"},embeddingConfig:{baseUrl:"https://integrate.api.nvidia.com/v1/embeddings",authType:"apikey",authHeader:"bearer"}},{id:"ollama-local",priority:50,hasFree:!0,alias:"ollama-local",display:{name:"Ollama Local",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com"},category:"apikey",transport:{baseUrl:"http://localhost:11434/api/chat",format:"ollama"},serviceKinds:["llm"]},{id:"ollama",priority:30,hasFree:!0,alias:"ollama",display:{name:"Ollama Cloud",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com",notice:{text:"Free tier: light usage, 1 cloud model at a time (limits reset every 5h & 7d). Pro $20/mo \xb7 Max $100/mo.",apiKeyUrl:"https://ollama.com/settings/keys"}},category:"freeTier",authType:"apikey",authModes:["apikey"],transport:{baseUrl:"https://ollama.com/api/chat",validateUrl:"https://ollama.com/api/tags",format:"ollama"},models:[{id:"gpt-oss:120b",name:"GPT OSS 120B"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"minimax-m2.5",name:"MiniMax M2.5"},{id:"glm-4.7-flash",name:"GLM 4.7 Flash"},{id:"qwen3.5",name:"Qwen3.5"},{id:"minimax-m3",name:"MiniMax M3"},{id:"deepseek-v4.1-flash:cloud",name:"DeepSeek V4.1 Flash"}],serviceKinds:["llm","webFetch"],fetchConfig:{baseUrl:"https://ollama.com/api/web_fetch",method:"POST",authType:"apikey",authHeader:"bearer",formats:["markdown"],maxCharacters:2e5,timeoutMs:3e4},features:{usage:!0,usageApikey:!0}},{id:"ollama-search",alias:"ollama-search",display:{name:"Ollama Search",icon:"cloud",color:"#ffffff",textIcon:"OL",website:"https://ollama.com",notice:{text:"Web search via Ollama Cloud subscription. Reuses the API key from the Ollama (chat) provider.",apiKeyUrl:"https://ollama.com/settings/keys"}},category:"apikey",authType:"apikey",authModes:["apikey"],serviceKinds:["webSearch"],credentialFallback:"ollama",searchConfig:{baseUrl:"https://ollama.com/api/web_search",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:0,freeMonthlyQuota:1e3,searchTypes:["web"],defaultMaxResults:5,maxMaxResults:10,timeoutMs:1e4,cacheTTLMs:3e5}},{id:"openai",priority:30,alias:"openai",display:{name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com",notice:{apiKeyUrl:"https://platform.openai.com/api-keys"}},category:"apikey",thinkingConfig:{options:["auto","none","low","medium","high"],defaultMode:"auto"},transport:{baseUrl:"https://api.openai.com/v1/chat/completions",forceStream:!0},models:[{id:"gpt-5.4",name:"GPT-5.4"},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini"},{id:"gpt-5.4-nano",name:"GPT-5.4 Nano"},{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.1",name:"GPT-5.1"},{id:"gpt-5",name:"GPT-5"},{id:"gpt-5-mini",name:"GPT-5 Mini"},{id:"gpt-5-nano",name:"GPT-5 Nano"},{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o Mini"},{id:"gpt-4-turbo",name:"GPT-4 Turbo"},{id:"gpt-4.1",name:"GPT-4.1"},{id:"gpt-4.1-mini",name:"GPT-4.1 Mini"},{id:"gpt-4.1-nano",name:"GPT-4.1 Nano"},{id:"o3",name:"O3"},{id:"o3-mini",name:"O3 Mini"},{id:"o3-pro",name:"O3 Pro"},{id:"o4-mini",name:"O4 Mini"},{id:"o1",name:"O1"},{id:"o1-mini",name:"O1 Mini"},{id:"text-embedding-3-large",name:"Text Embedding 3 Large",kind:"embedding"},{id:"text-embedding-3-small",name:"Text Embedding 3 Small",kind:"embedding"},{id:"text-embedding-ada-002",name:"Text Embedding Ada 002",kind:"embedding"},{id:"tts-1",name:"TTS-1",kind:"tts"},{id:"tts-1-hd",name:"TTS-1 HD",kind:"tts"},{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS",kind:"tts"},{id:"whisper-1",name:"Whisper 1",params:["language","response_format","temperature","prompt"],kind:"stt"},{id:"gpt-4o-transcribe",name:"GPT-4o Transcribe",params:["language","response_format","temperature","prompt"],kind:"stt"},{id:"gpt-4o-mini-transcribe",name:"GPT-4o Mini Transcribe",params:["language","response_format","temperature","prompt"],kind:"stt"},{id:"gpt-image-2.5",name:"GPT Image 2.5",params:["n","size","quality","response_format"],kind:"image"},{id:"gpt-image-2.5-flare",name:"GPT Image 2.5 Flare",params:["n","size","quality","response_format"],kind:"image"},{id:"gpt-image-2.5-sunburst",name:"GPT Image 2.5 Sunburst",params:["n","size","quality","response_format"],kind:"image"},{id:"gpt-image-1",name:"GPT Image 1",params:["n","size","quality","response_format"],kind:"image"},{id:"dall-e-3",name:"DALL-E 3",params:["size","quality","style","response_format"],kind:"image"},{id:"dall-e-2",name:"DALL-E 2",params:["n","size","response_format"],kind:"image"}],serviceKinds:["llm","embedding","tts","stt","image","imageToText","webSearch"],ttsConfig:{baseUrl:"https://api.openai.com/v1/audio/speech",authType:"apikey",authHeader:"bearer",format:"openai",defaultModel:"gpt-4o-mini-tts"},sttConfig:{baseUrl:"https://api.openai.com/v1/audio/transcriptions",authType:"apikey",authHeader:"bearer",format:"openai"},embeddingConfig:{baseUrl:"https://api.openai.com/v1/embeddings",authType:"apikey",authHeader:"bearer"},imageConfig:{baseUrl:"https://api.openai.com/v1/images/generations"},searchViaChat:{defaultModel:"gpt-4o-mini",pricingUrl:"https://openai.com/api/pricing"}},{id:"opencode-go",priority:210,alias:"opencode-go",aliases:["ocg"],uiAlias:"ocg",display:{name:"OpenCode Go",icon:"terminal",color:"#E87040",textIcon:"OC",website:"https://opencode.ai/auth",notice:{text:"OpenCode Go subscription: $5/mo (then 10/mo). Access to Kimi, GLM, Qwen, MiMo, MiniMax models.",apiKeyUrl:"https://opencode.ai/auth"}},category:"apikey",transport:{baseUrl:"https://opencode.ai/zen/go/v1/chat/completions",headers:{},usage:{url:"https://opencode.ai/zen/go/v1/usage"}},transports:[{format:"openai",baseUrl:"https://opencode.ai/zen/go/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{format:"claude",baseUrl:"https://opencode.ai/zen/go/v1/messages",auth:{combined:!0,header:"x-api-key",scheme:"raw",anthropicVersion:!0}},{format:"openai-responses",baseUrl:"https://opencode.ai/zen/go/v1/responses",auth:{combined:!0,header:"Authorization",scheme:"bearer"}}],models:[{id:"deepseek-flash",name:"DeepSeek V4.1 Flash",supportedFormats:["openai"]},{id:"glm-5.3-flash",name:"GLM 5.3 Flash (Vision)",supportedFormats:["openai"]},{id:"glm-5.3",name:"GLM 5.3",supportedFormats:["openai"]},{id:"glm-5.2",name:"GLM 5.2",supportedFormats:["openai"]},{id:"glm-5.1",name:"GLM 5.1",supportedFormats:["openai"]},{id:"kimi-k2.7-code",name:"Kimi K2.7 Code",supportedFormats:["openai"]},{id:"kimi-k2.6",name:"Kimi K2.6",supportedFormats:["openai"]},{id:"kimi-k3",name:"Kimi K3",supportedFormats:["openai"]},{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",supportedFormats:["openai","claude","openai-responses"]},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",supportedFormats:["openai","claude","openai-responses"]},{id:"deepseek-v4-flash-vision-exp",name:"DeepSeek V4 Flash Vision (Exp)",supportedFormats:["openai","claude","openai-responses"]},{id:"longcat-2.0",name:"LongCat 2.0",supportedFormats:["openai"]},{id:"mimo-v2.5",name:"MiMo V2.5",supportedFormats:["openai"]},{id:"mimo-v2.5-pro",name:"MiMo V2.5 Pro",supportedFormats:["openai"]},{id:"minimax-m3",name:"MiniMax M3",supportedFormats:["openai","claude"]},{id:"minimax-m2.7",name:"MiniMax M2.7",supportedFormats:["openai","claude"]},{id:"minimax-m2.5",name:"MiniMax M2.5",supportedFormats:["openai","claude"]},{id:"qwen3.8-max",name:"Qwen 3.8 Max",supportedFormats:["openai","claude"]},{id:"qwen3.8-flash",name:"Qwen 3.8 Flash",supportedFormats:["openai","claude"]},{id:"qwen3.7-max",name:"Qwen 3.7 Max",supportedFormats:["openai","claude"]},{id:"qwen3.7-plus",name:"Qwen 3.7 Plus",supportedFormats:["openai","claude"]},{id:"qwen3.6-plus",name:"Qwen 3.6 Plus",supportedFormats:["openai","claude"]},{id:"hy4-preview",name:"Hy4 Preview",supportedFormats:["openai"]},{id:"hy3",name:"Hy3",supportedFormats:["openai"]},{id:"grok-4.6",name:"Grok 4.6",targetFormat:"openai-responses",supportedFormats:["openai-responses"]},{id:"gpt-5.6-luna",name:"GPT 5.6 Luna",targetFormat:"openai-responses",supportedFormats:["openai-responses"]},{id:"muse-spark-1.2-contributor",name:"Muse Spark 1.2 Contributor",targetFormat:"openai-responses",supportedFormats:["openai-responses"]},{id:"muse-spark-1.3-contributor",name:"Muse Spark 1.3 Contributor",targetFormat:"openai-responses",supportedFormats:["openai-responses"]}],features:{usage:!0,usageApikey:!0}},{id:"opencode",priority:40,hasFree:!0,alias:"oc",uiAlias:"oc",display:{name:"OpenCode Free",icon:"terminal",color:"#E87040",textIcon:"OC"},category:"free",noAuth:!0,transport:{baseUrl:"https://opencode.ai",headers:{"x-opencode-client":"desktop"},forceStream:!0,noAuth:!0,quirks:{forceAutoToolChoiceModels:["muse-spark-1.3-contributor-free"]}},models:[{id:"muse-spark-1.2-contributor-free",name:"Muse Spark 1.2 Contributor Free",targetFormat:"openai-responses"},{id:"muse-spark-1.3-contributor-free",name:"Muse Spark 1.3 Contributor Free",targetFormat:"openai-responses"},{id:"union-alpha",name:"Union Alpha Free",targetFormat:"claude"}],modelsFetcher:{url:"https://opencode.ai/zen/v1/models",type:"opencode-free"},passthroughModels:!0},{id:"openrouter",priority:10,hasFree:!0,alias:"openrouter",display:{name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",website:"https://openrouter.ai",notice:{text:"Free tier: 27+ free models, no credit card needed, 200 req/day. After 0 credit: 1,000 req/day.",apiKeyUrl:"https://openrouter.ai/settings/keys"}},category:"freeTier",authType:"apikey",authModes:["apikey"],transport:{baseUrl:"https://openrouter.ai/api/v1/chat/completions",thinkingFormat:"openai",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},models:[{id:"openai/text-embedding-3-large",name:"OpenAI Text Embedding 3 Large",kind:"embedding"},{id:"openai/text-embedding-3-small",name:"OpenAI Text Embedding 3 Small",kind:"embedding"},{id:"openai/text-embedding-ada-002",name:"OpenAI Text Embedding Ada 002",kind:"embedding"},{id:"qwen/qwen3-embedding-8b",name:"Qwen3 Embedding 8B",kind:"embedding"},{id:"perplexity/pplx-embed-v1-4b",name:"Perplexity Embed V1 4B",kind:"embedding"},{id:"perplexity/pplx-embed-v1-0.6b",name:"Perplexity Embed V1 0.6B",kind:"embedding"},{id:"nvidia/llama-nemotron-embed-vl-1b-v2:free",name:"NVIDIA Nemotron Embed VL 1B V2 (Free)",kind:"embedding"},{id:"openai/gpt-4o-mini-tts",name:"GPT-4o Mini TTS",kind:"tts"},{id:"openai/tts-1-hd",name:"TTS-1 HD",kind:"tts"},{id:"openai/tts-1",name:"TTS-1",kind:"tts"},{id:"openai/dall-e-3",name:"DALL-E 3 (via OpenRouter)",params:["size","quality","style","response_format"],kind:"image"},{id:"openai/gpt-image-1",name:"GPT Image 1 (via OpenRouter)",params:["n","size","quality","response_format"],kind:"image"},{id:"google/imagen-3.0-generate-002",name:"Imagen 3 (via OpenRouter)",params:["n","size"],kind:"image"},{id:"black-forest-labs/FLUX.1-schnell",name:"FLUX.1 Schnell (via OpenRouter)",params:["n","size"],kind:"image"},{id:"google/veo-3.1",name:"Veo 3.1 (via OpenRouter)",params:["duration","aspect_ratio","resolution"],kind:"video"},{id:"openai/sora-2-pro",name:"Sora 2 Pro (via OpenRouter)",params:["duration","aspect_ratio","resolution"],kind:"video"},{id:"bytedance/seedance-2.0",name:"Seedance 2.0 (via OpenRouter)",params:["duration","aspect_ratio","resolution"],kind:"video"}],serviceKinds:["llm","embedding","tts","imageToText","video"],ttsConfig:{baseUrl:"https://openrouter.ai/api/v1/chat/completions",defaultModel:"openai/gpt-4o-mini-tts",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},embeddingConfig:{baseUrl:"https://openrouter.ai/api/v1/embeddings",authType:"apikey",authHeader:"bearer",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},imageConfig:{baseUrl:"https://openrouter.ai/api/v1/images/generations",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},videoConfig:{baseUrl:"https://openrouter.ai/api/v1/videos",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},modelsFetcher:{url:"https://openrouter.ai/api/v1/models",type:"openrouter-free"},passthroughModels:!0},{id:"perplexity-web",priority:220,alias:"perplexity-web",aliases:["pw"],uiAlias:"pw",display:{name:"Perplexity Web (Pro/Max)",icon:"search",color:"#20808D",textIcon:"PW",website:"https://www.perplexity.ai"},category:"webCookie",authType:"cookie",authHint:"Paste your __Secure-next-auth.session-token cookie value from perplexity.ai",transport:{baseUrl:"https://www.perplexity.ai/rest/sse/perplexity_ask",format:"perplexity-web",authType:"cookie"},models:[{id:"pplx-auto",name:"Perplexity Auto (Free)"},{id:"pplx-sonar",name:"Perplexity Sonar"},{id:"pplx-gpt",name:"GPT-5.4 (via Perplexity)"},{id:"pplx-gemini",name:"Gemini 3.1 Pro (via Perplexity)"},{id:"pplx-sonnet",name:"Claude Sonnet 4.6 (via Perplexity)"},{id:"pplx-opus",name:"Claude Opus 4.6 (via Perplexity)"},{id:"pplx-nemotron",name:"Nemotron 3 Super (via Perplexity)"}]},{id:"perplexity",priority:180,alias:"perplexity",aliases:["pplx"],uiAlias:"pplx",display:{name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai",notice:{apiKeyUrl:"https://www.perplexity.ai/settings/api"}},category:"apikey",authType:"apikey",transport:{baseUrl:"https://api.perplexity.ai/chat/completions",validateUrl:"https://api.perplexity.ai/models"},models:[{id:"sonar-pro",name:"Sonar Pro"},{id:"sonar",name:"Sonar"}],serviceKinds:["llm","webSearch"],searchViaChat:{defaultModel:"sonar",endpoint:"https://api.perplexity.ai/chat/completions",pricingUrl:"https://docs.perplexity.ai/guides/pricing"}},{id:"perplexity-agent",priority:181,alias:"perplexity-agent",aliases:["pplx-agent","pplx-responses"],uiAlias:"pa",display:{name:"Perplexity Agent",icon:"travel_explore",color:"#20808D",textIcon:"PA",website:"https://www.perplexity.ai",notice:{text:"Perplexity Agent API exposes GPT, Claude, Gemini, Grok, GLM, Kimi, and Sonar models through one OpenAI-compatible Responses API.",apiKeyUrl:"https://www.perplexity.ai/settings/api"}},category:"apikey",authType:"apikey",transport:{baseUrl:"https://api.perplexity.ai/v1/responses",validateUrl:"https://api.perplexity.ai/v1/models",format:"openai-responses"},models:[{id:"perplexity/sonar",name:"Perplexity Sonar"},{id:"openai/gpt-5.5",name:"GPT-5.5"},{id:"openai/gpt-5.4",name:"GPT-5.4"},{id:"openai/gpt-5.4-mini",name:"GPT-5.4 Mini"},{id:"anthropic/claude-sonnet-4-6",name:"Claude Sonnet 4.6"},{id:"anthropic/claude-opus-4-8",name:"Claude Opus 4.8"},{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro"},{id:"xai/grok-4.20-reasoning",name:"Grok 4.20 Reasoning"},{id:"perplexity/glm-5.2",name:"GLM 5.2"},{id:"perplexity/kimi-k2.7-code",name:"Kimi K2.7 Code"},{id:"nvidia/nemotron-3-super-120b-a12b",name:"Nemotron 3 Super 120B"}],serviceKinds:["llm","webSearch"],searchViaChat:{defaultModel:"perplexity/sonar",endpoint:"https://api.perplexity.ai/v1/responses",pricingUrl:"https://docs.perplexity.ai/docs/agent-api/models"},modelsFetcher:{url:"https://api.perplexity.ai/v1/models",type:"openai"},passthroughModels:!0},{id:"playht",alias:"playht",display:{name:"PlayHT",icon:"play_circle",color:"#00B4D8",textIcon:"PH",website:"https://play.ht",notice:{apiKeyUrl:"https://play.ht/studio/api-access"}},category:"apikey",authType:"apikey",serviceKinds:["tts"],ttsConfig:{baseUrl:"https://api.play.ht/api/v2/tts/stream",authType:"apikey",authHeader:"playht",format:"playht",models:[{id:"PlayDialog",name:"PlayDialog"},{id:"Play3.0-mini",name:"Play 3.0 Mini"}]},hidden:!0},{id:"qoder",priority:30,alias:"qd",uiAlias:"qd",display:{name:"Qoder",icon:"water_drop",color:"#EC4899",website:"https://qoder.com",notice:{signupUrl:"https://qoder.com"}},category:"oauth",authModes:["oauth","apikey"],hasOAuth:!0,authHint:"Personal Access Token (pt-...) từ https://qoder.com/account/integrations",transport:{baseUrl:"https://api3.qoder.sh/algo/api/v2/service/pro/sse/agent_chat_generation",headers:{},timeoutMs:12e4,stallTimeoutMs:12e4,usage:{url:"https://openapi.qoder.sh/api/v2/quota/usage"}},models:[{id:"ultimate",name:"Ultimate"},{id:"auto",name:"Auto"},{id:"performance",name:"Performance"},{id:"efficient",name:"Efficient"},{id:"lite",name:"Lite"},{id:"qmodel_38max",name:"Qwen3.8-Max"},{id:"qmodel_latest",name:"Qwen3.7-Max"},{id:"qmodel",name:"Qwen3.7-Plus"},{id:"qfmodel",name:"Qwen3.8-Flash"},{id:"kmodel_latest",name:"Kimi-K3"},{id:"kmodel",name:"Kimi-K2.7-Code"},{id:"gmodel",name:"GLM-5.3"},{id:"gfmodel",name:"GLM-5.3-Flash"},{id:"dmodel",name:"DeepSeek-V4-Pro"},{id:"dfmodel",name:"DeepSeek-V4-Flash"},{id:"mmodel",name:"MiniMax-M3"}],oauth:{openApiBaseUrl:"https://openapi.qoder.sh",centerBaseUrl:"https://center.qoder.sh",chatBaseUrl:"https://api3.qoder.sh",deviceTokenUrl:"https://openapi.qoder.sh/api/v1/deviceToken/poll",refreshUrl:"https://center.qoder.sh/algo/api/v3/user/refresh_token",userInfoUrl:"https://openapi.qoder.sh/api/v1/userinfo",quotaUsageUrl:"https://openapi.qoder.sh/api/v2/quota/usage",loginUrl:"https://qoder.com/device/selectAccounts"},features:{usage:!0,liveModels:!0,usageApikey:!0}},{id:"recraft",priority:70,alias:"recraft",display:{name:"Recraft",icon:"image",color:"#EC4899",textIcon:"RC",website:"https://recraft.ai",notice:{apiKeyUrl:"https://www.recraft.ai/profile/api"}},category:"apikey",authType:"apikey",transport:null,models:[{id:"recraftv3",name:"Recraft V3",params:["n","size","style"],kind:"image"},{id:"recraftv2",name:"Recraft V2",params:["n","size","style"],kind:"image"}],serviceKinds:["image"],imageConfig:{baseUrl:"https://external.api.recraft.ai/v1/images/generations"}},{id:"runwayml",priority:80,alias:"runwayml",aliases:["runway"],uiAlias:"runway",display:{name:"Runway ML",icon:"movie",color:"#000000",textIcon:"RW",website:"https://runwayml.com",notice:{apiKeyUrl:"https://dev.runwayml.com"}},category:"apikey",authType:"apikey",transport:null,models:[{id:"gen4_image",name:"Gen-4 Image",params:["size"],kind:"image"},{id:"gen4_image_turbo",name:"Gen-4 Image Turbo",params:["size"],kind:"image"},{id:"gen4_turbo",name:"Gen-4 Turbo",params:[],kind:"video"},{id:"gen3a_turbo",name:"Gen-3 Alpha Turbo",params:[],kind:"video"}],serviceKinds:["image"],imageConfig:{baseUrl:"https://api.dev.runwayml.com/v1"}},{id:"sdwebui",priority:110,alias:"sdwebui",display:{name:"SD WebUI",icon:"brush",color:"#FF7043",textIcon:"SD",website:"https://github.com/AUTOMATIC1111/stable-diffusion-webui"},category:"apikey",transport:null,models:[{id:"stable-diffusion-v1-5",name:"Stable Diffusion v1.5",params:["n","size"],kind:"image"},{id:"sdxl-base-1.0",name:"SDXL Base 1.0",params:["n","size"],kind:"image"}],serviceKinds:["image"],imageConfig:{baseUrl:"http://localhost:7860/sdapi/v1/txt2img"}},{id:"searchapi",alias:"searchapi",display:{name:"SearchAPI",icon:"search",color:"#0EA5A4",textIcon:"SA",website:"https://www.searchapi.io",notice:{apiKeyUrl:"https://www.searchapi.io/dashboard"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch"],searchConfig:{baseUrl:"https://www.searchapi.io/api/v1/search",method:"GET",authType:"apikey",authHeader:"api_key",costPerQuery:.004,freeMonthlyQuota:100,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:100,timeoutMs:1e4,cacheTTLMs:3e5}},{id:"searxng",alias:"searxng",display:{name:"SearXNG",icon:"saved_search",color:"#3B82F6",textIcon:"SX",website:"https://docs.searxng.org"},category:"freeTier",authType:"none",serviceKinds:["webSearch"],noAuth:!0,searchConfig:{baseUrl:i(51563).Ps,method:"GET",authType:"none",authHeader:"none",costPerQuery:0,freeMonthlyQuota:999999,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:50,timeoutMs:1e4,cacheTTLMs:18e4}},{id:"serper",alias:"serper",display:{name:"Serper",icon:"search",color:"#4F46E5",textIcon:"SP",website:"https://serper.dev",notice:{apiKeyUrl:"https://serper.dev/api-key"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch"],searchConfig:{baseUrl:"https://google.serper.dev",method:"POST",authType:"apikey",authHeader:"x-api-key",costPerQuery:.001,freeMonthlyQuota:2500,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:100,timeoutMs:1e4,cacheTTLMs:3e5}},{id:"siliconflow",priority:250,alias:"siliconflow",display:{name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com",notice:{apiKeyUrl:"https://cloud.siliconflow.com/account/ak"}},category:"apikey",transport:{baseUrl:"https://api.siliconflow.com/v1/chat/completions",validateUrl:"https://api.siliconflow.com/v1/models",thinkingFormat:"openai"},models:[{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro"},{id:"deepseek-ai/DeepSeek-V4-Flash",name:"DeepSeek V4 Flash"},{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek V3.2"},{id:"deepseek-ai/DeepSeek-V3.2-Exp",name:"DeepSeek V3.2 Exp"},{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1"},{id:"deepseek-ai/DeepSeek-V3.1-Terminus",name:"DeepSeek V3.1 Terminus"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen 3.5 397B A17B"},{id:"Qwen/Qwen3.5-122B-A10B",name:"Qwen 3.5 122B A10B"},{id:"zai-org/GLM-5.1",name:"GLM 5.1"},{id:"zai-org/GLM-5",name:"GLM 5"},{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6"},{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5"},{id:"openai/gpt-oss-120b",name:"GPT OSS 120B"},{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax M2.5"},{id:"inclusionAI/Ling-flash-2.0",name:"Ling Flash 2.0"}]},{id:"stability-ai",priority:60,alias:"stability-ai",aliases:["stability"],uiAlias:"stability",display:{name:"Stability AI",icon:"image",color:"#8B5CF6",textIcon:"SA",website:"https://stability.ai",notice:{apiKeyUrl:"https://platform.stability.ai/account/keys"}},category:"apikey",authType:"apikey",transport:null,models:[{id:"stable-image-ultra",name:"Stable Image Ultra",params:["size"],kind:"image"},{id:"stable-image-core",name:"Stable Image Core",params:["size","style"],kind:"image"},{id:"sd3.5-large",name:"Stable Diffusion 3.5 Large",params:["size"],kind:"image"},{id:"sd3.5-large-turbo",name:"Stable Diffusion 3.5 Large Turbo",params:["size"],kind:"image"},{id:"sd3.5-medium",name:"Stable Diffusion 3.5 Medium",params:["size"],kind:"image"}],serviceKinds:["image"],imageConfig:{baseUrl:"https://api.stability.ai/v2beta/stable-image/generate"}},{id:"tavily",alias:"tavily",display:{name:"Tavily",icon:"search",color:"#5B21B6",textIcon:"TV",website:"https://tavily.com",notice:{apiKeyUrl:"https://app.tavily.com/home"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch","webFetch"],searchConfig:{baseUrl:"https://api.tavily.com/search",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:.008,freeMonthlyQuota:1e3,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:20,timeoutMs:1e4,cacheTTLMs:3e5},fetchConfig:{baseUrl:"https://api.tavily.com/extract",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:.008,freeMonthlyQuota:1e3,formats:["markdown","text"],maxCharacters:1e5,timeoutMs:15e3}},{id:"together",priority:60,alias:"together",display:{name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai",notice:{apiKeyUrl:"https://api.together.xyz/settings/api-keys"}},category:"apikey",authType:"apikey",transport:{baseUrl:"https://api.together.xyz/v1/chat/completions",validateUrl:"https://api.together.xyz/v1/models"},models:[{id:"meta-llama/Llama-3.3-70B-Instruct-Turbo",name:"Llama 3.3 70B Turbo"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3-235B-A22B",name:"Qwen3 235B"},{id:"meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",name:"Llama 4 Maverick"},{id:"BAAI/bge-large-en-v1.5",name:"BGE Large EN v1.5",kind:"embedding"},{id:"togethercomputer/m2-bert-80M-8k-retrieval",name:"M2 BERT 80M 8K",kind:"embedding"}],serviceKinds:["llm","embedding"],embeddingConfig:{baseUrl:"https://api.together.xyz/v1/embeddings"}},{id:"topaz",alias:"topaz",display:{name:"Topaz",icon:"image",color:"#059669",textIcon:"TP",website:"https://topazlabs.com",notice:{apiKeyUrl:"https://topazlabs.com/account"}},category:"apikey",authType:"apikey",serviceKinds:["image"]},{id:"tortoise",alias:"tortoise",display:{name:"Tortoise TTS",icon:"record_voice_over",color:"#7C3AED",textIcon:"TT",website:"https://github.com/neonbjb/tortoise-tts"},category:"freeTier",authType:"none",serviceKinds:["tts"],noAuth:!0,ttsConfig:{baseUrl:"http://localhost:5000/api/tts",authType:"none",authHeader:"none",format:"tortoise",models:[{id:"tortoise-v2",name:"Tortoise v2"}]},hidden:!0},{id:"venice",priority:115,alias:"venice",aliases:["vn"],uiAlias:"venice",display:{name:"Venice AI",icon:"shield",color:"#DC2626",textIcon:"VE",website:"https://venice.ai",notice:{text:"OpenAI-compatible. Private inference + uncensored models (Venice Uncensored, GLM, Qwen, DeepSeek, Llama).",apiKeyUrl:"https://venice.ai/settings/api"}},category:"apikey",transport:{baseUrl:"https://api.venice.ai/api/v1/chat/completions",validateUrl:"https://api.venice.ai/api/v1/models",thinkingFormat:"openai"},models:[{id:"venice-uncensored-1-2",name:"Venice Uncensored 1.2"},{id:"zai-org-glm-5",name:"GLM-5"},{id:"qwen3-235b-a22b-instruct-2507",name:"Qwen3 235B A22B Instruct"},{id:"qwen3-coder-480b-a35b-instruct-turbo",name:"Qwen3 Coder 480B A35B Turbo"},{id:"qwen3-vl-235b-a22b",name:"Qwen3 VL 235B A22B"},{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro"},{id:"llama-3.3-70b",name:"Llama 3.3 70B"},{id:"hermes-3-llama-3.1-405b",name:"Hermes 3 Llama 3.1 405B"},{id:"mistral-small-3-2-24b-instruct",name:"Mistral Small 3.2 24B"},{id:"text-embedding-3-large",name:"Text Embedding 3 Large",kind:"embedding"},{id:"text-embedding-bge-m3",name:"BGE-M3 Embedding",kind:"embedding"},{id:"text-embedding-qwen3-8b",name:"Qwen3 8B Embedding",kind:"embedding"},{id:"venice-sd35",name:"Venice SD3.5",params:["n","size"],kind:"image"},{id:"flux-2-pro",name:"FLUX.2 Pro",params:["n","size"],kind:"image"},{id:"gpt-image-2",name:"GPT Image 2 (via Venice)",params:["n","size","quality"],kind:"image"}],serviceKinds:["llm","embedding","image"],embeddingConfig:{baseUrl:"https://api.venice.ai/api/v1/embeddings",authType:"apikey",authHeader:"bearer"},imageConfig:{baseUrl:"https://api.venice.ai/api/v1/images/generations"},modelsFetcher:{url:"https://api.venice.ai/api/v1/models",type:"openai"},passthroughModels:!0},{id:"vercel-ai-gateway",priority:160,alias:"vercel-ai-gateway",aliases:["vercel"],uiAlias:"vercel",display:{name:"Vercel AI Gateway",icon:"deployed_code",color:"#111827",textIcon:"VG",website:"https://vercel.com/ai-gateway",notice:{text:"Unified OpenAI-compatible endpoint from Vercel. Use your AI Gateway API key, then pick models with provider/model IDs like anthropic/claude-sonnet-4.6 or openai/gpt-5.4.",apiKeyUrl:"https://vercel.com/dashboard/~/ai-gateway"}},category:"apikey",transport:{baseUrl:"https://ai-gateway.vercel.sh/v1/chat/completions",thinkingFormat:"openai",retry:{429:2},usage:{url:"https://ai-gateway.vercel.sh/v1/credits"}},serviceKinds:["llm","embedding","image","imageToText","webSearch"],embeddingConfig:{baseUrl:"https://ai-gateway.vercel.sh/v1/embeddings"},imageConfig:{baseUrl:"https://ai-gateway.vercel.sh/v1/images/generations"},searchViaChat:{defaultModel:"openai/gpt-4o-mini",pricingUrl:"https://vercel.com/docs/ai-gateway/pricing"},modelsFetcher:{url:"https://ai-gateway.vercel.sh/v1/models",type:"openai"},passthroughModels:!0,features:{usage:!0,usageApikey:!0}},{id:"vertex-partner",priority:260,alias:"vertex-partner",aliases:["vxp"],uiAlias:"vxp",display:{name:"Vertex Partner",icon:"cloud",color:"#34A853",textIcon:"VP",website:"https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models",notice:{apiKeyUrl:"https://console.cloud.google.com/iam-admin/serviceaccounts"}},category:"apikey",transport:{baseUrl:"https://aiplatform.googleapis.com"},models:[{id:"deepseek-ai/deepseek-v3.2-maas",name:"DeepSeek V3.2 (Vertex)"},{id:"qwen/qwen3-next-80b-a3b-thinking-maas",name:"Qwen3 Next 80B Thinking (Vertex)"},{id:"qwen/qwen3-next-80b-a3b-instruct-maas",name:"Qwen3 Next 80B Instruct (Vertex)"},{id:"zai-org/glm-5-maas",name:"GLM-5 (Vertex)"}]},{id:"vertex",priority:40,alias:"vertex",aliases:["vx"],uiAlias:"vx",display:{name:"Vertex AI",icon:"cloud",color:"#4285F4",textIcon:"VX",website:"https://cloud.google.com/vertex-ai",notice:{text:"New Google Cloud accounts get $300 free credits. Requires GCP project + Service Account with Vertex AI API enabled.",apiKeyUrl:"https://console.cloud.google.com/iam-admin/serviceaccounts"}},category:"freeTier",transport:{baseUrl:"https://aiplatform.googleapis.com",format:"vertex"},models:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"veo-3.1-generate-preview",name:"Veo 3.1 (Preview)",params:["duration","aspect_ratio","resolution","negative_prompt","seed","storage_uri","generate_audio"],kind:"video"},{id:"veo-3.1-fast-generate-preview",name:"Veo 3.1 Fast (Preview)",params:["duration","aspect_ratio","resolution","negative_prompt","seed","storage_uri","generate_audio"],kind:"video"},{id:"veo-3.0-generate-001",name:"Veo 3",params:["duration","aspect_ratio","resolution","negative_prompt","seed","storage_uri","generate_audio"],kind:"video"},{id:"veo-2.0-generate-001",name:"Veo 2",params:["duration","aspect_ratio","negative_prompt","seed","storage_uri"],kind:"video"}],serviceKinds:["llm","imageToText","video"],videoConfig:{baseUrl:"https://aiplatform.googleapis.com"}},{id:"volcengine-ark",priority:270,alias:"volcengine-ark",aliases:["ark"],uiAlias:"ark",display:{name:"Volcengine Ark",icon:"cloud",color:"#1677FF",textIcon:"ARK",website:"https://ark.cn-beijing.volces.com",notice:{apiKeyUrl:"https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey"}},category:"apikey",transport:{baseUrl:"https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions",headers:{}},models:[{id:"Doubao-Seed-2.0-Code",name:"Doubao-Seed-2.0-Code"},{id:"Doubao-Seed-2.0-pro",name:"Doubao-Seed-2.0-pro"},{id:"Doubao-Seed-2.0-lite",name:"Doubao-Seed-2.0-lite"},{id:"Doubao-Seed-Code",name:"Doubao-Seed-Code"},{id:"DeepSeek-V4-Flash",name:"DeepSeek-V4-Flash"},{id:"DeepSeek-V4-Pro",name:"DeepSeek-V4-Pro"},{id:"GLM-5.1",name:"GLM-5.1"},{id:"MiniMax-M2.7",name:"MiniMax-M2.7"},{id:"Kimi-K2.6",name:"Kimi-K2.6"}]},{id:"voyage-ai",priority:40,alias:"voyage-ai",uiAlias:"voyage",display:{name:"Voyage AI",icon:"data_array",color:"#0EA5E9",textIcon:"VG",website:"https://www.voyageai.com",notice:{apiKeyUrl:"https://dash.voyageai.com/api-keys"}},category:"apikey",authType:"apikey",transport:null,models:[{id:"voyage-3-large",name:"Voyage 3 Large",kind:"embedding"},{id:"voyage-3.5",name:"Voyage 3.5",kind:"embedding"},{id:"voyage-3.5-lite",name:"Voyage 3.5 Lite",kind:"embedding"},{id:"voyage-code-3",name:"Voyage Code 3",kind:"embedding"},{id:"voyage-finance-2",name:"Voyage Finance 2",kind:"embedding"},{id:"voyage-law-2",name:"Voyage Law 2",kind:"embedding"},{id:"voyage-multilingual-2",name:"Voyage Multilingual 2",kind:"embedding"}],serviceKinds:["embedding"],embeddingConfig:{baseUrl:"https://api.voyageai.com/v1/embeddings"}},{id:"xai",priority:280,alias:"xai",display:{name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai",notice:{apiKeyUrl:"https://console.x.ai"}},category:"oauth",authModes:["oauth","apikey"],hasOAuth:!0,transport:{baseUrl:"https://api.x.ai/v1/chat/completions",validateUrl:"https://api.x.ai/v1/models",responsesUrl:"https://api.x.ai/v1/responses",clientId:"b1a00492-073a-47ea-816f-4c329264a828",tokenUrl:"https://auth.x.ai/oauth2/token",refreshUrl:"https://auth.x.ai/oauth2/token"},models:[{id:"grok-4.6",name:"Grok 4.6"},{id:"grok-4.5",name:"Grok 4.5"},{id:"grok-4",name:"Grok 4"},{id:"grok-4-fast-reasoning",name:"Grok 4 Fast Reasoning"},{id:"grok-code-fast-1",name:"Grok Code Fast"},{id:"grok-3",name:"Grok 3"},{id:"grok-2-image-1212",name:"Grok 2 Image",params:["n","response_format"],kind:"image"},{id:"grok-imagine-video",name:"Grok Imagine Video",params:["duration","aspect_ratio","resolution"],kind:"video"}],serviceKinds:["llm","imageToText","webSearch","image","video"],imageConfig:{baseUrl:"https://api.x.ai/v1/images/generations",bodyFields:["model","prompt","n","response_format"]},videoConfig:{baseUrl:"https://api.x.ai/v1/videos"},searchViaChat:{defaultModel:"grok-4.20-reasoning",endpoint:"https://api.x.ai/v1/responses",pricingUrl:"https://x.ai/api#pricing"}},{id:"xiaomi-mimo",priority:290,alias:"xiaomi-mimo",aliases:["mimo","mimo-desktop","xmd"],uiAlias:"mimo",display:{name:"Xiaomi MiMo",icon:"smart_toy",color:"#FF6900",textIcon:"XM",website:"https://xiaomimimo.com",notice:{apiKeyUrl:"https://platform.xiaomimimo.com/console/api-keys",signupUrl:"https://mimo.xiaomimimo.com/desktop/invite/"}},category:"oauth",authModes:["oauth","apikey"],hasOAuth:!0,serviceKinds:["llm","tts"],transport:{baseUrl:"https://api.xiaomimimo.com/v1/chat/completions",validateUrl:"https://api.xiaomimimo.com/v1/models"},transports:[{format:"openai",baseUrl:"https://api.xiaomimimo.com/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{format:"claude",baseUrl:"https://api.xiaomimimo.com/anthropic/v1/messages",headers:{...u},auth:{combined:!0,header:"x-api-key",scheme:"raw"}}],models:[{id:"mimo-x-pro-preview",name:"MiMo-X-Pro-Preview",upstreamModelId:"xiaomi/mimo-x-pro-preview",supportedFormats:["openai"]},{id:"mimo-x-flash-preview",name:"MiMo-X-Flash-Preview",upstreamModelId:"xiaomi/mimo-x-flash-preview",supportedFormats:["openai"]},{id:"mimo-v2.5-pro",name:"MiMo V2.5 Pro"},{id:"mimo-v2.5",name:"MiMo V2.5"},{id:"mimo-v2-omni",name:"MiMo V2 Omni"},{id:"mimo-v2-flash",name:"MiMo V2 Flash"},{id:"mimo-v2.5-tts",name:"MiMo V2.5 TTS",kind:"tts"}],ttsConfig:{baseUrl:"https://api.xiaomimimo.com/v1/chat/completions",authType:"apikey",authHeader:"bearer",format:"xiaomi-mimo-tts"},features:{usage:!0,usageApikey:!0},oauth:{custom:!0,authorizeUrl:"https://platform.xiaomimimo.com/authorize",callbackParam:"u",kn:"mimocode"}},{id:"xiaomi-tokenplan",priority:300,alias:"xiaomi-tokenplan",aliases:["xmtp"],uiAlias:"xmtp",display:{name:"Xiaomi MiMo (Token Plan)",icon:"smart_toy",color:"#FF6700",textIcon:"XT",website:"https://mimo.xiaomi.com",notice:{text:"Xiaomi MiMo Token Plan subscription (API key starts with tp-). Token Plan keys are cluster-specific — select the region matching your subscription.",apiKeyUrl:"https://mimo.xiaomi.com"}},category:"apikey",hasProviderSpecificData:!0,regions:[{id:"sgp",label:"Singapore (新加坡)"},{id:"cn",label:"China (中国大陆)"},{id:"ams",label:"Amsterdam (阿姆斯特丹)"}],defaultRegion:"sgp",transport:{baseUrl:"https://token-plan-sgp.xiaomimimo.com/v1/chat/completions",regions:{sgp:"https://token-plan-sgp.xiaomimimo.com/v1",cn:"https://token-plan-cn.xiaomimimo.com/v1",ams:"https://token-plan-ams.xiaomimimo.com/v1"},defaultRegion:"sgp"},transports:[{format:"openai",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{format:"claude",headers:{...u},auth:{combined:!0,header:"x-api-key",scheme:"raw"}}],models:[{id:"mimo-v2.5-pro",name:"MiMo V2.5 Pro"},{id:"mimo-v2.5-pro-claude",name:"MiMo V2.5 Pro (Claude Native)",targetFormat:"claude",upstreamModelId:"mimo-v2.5-pro"},{id:"mimo-v2.5",name:"MiMo V2.5"},{id:"mimo-v2-pro",name:"MiMo V2 Pro"},{id:"mimo-v2-omni",name:"MiMo V2 Omni"},{id:"mimo-v2-tts",name:"MiMo V2 TTS"},{id:"mimo-v2.5-tts",name:"MiMo V2.5 TTS"},{id:"mimo-v2.5-tts-voiceclone",name:"MiMo V2.5 TTS Voice Clone"},{id:"mimo-v2.5-tts-voicedesign",name:"MiMo V2.5 TTS Voice Design"}]},{id:"youcom",alias:"youcom",display:{name:"You.com Search",icon:"search",color:"#7C3AED",textIcon:"YC",website:"https://you.com",notice:{apiKeyUrl:"https://api.you.com"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch"],searchConfig:{baseUrl:"https://ydc-index.io/v1/search",method:"GET",authType:"apikey",authHeader:"x-api-key",costPerQuery:.005,freeMonthlyQuota:0,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:100,timeoutMs:1e4,cacheTTLMs:3e5}},{id:"alims-intl",priority:11,alias:"alims-intl",display:{name:"Alibaba Studio",icon:"cloud",color:"#FF6A00",textIcon:"ALi",website:"https://modelstudio.console.alibabacloud.com",notice:{apiKeyUrl:"https://modelstudio.console.alibabacloud.com/?apiKey=1"}},category:"apikey",transport:{baseUrl:"https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions",headers:{},quirks:{preserveCacheControl:!0}},models:[{id:"qwen3.5-plus",name:"Qwen3.5 Plus"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"glm-4.7",name:"GLM 4.7"}]},{id:"codebuddy-intl",alias:"cbai",uiAlias:"cbai",hidden:!1,priority:90,display:{name:"CodeBuddy",icon:"smart_toy",color:"#006EFF",website:"https://www.codebuddy.ai",notice:{signupUrl:"https://www.codebuddy.ai"}},category:"oauth",authModes:["oauth","apikey"],hasOAuth:!0,transport:{baseUrl:"https://www.codebuddy.ai/v2/chat/completions",forceStream:!0,thinkingFormat:"openai",headers:{"User-Agent":"IDE/2.108.1 CodeBuddy/2.108.1","X-Product":"SaaS","X-IDE-Type":"IDE","X-IDE-Name":"IDE","x-requested-with":"XMLHttpRequest","x-codebuddy-request":"1"},auth:{combined:!0,header:"Authorization",scheme:"bearer"},usage:{url:"https://www.codebuddy.ai/v2/billing/meter/get-user-resource"}},models:[{id:"glm-5.2",name:"GLM-5.2"},{id:"glm-5.1",name:"GLM-5.1"},{id:"glm-5.0",name:"GLM-5.0"},{id:"glm-5.0-turbo",name:"GLM-5.0-Turbo"},{id:"glm-5v-turbo",name:"GLM-5v-Turbo"},{id:"glm-4.7",name:"GLM-4.7"},{id:"minimax-m3",name:"MiniMax-M3"},{id:"minimax-m2.7",name:"MiniMax-M2.7"},{id:"kimi-k2.7",name:"Kimi-K2.7-Code"},{id:"kimi-k2.6",name:"Kimi-K2.6"},{id:"kimi-k2.5",name:"Kimi-K2.5"},{id:"hy3-preview",name:"Hy3 Preview"},{id:"deepseek-v4-pro",name:"DeepSeek-V4-Pro"},{id:"deepseek-v4.1-flash",name:"DeepSeek-V4.1-Flash"},{id:"deepseek-v3-2-volc",name:"DeepSeek-V3.2"}],oauth:{baseUrl:"https://www.codebuddy.ai",stateUrl:"https://www.codebuddy.ai/v2/plugin/auth/state",tokenUrl:"https://www.codebuddy.ai/v2/plugin/auth/token",refreshUrl:"https://www.codebuddy.ai/v2/plugin/auth/token/refresh",userAgent:"IDE/2.63.2 CodeBuddy/2.63.2",platform:"ide",pollInterval:5e3},features:{usage:!0,usageApikey:!0}},{id:"zed",priority:999,alias:"zd",uiAlias:"zd",display:{name:"Zed",icon:"code",color:"#A855F7",website:"https://zed.dev",notice:{signupUrl:"https://zed.dev/native_app_signin"}},category:"oauth",authType:"oauth",hasOAuth:!0,transport:{baseUrl:"https://cloud.zed.dev/completions",format:"openai",forceStream:!0,headers:{"content-type":"application/json"},auth:{combined:!0,header:"Authorization",scheme:"<user_id> <access_token>"},usage:{url:"https://cloud.zed.dev/client/users/me"},modelsUrl:"https://cloud.zed.dev/models"},models:[],passthroughModels:!0,oauth:{authorizeUrl:"https://zed.dev/native_app_signin",platform:"zed",rsaKeyExchange:!0},features:{usage:!0,liveModels:!0}},{id:"api-airforce",alias:"af",aliases:["airforce"],uiAlias:"af",display:{name:"API.airforce",icon:"flight",color:"#0EA5E9",textIcon:"AF",website:"https://api.airforce",notice:{apiKeyUrl:"https://api.airforce"}},category:"freeTier",authType:"apikey",authModes:["apikey"],passthroughModels:!0,modelsFetcher:{url:"https://api.airforce/v1/models",type:"airforce-free"},transport:{baseUrl:"https://api.airforce/v1/chat/completions",validateUrl:"https://api.airforce/v1/models",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"},forceStream:!0},models:[{id:"gpt-oss-120b",name:"GPT-OSS 120B (Free)",contextLength:131072},{id:"gpt-oss-20b",name:"GPT-OSS 20B (Free)",contextLength:131072},{id:"kimi-k2.7-code",name:"Kimi K2.7 Code (Free)",contextLength:262144}]},{id:"baidu",alias:"qianfan",aliases:["qianfan","ernie","baidu-qianfan"],uiAlias:"qianfan",category:"apikey",authType:"apikey",authModes:["apikey"],display:{name:"Baidu Qianfan",icon:"search",color:"#2932E1",textIcon:"BD",website:"https://cloud.baidu.com/product/qianfan.html",notice:{apiKeyUrl:"https://console.bce.baidu.com/qianfan/ais/console/applicationConsole/application"}},transport:{baseUrl:"https://qianfan.baidubce.com/v2/chat/completions",validateUrl:"https://qianfan.baidubce.com/v2/models"},models:[{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",contextLength:1048576},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",contextLength:1048576},{id:"glm-5.2",name:"GLM 5.2",contextLength:512e3},{id:"glm-5.1",name:"GLM 5.1",contextLength:198e3},{id:"kimi-k2.6",name:"Kimi K2.6",contextLength:262144},{id:"qwen3.5-397b-a17b",name:"Qwen 3.5 397B A17B",contextLength:262144},{id:"qwen3.5-27b",name:"Qwen 3.5 27B",contextLength:262144}]},{id:"bazaarlink",alias:"bzl",aliases:["bazaar-link"],uiAlias:"bzl",category:"freeTier",authType:"apikey",authModes:["apikey"],display:{name:"Bazaarlink",icon:"storefront",color:"#DC2626",textIcon:"BZ",website:"https://bazaarlink.ai",notice:{apiKeyUrl:"https://bazaarlink.ai"}},transport:{baseUrl:"https://bazaarlink.ai/api/v1/chat/completions",validateUrl:"https://bazaarlink.ai/api/v1/models"},models:[{id:"auto:free",name:"Auto Free (Zero Cost)"},{id:"claude-opus-4.7",name:"Claude Opus 4.7",contextLength:1e6},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6",contextLength:1e6},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5",contextLength:2e5},{id:"gpt-5.5",name:"GPT-5.5",contextLength:105e4},{id:"gpt-5.4",name:"GPT-5.4",contextLength:105e4},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini",contextLength:4e5},{id:"gpt-5.4-nano",name:"GPT-5.4 Nano",contextLength:4e5},{id:"grok-4.3",name:"Grok 4.3",contextLength:1e6},{id:"grok-4.20",name:"Grok 4.20",contextLength:2e6},{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro",contextLength:1048576},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash",contextLength:1048576},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite",contextLength:1048576},{id:"kimi-k2.6",name:"Kimi K2.6",contextLength:262144},{id:"kimi-k2.5",name:"Kimi K2.5",contextLength:262144},{id:"glm-5.1",name:"GLM 5.1",contextLength:204800},{id:"glm-5",name:"GLM 5",contextLength:204800},{id:"mimo-v2.5-pro",name:"MiMo-V2.5-Pro",contextLength:105e4},{id:"mimo-v2.5",name:"MiMo-V2.5",contextLength:105e4},{id:"minimax-m3",name:"MiniMax M3",contextLength:1048576},{id:"minimax-m2.7",name:"MiniMax M2.7",contextLength:204800},{id:"minimax-m2.5",name:"MiniMax M2.5",contextLength:204800},{id:"qwen3.6-plus",name:"Qwen 3.6 Plus",contextLength:1e6},{id:"nemotron-3-super-120b-a12b",name:"Nemotron 3 Super",contextLength:1e6}]},{id:"bluesminds",alias:"bm",aliases:["blue-sminds"],uiAlias:"bm",hidden:!0,display:{name:"BluesMinds",icon:"psychology",color:"#2563EB",textIcon:"BM",website:"https://bluesminds.com",notice:{apiKeyUrl:"https://bluesminds.com"}},category:"apikey",authType:"apikey",authModes:["apikey"],transport:{baseUrl:"https://api.bluesminds.com/v1/chat/completions",validateUrl:"https://api.bluesminds.com/v1/models"},models:[{id:"gpt-4.1",name:"GPT-4.1",contextLength:1048576},{id:"gpt-4.1-mini",name:"GPT-4.1 Mini",contextLength:1048576},{id:"gpt-4.1-nano",name:"GPT-4.1 Nano",contextLength:1048576},{id:"claude-sonnet-4-5",name:"Claude Sonnet 4.5",contextLength:2e5},{id:"claude-haiku-4-5",name:"Claude Haiku 4.5",contextLength:2e5},{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash",contextLength:1048576},{id:"gemini-2.0-flash-exp",name:"Gemini 2.0 Flash (Exp)",contextLength:1048576},{id:"qwen-turbo",name:"Qwen Turbo",contextLength:1e6},{id:"kimi-k2",name:"Kimi K2",contextLength:262144},{id:"kimi-k2-thinking",name:"Kimi K2 Thinking",contextLength:262144},{id:"glm-4.7",name:"GLM 4.7",contextLength:204800},{id:"minimax-m2.5",name:"MiniMax M2.5",contextLength:204800},{id:"claude-opus-4-5",name:"Claude Opus 4.5 (VIP)",contextLength:2e5},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro (VIP)",contextLength:1048576}]},{id:"kilo-gateway",alias:"kgw",aliases:["kilo-gateway","kilogateway"],uiAlias:"kgw",category:"freeTier",display:{name:"Kilo Gateway",icon:"login",color:"#8B5CF6",textIcon:"KG",website:"https://kilo.ai",notice:{apiKeyUrl:"https://kilo.ai/dashboard?tab=apiKeys"}},authType:"apikey",authModes:["apikey"],transport:{baseUrl:"https://api.kilo.ai/api/gateway/chat/completions",validateUrl:"https://api.kilo.ai/api/gateway/models"},models:[{id:"kilo-auto/free",name:"Kilo Auto Free",contextLength:256e3},{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"Nemotron 3 Super 120B (Free)",contextLength:262144},{id:"nvidia/nemotron-3-ultra-550b-a55b:free",name:"Nemotron 3 Ultra 550B (Free)",contextLength:1e6},{id:"kwaipilot/kat-coder-pro-v2.5:free",name:"Kat Coder Pro v2.5 (Free)",contextLength:256e3},{id:"kilo-auto/frontier",name:"Kilo Auto Frontier",contextLength:1e6},{id:"kilo-auto/balanced",name:"Kilo Auto Balanced",contextLength:1e6}]},{id:"llm7",alias:"llm7",aliases:["llm-7"],uiAlias:"llm7",display:{name:"LLM7",icon:"pool",color:"#7C3AED",textIcon:"L7",website:"https://llm7.io",notice:{apiKeyUrl:"https://llm7.io"}},category:"apikey",authType:"apikey",authModes:["apikey"],transport:{baseUrl:"https://api.llm7.io/v1/chat/completions",validateUrl:"https://api.llm7.io/v1/models"},models:[{id:"gpt-5.5",name:"GPT-5.5 (LLM7)",contextLength:105e4},{id:"claude-opus-5",name:"Claude Opus 5 (LLM7)",contextLength:1e6},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash (LLM7)",contextLength:1e6},{id:"grok-4.5",name:"Grok 4.5 (LLM7)",contextLength:5e5},{id:"kimi-k3",name:"Kimi K3 (LLM7)",contextLength:1e6}],passthroughModels:!0},{id:"sambanova",alias:"samba",aliases:["sambanova-ai"],uiAlias:"samba",hidden:!0,display:{name:"SambaNova",icon:"memory",color:"#F97316",textIcon:"SN",website:"https://sambanova.ai",notice:{apiKeyUrl:"https://cloud.sambanova.ai/apis"}},category:"apikey",authType:"apikey",authModes:["apikey"],transport:{baseUrl:"https://api.sambanova.ai/v1/chat/completions",validateUrl:"https://api.sambanova.ai/v1/models"},models:[{id:"MiniMax-M2.7",name:"MiniMax M2.7",contextLength:196608}]},{id:"tencent",alias:"hunyuan",aliases:["hunyuan","tencent-hunyuan"],uiAlias:"hunyuan",display:{name:"Tencent Hunyuan",icon:"cloud",color:"#0052D9",textIcon:"HY",website:"https://cloud.tencent.com/product/hunyuan",notice:{apiKeyUrl:"https://console.cloud.tencent.com/hunyuan/api-key"}},category:"apikey",authType:"apikey",authModes:["apikey"],transport:{baseUrl:"https://api.hunyuan.cloud.tencent.com/v1/chat/completions",validateUrl:"https://api.hunyuan.cloud.tencent.com/v1/models"},models:[{id:"hunyuan-turbos-latest",name:"Hunyuan TurboS Latest",contextLength:2e5},{id:"hunyuan-t1-latest",name:"Hunyuan T1 Latest",contextLength:256e3}]},{id:"morph",alias:"morph",aliases:["morphllm"],uiAlias:"morph",display:{name:"Morph",icon:"change_history",color:"#14B8A6",textIcon:"MP",website:"https://morphllm.com",notice:{apiKeyUrl:"https://morphllm.com"}},category:"apikey",authType:"apikey",authModes:["apikey"],transport:{baseUrl:"https://api.morphllm.com/v1/chat/completions",validateUrl:"https://api.morphllm.com/v1/models"},models:[{id:"morph-v3-large",name:"Morph v3 Large"},{id:"morph-v3-fast",name:"Morph v3 Fast"},{id:"morph-qwen35-397b",name:"Qwen 3.5 397B (Morph)",contextLength:262144},{id:"morph-minimax27-230b",name:"MiniMax M2.7 (Morph)",contextLength:200704},{id:"morph-qwen36-27b",name:"Qwen 3.6 27B (Morph)",contextLength:262144},{id:"morph-dsv4flash",name:"DeepSeek V4 Flash (Morph)",contextLength:1048576}]},{id:"poolside",priority:60,alias:"poolside",aliases:["ps"],uiAlias:"ps",display:{name:"Poolside",icon:"water_drop",color:"#0EA5E9",textIcon:"PS",website:"https://poolside.ai",notice:{apiKeyUrl:"https://platform.poolside.ai/api-keys"}},category:"freeTier",authType:"apikey",authModes:["apikey"],transport:{baseUrl:"https://inference.poolside.ai/v1/chat/completions",validateUrl:"https://inference.poolside.ai/v1/models"},models:[{id:"poolside/laguna-s-2.1",name:"Laguna S 2.1"},{id:"poolside/laguna-xs-2.1",name:"Laguna XS 2.1"}]},{id:"tokenrouter",alias:"tokenrouter",aliases:["tr"],uiAlias:"tokenrouter",display:{name:"TokenRouter",icon:"hub",color:"#0EA5E9",textIcon:"TR",website:"https://www.tokenrouter.com",notice:{text:"OpenAI-compatible gateway. 300+ models (OpenAI, Claude, Gemini, Qwen, DeepSeek, Kimi, GLM, dsb).",apiKeyUrl:"https://www.tokenrouter.com"}},category:"apikey",thinkingConfig:{options:["low","medium","high","xhigh","max"],defaultMode:"high"},transport:{baseUrl:"https://api.tokenrouter.com/v1/chat/completions",validateUrl:"https://api.tokenrouter.com/v1/models",thinkingFormat:"tokenrouter"},models:[{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"anthropic/claude-opus-4.8",name:"Claude Opus 4.8"},{id:"anthropic/claude-opus-4.8-fast",name:"Claude Opus 4.8 Fast"},{id:"openai/gpt-5.4",name:"Gpt 5.4"},{id:"openai/gpt-5.4-mini",name:"Gpt 5.4 Mini"},{id:"openai/gpt-5.4-pro",name:"Gpt 5.4 Pro"},{id:"openai/gpt-5.5",name:"Gpt 5.5"},{id:"openai/gpt-5.6-sol",name:"Gpt 5.6 Sol"},{id:"google/gemini-3.5-flash",name:"Gemini 3.5 Flash"},{id:"google/gemini-3.6-flash",name:"Gemini 3.6 Flash"},{id:"deepseek/deepseek-v4-flash",name:"Deepseek V4 Flash"},{id:"deepseek/deepseek-v4-pro",name:"Deepseek V4 Pro"},{id:"qwen/qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen/qwen3.7-max",name:"Qwen3.7 Max"},{id:"qwen/qwen3.8-max",name:"Qwen3.8 Max"},{id:"moonshotai/kimi-k2.7-code",name:"Kimi K2.7 Code"},{id:"moonshotai/kimi-k3-free",name:"Kimi K3 Free"},{id:"z-ai/glm-5.3-free",name:"Glm 5.3 Free"},{id:"z-ai/glm-5.2",name:"Glm 5.2"},{id:"z-ai/glm-5-turbo",name:"Glm 5 Turbo"},{id:"x-ai/grok-4.5",name:"Grok 4.5"}],serviceKinds:["llm","embedding","image"],embeddingConfig:{baseUrl:"https://api.tokenrouter.com/v1/embeddings",authType:"apikey",authHeader:"bearer"},imageConfig:{baseUrl:"https://api.tokenrouter.com/v1/images/generations"},modelsFetcher:{url:"https://api.tokenrouter.com/v1/models",type:"openai"},passthroughModels:!0},{id:"selfhosted-stt",priority:50,hasFree:!0,alias:"selfhosted-stt",display:{name:"Self-hosted STT",icon:"cloud",color:"#ffffffff",textIcon:"ST",website:"https://github.com/ggml-org/whisper.cpp"},category:"apikey",auth:{apiKey:{text:"Set providerSpecificData.baseUrl to the full transcriptions URL, e.g. http://host:8080/v1/audio/transcriptions. The API key is not checked by local servers; any value works."}},models:[{id:"whisper-1",name:"Whisper (self-hosted)",params:["language","response_format","temperature","prompt"],kind:"stt"}],serviceKinds:["stt"],sttConfig:{baseUrl:"http://localhost:8080/v1/audio/transcriptions",authType:"apikey",authHeader:"bearer",format:"openai"}},{id:"selfhosted-tts",priority:50,hasFree:!0,alias:"selfhosted-tts",display:{name:"Self-hosted TTS",icon:"cloud",color:"#ffffffff",textIcon:"TT",website:"https://github.com/remsky/Kokoro-FastAPI"},category:"apikey",auth:{apiKey:{text:"Set providerSpecificData.baseUrl to the server root, e.g. http://host:8080 — /v1/audio/speech is appended. The API key is not checked by local servers; any value works."}},models:[{id:"kokoro",name:"Kokoro (self-hosted)",params:["voice","response_format","speed"],kind:"tts"}],serviceKinds:["tts"],ttsConfig:{baseUrl:"http://localhost:8880",defaultModel:"kokoro",authType:"apikey",format:"openai-speech"}},{id:"selfhosted-embedding",priority:50,hasFree:!0,alias:"selfhosted-embedding",display:{name:"Self-hosted Embedding",icon:"cloud",color:"#ffffffff",textIcon:"SE",website:"https://github.com/ggml-org/llama.cpp"},category:"apikey",auth:{apiKey:{text:"Set providerSpecificData.baseUrl to the OpenAI base URL, e.g. http://host:8080/v1 — /embeddings is appended. The API key is not checked by local servers; any value works."}},models:[{id:"embedding",name:"Self-hosted embedding model",kind:"embedding"}],serviceKinds:["embedding"],embeddingConfig:{baseUrl:"http://localhost:8080/v1/embeddings",authType:"apikey",authHeader:"bearer"}},{id:"fish-audio",alias:"fish",display:{name:"Fish Audio",icon:"record_voice_over",color:"#1E9BF0",textIcon:"FA",website:"https://fish.audio",notice:{apiKeyUrl:"https://fish.audio/app/api-keys/"}},category:"apikey",authType:"apikey",serviceKinds:["tts"],ttsConfig:{baseUrl:"https://api.fish.audio/v1/tts",authType:"apikey",authHeader:"bearer",format:"fish-audio",models:[{id:"s2.1-pro-free",name:"S2.1 Pro Free"},{id:"s2.1-pro",name:"S2.1 Pro"},{id:"s2-pro",name:"S2 Pro"},{id:"s1",name:"S1"}]}},{id:"alitp-intl",priority:11,alias:"alitp-intl",display:{name:"Alibaba Token Plan",icon:"cloud",color:"#FF6A00",textIcon:"ATP",website:"https://www.alibabacloud.com/campaign/ai-landing-page-token",notice:{apiKeyUrl:"https://modelstudio.console.alibabacloud.com/?apiKey=1"}},category:"apikey",transport:{baseUrl:"https://token-plan.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions",headers:{},quirks:{preserveCacheControl:!0}},models:[{id:"qwen3.8-max-preview",name:"Qwen3.8 Max Preview"},{id:"qwen3.7-max",name:"Qwen3.7 Max"},{id:"qwen3.7-plus",name:"Qwen3.7 Plus"},{id:"qwen3.6-flash",name:"Qwen3.6 Flash"},{id:"glm-5.2",name:"GLM 5.2"},{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro"}]},{id:"xquik",alias:"xquik",display:{name:"Xquik",icon:"tag",color:"#5C3327",textIcon:"XQ",website:"https://docs.xquik.com/api-reference/x/search-tweets",notice:{apiKeyUrl:"https://xquik.com",text:"Searches public X posts. Billing uses 1 Xquik credit per returned post."}},category:"apikey",authType:"apikey",serviceKinds:["webSearch"],searchConfig:{baseUrl:"https://xquik.com/api/v1/x/tweets/search",validateUrl:"https://xquik.com/api/v1/credits",method:"GET",authType:"apikey",authHeader:"x-api-key",searchTypes:["x"],defaultMaxResults:5,maxMaxResults:100,timeoutMs:1e4,cacheTTLMs:6e4,creditsPerResult:1}},{id:"meta-code",priority:285,alias:"mc",display:{name:"Meta Code",icon:"auto_awesome",color:"#0668E1",textIcon:"MC",website:"https://dev.meta.ai",notice:{apiKeyUrl:"https://dev.meta.ai",signupUrl:"https://dev.meta.ai/docs/muse-code/subscriptions"}},category:"oauth",authModes:["oauth","apikey"],hasOAuth:!0,transport:{baseUrl:"https://api.meta.ai/v1/responses",format:"openai-responses",forceStream:!0,quirks:{foldReasoningEffort:!0},validateUrl:"https://api.meta.ai/v1/models"},oauth:{deviceCodeUrl:"https://auth.meta.com/oidc/device/authorization/",tokenUrl:"https://auth.meta.com/oidc/device/token/",mintUrl:"https://api.meta.ai/muse-code/key"},models:[{id:"muse-spark-1.3",name:"Muse Spark 1.3",targetFormat:"openai-responses"},{id:"muse-spark-1.2",name:"Muse Spark 1.2",targetFormat:"openai-responses"},{id:"muse-spark-1.1",name:"Muse Spark 1.1",targetFormat:"openai-responses"},{id:"muse-spark-1.3-contributor",name:"Muse Spark 1.3 Contributor",targetFormat:"openai-responses"},{id:"muse-spark-1.2-contributor",name:"Muse Spark 1.2 Contributor",targetFormat:"openai-responses"}],features:{usage:!0}}]},88105:(e,a,i)=>{i.d(a,{Q2:()=>y,fg:()=>c,MA:()=>b,IS:()=>d,nJ:()=>m,Aj:()=>T,rj:()=>s.r,zN:()=>l,NW:()=>M,br:()=>h,wG:()=>x,zt:()=>f,o5:()=>w,gb:()=>g,gC:()=>k,mq:()=>u,rs:()=>v});var t=i(72985),o=i(7256);let n="Risk notice: this provider uses a subscription/OAuth session not officially licensed for proxy/router use. The account may be restricted or banned. Use at your own risk.";Object.fromEntries(t.A.filter(e=>e.display).map(e=>{let a,i;return[e.id,(a=e.id,{...i=e.display,...i.color?{color:(0,o.Do)(a).color}:{},..."RISK_NOTICE"===i.deprecationNotice?{deprecationNotice:n}:{}})]}));var s=i(36159);let r=["serviceKinds","ttsConfig","sttConfig","embeddingConfig","imageConfig","imageToTextConfig","videoConfig","musicConfig","searchViaChat","searchConfig","fetchConfig","credentialFallback","modelsFetcher","mediaPriority","hiddenKinds"],p=e=>Object.fromEntries(t.A.filter(a=>a.category===e).map(e=>[e.id,function(e){let a={};for(let i of(e.media&&Object.assign(a,e.media),r))void 0!==e[i]&&(a[i]=e[i]);let i={...e.display||{}};return"RISK_NOTICE"===i.deprecationNotice&&(i.deprecationNotice=n),i.color&&(i.color=(0,o.Do)(e.id).color),{...i,id:e.id,alias:e.uiAlias||e.alias,...e.hidden?{hidden:!0}:{},...a,...void 0!==e.priority?{priority:e.priority}:{},...e.hasFree?{hasFree:!0}:{},...e.thinkingConfig?{thinkingConfig:e.thinkingConfig}:{},...e.regions?{regions:e.regions,defaultRegion:e.defaultRegion}:{},...e.hasProviderSpecificData?{hasProviderSpecificData:!0}:{},...e.noAuth?{noAuth:!0}:{},...e.passthroughModels?{passthroughModels:!0}:{},...e.hasOAuth?{hasOAuth:!0}:{},...e.authModes?{authModes:e.authModes}:{},...e.authType?{authType:e.authType}:{},...e.authHint?{authHint:e.authHint}:{}}}(e)])),d=p("free"),m=p("freeTier"),l=p("oauth"),c=p("apikey"),h=p("webCookie");function u(e){return"string"==typeof e&&e.startsWith("openai-compatible-")}function g(e){return"string"==typeof e&&e.startsWith("anthropic-compatible-")}function k(e){return"string"==typeof e&&e.startsWith("custom-embedding-")}let y={...d,...m,...l,...c,...h},b={oauth:{id:"oauth"},apikey:{id:"apikey"},cookie:{id:"cookie"}};function f(e){for(let a of Object.values(y))if(a.alias===e||a.id===e)return a;return null}function v(e){let a=f(e);return a?.id||e}function x(e){let a=y[e];return a?.alias||e}function w(e){return Object.values(y).filter(a=>!(!(a.serviceKinds??["llm"]).includes(e)||a.hidden||a.hiddenKinds?.includes(e))).sort((e,a)=>(e.priority??e.mediaPriority??999)-(a.priority??a.mediaPriority??999))}Object.values(y).reduce((e,a)=>(e[a.alias]=a.id,e),{}),Object.values(y).reduce((e,a)=>(e[a.id]=a.alias,e),{});let M=Object.values(d).filter(e=>e.noAuth&&!e.hidden);t.A.filter(e=>e.features?.usage).map(e=>e.id),t.A.filter(e=>e.features?.usageApikey).map(e=>e.id);let T=t.A.filter(e=>e.features?.liveModels).map(e=>e.id)}}]);
@@ -1,4 +1,4 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[712],{1934:(e,t,r)=>{"use strict";r.d(t,{v:()=>a});var n=r(12115);let s=e=>{let t,r=new Set,n=(e,n)=>{let s="function"==typeof e?e(t):e;if(!Object.is(s,t)){let e=t;t=(null!=n?n:"object"!=typeof s||null===s)?s:Object.assign({},t,s),r.forEach(r=>r(t,e))}},s=()=>t,i={setState:n,getState:s,getInitialState:()=>a,subscribe:e=>(r.add(e),()=>r.delete(e))},a=t=e(n,s,i);return i},i=e=>{let t=e?s(e):s,r=e=>(function(e,t=e=>e){let r=n.useSyncExternalStore(e.subscribe,n.useCallback(()=>t(e.getState()),[e,t]),n.useCallback(()=>t(e.getInitialState()),[e,t]));return n.useDebugValue(r),r})(t,e);return Object.assign(r,t),r},a=e=>e?i(e):i},4650:(e,t,r)=>{"use strict";async function n(e){if("u">typeof navigator&&navigator?.clipboard?.writeText)try{await navigator.clipboard.writeText(String(e));return}catch{}if("u"<typeof document)throw Error("copyTextToClipboard: clipboard API unavailable");let t=document.createElement("textarea");t.value=String(e),t.style.position="fixed",t.style.opacity="0",document.body.appendChild(t),t.select();let r=!1;try{r=document.execCommand("copy")}finally{document.body.removeChild(t)}if(!r)throw Error("copyTextToClipboard: execCommand('copy') failed")}function s(e,{min:t,max:r}={}){if(""===e||null==e)return e;let n=Number(e);if(!Number.isFinite(n))return e;let i=n;return Number.isFinite(t)&&(i=Math.max(t,i)),Number.isFinite(r)&&(i=Math.min(r,i)),i}function i(e,{min:t,max:r,step:n=1,direction:a}={}){let l=""===e||null==e?NaN:Number(s(e,{min:t,max:r})),o=Number.isFinite(l)?l:Number.isFinite(t)?t:0,c=Math.max(String(n).split(".")[1]?.length??0,String(o).split(".")[1]?.length??0);return s(Number((o+a*n).toFixed(Math.min(c,10))),{min:t,max:r})}function a(e,t,{length:r,rtl:n=!1}={}){if(!Number.isInteger(r)||r<=0)return e;let s=(e%r+r)%r;switch(t){case"ArrowRight":return(s+(n?-1:1)+r)%r;case"ArrowLeft":return(s+(n?1:-1)+r)%r;case"ArrowDown":return(s+1)%r;case"ArrowUp":return(s-1+r)%r;case"Home":return 0;case"End":return r-1;default:return s}}function l(e){return["ArrowRight","ArrowLeft","ArrowDown","ArrowUp","Home","End"].includes(e)}r.d(t,{CD:()=>i,Ck:()=>o,Ec:()=>u,GO:()=>c,Gc:()=>m,JF:()=>l,N:()=>s,V7:()=>d,eM:()=>n,lZ:()=>a,qM:()=>p});let o={primary:"bg-lime text-on-lime border border-transparent shadow-[inset_0_0_0_1px_rgba(0,0,0,0.14)] hover:brightness-95",secondary:"bg-raised text-text border border-line hover:bg-line/60",ghost:"bg-transparent text-text border border-line hover:bg-raised",danger:"bg-err-bg text-err border border-transparent hover:bg-err/15",outline:"bg-transparent text-muted border border-line hover:bg-raised hover:text-text",success:"bg-ok-bg text-ok border border-transparent hover:bg-ok/15"},c={sm:"h-10 px-3 text-sm rounded-lg",md:"h-11 px-4 text-sm rounded-lg",lg:"h-11 px-6 text-sm rounded-lg"},u={sm:"h-9 text-xs",md:"h-9 text-sm",lg:"h-11 text-sm"};function d(e="primary",t="md"){let r=o[e];if(!r)throw Error(`buttonClasses: unknown variant "${e}"`);let n=c[t];if(!n)throw Error(`buttonClasses: unknown size "${t}"`);return`${r} ${n}`}function m(e,{hint:t,error:r}={}){return r?`${e}-error`:t?`${e}-hint`:void 0}function p(e){return null!=e&&!1!==e&&""!==e}},11910:(e,t,r)=>{"use strict";r.d(t,{default:()=>o});var n=r(95155),s=r(14051),i=r.n(s),a=r(31474),l=r(98582);function o({label:e,type:t="text",placeholder:r,value:s,onChange:i,error:c,hint:u,icon:d,disabled:m=!1,required:p=!1,className:f,inputClassName:x,id:h,ref:g,...b}){return(0,n.jsx)(l.default,{id:h,label:e,hint:u,error:c,required:p,className:f,children:({inputId:e,describedBy:l,invalid:o})=>(0,n.jsxs)("div",{className:"relative",children:[d&&(0,n.jsx)("div",{className:"absolute inset-y-0 start-0 flex items-center ps-3 pointer-events-none text-muted","aria-hidden":"true",children:(0,n.jsx)("span",{className:"material-symbols-outlined text-[20px]",children:d})}),(0,n.jsx)("input",{...b,ref:g,id:e,type:t,placeholder:r,value:s,onChange:i,disabled:m,"aria-describedby":l,"aria-invalid":o||void 0,className:(0,a.cn)("w-full py-2.5 px-3 text-sm text-text bg-raised rounded-lg","border border-line placeholder:text-subtle","focus:outline-none focus:border-coral focus:shadow-focus","transition-colors duration-150 disabled:opacity-50 disabled:cursor-not-allowed","text-[16px] sm:text-sm",d&&"ps-10",o&&"border-err focus:border-err",x)})]})})}o.propTypes={label:i().node,type:i().string,placeholder:i().string,value:i().oneOfType([i().string,i().number]),onChange:i().func,error:i().node,hint:i().node,icon:i().string,disabled:i().bool,required:i().bool,className:i().string,inputClassName:i().string,id:i().string,"aria-label":i().string}},15729:(e,t,r)=>{"use strict";r.d(t,{default:()=>l});var n=r(95155),s=r(14051),i=r.n(s),a=r(31474);function l({children:e,className:t,...r}){return(0,n.jsx)("kbd",{...r,className:(0,a.cn)("inline-flex h-5 min-w-5 items-center justify-center rounded-md border border-line bg-raised px-1.5","font-mono text-[11px] font-medium text-subtle",t),children:e})}l.propTypes={children:i().node.isRequired,className:i().string}},19123:(e,t,r)=>{"use strict";r.d(t,{default:()=>l});var n=r(95155),s=r(14051),i=r.n(s),a=r(50770);function l({children:e,variant:t="neutral",size:r="md",dot:s=!1,className:i}){return(0,n.jsxs)("span",{className:`inline-flex items-center gap-1.5 rounded-full font-semibold whitespace-nowrap ${(0,a.S3)(t,r)}${i?` ${i}`:""}`,children:[s&&(0,n.jsx)("span",{"aria-hidden":"true",className:"size-2 rounded-full bg-current"}),e]})}l.propTypes={children:i().node,variant:i().oneOf(a.XY),size:i().oneOf(Object.keys(a.vO)),dot:i().bool,className:i().string}},21551:(e,t,r)=>{Promise.resolve().then(r.bind(r,42266))},25086:(e,t,r)=>{"use strict";r.d(t,{CardSkeleton:()=>d,PageLoading:()=>o,Skeleton:()=>c,SkeletonText:()=>u,Spinner:()=>l,default:()=>m});var n=r(95155),s=r(14051),i=r.n(s),a=r(31474);function l({size:e="md",className:t}){return(0,n.jsx)("span",{role:"status","aria-label":"Loading",className:(0,a.cn)("material-symbols-outlined animate-spin text-coral",{sm:"text-[16px]",md:"text-[24px]",lg:"text-[32px]",xl:"text-[48px]"}[e],t),children:"progress_activity"})}function o({message:e="Loading..."}){return(0,n.jsxs)("div",{className:"fixed inset-0 z-50 flex flex-col items-center justify-center bg-bg",children:[(0,n.jsx)(l,{size:"xl"}),(0,n.jsx)("p",{className:"mt-4 text-muted",children:e})]})}function c({className:e,...t}){return(0,n.jsx)("div",{"aria-hidden":"true",className:(0,a.cn)("animate-pulse rounded-[10px] bg-raised",e),...t})}function u({lines:e=3,className:t}){let r=Array.from({length:e},(e,t)=>t);return(0,n.jsx)("div",{className:(0,a.cn)("flex flex-col gap-2",t),"aria-hidden":"true",children:r.map(e=>(0,n.jsx)(c,{className:(0,a.cn)("h-3",e===r.length-1?"w-2/3":"w-full")},`line-${e}`))})}function d(){return(0,n.jsxs)("div",{className:"rounded-2xl border border-line bg-panel p-6 shadow-card",children:[(0,n.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,n.jsx)(c,{className:"h-4 w-24"}),(0,n.jsx)(c,{className:"size-10 rounded-[10px]"})]}),(0,n.jsx)(c,{className:"mb-2 h-8 w-16"}),(0,n.jsx)(c,{className:"h-3 w-20"})]})}function m({type:e="spinner",...t}){switch(e){case"page":return(0,n.jsx)(o,{...t});case"skeleton":return(0,n.jsx)(c,{...t});case"card":return(0,n.jsx)(d,{...t});default:return(0,n.jsx)(l,{...t})}}c.propTypes={className:i().string},u.propTypes={lines:i().number,className:i().string}},27693:(e,t,r)=>{"use strict";r.d(t,{MA:()=>s.MA,Q2:()=>s.Q2,UY:()=>n.UY,h0:()=>n.h0});var n=r(28745),s=r(88105);r(28777)},28067:(e,t,r)=>{"use strict";r.d(t,{default:()=>c});var n=r(95155),s=r(14051),i=r.n(s),a=r(12115),l=r(31474),o=r(4650);function c({options:e=[],value:t,onChange:r,size:s="md",className:i,"aria-label":u,"aria-labelledby":d,...m}){let p=(0,a.useRef)([]),f=e.findIndex(e=>e.value===t),x=f<0?0:f,h=o.Ec[s];if(!h)throw Error(`SegmentedControl: unknown size "${s}"`);return(0,n.jsx)("div",{...m,role:"radiogroup","aria-label":u,"aria-labelledby":d,className:(0,l.cn)("inline-flex items-center gap-0.5 rounded-lg border border-line bg-raised p-1 overflow-x-auto",i),children:e.map((t,s)=>(0,n.jsxs)("button",{ref:e=>{p.current[s]=e},type:"button",role:"radio","aria-checked":s===f,tabIndex:s===x?0:-1,onKeyDown:t=>((t,n)=>{if(!(0,o.JF)(t.key)||0===e.length)return;t.preventDefault();let s=(0,o.lZ)(n,t.key,{length:e.length,rtl:t.currentTarget.closest("[dir]")?.getAttribute("dir")==="rtl"});p.current[s]?.focus(),r?.(e[s].value)})(t,s),onClick:()=>r?.(t.value),className:(0,l.cn)("inline-flex shrink-0 items-center gap-1.5 rounded-md px-3 font-semibold transition-colors duration-200 focus-visible:shadow-focus motion-reduce:transition-none",h,s===f?"bg-text text-bg":"text-muted hover:text-text"),children:[t.icon&&(0,n.jsx)("span",{className:"material-symbols-outlined text-[16px]","aria-hidden":"true",children:t.icon}),t.label,null!=t.count&&(0,n.jsx)("span",{className:(0,l.cn)("font-mono",s===f?"text-bg/80":"text-muted"),children:t.count})]},t.value))})}c.propTypes={options:i().arrayOf(i().shape({value:i().oneOfType([i().string,i().number]).isRequired,label:i().node.isRequired,icon:i().string,count:i().oneOfType([i().string,i().number])})),value:i().oneOfType([i().string,i().number]),onChange:i().func,size:i().oneOf(Object.keys(o.Ec)),className:i().string,"aria-label":function(e,t,r){return e["aria-label"]||e["aria-labelledby"]?null:Error(`${r}: provide "aria-label" or "aria-labelledby".`)},"aria-labelledby":i().string}},28745:(e,t,r)=>{"use strict";r.d(t,{vQ:()=>i,UY:()=>c,Nu:()=>a,B2:()=>o,h0:()=>l});var n=r(4553),s=r(41463);let i={name:`${n.Hc.name} Proxy`,description:"AI infrastructure management",version:"1.0.1",build:{channel:s.env.NEXT_PUBLIC_BUILD_CHANNEL||"",sha:s.env.NEXT_PUBLIC_BUILD_SHA||""}},a={changelogUrl:"https://raw.githubusercontent.com/tokenhop/tokenhop/refs/heads/master/CHANGELOG.md"},l={appPort:20128},o={storageKey:"theme",defaultTheme:"dark"},c={maxLines:200,pollIntervalMs:1e3}},28777:(e,t,r)=>{"use strict";r.d(t,{CP:()=>s,KC:()=>n.KC,Xg:()=>n.Xg,bs:()=>i});var n=r(2378);Object.entries(r(88105).Q2).filter(([,e])=>e.passthroughModels).map(([e])=>e),Object.entries(n.vq).flatMap(([e,t])=>t.map(t=>({provider:e,model:t.id,name:t.name})));let s=(e,t=null)=>e?.kind||e?.type||t,i={vision:{icon:"visibility",label:"Vision",desc:"Supports image input",color:"text-blue-500"},reasoning:{icon:"neurology",label:"Reasoning",desc:"Supports reasoning / thinking",color:"text-amber-500"}}},35591:(e,t,r)=>{"use strict";r.d(t,{CA:()=>d,Fz:()=>g,Ob:()=>m,Wr:()=>l,cr:()=>b,e6:()=>u,eS:()=>p,s4:()=>o,se:()=>a,xJ:()=>c,z8:()=>h});let n=["Pages","Providers","Combos","Models","Actions","Settings"],s="signal.commandPalette.recents";function i(e){return String(e??"").toLowerCase().normalize("NFKD").replace(/[̀-ͯ]/g,"")}function a(e,t,r=[]){let s=new Map((r||[]).map((e,t)=>[e,t])),l=i(t).trim(),o=[];for(let t of e||[]){let e=function(e,t){let r=e,n=t;"string"==typeof t&&"string"!=typeof e&&e&&"object"==typeof e?(r=t,n=e):"object"==typeof e&&void 0===t&&(n=e,r="");let s=i(r).replace(/\s+/g,""),a=function(e){if("string"==typeof e)return i(e);let t=e||{};return i([t.label,t.hint,t.keywords,t.id].filter(Boolean).join(" "))}(n),l=i("string"==typeof n?n:n?.label);if(!s)return{matched:!0,score:0};if(!a)return{matched:!1,score:-1};if(l.startsWith(s))return{matched:!0,score:100-.01*l.length};let o=l.split(/[\s_/-]+/).find(e=>e.startsWith(s));if(o)return{matched:!0,score:70-.05*o.length};let c=0,u=-1;for(let e of s){let t=a.indexOf(e,u+1);if(-1===t)return{matched:!1,score:-1};c+=t-u-1,u=t}return{matched:!0,score:Math.max(1,40-c)}}(l,t);e.matched&&o.push({command:t,score:e.score})}return o.sort((e,t)=>{if(t.score!==e.score)return t.score-e.score;let r=s.has(e.command.id)?s.get(e.command.id):1/0,i=s.has(t.command.id)?s.get(t.command.id):1/0;if(r!==i)return r-i;let a=n.indexOf(e.command.group)-n.indexOf(t.command.group);return 0!==a?a:String(e.command.label).localeCompare(String(t.command.label))}),o.map(e=>e.command)}function l(e){let t=new Map;for(let r of e||[])t.has(r.group)||t.set(r.group,[]),t.get(r.group).push(r);return[...n.filter(e=>t.has(e)),...[...t.keys()].filter(e=>!n.includes(e))].map(e=>({group:e,count:t.get(e).length,items:t.get(e)}))}function o(e,t,r=8){return[t,...(e||[]).filter(e=>e!==t)].slice(0,r)}function c(e=function(){try{return window.localStorage}catch{return null}}()){try{let t=e?.getItem?.(s);if(!t)return[];let r=JSON.parse(t);return Array.isArray(r)?r.filter(e=>"string"==typeof e):[]}catch{return[]}}function u(e,t){try{e?.setItem?.(s,JSON.stringify(t||[]))}catch{}}function d(e){return!e||e<=0?"No matches":`${e} result${1===e?"":"s"}`}function m({key:e,metaKey:t=!1,ctrlKey:r=!1,defaultPrevented:n=!1,isComposing:s=!1,inEditable:i=!1,inCodeEditor:a=!1}={}){return!n&&!s&&!i&&!a&&"string"==typeof e&&"k"===e.toLowerCase()&&!!(t||r)}function p(e,{inCodeEditor:t=!1}={}){let r=e?.target,n=r?.isContentEditable===!0||/^(INPUT|TEXTAREA|SELECT)$/.test(r?.tagName||"")||r?.getAttribute?.("role")==="combobox";return{key:e?.key,metaKey:!!e?.metaKey,ctrlKey:!!e?.ctrlKey,defaultPrevented:!!e?.defaultPrevented,isComposing:e?.keyCode===229||!!e?.isComposing,inEditable:n,inCodeEditor:!!t}}let f=[],x=new Map;function h(e){f.includes(e)||f.push(e)}async function g(e={}){return(await Promise.allSettled([...f,...x.values()].map(t=>t(e)))).flatMap(e=>"fulfilled"===e.status&&e.value||[])}function b(e=3e5){let t=0,r=null;return async function(n){return Date.now()-t<e&&!r?"fresh":(r||(r=Promise.resolve().then(n).then(e=>(t=Date.now(),r=null,e),e=>{throw r=null,e})),r)}}},38794:(e,t,r)=>{"use strict";r.d(t,{default:()=>o});var n=r(95155),s=r(14051),i=r.n(s),a=r(12115),l=r(50770);function o({lines:e,label:t="Console output",className:r,live:s="off",onScroll:i,scrollRef:c,cursor:u=!1,row:d}){return(0,n.jsx)("div",{ref:c,role:"log","aria-label":t,"aria-live":s,dir:"ltr",onScroll:i,tabIndex:0,className:`signal-terminal custom-scrollbar m-0 overflow-auto rounded-2xl p-[18px_22px] text-start font-mono text-[13px] leading-[1.75] focus-visible:shadow-focus${r?` ${r}`:""}`,children:(0,n.jsxs)("ol",{className:"m-0 list-none p-0",children:[d?e.map((e,t)=>(0,n.jsx)(a.Fragment,{children:d(e,t)},e.key??e.id??`${e.time}-${t}`)):e.map((e,t)=>(0,n.jsxs)("li",{className:"flex gap-4 whitespace-nowrap",children:[(0,n.jsx)("span",{className:"signal-terminal-time shrink-0",children:e.time||"--:--:--"}),(0,n.jsx)("span",{className:`w-[52px] shrink-0 font-semibold ${(0,l.pN)(e.level)}`,children:e.level}),(0,n.jsx)("span",{className:"min-w-0 flex-1 whitespace-pre",children:e.message})]},e.id??`${e.time}-${t}`)),u&&(0,n.jsxs)("li",{className:"mt-0.5 flex gap-4 whitespace-nowrap","aria-hidden":"true",children:[(0,n.jsx)("span",{className:"signal-terminal-time shrink-0",children:"--:--:--"}),(0,n.jsx)("span",{className:"signal-terminal-cursor w-[52px] shrink-0 animate-pulse font-semibold",children:"▍"})]})]})})}o.propTypes={lines:i().arrayOf(i().shape({id:i().oneOfType([i().string,i().number]),time:i().string,level:i().oneOf(["LOG","INFO","WARN","ERROR","DEBUG"]).isRequired,message:i().string.isRequired})).isRequired,label:i().string,className:i().string,live:i().oneOf(["off","polite"]),onScroll:i().func,scrollRef:i().shape({current:i().object}),cursor:i().bool,row:i().func}},42266:(e,t,r)=>{"use strict";r.d(t,{default:()=>J});var n=r(95155),s=r(12115),i=r(98500),a=r.n(i),l=r(25086),o=r(56006),c=r(92542),u=r(99312),d=r(38794),m=r(19123),p=r(64371),f=r(28067),x=r(98542),h=r(65921),g=r(27693);let b=new Set(["LOG","INFO","WARN","ERROR","DEBUG"]),y=/^(?:\[(\d{1,2}:\d{2}(?::\d{2})?)\]\s*)?(?:\[([A-Za-z]+)\]\s*)?(.*)$/s,v=/^(?:\p{Extended_Pictographic}\uFE0F?\s*)+/u,w={"⚠️":"WARN","⚠":"WARN","❌":"ERROR","\uD83D\uDD0D":"DEBUG",ℹ️:"INFO",ℹ:"INFO"},N=/^\[browser\]\s*/,j=/\b\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:?\d{2})?\b/g,k=/\b\d{1,2}:\d{2}:\d{2}(?:\.\d+)?\b/g,C=/\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/gi,E=/\b(id|requestId|connectionId|traceId|sessionId)("?\s*[:=]\s*"?)[\w.-]+/gi;function R(e){for(let t=0;t<e.length;t+=1){let r;if("{"===e[t]||"["===e[t]){try{r=JSON.parse(e.slice(t))}catch{continue}if("object"==typeof r&&null!==r){let n=e.slice(0,t).trimEnd(),s=JSON.stringify(r,null,2);return n?`${n}
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[712],{1934:(e,t,r)=>{"use strict";r.d(t,{v:()=>a});var n=r(12115);let s=e=>{let t,r=new Set,n=(e,n)=>{let s="function"==typeof e?e(t):e;if(!Object.is(s,t)){let e=t;t=(null!=n?n:"object"!=typeof s||null===s)?s:Object.assign({},t,s),r.forEach(r=>r(t,e))}},s=()=>t,i={setState:n,getState:s,getInitialState:()=>a,subscribe:e=>(r.add(e),()=>r.delete(e))},a=t=e(n,s,i);return i},i=e=>{let t=e?s(e):s,r=e=>(function(e,t=e=>e){let r=n.useSyncExternalStore(e.subscribe,n.useCallback(()=>t(e.getState()),[e,t]),n.useCallback(()=>t(e.getInitialState()),[e,t]));return n.useDebugValue(r),r})(t,e);return Object.assign(r,t),r},a=e=>e?i(e):i},4650:(e,t,r)=>{"use strict";async function n(e){if("u">typeof navigator&&navigator?.clipboard?.writeText)try{await navigator.clipboard.writeText(String(e));return}catch{}if("u"<typeof document)throw Error("copyTextToClipboard: clipboard API unavailable");let t=document.createElement("textarea");t.value=String(e),t.style.position="fixed",t.style.opacity="0",document.body.appendChild(t),t.select();let r=!1;try{r=document.execCommand("copy")}finally{document.body.removeChild(t)}if(!r)throw Error("copyTextToClipboard: execCommand('copy') failed")}function s(e,{min:t,max:r}={}){if(""===e||null==e)return e;let n=Number(e);if(!Number.isFinite(n))return e;let i=n;return Number.isFinite(t)&&(i=Math.max(t,i)),Number.isFinite(r)&&(i=Math.min(r,i)),i}function i(e,{min:t,max:r,step:n=1,direction:a}={}){let l=""===e||null==e?NaN:Number(s(e,{min:t,max:r})),o=Number.isFinite(l)?l:Number.isFinite(t)?t:0,c=Math.max(String(n).split(".")[1]?.length??0,String(o).split(".")[1]?.length??0);return s(Number((o+a*n).toFixed(Math.min(c,10))),{min:t,max:r})}function a(e,t,{length:r,rtl:n=!1}={}){if(!Number.isInteger(r)||r<=0)return e;let s=(e%r+r)%r;switch(t){case"ArrowRight":return(s+(n?-1:1)+r)%r;case"ArrowLeft":return(s+(n?1:-1)+r)%r;case"ArrowDown":return(s+1)%r;case"ArrowUp":return(s-1+r)%r;case"Home":return 0;case"End":return r-1;default:return s}}function l(e){return["ArrowRight","ArrowLeft","ArrowDown","ArrowUp","Home","End"].includes(e)}r.d(t,{CD:()=>i,Ck:()=>o,Ec:()=>u,GO:()=>c,Gc:()=>m,JF:()=>l,N:()=>s,V7:()=>d,eM:()=>n,lZ:()=>a,qM:()=>p});let o={primary:"bg-lime text-on-lime border border-transparent shadow-[inset_0_0_0_1px_rgba(0,0,0,0.14)] hover:brightness-95",secondary:"bg-raised text-text border border-line hover:bg-line/60",ghost:"bg-transparent text-text border border-line hover:bg-raised",danger:"bg-err-bg text-err border border-transparent hover:bg-err/15",outline:"bg-transparent text-muted border border-line hover:bg-raised hover:text-text",success:"bg-ok-bg text-ok border border-transparent hover:bg-ok/15"},c={sm:"h-10 px-3 text-sm rounded-lg",md:"h-11 px-4 text-sm rounded-lg",lg:"h-11 px-6 text-sm rounded-lg"},u={sm:"h-9 text-xs",md:"h-9 text-sm",lg:"h-11 text-sm"};function d(e="primary",t="md"){let r=o[e];if(!r)throw Error(`buttonClasses: unknown variant "${e}"`);let n=c[t];if(!n)throw Error(`buttonClasses: unknown size "${t}"`);return`${r} ${n}`}function m(e,{hint:t,error:r}={}){return r?`${e}-error`:t?`${e}-hint`:void 0}function p(e){return null!=e&&!1!==e&&""!==e}},11910:(e,t,r)=>{"use strict";r.d(t,{default:()=>o});var n=r(95155),s=r(14051),i=r.n(s),a=r(31474),l=r(98582);function o({label:e,type:t="text",placeholder:r,value:s,onChange:i,error:c,hint:u,icon:d,disabled:m=!1,required:p=!1,className:f,inputClassName:x,id:h,ref:g,...b}){return(0,n.jsx)(l.default,{id:h,label:e,hint:u,error:c,required:p,className:f,children:({inputId:e,describedBy:l,invalid:o})=>(0,n.jsxs)("div",{className:"relative",children:[d&&(0,n.jsx)("div",{className:"absolute inset-y-0 start-0 flex items-center ps-3 pointer-events-none text-muted","aria-hidden":"true",children:(0,n.jsx)("span",{className:"material-symbols-outlined text-[20px]",children:d})}),(0,n.jsx)("input",{...b,ref:g,id:e,type:t,placeholder:r,value:s,onChange:i,disabled:m,"aria-describedby":l,"aria-invalid":o||void 0,className:(0,a.cn)("w-full py-2.5 px-3 text-sm text-text bg-raised rounded-lg","border border-line placeholder:text-subtle","focus:outline-none focus:border-coral focus:shadow-focus","transition-colors duration-150 disabled:opacity-50 disabled:cursor-not-allowed","text-[16px] sm:text-sm",d&&"ps-10",o&&"border-err focus:border-err",x)})]})})}o.propTypes={label:i().node,type:i().string,placeholder:i().string,value:i().oneOfType([i().string,i().number]),onChange:i().func,error:i().node,hint:i().node,icon:i().string,disabled:i().bool,required:i().bool,className:i().string,inputClassName:i().string,id:i().string,"aria-label":i().string}},15729:(e,t,r)=>{"use strict";r.d(t,{default:()=>l});var n=r(95155),s=r(14051),i=r.n(s),a=r(31474);function l({children:e,className:t,...r}){return(0,n.jsx)("kbd",{...r,className:(0,a.cn)("inline-flex h-5 min-w-5 items-center justify-center rounded-md border border-line bg-raised px-1.5","font-mono text-[11px] font-medium text-subtle",t),children:e})}l.propTypes={children:i().node.isRequired,className:i().string}},19123:(e,t,r)=>{"use strict";r.d(t,{default:()=>l});var n=r(95155),s=r(14051),i=r.n(s),a=r(50770);function l({children:e,variant:t="neutral",size:r="md",dot:s=!1,className:i}){return(0,n.jsxs)("span",{className:`inline-flex items-center gap-1.5 rounded-full font-semibold whitespace-nowrap ${(0,a.S3)(t,r)}${i?` ${i}`:""}`,children:[s&&(0,n.jsx)("span",{"aria-hidden":"true",className:"size-2 rounded-full bg-current"}),e]})}l.propTypes={children:i().node,variant:i().oneOf(a.XY),size:i().oneOf(Object.keys(a.vO)),dot:i().bool,className:i().string}},21551:(e,t,r)=>{Promise.resolve().then(r.bind(r,42266))},25086:(e,t,r)=>{"use strict";r.d(t,{CardSkeleton:()=>d,PageLoading:()=>o,Skeleton:()=>c,SkeletonText:()=>u,Spinner:()=>l,default:()=>m});var n=r(95155),s=r(14051),i=r.n(s),a=r(31474);function l({size:e="md",className:t}){return(0,n.jsx)("span",{role:"status","aria-label":"Loading",className:(0,a.cn)("material-symbols-outlined animate-spin text-coral",{sm:"text-[16px]",md:"text-[24px]",lg:"text-[32px]",xl:"text-[48px]"}[e],t),children:"progress_activity"})}function o({message:e="Loading..."}){return(0,n.jsxs)("div",{className:"fixed inset-0 z-50 flex flex-col items-center justify-center bg-bg",children:[(0,n.jsx)(l,{size:"xl"}),(0,n.jsx)("p",{className:"mt-4 text-muted",children:e})]})}function c({className:e,...t}){return(0,n.jsx)("div",{"aria-hidden":"true",className:(0,a.cn)("animate-pulse rounded-[10px] bg-raised",e),...t})}function u({lines:e=3,className:t}){let r=Array.from({length:e},(e,t)=>t);return(0,n.jsx)("div",{className:(0,a.cn)("flex flex-col gap-2",t),"aria-hidden":"true",children:r.map(e=>(0,n.jsx)(c,{className:(0,a.cn)("h-3",e===r.length-1?"w-2/3":"w-full")},`line-${e}`))})}function d(){return(0,n.jsxs)("div",{className:"rounded-2xl border border-line bg-panel p-6 shadow-card",children:[(0,n.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,n.jsx)(c,{className:"h-4 w-24"}),(0,n.jsx)(c,{className:"size-10 rounded-[10px]"})]}),(0,n.jsx)(c,{className:"mb-2 h-8 w-16"}),(0,n.jsx)(c,{className:"h-3 w-20"})]})}function m({type:e="spinner",...t}){switch(e){case"page":return(0,n.jsx)(o,{...t});case"skeleton":return(0,n.jsx)(c,{...t});case"card":return(0,n.jsx)(d,{...t});default:return(0,n.jsx)(l,{...t})}}c.propTypes={className:i().string},u.propTypes={lines:i().number,className:i().string}},27693:(e,t,r)=>{"use strict";r.d(t,{MA:()=>s.MA,Q2:()=>s.Q2,UY:()=>n.UY,h0:()=>n.h0});var n=r(28745),s=r(88105);r(28777)},28067:(e,t,r)=>{"use strict";r.d(t,{default:()=>c});var n=r(95155),s=r(14051),i=r.n(s),a=r(12115),l=r(31474),o=r(4650);function c({options:e=[],value:t,onChange:r,size:s="md",className:i,"aria-label":u,"aria-labelledby":d,...m}){let p=(0,a.useRef)([]),f=e.findIndex(e=>e.value===t),x=f<0?0:f,h=o.Ec[s];if(!h)throw Error(`SegmentedControl: unknown size "${s}"`);return(0,n.jsx)("div",{...m,role:"radiogroup","aria-label":u,"aria-labelledby":d,className:(0,l.cn)("inline-flex items-center gap-0.5 rounded-lg border border-line bg-raised p-1 overflow-x-auto",i),children:e.map((t,s)=>(0,n.jsxs)("button",{ref:e=>{p.current[s]=e},type:"button",role:"radio","aria-checked":s===f,tabIndex:s===x?0:-1,onKeyDown:t=>((t,n)=>{if(!(0,o.JF)(t.key)||0===e.length)return;t.preventDefault();let s=(0,o.lZ)(n,t.key,{length:e.length,rtl:t.currentTarget.closest("[dir]")?.getAttribute("dir")==="rtl"});p.current[s]?.focus(),r?.(e[s].value)})(t,s),onClick:()=>r?.(t.value),className:(0,l.cn)("inline-flex shrink-0 items-center gap-1.5 rounded-md px-3 font-semibold transition-colors duration-200 focus-visible:shadow-focus motion-reduce:transition-none",h,s===f?"bg-text text-bg":"text-muted hover:text-text"),children:[t.icon&&(0,n.jsx)("span",{className:"material-symbols-outlined text-[16px]","aria-hidden":"true",children:t.icon}),t.label,null!=t.count&&(0,n.jsx)("span",{className:(0,l.cn)("font-mono",s===f?"text-bg/80":"text-muted"),children:t.count})]},t.value))})}c.propTypes={options:i().arrayOf(i().shape({value:i().oneOfType([i().string,i().number]).isRequired,label:i().node.isRequired,icon:i().string,count:i().oneOfType([i().string,i().number])})),value:i().oneOfType([i().string,i().number]),onChange:i().func,size:i().oneOf(Object.keys(o.Ec)),className:i().string,"aria-label":function(e,t,r){return e["aria-label"]||e["aria-labelledby"]?null:Error(`${r}: provide "aria-label" or "aria-labelledby".`)},"aria-labelledby":i().string}},28745:(e,t,r)=>{"use strict";r.d(t,{vQ:()=>i,UY:()=>c,Nu:()=>a,B2:()=>o,h0:()=>l});var n=r(4553),s=r(41463);let i={name:`${n.Hc.name} Proxy`,description:"AI infrastructure management",version:"1.0.3",build:{channel:s.env.NEXT_PUBLIC_BUILD_CHANNEL||"",sha:s.env.NEXT_PUBLIC_BUILD_SHA||""}},a={changelogUrl:"https://raw.githubusercontent.com/tokenhop/tokenhop/refs/heads/master/CHANGELOG.md"},l={appPort:20128},o={storageKey:"theme",defaultTheme:"dark"},c={maxLines:200,pollIntervalMs:1e3}},28777:(e,t,r)=>{"use strict";r.d(t,{CP:()=>s,KC:()=>n.KC,Xg:()=>n.Xg,bs:()=>i});var n=r(2378);Object.entries(r(88105).Q2).filter(([,e])=>e.passthroughModels).map(([e])=>e),Object.entries(n.vq).flatMap(([e,t])=>t.map(t=>({provider:e,model:t.id,name:t.name})));let s=(e,t=null)=>e?.kind||e?.type||t,i={vision:{icon:"visibility",label:"Vision",desc:"Supports image input",color:"text-blue-500"},reasoning:{icon:"neurology",label:"Reasoning",desc:"Supports reasoning / thinking",color:"text-amber-500"}}},35591:(e,t,r)=>{"use strict";r.d(t,{CA:()=>d,Fz:()=>g,Ob:()=>m,Wr:()=>l,cr:()=>b,e6:()=>u,eS:()=>p,s4:()=>o,se:()=>a,xJ:()=>c,z8:()=>h});let n=["Pages","Providers","Combos","Models","Actions","Settings"],s="signal.commandPalette.recents";function i(e){return String(e??"").toLowerCase().normalize("NFKD").replace(/[̀-ͯ]/g,"")}function a(e,t,r=[]){let s=new Map((r||[]).map((e,t)=>[e,t])),l=i(t).trim(),o=[];for(let t of e||[]){let e=function(e,t){let r=e,n=t;"string"==typeof t&&"string"!=typeof e&&e&&"object"==typeof e?(r=t,n=e):"object"==typeof e&&void 0===t&&(n=e,r="");let s=i(r).replace(/\s+/g,""),a=function(e){if("string"==typeof e)return i(e);let t=e||{};return i([t.label,t.hint,t.keywords,t.id].filter(Boolean).join(" "))}(n),l=i("string"==typeof n?n:n?.label);if(!s)return{matched:!0,score:0};if(!a)return{matched:!1,score:-1};if(l.startsWith(s))return{matched:!0,score:100-.01*l.length};let o=l.split(/[\s_/-]+/).find(e=>e.startsWith(s));if(o)return{matched:!0,score:70-.05*o.length};let c=0,u=-1;for(let e of s){let t=a.indexOf(e,u+1);if(-1===t)return{matched:!1,score:-1};c+=t-u-1,u=t}return{matched:!0,score:Math.max(1,40-c)}}(l,t);e.matched&&o.push({command:t,score:e.score})}return o.sort((e,t)=>{if(t.score!==e.score)return t.score-e.score;let r=s.has(e.command.id)?s.get(e.command.id):1/0,i=s.has(t.command.id)?s.get(t.command.id):1/0;if(r!==i)return r-i;let a=n.indexOf(e.command.group)-n.indexOf(t.command.group);return 0!==a?a:String(e.command.label).localeCompare(String(t.command.label))}),o.map(e=>e.command)}function l(e){let t=new Map;for(let r of e||[])t.has(r.group)||t.set(r.group,[]),t.get(r.group).push(r);return[...n.filter(e=>t.has(e)),...[...t.keys()].filter(e=>!n.includes(e))].map(e=>({group:e,count:t.get(e).length,items:t.get(e)}))}function o(e,t,r=8){return[t,...(e||[]).filter(e=>e!==t)].slice(0,r)}function c(e=function(){try{return window.localStorage}catch{return null}}()){try{let t=e?.getItem?.(s);if(!t)return[];let r=JSON.parse(t);return Array.isArray(r)?r.filter(e=>"string"==typeof e):[]}catch{return[]}}function u(e,t){try{e?.setItem?.(s,JSON.stringify(t||[]))}catch{}}function d(e){return!e||e<=0?"No matches":`${e} result${1===e?"":"s"}`}function m({key:e,metaKey:t=!1,ctrlKey:r=!1,defaultPrevented:n=!1,isComposing:s=!1,inEditable:i=!1,inCodeEditor:a=!1}={}){return!n&&!s&&!i&&!a&&"string"==typeof e&&"k"===e.toLowerCase()&&!!(t||r)}function p(e,{inCodeEditor:t=!1}={}){let r=e?.target,n=r?.isContentEditable===!0||/^(INPUT|TEXTAREA|SELECT)$/.test(r?.tagName||"")||r?.getAttribute?.("role")==="combobox";return{key:e?.key,metaKey:!!e?.metaKey,ctrlKey:!!e?.ctrlKey,defaultPrevented:!!e?.defaultPrevented,isComposing:e?.keyCode===229||!!e?.isComposing,inEditable:n,inCodeEditor:!!t}}let f=[],x=new Map;function h(e){f.includes(e)||f.push(e)}async function g(e={}){return(await Promise.allSettled([...f,...x.values()].map(t=>t(e)))).flatMap(e=>"fulfilled"===e.status&&e.value||[])}function b(e=3e5){let t=0,r=null;return async function(n){return Date.now()-t<e&&!r?"fresh":(r||(r=Promise.resolve().then(n).then(e=>(t=Date.now(),r=null,e),e=>{throw r=null,e})),r)}}},38794:(e,t,r)=>{"use strict";r.d(t,{default:()=>o});var n=r(95155),s=r(14051),i=r.n(s),a=r(12115),l=r(50770);function o({lines:e,label:t="Console output",className:r,live:s="off",onScroll:i,scrollRef:c,cursor:u=!1,row:d}){return(0,n.jsx)("div",{ref:c,role:"log","aria-label":t,"aria-live":s,dir:"ltr",onScroll:i,tabIndex:0,className:`signal-terminal custom-scrollbar m-0 overflow-auto rounded-2xl p-[18px_22px] text-start font-mono text-[13px] leading-[1.75] focus-visible:shadow-focus${r?` ${r}`:""}`,children:(0,n.jsxs)("ol",{className:"m-0 list-none p-0",children:[d?e.map((e,t)=>(0,n.jsx)(a.Fragment,{children:d(e,t)},e.key??e.id??`${e.time}-${t}`)):e.map((e,t)=>(0,n.jsxs)("li",{className:"flex gap-4 whitespace-nowrap",children:[(0,n.jsx)("span",{className:"signal-terminal-time shrink-0",children:e.time||"--:--:--"}),(0,n.jsx)("span",{className:`w-[52px] shrink-0 font-semibold ${(0,l.pN)(e.level)}`,children:e.level}),(0,n.jsx)("span",{className:"min-w-0 flex-1 whitespace-pre",children:e.message})]},e.id??`${e.time}-${t}`)),u&&(0,n.jsxs)("li",{className:"mt-0.5 flex gap-4 whitespace-nowrap","aria-hidden":"true",children:[(0,n.jsx)("span",{className:"signal-terminal-time shrink-0",children:"--:--:--"}),(0,n.jsx)("span",{className:"signal-terminal-cursor w-[52px] shrink-0 animate-pulse font-semibold",children:"▍"})]})]})})}o.propTypes={lines:i().arrayOf(i().shape({id:i().oneOfType([i().string,i().number]),time:i().string,level:i().oneOf(["LOG","INFO","WARN","ERROR","DEBUG"]).isRequired,message:i().string.isRequired})).isRequired,label:i().string,className:i().string,live:i().oneOf(["off","polite"]),onScroll:i().func,scrollRef:i().shape({current:i().object}),cursor:i().bool,row:i().func}},42266:(e,t,r)=>{"use strict";r.d(t,{default:()=>J});var n=r(95155),s=r(12115),i=r(98500),a=r.n(i),l=r(25086),o=r(56006),c=r(92542),u=r(99312),d=r(38794),m=r(19123),p=r(64371),f=r(28067),x=r(98542),h=r(65921),g=r(27693);let b=new Set(["LOG","INFO","WARN","ERROR","DEBUG"]),y=/^(?:\[(\d{1,2}:\d{2}(?::\d{2})?)\]\s*)?(?:\[([A-Za-z]+)\]\s*)?(.*)$/s,v=/^(?:\p{Extended_Pictographic}\uFE0F?\s*)+/u,w={"⚠️":"WARN","⚠":"WARN","❌":"ERROR","\uD83D\uDD0D":"DEBUG",ℹ️:"INFO",ℹ:"INFO"},N=/^\[browser\]\s*/,j=/\b\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:?\d{2})?\b/g,k=/\b\d{1,2}:\d{2}:\d{2}(?:\.\d+)?\b/g,C=/\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/gi,E=/\b(id|requestId|connectionId|traceId|sessionId)("?\s*[:=]\s*"?)[\w.-]+/gi;function R(e){for(let t=0;t<e.length;t+=1){let r;if("{"===e[t]||"["===e[t]){try{r=JSON.parse(e.slice(t))}catch{continue}if("object"==typeof r&&null!==r){let n=e.slice(0,t).trimEnd(),s=JSON.stringify(r,null,2);return n?`${n}
2
2
  ${s}`:s}}}return e}function A(e){return{...e,searchText:`${e.message}
3
3
  ${R(e.message)}`.toLowerCase()}}function L(e){if(!Number.isInteger(e)||e<1)throw Error(`retryDelayMs: expected a positive attempt, got ${e}`);return Math.min(3e4,1e3*2**(e-1))}let S={status:"connecting",attempt:0,retryInMs:0};function $(e,t){switch(t.type){case"connect":return{...e,status:"connecting",retryInMs:0};case"open":return{status:"open",attempt:0,retryInMs:0};case"error":{let t=e.attempt+1;return{status:"reconnecting",attempt:t,retryInMs:L(t)}}case"hidden":return{status:"idle",attempt:0,retryInMs:0};default:throw Error(`connectionReducer: unknown action "${t?.type}"`)}}function O(e){if("string"!=typeof e)throw Error(`parseConsoleLine: expected a string, got ${typeof e}`);let t=e.match(y),r=(t[2]||"").toUpperCase(),n=Object.keys(w).find(e=>t[3].startsWith(e)),s=b.has(r)?r:n?w[n]:"LOG",i=function(e){if("string"!=typeof e)throw Error("stripConsolePrefix: expected a string");return e.replace(v,"")}(b.has(r)?t[3]:`${t[2]?`[${t[2]}] `:""}${t[3]}`),a=N.test(i);return{time:t[1]||"",level:s,source:a?"browser":"server",message:a?i.replace(N,""):i,raw:e}}function T(e,t){if(!Array.isArray(e))throw Error("tagConsoleLines: expected an array of lines");if(!Number.isInteger(t)||t<0)throw Error(`tagConsoleLines: expected a non-negative startId, got ${t}`);return{lines:e.map((e,r)=>A({...e,id:t+r})),nextId:t+e.length}}function I(e,t,r){if(!Array.isArray(e)||!Array.isArray(t))throw Error("appendConsoleLines: expected arrays");if(!Number.isInteger(r)||r<=0)throw Error(`appendConsoleLines: expected a positive maxLines, got ${r}`);let n=[...e,...t];return n.length>r?n.slice(-r):n}function _(e,t){for(let r=Math.min(e.length,t.length);r>0;r-=1){let n=e.length-r,s=!0;for(let i=0;i<r&&s;i+=1)s=e[n+i].raw===t[i].raw;if(s)return r}return 0}let M={paused:!1,visible:[],pending:[],newCount:0,nextId:0};function q(e){if(!Number.isInteger(e.maxLines)||e.maxLines<=0)throw Error("pauseBufferReducer: resume/append needs a positive maxLines");return e.maxLines}function F(e,t){switch(t.type){case"pause":return{...e,paused:!0};case"resume":{let r=q(t),n=T(e.pending,e.nextId);return{...e,paused:!1,visible:I(e.visible,n.lines,r),pending:[],newCount:0,nextId:n.nextId}}case"append":{if(!Array.isArray(t.lines))throw Error("pauseBufferReducer: append needs lines");let r=q(t),n=T(t.lines,e.nextId);if(e.paused){let t=[...e.pending,...n.lines].slice(-r);return{...e,pending:t,newCount:t.length,nextId:n.nextId}}return{...e,visible:I(e.visible,n.lines,r),nextId:n.nextId}}case"snapshot":{if(!Array.isArray(t.lines))throw Error("pauseBufferReducer: snapshot needs lines");let r=q(t),n=t.lines.slice(-r),s=_([...e.visible,...e.pending],n);if(0===s){let t=T(n,e.nextId);if(e.paused){let n=I(e.pending,t.lines,r);return{...e,pending:n,newCount:n.length,nextId:t.nextId}}return{...e,visible:t.lines,nextId:t.nextId}}return F(e,{type:"append",lines:n.slice(s),maxLines:r})}case"clear":return{...e,visible:[],pending:[],newCount:0};default:throw Error(`pauseBufferReducer: unknown action "${t?.type}"`)}}let D={enabled:!0};function P(e,t){switch(t.type){case"scroll":{let r=!1!==t.atBottom;return r===e.enabled?e:{enabled:r}}case"toggle":return{enabled:!e.enabled};default:throw Error(`autoScrollReducer: unknown action "${t?.type}"`)}}var z=r(14051),B=r.n(z),U=r(50770),G=r(4650);function K({value:e,label:t}){let[r,i]=(0,s.useState)(null),a=(0,s.useRef)(null);(0,s.useEffect)(()=>()=>clearTimeout(a.current),[]);let l=async()=>{try{await (0,G.eM)(e),i("copied")}catch{i("error")}clearTimeout(a.current),a.current=setTimeout(()=>i(null),2e3)};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("button",{type:"button","aria-label":t,onClick:l,className:"inline-flex size-10 shrink-0 items-center justify-center rounded-md text-[var(--signal-terminal-time)] transition-colors hover:text-[var(--signal-terminal-text)] focus-visible:shadow-focus",children:(0,n.jsx)("span",{className:"material-symbols-outlined text-[18px]","aria-hidden":"true",children:"copied"===r?"check":"error"===r?"error":"content_copy"})}),(0,n.jsx)("span",{"aria-live":"polite",className:"sr-only",children:"copied"===r?"Copied":"error"===r?"Copy failed":""})]})}K.propTypes={value:B().string.isRequired,label:B().string.isRequired};let W=(0,s.memo)(function({row:e,index:t,raw:r,expanded:s,selected:i,onToggle:a,onSelect:l,onBlur:o}){let c=`console-row-${Array.from(e.key,e=>e.codePointAt(0).toString(16)).join("-")}`,u=e=>r?e.raw||e.message:R(e.message),d=e.occurrences.map(u).join("\n\n"),m=Math.max(0,e.count-16),p=m?[...e.occurrences.slice(0,8),...e.occurrences.slice(-8)]:e.occurrences,f=m?`${p.slice(0,8).map(u).join("\n\n")}
4
4