omniroute 1.6.3 → 1.6.5

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 (226) hide show
  1. package/README.ar.md +131 -178
  2. package/README.bg.md +132 -259
  3. package/README.da.md +132 -259
  4. package/README.de.md +85 -129
  5. package/README.es.md +89 -129
  6. package/README.fi.md +133 -260
  7. package/README.fr.md +87 -129
  8. package/README.he.md +132 -259
  9. package/README.hu.md +132 -259
  10. package/README.id.md +132 -259
  11. package/README.in.md +75 -140
  12. package/README.it.md +85 -129
  13. package/README.ja.md +132 -178
  14. package/README.ko.md +132 -259
  15. package/README.md +172 -286
  16. package/README.ms.md +132 -259
  17. package/README.nl.md +132 -259
  18. package/README.no.md +132 -259
  19. package/README.phi.md +133 -260
  20. package/README.pl.md +133 -260
  21. package/README.pt-BR.md +100 -129
  22. package/README.pt.md +135 -262
  23. package/README.ro.md +133 -260
  24. package/README.ru.md +85 -129
  25. package/README.sk.md +132 -259
  26. package/README.sv.md +132 -259
  27. package/README.th.md +132 -259
  28. package/README.uk-UA.md +132 -259
  29. package/README.vi.md +132 -259
  30. package/README.zh-CN.md +85 -129
  31. package/app/.next/BUILD_ID +1 -1
  32. package/app/.next/app-path-routes-manifest.json +30 -30
  33. package/app/.next/build-manifest.json +2 -2
  34. package/app/.next/prerender-manifest.json +3 -3
  35. package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
  36. package/app/.next/server/app/(dashboard)/dashboard/api-manager/page_client-reference-manifest.js +1 -1
  37. package/app/.next/server/app/(dashboard)/dashboard/audit-log/page_client-reference-manifest.js +1 -1
  38. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  39. package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  40. package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
  41. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  42. package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
  43. package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
  44. package/app/.next/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +1 -1
  45. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
  46. package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  47. package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  48. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  49. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  50. package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  51. package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
  52. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  53. package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  54. package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  55. package/app/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  56. package/app/.next/server/app/_global-error.html +2 -2
  57. package/app/.next/server/app/_global-error.rsc +1 -1
  58. package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  59. package/app/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  60. package/app/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  61. package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  62. package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  63. package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  64. package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  65. package/app/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  66. package/app/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  67. package/app/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  68. package/app/.next/server/app/api/cache/route.js +2 -2
  69. package/app/.next/server/app/api/cache/route_client-reference-manifest.js +1 -1
  70. package/app/.next/server/app/api/cache/stats/route.js +1 -1
  71. package/app/.next/server/app/api/cache/stats/route_client-reference-manifest.js +1 -1
  72. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  73. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +1 -1
  74. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js +2 -2
  75. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route_client-reference-manifest.js +1 -1
  76. package/app/.next/server/app/api/cli-tools/backups/route.js +1 -1
  77. package/app/.next/server/app/api/cli-tools/backups/route_client-reference-manifest.js +1 -1
  78. package/app/.next/server/app/api/cli-tools/claude-settings/route.js +2 -2
  79. package/app/.next/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
  80. package/app/.next/server/app/api/cli-tools/cline-settings/route.js +1 -1
  81. package/app/.next/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.js +1 -1
  82. package/app/.next/server/app/api/cli-tools/codex-profiles/route.js +2 -2
  83. package/app/.next/server/app/api/cli-tools/codex-profiles/route_client-reference-manifest.js +1 -1
  84. package/app/.next/server/app/api/cli-tools/codex-settings/route.js +2 -2
  85. package/app/.next/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
  86. package/app/.next/server/app/api/cli-tools/droid-settings/route.js +2 -2
  87. package/app/.next/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
  88. package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route_client-reference-manifest.js +1 -1
  89. package/app/.next/server/app/api/cli-tools/kilo-settings/route.js +1 -1
  90. package/app/.next/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -1
  91. package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  92. package/app/.next/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
  93. package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route.js +2 -2
  94. package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route_client-reference-manifest.js +1 -1
  95. package/app/.next/server/app/api/cli-tools/status/route.js +1 -1
  96. package/app/.next/server/app/api/cli-tools/status/route_client-reference-manifest.js +1 -1
  97. package/app/.next/server/app/api/cloud/auth/route_client-reference-manifest.js +1 -1
  98. package/app/.next/server/app/api/cloud/credentials/update/route_client-reference-manifest.js +1 -1
  99. package/app/.next/server/app/api/cloud/model/resolve/route_client-reference-manifest.js +1 -1
  100. package/app/.next/server/app/api/cloud/models/alias/route_client-reference-manifest.js +1 -1
  101. package/app/.next/server/app/api/combos/[id]/route_client-reference-manifest.js +1 -1
  102. package/app/.next/server/app/api/combos/metrics/route_client-reference-manifest.js +1 -1
  103. package/app/.next/server/app/api/combos/route_client-reference-manifest.js +1 -1
  104. package/app/.next/server/app/api/combos/test/route_client-reference-manifest.js +1 -1
  105. package/app/.next/server/app/api/compliance/audit-log/route_client-reference-manifest.js +1 -1
  106. package/app/.next/server/app/api/db-backups/export/route_client-reference-manifest.js +1 -1
  107. package/app/.next/server/app/api/db-backups/exportAll/route_client-reference-manifest.js +1 -1
  108. package/app/.next/server/app/api/db-backups/import/route_client-reference-manifest.js +1 -1
  109. package/app/.next/server/app/api/db-backups/route_client-reference-manifest.js +1 -1
  110. package/app/.next/server/app/api/evals/[suiteId]/route_client-reference-manifest.js +1 -1
  111. package/app/.next/server/app/api/evals/route_client-reference-manifest.js +1 -1
  112. package/app/.next/server/app/api/fallback/chains/route_client-reference-manifest.js +1 -1
  113. package/app/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
  114. package/app/.next/server/app/api/keys/[id]/route_client-reference-manifest.js +1 -1
  115. package/app/.next/server/app/api/keys/route_client-reference-manifest.js +1 -1
  116. package/app/.next/server/app/api/logs/console/route_client-reference-manifest.js +1 -1
  117. package/app/.next/server/app/api/models/alias/route_client-reference-manifest.js +1 -1
  118. package/app/.next/server/app/api/models/availability/route_client-reference-manifest.js +1 -1
  119. package/app/.next/server/app/api/models/catalog/route_client-reference-manifest.js +1 -1
  120. package/app/.next/server/app/api/models/route.js +1 -1
  121. package/app/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
  122. package/app/.next/server/app/api/monitoring/health/route.js +1 -1
  123. package/app/.next/server/app/api/monitoring/health/route_client-reference-manifest.js +1 -1
  124. package/app/.next/server/app/api/oauth/[provider]/[action]/route_client-reference-manifest.js +1 -1
  125. package/app/.next/server/app/api/oauth/cursor/auto-import/route_client-reference-manifest.js +1 -1
  126. package/app/.next/server/app/api/oauth/cursor/import/route_client-reference-manifest.js +1 -1
  127. package/app/.next/server/app/api/oauth/kiro/auto-import/route_client-reference-manifest.js +1 -1
  128. package/app/.next/server/app/api/oauth/kiro/import/route_client-reference-manifest.js +1 -1
  129. package/app/.next/server/app/api/oauth/kiro/social-authorize/route_client-reference-manifest.js +1 -1
  130. package/app/.next/server/app/api/oauth/kiro/social-exchange/route_client-reference-manifest.js +1 -1
  131. package/app/.next/server/app/api/policies/route_client-reference-manifest.js +1 -1
  132. package/app/.next/server/app/api/pricing/defaults/route_client-reference-manifest.js +1 -1
  133. package/app/.next/server/app/api/pricing/models/route_client-reference-manifest.js +1 -1
  134. package/app/.next/server/app/api/pricing/route_client-reference-manifest.js +1 -1
  135. package/app/.next/server/app/api/provider-metrics/route_client-reference-manifest.js +1 -1
  136. package/app/.next/server/app/api/provider-models/route_client-reference-manifest.js +1 -1
  137. package/app/.next/server/app/api/provider-nodes/[id]/route_client-reference-manifest.js +1 -1
  138. package/app/.next/server/app/api/provider-nodes/route_client-reference-manifest.js +1 -1
  139. package/app/.next/server/app/api/provider-nodes/validate/route_client-reference-manifest.js +1 -1
  140. package/app/.next/server/app/api/providers/[id]/models/route_client-reference-manifest.js +1 -1
  141. package/app/.next/server/app/api/providers/[id]/route_client-reference-manifest.js +1 -1
  142. package/app/.next/server/app/api/providers/[id]/test/route_client-reference-manifest.js +1 -1
  143. package/app/.next/server/app/api/providers/client/route_client-reference-manifest.js +1 -1
  144. package/app/.next/server/app/api/providers/route.js +1 -1
  145. package/app/.next/server/app/api/providers/route_client-reference-manifest.js +1 -1
  146. package/app/.next/server/app/api/providers/test-batch/route_client-reference-manifest.js +1 -1
  147. package/app/.next/server/app/api/providers/validate/route_client-reference-manifest.js +1 -1
  148. package/app/.next/server/app/api/rate-limit/route_client-reference-manifest.js +1 -1
  149. package/app/.next/server/app/api/rate-limits/route_client-reference-manifest.js +1 -1
  150. package/app/.next/server/app/api/resilience/reset/route_client-reference-manifest.js +1 -1
  151. package/app/.next/server/app/api/resilience/route_client-reference-manifest.js +1 -1
  152. package/app/.next/server/app/api/restart/route_client-reference-manifest.js +1 -1
  153. package/app/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
  154. package/app/.next/server/app/api/settings/combo-defaults/route_client-reference-manifest.js +1 -1
  155. package/app/.next/server/app/api/settings/ip-filter/route_client-reference-manifest.js +1 -1
  156. package/app/.next/server/app/api/settings/proxy/route_client-reference-manifest.js +1 -1
  157. package/app/.next/server/app/api/settings/proxy/test/route_client-reference-manifest.js +1 -1
  158. package/app/.next/server/app/api/settings/require-login/route_client-reference-manifest.js +1 -1
  159. package/app/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
  160. package/app/.next/server/app/api/settings/system-prompt/route_client-reference-manifest.js +1 -1
  161. package/app/.next/server/app/api/settings/thinking-budget/route_client-reference-manifest.js +1 -1
  162. package/app/.next/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
  163. package/app/.next/server/app/api/storage/health/route_client-reference-manifest.js +1 -1
  164. package/app/.next/server/app/api/sync/cloud/route_client-reference-manifest.js +1 -1
  165. package/app/.next/server/app/api/sync/initialize/route_client-reference-manifest.js +1 -1
  166. package/app/.next/server/app/api/tags/route_client-reference-manifest.js +1 -1
  167. package/app/.next/server/app/api/telemetry/summary/route_client-reference-manifest.js +1 -1
  168. package/app/.next/server/app/api/token-health/route_client-reference-manifest.js +1 -1
  169. package/app/.next/server/app/api/translator/detect/route_client-reference-manifest.js +1 -1
  170. package/app/.next/server/app/api/translator/history/route_client-reference-manifest.js +1 -1
  171. package/app/.next/server/app/api/translator/load/route_client-reference-manifest.js +1 -1
  172. package/app/.next/server/app/api/translator/save/route_client-reference-manifest.js +1 -1
  173. package/app/.next/server/app/api/translator/send/route_client-reference-manifest.js +1 -1
  174. package/app/.next/server/app/api/translator/translate/route_client-reference-manifest.js +1 -1
  175. package/app/.next/server/app/api/usage/[connectionId]/route_client-reference-manifest.js +1 -1
  176. package/app/.next/server/app/api/usage/analytics/route_client-reference-manifest.js +1 -1
  177. package/app/.next/server/app/api/usage/budget/route_client-reference-manifest.js +1 -1
  178. package/app/.next/server/app/api/usage/call-logs/[id]/route_client-reference-manifest.js +1 -1
  179. package/app/.next/server/app/api/usage/call-logs/route_client-reference-manifest.js +1 -1
  180. package/app/.next/server/app/api/usage/history/route_client-reference-manifest.js +1 -1
  181. package/app/.next/server/app/api/usage/logs/route_client-reference-manifest.js +1 -1
  182. package/app/.next/server/app/api/usage/proxy-logs/route.js +3 -3
  183. package/app/.next/server/app/api/usage/proxy-logs/route_client-reference-manifest.js +1 -1
  184. package/app/.next/server/app/api/usage/request-logs/route_client-reference-manifest.js +1 -1
  185. package/app/.next/server/app/api/v1/api/chat/route_client-reference-manifest.js +1 -1
  186. package/app/.next/server/app/api/v1/audio/speech/route_client-reference-manifest.js +1 -1
  187. package/app/.next/server/app/api/v1/audio/transcriptions/route_client-reference-manifest.js +1 -1
  188. package/app/.next/server/app/api/v1/chat/completions/route_client-reference-manifest.js +1 -1
  189. package/app/.next/server/app/api/v1/embeddings/route_client-reference-manifest.js +1 -1
  190. package/app/.next/server/app/api/v1/images/generations/route_client-reference-manifest.js +1 -1
  191. package/app/.next/server/app/api/v1/messages/count_tokens/route_client-reference-manifest.js +1 -1
  192. package/app/.next/server/app/api/v1/messages/route_client-reference-manifest.js +1 -1
  193. package/app/.next/server/app/api/v1/models/route_client-reference-manifest.js +1 -1
  194. package/app/.next/server/app/api/v1/moderations/route_client-reference-manifest.js +1 -1
  195. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route_client-reference-manifest.js +1 -1
  196. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route_client-reference-manifest.js +1 -1
  197. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route_client-reference-manifest.js +1 -1
  198. package/app/.next/server/app/api/v1/rerank/route_client-reference-manifest.js +1 -1
  199. package/app/.next/server/app/api/v1/responses/route_client-reference-manifest.js +1 -1
  200. package/app/.next/server/app/api/v1/route_client-reference-manifest.js +1 -1
  201. package/app/.next/server/app/api/v1beta/models/[...path]/route_client-reference-manifest.js +1 -1
  202. package/app/.next/server/app/api/v1beta/models/route_client-reference-manifest.js +1 -1
  203. package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
  204. package/app/.next/server/app/docs/page.js +1 -1
  205. package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  206. package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
  207. package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
  208. package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
  209. package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
  210. package/app/.next/server/app/page_client-reference-manifest.js +1 -1
  211. package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
  212. package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
  213. package/app/.next/server/app-paths-manifest.json +30 -30
  214. package/app/.next/server/chunks/2767.js +11 -11
  215. package/app/.next/server/chunks/5393.js +1 -1
  216. package/app/.next/server/chunks/7109.js +3 -3
  217. package/app/.next/server/chunks/7230.js +5 -5
  218. package/app/.next/server/pages/500.html +2 -2
  219. package/app/.next/server/server-reference-manifest.js +1 -1
  220. package/app/.next/server/server-reference-manifest.json +1 -1
  221. package/app/.next/static/chunks/{5846-8360aca41de8628b.js → 5846-79cfb6380345004d.js} +1 -1
  222. package/app/package.json +10 -2
  223. package/bin/omniroute.mjs +71 -7
  224. package/package.json +10 -2
  225. /package/app/.next/static/{iqSCUTEzH78lajJjqTmE_ → 3vFcTa-1x8yNMMbXwOlmb}/_buildManifest.js +0 -0
  226. /package/app/.next/static/{iqSCUTEzH78lajJjqTmE_ → 3vFcTa-1x8yNMMbXwOlmb}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- self.__RSC_SERVER_MANIFEST="{\"node\":{\"40d97e64ed2d80513487e4d7f1e653e36b2cce212e\":{\"workers\":{\"app/api/cli-tools/antigravity-mitm/alias/route\":{\"moduleId\":\"78547\",\"async\":false}},\"layer\":{\"app/api/cli-tools/antigravity-mitm/alias/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/antigravity-mitm/alias/route.ts\",\"exportedName\":\"GET\"},\"40dbe3d296359e6f8a5e0e40d8d52a84d1c9301c08\":{\"workers\":{\"app/api/cli-tools/antigravity-mitm/alias/route\":{\"moduleId\":\"78547\",\"async\":false}},\"layer\":{\"app/api/cli-tools/antigravity-mitm/alias/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/antigravity-mitm/alias/route.ts\",\"exportedName\":\"PUT\"},\"400101a688a18fa03d2df5509b702f073ba6de7f9c\":{\"workers\":{\"app/api/cli-tools/backups/route\":{\"moduleId\":\"26695\",\"async\":false}},\"layer\":{\"app/api/cli-tools/backups/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/backups/route.ts\",\"exportedName\":\"DELETE\"},\"40879e86ed5688d3ab771e9e894960ff8d2dca5e8f\":{\"workers\":{\"app/api/cli-tools/backups/route\":{\"moduleId\":\"26695\",\"async\":false}},\"layer\":{\"app/api/cli-tools/backups/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/backups/route.ts\",\"exportedName\":\"POST\"},\"408b83ae557d3eab68420bc0f7ba986b1543d7d4ad\":{\"workers\":{\"app/api/cli-tools/backups/route\":{\"moduleId\":\"26695\",\"async\":false}},\"layer\":{\"app/api/cli-tools/backups/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/backups/route.ts\",\"exportedName\":\"GET\"},\"0090452ae531cfdcea7e55795cdde875c7f8775159\":{\"workers\":{\"app/api/cli-tools/codex-profiles/route\":{\"moduleId\":\"24383\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-profiles/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-profiles/route.ts\",\"exportedName\":\"GET\"},\"4016b2307e433356baf156a5898d0d2d37a928fa11\":{\"workers\":{\"app/api/cli-tools/codex-profiles/route\":{\"moduleId\":\"24383\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-profiles/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-profiles/route.ts\",\"exportedName\":\"PUT\"},\"401c29ca7966168ffb45b9fff6917dfb6a6417d6f2\":{\"workers\":{\"app/api/cli-tools/codex-profiles/route\":{\"moduleId\":\"24383\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-profiles/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-profiles/route.ts\",\"exportedName\":\"DELETE\"},\"40ad95baef6a8e8cbace1cfb27eff30c98c517ccb1\":{\"workers\":{\"app/api/cli-tools/codex-profiles/route\":{\"moduleId\":\"24383\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-profiles/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-profiles/route.ts\",\"exportedName\":\"POST\"},\"004d45802c51dea22712f4b7a40e5774e7d870057f\":{\"workers\":{\"app/api/cli-tools/antigravity-mitm/route\":{\"moduleId\":\"75377\",\"async\":false}},\"layer\":{\"app/api/cli-tools/antigravity-mitm/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/antigravity-mitm/route.ts\",\"exportedName\":\"GET\"},\"40956269e0cad311f76cd0b223f893ddd7f3a56c5d\":{\"workers\":{\"app/api/cli-tools/antigravity-mitm/route\":{\"moduleId\":\"75377\",\"async\":false}},\"layer\":{\"app/api/cli-tools/antigravity-mitm/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/antigravity-mitm/route.ts\",\"exportedName\":\"POST\"},\"40d8425bb7aa8eab2cc124b679a76c0d8b90ce1336\":{\"workers\":{\"app/api/cli-tools/antigravity-mitm/route\":{\"moduleId\":\"75377\",\"async\":false}},\"layer\":{\"app/api/cli-tools/antigravity-mitm/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/antigravity-mitm/route.ts\",\"exportedName\":\"DELETE\"},\"0011d491cb14f8d4015a93c5cce858e2d2471bb54d\":{\"workers\":{\"app/api/cli-tools/claude-settings/route\":{\"moduleId\":\"72405\",\"async\":false}},\"layer\":{\"app/api/cli-tools/claude-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/claude-settings/route.ts\",\"exportedName\":\"GET\"},\"009200c9b71a507b608beee9d620875ffd8a281323\":{\"workers\":{\"app/api/cli-tools/claude-settings/route\":{\"moduleId\":\"72405\",\"async\":false}},\"layer\":{\"app/api/cli-tools/claude-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/claude-settings/route.ts\",\"exportedName\":\"DELETE\"},\"40d30cb3e7bb6076931154486eafd1fb3f357a6c99\":{\"workers\":{\"app/api/cli-tools/claude-settings/route\":{\"moduleId\":\"72405\",\"async\":false}},\"layer\":{\"app/api/cli-tools/claude-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/claude-settings/route.ts\",\"exportedName\":\"POST\"},\"0086b0de051f65dc041f7760c0ee89fb3ed26d95fa\":{\"workers\":{\"app/api/cli-tools/cline-settings/route\":{\"moduleId\":\"31635\",\"async\":false}},\"layer\":{\"app/api/cli-tools/cline-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/cline-settings/route.ts\",\"exportedName\":\"DELETE\"},\"00ee59f021d35c85d1a4fec5e835598515dfcf1575\":{\"workers\":{\"app/api/cli-tools/cline-settings/route\":{\"moduleId\":\"31635\",\"async\":false}},\"layer\":{\"app/api/cli-tools/cline-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/cline-settings/route.ts\",\"exportedName\":\"GET\"},\"403195271c9b54e084eba3f0ee1347f4aa1d3d9785\":{\"workers\":{\"app/api/cli-tools/cline-settings/route\":{\"moduleId\":\"31635\",\"async\":false}},\"layer\":{\"app/api/cli-tools/cline-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/cline-settings/route.ts\",\"exportedName\":\"POST\"},\"00ac557bc9f02451d700cb8865826d30b40e6cdb5e\":{\"workers\":{\"app/api/cli-tools/droid-settings/route\":{\"moduleId\":\"51780\",\"async\":false}},\"layer\":{\"app/api/cli-tools/droid-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/droid-settings/route.ts\",\"exportedName\":\"GET\"},\"00b066900d0987d5f19d1c6db02e1868c5efbf114d\":{\"workers\":{\"app/api/cli-tools/droid-settings/route\":{\"moduleId\":\"51780\",\"async\":false}},\"layer\":{\"app/api/cli-tools/droid-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/droid-settings/route.ts\",\"exportedName\":\"DELETE\"},\"4072c6269c0f6fc7670c8a2083d1e24ba5b46692fa\":{\"workers\":{\"app/api/cli-tools/droid-settings/route\":{\"moduleId\":\"51780\",\"async\":false}},\"layer\":{\"app/api/cli-tools/droid-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/droid-settings/route.ts\",\"exportedName\":\"POST\"},\"000d548ddad3ffad04accde896d90c0eec5d8e2d18\":{\"workers\":{\"app/api/cli-tools/codex-settings/route\":{\"moduleId\":\"50889\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-settings/route.ts\",\"exportedName\":\"DELETE\"},\"006381db2277fcb572815614baf2b995fff8bb3fd6\":{\"workers\":{\"app/api/cli-tools/codex-settings/route\":{\"moduleId\":\"50889\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-settings/route.ts\",\"exportedName\":\"GET\"},\"40d3359d3efa574db807f2e639dc4f5756be8e4851\":{\"workers\":{\"app/api/cli-tools/codex-settings/route\":{\"moduleId\":\"50889\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-settings/route.ts\",\"exportedName\":\"POST\"},\"0009f779040edce58cf793783fcccee4890aaac904\":{\"workers\":{\"app/api/cli-tools/openclaw-settings/route\":{\"moduleId\":\"26462\",\"async\":false}},\"layer\":{\"app/api/cli-tools/openclaw-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/openclaw-settings/route.ts\",\"exportedName\":\"DELETE\"},\"00585ae8ae9f17c3603309a0561601e96e3a9076d0\":{\"workers\":{\"app/api/cli-tools/openclaw-settings/route\":{\"moduleId\":\"26462\",\"async\":false}},\"layer\":{\"app/api/cli-tools/openclaw-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/openclaw-settings/route.ts\",\"exportedName\":\"GET\"},\"4021f1ec314061f8e2f9d1852ca735a6d5d7a96b9d\":{\"workers\":{\"app/api/cli-tools/openclaw-settings/route\":{\"moduleId\":\"26462\",\"async\":false}},\"layer\":{\"app/api/cli-tools/openclaw-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/openclaw-settings/route.ts\",\"exportedName\":\"POST\"},\"00cca187ebf0a01ceb095a319f06e543774e679a10\":{\"workers\":{\"app/api/cli-tools/status/route\":{\"moduleId\":\"60327\",\"async\":false}},\"layer\":{\"app/api/cli-tools/status/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/status/route.ts\",\"exportedName\":\"GET\"},\"60c60f7cee1f8b04063d4b9bec5c958055a70c1f39\":{\"workers\":{\"app/api/cli-tools/runtime/[toolId]/route\":{\"moduleId\":\"97709\",\"async\":false}},\"layer\":{\"app/api/cli-tools/runtime/[toolId]/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/runtime/[toolId]/route.ts\",\"exportedName\":\"GET\"},\"006e8b9b630cf645bf966c4e6acc2932138cf957e1\":{\"workers\":{\"app/api/cli-tools/kilo-settings/route\":{\"moduleId\":\"81235\",\"async\":false}},\"layer\":{\"app/api/cli-tools/kilo-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/kilo-settings/route.ts\",\"exportedName\":\"DELETE\"},\"00ec221e6ed3e9f9c31d0964ba189253d9bac32847\":{\"workers\":{\"app/api/cli-tools/kilo-settings/route\":{\"moduleId\":\"81235\",\"async\":false}},\"layer\":{\"app/api/cli-tools/kilo-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/kilo-settings/route.ts\",\"exportedName\":\"GET\"},\"40e6f92a99d5502a841b834b4780c51ab18322544e\":{\"workers\":{\"app/api/cli-tools/kilo-settings/route\":{\"moduleId\":\"81235\",\"async\":false}},\"layer\":{\"app/api/cli-tools/kilo-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/kilo-settings/route.ts\",\"exportedName\":\"POST\"}},\"edge\":{},\"encryptionKey\":\"process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY\"}"
1
+ self.__RSC_SERVER_MANIFEST="{\"node\":{\"404240b0e406fa13c971b5aee68eba33e053bf25d4\":{\"workers\":{\"app/api/cli-tools/antigravity-mitm/alias/route\":{\"moduleId\":\"50375\",\"async\":false}},\"layer\":{\"app/api/cli-tools/antigravity-mitm/alias/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/antigravity-mitm/alias/route.ts\",\"exportedName\":\"PUT\"},\"40eac35e228c7c06f3a4a962408b9f4efe71619084\":{\"workers\":{\"app/api/cli-tools/antigravity-mitm/alias/route\":{\"moduleId\":\"50375\",\"async\":false}},\"layer\":{\"app/api/cli-tools/antigravity-mitm/alias/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/antigravity-mitm/alias/route.ts\",\"exportedName\":\"GET\"},\"4027caff174990af753e9c20ea4cee71de1af5e5cd\":{\"workers\":{\"app/api/cli-tools/backups/route\":{\"moduleId\":\"93923\",\"async\":false}},\"layer\":{\"app/api/cli-tools/backups/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/backups/route.ts\",\"exportedName\":\"POST\"},\"40c80352c95087747df0b6ac6647d0b2a7c1ffe344\":{\"workers\":{\"app/api/cli-tools/backups/route\":{\"moduleId\":\"93923\",\"async\":false}},\"layer\":{\"app/api/cli-tools/backups/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/backups/route.ts\",\"exportedName\":\"GET\"},\"40ffe0a9ee707a43ec6274bdc510d451002adb89a9\":{\"workers\":{\"app/api/cli-tools/backups/route\":{\"moduleId\":\"93923\",\"async\":false}},\"layer\":{\"app/api/cli-tools/backups/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/backups/route.ts\",\"exportedName\":\"DELETE\"},\"00c311dad01886b12f340a1a563fcd0ffee0a2db9c\":{\"workers\":{\"app/api/cli-tools/codex-profiles/route\":{\"moduleId\":\"64351\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-profiles/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-profiles/route.ts\",\"exportedName\":\"GET\"},\"404a49d8c81a5c495f5af108d23d2094ccc1779c04\":{\"workers\":{\"app/api/cli-tools/codex-profiles/route\":{\"moduleId\":\"64351\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-profiles/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-profiles/route.ts\",\"exportedName\":\"POST\"},\"4068f14461d0d295d81364257cb78118a17683cdd9\":{\"workers\":{\"app/api/cli-tools/codex-profiles/route\":{\"moduleId\":\"64351\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-profiles/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-profiles/route.ts\",\"exportedName\":\"DELETE\"},\"40d3b9a825b4957770f96e8df89ee9f0449de04dc7\":{\"workers\":{\"app/api/cli-tools/codex-profiles/route\":{\"moduleId\":\"64351\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-profiles/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-profiles/route.ts\",\"exportedName\":\"PUT\"},\"0095747ffa644dc53a60cd1028058f73d67900392e\":{\"workers\":{\"app/api/cli-tools/antigravity-mitm/route\":{\"moduleId\":\"76239\",\"async\":false}},\"layer\":{\"app/api/cli-tools/antigravity-mitm/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/antigravity-mitm/route.ts\",\"exportedName\":\"GET\"},\"4077ae42ca1f93ff6f63fe8f06c0d9c4a91f3bccec\":{\"workers\":{\"app/api/cli-tools/antigravity-mitm/route\":{\"moduleId\":\"76239\",\"async\":false}},\"layer\":{\"app/api/cli-tools/antigravity-mitm/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/antigravity-mitm/route.ts\",\"exportedName\":\"DELETE\"},\"40fcb07dd6e13e0f0004debbfe50aa7fdcdd1f15b0\":{\"workers\":{\"app/api/cli-tools/antigravity-mitm/route\":{\"moduleId\":\"76239\",\"async\":false}},\"layer\":{\"app/api/cli-tools/antigravity-mitm/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/antigravity-mitm/route.ts\",\"exportedName\":\"POST\"},\"0003ed09bc2ccb53830538842b4bb942f9be9f8d5d\":{\"workers\":{\"app/api/cli-tools/claude-settings/route\":{\"moduleId\":\"18088\",\"async\":false}},\"layer\":{\"app/api/cli-tools/claude-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/claude-settings/route.ts\",\"exportedName\":\"GET\"},\"0022cbb024e9423107213affeb4061d01f4eedc5a6\":{\"workers\":{\"app/api/cli-tools/claude-settings/route\":{\"moduleId\":\"18088\",\"async\":false}},\"layer\":{\"app/api/cli-tools/claude-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/claude-settings/route.ts\",\"exportedName\":\"DELETE\"},\"4098ef9092f522de6e89c7b2e83eae093e45cc0e9b\":{\"workers\":{\"app/api/cli-tools/claude-settings/route\":{\"moduleId\":\"18088\",\"async\":false}},\"layer\":{\"app/api/cli-tools/claude-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/claude-settings/route.ts\",\"exportedName\":\"POST\"},\"0017a15eb94531837aa2e2ea1c1f1d3375b3d96d24\":{\"workers\":{\"app/api/cli-tools/cline-settings/route\":{\"moduleId\":\"92099\",\"async\":false}},\"layer\":{\"app/api/cli-tools/cline-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/cline-settings/route.ts\",\"exportedName\":\"GET\"},\"00cffaa5d45eeb9238fd40329172971e87caad4de3\":{\"workers\":{\"app/api/cli-tools/cline-settings/route\":{\"moduleId\":\"92099\",\"async\":false}},\"layer\":{\"app/api/cli-tools/cline-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/cline-settings/route.ts\",\"exportedName\":\"DELETE\"},\"40069fa7c68368db38d8538aa0e3199fa8f3e82f92\":{\"workers\":{\"app/api/cli-tools/cline-settings/route\":{\"moduleId\":\"92099\",\"async\":false}},\"layer\":{\"app/api/cli-tools/cline-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/cline-settings/route.ts\",\"exportedName\":\"POST\"},\"004cd37ee98cf6cbf94092a234032e21204dbcfe14\":{\"workers\":{\"app/api/cli-tools/droid-settings/route\":{\"moduleId\":\"24404\",\"async\":false}},\"layer\":{\"app/api/cli-tools/droid-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/droid-settings/route.ts\",\"exportedName\":\"DELETE\"},\"0071a87042d2a6043dcc645e6df594596366b5266b\":{\"workers\":{\"app/api/cli-tools/droid-settings/route\":{\"moduleId\":\"24404\",\"async\":false}},\"layer\":{\"app/api/cli-tools/droid-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/droid-settings/route.ts\",\"exportedName\":\"GET\"},\"40e7a36e8445a1deb7541555076cffdbfffae16ecd\":{\"workers\":{\"app/api/cli-tools/droid-settings/route\":{\"moduleId\":\"24404\",\"async\":false}},\"layer\":{\"app/api/cli-tools/droid-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/droid-settings/route.ts\",\"exportedName\":\"POST\"},\"00b294e81308172bb951d6403f7a4325c476307481\":{\"workers\":{\"app/api/cli-tools/codex-settings/route\":{\"moduleId\":\"2265\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-settings/route.ts\",\"exportedName\":\"DELETE\"},\"00dd77805e2ed13bd1ebda806fbab92f38fdd44301\":{\"workers\":{\"app/api/cli-tools/codex-settings/route\":{\"moduleId\":\"2265\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-settings/route.ts\",\"exportedName\":\"GET\"},\"409788410e2cb77db161d086154f730127e265a4b9\":{\"workers\":{\"app/api/cli-tools/codex-settings/route\":{\"moduleId\":\"2265\",\"async\":false}},\"layer\":{\"app/api/cli-tools/codex-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/codex-settings/route.ts\",\"exportedName\":\"POST\"},\"6069a562e58db8d27d1b7b8d0cf3cba6cdbfe5258c\":{\"workers\":{\"app/api/cli-tools/runtime/[toolId]/route\":{\"moduleId\":\"99884\",\"async\":false}},\"layer\":{\"app/api/cli-tools/runtime/[toolId]/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/runtime/[toolId]/route.ts\",\"exportedName\":\"GET\"},\"003c41f3e092dda48019b51e3ceb6f2149564fe18e\":{\"workers\":{\"app/api/cli-tools/kilo-settings/route\":{\"moduleId\":\"92768\",\"async\":false}},\"layer\":{\"app/api/cli-tools/kilo-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/kilo-settings/route.ts\",\"exportedName\":\"GET\"},\"00b1bfe78b5502afa17c3cf14c8919a7deea81969d\":{\"workers\":{\"app/api/cli-tools/kilo-settings/route\":{\"moduleId\":\"92768\",\"async\":false}},\"layer\":{\"app/api/cli-tools/kilo-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/kilo-settings/route.ts\",\"exportedName\":\"DELETE\"},\"40e9aa915a5366962eb732d69aec6073ef01ded76f\":{\"workers\":{\"app/api/cli-tools/kilo-settings/route\":{\"moduleId\":\"92768\",\"async\":false}},\"layer\":{\"app/api/cli-tools/kilo-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/kilo-settings/route.ts\",\"exportedName\":\"POST\"},\"0022ac156f742a900f792c6b3d0a3a67325980af84\":{\"workers\":{\"app/api/cli-tools/openclaw-settings/route\":{\"moduleId\":\"16410\",\"async\":false}},\"layer\":{\"app/api/cli-tools/openclaw-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/openclaw-settings/route.ts\",\"exportedName\":\"GET\"},\"0058af7d54282e08e36b792aae566e6f4f10e50d7d\":{\"workers\":{\"app/api/cli-tools/openclaw-settings/route\":{\"moduleId\":\"16410\",\"async\":false}},\"layer\":{\"app/api/cli-tools/openclaw-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/openclaw-settings/route.ts\",\"exportedName\":\"DELETE\"},\"40cab2e6d9c7fbe3f6bc453a0b5acd660a5c2a7b5d\":{\"workers\":{\"app/api/cli-tools/openclaw-settings/route\":{\"moduleId\":\"16410\",\"async\":false}},\"layer\":{\"app/api/cli-tools/openclaw-settings/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/openclaw-settings/route.ts\",\"exportedName\":\"POST\"},\"0084ba97622605ce26cc75c9ad637774bb52e98cf3\":{\"workers\":{\"app/api/cli-tools/status/route\":{\"moduleId\":\"26059\",\"async\":false}},\"layer\":{\"app/api/cli-tools/status/route\":\"rsc\"},\"filename\":\"app/api/cli-tools/status/route.ts\",\"exportedName\":\"GET\"}},\"edge\":{},\"encryptionKey\":\"process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY\"}"
@@ -1 +1 @@
1
- {"node":{"40d97e64ed2d80513487e4d7f1e653e36b2cce212e":{"workers":{"app/api/cli-tools/antigravity-mitm/alias/route":{"moduleId":"78547","async":false}},"layer":{"app/api/cli-tools/antigravity-mitm/alias/route":"rsc"},"filename":"app/api/cli-tools/antigravity-mitm/alias/route.ts","exportedName":"GET"},"40dbe3d296359e6f8a5e0e40d8d52a84d1c9301c08":{"workers":{"app/api/cli-tools/antigravity-mitm/alias/route":{"moduleId":"78547","async":false}},"layer":{"app/api/cli-tools/antigravity-mitm/alias/route":"rsc"},"filename":"app/api/cli-tools/antigravity-mitm/alias/route.ts","exportedName":"PUT"},"400101a688a18fa03d2df5509b702f073ba6de7f9c":{"workers":{"app/api/cli-tools/backups/route":{"moduleId":"26695","async":false}},"layer":{"app/api/cli-tools/backups/route":"rsc"},"filename":"app/api/cli-tools/backups/route.ts","exportedName":"DELETE"},"40879e86ed5688d3ab771e9e894960ff8d2dca5e8f":{"workers":{"app/api/cli-tools/backups/route":{"moduleId":"26695","async":false}},"layer":{"app/api/cli-tools/backups/route":"rsc"},"filename":"app/api/cli-tools/backups/route.ts","exportedName":"POST"},"408b83ae557d3eab68420bc0f7ba986b1543d7d4ad":{"workers":{"app/api/cli-tools/backups/route":{"moduleId":"26695","async":false}},"layer":{"app/api/cli-tools/backups/route":"rsc"},"filename":"app/api/cli-tools/backups/route.ts","exportedName":"GET"},"0090452ae531cfdcea7e55795cdde875c7f8775159":{"workers":{"app/api/cli-tools/codex-profiles/route":{"moduleId":"24383","async":false}},"layer":{"app/api/cli-tools/codex-profiles/route":"rsc"},"filename":"app/api/cli-tools/codex-profiles/route.ts","exportedName":"GET"},"4016b2307e433356baf156a5898d0d2d37a928fa11":{"workers":{"app/api/cli-tools/codex-profiles/route":{"moduleId":"24383","async":false}},"layer":{"app/api/cli-tools/codex-profiles/route":"rsc"},"filename":"app/api/cli-tools/codex-profiles/route.ts","exportedName":"PUT"},"401c29ca7966168ffb45b9fff6917dfb6a6417d6f2":{"workers":{"app/api/cli-tools/codex-profiles/route":{"moduleId":"24383","async":false}},"layer":{"app/api/cli-tools/codex-profiles/route":"rsc"},"filename":"app/api/cli-tools/codex-profiles/route.ts","exportedName":"DELETE"},"40ad95baef6a8e8cbace1cfb27eff30c98c517ccb1":{"workers":{"app/api/cli-tools/codex-profiles/route":{"moduleId":"24383","async":false}},"layer":{"app/api/cli-tools/codex-profiles/route":"rsc"},"filename":"app/api/cli-tools/codex-profiles/route.ts","exportedName":"POST"},"004d45802c51dea22712f4b7a40e5774e7d870057f":{"workers":{"app/api/cli-tools/antigravity-mitm/route":{"moduleId":"75377","async":false}},"layer":{"app/api/cli-tools/antigravity-mitm/route":"rsc"},"filename":"app/api/cli-tools/antigravity-mitm/route.ts","exportedName":"GET"},"40956269e0cad311f76cd0b223f893ddd7f3a56c5d":{"workers":{"app/api/cli-tools/antigravity-mitm/route":{"moduleId":"75377","async":false}},"layer":{"app/api/cli-tools/antigravity-mitm/route":"rsc"},"filename":"app/api/cli-tools/antigravity-mitm/route.ts","exportedName":"POST"},"40d8425bb7aa8eab2cc124b679a76c0d8b90ce1336":{"workers":{"app/api/cli-tools/antigravity-mitm/route":{"moduleId":"75377","async":false}},"layer":{"app/api/cli-tools/antigravity-mitm/route":"rsc"},"filename":"app/api/cli-tools/antigravity-mitm/route.ts","exportedName":"DELETE"},"0011d491cb14f8d4015a93c5cce858e2d2471bb54d":{"workers":{"app/api/cli-tools/claude-settings/route":{"moduleId":"72405","async":false}},"layer":{"app/api/cli-tools/claude-settings/route":"rsc"},"filename":"app/api/cli-tools/claude-settings/route.ts","exportedName":"GET"},"009200c9b71a507b608beee9d620875ffd8a281323":{"workers":{"app/api/cli-tools/claude-settings/route":{"moduleId":"72405","async":false}},"layer":{"app/api/cli-tools/claude-settings/route":"rsc"},"filename":"app/api/cli-tools/claude-settings/route.ts","exportedName":"DELETE"},"40d30cb3e7bb6076931154486eafd1fb3f357a6c99":{"workers":{"app/api/cli-tools/claude-settings/route":{"moduleId":"72405","async":false}},"layer":{"app/api/cli-tools/claude-settings/route":"rsc"},"filename":"app/api/cli-tools/claude-settings/route.ts","exportedName":"POST"},"0086b0de051f65dc041f7760c0ee89fb3ed26d95fa":{"workers":{"app/api/cli-tools/cline-settings/route":{"moduleId":"31635","async":false}},"layer":{"app/api/cli-tools/cline-settings/route":"rsc"},"filename":"app/api/cli-tools/cline-settings/route.ts","exportedName":"DELETE"},"00ee59f021d35c85d1a4fec5e835598515dfcf1575":{"workers":{"app/api/cli-tools/cline-settings/route":{"moduleId":"31635","async":false}},"layer":{"app/api/cli-tools/cline-settings/route":"rsc"},"filename":"app/api/cli-tools/cline-settings/route.ts","exportedName":"GET"},"403195271c9b54e084eba3f0ee1347f4aa1d3d9785":{"workers":{"app/api/cli-tools/cline-settings/route":{"moduleId":"31635","async":false}},"layer":{"app/api/cli-tools/cline-settings/route":"rsc"},"filename":"app/api/cli-tools/cline-settings/route.ts","exportedName":"POST"},"00ac557bc9f02451d700cb8865826d30b40e6cdb5e":{"workers":{"app/api/cli-tools/droid-settings/route":{"moduleId":"51780","async":false}},"layer":{"app/api/cli-tools/droid-settings/route":"rsc"},"filename":"app/api/cli-tools/droid-settings/route.ts","exportedName":"GET"},"00b066900d0987d5f19d1c6db02e1868c5efbf114d":{"workers":{"app/api/cli-tools/droid-settings/route":{"moduleId":"51780","async":false}},"layer":{"app/api/cli-tools/droid-settings/route":"rsc"},"filename":"app/api/cli-tools/droid-settings/route.ts","exportedName":"DELETE"},"4072c6269c0f6fc7670c8a2083d1e24ba5b46692fa":{"workers":{"app/api/cli-tools/droid-settings/route":{"moduleId":"51780","async":false}},"layer":{"app/api/cli-tools/droid-settings/route":"rsc"},"filename":"app/api/cli-tools/droid-settings/route.ts","exportedName":"POST"},"000d548ddad3ffad04accde896d90c0eec5d8e2d18":{"workers":{"app/api/cli-tools/codex-settings/route":{"moduleId":"50889","async":false}},"layer":{"app/api/cli-tools/codex-settings/route":"rsc"},"filename":"app/api/cli-tools/codex-settings/route.ts","exportedName":"DELETE"},"006381db2277fcb572815614baf2b995fff8bb3fd6":{"workers":{"app/api/cli-tools/codex-settings/route":{"moduleId":"50889","async":false}},"layer":{"app/api/cli-tools/codex-settings/route":"rsc"},"filename":"app/api/cli-tools/codex-settings/route.ts","exportedName":"GET"},"40d3359d3efa574db807f2e639dc4f5756be8e4851":{"workers":{"app/api/cli-tools/codex-settings/route":{"moduleId":"50889","async":false}},"layer":{"app/api/cli-tools/codex-settings/route":"rsc"},"filename":"app/api/cli-tools/codex-settings/route.ts","exportedName":"POST"},"0009f779040edce58cf793783fcccee4890aaac904":{"workers":{"app/api/cli-tools/openclaw-settings/route":{"moduleId":"26462","async":false}},"layer":{"app/api/cli-tools/openclaw-settings/route":"rsc"},"filename":"app/api/cli-tools/openclaw-settings/route.ts","exportedName":"DELETE"},"00585ae8ae9f17c3603309a0561601e96e3a9076d0":{"workers":{"app/api/cli-tools/openclaw-settings/route":{"moduleId":"26462","async":false}},"layer":{"app/api/cli-tools/openclaw-settings/route":"rsc"},"filename":"app/api/cli-tools/openclaw-settings/route.ts","exportedName":"GET"},"4021f1ec314061f8e2f9d1852ca735a6d5d7a96b9d":{"workers":{"app/api/cli-tools/openclaw-settings/route":{"moduleId":"26462","async":false}},"layer":{"app/api/cli-tools/openclaw-settings/route":"rsc"},"filename":"app/api/cli-tools/openclaw-settings/route.ts","exportedName":"POST"},"00cca187ebf0a01ceb095a319f06e543774e679a10":{"workers":{"app/api/cli-tools/status/route":{"moduleId":"60327","async":false}},"layer":{"app/api/cli-tools/status/route":"rsc"},"filename":"app/api/cli-tools/status/route.ts","exportedName":"GET"},"60c60f7cee1f8b04063d4b9bec5c958055a70c1f39":{"workers":{"app/api/cli-tools/runtime/[toolId]/route":{"moduleId":"97709","async":false}},"layer":{"app/api/cli-tools/runtime/[toolId]/route":"rsc"},"filename":"app/api/cli-tools/runtime/[toolId]/route.ts","exportedName":"GET"},"006e8b9b630cf645bf966c4e6acc2932138cf957e1":{"workers":{"app/api/cli-tools/kilo-settings/route":{"moduleId":"81235","async":false}},"layer":{"app/api/cli-tools/kilo-settings/route":"rsc"},"filename":"app/api/cli-tools/kilo-settings/route.ts","exportedName":"DELETE"},"00ec221e6ed3e9f9c31d0964ba189253d9bac32847":{"workers":{"app/api/cli-tools/kilo-settings/route":{"moduleId":"81235","async":false}},"layer":{"app/api/cli-tools/kilo-settings/route":"rsc"},"filename":"app/api/cli-tools/kilo-settings/route.ts","exportedName":"GET"},"40e6f92a99d5502a841b834b4780c51ab18322544e":{"workers":{"app/api/cli-tools/kilo-settings/route":{"moduleId":"81235","async":false}},"layer":{"app/api/cli-tools/kilo-settings/route":"rsc"},"filename":"app/api/cli-tools/kilo-settings/route.ts","exportedName":"POST"}},"edge":{},"encryptionKey":"FayfcUuEjZNirUW9lDWkpZ8Uw5vt0AtHzUBqx7fZHe8="}
1
+ {"node":{"404240b0e406fa13c971b5aee68eba33e053bf25d4":{"workers":{"app/api/cli-tools/antigravity-mitm/alias/route":{"moduleId":"50375","async":false}},"layer":{"app/api/cli-tools/antigravity-mitm/alias/route":"rsc"},"filename":"app/api/cli-tools/antigravity-mitm/alias/route.ts","exportedName":"PUT"},"40eac35e228c7c06f3a4a962408b9f4efe71619084":{"workers":{"app/api/cli-tools/antigravity-mitm/alias/route":{"moduleId":"50375","async":false}},"layer":{"app/api/cli-tools/antigravity-mitm/alias/route":"rsc"},"filename":"app/api/cli-tools/antigravity-mitm/alias/route.ts","exportedName":"GET"},"4027caff174990af753e9c20ea4cee71de1af5e5cd":{"workers":{"app/api/cli-tools/backups/route":{"moduleId":"93923","async":false}},"layer":{"app/api/cli-tools/backups/route":"rsc"},"filename":"app/api/cli-tools/backups/route.ts","exportedName":"POST"},"40c80352c95087747df0b6ac6647d0b2a7c1ffe344":{"workers":{"app/api/cli-tools/backups/route":{"moduleId":"93923","async":false}},"layer":{"app/api/cli-tools/backups/route":"rsc"},"filename":"app/api/cli-tools/backups/route.ts","exportedName":"GET"},"40ffe0a9ee707a43ec6274bdc510d451002adb89a9":{"workers":{"app/api/cli-tools/backups/route":{"moduleId":"93923","async":false}},"layer":{"app/api/cli-tools/backups/route":"rsc"},"filename":"app/api/cli-tools/backups/route.ts","exportedName":"DELETE"},"00c311dad01886b12f340a1a563fcd0ffee0a2db9c":{"workers":{"app/api/cli-tools/codex-profiles/route":{"moduleId":"64351","async":false}},"layer":{"app/api/cli-tools/codex-profiles/route":"rsc"},"filename":"app/api/cli-tools/codex-profiles/route.ts","exportedName":"GET"},"404a49d8c81a5c495f5af108d23d2094ccc1779c04":{"workers":{"app/api/cli-tools/codex-profiles/route":{"moduleId":"64351","async":false}},"layer":{"app/api/cli-tools/codex-profiles/route":"rsc"},"filename":"app/api/cli-tools/codex-profiles/route.ts","exportedName":"POST"},"4068f14461d0d295d81364257cb78118a17683cdd9":{"workers":{"app/api/cli-tools/codex-profiles/route":{"moduleId":"64351","async":false}},"layer":{"app/api/cli-tools/codex-profiles/route":"rsc"},"filename":"app/api/cli-tools/codex-profiles/route.ts","exportedName":"DELETE"},"40d3b9a825b4957770f96e8df89ee9f0449de04dc7":{"workers":{"app/api/cli-tools/codex-profiles/route":{"moduleId":"64351","async":false}},"layer":{"app/api/cli-tools/codex-profiles/route":"rsc"},"filename":"app/api/cli-tools/codex-profiles/route.ts","exportedName":"PUT"},"0095747ffa644dc53a60cd1028058f73d67900392e":{"workers":{"app/api/cli-tools/antigravity-mitm/route":{"moduleId":"76239","async":false}},"layer":{"app/api/cli-tools/antigravity-mitm/route":"rsc"},"filename":"app/api/cli-tools/antigravity-mitm/route.ts","exportedName":"GET"},"4077ae42ca1f93ff6f63fe8f06c0d9c4a91f3bccec":{"workers":{"app/api/cli-tools/antigravity-mitm/route":{"moduleId":"76239","async":false}},"layer":{"app/api/cli-tools/antigravity-mitm/route":"rsc"},"filename":"app/api/cli-tools/antigravity-mitm/route.ts","exportedName":"DELETE"},"40fcb07dd6e13e0f0004debbfe50aa7fdcdd1f15b0":{"workers":{"app/api/cli-tools/antigravity-mitm/route":{"moduleId":"76239","async":false}},"layer":{"app/api/cli-tools/antigravity-mitm/route":"rsc"},"filename":"app/api/cli-tools/antigravity-mitm/route.ts","exportedName":"POST"},"0003ed09bc2ccb53830538842b4bb942f9be9f8d5d":{"workers":{"app/api/cli-tools/claude-settings/route":{"moduleId":"18088","async":false}},"layer":{"app/api/cli-tools/claude-settings/route":"rsc"},"filename":"app/api/cli-tools/claude-settings/route.ts","exportedName":"GET"},"0022cbb024e9423107213affeb4061d01f4eedc5a6":{"workers":{"app/api/cli-tools/claude-settings/route":{"moduleId":"18088","async":false}},"layer":{"app/api/cli-tools/claude-settings/route":"rsc"},"filename":"app/api/cli-tools/claude-settings/route.ts","exportedName":"DELETE"},"4098ef9092f522de6e89c7b2e83eae093e45cc0e9b":{"workers":{"app/api/cli-tools/claude-settings/route":{"moduleId":"18088","async":false}},"layer":{"app/api/cli-tools/claude-settings/route":"rsc"},"filename":"app/api/cli-tools/claude-settings/route.ts","exportedName":"POST"},"0017a15eb94531837aa2e2ea1c1f1d3375b3d96d24":{"workers":{"app/api/cli-tools/cline-settings/route":{"moduleId":"92099","async":false}},"layer":{"app/api/cli-tools/cline-settings/route":"rsc"},"filename":"app/api/cli-tools/cline-settings/route.ts","exportedName":"GET"},"00cffaa5d45eeb9238fd40329172971e87caad4de3":{"workers":{"app/api/cli-tools/cline-settings/route":{"moduleId":"92099","async":false}},"layer":{"app/api/cli-tools/cline-settings/route":"rsc"},"filename":"app/api/cli-tools/cline-settings/route.ts","exportedName":"DELETE"},"40069fa7c68368db38d8538aa0e3199fa8f3e82f92":{"workers":{"app/api/cli-tools/cline-settings/route":{"moduleId":"92099","async":false}},"layer":{"app/api/cli-tools/cline-settings/route":"rsc"},"filename":"app/api/cli-tools/cline-settings/route.ts","exportedName":"POST"},"004cd37ee98cf6cbf94092a234032e21204dbcfe14":{"workers":{"app/api/cli-tools/droid-settings/route":{"moduleId":"24404","async":false}},"layer":{"app/api/cli-tools/droid-settings/route":"rsc"},"filename":"app/api/cli-tools/droid-settings/route.ts","exportedName":"DELETE"},"0071a87042d2a6043dcc645e6df594596366b5266b":{"workers":{"app/api/cli-tools/droid-settings/route":{"moduleId":"24404","async":false}},"layer":{"app/api/cli-tools/droid-settings/route":"rsc"},"filename":"app/api/cli-tools/droid-settings/route.ts","exportedName":"GET"},"40e7a36e8445a1deb7541555076cffdbfffae16ecd":{"workers":{"app/api/cli-tools/droid-settings/route":{"moduleId":"24404","async":false}},"layer":{"app/api/cli-tools/droid-settings/route":"rsc"},"filename":"app/api/cli-tools/droid-settings/route.ts","exportedName":"POST"},"00b294e81308172bb951d6403f7a4325c476307481":{"workers":{"app/api/cli-tools/codex-settings/route":{"moduleId":"2265","async":false}},"layer":{"app/api/cli-tools/codex-settings/route":"rsc"},"filename":"app/api/cli-tools/codex-settings/route.ts","exportedName":"DELETE"},"00dd77805e2ed13bd1ebda806fbab92f38fdd44301":{"workers":{"app/api/cli-tools/codex-settings/route":{"moduleId":"2265","async":false}},"layer":{"app/api/cli-tools/codex-settings/route":"rsc"},"filename":"app/api/cli-tools/codex-settings/route.ts","exportedName":"GET"},"409788410e2cb77db161d086154f730127e265a4b9":{"workers":{"app/api/cli-tools/codex-settings/route":{"moduleId":"2265","async":false}},"layer":{"app/api/cli-tools/codex-settings/route":"rsc"},"filename":"app/api/cli-tools/codex-settings/route.ts","exportedName":"POST"},"6069a562e58db8d27d1b7b8d0cf3cba6cdbfe5258c":{"workers":{"app/api/cli-tools/runtime/[toolId]/route":{"moduleId":"99884","async":false}},"layer":{"app/api/cli-tools/runtime/[toolId]/route":"rsc"},"filename":"app/api/cli-tools/runtime/[toolId]/route.ts","exportedName":"GET"},"003c41f3e092dda48019b51e3ceb6f2149564fe18e":{"workers":{"app/api/cli-tools/kilo-settings/route":{"moduleId":"92768","async":false}},"layer":{"app/api/cli-tools/kilo-settings/route":"rsc"},"filename":"app/api/cli-tools/kilo-settings/route.ts","exportedName":"GET"},"00b1bfe78b5502afa17c3cf14c8919a7deea81969d":{"workers":{"app/api/cli-tools/kilo-settings/route":{"moduleId":"92768","async":false}},"layer":{"app/api/cli-tools/kilo-settings/route":"rsc"},"filename":"app/api/cli-tools/kilo-settings/route.ts","exportedName":"DELETE"},"40e9aa915a5366962eb732d69aec6073ef01ded76f":{"workers":{"app/api/cli-tools/kilo-settings/route":{"moduleId":"92768","async":false}},"layer":{"app/api/cli-tools/kilo-settings/route":"rsc"},"filename":"app/api/cli-tools/kilo-settings/route.ts","exportedName":"POST"},"0022ac156f742a900f792c6b3d0a3a67325980af84":{"workers":{"app/api/cli-tools/openclaw-settings/route":{"moduleId":"16410","async":false}},"layer":{"app/api/cli-tools/openclaw-settings/route":"rsc"},"filename":"app/api/cli-tools/openclaw-settings/route.ts","exportedName":"GET"},"0058af7d54282e08e36b792aae566e6f4f10e50d7d":{"workers":{"app/api/cli-tools/openclaw-settings/route":{"moduleId":"16410","async":false}},"layer":{"app/api/cli-tools/openclaw-settings/route":"rsc"},"filename":"app/api/cli-tools/openclaw-settings/route.ts","exportedName":"DELETE"},"40cab2e6d9c7fbe3f6bc453a0b5acd660a5c2a7b5d":{"workers":{"app/api/cli-tools/openclaw-settings/route":{"moduleId":"16410","async":false}},"layer":{"app/api/cli-tools/openclaw-settings/route":"rsc"},"filename":"app/api/cli-tools/openclaw-settings/route.ts","exportedName":"POST"},"0084ba97622605ce26cc75c9ad637774bb52e98cf3":{"workers":{"app/api/cli-tools/status/route":{"moduleId":"26059","async":false}},"layer":{"app/api/cli-tools/status/route":"rsc"},"filename":"app/api/cli-tools/status/route.ts","exportedName":"GET"}},"edge":{},"encryptionKey":"gJtLa9nqQf2XtTReMLkVXg29ziyPqBJNPc616N8Bdc4="}
@@ -1,2 +1,2 @@
1
1
  "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5846],{20909:(e,a,i)=>{i.d(a,{Q2:()=>h,DI:()=>c,fg:()=>d,MA:()=>g,IS:()=>s,zN:()=>l,JH:()=>m,wb:()=>f,wG:()=>b,zt:()=>k,gb:()=>u,mq:()=>p});var t=i(47173);let o=t.Ikc({id:t.YjP().min(1),alias:t.YjP().min(1),name:t.YjP().min(1),icon:t.YjP().min(1),color:t.YjP().regex(/^#[0-9A-Fa-f]{6}$/,"Must be a valid hex color (#RRGGBB)"),textIcon:t.YjP().optional(),website:t.YjP().url().optional(),passthroughModels:t.zMY().optional()}),n=t.g1P(t.YjP(),o);function r(e,a){let i=n.safeParse(e);if(!i.success){let e=i.error.issues.map(e=>` ${e.path.join(".")}: ${e.message}`).join("\n");throw console.error(`[PROVIDER VALIDATION] ${a} has invalid entries:
2
- ${e}`),Error(`Provider validation failed for ${a}`)}}let s={iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1"},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981"},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4"},kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35"}},l={claude:{id:"claude",alias:"cc",name:"Claude Code",icon:"smart_toy",color:"#D97757"},antigravity:{id:"antigravity",alias:"ag",name:"Antigravity",icon:"rocket_launch",color:"#F59E0B"},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6"},github:{id:"github",alias:"gh",name:"GitHub Copilot",icon:"code",color:"#333333"},cursor:{id:"cursor",alias:"cu",name:"Cursor IDE",icon:"edit_note",color:"#00D4AA"},"kimi-coding":{id:"kimi-coding",alias:"kmc",name:"Kimi Coding",icon:"psychology",color:"#1E40AF",textIcon:"KC"},kilocode:{id:"kilocode",alias:"kc",name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC"},cline:{id:"cline",alias:"cl",name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL"}},d={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",passthroughModels:!0,website:"https://openrouter.ai"},glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn"},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn"},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com"},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com"},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com"},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com"},gemini:{id:"gemini",alias:"gemini",name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev"},deepseek:{id:"deepseek",alias:"ds",name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com"},groq:{id:"groq",alias:"groq",name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com"},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai"},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai"},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai"},together:{id:"together",alias:"together",name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai"},fireworks:{id:"fireworks",alias:"fireworks",name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai"},cerebras:{id:"cerebras",alias:"cerebras",name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://www.cerebras.ai"},cohere:{id:"cohere",alias:"cohere",name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com"},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://developer.nvidia.com/nim"},nebius:{id:"nebius",alias:"nebius",name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com"},siliconflow:{id:"siliconflow",alias:"siliconflow",name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com"},hyperbolic:{id:"hyperbolic",alias:"hyp",name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz"},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com"},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com"},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana",icon:"image",color:"#FFD700",textIcon:"NB",website:"https://nanobananaapi.ai"}},m="openai-compatible-",c="anthropic-compatible-";function p(e){return"string"==typeof e&&e.startsWith(m)}function u(e){return"string"==typeof e&&e.startsWith(c)}let h={...s,...l,...d},g={oauth:{id:"oauth",name:"OAuth",icon:"lock"},apikey:{id:"apikey",name:"API Key",icon:"key"}};function k(e){for(let a of Object.values(h))if(a.alias===e||a.id===e)return a;return null}function b(e){let a=h[e];return a?.alias||e}Object.values(h).reduce((e,a)=>(e[a.alias]=a.id,e),{}),Object.values(h).reduce((e,a)=>(e[a.id]=a.alias,e),{});let f=["antigravity","kiro","github","codex","claude"];r(s,"FREE_PROVIDERS"),r(l,"OAUTH_PROVIDERS"),r(d,"APIKEY_PROVIDERS")},35144:(e,a,i)=>{i.d(a,{Xg:()=>r,vq:()=>n,KC:()=>s}),i(41463);let t={claude:{id:"claude",alias:"cc",format:"claude",executor:"default",baseUrl:"https://api.anthropic.com/v1/messages",urlSuffix:"?beta=true",authType:"oauth",authHeader:"x-api-key",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,oauth-2025-04-20,interleaved-thinking-2025-05-14,fine-grained-tool-streaming-2025-05-14,context-management-2025-06-27","Anthropic-Dangerous-Direct-Browser-Access":"true","User-Agent":"claude-cli/1.0.83 (external, cli)","X-App":"cli","X-Stainless-Helper-Method":"stream","X-Stainless-Retry-Count":"0","X-Stainless-Runtime-Version":"v24.3.0","X-Stainless-Package-Version":"0.55.1","X-Stainless-Runtime":"node","X-Stainless-Lang":"js","X-Stainless-Arch":"arm64","X-Stainless-Os":"MacOS","X-Stainless-Timeout":"60"},oauth:{clientIdEnv:"CLAUDE_OAUTH_CLIENT_ID",clientIdDefault:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",tokenUrl:"https://console.anthropic.com/v1/oauth/token"},models:[{id:"claude-opus-4-6",name:"Claude Opus 4.6"},{id:"claude-opus-4-5-20251101",name:"Claude 4.5 Opus"},{id:"claude-sonnet-4-5-20250929",name:"Claude 4.5 Sonnet"},{id:"claude-haiku-4-5-20251001",name:"Claude 4.5 Haiku"}]},gemini:{id:"gemini",alias:"gemini",format:"gemini",executor:"default",baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",urlBuilder:(e,a,i)=>`${e}/${a}:${i?"streamGenerateContent?alt=sse":"generateContent"}`,authType:"apikey",authHeader:"x-goog-api-key",oauth:{clientIdEnv:"GEMINI_OAUTH_CLIENT_ID",clientIdDefault:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecretEnv:"GEMINI_OAUTH_CLIENT_SECRET",clientSecretDefault:"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"},models:[{id:"gemini-3-pro-preview",name:"Gemini 3 Pro 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"}]},"gemini-cli":{id:"gemini-cli",alias:"gc",format:"gemini-cli",executor:"gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com/v1internal",urlBuilder:(e,a,i)=>`${e}:${i?"streamGenerateContent?alt=sse":"generateContent"}`,authType:"oauth",authHeader:"bearer",oauth:{clientIdEnv:"GEMINI_CLI_OAUTH_CLIENT_ID",clientIdDefault:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecretEnv:"GEMINI_CLI_OAUTH_CLIENT_SECRET",clientSecretDefault:"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"},models:[{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro 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"}]},codex:{id:"codex",alias:"cx",format:"openai-responses",executor:"codex",baseUrl:"https://chatgpt.com/backend-api/codex/responses",authType:"oauth",authHeader:"bearer",headers:{Version:"0.92.0","Openai-Beta":"responses=experimental","User-Agent":"codex-cli/0.92.0 (Windows 10.0.26100; x64)"},oauth:{clientIdEnv:"CODEX_OAUTH_CLIENT_ID",clientIdDefault:"app_EMoamEEZ73f0CkXaXp7hrann",clientSecretEnv:"CODEX_OAUTH_CLIENT_SECRET",clientSecretDefault:"",tokenUrl:"https://auth.openai.com/oauth/token"},models:[{id:"gpt-5.3-codex",name:"GPT 5.3 Codex"},{id:"gpt-5.3-codex-xhigh",name:"GPT 5.3 Codex (xHigh)"},{id:"gpt-5.3-codex-high",name:"GPT 5.3 Codex (High)"},{id:"gpt-5.3-codex-low",name:"GPT 5.3 Codex (Low)"},{id:"gpt-5.3-codex-none",name:"GPT 5.3 Codex (None)"},{id:"gpt-5.1-codex-mini",name:"GPT 5.1 Codex Mini"},{id:"gpt-5.1-codex-mini-high",name:"GPT 5.1 Codex Mini (High)"},{id:"gpt-5.2-codex",name:"GPT 5.2 Codex"},{id:"gpt-5.2",name:"GPT 5.2"},{id:"gpt-5.1-codex-max",name:"GPT 5.1 Codex Max"},{id:"gpt-5.1-codex",name:"GPT 5.1 Codex"},{id:"gpt-5.1",name:"GPT 5.1"},{id:"gpt-5-codex",name:"GPT 5 Codex"},{id:"gpt-5-codex-mini",name:"GPT 5 Codex Mini"}]},qwen:{id:"qwen",alias:"qw",format:"openai",executor:"default",baseUrl:"https://portal.qwen.ai/v1/chat/completions",authType:"oauth",authHeader:"bearer",headers:{"User-Agent":"google-api-nodejs-client/9.15.1","X-Goog-Api-Client":"gl-node/22.17.0"},oauth:{clientIdEnv:"QWEN_OAUTH_CLIENT_ID",clientIdDefault:"f0304373b74a44d2b584a3fb70ca9e56",tokenUrl:"https://chat.qwen.ai/api/v1/oauth2/token",authUrl:"https://chat.qwen.ai/api/v1/oauth2/device/code"},models:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-coder-flash",name:"Qwen3 Coder Flash"},{id:"vision-model",name:"Qwen3 Vision Model"}]},iflow:{id:"iflow",alias:"if",format:"openai",executor:"iflow",baseUrl:"https://apis.iflow.cn/v1/chat/completions",authType:"oauth",authHeader:"bearer",headers:{"User-Agent":"iFlow-Cli"},oauth:{clientIdEnv:"IFLOW_OAUTH_CLIENT_ID",clientIdDefault:"10009311001",clientSecretEnv:"IFLOW_OAUTH_CLIENT_SECRET",clientSecretDefault:"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://iflow.cn/oauth/token",authUrl:"https://iflow.cn/oauth"},models:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"kimi-k2",name:"Kimi K2"},{id:"kimi-k2-thinking",name:"Kimi K2 Thinking"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"deepseek-r1",name:"DeepSeek R1"},{id:"deepseek-v3.2-chat",name:"DeepSeek V3.2 Chat"},{id:"deepseek-v3.2-reasoner",name:"DeepSeek V3.2 Reasoner"},{id:"minimax-m2.1",name:"MiniMax M2.1"},{id:"glm-4.7",name:"GLM 4.7"}]},antigravity:{id:"antigravity",alias:"ag",format:"antigravity",executor:"antigravity",baseUrls:["https://daily-cloudcode-pa.googleapis.com","https://cloudcode-pa.googleapis.com"],urlBuilder:(e,a,i)=>`${e}${i?"/v1internal:streamGenerateContent?alt=sse":"/v1internal:generateContent"}`,authType:"oauth",authHeader:"bearer",headers:{"User-Agent":"antigravity/1.104.0 darwin/arm64"},oauth:{clientIdEnv:"ANTIGRAVITY_OAUTH_CLIENT_ID",clientIdDefault:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecretEnv:"ANTIGRAVITY_OAUTH_CLIENT_SECRET",clientSecretDefault:"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"},models:[{id:"claude-opus-4-6-thinking",name:"Claude Opus 4.6 Thinking"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6"},{id:"gemini-3.1-pro-high",name:"Gemini 3.1 Pro High"},{id:"gemini-3.1-pro-low",name:"Gemini 3.1 Pro Low"},{id:"gemini-3-flash",name:"Gemini 3 Flash"},{id:"gpt-oss-120b-medium",name:"GPT OSS 120B Medium"}]},github:{id:"github",alias:"gh",format:"openai",executor:"github",baseUrl:"https://api.githubcopilot.com/chat/completions",responsesBaseUrl:"https://api.githubcopilot.com/responses",authType:"oauth",authHeader:"bearer",headers:{"copilot-integration-id":"vscode-chat","editor-version":"vscode/1.107.1","editor-plugin-version":"copilot-chat/0.26.7","user-agent":"GitHubCopilotChat/0.26.7","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"},models:[{id:"gpt-4.1",name:"GPT-4.1"},{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o Mini"},{id:"gpt-4",name:"GPT-4"},{id:"gpt-3.5-turbo",name:"GPT-3.5 Turbo"},{id:"gpt-5",name:"GPT-5"},{id:"gpt-5-mini",name:"GPT-5 Mini"},{id:"gpt-5-codex",name:"GPT-5 Codex",targetFormat:"openai-responses"},{id:"gpt-5.1",name:"GPT-5.1"},{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",targetFormat:"openai-responses"},{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex Mini",targetFormat:"openai-responses"},{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",targetFormat:"openai-responses"},{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",targetFormat:"openai-responses"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"claude-opus-4.1",name:"Claude Opus 4.1"},{id:"claude-opus-4.6",name:"Claude Opus 4.6"},{id:"claude-opus-4-5-20251101",name:"Claude Opus 4.5 (Full ID)"},{id:"claude-sonnet-4",name:"Claude Sonnet 4"},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview"},{id:"grok-code-fast-1",name:"Grok Code Fast 1"},{id:"oswe-vscode-prime",name:"Raptor Mini"}]},kiro:{id:"kiro",alias:"kr",format:"kiro",executor:"kiro",baseUrl:"https://codewhisperer.us-east-1.amazonaws.com/generateAssistantResponse",authType:"oauth",authHeader:"bearer",headers:{"Content-Type":"application/json",Accept:"application/vnd.amazon.eventstream","X-Amz-Target":"AmazonCodeWhispererStreamingService.GenerateAssistantResponse","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"},oauth:{tokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authUrl:"https://prod.us-east-1.auth.desktop.kiro.dev"},models:[{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"}]},cursor:{id:"cursor",alias:"cu",format:"cursor",executor:"cursor",baseUrl:"https://api2.cursor.sh",chatPath:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",authType:"oauth",authHeader:"bearer",headers:{"connect-accept-encoding":"gzip","connect-protocol-version":"1","Content-Type":"application/connect+proto","User-Agent":"connect-es/1.6.1"},clientVersion:"1.1.3",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"}]},openai:{id:"openai",alias:"openai",format:"openai",executor:"default",baseUrl:"https://api.openai.com/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o Mini"},{id:"gpt-4-turbo",name:"GPT-4 Turbo"},{id:"o1",name:"O1"},{id:"o1-mini",name:"O1 Mini"}]},anthropic:{id:"anthropic",alias:"anthropic",format:"claude",executor:"default",baseUrl:"https://api.anthropic.com/v1/messages",urlSuffix:"?beta=true",authType:"apikey",authHeader:"x-api-key",headers:{"Anthropic-Version":"2023-06-01"},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"}]},openrouter:{id:"openrouter",alias:"openrouter",format:"openai",executor:"default",baseUrl:"https://openrouter.ai/api/v1/chat/completions",authType:"apikey",authHeader:"bearer",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"},models:[{id:"auto",name:"Auto (Best Available)"}]},glm:{id:"glm",alias:"glm",format:"claude",executor:"default",baseUrl:"https://api.z.ai/api/anthropic/v1/messages",urlSuffix:"?beta=true",authType:"apikey",authHeader:"x-api-key",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},models:[{id:"glm-4.7-flash",name:"GLM 4.7 Flash"},{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.5v",name:"GLM 4.5V (Vision)"},{id:"glm-4.5",name:"GLM 4.5"},{id:"glm-4.5-air",name:"GLM 4.5 Air"},{id:"glm-4-32b",name:"GLM 4 32B"}]},kimi:{id:"kimi",alias:"kimi",format:"openai",executor:"default",baseUrl:"https://api.moonshot.ai/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}]},"kimi-coding":{id:"kimi-coding",alias:"kmc",format:"claude",executor:"default",baseUrl:"https://api.kimi.com/coding/v1/messages",urlSuffix:"?beta=true",authType:"oauth",authHeader:"x-api-key",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},oauth:{clientIdEnv:"KIMI_CODING_OAUTH_CLIENT_ID",clientIdDefault:"17e5f671-d194-4dfb-9706-5516cb48c098",tokenUrl:"https://auth.kimi.com/api/oauth/token",refreshUrl:"https://auth.kimi.com/api/oauth/token",authUrl:"https://auth.kimi.com/api/oauth/device_authorization"},models:[{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}]},kilocode:{id:"kilocode",alias:"kc",format:"openrouter",executor:"openrouter",baseUrl:"https://api.kilo.ai/api/openrouter/chat/completions",modelsUrl:"https://api.kilo.ai/api/openrouter/models",authType:"oauth",authHeader:"Authorization",authPrefix:"Bearer ",oauth:{initiateUrl:"https://api.kilo.ai/api/device-auth/codes",pollUrlBase:"https://api.kilo.ai/api/device-auth/codes"},models:[{id:"openrouter/free",name:"Free Models Router"},{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen3 VL 235B A22B Thinking"},{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking 2507"},{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen3 VL 30B A3B Thinking"},{id:"stepfun/step-3.5-flash:free",name:"StepFun Step 3.5 Flash"},{id:"arcee-ai/trinity-large-preview:free",name:"Arcee AI Trinity Large Preview"},{id:"openai/gpt-4o-mini",name:"GPT-4o Mini"},{id:"openai/gpt-4.1-nano",name:"GPT-4.1 Nano"},{id:"openai/gpt-5-nano",name:"GPT-5 Nano"},{id:"openai/gpt-5-mini",name:"GPT-5 Mini"},{id:"anthropic/claude-3-haiku",name:"Claude 3 Haiku"},{id:"google/gemini-2.0-flash",name:"Gemini 2.0 Flash"},{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite"},{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek V3.1"},{id:"deepseek/deepseek-v3.2",name:"DeepSeek V3.2"},{id:"meta-llama/llama-3.3-70b-instruct",name:"Llama 3.3 70B"},{id:"meta-llama/llama-4-scout",name:"Llama 4 Scout"},{id:"meta-llama/llama-4-maverick",name:"Llama 4 Maverick"},{id:"qwen/qwen3-8b",name:"Qwen3 8B"},{id:"qwen/qwen3-32b",name:"Qwen3 32B"},{id:"qwen/qwen3-coder",name:"Qwen3 Coder 480B"},{id:"qwen/qwq-32b",name:"QwQ 32B"},{id:"mistralai/mistral-small-24b-instruct-2501",name:"Mistral Small 3"},{id:"mistralai/mistral-7b-instruct",name:"Mistral 7B"},{id:"x-ai/grok-code-fast-1",name:"Grok Code Fast 1"},{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5"}],passthroughModels:!0},cline:{id:"cline",alias:"cl",format:"openai",executor:"openai",baseUrl:"https://api.cline.bot/api/v1/chat/completions",authType:"oauth",authHeader:"Authorization",authPrefix:"Bearer ",oauth:{tokenUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh",authUrl:"https://api.cline.bot/api/v1/auth/authorize"},extraHeaders:{"HTTP-Referer":"https://cline.bot","X-Title":"Cline"},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"}],passthroughModels:!0},minimax:{id:"minimax",alias:"minimax",format:"claude",executor:"default",baseUrl:"https://api.minimax.io/anthropic/v1/messages",urlSuffix:"?beta=true",authType:"apikey",authHeader:"x-api-key",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},models:[{id:"MiniMax-M2.1",name:"MiniMax M2.1"}]},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",format:"claude",executor:"default",baseUrl:"https://api.minimaxi.com/anthropic/v1/messages",urlSuffix:"?beta=true",authType:"apikey",authHeader:"x-api-key",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},models:[{id:"MiniMax-M2.1",name:"MiniMax M2.1"}]},deepseek:{id:"deepseek",alias:"ds",format:"openai",executor:"default",baseUrl:"https://api.deepseek.com/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"deepseek-chat",name:"DeepSeek V3.2 Chat"},{id:"deepseek-reasoner",name:"DeepSeek V3.2 Reasoner"}]},groq:{id:"groq",alias:"groq",format:"openai",executor:"default",baseUrl:"https://api.groq.com/openai/v1/chat/completions",authType:"apikey",authHeader:"bearer",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"}]},xai:{id:"xai",alias:"xai",format:"openai",executor:"default",baseUrl:"https://api.x.ai/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{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"}]},mistral:{id:"mistral",alias:"mistral",format:"openai",executor:"default",baseUrl:"https://api.mistral.ai/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"mistral-large-latest",name:"Mistral Large 3"},{id:"codestral-latest",name:"Codestral"},{id:"mistral-medium-latest",name:"Mistral Medium 3"}]},perplexity:{id:"perplexity",alias:"pplx",format:"openai",executor:"default",baseUrl:"https://api.perplexity.ai/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"sonar-pro",name:"Sonar Pro"},{id:"sonar",name:"Sonar"}]},together:{id:"together",alias:"together",format:"openai",executor:"default",baseUrl:"https://api.together.xyz/v1/chat/completions",authType:"apikey",authHeader:"bearer",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"}]},fireworks:{id:"fireworks",alias:"fireworks",format:"openai",executor:"default",baseUrl:"https://api.fireworks.ai/inference/v1/chat/completions",authType:"apikey",authHeader:"bearer",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"}]},cerebras:{id:"cerebras",alias:"cerebras",format:"openai",executor:"default",baseUrl:"https://api.cerebras.ai/v1/chat/completions",authType:"apikey",authHeader:"bearer",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"}]},cohere:{id:"cohere",alias:"cohere",format:"openai",executor:"default",baseUrl:"https://api.cohere.com/v2/chat",authType:"apikey",authHeader:"bearer",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)"}]},nvidia:{id:"nvidia",alias:"nvidia",format:"openai",executor:"default",baseUrl:"https://integrate.api.nvidia.com/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5"},{id:"z-ai/glm4.7",name:"GLM 4.7"},{id:"deepseek-ai/deepseek-v3.2",name:"DeepSeek V3.2"},{id:"nvidia/llama-3.3-70b-instruct",name:"Llama 3.3 70B"},{id:"meta/llama-4-maverick-17b-128e-instruct",name:"Llama 4 Maverick"},{id:"deepseek/deepseek-r1",name:"DeepSeek R1"}]},nebius:{id:"nebius",alias:"nebius",format:"openai",executor:"default",baseUrl:"https://api.tokenfactory.nebius.com/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B Instruct"}]},siliconflow:{id:"siliconflow",alias:"siliconflow",format:"openai",executor:"default",baseUrl:"https://api.siliconflow.com/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek V3.2"},{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B"},{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3 Coder 480B"},{id:"Qwen/Qwen3-32B",name:"Qwen3 32B"},{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5"},{id:"zai-org/GLM-4.7",name:"GLM 4.7"},{id:"openai/gpt-oss-120b",name:"GPT OSS 120B"},{id:"baidu/ERNIE-4.5-300B-A47B",name:"ERNIE 4.5 300B"}]},hyperbolic:{id:"hyperbolic",alias:"hyp",format:"openai",executor:"default",baseUrl:"https://api.hyperbolic.xyz/v1/chat/completions",authType:"apikey",authHeader:"bearer",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"}]}},o=new Map;for(let e of Object.values(t))e.alias&&e.alias!==e.id&&o.set(e.alias,e);let n=function(){let e={};for(let a of Object.values(t))if(a.models&&a.models.length>0){let i=a.alias||a.id;e[i]||(e[i]=a.models)}return e}(),r=function(){let e={};for(let a of Object.values(t))e[a.id]=a.alias||a.id;return e}();function s(e){return n[r[e]||e]||[]}},52529:(e,a,i)=>{i.d(a,{Q2:()=>t.Q2,fg:()=>t.fg,vQ:()=>o,MA:()=>t.MA,zN:()=>t.zN,B2:()=>n});var t=i(20909);i(81135);let o={name:"OmniRoute",description:"AI Gateway for Multi-Provider LLMs",version:"1.6.3"},n={storageKey:"theme",defaultTheme:"system"}},55846:(e,a,i)=>{i.d(a,{ThemeProvider:()=>r});var t=i(95155),o=i(12115),n=i(76851);function r({children:e}){let{initTheme:a}=(0,n.A)();return(0,o.useEffect)(()=>{a()},[a]),(0,t.jsx)(t.Fragment,{children:e})}},76851:(e,a,i)=>{i.d(a,{A:()=>s});var t=i(1934),o=i(31692),n=i(52529);function r(e){let a=document.documentElement,i=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";"dark"===("system"===e?i:e)?a.classList.add("dark"):a.classList.remove("dark")}let s=(0,t.v)()((0,o.Zr)((e,a)=>({theme:n.B2.defaultTheme,setTheme:a=>{e({theme:a}),r(a)},toggleTheme:()=>{let i="dark"===a().theme?"light":"dark";e({theme:i}),r(i)},initTheme:()=>{r(a().theme)}}),{name:n.B2.storageKey}))},81135:(e,a,i)=>{i.d(a,{KC:()=>t.KC,Xg:()=>t.Xg});var t=i(35144);Object.entries(i(20909).Q2).filter(([,e])=>e.passthroughModels).map(([e])=>e),Object.entries(t.vq).flatMap(([e,a])=>a.map(a=>({provider:e,model:a.id,name:a.name})))}}]);
2
+ ${e}`),Error(`Provider validation failed for ${a}`)}}let s={iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1"},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981"},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4"},kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35"}},l={claude:{id:"claude",alias:"cc",name:"Claude Code",icon:"smart_toy",color:"#D97757"},antigravity:{id:"antigravity",alias:"ag",name:"Antigravity",icon:"rocket_launch",color:"#F59E0B"},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6"},github:{id:"github",alias:"gh",name:"GitHub Copilot",icon:"code",color:"#333333"},cursor:{id:"cursor",alias:"cu",name:"Cursor IDE",icon:"edit_note",color:"#00D4AA"},"kimi-coding":{id:"kimi-coding",alias:"kmc",name:"Kimi Coding",icon:"psychology",color:"#1E40AF",textIcon:"KC"},kilocode:{id:"kilocode",alias:"kc",name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC"},cline:{id:"cline",alias:"cl",name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL"}},d={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",passthroughModels:!0,website:"https://openrouter.ai"},glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn"},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn"},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com"},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com"},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com"},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com"},gemini:{id:"gemini",alias:"gemini",name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev"},deepseek:{id:"deepseek",alias:"ds",name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com"},groq:{id:"groq",alias:"groq",name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com"},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai"},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai"},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai"},together:{id:"together",alias:"together",name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai"},fireworks:{id:"fireworks",alias:"fireworks",name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai"},cerebras:{id:"cerebras",alias:"cerebras",name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://www.cerebras.ai"},cohere:{id:"cohere",alias:"cohere",name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com"},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://developer.nvidia.com/nim"},nebius:{id:"nebius",alias:"nebius",name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com"},siliconflow:{id:"siliconflow",alias:"siliconflow",name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com"},hyperbolic:{id:"hyperbolic",alias:"hyp",name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz"},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com"},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com"},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana",icon:"image",color:"#FFD700",textIcon:"NB",website:"https://nanobananaapi.ai"}},m="openai-compatible-",c="anthropic-compatible-";function p(e){return"string"==typeof e&&e.startsWith(m)}function u(e){return"string"==typeof e&&e.startsWith(c)}let h={...s,...l,...d},g={oauth:{id:"oauth",name:"OAuth",icon:"lock"},apikey:{id:"apikey",name:"API Key",icon:"key"}};function k(e){for(let a of Object.values(h))if(a.alias===e||a.id===e)return a;return null}function b(e){let a=h[e];return a?.alias||e}Object.values(h).reduce((e,a)=>(e[a.alias]=a.id,e),{}),Object.values(h).reduce((e,a)=>(e[a.id]=a.alias,e),{});let f=["antigravity","kiro","github","codex","claude"];r(s,"FREE_PROVIDERS"),r(l,"OAUTH_PROVIDERS"),r(d,"APIKEY_PROVIDERS")},35144:(e,a,i)=>{i.d(a,{Xg:()=>r,vq:()=>n,KC:()=>s}),i(41463);let t={claude:{id:"claude",alias:"cc",format:"claude",executor:"default",baseUrl:"https://api.anthropic.com/v1/messages",urlSuffix:"?beta=true",authType:"oauth",authHeader:"x-api-key",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,oauth-2025-04-20,interleaved-thinking-2025-05-14,fine-grained-tool-streaming-2025-05-14,context-management-2025-06-27","Anthropic-Dangerous-Direct-Browser-Access":"true","User-Agent":"claude-cli/1.0.83 (external, cli)","X-App":"cli","X-Stainless-Helper-Method":"stream","X-Stainless-Retry-Count":"0","X-Stainless-Runtime-Version":"v24.3.0","X-Stainless-Package-Version":"0.55.1","X-Stainless-Runtime":"node","X-Stainless-Lang":"js","X-Stainless-Arch":"arm64","X-Stainless-Os":"MacOS","X-Stainless-Timeout":"60"},oauth:{clientIdEnv:"CLAUDE_OAUTH_CLIENT_ID",clientIdDefault:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",tokenUrl:"https://console.anthropic.com/v1/oauth/token"},models:[{id:"claude-opus-4-6",name:"Claude Opus 4.6"},{id:"claude-opus-4-5-20251101",name:"Claude 4.5 Opus"},{id:"claude-sonnet-4-5-20250929",name:"Claude 4.5 Sonnet"},{id:"claude-haiku-4-5-20251001",name:"Claude 4.5 Haiku"}]},gemini:{id:"gemini",alias:"gemini",format:"gemini",executor:"default",baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",urlBuilder:(e,a,i)=>`${e}/${a}:${i?"streamGenerateContent?alt=sse":"generateContent"}`,authType:"apikey",authHeader:"x-goog-api-key",oauth:{clientIdEnv:"GEMINI_OAUTH_CLIENT_ID",clientIdDefault:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecretEnv:"GEMINI_OAUTH_CLIENT_SECRET",clientSecretDefault:"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"},models:[{id:"gemini-3-pro-preview",name:"Gemini 3 Pro 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"}]},"gemini-cli":{id:"gemini-cli",alias:"gc",format:"gemini-cli",executor:"gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com/v1internal",urlBuilder:(e,a,i)=>`${e}:${i?"streamGenerateContent?alt=sse":"generateContent"}`,authType:"oauth",authHeader:"bearer",oauth:{clientIdEnv:"GEMINI_CLI_OAUTH_CLIENT_ID",clientIdDefault:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecretEnv:"GEMINI_CLI_OAUTH_CLIENT_SECRET",clientSecretDefault:"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"},models:[{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro 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"}]},codex:{id:"codex",alias:"cx",format:"openai-responses",executor:"codex",baseUrl:"https://chatgpt.com/backend-api/codex/responses",authType:"oauth",authHeader:"bearer",headers:{Version:"0.92.0","Openai-Beta":"responses=experimental","User-Agent":"codex-cli/0.92.0 (Windows 10.0.26100; x64)"},oauth:{clientIdEnv:"CODEX_OAUTH_CLIENT_ID",clientIdDefault:"app_EMoamEEZ73f0CkXaXp7hrann",clientSecretEnv:"CODEX_OAUTH_CLIENT_SECRET",clientSecretDefault:"",tokenUrl:"https://auth.openai.com/oauth/token"},models:[{id:"gpt-5.3-codex",name:"GPT 5.3 Codex"},{id:"gpt-5.3-codex-xhigh",name:"GPT 5.3 Codex (xHigh)"},{id:"gpt-5.3-codex-high",name:"GPT 5.3 Codex (High)"},{id:"gpt-5.3-codex-low",name:"GPT 5.3 Codex (Low)"},{id:"gpt-5.3-codex-none",name:"GPT 5.3 Codex (None)"},{id:"gpt-5.1-codex-mini",name:"GPT 5.1 Codex Mini"},{id:"gpt-5.1-codex-mini-high",name:"GPT 5.1 Codex Mini (High)"},{id:"gpt-5.2-codex",name:"GPT 5.2 Codex"},{id:"gpt-5.2",name:"GPT 5.2"},{id:"gpt-5.1-codex-max",name:"GPT 5.1 Codex Max"},{id:"gpt-5.1-codex",name:"GPT 5.1 Codex"},{id:"gpt-5.1",name:"GPT 5.1"},{id:"gpt-5-codex",name:"GPT 5 Codex"},{id:"gpt-5-codex-mini",name:"GPT 5 Codex Mini"}]},qwen:{id:"qwen",alias:"qw",format:"openai",executor:"default",baseUrl:"https://portal.qwen.ai/v1/chat/completions",authType:"oauth",authHeader:"bearer",headers:{"User-Agent":"google-api-nodejs-client/9.15.1","X-Goog-Api-Client":"gl-node/22.17.0"},oauth:{clientIdEnv:"QWEN_OAUTH_CLIENT_ID",clientIdDefault:"f0304373b74a44d2b584a3fb70ca9e56",tokenUrl:"https://chat.qwen.ai/api/v1/oauth2/token",authUrl:"https://chat.qwen.ai/api/v1/oauth2/device/code"},models:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-coder-flash",name:"Qwen3 Coder Flash"},{id:"vision-model",name:"Qwen3 Vision Model"}]},iflow:{id:"iflow",alias:"if",format:"openai",executor:"iflow",baseUrl:"https://apis.iflow.cn/v1/chat/completions",authType:"oauth",authHeader:"bearer",headers:{"User-Agent":"iFlow-Cli"},oauth:{clientIdEnv:"IFLOW_OAUTH_CLIENT_ID",clientIdDefault:"10009311001",clientSecretEnv:"IFLOW_OAUTH_CLIENT_SECRET",clientSecretDefault:"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://iflow.cn/oauth/token",authUrl:"https://iflow.cn/oauth"},models:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"kimi-k2",name:"Kimi K2"},{id:"kimi-k2-thinking",name:"Kimi K2 Thinking"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"deepseek-r1",name:"DeepSeek R1"},{id:"deepseek-v3.2-chat",name:"DeepSeek V3.2 Chat"},{id:"deepseek-v3.2-reasoner",name:"DeepSeek V3.2 Reasoner"},{id:"minimax-m2.1",name:"MiniMax M2.1"},{id:"glm-4.7",name:"GLM 4.7"}]},antigravity:{id:"antigravity",alias:"ag",format:"antigravity",executor:"antigravity",baseUrls:["https://daily-cloudcode-pa.googleapis.com","https://cloudcode-pa.googleapis.com"],urlBuilder:(e,a,i)=>`${e}${i?"/v1internal:streamGenerateContent?alt=sse":"/v1internal:generateContent"}`,authType:"oauth",authHeader:"bearer",headers:{"User-Agent":"antigravity/1.104.0 darwin/arm64"},oauth:{clientIdEnv:"ANTIGRAVITY_OAUTH_CLIENT_ID",clientIdDefault:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecretEnv:"ANTIGRAVITY_OAUTH_CLIENT_SECRET",clientSecretDefault:"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"},models:[{id:"claude-opus-4-6-thinking",name:"Claude Opus 4.6 Thinking"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6"},{id:"gemini-3.1-pro-high",name:"Gemini 3.1 Pro High"},{id:"gemini-3.1-pro-low",name:"Gemini 3.1 Pro Low"},{id:"gemini-3-flash",name:"Gemini 3 Flash"},{id:"gpt-oss-120b-medium",name:"GPT OSS 120B Medium"}]},github:{id:"github",alias:"gh",format:"openai",executor:"github",baseUrl:"https://api.githubcopilot.com/chat/completions",responsesBaseUrl:"https://api.githubcopilot.com/responses",authType:"oauth",authHeader:"bearer",headers:{"copilot-integration-id":"vscode-chat","editor-version":"vscode/1.107.1","editor-plugin-version":"copilot-chat/0.26.7","user-agent":"GitHubCopilotChat/0.26.7","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"},models:[{id:"gpt-4.1",name:"GPT-4.1"},{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o Mini"},{id:"gpt-4",name:"GPT-4"},{id:"gpt-3.5-turbo",name:"GPT-3.5 Turbo"},{id:"gpt-5",name:"GPT-5"},{id:"gpt-5-mini",name:"GPT-5 Mini"},{id:"gpt-5-codex",name:"GPT-5 Codex",targetFormat:"openai-responses"},{id:"gpt-5.1",name:"GPT-5.1"},{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",targetFormat:"openai-responses"},{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex Mini",targetFormat:"openai-responses"},{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",targetFormat:"openai-responses"},{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",targetFormat:"openai-responses"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"claude-opus-4.1",name:"Claude Opus 4.1"},{id:"claude-opus-4.6",name:"Claude Opus 4.6"},{id:"claude-opus-4-5-20251101",name:"Claude Opus 4.5 (Full ID)"},{id:"claude-sonnet-4",name:"Claude Sonnet 4"},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview"},{id:"grok-code-fast-1",name:"Grok Code Fast 1"},{id:"oswe-vscode-prime",name:"Raptor Mini"}]},kiro:{id:"kiro",alias:"kr",format:"kiro",executor:"kiro",baseUrl:"https://codewhisperer.us-east-1.amazonaws.com/generateAssistantResponse",authType:"oauth",authHeader:"bearer",headers:{"Content-Type":"application/json",Accept:"application/vnd.amazon.eventstream","X-Amz-Target":"AmazonCodeWhispererStreamingService.GenerateAssistantResponse","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"},oauth:{tokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authUrl:"https://prod.us-east-1.auth.desktop.kiro.dev"},models:[{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"}]},cursor:{id:"cursor",alias:"cu",format:"cursor",executor:"cursor",baseUrl:"https://api2.cursor.sh",chatPath:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",authType:"oauth",authHeader:"bearer",headers:{"connect-accept-encoding":"gzip","connect-protocol-version":"1","Content-Type":"application/connect+proto","User-Agent":"connect-es/1.6.1"},clientVersion:"1.1.3",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"}]},openai:{id:"openai",alias:"openai",format:"openai",executor:"default",baseUrl:"https://api.openai.com/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o Mini"},{id:"gpt-4-turbo",name:"GPT-4 Turbo"},{id:"o1",name:"O1"},{id:"o1-mini",name:"O1 Mini"}]},anthropic:{id:"anthropic",alias:"anthropic",format:"claude",executor:"default",baseUrl:"https://api.anthropic.com/v1/messages",urlSuffix:"?beta=true",authType:"apikey",authHeader:"x-api-key",headers:{"Anthropic-Version":"2023-06-01"},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"}]},openrouter:{id:"openrouter",alias:"openrouter",format:"openai",executor:"default",baseUrl:"https://openrouter.ai/api/v1/chat/completions",authType:"apikey",authHeader:"bearer",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"},models:[{id:"auto",name:"Auto (Best Available)"}]},glm:{id:"glm",alias:"glm",format:"claude",executor:"default",baseUrl:"https://api.z.ai/api/anthropic/v1/messages",urlSuffix:"?beta=true",authType:"apikey",authHeader:"x-api-key",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},models:[{id:"glm-4.7-flash",name:"GLM 4.7 Flash"},{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.5v",name:"GLM 4.5V (Vision)"},{id:"glm-4.5",name:"GLM 4.5"},{id:"glm-4.5-air",name:"GLM 4.5 Air"},{id:"glm-4-32b",name:"GLM 4 32B"}]},kimi:{id:"kimi",alias:"kimi",format:"openai",executor:"default",baseUrl:"https://api.moonshot.ai/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}]},"kimi-coding":{id:"kimi-coding",alias:"kmc",format:"claude",executor:"default",baseUrl:"https://api.kimi.com/coding/v1/messages",urlSuffix:"?beta=true",authType:"oauth",authHeader:"x-api-key",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},oauth:{clientIdEnv:"KIMI_CODING_OAUTH_CLIENT_ID",clientIdDefault:"17e5f671-d194-4dfb-9706-5516cb48c098",tokenUrl:"https://auth.kimi.com/api/oauth/token",refreshUrl:"https://auth.kimi.com/api/oauth/token",authUrl:"https://auth.kimi.com/api/oauth/device_authorization"},models:[{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}]},kilocode:{id:"kilocode",alias:"kc",format:"openrouter",executor:"openrouter",baseUrl:"https://api.kilo.ai/api/openrouter/chat/completions",modelsUrl:"https://api.kilo.ai/api/openrouter/models",authType:"oauth",authHeader:"Authorization",authPrefix:"Bearer ",oauth:{initiateUrl:"https://api.kilo.ai/api/device-auth/codes",pollUrlBase:"https://api.kilo.ai/api/device-auth/codes"},models:[{id:"openrouter/free",name:"Free Models Router"},{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen3 VL 235B A22B Thinking"},{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking 2507"},{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen3 VL 30B A3B Thinking"},{id:"stepfun/step-3.5-flash:free",name:"StepFun Step 3.5 Flash"},{id:"arcee-ai/trinity-large-preview:free",name:"Arcee AI Trinity Large Preview"},{id:"openai/gpt-4o-mini",name:"GPT-4o Mini"},{id:"openai/gpt-4.1-nano",name:"GPT-4.1 Nano"},{id:"openai/gpt-5-nano",name:"GPT-5 Nano"},{id:"openai/gpt-5-mini",name:"GPT-5 Mini"},{id:"anthropic/claude-3-haiku",name:"Claude 3 Haiku"},{id:"google/gemini-2.0-flash",name:"Gemini 2.0 Flash"},{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite"},{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek V3.1"},{id:"deepseek/deepseek-v3.2",name:"DeepSeek V3.2"},{id:"meta-llama/llama-3.3-70b-instruct",name:"Llama 3.3 70B"},{id:"meta-llama/llama-4-scout",name:"Llama 4 Scout"},{id:"meta-llama/llama-4-maverick",name:"Llama 4 Maverick"},{id:"qwen/qwen3-8b",name:"Qwen3 8B"},{id:"qwen/qwen3-32b",name:"Qwen3 32B"},{id:"qwen/qwen3-coder",name:"Qwen3 Coder 480B"},{id:"qwen/qwq-32b",name:"QwQ 32B"},{id:"mistralai/mistral-small-24b-instruct-2501",name:"Mistral Small 3"},{id:"mistralai/mistral-7b-instruct",name:"Mistral 7B"},{id:"x-ai/grok-code-fast-1",name:"Grok Code Fast 1"},{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5"}],passthroughModels:!0},cline:{id:"cline",alias:"cl",format:"openai",executor:"openai",baseUrl:"https://api.cline.bot/api/v1/chat/completions",authType:"oauth",authHeader:"Authorization",authPrefix:"Bearer ",oauth:{tokenUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh",authUrl:"https://api.cline.bot/api/v1/auth/authorize"},extraHeaders:{"HTTP-Referer":"https://cline.bot","X-Title":"Cline"},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"}],passthroughModels:!0},minimax:{id:"minimax",alias:"minimax",format:"claude",executor:"default",baseUrl:"https://api.minimax.io/anthropic/v1/messages",urlSuffix:"?beta=true",authType:"apikey",authHeader:"x-api-key",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},models:[{id:"MiniMax-M2.1",name:"MiniMax M2.1"}]},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",format:"claude",executor:"default",baseUrl:"https://api.minimaxi.com/anthropic/v1/messages",urlSuffix:"?beta=true",authType:"apikey",authHeader:"x-api-key",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},models:[{id:"MiniMax-M2.1",name:"MiniMax M2.1"}]},deepseek:{id:"deepseek",alias:"ds",format:"openai",executor:"default",baseUrl:"https://api.deepseek.com/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"deepseek-chat",name:"DeepSeek V3.2 Chat"},{id:"deepseek-reasoner",name:"DeepSeek V3.2 Reasoner"}]},groq:{id:"groq",alias:"groq",format:"openai",executor:"default",baseUrl:"https://api.groq.com/openai/v1/chat/completions",authType:"apikey",authHeader:"bearer",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"}]},xai:{id:"xai",alias:"xai",format:"openai",executor:"default",baseUrl:"https://api.x.ai/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{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"}]},mistral:{id:"mistral",alias:"mistral",format:"openai",executor:"default",baseUrl:"https://api.mistral.ai/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"mistral-large-latest",name:"Mistral Large 3"},{id:"codestral-latest",name:"Codestral"},{id:"mistral-medium-latest",name:"Mistral Medium 3"}]},perplexity:{id:"perplexity",alias:"pplx",format:"openai",executor:"default",baseUrl:"https://api.perplexity.ai/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"sonar-pro",name:"Sonar Pro"},{id:"sonar",name:"Sonar"}]},together:{id:"together",alias:"together",format:"openai",executor:"default",baseUrl:"https://api.together.xyz/v1/chat/completions",authType:"apikey",authHeader:"bearer",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"}]},fireworks:{id:"fireworks",alias:"fireworks",format:"openai",executor:"default",baseUrl:"https://api.fireworks.ai/inference/v1/chat/completions",authType:"apikey",authHeader:"bearer",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"}]},cerebras:{id:"cerebras",alias:"cerebras",format:"openai",executor:"default",baseUrl:"https://api.cerebras.ai/v1/chat/completions",authType:"apikey",authHeader:"bearer",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"}]},cohere:{id:"cohere",alias:"cohere",format:"openai",executor:"default",baseUrl:"https://api.cohere.com/v2/chat",authType:"apikey",authHeader:"bearer",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)"}]},nvidia:{id:"nvidia",alias:"nvidia",format:"openai",executor:"default",baseUrl:"https://integrate.api.nvidia.com/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5"},{id:"z-ai/glm4.7",name:"GLM 4.7"},{id:"deepseek-ai/deepseek-v3.2",name:"DeepSeek V3.2"},{id:"nvidia/llama-3.3-70b-instruct",name:"Llama 3.3 70B"},{id:"meta/llama-4-maverick-17b-128e-instruct",name:"Llama 4 Maverick"},{id:"deepseek/deepseek-r1",name:"DeepSeek R1"}]},nebius:{id:"nebius",alias:"nebius",format:"openai",executor:"default",baseUrl:"https://api.tokenfactory.nebius.com/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B Instruct"}]},siliconflow:{id:"siliconflow",alias:"siliconflow",format:"openai",executor:"default",baseUrl:"https://api.siliconflow.com/v1/chat/completions",authType:"apikey",authHeader:"bearer",models:[{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek V3.2"},{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B"},{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3 Coder 480B"},{id:"Qwen/Qwen3-32B",name:"Qwen3 32B"},{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5"},{id:"zai-org/GLM-4.7",name:"GLM 4.7"},{id:"openai/gpt-oss-120b",name:"GPT OSS 120B"},{id:"baidu/ERNIE-4.5-300B-A47B",name:"ERNIE 4.5 300B"}]},hyperbolic:{id:"hyperbolic",alias:"hyp",format:"openai",executor:"default",baseUrl:"https://api.hyperbolic.xyz/v1/chat/completions",authType:"apikey",authHeader:"bearer",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"}]}},o=new Map;for(let e of Object.values(t))e.alias&&e.alias!==e.id&&o.set(e.alias,e);let n=function(){let e={};for(let a of Object.values(t))if(a.models&&a.models.length>0){let i=a.alias||a.id;e[i]||(e[i]=a.models)}return e}(),r=function(){let e={};for(let a of Object.values(t))e[a.id]=a.alias||a.id;return e}();function s(e){return n[r[e]||e]||[]}},52529:(e,a,i)=>{i.d(a,{Q2:()=>t.Q2,fg:()=>t.fg,vQ:()=>o,MA:()=>t.MA,zN:()=>t.zN,B2:()=>n});var t=i(20909);i(81135);let o={name:"OmniRoute",description:"AI Gateway for Multi-Provider LLMs",version:"1.6.5"},n={storageKey:"theme",defaultTheme:"system"}},55846:(e,a,i)=>{i.d(a,{ThemeProvider:()=>r});var t=i(95155),o=i(12115),n=i(76851);function r({children:e}){let{initTheme:a}=(0,n.A)();return(0,o.useEffect)(()=>{a()},[a]),(0,t.jsx)(t.Fragment,{children:e})}},76851:(e,a,i)=>{i.d(a,{A:()=>s});var t=i(1934),o=i(31692),n=i(52529);function r(e){let a=document.documentElement,i=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";"dark"===("system"===e?i:e)?a.classList.add("dark"):a.classList.remove("dark")}let s=(0,t.v)()((0,o.Zr)((e,a)=>({theme:n.B2.defaultTheme,setTheme:a=>{e({theme:a}),r(a)},toggleTheme:()=>{let i="dark"===a().theme?"light":"dark";e({theme:i}),r(i)},initTheme:()=>{r(a().theme)}}),{name:n.B2.storageKey}))},81135:(e,a,i)=>{i.d(a,{KC:()=>t.KC,Xg:()=>t.Xg});var t=i(35144);Object.entries(i(20909).Q2).filter(([,e])=>e.passthroughModels).map(([e])=>e),Object.entries(t.vq).flatMap(([e,a])=>a.map(a=>({provider:e,model:a.id,name:a.name})))}}]);
package/app/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omniroute",
3
- "version": "1.6.3",
3
+ "version": "1.6.5",
4
4
  "description": "Smart AI Router with auto fallback — route to FREE & cheap models, zero downtime. Works with Cursor, Cline, Claude Desktop, Codex, and any OpenAI-compatible tool.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -48,6 +48,11 @@
48
48
  "build:cli": "node scripts/prepublish.mjs",
49
49
  "start": "node scripts/run-next.mjs start",
50
50
  "lint": "eslint .",
51
+ "electron:dev": "concurrently \"npm run dev\" \"wait-on http://localhost:20128 && cd electron && npm run dev\"",
52
+ "electron:build": "npm run build && cd electron && npm run build",
53
+ "electron:build:win": "npm run build && cd electron && npm run build:win",
54
+ "electron:build:mac": "npm run build && cd electron && npm run build:mac",
55
+ "electron:build:linux": "npm run build && cd electron && npm run build:linux",
51
56
  "test": "node --import tsx/esm --test tests/unit/*.test.mjs",
52
57
  "test:unit": "node --import tsx/esm --test tests/unit/*.test.mjs",
53
58
  "test:plan3": "node --test tests/unit/plan3-p0.test.mjs",
@@ -98,6 +103,8 @@
98
103
  "@types/node": "^25.2.3",
99
104
  "@types/react": "^19.2.14",
100
105
  "@types/react-dom": "^19.2.3",
106
+ "concurrently": "^9.2.1",
107
+ "cross-env": "^10.1.0",
101
108
  "eslint": "^9.39.2",
102
109
  "eslint-config-next": "16.1.6",
103
110
  "husky": "^9.1.7",
@@ -106,7 +113,8 @@
106
113
  "tailwindcss": "^4",
107
114
  "tsx": "^4.21.0",
108
115
  "typescript": "^5.9.3",
109
- "typescript-eslint": "^8.56.0"
116
+ "typescript-eslint": "^8.56.0",
117
+ "wait-on": "^9.0.4"
110
118
  },
111
119
  "lint-staged": {
112
120
  "*.{js,jsx,ts,tsx,mjs}": [
package/bin/omniroute.mjs CHANGED
@@ -12,15 +12,69 @@
12
12
  */
13
13
 
14
14
  import { spawn } from "node:child_process";
15
- import { existsSync } from "node:fs";
15
+ import { existsSync, readFileSync } from "node:fs";
16
16
  import { join, dirname } from "node:path";
17
17
  import { fileURLToPath } from "node:url";
18
+ import { homedir, platform } from "node:os";
18
19
 
19
20
  const __filename = fileURLToPath(import.meta.url);
20
21
  const __dirname = dirname(__filename);
21
22
  const ROOT = join(__dirname, "..");
22
23
  const APP_DIR = join(ROOT, "app");
23
24
 
25
+ // ── Load .env file (for global npm install) ─────────────────
26
+ function loadEnvFile() {
27
+ const envPaths = [];
28
+
29
+ // 1. DATA_DIR/.env if set
30
+ if (process.env.DATA_DIR) {
31
+ envPaths.push(join(process.env.DATA_DIR, ".env"));
32
+ }
33
+
34
+ // 2. ~/.omniroute/.env (default data dir)
35
+ const home = homedir();
36
+ if (home) {
37
+ if (platform() === "win32") {
38
+ const appData = process.env.APPDATA || join(home, "AppData", "Roaming");
39
+ envPaths.push(join(appData, "omniroute", ".env"));
40
+ } else {
41
+ envPaths.push(join(home, ".omniroute", ".env"));
42
+ }
43
+ }
44
+
45
+ // 3. ./.env (current working directory)
46
+ envPaths.push(join(process.cwd(), ".env"));
47
+
48
+ for (const envPath of envPaths) {
49
+ try {
50
+ if (existsSync(envPath)) {
51
+ const content = readFileSync(envPath, "utf-8");
52
+ for (const line of content.split("\n")) {
53
+ const trimmed = line.trim();
54
+ // Skip empty lines and comments
55
+ if (!trimmed || trimmed.startsWith("#")) continue;
56
+ const eqIdx = trimmed.indexOf("=");
57
+ if (eqIdx > 0) {
58
+ const key = trimmed.slice(0, eqIdx).trim();
59
+ const value = trimmed.slice(eqIdx + 1).trim();
60
+ // Don't override existing env vars
61
+ if (process.env[key] === undefined) {
62
+ // Remove surrounding quotes
63
+ process.env[key] = value.replace(/^["']|["']$/g, "");
64
+ }
65
+ }
66
+ }
67
+ console.log(` \x1b[2m📋 Loaded env from ${envPath}\x1b[0m`);
68
+ return;
69
+ }
70
+ } catch {
71
+ // Ignore errors reading env files
72
+ }
73
+ }
74
+ }
75
+
76
+ loadEnvFile();
77
+
24
78
  // ── Parse args ─────────────────────────────────────────────
25
79
  const args = process.argv.slice(2);
26
80
 
@@ -35,6 +89,10 @@ if (args.includes("--help") || args.includes("-h")) {
35
89
  omniroute --help Show this help
36
90
  omniroute --version Show version
37
91
 
92
+ \x1b[1mConfig:\x1b[0m
93
+ Loads .env from: ~/.omniroute/.env or ./.env
94
+ Memory limit: OMNIROUTE_MEMORY_MB (default: 512)
95
+
38
96
  \x1b[1mAfter starting:\x1b[0m
39
97
  Dashboard: http://localhost:<dashboard-port>
40
98
  API: http://localhost:<api-port>/v1
@@ -83,11 +141,11 @@ const noOpen = args.includes("--no-open");
83
141
  // ── Banner ─────────────────────────────────────────────────
84
142
  console.log(`
85
143
  \x1b[36m ____ _ ____ _
86
- / __ \\ (_) __ \\ | |
87
- | | | |_ __ ___ _ __ _| |__) |___ _ _| |_ ___
88
- | | | | '_ \` _ \\| '_ \\ | _ // _ \\| | | | __/ _ \\
89
- | |__| | | | | | | | | | | | \\ \\ (_) | |_| | || __/
90
- \\____/|_| |_| |_|_| |_|_|_| \\_\\___/ \\__,_|\\__\\___|
144
+ / __ \\ (_) __ \\ | |
145
+ | | | |_ __ ___ _ __ _| |__) |___ _ _| |_ ___
146
+ | | | | '_ \` _ \\| '_ \\ | _ // _ \\| | | | __/ _ \\
147
+ | |__| | | | | | | | | | | | \\ \\ (_) | |_| | || __/
148
+ \\____/|_| |_| |_|_| |_|_|_| \\_\\___/ \\__,_|\\__\\___|
91
149
  \x1b[0m`);
92
150
 
93
151
  // ── Node.js version check ──────────────────────────────────
@@ -117,6 +175,11 @@ if (!existsSync(serverJs)) {
117
175
  // ── Start server ───────────────────────────────────────────
118
176
  console.log(` \x1b[2m⏳ Starting server...\x1b[0m\n`);
119
177
 
178
+ // Sanitize memory limit — parseInt to prevent command injection (#150)
179
+ const rawMemory = parseInt(process.env.OMNIROUTE_MEMORY_MB || "512", 10);
180
+ const memoryLimit =
181
+ Number.isFinite(rawMemory) && rawMemory >= 64 && rawMemory <= 16384 ? rawMemory : 512;
182
+
120
183
  const env = {
121
184
  ...process.env,
122
185
  OMNIROUTE_PORT: String(port),
@@ -125,9 +188,10 @@ const env = {
125
188
  API_PORT: String(apiPort),
126
189
  HOSTNAME: "0.0.0.0",
127
190
  NODE_ENV: "production",
191
+ NODE_OPTIONS: `--max-old-space-size=${memoryLimit}`,
128
192
  };
129
193
 
130
- const server = spawn("node", [serverJs], {
194
+ const server = spawn("node", [`--max-old-space-size=${memoryLimit}`, serverJs], {
131
195
  cwd: APP_DIR,
132
196
  env,
133
197
  stdio: "pipe",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omniroute",
3
- "version": "1.6.3",
3
+ "version": "1.6.5",
4
4
  "description": "Smart AI Router with auto fallback — route to FREE & cheap models, zero downtime. Works with Cursor, Cline, Claude Desktop, Codex, and any OpenAI-compatible tool.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -48,6 +48,11 @@
48
48
  "build:cli": "node scripts/prepublish.mjs",
49
49
  "start": "node scripts/run-next.mjs start",
50
50
  "lint": "eslint .",
51
+ "electron:dev": "concurrently \"npm run dev\" \"wait-on http://localhost:20128 && cd electron && npm run dev\"",
52
+ "electron:build": "npm run build && cd electron && npm run build",
53
+ "electron:build:win": "npm run build && cd electron && npm run build:win",
54
+ "electron:build:mac": "npm run build && cd electron && npm run build:mac",
55
+ "electron:build:linux": "npm run build && cd electron && npm run build:linux",
51
56
  "test": "node --import tsx/esm --test tests/unit/*.test.mjs",
52
57
  "test:unit": "node --import tsx/esm --test tests/unit/*.test.mjs",
53
58
  "test:plan3": "node --test tests/unit/plan3-p0.test.mjs",
@@ -98,6 +103,8 @@
98
103
  "@types/node": "^25.2.3",
99
104
  "@types/react": "^19.2.14",
100
105
  "@types/react-dom": "^19.2.3",
106
+ "concurrently": "^9.2.1",
107
+ "cross-env": "^10.1.0",
101
108
  "eslint": "^9.39.2",
102
109
  "eslint-config-next": "16.1.6",
103
110
  "husky": "^9.1.7",
@@ -106,7 +113,8 @@
106
113
  "tailwindcss": "^4",
107
114
  "tsx": "^4.21.0",
108
115
  "typescript": "^5.9.3",
109
- "typescript-eslint": "^8.56.0"
116
+ "typescript-eslint": "^8.56.0",
117
+ "wait-on": "^9.0.4"
110
118
  },
111
119
  "lint-staged": {
112
120
  "*.{js,jsx,ts,tsx,mjs}": [