axonrouter 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1013) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +3 -3
  3. package/.next/standalone/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
  4. package/.next/standalone/.next/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  5. package/.next/standalone/.next/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  6. package/.next/standalone/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  7. package/.next/standalone/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/.next/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/.next/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  10. package/.next/standalone/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/.next/server/app/(dashboard)/dashboard/intelligence/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/(dashboard)/dashboard/mcp/page.js.nft.json +1 -1
  13. package/.next/standalone/.next/server/app/(dashboard)/dashboard/mcp/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  16. package/.next/standalone/.next/server/app/(dashboard)/dashboard/media-providers/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  18. package/.next/standalone/.next/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  19. package/.next/standalone/.next/server/app/(dashboard)/dashboard/morph/page_client-reference-manifest.js +1 -1
  20. package/.next/standalone/.next/server/app/(dashboard)/dashboard/opencode/page.js.nft.json +1 -1
  21. package/.next/standalone/.next/server/app/(dashboard)/dashboard/opencode/page_client-reference-manifest.js +1 -1
  22. package/.next/standalone/.next/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  23. package/.next/standalone/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  24. package/.next/standalone/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  25. package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  26. package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  28. package/.next/standalone/.next/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  29. package/.next/standalone/.next/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
  31. package/.next/standalone/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/.next/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  33. package/.next/standalone/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  34. package/.next/standalone/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  35. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  36. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  37. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  38. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  39. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  40. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  41. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  42. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  43. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  44. package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
  45. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  46. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  47. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  48. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  49. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  50. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  51. package/.next/standalone/.next/server/app/api/auth/login/route.js.nft.json +1 -1
  52. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  53. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  54. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  55. package/.next/standalone/.next/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  56. package/.next/standalone/.next/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  57. package/.next/standalone/.next/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  58. package/.next/standalone/.next/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  59. package/.next/standalone/.next/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  60. package/.next/standalone/.next/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  61. package/.next/standalone/.next/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  62. package/.next/standalone/.next/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  63. package/.next/standalone/.next/server/app/api/cli-tools/pi-settings/route.js.nft.json +1 -1
  64. package/.next/standalone/.next/server/app/api/cloud/auth/route.js.nft.json +1 -1
  65. package/.next/standalone/.next/server/app/api/cloud/credentials/update/route.js.nft.json +1 -1
  66. package/.next/standalone/.next/server/app/api/cloud/model/resolve/route.js.nft.json +1 -1
  67. package/.next/standalone/.next/server/app/api/cloud/models/alias/route.js.nft.json +1 -1
  68. package/.next/standalone/.next/server/app/api/cloud-urls/[id]/status/route.js.nft.json +1 -1
  69. package/.next/standalone/.next/server/app/api/cloud-urls/route.js.nft.json +1 -1
  70. package/.next/standalone/.next/server/app/api/cloud-urls/sync/route.js.nft.json +1 -1
  71. package/.next/standalone/.next/server/app/api/cloud-urls/test/route.js.nft.json +1 -1
  72. package/.next/standalone/.next/server/app/api/combos/[id]/route.js.nft.json +1 -1
  73. package/.next/standalone/.next/server/app/api/combos/reorder/route.js.nft.json +1 -1
  74. package/.next/standalone/.next/server/app/api/combos/route.js.nft.json +1 -1
  75. package/.next/standalone/.next/server/app/api/combos/test/route.js +1 -1
  76. package/.next/standalone/.next/server/app/api/combos/test/route.js.nft.json +1 -1
  77. package/.next/standalone/.next/server/app/api/credentials/export/route.js.nft.json +1 -1
  78. package/.next/standalone/.next/server/app/api/credentials/import/route.js.nft.json +1 -1
  79. package/.next/standalone/.next/server/app/api/evals/route.js.nft.json +1 -1
  80. package/.next/standalone/.next/server/app/api/go-router/restart/route.js.nft.json +1 -1
  81. package/.next/standalone/.next/server/app/api/go-router/route.js.nft.json +1 -1
  82. package/.next/standalone/.next/server/app/api/incidents/actions/route.js.nft.json +1 -1
  83. package/.next/standalone/.next/server/app/api/incidents/route.js.nft.json +1 -1
  84. package/.next/standalone/.next/server/app/api/internal/proxy/report/route.js.nft.json +1 -1
  85. package/.next/standalone/.next/server/app/api/internal/proxy/resolve/route.js.nft.json +1 -1
  86. package/.next/standalone/.next/server/app/api/keys/[id]/route.js.nft.json +1 -1
  87. package/.next/standalone/.next/server/app/api/keys/route.js.nft.json +1 -1
  88. package/.next/standalone/.next/server/app/api/mcp/audit/route.js.nft.json +1 -1
  89. package/.next/standalone/.next/server/app/api/mcp/audit/stats/route.js.nft.json +1 -1
  90. package/.next/standalone/.next/server/app/api/mcp/invoke/route.js.nft.json +1 -1
  91. package/.next/standalone/.next/server/app/api/mcp/sse/route.js.nft.json +1 -1
  92. package/.next/standalone/.next/server/app/api/mcp/status/route.js.nft.json +1 -1
  93. package/.next/standalone/.next/server/app/api/mcp/stream/route.js.nft.json +1 -1
  94. package/.next/standalone/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
  95. package/.next/standalone/.next/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  96. package/.next/standalone/.next/server/app/api/model-combo-mappings/[id]/route.js.nft.json +1 -1
  97. package/.next/standalone/.next/server/app/api/model-combo-mappings/route.js.nft.json +1 -1
  98. package/.next/standalone/.next/server/app/api/model-sync/route.js +1 -1
  99. package/.next/standalone/.next/server/app/api/model-sync/route.js.nft.json +1 -1
  100. package/.next/standalone/.next/server/app/api/models/alias/route.js.nft.json +1 -1
  101. package/.next/standalone/.next/server/app/api/models/availability/route.js.nft.json +1 -1
  102. package/.next/standalone/.next/server/app/api/models/custom/route.js.nft.json +1 -1
  103. package/.next/standalone/.next/server/app/api/models/disabled/route.js.nft.json +1 -1
  104. package/.next/standalone/.next/server/app/api/models/route.js.nft.json +1 -1
  105. package/.next/standalone/.next/server/app/api/models/test/route.js.nft.json +1 -1
  106. package/.next/standalone/.next/server/app/api/morph/test-key/route.js.nft.json +1 -1
  107. package/.next/standalone/.next/server/app/api/morph/usage/requests/route.js.nft.json +1 -1
  108. package/.next/standalone/.next/server/app/api/morph/usage/stats/route.js.nft.json +1 -1
  109. package/.next/standalone/.next/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  110. package/.next/standalone/.next/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  111. package/.next/standalone/.next/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  112. package/.next/standalone/.next/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  113. package/.next/standalone/.next/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  114. package/.next/standalone/.next/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  115. package/.next/standalone/.next/server/app/api/opencode/bundle/preview/route.js +3 -3
  116. package/.next/standalone/.next/server/app/api/opencode/bundle/preview/route.js.nft.json +1 -1
  117. package/.next/standalone/.next/server/app/api/opencode/preferences/route.js.nft.json +1 -1
  118. package/.next/standalone/.next/server/app/api/opencode/sync/bundle/route.js +1 -1
  119. package/.next/standalone/.next/server/app/api/opencode/sync/bundle/route.js.nft.json +1 -1
  120. package/.next/standalone/.next/server/app/api/opencode/sync/tokens/[id]/route.js.nft.json +1 -1
  121. package/.next/standalone/.next/server/app/api/opencode/sync/tokens/route.js.nft.json +1 -1
  122. package/.next/standalone/.next/server/app/api/opencode/sync/version/route.js +1 -1
  123. package/.next/standalone/.next/server/app/api/opencode/sync/version/route.js.nft.json +1 -1
  124. package/.next/standalone/.next/server/app/api/outcome-intelligence/route.js.nft.json +1 -1
  125. package/.next/standalone/.next/server/app/api/plugin/usage-summary/route.js.nft.json +1 -1
  126. package/.next/standalone/.next/server/app/api/pricing/route.js.nft.json +1 -1
  127. package/.next/standalone/.next/server/app/api/provider-models/route.js.nft.json +1 -1
  128. package/.next/standalone/.next/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  129. package/.next/standalone/.next/server/app/api/provider-nodes/route.js.nft.json +1 -1
  130. package/.next/standalone/.next/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  131. package/.next/standalone/.next/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  132. package/.next/standalone/.next/server/app/api/providers/[id]/route.js.nft.json +1 -1
  133. package/.next/standalone/.next/server/app/api/providers/[id]/sync-models/route.js.nft.json +1 -1
  134. package/.next/standalone/.next/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  135. package/.next/standalone/.next/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  136. package/.next/standalone/.next/server/app/api/providers/client/route.js.nft.json +1 -1
  137. package/.next/standalone/.next/server/app/api/providers/codex/instructions/route.js.nft.json +1 -1
  138. package/.next/standalone/.next/server/app/api/providers/commandcode/instructions/route.js.nft.json +1 -1
  139. package/.next/standalone/.next/server/app/api/providers/morph/instructions/route.js.nft.json +1 -1
  140. package/.next/standalone/.next/server/app/api/providers/route.js.nft.json +1 -1
  141. package/.next/standalone/.next/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  142. package/.next/standalone/.next/server/app/api/providers/validate/route.js.nft.json +1 -1
  143. package/.next/standalone/.next/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  144. package/.next/standalone/.next/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  145. package/.next/standalone/.next/server/app/api/proxy-pools/route.js.nft.json +1 -1
  146. package/.next/standalone/.next/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  147. package/.next/standalone/.next/server/app/api/r2/backup/route.js.nft.json +1 -1
  148. package/.next/standalone/.next/server/app/api/r2/info/route.js.nft.json +1 -1
  149. package/.next/standalone/.next/server/app/api/r2/restore/route.js.nft.json +1 -1
  150. package/.next/standalone/.next/server/app/api/r2/route.js.nft.json +1 -1
  151. package/.next/standalone/.next/server/app/api/r2/test/route.js.nft.json +1 -1
  152. package/.next/standalone/.next/server/app/api/routing/latency/route.js.nft.json +1 -1
  153. package/.next/standalone/.next/server/app/api/routing/optimizer/route.js.nft.json +1 -1
  154. package/.next/standalone/.next/server/app/api/routing/profile-preview/route.js.nft.json +1 -1
  155. package/.next/standalone/.next/server/app/api/settings/database/route.js.nft.json +1 -1
  156. package/.next/standalone/.next/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  157. package/.next/standalone/.next/server/app/api/settings/require-login/route.js.nft.json +1 -1
  158. package/.next/standalone/.next/server/app/api/settings/route.js.nft.json +1 -1
  159. package/.next/standalone/.next/server/app/api/skills/[id]/route.js.nft.json +1 -1
  160. package/.next/standalone/.next/server/app/api/skills/route.js.nft.json +1 -1
  161. package/.next/standalone/.next/server/app/api/synced-available-models/route.js.nft.json +1 -1
  162. package/.next/standalone/.next/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  163. package/.next/standalone/.next/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  164. package/.next/standalone/.next/server/app/api/translator/load/route.js.nft.json +1 -1
  165. package/.next/standalone/.next/server/app/api/translator/save/route.js.nft.json +1 -1
  166. package/.next/standalone/.next/server/app/api/translator/send/route.js.nft.json +1 -1
  167. package/.next/standalone/.next/server/app/api/translator/translate/route.js.nft.json +1 -1
  168. package/.next/standalone/.next/server/app/api/tunnel/status/route.js.nft.json +1 -1
  169. package/.next/standalone/.next/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  170. package/.next/standalone/.next/server/app/api/tunnel/tailscale-start-daemon/route.js.nft.json +1 -1
  171. package/.next/standalone/.next/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  172. package/.next/standalone/.next/server/app/api/usage/analytics/route.js.nft.json +1 -1
  173. package/.next/standalone/.next/server/app/api/usage/chart/route.js.nft.json +1 -1
  174. package/.next/standalone/.next/server/app/api/usage/history/route.js.nft.json +1 -1
  175. package/.next/standalone/.next/server/app/api/usage/logs/route.js.nft.json +1 -1
  176. package/.next/standalone/.next/server/app/api/usage/providers/route.js.nft.json +1 -1
  177. package/.next/standalone/.next/server/app/api/usage/request-details/[id]/replay/route.js.nft.json +1 -1
  178. package/.next/standalone/.next/server/app/api/usage/request-details/[id]/route.js.nft.json +1 -1
  179. package/.next/standalone/.next/server/app/api/usage/request-details/route.js.nft.json +1 -1
  180. package/.next/standalone/.next/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  181. package/.next/standalone/.next/server/app/api/usage/stats/route.js.nft.json +1 -1
  182. package/.next/standalone/.next/server/app/api/usage/stream/route.js.nft.json +1 -1
  183. package/.next/standalone/.next/server/app/api/usage-worker/run/route.js.nft.json +1 -1
  184. package/.next/standalone/.next/server/app/api/usage-worker/status/route.js.nft.json +1 -1
  185. package/.next/standalone/.next/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  186. package/.next/standalone/.next/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  187. package/.next/standalone/.next/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  188. package/.next/standalone/.next/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  189. package/.next/standalone/.next/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  190. package/.next/standalone/.next/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  191. package/.next/standalone/.next/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  192. package/.next/standalone/.next/server/app/api/v1/messages/route.js.nft.json +1 -1
  193. package/.next/standalone/.next/server/app/api/v1/models/route.js +1 -1
  194. package/.next/standalone/.next/server/app/api/v1/models/route.js.nft.json +1 -1
  195. package/.next/standalone/.next/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  196. package/.next/standalone/.next/server/app/api/v1/responses/route.js.nft.json +1 -1
  197. package/.next/standalone/.next/server/app/api/v1/route.js.nft.json +1 -1
  198. package/.next/standalone/.next/server/app/api/v1/unified/route.js.nft.json +1 -1
  199. package/.next/standalone/.next/server/app/api/v1/video/generations/route.js.nft.json +1 -1
  200. package/.next/standalone/.next/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  201. package/.next/standalone/.next/server/app/callback/page_client-reference-manifest.js +1 -1
  202. package/.next/standalone/.next/server/app/callback.html +1 -1
  203. package/.next/standalone/.next/server/app/callback.rsc +2 -2
  204. package/.next/standalone/.next/server/app/callback.segments/_full.segment.rsc +2 -2
  205. package/.next/standalone/.next/server/app/callback.segments/_head.segment.rsc +1 -1
  206. package/.next/standalone/.next/server/app/callback.segments/_index.segment.rsc +2 -2
  207. package/.next/standalone/.next/server/app/callback.segments/_tree.segment.rsc +2 -2
  208. package/.next/standalone/.next/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  209. package/.next/standalone/.next/server/app/callback.segments/callback.segment.rsc +1 -1
  210. package/.next/standalone/.next/server/app/dashboard/analytics.html +2 -2
  211. package/.next/standalone/.next/server/app/dashboard/analytics.rsc +6 -6
  212. package/.next/standalone/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics/__PAGE__.segment.rsc +2 -2
  213. package/.next/standalone/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics.segment.rsc +1 -1
  214. package/.next/standalone/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  215. package/.next/standalone/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  216. package/.next/standalone/.next/server/app/dashboard/analytics.segments/_full.segment.rsc +6 -6
  217. package/.next/standalone/.next/server/app/dashboard/analytics.segments/_head.segment.rsc +1 -1
  218. package/.next/standalone/.next/server/app/dashboard/analytics.segments/_index.segment.rsc +3 -3
  219. package/.next/standalone/.next/server/app/dashboard/analytics.segments/_tree.segment.rsc +2 -2
  220. package/.next/standalone/.next/server/app/dashboard/basic-chat.html +2 -2
  221. package/.next/standalone/.next/server/app/dashboard/basic-chat.rsc +6 -6
  222. package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  223. package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  224. package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  225. package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  226. package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
  227. package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  228. package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/_index.segment.rsc +3 -3
  229. package/.next/standalone/.next/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
  230. package/.next/standalone/.next/server/app/dashboard/cli-tools.html +2 -2
  231. package/.next/standalone/.next/server/app/dashboard/cli-tools.rsc +7 -7
  232. package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  233. package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  234. package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  235. package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  236. package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/_full.segment.rsc +7 -7
  237. package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  238. package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/_index.segment.rsc +3 -3
  239. package/.next/standalone/.next/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
  240. package/.next/standalone/.next/server/app/dashboard/combos.html +2 -2
  241. package/.next/standalone/.next/server/app/dashboard/combos.rsc +6 -6
  242. package/.next/standalone/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  243. package/.next/standalone/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  244. package/.next/standalone/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  245. package/.next/standalone/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  246. package/.next/standalone/.next/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
  247. package/.next/standalone/.next/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  248. package/.next/standalone/.next/server/app/dashboard/combos.segments/_index.segment.rsc +3 -3
  249. package/.next/standalone/.next/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  250. package/.next/standalone/.next/server/app/dashboard/endpoint.html +1 -1
  251. package/.next/standalone/.next/server/app/dashboard/endpoint.rsc +7 -7
  252. package/.next/standalone/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  253. package/.next/standalone/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  254. package/.next/standalone/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  255. package/.next/standalone/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  256. package/.next/standalone/.next/server/app/dashboard/endpoint.segments/_full.segment.rsc +7 -7
  257. package/.next/standalone/.next/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  258. package/.next/standalone/.next/server/app/dashboard/endpoint.segments/_index.segment.rsc +3 -3
  259. package/.next/standalone/.next/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  260. package/.next/standalone/.next/server/app/dashboard/intelligence.html +1 -1
  261. package/.next/standalone/.next/server/app/dashboard/intelligence.rsc +5 -5
  262. package/.next/standalone/.next/server/app/dashboard/intelligence.segments/!KGRhc2hib2FyZCk/dashboard/intelligence/__PAGE__.segment.rsc +1 -1
  263. package/.next/standalone/.next/server/app/dashboard/intelligence.segments/!KGRhc2hib2FyZCk/dashboard/intelligence.segment.rsc +1 -1
  264. package/.next/standalone/.next/server/app/dashboard/intelligence.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  265. package/.next/standalone/.next/server/app/dashboard/intelligence.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  266. package/.next/standalone/.next/server/app/dashboard/intelligence.segments/_full.segment.rsc +5 -5
  267. package/.next/standalone/.next/server/app/dashboard/intelligence.segments/_head.segment.rsc +1 -1
  268. package/.next/standalone/.next/server/app/dashboard/intelligence.segments/_index.segment.rsc +3 -3
  269. package/.next/standalone/.next/server/app/dashboard/intelligence.segments/_tree.segment.rsc +2 -2
  270. package/.next/standalone/.next/server/app/dashboard/mcp.html +4 -4
  271. package/.next/standalone/.next/server/app/dashboard/mcp.rsc +7 -7
  272. package/.next/standalone/.next/server/app/dashboard/mcp.segments/!KGRhc2hib2FyZCk/dashboard/mcp/__PAGE__.segment.rsc +2 -2
  273. package/.next/standalone/.next/server/app/dashboard/mcp.segments/!KGRhc2hib2FyZCk/dashboard/mcp.segment.rsc +1 -1
  274. package/.next/standalone/.next/server/app/dashboard/mcp.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  275. package/.next/standalone/.next/server/app/dashboard/mcp.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  276. package/.next/standalone/.next/server/app/dashboard/mcp.segments/_full.segment.rsc +7 -7
  277. package/.next/standalone/.next/server/app/dashboard/mcp.segments/_head.segment.rsc +1 -1
  278. package/.next/standalone/.next/server/app/dashboard/mcp.segments/_index.segment.rsc +3 -3
  279. package/.next/standalone/.next/server/app/dashboard/mcp.segments/_tree.segment.rsc +2 -2
  280. package/.next/standalone/.next/server/app/dashboard/media-providers.html +2 -2
  281. package/.next/standalone/.next/server/app/dashboard/media-providers.rsc +6 -6
  282. package/.next/standalone/.next/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/__PAGE__.segment.rsc +2 -2
  283. package/.next/standalone/.next/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  284. package/.next/standalone/.next/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  285. package/.next/standalone/.next/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  286. package/.next/standalone/.next/server/app/dashboard/media-providers.segments/_full.segment.rsc +6 -6
  287. package/.next/standalone/.next/server/app/dashboard/media-providers.segments/_head.segment.rsc +1 -1
  288. package/.next/standalone/.next/server/app/dashboard/media-providers.segments/_index.segment.rsc +3 -3
  289. package/.next/standalone/.next/server/app/dashboard/media-providers.segments/_tree.segment.rsc +2 -2
  290. package/.next/standalone/.next/server/app/dashboard/mitm.html +2 -2
  291. package/.next/standalone/.next/server/app/dashboard/mitm.rsc +7 -7
  292. package/.next/standalone/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  293. package/.next/standalone/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  294. package/.next/standalone/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  295. package/.next/standalone/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  296. package/.next/standalone/.next/server/app/dashboard/mitm.segments/_full.segment.rsc +7 -7
  297. package/.next/standalone/.next/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  298. package/.next/standalone/.next/server/app/dashboard/mitm.segments/_index.segment.rsc +3 -3
  299. package/.next/standalone/.next/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
  300. package/.next/standalone/.next/server/app/dashboard/morph.html +1 -1
  301. package/.next/standalone/.next/server/app/dashboard/morph.rsc +6 -6
  302. package/.next/standalone/.next/server/app/dashboard/morph.segments/!KGRhc2hib2FyZCk/dashboard/morph/__PAGE__.segment.rsc +2 -2
  303. package/.next/standalone/.next/server/app/dashboard/morph.segments/!KGRhc2hib2FyZCk/dashboard/morph.segment.rsc +1 -1
  304. package/.next/standalone/.next/server/app/dashboard/morph.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  305. package/.next/standalone/.next/server/app/dashboard/morph.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  306. package/.next/standalone/.next/server/app/dashboard/morph.segments/_full.segment.rsc +6 -6
  307. package/.next/standalone/.next/server/app/dashboard/morph.segments/_head.segment.rsc +1 -1
  308. package/.next/standalone/.next/server/app/dashboard/morph.segments/_index.segment.rsc +3 -3
  309. package/.next/standalone/.next/server/app/dashboard/morph.segments/_tree.segment.rsc +2 -2
  310. package/.next/standalone/.next/server/app/dashboard/opencode.html +1 -1
  311. package/.next/standalone/.next/server/app/dashboard/opencode.rsc +6 -6
  312. package/.next/standalone/.next/server/app/dashboard/opencode.segments/!KGRhc2hib2FyZCk/dashboard/opencode/__PAGE__.segment.rsc +2 -2
  313. package/.next/standalone/.next/server/app/dashboard/opencode.segments/!KGRhc2hib2FyZCk/dashboard/opencode.segment.rsc +1 -1
  314. package/.next/standalone/.next/server/app/dashboard/opencode.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  315. package/.next/standalone/.next/server/app/dashboard/opencode.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  316. package/.next/standalone/.next/server/app/dashboard/opencode.segments/_full.segment.rsc +6 -6
  317. package/.next/standalone/.next/server/app/dashboard/opencode.segments/_head.segment.rsc +1 -1
  318. package/.next/standalone/.next/server/app/dashboard/opencode.segments/_index.segment.rsc +3 -3
  319. package/.next/standalone/.next/server/app/dashboard/opencode.segments/_tree.segment.rsc +2 -2
  320. package/.next/standalone/.next/server/app/dashboard/profile.html +1 -1
  321. package/.next/standalone/.next/server/app/dashboard/profile.rsc +6 -6
  322. package/.next/standalone/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  323. package/.next/standalone/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  324. package/.next/standalone/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  325. package/.next/standalone/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  326. package/.next/standalone/.next/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
  327. package/.next/standalone/.next/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  328. package/.next/standalone/.next/server/app/dashboard/profile.segments/_index.segment.rsc +3 -3
  329. package/.next/standalone/.next/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  330. package/.next/standalone/.next/server/app/dashboard/providers/new.html +2 -2
  331. package/.next/standalone/.next/server/app/dashboard/providers/new.rsc +6 -6
  332. package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  333. package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  334. package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  335. package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  336. package/.next/standalone/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  337. package/.next/standalone/.next/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
  338. package/.next/standalone/.next/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  339. package/.next/standalone/.next/server/app/dashboard/providers/new.segments/_index.segment.rsc +3 -3
  340. package/.next/standalone/.next/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  341. package/.next/standalone/.next/server/app/dashboard/providers.html +2 -2
  342. package/.next/standalone/.next/server/app/dashboard/providers.rsc +6 -6
  343. package/.next/standalone/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  344. package/.next/standalone/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  345. package/.next/standalone/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  346. package/.next/standalone/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  347. package/.next/standalone/.next/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
  348. package/.next/standalone/.next/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  349. package/.next/standalone/.next/server/app/dashboard/providers.segments/_index.segment.rsc +3 -3
  350. package/.next/standalone/.next/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
  351. package/.next/standalone/.next/server/app/dashboard/proxy-pools.html +2 -2
  352. package/.next/standalone/.next/server/app/dashboard/proxy-pools.rsc +6 -6
  353. package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  354. package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  355. package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  356. package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  357. package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
  358. package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  359. package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +3 -3
  360. package/.next/standalone/.next/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
  361. package/.next/standalone/.next/server/app/dashboard/quota.html +2 -2
  362. package/.next/standalone/.next/server/app/dashboard/quota.rsc +6 -6
  363. package/.next/standalone/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +2 -2
  364. package/.next/standalone/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  365. package/.next/standalone/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  366. package/.next/standalone/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  367. package/.next/standalone/.next/server/app/dashboard/quota.segments/_full.segment.rsc +6 -6
  368. package/.next/standalone/.next/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  369. package/.next/standalone/.next/server/app/dashboard/quota.segments/_index.segment.rsc +3 -3
  370. package/.next/standalone/.next/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
  371. package/.next/standalone/.next/server/app/dashboard/settings/pricing.html +1 -1
  372. package/.next/standalone/.next/server/app/dashboard/settings/pricing.rsc +5 -5
  373. package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  374. package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing.segment.rsc +1 -1
  375. package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +1 -1
  376. package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  377. package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  378. package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +5 -5
  379. package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  380. package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +3 -3
  381. package/.next/standalone/.next/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  382. package/.next/standalone/.next/server/app/dashboard/settings.html +2 -2
  383. package/.next/standalone/.next/server/app/dashboard/settings.rsc +6 -6
  384. package/.next/standalone/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings/__PAGE__.segment.rsc +2 -2
  385. package/.next/standalone/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +1 -1
  386. package/.next/standalone/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  387. package/.next/standalone/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  388. package/.next/standalone/.next/server/app/dashboard/settings.segments/_full.segment.rsc +6 -6
  389. package/.next/standalone/.next/server/app/dashboard/settings.segments/_head.segment.rsc +1 -1
  390. package/.next/standalone/.next/server/app/dashboard/settings.segments/_index.segment.rsc +3 -3
  391. package/.next/standalone/.next/server/app/dashboard/settings.segments/_tree.segment.rsc +2 -2
  392. package/.next/standalone/.next/server/app/dashboard/skills.html +2 -2
  393. package/.next/standalone/.next/server/app/dashboard/skills.rsc +6 -6
  394. package/.next/standalone/.next/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
  395. package/.next/standalone/.next/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
  396. package/.next/standalone/.next/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  397. package/.next/standalone/.next/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  398. package/.next/standalone/.next/server/app/dashboard/skills.segments/_full.segment.rsc +6 -6
  399. package/.next/standalone/.next/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
  400. package/.next/standalone/.next/server/app/dashboard/skills.segments/_index.segment.rsc +3 -3
  401. package/.next/standalone/.next/server/app/dashboard/skills.segments/_tree.segment.rsc +2 -2
  402. package/.next/standalone/.next/server/app/dashboard/translator.html +2 -2
  403. package/.next/standalone/.next/server/app/dashboard/translator.rsc +6 -6
  404. package/.next/standalone/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  405. package/.next/standalone/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  406. package/.next/standalone/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  407. package/.next/standalone/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  408. package/.next/standalone/.next/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
  409. package/.next/standalone/.next/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  410. package/.next/standalone/.next/server/app/dashboard/translator.segments/_index.segment.rsc +3 -3
  411. package/.next/standalone/.next/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  412. package/.next/standalone/.next/server/app/dashboard/usage.html +1 -1
  413. package/.next/standalone/.next/server/app/dashboard/usage.rsc +6 -6
  414. package/.next/standalone/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  415. package/.next/standalone/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  416. package/.next/standalone/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  417. package/.next/standalone/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  418. package/.next/standalone/.next/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
  419. package/.next/standalone/.next/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  420. package/.next/standalone/.next/server/app/dashboard/usage.segments/_index.segment.rsc +3 -3
  421. package/.next/standalone/.next/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  422. package/.next/standalone/.next/server/app/dashboard.html +1 -1
  423. package/.next/standalone/.next/server/app/dashboard.rsc +7 -7
  424. package/.next/standalone/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  425. package/.next/standalone/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  426. package/.next/standalone/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  427. package/.next/standalone/.next/server/app/dashboard.segments/_full.segment.rsc +7 -7
  428. package/.next/standalone/.next/server/app/dashboard.segments/_head.segment.rsc +1 -1
  429. package/.next/standalone/.next/server/app/dashboard.segments/_index.segment.rsc +3 -3
  430. package/.next/standalone/.next/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  431. package/.next/standalone/.next/server/app/index.html +1 -1
  432. package/.next/standalone/.next/server/app/index.rsc +2 -2
  433. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  434. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +2 -2
  435. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  436. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
  437. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  438. package/.next/standalone/.next/server/app/landing/page.js.nft.json +1 -1
  439. package/.next/standalone/.next/server/app/landing/page_client-reference-manifest.js +1 -1
  440. package/.next/standalone/.next/server/app/landing.html +1 -1
  441. package/.next/standalone/.next/server/app/landing.rsc +3 -3
  442. package/.next/standalone/.next/server/app/landing.segments/_full.segment.rsc +3 -3
  443. package/.next/standalone/.next/server/app/landing.segments/_head.segment.rsc +1 -1
  444. package/.next/standalone/.next/server/app/landing.segments/_index.segment.rsc +2 -2
  445. package/.next/standalone/.next/server/app/landing.segments/_tree.segment.rsc +2 -2
  446. package/.next/standalone/.next/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
  447. package/.next/standalone/.next/server/app/landing.segments/landing.segment.rsc +1 -1
  448. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  449. package/.next/standalone/.next/server/app/login.html +1 -1
  450. package/.next/standalone/.next/server/app/login.rsc +2 -2
  451. package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +2 -2
  452. package/.next/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
  453. package/.next/standalone/.next/server/app/login.segments/_index.segment.rsc +2 -2
  454. package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  455. package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  456. package/.next/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
  457. package/.next/standalone/.next/server/app/morphllm/chat/completions/route.js.nft.json +1 -1
  458. package/.next/standalone/.next/server/app/morphllm/compact/route.js.nft.json +1 -1
  459. package/.next/standalone/.next/server/app/morphllm/models/route.js.nft.json +1 -1
  460. package/.next/standalone/.next/server/app/morphllm/v1/chat/completions/route.js.nft.json +1 -1
  461. package/.next/standalone/.next/server/app/morphllm/v1/compact/route.js.nft.json +1 -1
  462. package/.next/standalone/.next/server/app/morphllm/v1/models/route.js.nft.json +1 -1
  463. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  464. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-3tmyh._.js +1 -1
  465. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-l8ysp._.js +3 -0
  466. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-tjgg~._.js +1 -1
  467. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-wp4jk._.js +3 -0
  468. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__00neee.._.js → [root-of-the-server]__0-xb7dq._.js} +1 -1
  469. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-zrnro._.js +1 -1
  470. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.33wvu._.js +1 -1
  471. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0n7~4df._.js → [root-of-the-server]__0.agtpe._.js} +2 -2
  472. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.dleu7._.js +3 -0
  473. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.e4vjv._.js +1 -1
  474. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.hg30t._.js +2 -2
  475. package/.next/standalone/.next/server/chunks/[root-of-the-server]__00.jwtq._.js +1 -1
  476. package/.next/standalone/.next/server/chunks/[root-of-the-server]__004h4s7._.js +1 -1
  477. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0x-ntz.._.js → [root-of-the-server]__004z0ew._.js} +2 -2
  478. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0.ntnan._.js → [root-of-the-server]__009duxh._.js} +2 -2
  479. package/.next/standalone/.next/server/chunks/[root-of-the-server]__00l_uds._.js +3 -0
  480. package/.next/standalone/.next/server/chunks/[root-of-the-server]__00p7r7w._.js +1 -1
  481. package/.next/standalone/.next/server/chunks/[root-of-the-server]__00u8c-h._.js +3 -0
  482. package/.next/standalone/.next/server/chunks/[root-of-the-server]__00ud1h9._.js +3 -0
  483. package/.next/standalone/.next/server/chunks/[root-of-the-server]__00za6wa._.js +2 -2
  484. package/.next/standalone/.next/server/chunks/[root-of-the-server]__00ziyf.._.js +1 -1
  485. package/.next/standalone/.next/server/chunks/[root-of-the-server]__00~3r2y._.js +1 -1
  486. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0_tvnck._.js → [root-of-the-server]__01_ii~f._.js} +2 -2
  487. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__00i1y_~._.js → [root-of-the-server]__01lignr._.js} +1 -1
  488. package/.next/standalone/.next/server/chunks/[root-of-the-server]__01llrv6._.js +1 -1
  489. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0r0gw~i._.js → [root-of-the-server]__01s.wkm._.js} +1 -1
  490. package/.next/standalone/.next/server/chunks/[root-of-the-server]__021~5_a._.js +1 -1
  491. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__032ux2e._.js → [root-of-the-server]__024ndno._.js} +2 -2
  492. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02_dk~e._.js +1 -1
  493. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02aw1l2._.js +1 -1
  494. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02mb5x3._.js +1 -1
  495. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02mgn~n._.js +1 -1
  496. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02na2i2._.js +1 -1
  497. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__063zy1a._.js → [root-of-the-server]__02vs-0-._.js} +2 -2
  498. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02xdukv._.js +3 -0
  499. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02xghko._.js +1 -1
  500. package/.next/standalone/.next/server/chunks/[root-of-the-server]__032-6l~._.js +1 -1
  501. package/.next/standalone/.next/server/chunks/[root-of-the-server]__032p1nf._.js +1 -1
  502. package/.next/standalone/.next/server/chunks/[root-of-the-server]__037~86f._.js +1 -1
  503. package/.next/standalone/.next/server/chunks/[root-of-the-server]__038937q._.js +1 -1
  504. package/.next/standalone/.next/server/chunks/[root-of-the-server]__03ginl7._.js +3 -0
  505. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0_dmdz4._.js → [root-of-the-server]__03l1a1z._.js} +2 -2
  506. package/.next/standalone/.next/server/chunks/[root-of-the-server]__03lcjkm._.js +3 -0
  507. package/.next/standalone/.next/server/chunks/[root-of-the-server]__03xag8g._.js +3 -0
  508. package/.next/standalone/.next/server/chunks/[root-of-the-server]__03zunpw._.js +3 -0
  509. package/.next/standalone/.next/server/chunks/[root-of-the-server]__044t_vj._.js +1 -1
  510. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0454a.2._.js +1 -1
  511. package/.next/standalone/.next/server/chunks/[root-of-the-server]__046sr__._.js +1 -1
  512. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0hlqyqe._.js → [root-of-the-server]__047rva8._.js} +2 -2
  513. package/.next/standalone/.next/server/chunks/[root-of-the-server]__048crb2._.js +1 -1
  514. package/.next/standalone/.next/server/chunks/[root-of-the-server]__049a_e.._.js +3 -0
  515. package/.next/standalone/.next/server/chunks/[root-of-the-server]__04hf4dd._.js +1 -1
  516. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0-1cdp.._.js → [root-of-the-server]__04ikpcg._.js} +2 -2
  517. package/.next/standalone/.next/server/chunks/[root-of-the-server]__04m3iw_._.js +3 -0
  518. package/.next/standalone/.next/server/chunks/[root-of-the-server]__04oxfk8._.js +1 -1
  519. package/.next/standalone/.next/server/chunks/[root-of-the-server]__055zeis._.js +1 -1
  520. package/.next/standalone/.next/server/chunks/[root-of-the-server]__05clehz._.js +2 -2
  521. package/.next/standalone/.next/server/chunks/[root-of-the-server]__05er7rh._.js +1 -1
  522. package/.next/standalone/.next/server/chunks/[root-of-the-server]__05mw59v._.js +1 -1
  523. package/.next/standalone/.next/server/chunks/[root-of-the-server]__05pa88y._.js +1 -1
  524. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06huqnr._.js +3 -0
  525. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06uuq~s._.js +3 -0
  526. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06zn5y0._.js +1 -1
  527. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06~_5gw._.js +1 -1
  528. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07748ca._.js +1 -1
  529. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07ex_xh._.js +1 -1
  530. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07k7.v1._.js +1 -1
  531. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07k~4de._.js +3 -0
  532. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__013~fdq._.js → [root-of-the-server]__07l9hyr._.js} +2 -2
  533. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07stuwe._.js +3 -0
  534. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07y_cmu._.js +3 -0
  535. package/.next/standalone/.next/server/chunks/[root-of-the-server]__085spcm._.js +3 -0
  536. package/.next/standalone/.next/server/chunks/[root-of-the-server]__089yo0a._.js +1 -1
  537. package/.next/standalone/.next/server/chunks/[root-of-the-server]__08ded3h._.js +1 -1
  538. package/.next/standalone/.next/server/chunks/[root-of-the-server]__08e1.4i._.js +3 -0
  539. package/.next/standalone/.next/server/chunks/[root-of-the-server]__08gi7t6._.js +1 -1
  540. package/.next/standalone/.next/server/chunks/[root-of-the-server]__08mp0xh._.js +1 -1
  541. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__06wqce8._.js → [root-of-the-server]__09.y6l~._.js} +2 -2
  542. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__11ngmbn._.js → [root-of-the-server]__09651ql._.js} +1 -1
  543. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0.l0y7a._.js → [root-of-the-server]__099ds-o._.js} +2 -2
  544. package/.next/standalone/.next/server/chunks/[root-of-the-server]__09abbe.._.js +1 -1
  545. package/.next/standalone/.next/server/chunks/[root-of-the-server]__09b-mxq._.js +1 -1
  546. package/.next/standalone/.next/server/chunks/[root-of-the-server]__09hjwhb._.js +1 -1
  547. package/.next/standalone/.next/server/chunks/[root-of-the-server]__09kkumm._.js +1 -1
  548. package/.next/standalone/.next/server/chunks/[root-of-the-server]__09lk3fb._.js +1 -1
  549. package/.next/standalone/.next/server/chunks/[root-of-the-server]__09r8~n7._.js +4 -4
  550. package/.next/standalone/.next/server/chunks/[root-of-the-server]__09tg81h._.js +3 -0
  551. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__089pfiz._.js → [root-of-the-server]__09zbob7._.js} +2 -2
  552. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_1ywx_._.js +3 -0
  553. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_aqudj._.js +3 -0
  554. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_i7xtc._.js +3 -0
  555. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_lss-0._.js +1 -1
  556. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_uu_ec._.js +3 -0
  557. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_~5vif._.js +2 -2
  558. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_~9mgv._.js +1 -1
  559. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0a-sz2t._.js +3 -0
  560. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__11o4pj7._.js → [root-of-the-server]__0a2a.z4._.js} +2 -2
  561. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ab1356._.js +3 -0
  562. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0al1a91._.js +1 -1
  563. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0az1sx2._.js +1 -1
  564. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0bf.ghm._.js +1 -1
  565. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0p.t3~a._.js → [root-of-the-server]__0bfc~3f._.js} +2 -2
  566. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0biit-g._.js +1 -1
  567. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0bj2hpa._.js +1 -1
  568. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0b~7-_g._.js +3 -0
  569. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0c-h4mm._.js +1 -1
  570. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0c07d4y._.js +1 -1
  571. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0c557w-._.js +2 -2
  572. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cao3wt._.js +3 -0
  573. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cb8dd_._.js +1 -1
  574. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cl.iuf._.js +1 -1
  575. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__10_kz7x._.js → [root-of-the-server]__0cqefsr._.js} +2 -2
  576. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d2von.._.js +2 -2
  577. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d7oqzd._.js +1 -1
  578. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d8w.j5._.js +1 -1
  579. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d_42ie._.js +3 -0
  580. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0g7a6ay._.js → [root-of-the-server]__0dgr7sc._.js} +2 -2
  581. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0dj9sk~._.js +3 -0
  582. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0.d5_~n._.js → [root-of-the-server]__0dn58pj._.js} +2 -2
  583. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0dwwn3_._.js +3 -0
  584. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d~kviz._.js +3 -3
  585. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0e-q-.p._.js +1 -1
  586. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0eaih6w._.js +1 -1
  587. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ehtm3a._.js +3 -0
  588. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0evsmel._.js +1 -1
  589. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0f.jsn2._.js +1 -1
  590. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0f1.4a6._.js +1 -1
  591. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0f6hybd._.js +3 -0
  592. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fcv1jw._.js +3 -0
  593. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fislu6._.js +1 -1
  594. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fqmoyz._.js +1 -1
  595. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fw.ddo._.js +1 -1
  596. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fwx7x0._.js +1 -1
  597. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g43koa._.js +1 -1
  598. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gf~o2k._.js +2 -2
  599. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0_6pxdk._.js → [root-of-the-server]__0ghw24t._.js} +2 -2
  600. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0e.qn5h._.js → [root-of-the-server]__0gnvwdm._.js} +1 -1
  601. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gs1hnb._.js +1 -1
  602. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gyf1uq._.js +1 -1
  603. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gzlajr._.js +1 -1
  604. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0h4kh~z._.js +3 -0
  605. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0h_.jfe._.js +1 -1
  606. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hask_z._.js +3 -0
  607. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hbj87j._.js +1 -1
  608. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hbzowe._.js +1 -1
  609. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hcgq6x._.js +1 -1
  610. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hhhz-u._.js +1 -1
  611. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hsbqug._.js +2 -2
  612. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hvv_lx._.js +3 -0
  613. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i.e-em._.js +3 -0
  614. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i2a12q._.js +1 -1
  615. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i3k-_n._.js +1 -1
  616. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iqlh1i._.js +3 -0
  617. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0irkt1d._.js +3 -0
  618. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iuvn~y._.js +3 -0
  619. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iw4wjr._.js +1 -1
  620. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0t1dy.d._.js → [root-of-the-server]__0j-_68s._.js} +2 -2
  621. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j3v3l.._.js +1 -1
  622. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jf-9e~._.js +1 -1
  623. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0eelnax._.js → [root-of-the-server]__0jfl7t1._.js} +2 -2
  624. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0~4bwy8._.js → [root-of-the-server]__0jqqtdb._.js} +2 -2
  625. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jqyu4j._.js +3 -0
  626. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kl71u0._.js +3 -0
  627. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kp86ek._.js +3 -0
  628. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kqbs37._.js +3 -0
  629. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kwu0ka._.js +1 -1
  630. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0vd~ako._.js → [root-of-the-server]__0l9y_f0._.js} +2 -2
  631. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0xq1.45._.js → [root-of-the-server]__0l_-oy7._.js} +2 -2
  632. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0pjh~z_._.js → [root-of-the-server]__0ld6-lx._.js} +1 -1
  633. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0lko6zo._.js +3 -0
  634. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0lnpu9p._.js +1 -1
  635. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0lqy_2m._.js +1 -1
  636. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0lrm04_._.js +2 -2
  637. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0lu27p~._.js +1 -1
  638. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0m0~j~2._.js +2 -2
  639. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0m19~zq._.js +3 -0
  640. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0m9b33a._.js +1 -1
  641. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mg66ke._.js +1 -1
  642. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mo2l~8._.js +3 -0
  643. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mqxqlv._.js +2 -2
  644. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__011c~uj._.js → [root-of-the-server]__0ms71db._.js} +2 -2
  645. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mxkf24._.js +1 -1
  646. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0n-~_6k._.js +3 -0
  647. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0n0~dvq._.js +1 -1
  648. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nt2vi5._.js +2 -2
  649. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o1fh6s._.js +2 -2
  650. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o2.nlr._.js +1 -1
  651. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0forh27._.js → [root-of-the-server]__0o6i.nv._.js} +2 -2
  652. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o9-h..._.js +3 -0
  653. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0oy-.2f._.js +1 -1
  654. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0p1_hfo._.js +1 -1
  655. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pds.di._.js +3 -0
  656. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pmfi1f._.js +1 -1
  657. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0c8oc40._.js → [root-of-the-server]__0potyb8._.js} +2 -2
  658. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ppt-ql._.js +1 -1
  659. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ptfc.6._.js +1 -1
  660. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pvngyq._.js +1 -1
  661. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pwp_ap._.js +1 -1
  662. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0q.447s._.js +3 -0
  663. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0q35h5p._.js +1 -1
  664. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0q80z56._.js +1 -1
  665. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0q_hinv._.js +1 -1
  666. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qb6.we._.js +2 -2
  667. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qdu2ty._.js +3 -0
  668. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qewmrg._.js +2 -2
  669. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ql7dla._.js +3 -0
  670. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0qqx8dw._.js → [root-of-the-server]__0qld0km._.js} +2 -2
  671. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__03pekit._.js → [root-of-the-server]__0qm34aj._.js} +2 -2
  672. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qpbua8._.js +3 -0
  673. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qy.dv~._.js +1 -1
  674. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0r-72-q._.js +1 -1
  675. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0r7ie8v._.js +2 -2
  676. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0_xs5r~._.js → [root-of-the-server]__0r8rj.m._.js} +2 -2
  677. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0raoadw._.js +1 -1
  678. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rexrat._.js +1 -1
  679. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0vs.fnx._.js → [root-of-the-server]__0rmnesr._.js} +2 -2
  680. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rqufgb._.js +3 -0
  681. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rr4o.m._.js +1 -1
  682. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rut3-5._.js +1 -1
  683. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rw15j8._.js +1 -1
  684. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0sd_8_d._.js +3 -0
  685. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0sgem5m._.js +1 -1
  686. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0sshbg0._.js +1 -1
  687. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0szobir._.js +1 -1
  688. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0s~s0va._.js +3 -0
  689. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t1eb8l._.js +1 -1
  690. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t1f-ao._.js +1 -1
  691. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t36uxd._.js +1 -1
  692. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ta7__b._.js +1 -1
  693. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0td_2pr._.js +1 -1
  694. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0thihai._.js +3 -0
  695. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0tl6.r1._.js +2 -2
  696. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0tplwdy._.js +3 -0
  697. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t~ieoz._.js +1 -1
  698. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0p9bj_p._.js → [root-of-the-server]__0u09~1v._.js} +2 -2
  699. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0u2e0yf._.js +3 -0
  700. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0o928l6._.js → [root-of-the-server]__0u2e8qm._.js} +2 -2
  701. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0uis9ox._.js +3 -0
  702. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0umy3de._.js +1 -1
  703. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0uoy-kq._.js +1 -1
  704. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0urc51a._.js +1 -1
  705. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0v91s.t._.js +3 -0
  706. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vaoh8v._.js +1 -1
  707. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vc.a9b._.js +2 -2
  708. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0w98yen._.js → [root-of-the-server]__0vvw2ru._.js} +2 -2
  709. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__00o-asx._.js → [root-of-the-server]__0w2d5qg._.js} +1 -1
  710. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0w2zyc_._.js +3 -0
  711. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0w3~67w._.js +1 -1
  712. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0w662n~._.js +3 -0
  713. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wo7dm0._.js +3 -0
  714. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wru1b1._.js +2 -2
  715. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wvlbx8._.js +3 -0
  716. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0x3qw~o._.js +3 -0
  717. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xft0he._.js +1 -1
  718. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xiabzp._.js +3 -0
  719. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xlm2tp._.js +3 -0
  720. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xp5zu0._.js +1 -1
  721. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xujc-1._.js +1 -1
  722. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0seyi7u._.js → [root-of-the-server]__0xzfxgt._.js} +2 -2
  723. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0y19o-0._.js +1 -1
  724. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yeai3n._.js +1 -1
  725. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yi3-oh._.js +1 -1
  726. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yr856d._.js +3 -0
  727. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yuow7.._.js +1 -1
  728. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yyo154._.js +1 -1
  729. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0z2zc3n._.js +1 -1
  730. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0za0639._.js +3 -0
  731. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zcmy6s._.js +3 -0
  732. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zdl2qj._.js +1 -1
  733. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zf362d._.js +3 -0
  734. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zig6hw._.js +3 -0
  735. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zq6g4.._.js +3 -0
  736. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zsq_t0._.js +1 -1
  737. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zwhzmn._.js +3 -0
  738. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zxu6ha._.js +1 -1
  739. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~-~wa8._.js +1 -1
  740. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~78oxe._.js +3 -0
  741. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~a68pq._.js +1 -1
  742. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~b~ztb._.js +3 -0
  743. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0m8at.3._.js → [root-of-the-server]__0~nkx9r._.js} +2 -2
  744. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~p.k_k._.js +1 -1
  745. package/.next/standalone/.next/server/chunks/[root-of-the-server]__105ynbo._.js +1 -1
  746. package/.next/standalone/.next/server/chunks/[root-of-the-server]__106a4o0._.js +1 -1
  747. package/.next/standalone/.next/server/chunks/[root-of-the-server]__107dy2f._.js +2 -2
  748. package/.next/standalone/.next/server/chunks/[root-of-the-server]__107l5d7._.js +3 -0
  749. package/.next/standalone/.next/server/chunks/[root-of-the-server]__109f8-5._.js +1 -1
  750. package/.next/standalone/.next/server/chunks/[root-of-the-server]__10k1an8._.js +3 -0
  751. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0-54t5r._.js → [root-of-the-server]__10s-_pt._.js} +2 -2
  752. package/.next/standalone/.next/server/chunks/[root-of-the-server]__11-btmd._.js +3 -0
  753. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1109741._.js +3 -0
  754. package/.next/standalone/.next/server/chunks/[root-of-the-server]__112cin2._.js +1 -1
  755. package/.next/standalone/.next/server/chunks/[root-of-the-server]__112~mc9._.js +2 -2
  756. package/.next/standalone/.next/server/chunks/[root-of-the-server]__11gkys~._.js +1 -1
  757. package/.next/standalone/.next/server/chunks/[root-of-the-server]__11gqfow._.js +1 -1
  758. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0447asz._.js → [root-of-the-server]__11k5fud._.js} +2 -2
  759. package/.next/standalone/.next/server/chunks/[root-of-the-server]__11w6akv._.js +1 -1
  760. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12dgk7t._.js +1 -1
  761. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12g_p31._.js +3 -0
  762. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12gyo~t._.js +1 -1
  763. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12hrhta._.js +1 -1
  764. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12lnbnq._.js +3 -0
  765. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0--kia9._.js → [root-of-the-server]__12oyia-._.js} +2 -2
  766. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12ykd.3._.js +1 -1
  767. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12ypo0d._.js +2 -2
  768. package/.next/standalone/.next/server/chunks/[root-of-the-server]__135_alv._.js +3 -0
  769. package/.next/standalone/.next/server/chunks/[root-of-the-server]__13_6i8a._.js +3 -0
  770. package/.next/standalone/.next/server/chunks/[root-of-the-server]__13e3gug._.js +1 -1
  771. package/.next/standalone/.next/server/chunks/[root-of-the-server]__13o-h5l._.js +1 -1
  772. package/.next/standalone/.next/server/chunks/[root-of-the-server]__13ow83o._.js +1 -1
  773. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0fndpx4._.js → [root-of-the-server]__13pzqxe._.js} +2 -2
  774. package/.next/standalone/.next/server/chunks/[root-of-the-server]__13rq76w._.js +3 -0
  775. package/.next/standalone/.next/server/chunks/{src_0zn80tt._.js → _0.x.o.3._.js} +2 -2
  776. package/.next/standalone/.next/server/chunks/_00ud164._.js +3 -0
  777. package/.next/standalone/.next/server/chunks/_01cii5-._.js +3 -0
  778. package/.next/standalone/.next/server/chunks/{_0gt_qxy._.js → _03mwikq._.js} +2 -2
  779. package/.next/standalone/.next/server/chunks/{_0n0b-pz._.js → _03qq4.e._.js} +2 -2
  780. package/.next/standalone/.next/server/chunks/_04p6u1c._.js +3 -0
  781. package/.next/standalone/.next/server/chunks/_06-c5x7._.js +3 -0
  782. package/.next/standalone/.next/server/chunks/{_0nhn-c8._.js → _07fuqep._.js} +2 -2
  783. package/.next/standalone/.next/server/chunks/_0c26mpr._.js +3 -0
  784. package/.next/standalone/.next/server/chunks/_0cxdja3._.js +3 -0
  785. package/.next/standalone/.next/server/chunks/{_0a7s48j._.js → _0dj_pri._.js} +2 -2
  786. package/.next/standalone/.next/server/chunks/_0e9-~52._.js +3 -0
  787. package/.next/standalone/.next/server/chunks/_0kbmqb_._.js +3 -0
  788. package/.next/standalone/.next/server/chunks/_0l9dvf.._.js +1 -1
  789. package/.next/standalone/.next/server/chunks/_0q4g3vx._.js +3 -0
  790. package/.next/standalone/.next/server/chunks/_0u7ft0-._.js +3 -0
  791. package/.next/standalone/.next/server/chunks/_0v5jfhy._.js +3 -0
  792. package/.next/standalone/.next/server/chunks/_0vepsj6._.js +3 -0
  793. package/.next/standalone/.next/server/chunks/_0wt~d3y._.js +3 -0
  794. package/.next/standalone/.next/server/chunks/_0xbhq_5._.js +3 -0
  795. package/.next/standalone/.next/server/chunks/_0~bxigc._.js +3 -0
  796. package/.next/standalone/.next/server/chunks/_0~zpydj._.js +3 -0
  797. package/.next/standalone/.next/server/chunks/_10weqhi._.js +4 -0
  798. package/.next/standalone/.next/server/chunks/_13y2mvl._.js +3 -0
  799. package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_04zkfkl.js +1 -1
  800. package/.next/standalone/.next/server/chunks/open-sse_0.ondvz._.js +1 -1
  801. package/.next/standalone/.next/server/chunks/src_05d5qb2._.js +1 -1
  802. package/.next/standalone/.next/server/chunks/src_0ack9vz._.js +3 -0
  803. package/.next/standalone/.next/server/chunks/src_0f61~fi._.js +1 -1
  804. package/.next/standalone/.next/server/chunks/src_0praqb2._.js +1 -1
  805. package/.next/standalone/.next/server/chunks/src_0z7_cut._.js +1 -1
  806. package/.next/standalone/.next/server/chunks/src_0~zw66f._.js +1 -1
  807. package/.next/standalone/.next/server/chunks/src_lib_104_itc._.js +1 -1
  808. package/.next/standalone/.next/server/chunks/src_lib_localDb_ts_0x83si-._.js +1 -1
  809. package/.next/standalone/.next/server/chunks/src_lib_localDb_ts_101._fr._.js +1 -1
  810. package/.next/standalone/.next/server/chunks/src_lib_opencodeSync_generator_ts_07xrl3p._.js +1 -1
  811. package/.next/standalone/.next/server/chunks/src_shared_utils_apiKey_ts_0gzf59_._.js +1 -1
  812. package/.next/standalone/.next/server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js +1 -1
  813. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-9ubxl._.js +1 -1
  814. package/.next/standalone/.next/server/chunks/ssr/_0-802ei._.js +3 -0
  815. package/.next/standalone/.next/server/chunks/ssr/_0-cdf~g._.js +3 -0
  816. package/.next/standalone/.next/server/chunks/ssr/_0-ygrpm._.js +3 -0
  817. package/.next/standalone/.next/server/chunks/ssr/{_06m20t3._.js → _0.6vnrw._.js} +2 -2
  818. package/.next/standalone/.next/server/chunks/ssr/_0fh4630._.js +1 -1
  819. package/.next/standalone/.next/server/chunks/ssr/_0nc0rze._.js +1 -1
  820. package/.next/standalone/.next/server/chunks/ssr/_0vg73k3._.js +3 -0
  821. package/.next/standalone/.next/server/chunks/ssr/_0xpeq3o._.js +2 -2
  822. package/.next/standalone/.next/server/chunks/ssr/{src_app_(dashboard)_dashboard_mcp_page_tsx_0ruf46t._.js → src_0uw_qwf._.js} +9 -9
  823. package/.next/standalone/.next/server/chunks/ssr/src_app_(dashboard)_dashboard_endpoint_EndpointPageClient_tsx_0vt3c1s._.js +1 -1
  824. package/.next/standalone/.next/server/chunks/ssr/src_app_(dashboard)_dashboard_opencode_OpenCodePageClient_tsx_0f4pesx._.js +4 -4
  825. package/.next/standalone/.next/server/chunks/ssr/src_lib_localDb_ts_0evrcx2._.js +1 -1
  826. package/.next/standalone/.next/server/chunks/ssr/src_shared_constants_cliTools_ts_0xm~ty7._.js +5 -5
  827. package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
  828. package/.next/standalone/.next/server/pages/404.html +1 -1
  829. package/.next/standalone/.next/server/pages/500.html +1 -1
  830. package/.next/standalone/package.json +3 -1
  831. package/.next/standalone/skills/README.md +3 -3
  832. package/.next/standalone/skills/axonrouter/SKILL.md +16 -16
  833. package/.next/standalone/skills/axonrouter-chat/SKILL.md +11 -11
  834. package/.next/standalone/skills/axonrouter-embeddings/SKILL.md +9 -9
  835. package/.next/standalone/skills/axonrouter-image/SKILL.md +9 -9
  836. package/.next/standalone/skills/axonrouter-stt/SKILL.md +9 -9
  837. package/.next/standalone/skills/axonrouter-tts/SKILL.md +10 -10
  838. package/.next/standalone/skills/axonrouter-unified/SKILL.md +12 -12
  839. package/.next/standalone/skills/axonrouter-web-fetch/SKILL.md +16 -16
  840. package/.next/standalone/skills/axonrouter-web-search/SKILL.md +10 -10
  841. package/.next/standalone/src/lib/mitm/antigravityStatusAccess.ts +2 -2
  842. package/.next/standalone/src/mitm/handlers/base.ts +3 -1
  843. package/.next/standalone/src/mitm/routerBaseRuntime.ts +2 -1
  844. package/.next/standalone/src/mitm/runtimeDefaults.ts +11 -0
  845. package/.next/standalone/src/shared/constants/runtimeDefaults.json +5 -0
  846. package/.next/static/chunks/{0uk2ckcd~-r0a.js → 043zcnxue58du.js} +4 -4
  847. package/.next/static/chunks/{0pliq5cpnjsoh.css → 0chvw-cg-07m9.css} +1 -1
  848. package/.next/static/chunks/{01x4hwms4_ema.js → 0ey3o6oli9d9q.js} +1 -1
  849. package/.next/static/chunks/0f3slp3h9.-dg.js +1 -0
  850. package/.next/static/chunks/{0yrb77bqsumy7.js → 0llovlqzhs02-.js} +1 -1
  851. package/.next/static/chunks/{0_e8whdd-hjt~.js → 0ncpmltfab471.js} +13 -13
  852. package/.next/static/chunks/0odx0ul3b.c8q.js +1 -0
  853. package/.next/static/chunks/{0v2od3hxo4-br.js → 0pfh8tnrcgkwd.js} +1 -1
  854. package/.next/static/chunks/{17~u6u590fthr.js → 0r499_px9z-7p.js} +1 -1
  855. package/.next/static/chunks/0y69lhry~47ca.js +1 -0
  856. package/.next/static/chunks/{0tmytjpzpwssc.js → 10xuig64fgu6..js} +9 -9
  857. package/README.md +1 -1
  858. package/bin/mcp-server.ts +11 -0
  859. package/open-sse/mcp-server/stdioServer.ts +1 -1
  860. package/open-sse/utils/requestLogger.tsx +1 -1
  861. package/package.json +3 -1
  862. package/scripts/mcp-alias-loader.ts +78 -0
  863. package/scripts/start.ts +2 -1
  864. package/src/app/(dashboard)/dashboard/cli-tools/CLIToolsPageClient.tsx +2 -1
  865. package/src/app/(dashboard)/dashboard/cli-tools/components/DefaultToolCard.tsx +2 -1
  866. package/src/app/(dashboard)/dashboard/cli-tools/components/HermesToolCard.tsx +2 -1
  867. package/src/app/(dashboard)/dashboard/cli-tools/components/MitmServerCard.tsx +2 -1
  868. package/src/app/(dashboard)/dashboard/cli-tools/components/OpenClawToolCard.tsx +2 -1
  869. package/src/app/(dashboard)/dashboard/endpoint/components/MainTab.tsx +3 -2
  870. package/src/app/(dashboard)/dashboard/mcp/page.tsx +10 -9
  871. package/src/app/(dashboard)/dashboard/opencode/components/TokenManagerCard.tsx +3 -2
  872. package/src/app/api/combos/test/route.ts +2 -1
  873. package/src/app/api/settings/route.ts +1 -1
  874. package/src/app/landing/components/GetStarted.tsx +4 -3
  875. package/src/lib/localDb/normalize.ts +3 -4
  876. package/src/lib/mitm/antigravityStatusAccess.ts +2 -2
  877. package/src/lib/oauth/config/index.ts +5 -3
  878. package/src/lib/oauth/services/antigravity.ts +4 -3
  879. package/src/lib/opencodeSync/generator.ts +10 -9
  880. package/src/lib/providerModels/syncRunner.ts +2 -1
  881. package/src/lib/security/ipValidator.ts +10 -7
  882. package/src/lib/security/pasetoKeys.ts +1 -1
  883. package/src/lib/tunnel/tailscaleAccess.ts +2 -1
  884. package/src/lib/tunnel/tailscaleTunnelRuntime.ts +2 -1
  885. package/src/lib/tunnel/tunnelConnectionRuntime.ts +2 -1
  886. package/src/lib/tunnel/tunnelManager.ts +3 -2
  887. package/src/lib/tunnel/tunnelStateFacade.ts +3 -2
  888. package/src/mitm/handlers/base.ts +3 -1
  889. package/src/mitm/routerBaseRuntime.ts +2 -1
  890. package/src/mitm/runtimeDefaults.ts +11 -0
  891. package/src/shared/components/Header.tsx +1 -5
  892. package/src/shared/components/sidebar/SidebarBrand.tsx +1 -1
  893. package/src/shared/constants/runtimeDefaults.json +5 -0
  894. package/src/shared/constants/runtimeDefaults.ts +13 -0
  895. package/src/shared/services/initializeApp.ts +1 -1
  896. package/src/shared/utils/apiKey.ts +1 -1
  897. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-6ommw._.js +0 -3
  898. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.ixvv6._.js +0 -3
  899. package/.next/standalone/.next/server/chunks/[root-of-the-server]__01m2w3x._.js +0 -3
  900. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02fp~to._.js +0 -3
  901. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02g3stb._.js +0 -3
  902. package/.next/standalone/.next/server/chunks/[root-of-the-server]__03imrot._.js +0 -3
  903. package/.next/standalone/.next/server/chunks/[root-of-the-server]__03pifp-._.js +0 -3
  904. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0479l.8._.js +0 -3
  905. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0484-.s._.js +0 -3
  906. package/.next/standalone/.next/server/chunks/[root-of-the-server]__05e-t08._.js +0 -3
  907. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06awg3m._.js +0 -3
  908. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06cn0cb._.js +0 -3
  909. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06fvvri._.js +0 -3
  910. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07_h0lj._.js +0 -3
  911. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07qvqw8._.js +0 -3
  912. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07zg4ty._.js +0 -3
  913. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07znt4k._.js +0 -3
  914. package/.next/standalone/.next/server/chunks/[root-of-the-server]__08lurmo._.js +0 -3
  915. package/.next/standalone/.next/server/chunks/[root-of-the-server]__09agkdg._.js +0 -3
  916. package/.next/standalone/.next/server/chunks/[root-of-the-server]__09~4xgq._.js +0 -3
  917. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_caj9n._.js +0 -3
  918. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_f4pe_._.js +0 -3
  919. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ai_.1n._.js +0 -3
  920. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0and1qa._.js +0 -3
  921. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ar-.q2._.js +0 -3
  922. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0awt_v8._.js +0 -3
  923. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0b.5xmb._.js +0 -3
  924. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0bc3wr_._.js +0 -3
  925. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d-gh.d._.js +0 -3
  926. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0df~btj._.js +0 -3
  927. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0dzog8o._.js +0 -3
  928. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ep40qj._.js +0 -3
  929. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ep44o4._.js +0 -3
  930. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fps8zu._.js +0 -3
  931. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fzyk_d._.js +0 -3
  932. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hgp2t3._.js +0 -3
  933. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i1e~4s._.js +0 -3
  934. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i3j2ls._.js +0 -3
  935. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0igg~5m._.js +0 -3
  936. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j-v2_9._.js +0 -3
  937. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j0e2p7._.js +0 -3
  938. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j6b1yt._.js +0 -3
  939. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jo5r_y._.js +0 -3
  940. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0krneb~._.js +0 -3
  941. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l12fg2._.js +0 -3
  942. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l2y2-o._.js +0 -3
  943. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ld1.a4._.js +0 -3
  944. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mbbx6v._.js +0 -3
  945. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mlmj3l._.js +0 -3
  946. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0n79yma._.js +0 -3
  947. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nk_zws._.js +0 -3
  948. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nn7z4w._.js +0 -3
  949. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o4zst5._.js +0 -3
  950. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o83z85._.js +0 -3
  951. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pn_t_l._.js +0 -3
  952. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0q2-is7._.js +0 -3
  953. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qm25o8._.js +0 -3
  954. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qzm9j_._.js +0 -3
  955. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ra63ye._.js +0 -3
  956. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0reej32._.js +0 -3
  957. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t331c1._.js +0 -3
  958. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0tf2kud._.js +0 -3
  959. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0u-iazp._.js +0 -3
  960. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0u3xz6p._.js +0 -3
  961. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0uxd_lw._.js +0 -3
  962. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vdkv4j._.js +0 -3
  963. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vwhg_n._.js +0 -3
  964. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0x1n3b5._.js +0 -3
  965. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xtvlhf._.js +0 -3
  966. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yx24j-._.js +0 -3
  967. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0z.95rr._.js +0 -3
  968. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0z7a9y3._.js +0 -3
  969. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zcl1tc._.js +0 -3
  970. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zn86fr._.js +0 -3
  971. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zu8ul7._.js +0 -3
  972. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~52izy._.js +0 -3
  973. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~c~6s5._.js +0 -3
  974. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~mz2p1._.js +0 -3
  975. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~~kg21._.js +0 -3
  976. package/.next/standalone/.next/server/chunks/[root-of-the-server]__10hd5up._.js +0 -3
  977. package/.next/standalone/.next/server/chunks/[root-of-the-server]__10ick1a._.js +0 -3
  978. package/.next/standalone/.next/server/chunks/[root-of-the-server]__10yftp6._.js +0 -3
  979. package/.next/standalone/.next/server/chunks/[root-of-the-server]__10zs4c4._.js +0 -3
  980. package/.next/standalone/.next/server/chunks/[root-of-the-server]__11nuxzq._.js +0 -3
  981. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12501l1._.js +0 -3
  982. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12htkix._.js +0 -3
  983. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12s8j28._.js +0 -3
  984. package/.next/standalone/.next/server/chunks/[root-of-the-server]__13-kiu2._.js +0 -3
  985. package/.next/standalone/.next/server/chunks/[root-of-the-server]__13akfjh._.js +0 -3
  986. package/.next/standalone/.next/server/chunks/_00nb1ef._.js +0 -3
  987. package/.next/standalone/.next/server/chunks/_01cwb4n._.js +0 -3
  988. package/.next/standalone/.next/server/chunks/_04c~j5r._.js +0 -3
  989. package/.next/standalone/.next/server/chunks/_06alt98._.js +0 -3
  990. package/.next/standalone/.next/server/chunks/_09x4qde._.js +0 -3
  991. package/.next/standalone/.next/server/chunks/_0btlko3._.js +0 -4
  992. package/.next/standalone/.next/server/chunks/_0cc4y0u._.js +0 -3
  993. package/.next/standalone/.next/server/chunks/_0icsesy._.js +0 -3
  994. package/.next/standalone/.next/server/chunks/_0kqx9ko._.js +0 -3
  995. package/.next/standalone/.next/server/chunks/_0lm3fjc._.js +0 -3
  996. package/.next/standalone/.next/server/chunks/_0nx8-pu._.js +0 -3
  997. package/.next/standalone/.next/server/chunks/_0pu0f-y._.js +0 -3
  998. package/.next/standalone/.next/server/chunks/_0rde0ez._.js +0 -3
  999. package/.next/standalone/.next/server/chunks/_0rvv.4c._.js +0 -3
  1000. package/.next/standalone/.next/server/chunks/_0rxqszi._.js +0 -3
  1001. package/.next/standalone/.next/server/chunks/_0sx.jem._.js +0 -3
  1002. package/.next/standalone/.next/server/chunks/_0wjnra.._.js +0 -3
  1003. package/.next/standalone/.next/server/chunks/_123f-_7._.js +0 -3
  1004. package/.next/standalone/.next/server/chunks/_12mo~h9._.js +0 -3
  1005. package/.next/standalone/.next/server/chunks/ssr/_00ercn-._.js +0 -3
  1006. package/.next/standalone/.next/server/chunks/ssr/_0fgd1ej._.js +0 -3
  1007. package/.next/standalone/.next/server/chunks/ssr/_1258khy._.js +0 -3
  1008. package/.next/static/chunks/0-irb0q1q34le.js +0 -1
  1009. package/.next/static/chunks/0u6dc-5rzf9pb.js +0 -1
  1010. package/.next/static/chunks/0u84dbupf__yp.js +0 -1
  1011. /package/.next/static/{1OftkhB-3E-8qEDLWcuTe → 6RXjY-ACq_pLq4p-I8svY}/_buildManifest.js +0 -0
  1012. /package/.next/static/{1OftkhB-3E-8qEDLWcuTe → 6RXjY-ACq_pLq4p-I8svY}/_clientMiddlewareManifest.js +0 -0
  1013. /package/.next/static/{1OftkhB-3E-8qEDLWcuTe → 6RXjY-ACq_pLq4p-I8svY}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[776548,e=>{"use strict";var t=e.i(446786);let o={"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},i="https://api.kimi.com/coding/v1/messages",a={claude:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,oauth-2025-04-20,interleaved-thinking-2025-05-14,context-management-2025-06-27,prompt-caching-scope-2026-01-05,advanced-tool-use-2025-11-20,effort-2025-11-24,structured-outputs-2025-12-15,fast-mode-2026-02-01,redact-thinking-2026-02-12,token-efficient-tools-2026-03-28","Anthropic-Dangerous-Direct-Browser-Access":"true","User-Agent":"claude-cli/2.1.92 (external, sdk-cli)","X-App":"cli","X-Stainless-Helper-Method":"stream","X-Stainless-Retry-Count":"0","X-Stainless-Runtime-Version":"v24.14.0","X-Stainless-Package-Version":"0.80.0","X-Stainless-Runtime":"node","X-Stainless-Lang":"js","X-Stainless-Arch":function(){switch((0,t.arch)()){case"x64":return"x64";case"arm64":return"arm64";case"ia32":return"x86";default:return`other::${(0,t.arch)()}`}}(),"X-Stainless-Os":function(){switch((0,t.platform)()){case"darwin":return"MacOS";case"win32":return"Windows";case"linux":return"Linux";case"freebsd":return"FreeBSD";default:return`Other::${(0,t.platform)()}`}}(),"X-Stainless-Timeout":"600"},clientId:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",tokenUrl:"https://api.anthropic.com/v1/oauth/token"},gemini:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",format:"gemini",clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"},"gemini-cli":{baseUrl:"https://cloudcode-pa.googleapis.com/v1internal",format:"gemini-cli",clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"},codex:{baseUrl:"https://chatgpt.com/backend-api/codex/responses",format:"openai-responses",headers:{originator:"codex-cli","User-Agent":"codex-cli/1.0.18 (macOS; arm64)"},clientId:"app_EMoamEEZ73f0CkXaXp7hrann",tokenUrl:"https://auth.openai.com/oauth/token"},qwen:{baseUrl:"https://portal.qwen.ai/v1/chat/completions",format:"openai",clientId:"f0304373b74a44d2b584a3fb70ca9e56",tokenUrl:"https://chat.qwen.ai/api/v1/oauth2/token",authUrl:"https://chat.qwen.ai/api/v1/oauth2/device/code"},iflow:{baseUrl:"https://apis.iflow.cn/v1/chat/completions",format:"openai",headers:{"User-Agent":"iFlow-Cli"},clientId:"10009311001",clientSecret:"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://iflow.cn/oauth/token",authUrl:"https://iflow.cn/oauth"},qoder:{baseUrl:"https://api.qoder.com/v1/chat/completions",format:"openai",headers:{"User-Agent":"Qoder-Cli"},clientId:process.env.QODER_OAUTH_CLIENT_ID||"10009311001",clientSecret:process.env.QODER_OAUTH_CLIENT_SECRET||"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://api.qoder.com/oauth/token",authUrl:"https://qoder.com/oauth/authorize"},antigravity:{baseUrls:["https://daily-cloudcode-pa.googleapis.com","https://daily-cloudcode-pa.sandbox.googleapis.com"],format:"antigravity",headers:{"User-Agent":`antigravity/1.107.0 ${(0,t.platform)()}/${(0,t.arch)()}`},clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com_2",clientSecret:"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"},openrouter:{baseUrl:"https://openrouter.ai/api/v1/chat/completions",format:"openai",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},openai:{baseUrl:"https://api.openai.com/v1/chat/completions",format:"openai"},glm:{baseUrl:"https://api.z.ai/api/anthropic/v1/messages",format:"claude",headers:{...o}},"glm-cn":{baseUrl:"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",format:"openai",headers:{}},kimi:{baseUrl:i,format:"claude",headers:{...o}},minimax:{baseUrl:"https://api.minimax.io/anthropic/v1/messages",format:"claude",headers:{...o}},"minimax-cn":{baseUrl:"https://api.minimaxi.com/anthropic/v1/messages",format:"claude",headers:{...o}},alicode:{baseUrl:"https://coding.dashscope.aliyuncs.com/v1/chat/completions",format:"openai",headers:{}},"alicode-intl":{baseUrl:"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions",format:"openai",headers:{}},"volcengine-ark":{baseUrl:"https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions",format:"openai",headers:{}},github:{baseUrl:"https://api.githubcopilot.com/chat/completions",responsesUrl:"https://api.githubcopilot.com/responses",format:"openai",headers:{"copilot-integration-id":"vscode-chat","editor-version":"vscode/1.110.0","editor-plugin-version":"copilot-chat/0.38.0","user-agent":"GitHubCopilotChat/0.38.0","openai-intent":"conversation-panel","x-github-api-version":"2025-04-01","x-vscode-user-agent-library-version":"electron-fetch","X-Initiator":"user",Accept:"application/json","Content-Type":"application/json"},clientId:"Iv1.b507a08c87ecfe98"},kiro:{baseUrl:"https://codewhisperer.us-east-1.amazonaws.com/generateAssistantResponse",format:"kiro",retry:{429:2},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"},tokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authUrl:"https://prod.us-east-1.auth.desktop.kiro.dev"},"amazon-q":{baseUrl:"https://codewhisperer.us-east-1.amazonaws.com/generateAssistantResponse",format:"kiro",retry:{429:2},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"},tokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authUrl:"https://prod.us-east-1.auth.desktop.kiro.dev"},cursor:{baseUrl:"https://api2.cursor.sh",chatPath:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",format:"cursor",headers:{"connect-accept-encoding":"gzip","connect-protocol-version":"1","Content-Type":"application/connect+proto","User-Agent":"connect-es/1.6.1"},clientVersion:"3.1.0"},"kimi-coding":{baseUrl:i,format:"claude",headers:{...o},clientId:"17e5f671-d194-4dfb-9706-5516cb48c098",tokenUrl:"https://auth.kimi.com/api/oauth/token",refreshUrl:"https://auth.kimi.com/api/oauth/token"},kilocode:{baseUrl:"https://api.kilo.ai/api/openrouter/chat/completions",format:"openai",headers:{}},cline:{baseUrl:"https://api.cline.bot/api/v1/chat/completions",format:"openai",headers:{"HTTP-Referer":"https://cline.bot","X-Title":"Cline"},tokenUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"},nvidia:{baseUrl:"https://integrate.api.nvidia.com/v1/chat/completions",format:"openai"},anthropic:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",headers:{...o}},deepseek:{baseUrl:"https://api.deepseek.com/chat/completions",format:"openai"},groq:{baseUrl:"https://api.groq.com/openai/v1/chat/completions",format:"openai"},xai:{baseUrl:"https://api.x.ai/v1/chat/completions",format:"openai"},mistral:{baseUrl:"https://api.mistral.ai/v1/chat/completions",format:"openai"},perplexity:{baseUrl:"https://api.perplexity.ai/chat/completions",format:"openai"},together:{baseUrl:"https://api.together.xyz/v1/chat/completions",format:"openai"},fireworks:{baseUrl:"https://api.fireworks.ai/inference/v1/chat/completions",format:"openai"},cerebras:{baseUrl:"https://api.cerebras.ai/v1/chat/completions",format:"openai"},cohere:{baseUrl:"https://api.cohere.ai/v1/chat/completions",format:"openai"},nebius:{baseUrl:"https://api.studio.nebius.ai/v1/chat/completions",format:"openai"},siliconflow:{baseUrl:"https://api.siliconflow.cn/v1/chat/completions",format:"openai"},hyperbolic:{baseUrl:"https://api.hyperbolic.xyz/v1/chat/completions",format:"openai"},deepgram:{baseUrl:"https://api.deepgram.com/v1/listen",format:"openai"},assemblyai:{baseUrl:"https://api.assemblyai.com/v1/audio/transcriptions",format:"openai"},nanobanana:{baseUrl:"https://api.nanobananaapi.ai/v1/chat/completions",format:"openai"},chutes:{baseUrl:"https://llm.chutes.ai/v1/chat/completions",format:"openai"},ollama:{baseUrl:"https://ollama.com/api/chat",format:"ollama"},"ollama-local":{baseUrl:"http://localhost:11434/api/chat",format:"ollama"},vertex:{baseUrl:"https://aiplatform.googleapis.com",format:"vertex"},"vertex-partner":{baseUrl:"https://aiplatform.googleapis.com",format:"openai"},gitlab:{baseUrl:"https://gitlab.com/api/v4/chat/completions",format:"openai"},codebuddy:{baseUrl:"https://copilot.tencent.com/v1/chat/completions",format:"openai"},opencode:{baseUrl:"https://opencode.ai",format:"openai",headers:{"x-opencode-client":"desktop"},noAuth:!0},azure:{baseUrl:"",format:"openai",headers:{}},"opencode-go":{baseUrl:"https://opencode.ai/zen/go/v1/chat/completions",format:"openai",headers:{}},"grok-web":{baseUrl:"https://grok.com/rest/app-chat/conversations/new",format:"grok-web",authType:"cookie"},"perplexity-web":{baseUrl:"https://www.perplexity.ai/rest/sse/perplexity_ask",format:"perplexity-web",authType:"cookie"},commandcode:{baseUrl:"https://api.commandcode.ai/alpha/generate",format:"commandcode",headers:{"x-command-code-version":"0.25.0"}}};e.s(["PROVIDERS",0,a,"resolveOllamaLocalHost",0,function(e){return(e?.providerSpecificData?.baseUrl?.trim()||"http://localhost:11434").replace(/\/$/,"")}])},363154,e=>{"use strict";let t=Object.freeze({upstreamTimeoutMs:12e4,compactUpstreamTimeoutMs:null,streamIdleTimeoutMs:12e4,maxInflight:2e3,providerMaxInflight:600,accountMaxInflight:80,observabilityMode:"full",observabilitySampleRate:.1,highThroughputSelection:!0}),o=null;function i(e,t){if(null==e||""===e)return t;let o=Number(e);return Number.isFinite(o)&&o>0?o:t}function a(e,t){let o=Number(e);return Number.isFinite(o)&&o>0?o:t}function r(e,t){let o=Number(e);return Number.isFinite(o)&&o>=0&&o<=1?o:t}function n(){return o||t}function s(e,t="upstream"){let o=Error(`${t} timed out after ${e}ms`);return o.name="AbortError",o.code="UPSTREAM_TIMEOUT",o.timeoutMs=e,o}e.s(["createDeadlineSignal",0,function(e,t="upstream"){let o=new AbortController,i=setTimeout(()=>{o.abort(s(e,t))},e);return{signal:o.signal,clear:()=>clearTimeout(i)}},"createTimeoutError",0,s,"getChatObservabilityMode",0,function(){let e=String(o?n().observabilityMode:process.env.CHAT_OBSERVABILITY_MODE||t.observabilityMode).toLowerCase();return["full","sampled","minimal","off"].includes(e)?e:t.observabilityMode},"getChatObservabilitySampleRate",0,function(){return o?n().observabilitySampleRate:r(process.env.CHAT_OBSERVABILITY_SAMPLE_RATE,t.observabilitySampleRate)},"getChatRuntimeSettings",0,n,"getCompactUpstreamTimeoutMs",0,function(){return o?n().compactUpstreamTimeoutMs:i(process.env.CHAT_COMPACT_UPSTREAM_TIMEOUT_MS,t.compactUpstreamTimeoutMs)},"getHighThroughputSelectionEnabled",0,function(){return o?!1!==n().highThroughputSelection:"false"!==process.env.CHAT_HIGH_THROUGHPUT_SELECTION&&t.highThroughputSelection},"getStreamIdleTimeoutMs",0,function(){return o?n().streamIdleTimeoutMs:a(process.env.CHAT_STREAM_IDLE_TIMEOUT_MS,t.streamIdleTimeoutMs)},"getUpstreamTimeoutMs",0,function(){return o?n().upstreamTimeoutMs:i(process.env.CHAT_UPSTREAM_TIMEOUT_MS,t.upstreamTimeoutMs)},"mergeAbortSignals",0,function(e=[]){let t=e.filter(Boolean);if(0===t.length)return null;if(1===t.length)return t[0];if("function"==typeof AbortSignal.any)return AbortSignal.any(t);let o=new AbortController,i=e=>{let t=e?.target;o.abort(t?.reason)};for(let e of t){if(e.aborted){o.abort(e.reason);break}e.addEventListener("abort",i,{once:!0})}return o.signal},"setChatRuntimeSettings",0,function(e={}){return o=function(e={}){let o=e&&"object"==typeof e&&!Array.isArray(e)?e:{};return{upstreamTimeoutMs:i(o.upstreamTimeoutMs,t.upstreamTimeoutMs),compactUpstreamTimeoutMs:i(o.compactUpstreamTimeoutMs,t.compactUpstreamTimeoutMs),streamIdleTimeoutMs:a(o.streamIdleTimeoutMs,t.streamIdleTimeoutMs),maxInflight:a(o.maxInflight,t.maxInflight),providerMaxInflight:a(o.providerMaxInflight,t.providerMaxInflight),accountMaxInflight:a(o.accountMaxInflight,t.accountMaxInflight),observabilityMode:["full","sampled","minimal","off"].includes(o.observabilityMode)?o.observabilityMode:t.observabilityMode,observabilitySampleRate:r(o.observabilitySampleRate,t.observabilitySampleRate),highThroughputSelection:!1!==o.highThroughputSelection}}(e)}])},963219,e=>{"use strict";let t={kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35"},"amazon-q":{id:"amazon-q",alias:"aq",name:"Amazon Q",icon:"cloud",color:"#FF9900",textIcon:"AQ",website:"https://aws.amazon.com/q/developer/",authHint:"Uses the same AWS Builder ID or imported refresh-token flow as Kiro, but keeps Amazon Q connections separate."},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981",deprecated:!0,deprecationNotice:"Qwen OAuth free tier was discontinued by Alibaba on 2026-04-15. New connections will not work."},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4",deprecated:!0,deprecationNotice:"Gemini CLI is designed exclusively for Gemini CLI. Using it with other tools (OpenClaw, Claude, Codex...) may result in account restrictions or bans."},iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1"},opencode:{id:"opencode",alias:"oc",name:"OpenCode Free",icon:"terminal",color:"#E87040",textIcon:"OC",noAuth:!0,passthroughModels:!0,modelsFetcher:{url:"https://opencode.ai/zen/v1/models",type:"opencode-free"}}},o={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",website:"https://openrouter.ai",notice:{text:"Free tier: 27+ free models, no credit card needed, 200 req/day. After $10 credit: 1,000 req/day.",apiKeyUrl:"https://openrouter.ai/settings/keys"},modelsFetcher:{url:"https://openrouter.ai/api/v1/models",type:"openrouter-free"},passthroughModels:!0,serviceKinds:["llm","embedding","tts","imageToText"]},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://developer.nvidia.com/nim",notice:{text:"Free access for NVIDIA Developer Program members (prototyping & testing).",apiKeyUrl:"https://build.nvidia.com/settings/api-keys"},serviceKinds:["llm","stt"],sttConfig:{format:"nvidia-asr",authType:"apiKey",baseUrl:"https://integrate.api.nvidia.com/v1/audio/transcriptions",authHeader:"bearer"}},ollama:{id:"ollama",alias:"ollama",name:"Ollama Cloud",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com",notice:{text:"Free tier: light usage, 1 cloud model at a time (limits reset every 5h & 7d). Pro $20/mo · Max $100/mo.",apiKeyUrl:"https://ollama.com/settings/keys"}},vertex:{id:"vertex",alias:"vx",name:"Vertex AI",icon:"cloud",color:"#4285F4",textIcon:"VX",website:"https://cloud.google.com/vertex-ai",notice:{text:"New Google Cloud accounts get $300 free credits. Requires GCP project + Service Account with Vertex AI API enabled.",apiKeyUrl:"https://console.cloud.google.com/iam-admin/serviceaccounts"}},gemini:{id:"gemini",alias:"gemini",name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev",serviceKinds:["llm","embedding","image","imageToText","webSearch","stt","tts"],sttConfig:{format:"gemini-stt",authType:"apiKey",baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authHeader:"bearer"}}},i={options:["auto","none","low","medium","high"],defaultMode:"auto"},a={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",deprecated:!0,deprecationNotice:"AG is designed exclusively for Antigravity IDE. Using it with other tools (OpenClaw, Claude, Codex...) may result in account restrictions or bans."},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6",thinkingConfig:i},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"},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"}},r="morph-fast",n={id:r,alias:"morph",name:"Morph Fast Models",icon:"bolt",color:"#FF5B99",textIcon:"MP",website:"https://morphllm.com",passthroughModels:!0,serviceKinds:["llm","embedding"],managedBy:"morph",systemManaged:!0,readOnly:!0,hiddenConfigInProviders:!0,providerSurface:"morph-fast-models"},s={[r]:n,commandcode:{id:"commandcode",alias:"ccmd",name:"Command Code",icon:"terminal",color:"#6366F1",textIcon:"CC",website:"https://commandcode.ai",passthroughModels:!0,serviceKinds:["llm"]},glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn"},"glm-cn":{id:"glm-cn",alias:"glm-cn",name:"GLM (China)",icon:"code",color:"#DC2626",textIcon:"GC",website:"https://open.bigmodel.cn"},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn",serviceKinds:["llm","webSearch"]},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com",serviceKinds:["llm","image","imageToText","webSearch"]},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com"},alicode:{id:"alicode",alias:"alicode",name:"Alibaba",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},"alicode-intl":{id:"alicode-intl",alias:"alicode-intl",name:"Alibaba Intl",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},"volcengine-ark":{id:"volcengine-ark",alias:"ark",name:"Volcengine Ark",icon:"cloud",color:"#1677FF",textIcon:"ARK",website:"https://ark.cn-beijing.volces.com"},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com",serviceKinds:["llm","embedding","tts","image","imageToText","webSearch","stt"],thinkingConfig:i,sttConfig:{format:"openai",authType:"apiKey",baseUrl:"https://api.openai.com/v1/audio/transcriptions",authHeader:"bearer"}},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com",serviceKinds:["llm","imageToText"]},azure:{id:"azure",alias:"azure",name:"Azure OpenAI",icon:"cloud",color:"#0078D4",textIcon:"AZ",website:"https://azure.microsoft.com/en-us/products/ai-services/openai-service",hasProviderSpecificData:!0},"opencode-go":{id:"opencode-go",alias:"ocg",name:"OpenCode Go",icon:"terminal",color:"#E87040",textIcon:"OC",website:"https://opencode.ai/auth",notice:{text:"OpenCode Go subscription: $5/mo (then $10/mo). Access to Kimi, GLM, Qwen, MiMo, MiniMax models.",apiKeyUrl:"https://opencode.ai/auth"}},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",serviceKinds:["llm","imageToText","stt"],sttConfig:{format:"openai",authType:"apiKey",baseUrl:"https://api.groq.com/openai/v1/audio/transcriptions",authHeader:"bearer"}},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai",serviceKinds:["llm","imageToText","webSearch"]},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai",serviceKinds:["llm","imageToText"]},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai",serviceKinds:["llm","webSearch"]},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"},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"},mimo:{id:"mimo",alias:"mimo",name:"Xiaomi MiMo",icon:"memory",color:"#FF6900",textIcon:"XM",website:"https://platform.mioffice.cn"},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com",serviceKinds:["stt","imageToText"],sttConfig:{format:"deepgram",authType:"apiKey",baseUrl:"https://api.deepgram.com/v1/listen",authHeader:"token"}},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com",serviceKinds:["stt"],sttConfig:{format:"assemblyai",authType:"apiKey",baseUrl:"https://api.assemblyai.com/v2/transcript",authHeader:"Authorization"}},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana",icon:"image",color:"#FFD700",textIcon:"NB",website:"https://nanobananaapi.ai",serviceKinds:["image"]},elevenlabs:{id:"elevenlabs",alias:"el",name:"ElevenLabs",icon:"record_voice_over",color:"#6C47FF",textIcon:"EL",website:"https://elevenlabs.io",serviceKinds:["tts"]},cartesia:{id:"cartesia",alias:"cartesia",name:"Cartesia",icon:"spatial_audio",color:"#FF4F8B",textIcon:"CA",website:"https://cartesia.ai",serviceKinds:["tts"],hidden:!0},playht:{id:"playht",alias:"playht",name:"PlayHT",icon:"play_circle",color:"#00B4D8",textIcon:"PH",website:"https://play.ht",serviceKinds:["tts"],hidden:!0},"local-device":{id:"local-device",alias:"local-device",name:"Local Device",icon:"speaker",color:"#64748B",textIcon:"LD",serviceKinds:["tts"],noAuth:!0},"google-tts":{id:"google-tts",alias:"google-tts",name:"Google TTS",icon:"record_voice_over",color:"#4285F4",textIcon:"GT",serviceKinds:["tts"],noAuth:!0},"edge-tts":{id:"edge-tts",alias:"edge-tts",name:"Edge TTS",icon:"record_voice_over",color:"#0078D4",textIcon:"ET",serviceKinds:["tts"],noAuth:!0},sdwebui:{id:"sdwebui",alias:"sdwebui",name:"SD WebUI",icon:"brush",color:"#FF7043",textIcon:"SD",website:"https://github.com/AUTOMATIC1111/stable-diffusion-webui",serviceKinds:["image"]},comfyui:{id:"comfyui",alias:"comfyui",name:"ComfyUI",icon:"account_tree",color:"#4CAF50",textIcon:"CF",website:"https://github.com/comfyanonymous/ComfyUI",serviceKinds:["image"]},huggingface:{id:"huggingface",alias:"hf",name:"HuggingFace",icon:"huggingface",color:"#FFD21E",textIcon:"HF",website:"https://huggingface.co",serviceKinds:["image","imageToText","tts","stt"],hiddenKinds:["tts"],sttConfig:{format:"huggingface-asr",authType:"apiKey",baseUrl:"https://api-inference.huggingface.co/models",authHeader:"bearer"}},blackbox:{id:"blackbox",alias:"bb",name:"Blackbox AI",icon:"smart_toy",color:"#5B5FEF",textIcon:"BB",website:"https://blackbox.ai",serviceKinds:["llm"]},chutes:{id:"chutes",alias:"ch",name:"Chutes AI",icon:"water_drop",color:"#ffffffff",textIcon:"CH",website:"https://chutes.ai"},"ollama-local":{id:"ollama-local",alias:"ollama-local",name:"Ollama Local",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com"},"vertex-partner":{id:"vertex-partner",alias:"vxp",name:"Vertex Partner",icon:"cloud",color:"#34A853",textIcon:"VP",website:"https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models"},tavily:{id:"tavily",alias:"tavily",name:"Tavily",icon:"search",color:"#5B21B6",textIcon:"TV",website:"https://tavily.com",serviceKinds:["webSearch"]},"brave-search":{id:"brave-search",alias:"brave",name:"Brave Search",icon:"travel_explore",color:"#FB542B",textIcon:"BR",website:"https://brave.com/search/api",serviceKinds:["webSearch"]},serper:{id:"serper",alias:"serper",name:"Serper",icon:"search",color:"#4F46E5",textIcon:"SP",website:"https://serper.dev",serviceKinds:["webSearch"]},exa:{id:"exa",alias:"exa",name:"Exa",icon:"manage_search",color:"#2563EB",textIcon:"EX",website:"https://exa.ai",serviceKinds:["webSearch"]},searxng:{id:"searxng",alias:"searxng",name:"SearXNG",icon:"saved_search",color:"#3B82F6",textIcon:"SX",website:"https://docs.searxng.org",serviceKinds:["webSearch"],noAuth:!0},firecrawl:{id:"firecrawl",alias:"firecrawl",name:"Firecrawl",icon:"local_fire_department",color:"#F59E0B",textIcon:"FC",website:"https://firecrawl.dev",serviceKinds:["webFetch"]}},l={"grok-web":{id:"grok-web",alias:"gw",name:"Grok Web (Subscription)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"GW",website:"https://grok.com",authType:"cookie",authHint:"Paste your sso= cookie value from grok.com",passthroughModels:!0,serviceKinds:["llm"]},"perplexity-web":{id:"perplexity-web",alias:"pw",name:"Perplexity Web (Pro/Max)",icon:"search",color:"#20808D",textIcon:"PW",website:"https://www.perplexity.ai",authType:"cookie",authHint:"Paste your __Secure-next-auth.session-token cookie value from perplexity.ai",serviceKinds:["llm"]}},c="openai-compatible-",u="anthropic-compatible-",d={...t,...o,...a,...s,...l};function p(e){for(let t of Object.values(d))if(t.alias===e||t.id===e)return t;return null}Object.values(d).reduce((e,t)=>(e[t.alias]=t.id,e),{}),Object.values(d).reduce((e,t)=>(e[t.id]=t.alias,e),{}),e.s(["AI_PROVIDERS",0,d,"ANTHROPIC_COMPATIBLE_PREFIX",0,u,"APIKEY_PROVIDERS",0,s,"FREE_PROVIDERS",0,t,"FREE_TIER_PROVIDERS",0,o,"MORPH_MANAGED_PROVIDER",0,n,"MORPH_MANAGED_PROVIDER_ID",0,r,"OAUTH_PROVIDERS",0,a,"OPENAI_COMPATIBLE_PREFIX",0,c,"USAGE_SUPPORTED_PROVIDERS",0,["claude","antigravity","kiro","amazon-q","github","codex","gemini-cli","qwen","iflow","ollama"],"WEB_COOKIE_PROVIDERS",0,l,"getProviderAlias",0,function(e){let t=d[e];return t?.alias||e},"getProviderByAlias",0,p,"isAnthropicCompatibleProvider",0,function(e){return"string"==typeof e&&e.startsWith(u)},"isMorphManagedProvider",0,function(e){return e===r},"isOpenAICompatibleProvider",0,function(e){return"string"==typeof e&&e.startsWith(c)},"resolveProviderId",0,function(e){let t=p(e);return t?.id||e}])},617325,e=>{"use strict";var t=e.i(878947),o=e.i(963219);let i=Object.freeze([{id:"auto",name:"Auto (Morph Router)",owned_by:"morph",contextWindow:8192,modalities:["text"],routingMode:"router",isAlias:!0},{id:"auto-manual",name:"Auto (Manual Router)",owned_by:"morph",contextWindow:196608,documentedContextWindow:262e3,verifiedRuntimeContextWindow:196608,contextWindowSource:"runtime-verified",modalities:["text"],routingMode:"manual",isAlias:!0},{id:"morph-qwen35-397b",name:"Qwen 3.5 397B",owned_by:"morph",contextWindow:196608,documentedContextWindow:262e3,verifiedRuntimeContextWindow:196608,contextWindowSource:"runtime-verified",modalities:["text","image"],pricing:{input:.478,output:3.5}},{id:"morph-dsv4flash",name:"DeepSeek V4 Flash",owned_by:"morph",contextWindow:393e3,documentedContextWindow:393e3,contextWindowSource:"documented",modalities:["text"],pricing:{input:.3,output:.4}},{id:"morph-minimax27-230b",name:"MiniMax M2.7",owned_by:"morph",contextWindow:196608,documentedContextWindow:2e5,verifiedRuntimeContextWindow:196608,contextWindowSource:"runtime-verified",modalities:["text"],pricing:{input:.279,output:1.2}},{id:"morph-qwen36-27b",name:"Qwen 3.6 27B",owned_by:"morph",contextWindow:131072,documentedContextWindow:131e3,verifiedRuntimeContextWindow:131072,contextWindowSource:"runtime-verified",modalities:["text"],pricing:{input:.498,output:2.4}}]),a=Object.freeze({applyDefault:"morph-v3-large",fastValidation:"morph-v3-fast",warpgrep:"morph-warp-grep-v2.1",compact:"morph-compactor"}),r=new Set(i.map(e=>e.id));function n(e){return"string"==typeof e&&r.has(e.trim())}t.PROVIDER_ID_TO_ALIAS,o.MORPH_MANAGED_PROVIDER_ID,Object.entries(o.AI_PROVIDERS).filter(([,e])=>e?.passthroughModels===!0).map(([e])=>e);let s=[...Object.entries(t.PROVIDER_MODELS).flatMap(([e,t])=>t.map(t=>({provider:e,model:t.id,name:t.name}))),...i.map(e=>({provider:"morph",model:e.id,name:e.name}))];e.s(["AI_MODELS",0,s,"MORPH_CORE_INTERNAL_MODELS",0,a,"getMorphFastModel",0,function(e){return n(e)&&i.find(t=>t.id===e.trim())||null},"getMorphFastModels",0,function(){return i.map(e=>({...e}))},"isMorphAutoModel",0,function(e){let t="string"==typeof e?e.trim():"";return"auto"===t||"auto-manual"===t},"isMorphFastModel",0,n])},427699,(e,t,o)=>{t.exports=e.x("events",()=>require("events"))},312125,e=>{"use strict";var t=e.i(902157),o=e.i(750227),i=e.i(427699),a=e.i(363154),r=e.i(966029),n=e.i(797701),s=e.i(64361);e.i(624953),e.i(824446);var l=e.i(620809),c=e.i(3397),u=e.i(256126),d=e.i(254649);e.i(603799);let p="u">typeof caches&&"object"==typeof caches;e.g._pendingRequests||(e.g._pendingRequests={byModel:{},byAccount:{}});let m=e.g._pendingRequests;e.g._lastErrorProvider||(e.g._lastErrorProvider={provider:"",ts:0});let h=e.g._lastErrorProvider;e.g._statsEmitter||(e.g._statsEmitter=new i.EventEmitter,e.g._statsEmitter.setMaxListeners(50));let f=e.g._statsEmitter;e.g._pendingTimers||(e.g._pendingTimers={});let g={};async function b(){let t=[],o={};try{let{getProviderConnections:t}=await e.A(605589);for(let e of(await t()))o[e.id]=e.name||e.email||e.id}catch{}for(let[e,i]of Object.entries(m.byAccount))for(let[a,r]of Object.entries(i))if(r>0){let i=o[e]||`Account ${e.slice(0,8)}...`,n=a.match(/^(.*) \((.*)\)$/),s=n?n[1]:a,l=n?n[2]:"unknown";t.push({model:s,provider:l,account:i,count:r})}return(0,n.ensureUsageSchema)((0,s.getUsageDbInstance)()),{activeRequests:t,recentRequests:(0,l.getRecentUsageRowsFromDb)(20,{source:"general"}),errorProvider:Date.now()-h.ts<1e4?h.provider:"",pending:m}}async function v(e,t={}){if(!p&&"off"!==(0,a.getChatObservabilityMode)())try{let t=e?.timestamp?e:{...e,timestamp:new Date().toISOString()};(0,n.ensureUsageSchema)((0,s.getUsageDbInstance)()),(0,d.queueUsageEvent)(t,{source:"general"}),f.emit("update")}catch(e){if(console.error("Failed to save usage stats:",e),t.propagateError)throw e}}async function y(t={}){let{getUsageHistory:o}=await e.A(557036);return o(t)}async function w({model:e,provider:t,connectionId:o,tokens:i,status:r}){let n;if(!p&&"off"!==(n=(0,a.getChatObservabilityMode)())&&("minimal"===n?"string"==typeof r&&r.startsWith("FAILED"):"sampled"!==n||"string"==typeof r&&r.startsWith("FAILED")||Math.random()<(0,a.getChatObservabilitySampleRate)()))try{(0,d.queueRequestLogEvent)({timestamp:new Date().toISOString(),provider:t,model:e,connectionId:o,tokens:i,status:r},{source:"general"})}catch(e){console.error("Failed to append usage request log:",e.message)}}async function x(i="all"){await (0,u.drainUsageQueue)();let a=await b();(0,n.ensureUsageSchema)((0,s.getUsageDbInstance)());let l=(0,c.getUsageStatsFromDb)(i,a),d=0===l.totalRequests?{...l,...function(e){let i=o.default.join(r.DATA_DIR,"usage.json");if(!t.default.existsSync(i))return null;let a=JSON.parse(t.default.readFileSync(i,"utf8")),n=a?.dailySummary||{},s=new Date(Date.now()).toISOString().slice(0,10),l=Object.keys(n).filter(e=>e<=s),c="7d"===e?l.slice(-7):l,u={totalRequests:0,totalPromptTokens:0,totalCompletionTokens:0,totalCost:0,byProvider:{},byModel:{}};for(let e of c){let t=n[e]||{};for(let[e,o]of(u.totalRequests+=Number(t.requests||0),u.totalPromptTokens+=Number(t.promptTokens||0),u.totalCompletionTokens+=Number(t.completionTokens||0),u.totalCost+=Number(t.cost||0),Object.assign(u.byProvider,t.byProvider||{}),Object.entries(t.byModel||{}))){let t=o?.rawModel||e.split("|")[0],i=o?.provider||e.split("|")[1]||"unknown",a=`${t} (${i})`;u.byModel[a]=o}}return u}(i)}:l,{getMorphUsageStats:p}=await e.A(875534);return function(e,t){for(let[o,i]of Object.entries(t?.byModel||{})){let t=Number(i?.requests||0);if(t<=0)continue;let a=Number(i?.inputTokens||0),r=Number(i?.outputTokens||0);e.byProvider["morph-fast"]=e.byProvider["morph-fast"]||{requests:0,promptTokens:0,completionTokens:0,cost:0,provider:"morph-fast"},e.byProvider["morph-fast"].requests+=t,e.byProvider["morph-fast"].promptTokens+=a,e.byProvider["morph-fast"].completionTokens+=r,e.byModel[`${o} (morph-fast)`]={rawModel:o,provider:"Morph Fast Models",requests:t,promptTokens:a,completionTokens:r},e.totalRequests+=t,e.totalPromptTokens+=a,e.totalCompletionTokens+=r,e.totalTokens+=a+r}return e.recentRequests=[...t?.recentRequests||[],...e.recentRequests||[]],e}(d,await p(i))}async function A(t="7d"){await (0,u.drainUsageQueue)();let{getChartDataFromDb:o}=await e.A(142416);return o(t)}e.s(["appendRequestLog",0,w,"getActiveRequests",0,b,"getChartData",0,A,"getUsageDb",0,function(){let e=(0,s.getUsageDbInstance)();return(0,n.ensureUsageSchema)(e),e},"getUsageHistory",0,y,"getUsageStats",0,x,"saveRequestUsage",0,v,"statsEmitter",0,f,"trackPendingRequest",0,function(e,t,o,i,a=!1,r=null){let n=t?`${e} (${t})`:e,s=`${o}|${n}`;if(m.byModel[n]||(m.byModel[n]=0),m.byModel[n]=Math.max(0,m.byModel[n]+(i?1:-1)),o&&(m.byAccount[o]||(m.byAccount[o]={}),m.byAccount[o][n]||(m.byAccount[o][n]=0),m.byAccount[o][n]=Math.max(0,m.byAccount[o][n]+(i?1:-1))),i){let e=setTimeout(()=>{let t=g[s];if(Array.isArray(t)){let o=t.indexOf(e);o>=0&&t.splice(o,1),0===t.length&&delete g[s]}m.byModel[n]>0&&(m.byModel[n]-=1),o&&m.byAccount[o]?.[n]>0&&(m.byAccount[o][n]-=1),f.emit("pending")},6e4);g[s]||(g[s]=[]),g[s].push(e)}else{let e=g[s];Array.isArray(e)&&e.length>0&&(clearTimeout(e.shift()),0===e.length&&delete g[s])}!i&&a&&t&&(h.provider=t.toLowerCase(),h.ts=Date.now());let l=new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"}),c=r&&"object"==typeof r?Object.entries(r).filter(([,e])=>null!=e&&""!==e).map(([e,t])=>`${e}=${t}`).join(" | "):"",u=`[${l}] [${i?"PENDING":a?"ERROR":"OK"}] ${i?"START":"END"}${a?" (ERROR)":""} | provider=${t} | model=${e}${c?` | ${c}`:""}`;console.log("morph"===t?`\x1b[38;5;205m${u}\x1b[0m`:u),f.emit("pending")}])},730901,684076,e=>{"use strict";let t=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i;e.s(["default",0,function(e){return"string"==typeof e&&t.test(e)}],684076);let o=[];for(let e=0;e<256;++e)o.push((e+256).toString(16).slice(1));e.s(["unsafeStringify",0,function(e,t=0){return(o[e[t+0]]+o[e[t+1]]+o[e[t+2]]+o[e[t+3]]+"-"+o[e[t+4]]+o[e[t+5]]+"-"+o[e[t+6]]+o[e[t+7]]+"-"+o[e[t+8]]+o[e[t+9]]+"-"+o[e[t+10]]+o[e[t+11]]+o[e[t+12]]+o[e[t+13]]+o[e[t+14]]+o[e[t+15]]).toLowerCase()}],730901)},689960,e=>{"use strict";var t=e.i(666680);let o={randomUUID:t.randomUUID},i=new Uint8Array(256),a=i.length;var r=e.i(730901);e.s(["v4",0,function(e,n,s){if(o.randomUUID&&!n&&!e)return o.randomUUID();var l=e,c=s;let u=(l=l||{}).random??l.rng?.()??(a>i.length-16&&((0,t.randomFillSync)(i),a=0),i.slice(a,a+=16));if(u.length<16)throw Error("Random bytes length must be >= 16");if(u[6]=15&u[6]|64,u[8]=63&u[8]|128,n){if((c=c||0)<0||c+16>n.length)throw RangeError(`UUID byte range ${c}:${c+15} is out of buffer bounds`);for(let e=0;e<16;++e)n[c+e]=u[e];return n}return(0,r.unsafeStringify)(u)}],689960)},505586,e=>{"use strict";async function t(){return e.A(605589)}async function o(){let{getModelAliases:e}=await t();return e()}async function i(e,o){let{setModelAlias:i}=await t();return i(e,o)}async function a(e,o){let{setModelAlias:i}=await t();return i(e,o)}async function r(e){let{deleteModelAlias:o}=await t();return o(e)}e.s(["deleteCurrentModelAlias",0,r,"getCurrentModelAliases",0,o,"setCurrentModelAlias",0,i,"setCurrentModelAliasByModel",0,a])},627766,e=>{"use strict";var t=e.i(963219);function o(e){let t=new Date(e).getTime();return!e||!Number.isFinite(t)||t<=Date.now()?null:new Date(t).toISOString()}function i(e={}){return Object.entries(e||{}).reduce((e,[t,i])=>{if(!t.startsWith("modelLock_"))return e;let a=o(i);return a&&e.push({key:t,model:t.slice(10)||"__all",until:a}),e},[])}function a(e={}){let t=[o(e?.nextRetryAt),o(e?.resetAt),...i(e).map(e=>e.until)].filter(Boolean);return 0===t.length?null:t.sort()[0]}function r(e){if(!e||"object"!=typeof e)return{status:"unknown",source:"missing",hasActiveModelLock:!1,cooldownUntil:null,activeModelLocks:[]};if(!1===e.isActive)return{status:"disabled",source:"isActive",hasActiveModelLock:!1,cooldownUntil:null,activeModelLocks:[]};let o=i(e),r=a(e),n=function(e={}){if(e?.reasonCode==="reauthorization_required")return{status:"disabled",source:"reasonCode"};let o=function(e={}){return e?.authType==="oauth"&&t.USAGE_SUPPORTED_PROVIDERS.includes(e?.provider)}(e),i=function(e={}){return e?.usageSnapshot!==void 0&&e?.usageSnapshot!==null}(e);switch(e?.authState){case"expired":case"invalid":case"revoked":return{status:"blocked",source:"authState"}}switch(e?.healthStatus){case"error":case"failed":case"unhealthy":case"down":return{status:"blocked",source:"healthStatus"}}switch(e?.quotaState){case"exhausted":case"blocked":return{status:"exhausted",source:"quotaState"};case"ok":if(e?.authState==="ok"&&e?.healthStatus==="healthy"){if(o&&!i)return{status:"unknown",source:"missingUsageSnapshot"};return{status:"eligible",source:"quotaState"}}}switch(e?.routingStatus){case"eligible":if(o&&!i)return{status:"unknown",source:"missingUsageSnapshot"};return{status:e.routingStatus,source:"routingStatus"};case"exhausted":case"blocked":case"unknown":case"disabled":return{status:e.routingStatus,source:"routingStatus"}}return null}(e);return n?{status:n.status,source:n.source,hasActiveModelLock:o.length>0,cooldownUntil:r,activeModelLocks:o}:{status:"unknown",source:"unknown",hasActiveModelLock:o.length>0,cooldownUntil:r,activeModelLocks:o}}e.s(["getConnectionCentralizedStatus",0,function(e={}){return r(e).status},"getConnectionCooldownUntil",0,a,"getConnectionEffectiveStatus",0,function(e){return r(e).status},"getConnectionProviderCooldownUntil",0,function(e={}){let t=[o(e?.nextRetryAt),o(e?.resetAt)].filter(Boolean);return 0===t.length?null:t.sort()[0]},"getConnectionStatusDetails",0,r])},712943,e=>{"use strict";e.s(["default",0,{name:"axonrouter",version:"0.1.2",description:"AxonRouter - Local-first AI routing gateway",private:!1,type:"module",files:["bin/axonrouter.js","bin/mcp-server-launcher.js",".next/standalone/",".next/static/","public/","open-sse/","src/","!src/node_modules/","!src/package.json","!src/package-lock.json","scripts/start.ts","README.md","LICENSE"],bin:{axonrouter:"bin/axonrouter.js","axonrouter-mcp":"bin/mcp-server-launcher.js"},scripts:{dev:"bun --bun next dev --hostname 127.0.0.1 --turbopack --port 12712",build:"NODE_ENV=production next build --turbopack && bun ./scripts/ensure-middleware-manifest.ts",start:"NODE_ENV=production bun ./scripts/start.ts",lint:"eslint .",typecheck:"tsc --noEmit",test:"bun --cwd tests vitest run --reporter=verbose",prepack:"npm run build"},dependencies:{"@monaco-editor/react":"^4.7.0","@tanstack/pacer":"^0.21.1","@tanstack/react-query":"^5.100.10","@tanstack/react-table":"^8.21.3","@tanstack/react-virtual":"^3.13.24","@xyflow/react":"^12.10.1",bcryptjs:"^3.0.3","better-sqlite3":"^12.6.2","class-variance-authority":"^0.7.1",confbox:"^0.2.4","got-scraping":"^4.2.1",lowdb:"^7.0.1","lucide-react":"^1.14.0",marked:"^18.0.1","monaco-editor":"^0.55.1",next:"16.2.6","next-themes":"^0.4.6","node-forge":"^1.3.3","node-machine-id":"^1.1.12",open:"^11.0.0",ora:"^9.1.0",paseto:"^3.1.4","radix-ui":"^1.4.3",react:"19.2.4","react-dom":"19.2.4",recharts:"^3.7.0",sonner:"^2.0.7","tailwind-merge":"^3.6.0",undici:"^7.19.2",uuid:"^13.0.2",zustand:"^5.0.10"},devDependencies:{"@tailwindcss/postcss":"^4.1.18","@tanstack/react-query-devtools":"^5.100.10","@types/react":"19.2.14",eslint:"^9","eslint-config-next":"16.2.6",postcss:"^8.5.10",shadcn:"^4.7.0",tailwindcss:"^4",typescript:"^6.0.3"},repository:{type:"git",url:"https://github.com/rickicode/axonrouter.git"},keywords:["ai-router","llm-proxy","openai","claude","gemini","smart-fallback","rate-limiting"],author:"rickicode",license:"MIT",engines:{node:">=22.6.0"},homepage:"https://github.com/rickicode/axonrouter#readme",publishConfig:{access:"public"},overrides:{dompurify:"^3.4.0"}}])},651948,e=>{"use strict";var t=e.i(712943);e.i(963219),e.i(617325),t.default.version,e.s(["CONSOLE_LOG_CONFIG",0,{maxLines:200,pollIntervalMs:1e3},"UPDATER_CONFIG",0,{npmPackageName:"axonrouter",installCmd:"npm i -g axonrouter",exitDelayMs:500}])},160655,e=>{"use strict";let t=new Set(["openagent","slim","custom"]),o=new Set([null,"minimal","opinionated"]),i=new Set(["include","exclude"]),a=new Set(["local","remote"]),r="********";function n(e){let t=Error(e);return t.name="OpenCodeValidationError",t.code="OPENCODE_VALIDATION_ERROR",t}function s(e){return"string"==typeof e?e.trim():""}function l(e){return s(e)||null}function c(e){if(!Array.isArray(e))return[];let t=new Set,o=[];for(let i of e){let e=s(i);!e||t.has(e)||(t.add(e),o.push(e))}return o}function u(e){var t,o;let i,a={variant:"openagent",customTemplate:null,defaultModel:null,modelSelectionMode:"exclude",includedModels:[],excludedModels:[],customPlugins:[],mcpServers:[],envVars:[],advancedOverrides:{openagent:{},slim:{},custom:{}},updatedAt:null},r=e&&"object"==typeof e&&!Array.isArray(e)?e:{};return{...a,...r,variant:s(r.variant)||a.variant,customTemplate:l(r.customTemplate),defaultModel:l(r.defaultModel),modelSelectionMode:s(r.modelSelectionMode)||a.modelSelectionMode,includedModels:c(r.includedModels),excludedModels:c(r.excludedModels),customPlugins:c(r.customPlugins),mcpServers:Array.isArray(t=r.mcpServers)?t.map(e=>(function(e){var t;if(!e||"object"!=typeof e||Array.isArray(e))return null;let o=s(e.type),i=o||"local",a={name:s(e.name)};return o&&(a.type=o),"remote"===i?a.url=s(e.url):a.command=Array.isArray(t=e.command)?t.map(e=>s(e)).filter(Boolean):s(t)||"",a})(e)).filter(Boolean):[],envVars:function(e){if(!Array.isArray(e))return[];let t=new Map;for(let o of e){let e=s(o?.key);e&&t.set(e,{key:e,value:"string"==typeof o?.value?o.value:o?.value==null?"":String(o.value),secret:o?.secret===!0})}return Array.from(t.values()).sort((e,t)=>e.key.localeCompare(t.key))}(r.envVars),advancedOverrides:{openagent:(i=(o=r.advancedOverrides)&&"object"==typeof o&&!Array.isArray(o)?o:{}).openagent&&"object"==typeof i.openagent&&!Array.isArray(i.openagent)?i.openagent:{},slim:i.slim&&"object"==typeof i.slim&&!Array.isArray(i.slim)?i.slim:{},custom:i.custom&&"object"==typeof i.custom&&!Array.isArray(i.custom)?i.custom:{}},updatedAt:l(r.updatedAt)}}function d(e){let t=s(e).toLowerCase();return!["secret","issecret","sensitive"].includes(t)&&!!(t.includes("secret")||t.includes("password")||t.includes("authorization")||"apikey"===t||"api_key"===t||t.endsWith("apikey")||t.endsWith("api_key")||["token","accesstoken","refreshtoken","idtoken","sessiontoken","bearertoken"].includes(t)||t.endsWith("token")&&!t.endsWith("tokens"))}function p(e,t=""){if(Array.isArray(e))return e.map(e=>p(e,t));if(d(t))return r;if(!e||"object"!=typeof e)return e;let o=!0===e.secret||!0===e.isSecret||!0===e.sensitive;return Object.fromEntries(Object.entries(e).map(([e,t])=>o&&"value"===e||d(e)?[e,r]:[e,p(t,e)]))}e.s(["createOpenCodeValidationError",0,n,"isOpenCodeValidationError",0,function(e){return e?.code==="OPENCODE_VALIDATION_ERROR"||e?.name==="OpenCodeValidationError"},"normalizeOpenCodePreferences",0,u,"sanitizeOpenCodePreferencesForResponse",0,function(e){return p(u(e))},"sanitizeSensitiveConfig",0,p,"validateOpenCodePreferences",0,function(e){let r=u(e);if(!t.has(r.variant))throw n("Invalid OpenCode variant");if(!o.has(r.customTemplate))throw n("Invalid custom template");if("custom"!==r.variant&&null!==r.customTemplate)throw n("Custom template is only valid for custom variant");if(!i.has(r.modelSelectionMode))throw n("Invalid model selection mode");let s=new Set;for(let e of r.mcpServers){if(!e.name)throw n("Invalid MCP server: name is required");let t=e.name.toLowerCase();if(s.has(t))throw n(`Duplicate MCP server name: ${e.name}`);s.add(t);let o=e.type||"local";if(!a.has(o))throw n(`Invalid MCP server type for ${e.name}`);if("remote"===o){if(!e.url)throw n(`Remote MCP server "${e.name}" requires a URL`);try{let t=new URL(e.url);if(!["http:","https:"].includes(t.protocol))throw Error("unsupported")}catch{throw n(`Invalid MCP server URL for ${e.name}`)}continue}if(Array.isArray(e.command)){if(0===e.command.length)throw n(`Local MCP server "${e.name}" requires a command`)}else if(!e.command)throw n(`Local MCP server "${e.name}" requires a command`)}return r}])},553605,e=>{"use strict";let t=[],o=0,i=0,a=0,r=null,n=0;function s({ms:e,providerId:l=null,status:c="ok"}={}){if("number"!=typeof e||!Number.isFinite(e)||e<0)return;let u={t:Date.now(),ms:e,status:c,providerId:l||null};t.length<2048?t.push(u):(t[o]=u,o=(o+1)%2048),i+=1,"ok"!==c&&(a+=1),r=e,n=u.t}function l(e,t){if(0===e.length)return null;if(1===e.length)return e[0];let o=(e.length-1)*t,i=Math.floor(o),a=Math.ceil(o);return i===a?e[i]:e[i]+(e[a]-e[i])*(o-i)}async function c(e,{providerId:t=null}={}){let o=Date.now();try{let i=await e(),a=Date.now()-o;return s({ms:a,providerId:t,status:"ok"}),i}catch(e){throw s({ms:Date.now()-o,providerId:t,status:"error"}),e}}e.s(["getRoutingLatencySummary",0,function({windowMs:e=3e5}={}){let o=Date.now()-Math.max(0,Number(e)||3e5),s=t.filter(e=>e.t>=o),c=null,u=0;for(let e of s)(null===c||e.t<c)&&(c=e.t),"ok"!==e.status&&(u+=1);let d=s.map(e=>e.ms).sort((e,t)=>e-t),p=d.length,m=null,h=0;for(let e of d)h+=e;return p>0&&(m=h/p),{p50:l(d,.5),p95:l(d,.95),p99:l(d,.99),avg:m,min:p>0?d[0]:null,max:p>0?d[p-1]:null,count:p,errorCount:u,totalCount:i,totalErrorCount:a,lastMs:r,lastAt:n,windowMs:Math.max(0,Number(e)||3e5),sampledFromMs:c}},"measureRouting",0,c,"recordRoutingLatency",0,s])},9626,e=>{"use strict";let t=Object.freeze({enabled:!0,intervalMinutes:2880,providers:{},lastRunAt:null,lastRunStatus:"idle",lastRunMessage:""});function o(e,t){let o=Number(e);return!Number.isFinite(o)||o<=0?t:Math.max(1,Math.round(o))}e.s(["DEFAULT_MODEL_SYNC_SETTINGS",0,t,"normalizeModelSyncSettings",0,function(e={}){var i;let a=e&&"object"==typeof e&&!Array.isArray(e)?e:{};return{enabled:!1!==a.enabled,intervalMinutes:o(a.intervalMinutes,t.intervalMinutes),providers:!(i=a.providers)||"object"!=typeof i||Array.isArray(i)?{}:Object.fromEntries(Object.entries(i).filter(([e])=>"string"==typeof e&&e.trim()).map(([e,i])=>{let a=i&&"object"==typeof i&&!Array.isArray(i)?i:{};return[e,{enabled:!1!==a.enabled,intervalMinutes:o(a.intervalMinutes,t.intervalMinutes),lastRunAt:"string"==typeof a.lastRunAt?a.lastRunAt:null,lastRunStatus:"string"==typeof a.lastRunStatus?a.lastRunStatus:"idle",lastRunMessage:"string"==typeof a.lastRunMessage?a.lastRunMessage:""}]})),lastRunAt:"string"==typeof a.lastRunAt?a.lastRunAt:null,lastRunStatus:"string"==typeof a.lastRunStatus?a.lastRunStatus:"idle",lastRunMessage:"string"==typeof a.lastRunMessage?a.lastRunMessage:""}}])},392631,e=>{"use strict";let t=new Set(["team","business","enterprise","edu","hc","self_serve_business_usage_based","enterprise_cbp_usage_based"]),o={free:"Free",plus:"Plus",pro:"Pro",go:"Go",team:"Team",business:"Business",enterprise:"Enterprise",edu:"Edu",hc:"Enterprise",self_serve_business_usage_based:"Self Serve Business Usage Based",enterprise_cbp_usage_based:"Enterprise CBP Usage Based"};function i(e){if(!e||"object"!=typeof e||Array.isArray(e))return;let i="string"==typeof e.planTypeRaw&&e.planTypeRaw.trim()||void 0,a="string"==typeof e.planType?e.planType.trim()||void 0:function(e){if("string"!=typeof e)return;let t=e.trim();if(t)return o[t]||t.split("_").filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")}(i),r="string"==typeof e.chatgptUserId&&e.chatgptUserId.trim()||void 0,n="string"==typeof e.chatgptAccountId&&e.chatgptAccountId.trim()||void 0,s="boolean"==typeof e.isWorkspaceAccount?e.isWorkspaceAccount:!!(i&&t.has(i)),l={...e,...a?{planType:a}:{},...i?{planTypeRaw:i}:{},...r?{chatgptUserId:r}:{},...n?{chatgptAccountId:n}:{},...a||i||r||n||void 0!==e.isWorkspaceAccount?{isWorkspaceAccount:s}:{}};return a||delete l.planType,i||delete l.planTypeRaw,r||delete l.chatgptUserId,n||delete l.chatgptAccountId,a||i||r||n||void 0!==e.isWorkspaceAccount||delete l.isWorkspaceAccount,Object.keys(l).length>0?l:void 0}e.s(["extractCodexIdentityFromJwt",0,function(e){let t=function(e){try{if(!e||"string"!=typeof e)return null;let t=e.split(".");if(3!==t.length)return null;let o=t[1].replace(/-/g,"+").replace(/_/g,"/"),i="=".repeat((4-o.length%4)%4);return JSON.parse(Buffer.from(o+i,"base64").toString("utf8"))}catch{return null}}(e)||{},o=t["https://api.openai.com/auth"]||{};return{email:t.email||void 0,displayName:t.name||t.nickname||t.preferred_username||t.email||void 0,providerSpecificData:i({planTypeRaw:o.chatgpt_plan_type||void 0,chatgptUserId:o.chatgpt_user_id||o.user_id||void 0,chatgptAccountId:o.chatgpt_account_id||void 0})}},"normalizeCodexProviderSpecificData",0,i])},931354,e=>{"use strict";let t=["priority","weighted","round-robin","context-relay","fill-first","p2c","random","least-used","cost-optimized","strict-random","auto","lkgp","context-optimized"];e.s(["ROUTING_STRATEGY_VALUES",0,t,"normalizeRoutingStrategy",0,function(e){if("string"!=typeof e)return"priority";let o=e.trim().toLowerCase();return"usage"===o?"least-used":"context"===o?"context-optimized":t.includes(o)?o:"priority"}])},998905,e=>{"use strict";function t(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}function o(e){return"string"==typeof e&&e.trim().length>0?e.trim():null}function i(e){let t=e.trim(),o=t.indexOf("/");if(o<=0)return null;let i=t.slice(0,o).trim();return i.length>0?i:null}function a(e,t){let i=e.trim();if(i.includes("/"))return i;let a=o(t);return a?`${a}/${i}`:i}function r(e){let t=e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"");return t.length>0?t:"step"}function n(e,t,o,i){return[r(t||"combo"),"combo-ref"===e?"ref":"model",String(o+1),r(i)].join("-").slice(0,200)}function s(e,i,a){return!i&&((function(e){let i=new Set;if(!e)return i;if(!Array.isArray(e)&&"function"==typeof e?.[Symbol.iterator]&&!(t(e)&&Array.isArray(e.combos))){for(let t of e){let e=o(t);e&&i.add(e)}return i}let a=t(e)&&Array.isArray(e.combos)?e.combos:[];for(let t of Array.isArray(e)?e:a){let e="string"==typeof t?o(t):o(t?.name);e&&i.add(e)}return i})(a?.allCombos).has(e)||e===o(a?.comboName))}function l(e,r={}){return(Array.isArray(e)?e:[]).map((e,l)=>(function(e,r={}){var l;let c,u=o(r.comboName),d="number"==typeof r.index?r.index:0;if("string"==typeof e){let t=o(e);if(!t)return null;if(s(t,null,r))return{id:n("combo-ref",u,d,t),kind:"combo-ref",comboName:t,weight:0};let a=i(t);return{id:n("model",u,d,t),kind:"model",model:t,...a?{providerId:a}:{},weight:0}}if(!t(e))return null;let p=o(e.id),m=Number.isFinite(c="number"==typeof(l=e.weight)?l:"string"==typeof l&&l.trim().length>0?Number(l):0)?Math.max(0,Math.min(100,c)):0,h=o(e.label);if("combo-ref"===e.kind){let t=o(e.comboName);return t?{id:p||n("combo-ref",u,d,t),kind:"combo-ref",comboName:t,weight:m,...h?{label:h}:{}}:null}let f=o(e.model);if(!f)return null;let g="model"===e.kind,b=o(e.providerId)||o(e.provider)||i(f);if(!g&&s(f,b,r))return{id:p||n("combo-ref",u,d,f),kind:"combo-ref",comboName:f,weight:m,...h?{label:h}:{}};let v=a(f,b),y=null===e.connectionId?null:o(e.connectionId)||void 0,w=Array.isArray(e.tags)?e.tags.map(e=>o(e)).filter(Boolean):void 0;return{id:p||n("model",u,d,y?`${v}:${y}`:v),kind:"model",model:v,...b?{providerId:b}:{},...void 0!==y?{connectionId:y}:{},weight:m,...h?{label:h}:{},...w&&w.length>0?{tags:w}:{}}})(e,{...r,index:l})).filter(Boolean)}e.s(["getComboModelProvider",0,function(e){return"string"==typeof e?i(e):t(e)&&"combo-ref"!==e.kind?o(e.providerId)||o(e.provider)||i(o(e.model)||""):null},"getComboStepTarget",0,function(e,r={}){if("string"==typeof e){let t=o(e);return t||null}if(!t(e))return null;if("combo-ref"===e.kind)return o(e.comboName);let n=o(e.model);if(!n)return null;let l="model"===e.kind,c=o(e.providerId)||o(e.provider)||i(n);return!l&&s(n,c,r)?n:a(n,c)},"normalizeComboModels",0,l,"normalizeComboRecord",0,function(e,i={}){let a=o(e?.name);return{...t(e)?e:{},version:2,models:l(e?.models,{comboName:a,allCombos:i.allCombos})}}])},330599,e=>{"use strict";var t=e.i(627766);e.s(["getProviderConnectionStatusSummary",0,function(e=[]){let o={connected:0,error:0,unknown:0,total:e.length,allDisabled:e.length>0&&e.every(e=>e?.isActive===!1)};for(let i of e){let e=(0,t.getConnectionStatusDetails)(i).status;"eligible"===e?o.connected+=1:"blocked"===e||"exhausted"===e?o.error+=1:o.unknown+=1}return o}])},196054,e=>{"use strict";var t=e.i(902157);e.i(245272);var o=e.i(727917),i=e.i(103447),a=e.i(918431),r=e.i(312125);e.i(824446);var n=e.i(624953),s=e.i(603799),l=e.i(553605),c=e.i(505586),c=c;e.i(651948);var u=e.i(617325),d=e.i(665032),p=e.i(64361),m=e.i(724835);function h(e=""){return(function(e=""){return String(e).replace(/&#x([0-9a-f]+);/gi,(e,t)=>String.fromCodePoint(parseInt(t,16))).replace(/&#(\d+);/g,(e,t)=>String.fromCodePoint(parseInt(t,10))).replace(/&amp;/g,"&").replace(/&quot;/g,'"').replace(/&#39;/g,"'").replace(/&apos;/g,"'").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&nbsp;/g," ")})(String(e).replace(/<script[\s\S]*?<\/script>/gi,"").replace(/<style[\s\S]*?<\/style>/gi,"").replace(/<[^>]+>/g," ")).replace(/\s+/g," ").trim()}function f(e=""){try{let t=new URL(e,"https://duckduckgo.com"),o=t.searchParams.get("uddg");return o?decodeURIComponent(o):t.toString()}catch{return e}}async function g(){let[e,t,a,r]=await Promise.all([(0,o.getSettings)(),(0,i.getProviderConnections)(),Promise.resolve((0,l.getRoutingLatencySummary)()),(0,d.readMcpHeartbeat)()]);return{ok:!0,runtime:{heartbeat:r,heartbeatOnline:(0,d.isMcpHeartbeatOnline)(r),http:(0,d.getHttpTransportState)()},settings:{observabilityEnabled:e?.observabilityEnabled!==!1,routingProfile:e?.routingProfile||e?.routing?.profile||null},providers:{total:t.length,active:t.filter(e=>!1!==e.isActive).length},latency:a}}async function b(e=!1){let t=await (0,a.getCombos)(),o=e?(0,n.getUsageAnalyticsFromDb)({period:"30d"}):null;return{combos:t,metrics:o?{totalRequests:o.summary?.totalRequests||0}:null}}async function v(e){return{combo:await (0,a.getComboById)(e),note:"Combo metrics adapter pending richer telemetry."}}async function y(e,t={}){return(0,a.updateCombo)(e,t)}async function w(e){let t=await (0,i.getProviderConnections)(e?{provider:e}:void 0);return{provider:e||null,connections:t.map(e=>({id:e.id,provider:e.provider,name:e.name,quotaState:e.quotaState||null,routingStatus:e.routingStatus||null,resetAt:e.resetAt||null,reasonCode:e.reasonCode||null}))}}async function x(e,t){let o=await fetch(`${e}/api/v1/unified`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),i=(o.headers.get("content-type")||"").includes("application/json")?await o.json().catch(()=>null):{status:o.status};return{ok:o.ok,status:o.status,result:i}}async function A(e="7d"){return(0,r.getUsageStats)(e)}async function S(){let e=await (0,c.getCurrentModelAliases)();return{models:u.AI_MODELS.map(t=>({...t,fullModel:`${t.provider}/${t.model}`,alias:e[`${t.provider}/${t.model}`]||t.model}))}}async function k(e){let t=(0,n.getUsageAnalyticsFromDb)({period:"30d",provider:e}),o=(0,l.getRoutingLatencySummary)(),a=await (0,i.getProviderConnections)(e?{provider:e}:void 0);return{provider:e||null,analytics:t,latency:o,connections:a.map(e=>({id:e.id,provider:e.provider,name:e.name,healthStatus:e.healthStatus||null,routingStatus:e.routingStatus||null,quotaState:e.quotaState||null,authState:e.authState||null}))}}async function I(e={}){let t=await (0,o.getSettings)();return{simulated:!0,request:e,routingProfile:t?.routingProfile||t?.routing?.profile||"balanced",strategy:t?.routing?.strategy||"fill-first",note:"Simulation currently reflects configured policy and does not execute upstream traffic."}}async function C(e={}){let t=await (0,o.getSettings)(),i={...t?.governance||{},enabled:e.enabled??t?.governance?.enabled??!1,monthlyBudgetCapUsd:Number(e.monthlyBudgetCapUsd??t?.governance?.monthlyBudgetCapUsd??0)},a=await (0,o.updateSettings)({governance:i});return{ok:!0,governance:a?.governance||i}}async function _(e={}){let t=await (0,o.getSettings)(),i={...t?.routing||{},...e.strategy?{strategy:e.strategy}:{},...e.profile?{profile:e.profile}:{}},a=await (0,o.updateSettings)({routing:i,...e.profile?{routingProfile:e.profile}:{}});return{ok:!0,routing:a?.routing||i,routingProfile:a?.routingProfile||e.profile||null}}async function M(e={}){let t=await (0,o.getSettings)(),i={...t?.mcpResilience||{},profile:e.profile||t?.mcpResilience?.profile||"balanced",updatedAt:new Date().toISOString()},a=await (0,o.updateSettings)({mcpResilience:i});return{ok:!0,resilience:a?.mcpResilience||i}}async function U(e="general"){let t=await (0,a.getCombos)(),o=(0,n.getUsageAnalyticsFromDb)({period:"30d"});return{taskType:e,suggestion:t[0]||null,candidates:t,note:t.length>0?`Selected first available combo as efficient default for ${e}.`:"No combos configured.",analyticsSummary:o?.summary||null}}async function R(e,t=""){let o=await (0,a.getComboById)(e);return{ok:!!o,combo:o,promptPreview:t?t.slice(0,120):"",note:o?"Combo resolved; execution-grade combo testing adapter still pending.":"Combo not found."}}async function T(e,t=5){let o=String(e||"").trim();if(!o)return{ok:!1,query:o,provider:"duckduckgo-html",results:[],error:"query is required"};let i=Number.isFinite(Number(t))?Math.max(1,Math.min(10,Number(t))):5,a=`https://duckduckgo.com/html/?q=${encodeURIComponent(o)}`,r=await fetch(a,{headers:{"User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml"}}),n=function(e="",t=5){let o,i=[],a=Number.isFinite(Number(t))?Math.max(1,Math.min(10,Number(t))):5,r=new Set,n=/<a[^>]*class="[^"]*result__a[^"]*"[^>]*href="([^"]+)"[^>]*>([\s\S]*?)<\/a>[\s\S]*?(?:<a[^>]*class="[^"]*result__snippet[^"]*"[^>]*>|<div[^>]*class="[^"]*result__snippet[^"]*"[^>]*>)([\s\S]*?)(?:<\/a>|<\/div>)/gi;for(;(o=n.exec(e))&&i.length<a;){let[,e,t,a]=o,n=f(e);r.has(n)||(r.add(n),i.push({title:h(t),url:n,snippet:h(a)}))}if(i.length>=a)return i;let s=/<(?:div|article)[^>]*class="[^"]*(?:result|results_links|web-result)[^"]*"[^>]*>([\s\S]*?)<\/(?:div|article)>/gi;for(;(o=s.exec(e))&&i.length<a;){let e=o[1],t=e.match(/<a[^>]*href="([^"]+)"[^>]*>([\s\S]*?)<\/a>/i);if(!t)continue;let a=f(t[1]);if(!a||r.has(a))continue;let n=h(t[2]),s=e.match(/<(?:div|a|span)[^>]*class="[^"]*(?:snippet|result__extras__url|result__body)[^"]*"[^>]*>([\s\S]*?)<\/(?:div|a|span)>/i),l=h(s?.[1]||e);n&&(r.add(a),i.push({title:n,url:a,snippet:l}))}return i}(await r.text(),i);return{ok:r.ok,query:o,provider:"duckduckgo-html",limit:i,results:n,resultCount:n.length,note:n.length>0?"Search results fetched from DuckDuckGo HTML.":"No results parsed from DuckDuckGo HTML response."}}function E(e){let o=t.default.existsSync(e);return{status:o?"ok":"missing",file:e,sizeBytes:o?t.default.statSync(e).size:0}}function D(e,o,i){let a,r;if(!t.default.existsSync(o))return{label:e,repaired:!1,skipped:!0,reason:"missing_file"};let n=(a=new Date().toISOString().replace(/[:.]/g,"-"),r=`${o}.mcp-repair-${a}.bak`,t.default.copyFileSync(o,r),r),s=i();return s.pragma("wal_checkpoint(TRUNCATE)"),s.exec("VACUUM"),{label:e,repaired:!0,backupPath:n,actions:["backup","wal_checkpoint_truncate","vacuum"]}}async function P(e=!1){let[t,i,a]=await Promise.all([(0,s.getKnownProviders)(),(0,d.readMcpHeartbeat)(),(0,o.getSettings)()]),r=(0,p.getUsageSqliteFile)(),n=(0,m.getRequestDetailsSqliteFile)(),l={usageDb:E(r),requestDetails:E(n),settingsDb:{status:"ok",cloudEnabled:a?.cloudEnabled===!0},mcpHeartbeat:{status:i?(0,d.isMcpHeartbeatOnline)(i)?"ok":"stale":"missing",snapshot:i}},c=e?[D("usageDb",r,()=>(0,p.getUsageDbInstance)()),D("requestDetails",n,()=>(0,m.getRequestDetailsDbInstance)())]:[];return{ok:!0,checks:l,providerCount:t.length,autoRepairSupported:!0,autoRepairApplied:!0===e,repairs:c,note:e?"Basic non-destructive MCP repair completed for available SQLite files.":"This health check inspects live MCP/runtime database artifacts. Auto-repair is available for safe maintenance steps."}}async function O(){let e=await (0,o.getPricing)(),t=Object.keys(e||{});return{ok:!0,synced:!1,providerCount:t.length,providers:t,pricing:e,note:"Pricing store was loaded successfully. Upstream synchronization is not implemented yet."}}async function F(e,t,o){if(!o)return{ok:!1,url:t,proxyPoolId:null,error:"proxyPoolId is required"};let i=await fetch(`${e}/api/proxy-pools/${encodeURIComponent(o)}/test`,{method:"POST",headers:{"Content-Type":"application/json"}}),a=await i.json().catch(()=>({}));return{ok:i.ok&&a?.ok===!0,url:t,proxyPoolId:o,proxyTest:a}}async function q(e){let t=(await (0,o.getProxyPools)()).find(t=>t.id===e)||null;return t?{ok:!0,proxyPool:t,rotatedTo:t.id,note:"Rotation currently resolves the selected pool deterministically. Stateful pool cycling can be added later."}:{ok:!1,proxyPoolId:e,error:"Proxy pool not found"}}async function j(e){return(await fetch(`${e}/api/usage-worker/status`,{cache:"no-store"})).json()}async function N(e){return(0,s.getRequestDetailById)(e)}async function L(e){return(await fetch(`${e}/api/cache-domain`,{cache:"no-store"})).json()}async function B(e,t){return(await fetch(`${e}/api/cache-domain?layer=${encodeURIComponent(t)}`,{method:"DELETE"})).json()}async function K(e){let t=await fetch(`${e}/api/proxy-pools?includeUsage=true`,{cache:"no-store"}),o=await t.json(),i=Array.isArray(o?.proxyPools)?o.proxyPools:[];return{proxyPools:i,summary:{total:i.length,active:i.filter(e=>!1!==e.isActive).length,boundConnections:i.reduce((e,t)=>e+Number(t.boundConnectionCount||0),0)}}}async function $(e){return e&&await (0,o.validateApiKey)(e)&&(await (0,o.getApiKeys)()).find(t=>t.key===e)||null}async function z(e){let t=await (0,s.getRequestDetailById)(e);return{id:e,correlationId:t?.correlationId||null,trace:t?.providerResponse?.trace||null,traceSummary:t?.traceSummary||null,request:t?.request||null,provider:t?.provider||null,model:t?.model||null,note:"Detailed route explanation formatter pending."}}async function H(){return(0,s.getKnownProviders)()}e.s(["bestComboForTask",0,U,"cacheFlush",0,B,"cacheStats",0,L,"checkQuota",0,w,"costReport",0,A,"dbHealthCheck",0,P,"explainRoute",0,z,"getComboMetrics",0,v,"getHealth",0,g,"knownProviders",0,H,"listCombos",0,b,"listModelsCatalog",0,S,"pricingSync",0,O,"providerMetrics",0,k,"proxyFetch",0,F,"proxyRotate",0,q,"proxyStats",0,K,"resolveCallerFromKey",0,$,"routeRequest",0,x,"sessionSnapshot",0,N,"setBudgetGuard",0,C,"setResilienceProfile",0,M,"setRoutingStrategy",0,_,"simulateRoute",0,I,"switchCombo",0,y,"testCombo",0,R,"usageWorkerStatus",0,j,"webSearch",0,T],196054)},312495,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__0iily9e._.js"].map(t=>e.l(t))).then(()=>t(854367)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__0evsmel._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},557036,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__0hqtm67._.js","server/chunks/src_lib_usageDb_12ol0zc._.js","server/chunks/[root-of-the-server]__0~fl033._.js","server/chunks/src_lib_requestDetailsDb_ts_0-244ac._.js"].map(t=>e.l(t))).then(()=>t(400722)))},875534,e=>{e.v(t=>Promise.all(["server/chunks/src_0hmdd9m._.js","server/chunks/src_lib_usageDb_0a3k2d7._.js","server/chunks/_0pxnrl-._.js","server/chunks/open-sse_config_providerModels_ts_0jf__3z._.js","server/chunks/[root-of-the-server]__0fif8d3._.js"].map(t=>e.l(t))).then(()=>t(737170)))},142416,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__10637_7._.js","server/chunks/src_lib_usageDb_0a3k2d7._.js"].map(t=>e.l(t))).then(()=>t(697334)))}];
1
+ module.exports=[776548,e=>{"use strict";var t=e.i(446786);let o={"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},i="https://api.kimi.com/coding/v1/messages",a={claude:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,oauth-2025-04-20,interleaved-thinking-2025-05-14,context-management-2025-06-27,prompt-caching-scope-2026-01-05,advanced-tool-use-2025-11-20,effort-2025-11-24,structured-outputs-2025-12-15,fast-mode-2026-02-01,redact-thinking-2026-02-12,token-efficient-tools-2026-03-28","Anthropic-Dangerous-Direct-Browser-Access":"true","User-Agent":"claude-cli/2.1.92 (external, sdk-cli)","X-App":"cli","X-Stainless-Helper-Method":"stream","X-Stainless-Retry-Count":"0","X-Stainless-Runtime-Version":"v24.14.0","X-Stainless-Package-Version":"0.80.0","X-Stainless-Runtime":"node","X-Stainless-Lang":"js","X-Stainless-Arch":function(){switch((0,t.arch)()){case"x64":return"x64";case"arm64":return"arm64";case"ia32":return"x86";default:return`other::${(0,t.arch)()}`}}(),"X-Stainless-Os":function(){switch((0,t.platform)()){case"darwin":return"MacOS";case"win32":return"Windows";case"linux":return"Linux";case"freebsd":return"FreeBSD";default:return`Other::${(0,t.platform)()}`}}(),"X-Stainless-Timeout":"600"},clientId:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",tokenUrl:"https://api.anthropic.com/v1/oauth/token"},gemini:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",format:"gemini",clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"},"gemini-cli":{baseUrl:"https://cloudcode-pa.googleapis.com/v1internal",format:"gemini-cli",clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"},codex:{baseUrl:"https://chatgpt.com/backend-api/codex/responses",format:"openai-responses",headers:{originator:"codex-cli","User-Agent":"codex-cli/1.0.18 (macOS; arm64)"},clientId:"app_EMoamEEZ73f0CkXaXp7hrann",tokenUrl:"https://auth.openai.com/oauth/token"},qwen:{baseUrl:"https://portal.qwen.ai/v1/chat/completions",format:"openai",clientId:"f0304373b74a44d2b584a3fb70ca9e56",tokenUrl:"https://chat.qwen.ai/api/v1/oauth2/token",authUrl:"https://chat.qwen.ai/api/v1/oauth2/device/code"},iflow:{baseUrl:"https://apis.iflow.cn/v1/chat/completions",format:"openai",headers:{"User-Agent":"iFlow-Cli"},clientId:"10009311001",clientSecret:"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://iflow.cn/oauth/token",authUrl:"https://iflow.cn/oauth"},qoder:{baseUrl:"https://api.qoder.com/v1/chat/completions",format:"openai",headers:{"User-Agent":"Qoder-Cli"},clientId:process.env.QODER_OAUTH_CLIENT_ID||"10009311001",clientSecret:process.env.QODER_OAUTH_CLIENT_SECRET||"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",tokenUrl:"https://api.qoder.com/oauth/token",authUrl:"https://qoder.com/oauth/authorize"},antigravity:{baseUrls:["https://daily-cloudcode-pa.googleapis.com","https://daily-cloudcode-pa.sandbox.googleapis.com"],format:"antigravity",headers:{"User-Agent":`antigravity/1.107.0 ${(0,t.platform)()}/${(0,t.arch)()}`},clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com_2",clientSecret:"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"},openrouter:{baseUrl:"https://openrouter.ai/api/v1/chat/completions",format:"openai",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},openai:{baseUrl:"https://api.openai.com/v1/chat/completions",format:"openai"},glm:{baseUrl:"https://api.z.ai/api/anthropic/v1/messages",format:"claude",headers:{...o}},"glm-cn":{baseUrl:"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",format:"openai",headers:{}},kimi:{baseUrl:i,format:"claude",headers:{...o}},minimax:{baseUrl:"https://api.minimax.io/anthropic/v1/messages",format:"claude",headers:{...o}},"minimax-cn":{baseUrl:"https://api.minimaxi.com/anthropic/v1/messages",format:"claude",headers:{...o}},alicode:{baseUrl:"https://coding.dashscope.aliyuncs.com/v1/chat/completions",format:"openai",headers:{}},"alicode-intl":{baseUrl:"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions",format:"openai",headers:{}},"volcengine-ark":{baseUrl:"https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions",format:"openai",headers:{}},github:{baseUrl:"https://api.githubcopilot.com/chat/completions",responsesUrl:"https://api.githubcopilot.com/responses",format:"openai",headers:{"copilot-integration-id":"vscode-chat","editor-version":"vscode/1.110.0","editor-plugin-version":"copilot-chat/0.38.0","user-agent":"GitHubCopilotChat/0.38.0","openai-intent":"conversation-panel","x-github-api-version":"2025-04-01","x-vscode-user-agent-library-version":"electron-fetch","X-Initiator":"user",Accept:"application/json","Content-Type":"application/json"},clientId:"Iv1.b507a08c87ecfe98"},kiro:{baseUrl:"https://codewhisperer.us-east-1.amazonaws.com/generateAssistantResponse",format:"kiro",retry:{429:2},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"},tokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authUrl:"https://prod.us-east-1.auth.desktop.kiro.dev"},"amazon-q":{baseUrl:"https://codewhisperer.us-east-1.amazonaws.com/generateAssistantResponse",format:"kiro",retry:{429:2},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"},tokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authUrl:"https://prod.us-east-1.auth.desktop.kiro.dev"},cursor:{baseUrl:"https://api2.cursor.sh",chatPath:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",format:"cursor",headers:{"connect-accept-encoding":"gzip","connect-protocol-version":"1","Content-Type":"application/connect+proto","User-Agent":"connect-es/1.6.1"},clientVersion:"3.1.0"},"kimi-coding":{baseUrl:i,format:"claude",headers:{...o},clientId:"17e5f671-d194-4dfb-9706-5516cb48c098",tokenUrl:"https://auth.kimi.com/api/oauth/token",refreshUrl:"https://auth.kimi.com/api/oauth/token"},kilocode:{baseUrl:"https://api.kilo.ai/api/openrouter/chat/completions",format:"openai",headers:{}},cline:{baseUrl:"https://api.cline.bot/api/v1/chat/completions",format:"openai",headers:{"HTTP-Referer":"https://cline.bot","X-Title":"Cline"},tokenUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"},nvidia:{baseUrl:"https://integrate.api.nvidia.com/v1/chat/completions",format:"openai"},anthropic:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",headers:{...o}},deepseek:{baseUrl:"https://api.deepseek.com/chat/completions",format:"openai"},groq:{baseUrl:"https://api.groq.com/openai/v1/chat/completions",format:"openai"},xai:{baseUrl:"https://api.x.ai/v1/chat/completions",format:"openai"},mistral:{baseUrl:"https://api.mistral.ai/v1/chat/completions",format:"openai"},perplexity:{baseUrl:"https://api.perplexity.ai/chat/completions",format:"openai"},together:{baseUrl:"https://api.together.xyz/v1/chat/completions",format:"openai"},fireworks:{baseUrl:"https://api.fireworks.ai/inference/v1/chat/completions",format:"openai"},cerebras:{baseUrl:"https://api.cerebras.ai/v1/chat/completions",format:"openai"},cohere:{baseUrl:"https://api.cohere.ai/v1/chat/completions",format:"openai"},nebius:{baseUrl:"https://api.studio.nebius.ai/v1/chat/completions",format:"openai"},siliconflow:{baseUrl:"https://api.siliconflow.cn/v1/chat/completions",format:"openai"},hyperbolic:{baseUrl:"https://api.hyperbolic.xyz/v1/chat/completions",format:"openai"},deepgram:{baseUrl:"https://api.deepgram.com/v1/listen",format:"openai"},assemblyai:{baseUrl:"https://api.assemblyai.com/v1/audio/transcriptions",format:"openai"},nanobanana:{baseUrl:"https://api.nanobananaapi.ai/v1/chat/completions",format:"openai"},chutes:{baseUrl:"https://llm.chutes.ai/v1/chat/completions",format:"openai"},ollama:{baseUrl:"https://ollama.com/api/chat",format:"ollama"},"ollama-local":{baseUrl:"http://localhost:11434/api/chat",format:"ollama"},vertex:{baseUrl:"https://aiplatform.googleapis.com",format:"vertex"},"vertex-partner":{baseUrl:"https://aiplatform.googleapis.com",format:"openai"},gitlab:{baseUrl:"https://gitlab.com/api/v4/chat/completions",format:"openai"},codebuddy:{baseUrl:"https://copilot.tencent.com/v1/chat/completions",format:"openai"},opencode:{baseUrl:"https://opencode.ai",format:"openai",headers:{"x-opencode-client":"desktop"},noAuth:!0},azure:{baseUrl:"",format:"openai",headers:{}},"opencode-go":{baseUrl:"https://opencode.ai/zen/go/v1/chat/completions",format:"openai",headers:{}},"grok-web":{baseUrl:"https://grok.com/rest/app-chat/conversations/new",format:"grok-web",authType:"cookie"},"perplexity-web":{baseUrl:"https://www.perplexity.ai/rest/sse/perplexity_ask",format:"perplexity-web",authType:"cookie"},commandcode:{baseUrl:"https://api.commandcode.ai/alpha/generate",format:"commandcode",headers:{"x-command-code-version":"0.25.0"}}};e.s(["PROVIDERS",0,a,"resolveOllamaLocalHost",0,function(e){return(e?.providerSpecificData?.baseUrl?.trim()||"http://localhost:11434").replace(/\/$/,"")}])},363154,e=>{"use strict";let t=Object.freeze({upstreamTimeoutMs:12e4,compactUpstreamTimeoutMs:null,streamIdleTimeoutMs:12e4,maxInflight:2e3,providerMaxInflight:600,accountMaxInflight:80,observabilityMode:"full",observabilitySampleRate:.1,highThroughputSelection:!0}),o=null;function i(e,t){if(null==e||""===e)return t;let o=Number(e);return Number.isFinite(o)&&o>0?o:t}function a(e,t){let o=Number(e);return Number.isFinite(o)&&o>0?o:t}function r(e,t){let o=Number(e);return Number.isFinite(o)&&o>=0&&o<=1?o:t}function n(){return o||t}function s(e,t="upstream"){let o=Error(`${t} timed out after ${e}ms`);return o.name="AbortError",o.code="UPSTREAM_TIMEOUT",o.timeoutMs=e,o}e.s(["createDeadlineSignal",0,function(e,t="upstream"){let o=new AbortController,i=setTimeout(()=>{o.abort(s(e,t))},e);return{signal:o.signal,clear:()=>clearTimeout(i)}},"createTimeoutError",0,s,"getChatObservabilityMode",0,function(){let e=String(o?n().observabilityMode:process.env.CHAT_OBSERVABILITY_MODE||t.observabilityMode).toLowerCase();return["full","sampled","minimal","off"].includes(e)?e:t.observabilityMode},"getChatObservabilitySampleRate",0,function(){return o?n().observabilitySampleRate:r(process.env.CHAT_OBSERVABILITY_SAMPLE_RATE,t.observabilitySampleRate)},"getChatRuntimeSettings",0,n,"getCompactUpstreamTimeoutMs",0,function(){return o?n().compactUpstreamTimeoutMs:i(process.env.CHAT_COMPACT_UPSTREAM_TIMEOUT_MS,t.compactUpstreamTimeoutMs)},"getHighThroughputSelectionEnabled",0,function(){return o?!1!==n().highThroughputSelection:"false"!==process.env.CHAT_HIGH_THROUGHPUT_SELECTION&&t.highThroughputSelection},"getStreamIdleTimeoutMs",0,function(){return o?n().streamIdleTimeoutMs:a(process.env.CHAT_STREAM_IDLE_TIMEOUT_MS,t.streamIdleTimeoutMs)},"getUpstreamTimeoutMs",0,function(){return o?n().upstreamTimeoutMs:i(process.env.CHAT_UPSTREAM_TIMEOUT_MS,t.upstreamTimeoutMs)},"mergeAbortSignals",0,function(e=[]){let t=e.filter(Boolean);if(0===t.length)return null;if(1===t.length)return t[0];if("function"==typeof AbortSignal.any)return AbortSignal.any(t);let o=new AbortController,i=e=>{let t=e?.target;o.abort(t?.reason)};for(let e of t){if(e.aborted){o.abort(e.reason);break}e.addEventListener("abort",i,{once:!0})}return o.signal},"setChatRuntimeSettings",0,function(e={}){return o=function(e={}){let o=e&&"object"==typeof e&&!Array.isArray(e)?e:{};return{upstreamTimeoutMs:i(o.upstreamTimeoutMs,t.upstreamTimeoutMs),compactUpstreamTimeoutMs:i(o.compactUpstreamTimeoutMs,t.compactUpstreamTimeoutMs),streamIdleTimeoutMs:a(o.streamIdleTimeoutMs,t.streamIdleTimeoutMs),maxInflight:a(o.maxInflight,t.maxInflight),providerMaxInflight:a(o.providerMaxInflight,t.providerMaxInflight),accountMaxInflight:a(o.accountMaxInflight,t.accountMaxInflight),observabilityMode:["full","sampled","minimal","off"].includes(o.observabilityMode)?o.observabilityMode:t.observabilityMode,observabilitySampleRate:r(o.observabilitySampleRate,t.observabilitySampleRate),highThroughputSelection:!1!==o.highThroughputSelection}}(e)}])},963219,e=>{"use strict";let t={kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35"},"amazon-q":{id:"amazon-q",alias:"aq",name:"Amazon Q",icon:"cloud",color:"#FF9900",textIcon:"AQ",website:"https://aws.amazon.com/q/developer/",authHint:"Uses the same AWS Builder ID or imported refresh-token flow as Kiro, but keeps Amazon Q connections separate."},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981",deprecated:!0,deprecationNotice:"Qwen OAuth free tier was discontinued by Alibaba on 2026-04-15. New connections will not work."},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4",deprecated:!0,deprecationNotice:"Gemini CLI is designed exclusively for Gemini CLI. Using it with other tools (OpenClaw, Claude, Codex...) may result in account restrictions or bans."},iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1"},opencode:{id:"opencode",alias:"oc",name:"OpenCode Free",icon:"terminal",color:"#E87040",textIcon:"OC",noAuth:!0,passthroughModels:!0,modelsFetcher:{url:"https://opencode.ai/zen/v1/models",type:"opencode-free"}}},o={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",website:"https://openrouter.ai",notice:{text:"Free tier: 27+ free models, no credit card needed, 200 req/day. After $10 credit: 1,000 req/day.",apiKeyUrl:"https://openrouter.ai/settings/keys"},modelsFetcher:{url:"https://openrouter.ai/api/v1/models",type:"openrouter-free"},passthroughModels:!0,serviceKinds:["llm","embedding","tts","imageToText"]},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://developer.nvidia.com/nim",notice:{text:"Free access for NVIDIA Developer Program members (prototyping & testing).",apiKeyUrl:"https://build.nvidia.com/settings/api-keys"},serviceKinds:["llm","stt"],sttConfig:{format:"nvidia-asr",authType:"apiKey",baseUrl:"https://integrate.api.nvidia.com/v1/audio/transcriptions",authHeader:"bearer"}},ollama:{id:"ollama",alias:"ollama",name:"Ollama Cloud",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com",notice:{text:"Free tier: light usage, 1 cloud model at a time (limits reset every 5h & 7d). Pro $20/mo · Max $100/mo.",apiKeyUrl:"https://ollama.com/settings/keys"}},vertex:{id:"vertex",alias:"vx",name:"Vertex AI",icon:"cloud",color:"#4285F4",textIcon:"VX",website:"https://cloud.google.com/vertex-ai",notice:{text:"New Google Cloud accounts get $300 free credits. Requires GCP project + Service Account with Vertex AI API enabled.",apiKeyUrl:"https://console.cloud.google.com/iam-admin/serviceaccounts"}},gemini:{id:"gemini",alias:"gemini",name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev",serviceKinds:["llm","embedding","image","imageToText","webSearch","stt","tts"],sttConfig:{format:"gemini-stt",authType:"apiKey",baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authHeader:"bearer"}}},i={options:["auto","none","low","medium","high"],defaultMode:"auto"},a={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",deprecated:!0,deprecationNotice:"AG is designed exclusively for Antigravity IDE. Using it with other tools (OpenClaw, Claude, Codex...) may result in account restrictions or bans."},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6",thinkingConfig:i},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"},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"}},r="morph-fast",n={id:r,alias:"morph",name:"Morph Fast Models",icon:"bolt",color:"#FF5B99",textIcon:"MP",website:"https://morphllm.com",passthroughModels:!0,serviceKinds:["llm","embedding"],managedBy:"morph",systemManaged:!0,readOnly:!0,hiddenConfigInProviders:!0,providerSurface:"morph-fast-models"},s={[r]:n,commandcode:{id:"commandcode",alias:"ccmd",name:"Command Code",icon:"terminal",color:"#6366F1",textIcon:"CC",website:"https://commandcode.ai",passthroughModels:!0,serviceKinds:["llm"]},glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn"},"glm-cn":{id:"glm-cn",alias:"glm-cn",name:"GLM (China)",icon:"code",color:"#DC2626",textIcon:"GC",website:"https://open.bigmodel.cn"},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn",serviceKinds:["llm","webSearch"]},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com",serviceKinds:["llm","image","imageToText","webSearch"]},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com"},alicode:{id:"alicode",alias:"alicode",name:"Alibaba",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},"alicode-intl":{id:"alicode-intl",alias:"alicode-intl",name:"Alibaba Intl",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},"volcengine-ark":{id:"volcengine-ark",alias:"ark",name:"Volcengine Ark",icon:"cloud",color:"#1677FF",textIcon:"ARK",website:"https://ark.cn-beijing.volces.com"},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com",serviceKinds:["llm","embedding","tts","image","imageToText","webSearch","stt"],thinkingConfig:i,sttConfig:{format:"openai",authType:"apiKey",baseUrl:"https://api.openai.com/v1/audio/transcriptions",authHeader:"bearer"}},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com",serviceKinds:["llm","imageToText"]},azure:{id:"azure",alias:"azure",name:"Azure OpenAI",icon:"cloud",color:"#0078D4",textIcon:"AZ",website:"https://azure.microsoft.com/en-us/products/ai-services/openai-service",hasProviderSpecificData:!0},"opencode-go":{id:"opencode-go",alias:"ocg",name:"OpenCode Go",icon:"terminal",color:"#E87040",textIcon:"OC",website:"https://opencode.ai/auth",notice:{text:"OpenCode Go subscription: $5/mo (then $10/mo). Access to Kimi, GLM, Qwen, MiMo, MiniMax models.",apiKeyUrl:"https://opencode.ai/auth"}},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",serviceKinds:["llm","imageToText","stt"],sttConfig:{format:"openai",authType:"apiKey",baseUrl:"https://api.groq.com/openai/v1/audio/transcriptions",authHeader:"bearer"}},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai",serviceKinds:["llm","imageToText","webSearch"]},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai",serviceKinds:["llm","imageToText"]},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai",serviceKinds:["llm","webSearch"]},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"},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"},mimo:{id:"mimo",alias:"mimo",name:"Xiaomi MiMo",icon:"memory",color:"#FF6900",textIcon:"XM",website:"https://platform.mioffice.cn"},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com",serviceKinds:["stt","imageToText"],sttConfig:{format:"deepgram",authType:"apiKey",baseUrl:"https://api.deepgram.com/v1/listen",authHeader:"token"}},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com",serviceKinds:["stt"],sttConfig:{format:"assemblyai",authType:"apiKey",baseUrl:"https://api.assemblyai.com/v2/transcript",authHeader:"Authorization"}},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana",icon:"image",color:"#FFD700",textIcon:"NB",website:"https://nanobananaapi.ai",serviceKinds:["image"]},elevenlabs:{id:"elevenlabs",alias:"el",name:"ElevenLabs",icon:"record_voice_over",color:"#6C47FF",textIcon:"EL",website:"https://elevenlabs.io",serviceKinds:["tts"]},cartesia:{id:"cartesia",alias:"cartesia",name:"Cartesia",icon:"spatial_audio",color:"#FF4F8B",textIcon:"CA",website:"https://cartesia.ai",serviceKinds:["tts"],hidden:!0},playht:{id:"playht",alias:"playht",name:"PlayHT",icon:"play_circle",color:"#00B4D8",textIcon:"PH",website:"https://play.ht",serviceKinds:["tts"],hidden:!0},"local-device":{id:"local-device",alias:"local-device",name:"Local Device",icon:"speaker",color:"#64748B",textIcon:"LD",serviceKinds:["tts"],noAuth:!0},"google-tts":{id:"google-tts",alias:"google-tts",name:"Google TTS",icon:"record_voice_over",color:"#4285F4",textIcon:"GT",serviceKinds:["tts"],noAuth:!0},"edge-tts":{id:"edge-tts",alias:"edge-tts",name:"Edge TTS",icon:"record_voice_over",color:"#0078D4",textIcon:"ET",serviceKinds:["tts"],noAuth:!0},sdwebui:{id:"sdwebui",alias:"sdwebui",name:"SD WebUI",icon:"brush",color:"#FF7043",textIcon:"SD",website:"https://github.com/AUTOMATIC1111/stable-diffusion-webui",serviceKinds:["image"]},comfyui:{id:"comfyui",alias:"comfyui",name:"ComfyUI",icon:"account_tree",color:"#4CAF50",textIcon:"CF",website:"https://github.com/comfyanonymous/ComfyUI",serviceKinds:["image"]},huggingface:{id:"huggingface",alias:"hf",name:"HuggingFace",icon:"huggingface",color:"#FFD21E",textIcon:"HF",website:"https://huggingface.co",serviceKinds:["image","imageToText","tts","stt"],hiddenKinds:["tts"],sttConfig:{format:"huggingface-asr",authType:"apiKey",baseUrl:"https://api-inference.huggingface.co/models",authHeader:"bearer"}},blackbox:{id:"blackbox",alias:"bb",name:"Blackbox AI",icon:"smart_toy",color:"#5B5FEF",textIcon:"BB",website:"https://blackbox.ai",serviceKinds:["llm"]},chutes:{id:"chutes",alias:"ch",name:"Chutes AI",icon:"water_drop",color:"#ffffffff",textIcon:"CH",website:"https://chutes.ai"},"ollama-local":{id:"ollama-local",alias:"ollama-local",name:"Ollama Local",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com"},"vertex-partner":{id:"vertex-partner",alias:"vxp",name:"Vertex Partner",icon:"cloud",color:"#34A853",textIcon:"VP",website:"https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models"},tavily:{id:"tavily",alias:"tavily",name:"Tavily",icon:"search",color:"#5B21B6",textIcon:"TV",website:"https://tavily.com",serviceKinds:["webSearch"]},"brave-search":{id:"brave-search",alias:"brave",name:"Brave Search",icon:"travel_explore",color:"#FB542B",textIcon:"BR",website:"https://brave.com/search/api",serviceKinds:["webSearch"]},serper:{id:"serper",alias:"serper",name:"Serper",icon:"search",color:"#4F46E5",textIcon:"SP",website:"https://serper.dev",serviceKinds:["webSearch"]},exa:{id:"exa",alias:"exa",name:"Exa",icon:"manage_search",color:"#2563EB",textIcon:"EX",website:"https://exa.ai",serviceKinds:["webSearch"]},searxng:{id:"searxng",alias:"searxng",name:"SearXNG",icon:"saved_search",color:"#3B82F6",textIcon:"SX",website:"https://docs.searxng.org",serviceKinds:["webSearch"],noAuth:!0},firecrawl:{id:"firecrawl",alias:"firecrawl",name:"Firecrawl",icon:"local_fire_department",color:"#F59E0B",textIcon:"FC",website:"https://firecrawl.dev",serviceKinds:["webFetch"]}},l={"grok-web":{id:"grok-web",alias:"gw",name:"Grok Web (Subscription)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"GW",website:"https://grok.com",authType:"cookie",authHint:"Paste your sso= cookie value from grok.com",passthroughModels:!0,serviceKinds:["llm"]},"perplexity-web":{id:"perplexity-web",alias:"pw",name:"Perplexity Web (Pro/Max)",icon:"search",color:"#20808D",textIcon:"PW",website:"https://www.perplexity.ai",authType:"cookie",authHint:"Paste your __Secure-next-auth.session-token cookie value from perplexity.ai",serviceKinds:["llm"]}},c="openai-compatible-",u="anthropic-compatible-",p={...t,...o,...a,...s,...l};function d(e){for(let t of Object.values(p))if(t.alias===e||t.id===e)return t;return null}Object.values(p).reduce((e,t)=>(e[t.alias]=t.id,e),{}),Object.values(p).reduce((e,t)=>(e[t.id]=t.alias,e),{}),e.s(["AI_PROVIDERS",0,p,"ANTHROPIC_COMPATIBLE_PREFIX",0,u,"APIKEY_PROVIDERS",0,s,"FREE_PROVIDERS",0,t,"FREE_TIER_PROVIDERS",0,o,"MORPH_MANAGED_PROVIDER",0,n,"MORPH_MANAGED_PROVIDER_ID",0,r,"OAUTH_PROVIDERS",0,a,"OPENAI_COMPATIBLE_PREFIX",0,c,"USAGE_SUPPORTED_PROVIDERS",0,["claude","antigravity","kiro","amazon-q","github","codex","gemini-cli","qwen","iflow","ollama"],"WEB_COOKIE_PROVIDERS",0,l,"getProviderAlias",0,function(e){let t=p[e];return t?.alias||e},"getProviderByAlias",0,d,"isAnthropicCompatibleProvider",0,function(e){return"string"==typeof e&&e.startsWith(u)},"isMorphManagedProvider",0,function(e){return e===r},"isOpenAICompatibleProvider",0,function(e){return"string"==typeof e&&e.startsWith(c)},"resolveProviderId",0,function(e){let t=d(e);return t?.id||e}])},617325,e=>{"use strict";var t=e.i(878947),o=e.i(963219);let i=Object.freeze([{id:"auto",name:"Auto (Morph Router)",owned_by:"morph",contextWindow:8192,modalities:["text"],routingMode:"router",isAlias:!0},{id:"auto-manual",name:"Auto (Manual Router)",owned_by:"morph",contextWindow:196608,documentedContextWindow:262e3,verifiedRuntimeContextWindow:196608,contextWindowSource:"runtime-verified",modalities:["text"],routingMode:"manual",isAlias:!0},{id:"morph-qwen35-397b",name:"Qwen 3.5 397B",owned_by:"morph",contextWindow:196608,documentedContextWindow:262e3,verifiedRuntimeContextWindow:196608,contextWindowSource:"runtime-verified",modalities:["text","image"],pricing:{input:.478,output:3.5}},{id:"morph-dsv4flash",name:"DeepSeek V4 Flash",owned_by:"morph",contextWindow:393e3,documentedContextWindow:393e3,contextWindowSource:"documented",modalities:["text"],pricing:{input:.3,output:.4}},{id:"morph-minimax27-230b",name:"MiniMax M2.7",owned_by:"morph",contextWindow:196608,documentedContextWindow:2e5,verifiedRuntimeContextWindow:196608,contextWindowSource:"runtime-verified",modalities:["text"],pricing:{input:.279,output:1.2}},{id:"morph-qwen36-27b",name:"Qwen 3.6 27B",owned_by:"morph",contextWindow:131072,documentedContextWindow:131e3,verifiedRuntimeContextWindow:131072,contextWindowSource:"runtime-verified",modalities:["text"],pricing:{input:.498,output:2.4}}]),a=Object.freeze({applyDefault:"morph-v3-large",fastValidation:"morph-v3-fast",warpgrep:"morph-warp-grep-v2.1",compact:"morph-compactor"}),r=new Set(i.map(e=>e.id));function n(e){return"string"==typeof e&&r.has(e.trim())}t.PROVIDER_ID_TO_ALIAS,o.MORPH_MANAGED_PROVIDER_ID,Object.entries(o.AI_PROVIDERS).filter(([,e])=>e?.passthroughModels===!0).map(([e])=>e);let s=[...Object.entries(t.PROVIDER_MODELS).flatMap(([e,t])=>t.map(t=>({provider:e,model:t.id,name:t.name}))),...i.map(e=>({provider:"morph",model:e.id,name:e.name}))];e.s(["AI_MODELS",0,s,"MORPH_CORE_INTERNAL_MODELS",0,a,"getMorphFastModel",0,function(e){return n(e)&&i.find(t=>t.id===e.trim())||null},"getMorphFastModels",0,function(){return i.map(e=>({...e}))},"isMorphAutoModel",0,function(e){let t="string"==typeof e?e.trim():"";return"auto"===t||"auto-manual"===t},"isMorphFastModel",0,n])},427699,(e,t,o)=>{t.exports=e.x("events",()=>require("events"))},312125,e=>{"use strict";var t=e.i(902157),o=e.i(750227),i=e.i(427699),a=e.i(363154),r=e.i(966029),n=e.i(797701),s=e.i(64361);e.i(624953),e.i(824446);var l=e.i(620809),c=e.i(3397),u=e.i(256126),p=e.i(254649);e.i(603799);let d="u">typeof caches&&"object"==typeof caches;e.g._pendingRequests||(e.g._pendingRequests={byModel:{},byAccount:{}});let m=e.g._pendingRequests;e.g._lastErrorProvider||(e.g._lastErrorProvider={provider:"",ts:0});let h=e.g._lastErrorProvider;e.g._statsEmitter||(e.g._statsEmitter=new i.EventEmitter,e.g._statsEmitter.setMaxListeners(50));let f=e.g._statsEmitter;e.g._pendingTimers||(e.g._pendingTimers={});let g={};async function b(){let t=[],o={};try{let{getProviderConnections:t}=await e.A(605589);for(let e of(await t()))o[e.id]=e.name||e.email||e.id}catch{}for(let[e,i]of Object.entries(m.byAccount))for(let[a,r]of Object.entries(i))if(r>0){let i=o[e]||`Account ${e.slice(0,8)}...`,n=a.match(/^(.*) \((.*)\)$/),s=n?n[1]:a,l=n?n[2]:"unknown";t.push({model:s,provider:l,account:i,count:r})}return(0,n.ensureUsageSchema)((0,s.getUsageDbInstance)()),{activeRequests:t,recentRequests:(0,l.getRecentUsageRowsFromDb)(20,{source:"general"}),errorProvider:Date.now()-h.ts<1e4?h.provider:"",pending:m}}async function v(e,t={}){if(!d&&"off"!==(0,a.getChatObservabilityMode)())try{let t=e?.timestamp?e:{...e,timestamp:new Date().toISOString()};(0,n.ensureUsageSchema)((0,s.getUsageDbInstance)()),(0,p.queueUsageEvent)(t,{source:"general"}),f.emit("update")}catch(e){if(console.error("Failed to save usage stats:",e),t.propagateError)throw e}}async function y(t={}){let{getUsageHistory:o}=await e.A(557036);return o(t)}async function w({model:e,provider:t,connectionId:o,tokens:i,status:r}){let n;if(!d&&"off"!==(n=(0,a.getChatObservabilityMode)())&&("minimal"===n?"string"==typeof r&&r.startsWith("FAILED"):"sampled"!==n||"string"==typeof r&&r.startsWith("FAILED")||Math.random()<(0,a.getChatObservabilitySampleRate)()))try{(0,p.queueRequestLogEvent)({timestamp:new Date().toISOString(),provider:t,model:e,connectionId:o,tokens:i,status:r},{source:"general"})}catch(e){console.error("Failed to append usage request log:",e.message)}}async function x(i="all"){await (0,u.drainUsageQueue)();let a=await b();(0,n.ensureUsageSchema)((0,s.getUsageDbInstance)());let l=(0,c.getUsageStatsFromDb)(i,a),p=0===l.totalRequests?{...l,...function(e){let i=o.default.join(r.DATA_DIR,"usage.json");if(!t.default.existsSync(i))return null;let a=JSON.parse(t.default.readFileSync(i,"utf8")),n=a?.dailySummary||{},s=new Date(Date.now()).toISOString().slice(0,10),l=Object.keys(n).filter(e=>e<=s),c="7d"===e?l.slice(-7):l,u={totalRequests:0,totalPromptTokens:0,totalCompletionTokens:0,totalCost:0,byProvider:{},byModel:{}};for(let e of c){let t=n[e]||{};for(let[e,o]of(u.totalRequests+=Number(t.requests||0),u.totalPromptTokens+=Number(t.promptTokens||0),u.totalCompletionTokens+=Number(t.completionTokens||0),u.totalCost+=Number(t.cost||0),Object.assign(u.byProvider,t.byProvider||{}),Object.entries(t.byModel||{}))){let t=o?.rawModel||e.split("|")[0],i=o?.provider||e.split("|")[1]||"unknown",a=`${t} (${i})`;u.byModel[a]=o}}return u}(i)}:l,{getMorphUsageStats:d}=await e.A(875534);return function(e,t){for(let[o,i]of Object.entries(t?.byModel||{})){let t=Number(i?.requests||0);if(t<=0)continue;let a=Number(i?.inputTokens||0),r=Number(i?.outputTokens||0);e.byProvider["morph-fast"]=e.byProvider["morph-fast"]||{requests:0,promptTokens:0,completionTokens:0,cost:0,provider:"morph-fast"},e.byProvider["morph-fast"].requests+=t,e.byProvider["morph-fast"].promptTokens+=a,e.byProvider["morph-fast"].completionTokens+=r,e.byModel[`${o} (morph-fast)`]={rawModel:o,provider:"Morph Fast Models",requests:t,promptTokens:a,completionTokens:r},e.totalRequests+=t,e.totalPromptTokens+=a,e.totalCompletionTokens+=r,e.totalTokens+=a+r}return e.recentRequests=[...t?.recentRequests||[],...e.recentRequests||[]],e}(p,await d(i))}async function A(t="7d"){await (0,u.drainUsageQueue)();let{getChartDataFromDb:o}=await e.A(142416);return o(t)}e.s(["appendRequestLog",0,w,"getActiveRequests",0,b,"getChartData",0,A,"getUsageDb",0,function(){let e=(0,s.getUsageDbInstance)();return(0,n.ensureUsageSchema)(e),e},"getUsageHistory",0,y,"getUsageStats",0,x,"saveRequestUsage",0,v,"statsEmitter",0,f,"trackPendingRequest",0,function(e,t,o,i,a=!1,r=null){let n=t?`${e} (${t})`:e,s=`${o}|${n}`;if(m.byModel[n]||(m.byModel[n]=0),m.byModel[n]=Math.max(0,m.byModel[n]+(i?1:-1)),o&&(m.byAccount[o]||(m.byAccount[o]={}),m.byAccount[o][n]||(m.byAccount[o][n]=0),m.byAccount[o][n]=Math.max(0,m.byAccount[o][n]+(i?1:-1))),i){let e=setTimeout(()=>{let t=g[s];if(Array.isArray(t)){let o=t.indexOf(e);o>=0&&t.splice(o,1),0===t.length&&delete g[s]}m.byModel[n]>0&&(m.byModel[n]-=1),o&&m.byAccount[o]?.[n]>0&&(m.byAccount[o][n]-=1),f.emit("pending")},6e4);g[s]||(g[s]=[]),g[s].push(e)}else{let e=g[s];Array.isArray(e)&&e.length>0&&(clearTimeout(e.shift()),0===e.length&&delete g[s])}!i&&a&&t&&(h.provider=t.toLowerCase(),h.ts=Date.now());let l=new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"}),c=r&&"object"==typeof r?Object.entries(r).filter(([,e])=>null!=e&&""!==e).map(([e,t])=>`${e}=${t}`).join(" | "):"",u=`[${l}] [${i?"PENDING":a?"ERROR":"OK"}] ${i?"START":"END"}${a?" (ERROR)":""} | provider=${t} | model=${e}${c?` | ${c}`:""}`;console.log("morph"===t?`\x1b[38;5;205m${u}\x1b[0m`:u),f.emit("pending")}])},730901,684076,e=>{"use strict";let t=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i;e.s(["default",0,function(e){return"string"==typeof e&&t.test(e)}],684076);let o=[];for(let e=0;e<256;++e)o.push((e+256).toString(16).slice(1));e.s(["unsafeStringify",0,function(e,t=0){return(o[e[t+0]]+o[e[t+1]]+o[e[t+2]]+o[e[t+3]]+"-"+o[e[t+4]]+o[e[t+5]]+"-"+o[e[t+6]]+o[e[t+7]]+"-"+o[e[t+8]]+o[e[t+9]]+"-"+o[e[t+10]]+o[e[t+11]]+o[e[t+12]]+o[e[t+13]]+o[e[t+14]]+o[e[t+15]]).toLowerCase()}],730901)},689960,e=>{"use strict";var t=e.i(666680);let o={randomUUID:t.randomUUID},i=new Uint8Array(256),a=i.length;var r=e.i(730901);e.s(["v4",0,function(e,n,s){if(o.randomUUID&&!n&&!e)return o.randomUUID();var l=e,c=s;let u=(l=l||{}).random??l.rng?.()??(a>i.length-16&&((0,t.randomFillSync)(i),a=0),i.slice(a,a+=16));if(u.length<16)throw Error("Random bytes length must be >= 16");if(u[6]=15&u[6]|64,u[8]=63&u[8]|128,n){if((c=c||0)<0||c+16>n.length)throw RangeError(`UUID byte range ${c}:${c+15} is out of buffer bounds`);for(let e=0;e<16;++e)n[c+e]=u[e];return n}return(0,r.unsafeStringify)(u)}],689960)},505586,e=>{"use strict";async function t(){return e.A(605589)}async function o(){let{getModelAliases:e}=await t();return e()}async function i(e,o){let{setModelAlias:i}=await t();return i(e,o)}async function a(e,o){let{setModelAlias:i}=await t();return i(e,o)}async function r(e){let{deleteModelAlias:o}=await t();return o(e)}e.s(["deleteCurrentModelAlias",0,r,"getCurrentModelAliases",0,o,"setCurrentModelAlias",0,i,"setCurrentModelAliasByModel",0,a])},627766,e=>{"use strict";var t=e.i(963219);function o(e){let t=new Date(e).getTime();return!e||!Number.isFinite(t)||t<=Date.now()?null:new Date(t).toISOString()}function i(e={}){return Object.entries(e||{}).reduce((e,[t,i])=>{if(!t.startsWith("modelLock_"))return e;let a=o(i);return a&&e.push({key:t,model:t.slice(10)||"__all",until:a}),e},[])}function a(e={}){let t=[o(e?.nextRetryAt),o(e?.resetAt),...i(e).map(e=>e.until)].filter(Boolean);return 0===t.length?null:t.sort()[0]}function r(e){if(!e||"object"!=typeof e)return{status:"unknown",source:"missing",hasActiveModelLock:!1,cooldownUntil:null,activeModelLocks:[]};if(!1===e.isActive)return{status:"disabled",source:"isActive",hasActiveModelLock:!1,cooldownUntil:null,activeModelLocks:[]};let o=i(e),r=a(e),n=function(e={}){if(e?.reasonCode==="reauthorization_required")return{status:"disabled",source:"reasonCode"};let o=function(e={}){return e?.authType==="oauth"&&t.USAGE_SUPPORTED_PROVIDERS.includes(e?.provider)}(e),i=function(e={}){return e?.usageSnapshot!==void 0&&e?.usageSnapshot!==null}(e);switch(e?.authState){case"expired":case"invalid":case"revoked":return{status:"blocked",source:"authState"}}switch(e?.healthStatus){case"error":case"failed":case"unhealthy":case"down":return{status:"blocked",source:"healthStatus"}}switch(e?.quotaState){case"exhausted":case"blocked":return{status:"exhausted",source:"quotaState"};case"ok":if(e?.authState==="ok"&&e?.healthStatus==="healthy"){if(o&&!i)return{status:"unknown",source:"missingUsageSnapshot"};return{status:"eligible",source:"quotaState"}}}switch(e?.routingStatus){case"eligible":if(o&&!i)return{status:"unknown",source:"missingUsageSnapshot"};return{status:e.routingStatus,source:"routingStatus"};case"exhausted":case"blocked":case"unknown":case"disabled":return{status:e.routingStatus,source:"routingStatus"}}return null}(e);return n?{status:n.status,source:n.source,hasActiveModelLock:o.length>0,cooldownUntil:r,activeModelLocks:o}:{status:"unknown",source:"unknown",hasActiveModelLock:o.length>0,cooldownUntil:r,activeModelLocks:o}}e.s(["getConnectionCentralizedStatus",0,function(e={}){return r(e).status},"getConnectionCooldownUntil",0,a,"getConnectionEffectiveStatus",0,function(e){return r(e).status},"getConnectionProviderCooldownUntil",0,function(e={}){let t=[o(e?.nextRetryAt),o(e?.resetAt)].filter(Boolean);return 0===t.length?null:t.sort()[0]},"getConnectionStatusDetails",0,r])},712943,e=>{"use strict";e.s(["default",0,{name:"axonrouter",version:"0.1.3",description:"AxonRouter - Local-first AI routing gateway",private:!1,type:"module",files:["bin/axonrouter.js","bin/mcp-server-launcher.js","bin/mcp-server.ts",".next/standalone/",".next/static/","public/","open-sse/","src/","!src/node_modules/","!src/package.json","!src/package-lock.json","scripts/start.ts","scripts/mcp-alias-loader.ts","README.md","LICENSE"],bin:{axonrouter:"bin/axonrouter.js","axonrouter-mcp":"bin/mcp-server-launcher.js"},scripts:{dev:"bun --bun next dev --hostname 127.0.0.1 --turbopack --port 12712",build:"NODE_ENV=production next build --turbopack && bun ./scripts/ensure-middleware-manifest.ts",start:"NODE_ENV=production bun ./scripts/start.ts",lint:"eslint .",typecheck:"tsc --noEmit",test:"bun --cwd tests vitest run --reporter=verbose",prepack:"npm run build"},dependencies:{"@monaco-editor/react":"^4.7.0","@tanstack/pacer":"^0.21.1","@tanstack/react-query":"^5.100.10","@tanstack/react-table":"^8.21.3","@tanstack/react-virtual":"^3.13.24","@xyflow/react":"^12.10.1",bcryptjs:"^3.0.3","better-sqlite3":"^12.6.2","class-variance-authority":"^0.7.1",confbox:"^0.2.4","got-scraping":"^4.2.1",lowdb:"^7.0.1","lucide-react":"^1.14.0",marked:"^18.0.1","monaco-editor":"^0.55.1",next:"16.2.6","next-themes":"^0.4.6","node-forge":"^1.3.3","node-machine-id":"^1.1.12",open:"^11.0.0",ora:"^9.1.0",paseto:"^3.1.4","radix-ui":"^1.4.3",react:"19.2.4","react-dom":"19.2.4",recharts:"^3.7.0",sonner:"^2.0.7","tailwind-merge":"^3.6.0",undici:"^7.19.2",uuid:"^13.0.2",zustand:"^5.0.10"},devDependencies:{"@tailwindcss/postcss":"^4.1.18","@tanstack/react-query-devtools":"^5.100.10","@types/react":"19.2.14",eslint:"^9","eslint-config-next":"16.2.6",postcss:"^8.5.10",shadcn:"^4.7.0",tailwindcss:"^4",typescript:"^6.0.3"},repository:{type:"git",url:"https://github.com/rickicode/axonrouter.git"},keywords:["ai-router","llm-proxy","openai","claude","gemini","smart-fallback","rate-limiting"],author:"rickicode",license:"MIT",engines:{node:">=22.6.0"},homepage:"https://github.com/rickicode/axonrouter#readme",publishConfig:{access:"public"},overrides:{dompurify:"^3.4.0"}}])},651948,e=>{"use strict";var t=e.i(712943);e.i(963219),e.i(617325),t.default.version,e.s(["CONSOLE_LOG_CONFIG",0,{maxLines:200,pollIntervalMs:1e3},"UPDATER_CONFIG",0,{npmPackageName:"axonrouter",installCmd:"npm i -g axonrouter",exitDelayMs:500}])},553605,e=>{"use strict";let t=[],o=0,i=0,a=0,r=null,n=0;function s({ms:e,providerId:l=null,status:c="ok"}={}){if("number"!=typeof e||!Number.isFinite(e)||e<0)return;let u={t:Date.now(),ms:e,status:c,providerId:l||null};t.length<2048?t.push(u):(t[o]=u,o=(o+1)%2048),i+=1,"ok"!==c&&(a+=1),r=e,n=u.t}function l(e,t){if(0===e.length)return null;if(1===e.length)return e[0];let o=(e.length-1)*t,i=Math.floor(o),a=Math.ceil(o);return i===a?e[i]:e[i]+(e[a]-e[i])*(o-i)}async function c(e,{providerId:t=null}={}){let o=Date.now();try{let i=await e(),a=Date.now()-o;return s({ms:a,providerId:t,status:"ok"}),i}catch(e){throw s({ms:Date.now()-o,providerId:t,status:"error"}),e}}e.s(["getRoutingLatencySummary",0,function({windowMs:e=3e5}={}){let o=Date.now()-Math.max(0,Number(e)||3e5),s=t.filter(e=>e.t>=o),c=null,u=0;for(let e of s)(null===c||e.t<c)&&(c=e.t),"ok"!==e.status&&(u+=1);let p=s.map(e=>e.ms).sort((e,t)=>e-t),d=p.length,m=null,h=0;for(let e of p)h+=e;return d>0&&(m=h/d),{p50:l(p,.5),p95:l(p,.95),p99:l(p,.99),avg:m,min:d>0?p[0]:null,max:d>0?p[d-1]:null,count:d,errorCount:u,totalCount:i,totalErrorCount:a,lastMs:r,lastAt:n,windowMs:Math.max(0,Number(e)||3e5),sampledFromMs:c}},"measureRouting",0,c,"recordRoutingLatency",0,s])},966229,e=>{"use strict";let t="12711";e.s(["DEFAULT_AXONROUTER_API_BASE_URL",0,"http://localhost:12711/v1","DEFAULT_AXONROUTER_BASE_URL",0,"http://localhost:12711","DEFAULT_AXONROUTER_PORT",0,t,"getDefaultAxonRouterBaseUrl",0,function(e=t){return`http://localhost:${e}`}],966229)},160655,e=>{"use strict";let t=new Set(["openagent","slim","custom"]),o=new Set([null,"minimal","opinionated"]),i=new Set(["include","exclude"]),a=new Set(["local","remote"]),r="********";function n(e){let t=Error(e);return t.name="OpenCodeValidationError",t.code="OPENCODE_VALIDATION_ERROR",t}function s(e){return"string"==typeof e?e.trim():""}function l(e){return s(e)||null}function c(e){if(!Array.isArray(e))return[];let t=new Set,o=[];for(let i of e){let e=s(i);!e||t.has(e)||(t.add(e),o.push(e))}return o}function u(e){var t,o;let i,a={variant:"openagent",customTemplate:null,defaultModel:null,modelSelectionMode:"exclude",includedModels:[],excludedModels:[],customPlugins:[],mcpServers:[],envVars:[],advancedOverrides:{openagent:{},slim:{},custom:{}},updatedAt:null},r=e&&"object"==typeof e&&!Array.isArray(e)?e:{};return{...a,...r,variant:s(r.variant)||a.variant,customTemplate:l(r.customTemplate),defaultModel:l(r.defaultModel),modelSelectionMode:s(r.modelSelectionMode)||a.modelSelectionMode,includedModels:c(r.includedModels),excludedModels:c(r.excludedModels),customPlugins:c(r.customPlugins),mcpServers:Array.isArray(t=r.mcpServers)?t.map(e=>(function(e){var t;if(!e||"object"!=typeof e||Array.isArray(e))return null;let o=s(e.type),i=o||"local",a={name:s(e.name)};return o&&(a.type=o),"remote"===i?a.url=s(e.url):a.command=Array.isArray(t=e.command)?t.map(e=>s(e)).filter(Boolean):s(t)||"",a})(e)).filter(Boolean):[],envVars:function(e){if(!Array.isArray(e))return[];let t=new Map;for(let o of e){let e=s(o?.key);e&&t.set(e,{key:e,value:"string"==typeof o?.value?o.value:o?.value==null?"":String(o.value),secret:o?.secret===!0})}return Array.from(t.values()).sort((e,t)=>e.key.localeCompare(t.key))}(r.envVars),advancedOverrides:{openagent:(i=(o=r.advancedOverrides)&&"object"==typeof o&&!Array.isArray(o)?o:{}).openagent&&"object"==typeof i.openagent&&!Array.isArray(i.openagent)?i.openagent:{},slim:i.slim&&"object"==typeof i.slim&&!Array.isArray(i.slim)?i.slim:{},custom:i.custom&&"object"==typeof i.custom&&!Array.isArray(i.custom)?i.custom:{}},updatedAt:l(r.updatedAt)}}function p(e){let t=s(e).toLowerCase();return!["secret","issecret","sensitive"].includes(t)&&!!(t.includes("secret")||t.includes("password")||t.includes("authorization")||"apikey"===t||"api_key"===t||t.endsWith("apikey")||t.endsWith("api_key")||["token","accesstoken","refreshtoken","idtoken","sessiontoken","bearertoken"].includes(t)||t.endsWith("token")&&!t.endsWith("tokens"))}function d(e,t=""){if(Array.isArray(e))return e.map(e=>d(e,t));if(p(t))return r;if(!e||"object"!=typeof e)return e;let o=!0===e.secret||!0===e.isSecret||!0===e.sensitive;return Object.fromEntries(Object.entries(e).map(([e,t])=>o&&"value"===e||p(e)?[e,r]:[e,d(t,e)]))}e.s(["createOpenCodeValidationError",0,n,"isOpenCodeValidationError",0,function(e){return e?.code==="OPENCODE_VALIDATION_ERROR"||e?.name==="OpenCodeValidationError"},"normalizeOpenCodePreferences",0,u,"sanitizeOpenCodePreferencesForResponse",0,function(e){return d(u(e))},"sanitizeSensitiveConfig",0,d,"validateOpenCodePreferences",0,function(e){let r=u(e);if(!t.has(r.variant))throw n("Invalid OpenCode variant");if(!o.has(r.customTemplate))throw n("Invalid custom template");if("custom"!==r.variant&&null!==r.customTemplate)throw n("Custom template is only valid for custom variant");if(!i.has(r.modelSelectionMode))throw n("Invalid model selection mode");let s=new Set;for(let e of r.mcpServers){if(!e.name)throw n("Invalid MCP server: name is required");let t=e.name.toLowerCase();if(s.has(t))throw n(`Duplicate MCP server name: ${e.name}`);s.add(t);let o=e.type||"local";if(!a.has(o))throw n(`Invalid MCP server type for ${e.name}`);if("remote"===o){if(!e.url)throw n(`Remote MCP server "${e.name}" requires a URL`);try{let t=new URL(e.url);if(!["http:","https:"].includes(t.protocol))throw Error("unsupported")}catch{throw n(`Invalid MCP server URL for ${e.name}`)}continue}if(Array.isArray(e.command)){if(0===e.command.length)throw n(`Local MCP server "${e.name}" requires a command`)}else if(!e.command)throw n(`Local MCP server "${e.name}" requires a command`)}return r}])},9626,e=>{"use strict";let t=Object.freeze({enabled:!0,intervalMinutes:2880,providers:{},lastRunAt:null,lastRunStatus:"idle",lastRunMessage:""});function o(e,t){let o=Number(e);return!Number.isFinite(o)||o<=0?t:Math.max(1,Math.round(o))}e.s(["DEFAULT_MODEL_SYNC_SETTINGS",0,t,"normalizeModelSyncSettings",0,function(e={}){var i;let a=e&&"object"==typeof e&&!Array.isArray(e)?e:{};return{enabled:!1!==a.enabled,intervalMinutes:o(a.intervalMinutes,t.intervalMinutes),providers:!(i=a.providers)||"object"!=typeof i||Array.isArray(i)?{}:Object.fromEntries(Object.entries(i).filter(([e])=>"string"==typeof e&&e.trim()).map(([e,i])=>{let a=i&&"object"==typeof i&&!Array.isArray(i)?i:{};return[e,{enabled:!1!==a.enabled,intervalMinutes:o(a.intervalMinutes,t.intervalMinutes),lastRunAt:"string"==typeof a.lastRunAt?a.lastRunAt:null,lastRunStatus:"string"==typeof a.lastRunStatus?a.lastRunStatus:"idle",lastRunMessage:"string"==typeof a.lastRunMessage?a.lastRunMessage:""}]})),lastRunAt:"string"==typeof a.lastRunAt?a.lastRunAt:null,lastRunStatus:"string"==typeof a.lastRunStatus?a.lastRunStatus:"idle",lastRunMessage:"string"==typeof a.lastRunMessage?a.lastRunMessage:""}}])},392631,e=>{"use strict";let t=new Set(["team","business","enterprise","edu","hc","self_serve_business_usage_based","enterprise_cbp_usage_based"]),o={free:"Free",plus:"Plus",pro:"Pro",go:"Go",team:"Team",business:"Business",enterprise:"Enterprise",edu:"Edu",hc:"Enterprise",self_serve_business_usage_based:"Self Serve Business Usage Based",enterprise_cbp_usage_based:"Enterprise CBP Usage Based"};function i(e){if(!e||"object"!=typeof e||Array.isArray(e))return;let i="string"==typeof e.planTypeRaw&&e.planTypeRaw.trim()||void 0,a="string"==typeof e.planType?e.planType.trim()||void 0:function(e){if("string"!=typeof e)return;let t=e.trim();if(t)return o[t]||t.split("_").filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")}(i),r="string"==typeof e.chatgptUserId&&e.chatgptUserId.trim()||void 0,n="string"==typeof e.chatgptAccountId&&e.chatgptAccountId.trim()||void 0,s="boolean"==typeof e.isWorkspaceAccount?e.isWorkspaceAccount:!!(i&&t.has(i)),l={...e,...a?{planType:a}:{},...i?{planTypeRaw:i}:{},...r?{chatgptUserId:r}:{},...n?{chatgptAccountId:n}:{},...a||i||r||n||void 0!==e.isWorkspaceAccount?{isWorkspaceAccount:s}:{}};return a||delete l.planType,i||delete l.planTypeRaw,r||delete l.chatgptUserId,n||delete l.chatgptAccountId,a||i||r||n||void 0!==e.isWorkspaceAccount||delete l.isWorkspaceAccount,Object.keys(l).length>0?l:void 0}e.s(["extractCodexIdentityFromJwt",0,function(e){let t=function(e){try{if(!e||"string"!=typeof e)return null;let t=e.split(".");if(3!==t.length)return null;let o=t[1].replace(/-/g,"+").replace(/_/g,"/"),i="=".repeat((4-o.length%4)%4);return JSON.parse(Buffer.from(o+i,"base64").toString("utf8"))}catch{return null}}(e)||{},o=t["https://api.openai.com/auth"]||{};return{email:t.email||void 0,displayName:t.name||t.nickname||t.preferred_username||t.email||void 0,providerSpecificData:i({planTypeRaw:o.chatgpt_plan_type||void 0,chatgptUserId:o.chatgpt_user_id||o.user_id||void 0,chatgptAccountId:o.chatgpt_account_id||void 0})}},"normalizeCodexProviderSpecificData",0,i])},931354,e=>{"use strict";let t=["priority","weighted","round-robin","context-relay","fill-first","p2c","random","least-used","cost-optimized","strict-random","auto","lkgp","context-optimized"];e.s(["ROUTING_STRATEGY_VALUES",0,t,"normalizeRoutingStrategy",0,function(e){if("string"!=typeof e)return"priority";let o=e.trim().toLowerCase();return"usage"===o?"least-used":"context"===o?"context-optimized":t.includes(o)?o:"priority"}])},998905,e=>{"use strict";function t(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}function o(e){return"string"==typeof e&&e.trim().length>0?e.trim():null}function i(e){let t=e.trim(),o=t.indexOf("/");if(o<=0)return null;let i=t.slice(0,o).trim();return i.length>0?i:null}function a(e,t){let i=e.trim();if(i.includes("/"))return i;let a=o(t);return a?`${a}/${i}`:i}function r(e){let t=e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"");return t.length>0?t:"step"}function n(e,t,o,i){return[r(t||"combo"),"combo-ref"===e?"ref":"model",String(o+1),r(i)].join("-").slice(0,200)}function s(e,i,a){return!i&&((function(e){let i=new Set;if(!e)return i;if(!Array.isArray(e)&&"function"==typeof e?.[Symbol.iterator]&&!(t(e)&&Array.isArray(e.combos))){for(let t of e){let e=o(t);e&&i.add(e)}return i}let a=t(e)&&Array.isArray(e.combos)?e.combos:[];for(let t of Array.isArray(e)?e:a){let e="string"==typeof t?o(t):o(t?.name);e&&i.add(e)}return i})(a?.allCombos).has(e)||e===o(a?.comboName))}function l(e,r={}){return(Array.isArray(e)?e:[]).map((e,l)=>(function(e,r={}){var l;let c,u=o(r.comboName),p="number"==typeof r.index?r.index:0;if("string"==typeof e){let t=o(e);if(!t)return null;if(s(t,null,r))return{id:n("combo-ref",u,p,t),kind:"combo-ref",comboName:t,weight:0};let a=i(t);return{id:n("model",u,p,t),kind:"model",model:t,...a?{providerId:a}:{},weight:0}}if(!t(e))return null;let d=o(e.id),m=Number.isFinite(c="number"==typeof(l=e.weight)?l:"string"==typeof l&&l.trim().length>0?Number(l):0)?Math.max(0,Math.min(100,c)):0,h=o(e.label);if("combo-ref"===e.kind){let t=o(e.comboName);return t?{id:d||n("combo-ref",u,p,t),kind:"combo-ref",comboName:t,weight:m,...h?{label:h}:{}}:null}let f=o(e.model);if(!f)return null;let g="model"===e.kind,b=o(e.providerId)||o(e.provider)||i(f);if(!g&&s(f,b,r))return{id:d||n("combo-ref",u,p,f),kind:"combo-ref",comboName:f,weight:m,...h?{label:h}:{}};let v=a(f,b),y=null===e.connectionId?null:o(e.connectionId)||void 0,w=Array.isArray(e.tags)?e.tags.map(e=>o(e)).filter(Boolean):void 0;return{id:d||n("model",u,p,y?`${v}:${y}`:v),kind:"model",model:v,...b?{providerId:b}:{},...void 0!==y?{connectionId:y}:{},weight:m,...h?{label:h}:{},...w&&w.length>0?{tags:w}:{}}})(e,{...r,index:l})).filter(Boolean)}e.s(["getComboModelProvider",0,function(e){return"string"==typeof e?i(e):t(e)&&"combo-ref"!==e.kind?o(e.providerId)||o(e.provider)||i(o(e.model)||""):null},"getComboStepTarget",0,function(e,r={}){if("string"==typeof e){let t=o(e);return t||null}if(!t(e))return null;if("combo-ref"===e.kind)return o(e.comboName);let n=o(e.model);if(!n)return null;let l="model"===e.kind,c=o(e.providerId)||o(e.provider)||i(n);return!l&&s(n,c,r)?n:a(n,c)},"normalizeComboModels",0,l,"normalizeComboRecord",0,function(e,i={}){let a=o(e?.name);return{...t(e)?e:{},version:2,models:l(e?.models,{comboName:a,allCombos:i.allCombos})}}])},330599,e=>{"use strict";var t=e.i(627766);e.s(["getProviderConnectionStatusSummary",0,function(e=[]){let o={connected:0,error:0,unknown:0,total:e.length,allDisabled:e.length>0&&e.every(e=>e?.isActive===!1)};for(let i of e){let e=(0,t.getConnectionStatusDetails)(i).status;"eligible"===e?o.connected+=1:"blocked"===e||"exhausted"===e?o.error+=1:o.unknown+=1}return o}])},196054,e=>{"use strict";var t=e.i(902157);e.i(245272);var o=e.i(727917),i=e.i(103447),a=e.i(918431),r=e.i(312125);e.i(824446);var n=e.i(624953),s=e.i(603799),l=e.i(553605),c=e.i(505586),c=c;e.i(651948);var u=e.i(617325),p=e.i(665032),d=e.i(64361),m=e.i(724835);function h(e=""){return(function(e=""){return String(e).replace(/&#x([0-9a-f]+);/gi,(e,t)=>String.fromCodePoint(parseInt(t,16))).replace(/&#(\d+);/g,(e,t)=>String.fromCodePoint(parseInt(t,10))).replace(/&amp;/g,"&").replace(/&quot;/g,'"').replace(/&#39;/g,"'").replace(/&apos;/g,"'").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&nbsp;/g," ")})(String(e).replace(/<script[\s\S]*?<\/script>/gi,"").replace(/<style[\s\S]*?<\/style>/gi,"").replace(/<[^>]+>/g," ")).replace(/\s+/g," ").trim()}function f(e=""){try{let t=new URL(e,"https://duckduckgo.com"),o=t.searchParams.get("uddg");return o?decodeURIComponent(o):t.toString()}catch{return e}}async function g(){let[e,t,a,r]=await Promise.all([(0,o.getSettings)(),(0,i.getProviderConnections)(),Promise.resolve((0,l.getRoutingLatencySummary)()),(0,p.readMcpHeartbeat)()]);return{ok:!0,runtime:{heartbeat:r,heartbeatOnline:(0,p.isMcpHeartbeatOnline)(r),http:(0,p.getHttpTransportState)()},settings:{observabilityEnabled:e?.observabilityEnabled!==!1,routingProfile:e?.routingProfile||e?.routing?.profile||null},providers:{total:t.length,active:t.filter(e=>!1!==e.isActive).length},latency:a}}async function b(e=!1){let t=await (0,a.getCombos)(),o=e?(0,n.getUsageAnalyticsFromDb)({period:"30d"}):null;return{combos:t,metrics:o?{totalRequests:o.summary?.totalRequests||0}:null}}async function v(e){return{combo:await (0,a.getComboById)(e),note:"Combo metrics adapter pending richer telemetry."}}async function y(e,t={}){return(0,a.updateCombo)(e,t)}async function w(e){let t=await (0,i.getProviderConnections)(e?{provider:e}:void 0);return{provider:e||null,connections:t.map(e=>({id:e.id,provider:e.provider,name:e.name,quotaState:e.quotaState||null,routingStatus:e.routingStatus||null,resetAt:e.resetAt||null,reasonCode:e.reasonCode||null}))}}async function x(e,t){let o=await fetch(`${e}/api/v1/unified`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),i=(o.headers.get("content-type")||"").includes("application/json")?await o.json().catch(()=>null):{status:o.status};return{ok:o.ok,status:o.status,result:i}}async function A(e="7d"){return(0,r.getUsageStats)(e)}async function S(){let e=await (0,c.getCurrentModelAliases)();return{models:u.AI_MODELS.map(t=>({...t,fullModel:`${t.provider}/${t.model}`,alias:e[`${t.provider}/${t.model}`]||t.model}))}}async function k(e){let t=(0,n.getUsageAnalyticsFromDb)({period:"30d",provider:e}),o=(0,l.getRoutingLatencySummary)(),a=await (0,i.getProviderConnections)(e?{provider:e}:void 0);return{provider:e||null,analytics:t,latency:o,connections:a.map(e=>({id:e.id,provider:e.provider,name:e.name,healthStatus:e.healthStatus||null,routingStatus:e.routingStatus||null,quotaState:e.quotaState||null,authState:e.authState||null}))}}async function I(e={}){let t=await (0,o.getSettings)();return{simulated:!0,request:e,routingProfile:t?.routingProfile||t?.routing?.profile||"balanced",strategy:t?.routing?.strategy||"fill-first",note:"Simulation currently reflects configured policy and does not execute upstream traffic."}}async function _(e={}){let t=await (0,o.getSettings)(),i={...t?.governance||{},enabled:e.enabled??t?.governance?.enabled??!1,monthlyBudgetCapUsd:Number(e.monthlyBudgetCapUsd??t?.governance?.monthlyBudgetCapUsd??0)},a=await (0,o.updateSettings)({governance:i});return{ok:!0,governance:a?.governance||i}}async function C(e={}){let t=await (0,o.getSettings)(),i={...t?.routing||{},...e.strategy?{strategy:e.strategy}:{},...e.profile?{profile:e.profile}:{}},a=await (0,o.updateSettings)({routing:i,...e.profile?{routingProfile:e.profile}:{}});return{ok:!0,routing:a?.routing||i,routingProfile:a?.routingProfile||e.profile||null}}async function M(e={}){let t=await (0,o.getSettings)(),i={...t?.mcpResilience||{},profile:e.profile||t?.mcpResilience?.profile||"balanced",updatedAt:new Date().toISOString()},a=await (0,o.updateSettings)({mcpResilience:i});return{ok:!0,resilience:a?.mcpResilience||i}}async function U(e="general"){let t=await (0,a.getCombos)(),o=(0,n.getUsageAnalyticsFromDb)({period:"30d"});return{taskType:e,suggestion:t[0]||null,candidates:t,note:t.length>0?`Selected first available combo as efficient default for ${e}.`:"No combos configured.",analyticsSummary:o?.summary||null}}async function R(e,t=""){let o=await (0,a.getComboById)(e);return{ok:!!o,combo:o,promptPreview:t?t.slice(0,120):"",note:o?"Combo resolved; execution-grade combo testing adapter still pending.":"Combo not found."}}async function T(e,t=5){let o=String(e||"").trim();if(!o)return{ok:!1,query:o,provider:"duckduckgo-html",results:[],error:"query is required"};let i=Number.isFinite(Number(t))?Math.max(1,Math.min(10,Number(t))):5,a=`https://duckduckgo.com/html/?q=${encodeURIComponent(o)}`,r=await fetch(a,{headers:{"User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml"}}),n=function(e="",t=5){let o,i=[],a=Number.isFinite(Number(t))?Math.max(1,Math.min(10,Number(t))):5,r=new Set,n=/<a[^>]*class="[^"]*result__a[^"]*"[^>]*href="([^"]+)"[^>]*>([\s\S]*?)<\/a>[\s\S]*?(?:<a[^>]*class="[^"]*result__snippet[^"]*"[^>]*>|<div[^>]*class="[^"]*result__snippet[^"]*"[^>]*>)([\s\S]*?)(?:<\/a>|<\/div>)/gi;for(;(o=n.exec(e))&&i.length<a;){let[,e,t,a]=o,n=f(e);r.has(n)||(r.add(n),i.push({title:h(t),url:n,snippet:h(a)}))}if(i.length>=a)return i;let s=/<(?:div|article)[^>]*class="[^"]*(?:result|results_links|web-result)[^"]*"[^>]*>([\s\S]*?)<\/(?:div|article)>/gi;for(;(o=s.exec(e))&&i.length<a;){let e=o[1],t=e.match(/<a[^>]*href="([^"]+)"[^>]*>([\s\S]*?)<\/a>/i);if(!t)continue;let a=f(t[1]);if(!a||r.has(a))continue;let n=h(t[2]),s=e.match(/<(?:div|a|span)[^>]*class="[^"]*(?:snippet|result__extras__url|result__body)[^"]*"[^>]*>([\s\S]*?)<\/(?:div|a|span)>/i),l=h(s?.[1]||e);n&&(r.add(a),i.push({title:n,url:a,snippet:l}))}return i}(await r.text(),i);return{ok:r.ok,query:o,provider:"duckduckgo-html",limit:i,results:n,resultCount:n.length,note:n.length>0?"Search results fetched from DuckDuckGo HTML.":"No results parsed from DuckDuckGo HTML response."}}function E(e){let o=t.default.existsSync(e);return{status:o?"ok":"missing",file:e,sizeBytes:o?t.default.statSync(e).size:0}}function D(e,o,i){let a,r;if(!t.default.existsSync(o))return{label:e,repaired:!1,skipped:!0,reason:"missing_file"};let n=(a=new Date().toISOString().replace(/[:.]/g,"-"),r=`${o}.mcp-repair-${a}.bak`,t.default.copyFileSync(o,r),r),s=i();return s.pragma("wal_checkpoint(TRUNCATE)"),s.exec("VACUUM"),{label:e,repaired:!0,backupPath:n,actions:["backup","wal_checkpoint_truncate","vacuum"]}}async function O(e=!1){let[t,i,a]=await Promise.all([(0,s.getKnownProviders)(),(0,p.readMcpHeartbeat)(),(0,o.getSettings)()]),r=(0,d.getUsageSqliteFile)(),n=(0,m.getRequestDetailsSqliteFile)(),l={usageDb:E(r),requestDetails:E(n),settingsDb:{status:"ok",cloudEnabled:a?.cloudEnabled===!0},mcpHeartbeat:{status:i?(0,p.isMcpHeartbeatOnline)(i)?"ok":"stale":"missing",snapshot:i}},c=e?[D("usageDb",r,()=>(0,d.getUsageDbInstance)()),D("requestDetails",n,()=>(0,m.getRequestDetailsDbInstance)())]:[];return{ok:!0,checks:l,providerCount:t.length,autoRepairSupported:!0,autoRepairApplied:!0===e,repairs:c,note:e?"Basic non-destructive MCP repair completed for available SQLite files.":"This health check inspects live MCP/runtime database artifacts. Auto-repair is available for safe maintenance steps."}}async function P(){let e=await (0,o.getPricing)(),t=Object.keys(e||{});return{ok:!0,synced:!1,providerCount:t.length,providers:t,pricing:e,note:"Pricing store was loaded successfully. Upstream synchronization is not implemented yet."}}async function F(e,t,o){if(!o)return{ok:!1,url:t,proxyPoolId:null,error:"proxyPoolId is required"};let i=await fetch(`${e}/api/proxy-pools/${encodeURIComponent(o)}/test`,{method:"POST",headers:{"Content-Type":"application/json"}}),a=await i.json().catch(()=>({}));return{ok:i.ok&&a?.ok===!0,url:t,proxyPoolId:o,proxyTest:a}}async function q(e){let t=(await (0,o.getProxyPools)()).find(t=>t.id===e)||null;return t?{ok:!0,proxyPool:t,rotatedTo:t.id,note:"Rotation currently resolves the selected pool deterministically. Stateful pool cycling can be added later."}:{ok:!1,proxyPoolId:e,error:"Proxy pool not found"}}async function N(e){return(await fetch(`${e}/api/usage-worker/status`,{cache:"no-store"})).json()}async function j(e){return(0,s.getRequestDetailById)(e)}async function L(e){return(await fetch(`${e}/api/cache-domain`,{cache:"no-store"})).json()}async function B(e,t){return(await fetch(`${e}/api/cache-domain?layer=${encodeURIComponent(t)}`,{method:"DELETE"})).json()}async function K(e){let t=await fetch(`${e}/api/proxy-pools?includeUsage=true`,{cache:"no-store"}),o=await t.json(),i=Array.isArray(o?.proxyPools)?o.proxyPools:[];return{proxyPools:i,summary:{total:i.length,active:i.filter(e=>!1!==e.isActive).length,boundConnections:i.reduce((e,t)=>e+Number(t.boundConnectionCount||0),0)}}}async function $(e){return e&&await (0,o.validateApiKey)(e)&&(await (0,o.getApiKeys)()).find(t=>t.key===e)||null}async function z(e){let t=await (0,s.getRequestDetailById)(e);return{id:e,correlationId:t?.correlationId||null,trace:t?.providerResponse?.trace||null,traceSummary:t?.traceSummary||null,request:t?.request||null,provider:t?.provider||null,model:t?.model||null,note:"Detailed route explanation formatter pending."}}async function H(){return(0,s.getKnownProviders)()}e.s(["bestComboForTask",0,U,"cacheFlush",0,B,"cacheStats",0,L,"checkQuota",0,w,"costReport",0,A,"dbHealthCheck",0,O,"explainRoute",0,z,"getComboMetrics",0,v,"getHealth",0,g,"knownProviders",0,H,"listCombos",0,b,"listModelsCatalog",0,S,"pricingSync",0,P,"providerMetrics",0,k,"proxyFetch",0,F,"proxyRotate",0,q,"proxyStats",0,K,"resolveCallerFromKey",0,$,"routeRequest",0,x,"sessionSnapshot",0,j,"setBudgetGuard",0,_,"setResilienceProfile",0,M,"setRoutingStrategy",0,C,"simulateRoute",0,I,"switchCombo",0,y,"testCombo",0,R,"usageWorkerStatus",0,N,"webSearch",0,T],196054)},312495,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__0iily9e._.js"].map(t=>e.l(t))).then(()=>t(854367)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__0evsmel._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},557036,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__0hqtm67._.js","server/chunks/src_lib_usageDb_12ol0zc._.js","server/chunks/[root-of-the-server]__0~fl033._.js","server/chunks/src_lib_requestDetailsDb_ts_0-244ac._.js"].map(t=>e.l(t))).then(()=>t(400722)))},875534,e=>{e.v(t=>Promise.all(["server/chunks/src_0hmdd9m._.js","server/chunks/src_lib_usageDb_0a3k2d7._.js","server/chunks/_0pxnrl-._.js","server/chunks/open-sse_config_providerModels_ts_0jf__3z._.js","server/chunks/[root-of-the-server]__0fif8d3._.js"].map(t=>e.l(t))).then(()=>t(737170)))},142416,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__10637_7._.js","server/chunks/src_lib_usageDb_0a3k2d7._.js"].map(t=>e.l(t))).then(()=>t(697334)))}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0m8at.3._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0~nkx9r._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[982048,e=>{"use strict";async function t(){return e.A(605589)}async function r(){let{getSettings:e}=await t();return e()}async function n(e){let{updateSettings:r}=await t();return r(e)}async function a(e){let{atomicUpdateSettings:r}=await t();return r(e)}async function s(e){let{getProviderConnections:r}=await t();return r(e)}async function i(){let{isCloudEnabled:e}=await t();return e()}async function o(){let{getDefaultChatRuntimeSettings:e}=await t();return e()}async function l(e){let{normalizeChatRuntimeSettings:r}=await t();return r(e)}async function u(e){let{normalizeMorphSettings:r}=await t();return r(e)}e.s(["atomicUpdateCurrentSettings",0,a,"getCurrentProviderConnections",0,s,"getCurrentSettings",0,r,"getDefaultCurrentChatRuntimeSettings",0,o,"isCurrentCloudEnabled",0,i,"normalizeCurrentChatRuntimeSettings",0,l,"normalizeCurrentMorphSettings",0,u,"updateCurrentSettings",0,n])},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},449719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},178249,(e,t,r)=>{t.exports=e.x("util/types",()=>require("util/types"))},949665,460980,e=>{"use strict";function t(e,n={}){let a=e?.socket?.remoteAddress;if(n.trustedProxyEnabled){let t=e?.headers?.get?.("x-forwarded-for");if(t)return r(t.split(",")[0].trim())}if(a)return r(a);let s=e?.headers?.get?.("x-real-ip");return s?r(s):null}function r(e){return e?e.startsWith("::ffff:")?e.substring(7):e:null}function n(e){let t=e.split(".");return 4!==t.length?null:t.reduce((e,t)=>(e<<8)+parseInt(t,10),0)>>>0}async function a(){let[t,r,n]=await Promise.all([e.A(687903),e.A(311105),e.A(974237)]);return{fs:t,path:r,os:n}}async function s(){let{path:e,os:t}=await a(),r=e.join(t.homedir(),".axonrouter");return e.join(r,"audit.log")}e.s(["getClientIP",0,t,"isLocalRequest",0,function(e,a={}){let s=t(e,a);if(!s)return!1;let i=a?.ipWhitelist||["127.0.0.1","::1","172.17.0.0/16"];if(!s||!Array.isArray(i))return!1;let o=r(s);for(let e of i)if(e===o||e.includes("/")&&function(e,t){let[r,a]=t.split("/"),s=~((1<<32-parseInt(a,10))-1),i=n(e),o=n(r);return null!==i&&null!==o&&(i&s)==(o&s)}(o,e))return!0;return!1}],949665);let i=new class{enabled;maxSize;constructor(){this.enabled=!0,this.maxSize=0xa00000}async rotate(e){try{let{fs:t}=await a();for(let r=3;r>=1;r--){let n=e+"."+r,a=e+"."+(r+1);await t.access(n).then(()=>!0).catch(()=>!1)&&(3===r?await t.unlink(n):await t.rename(n,a))}await t.access(e).then(()=>!0).catch(()=>!1)&&await t.rename(e,e+".1")}catch(e){console.error("[AuditLog] Failed to rotate log:",e instanceof Error?e.message:String(e))}}async log(e,t,r){if(this.enabled)try{let{fs:n,path:i}=await a(),o=r||await s(),l={timestamp:new Date().toISOString(),event:e,...t},u=JSON.stringify(l)+"\n",d=i.dirname(o);await n.mkdir(d,{recursive:!0});let c=await n.stat(o).catch(()=>null);c&&c.size>=this.maxSize&&await this.rotate(o),await n.appendFile(o,u,"utf-8")}catch(e){console.error("[AuditLog] Failed to write log:",e instanceof Error?e.message:String(e))}}setEnabled(e){this.enabled=e}setMaxSize(e){this.maxSize=e}};e.s(["auditLog",0,i],460980)},724999,e=>{"use strict";var t=e.i(89171),r=e.i(438083),n=e.i(982048),a=e.i(949665),s=e.i(460980),i=e.i(238476);async function o(e){let t,n=(t=e.headers.get("cookie")||"",t.split(";").map(e=>e.trim()).find(e=>e.startsWith("auth_token="))?.slice("auth_token=".length));if(!n)return!1;try{return await r.V4.verify(n,(0,i.getPasetoPublicKey)()),!0}catch{return!1}}async function l(e){let r=await (0,n.getCurrentSettings)().catch(()=>null),i=(0,a.isLocalRequest)(e,r),l=await o(e);return(r?.auditLogEnabled&&s.auditLog.log("management_auth_attempt",{ip:(0,a.getClientIP)(e,r),path:new URL(e.url).pathname,allowed:i||l,reason:i?"localhost_whitelist":l?"valid_paseto":"denied"}),i||l)?null:t.NextResponse.json({error:"Unauthorized"},{status:401})}e.s(["requireManagementAuth",0,l])},912714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},857764,(e,t,r)=>{t.exports=e.x("node:url",()=>require("node:url"))},478500,(e,t,r)=>{t.exports=e.x("node:async_hooks",()=>require("node:async_hooks"))},951615,(e,t,r)=>{t.exports=e.x("node:buffer",()=>require("node:buffer"))},761095,(e,t,r)=>{t.exports=e.x("node:net",()=>require("node:net"))},347299,(e,t,r)=>{t.exports=e.x("node:http",()=>require("node:http"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},687769,(e,t,r)=>{t.exports=e.x("node:events",()=>require("node:events"))},677652,(e,t,r)=>{t.exports=e.x("node:diagnostics_channel",()=>require("node:diagnostics_channel"))},812057,(e,t,r)=>{t.exports=e.x("node:util",()=>require("node:util"))},685560,(e,t,r)=>{t.exports=e.x("node:tls",()=>require("node:tls"))},727028,(e,t,r)=>{t.exports=e.x("node:zlib",()=>require("node:zlib"))},495879,(e,t,r)=>{t.exports=e.x("node:dns",()=>require("node:dns"))},754787,e=>{"use strict";var t=e.i(936689);function r(e){return null==e?"":String(e).trim()}async function n({proxyUrl:e,testUrl:a,timeoutMs:s}={}){let i,o=r(e);if(!o)return{ok:!1,status:400,error:"proxyUrl is required"};let l=r(a)||"https://google.com/",u=Number(s),d=Number.isFinite(u)&&u>0?Math.min(u,3e4):8e3;try{try{i=new t.ProxyAgent({uri:o})}catch(e){return{ok:!1,status:400,error:`Invalid proxy URL: ${e?.message||String(e)}`}}let e=new AbortController,r=Date.now(),n=setTimeout(()=>e.abort(),d);try{let n=await (0,t.fetch)(l,{method:"HEAD",dispatcher:i,signal:e.signal,headers:{"User-Agent":"AxonRouter"}});return{ok:n.ok,status:n.status,statusText:n.statusText,url:l,elapsedMs:Date.now()-r}}catch(t){let e=t?.name==="AbortError"?"Proxy test timed out":function(e){if(!e)return"Unknown error";let t=e?.message||String(e),r=e?.cause?.code||e?.code,n=e?.cause?.message;return n&&n!==t?r?`${t}: ${n} (${r})`:`${t}: ${n}`:r&&!t.includes(r)?`${t} (${r})`:t}(t);return{ok:!1,status:500,error:e}}finally{clearTimeout(n)}}finally{try{await i?.close?.()}catch{}}}e.s(["testProxyUrl",0,n])},772927,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),s=e.i(561916),i=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),x=e.i(570101),h=e.i(626937),f=e.i(10372),g=e.i(193695);e.i(820232);var m=e.i(600220),y=e.i(89171),w=e.i(724999),v=e.i(754787);async function R(e){let t=await (0,w.requireManagementAuth)(e);if(t)return t;try{let t=await e.json(),r=await (0,v.testProxyUrl)({proxyUrl:t?.proxyUrl,testUrl:t?.testUrl,timeoutMs:t?.timeoutMs});if(r?.ok)return y.NextResponse.json(r);let n="number"==typeof r?.status?r.status:500;return y.NextResponse.json({ok:!1,error:r?.error||"Proxy test failed"},{status:n})}catch(t){let e=t?.name==="AbortError"?"Proxy test timed out":t?.message||String(t);return y.NextResponse.json({ok:!1,error:e},{status:500})}}e.s(["POST",0,R],43094);var b=e.i(43094);let C=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/settings/proxy-test/route",pathname:"/api/settings/proxy-test",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/settings/proxy-test/route.ts",nextConfigOutput:"standalone",userland:b,...{}}),{workAsyncStorage:q,workUnitAsyncStorage:E,serverHooks:A}=C;async function _(e,t,n){n.requestMeta&&(0,a.setRequestMeta)(e,n.requestMeta),C.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let y="/api/settings/proxy-test/route";y=y.replace(/\/index$/,"")||"/";let w=await C.prepare(e,t,{srcPage:y,multiZoneDraftMode:!1});if(!w)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:v,deploymentId:R,params:b,nextConfig:q,parsedUrl:E,isDraftMode:A,prerenderManifest:_,routerServerContext:S,isOnDemandRevalidate:k,revalidateOnlyGenerated:P,resolvedPathname:N,clientReferenceManifest:T,serverActionsManifest:j}=w,U=(0,o.normalizeAppPath)(y),O=!!(_.dynamicRoutes[U]||_.routes[N]),M=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,E,!1):t.end("This page could not be found"),null);if(O&&!A){let e=!!_.routes[N],t=_.dynamicRoutes[U];if(t&&!1===t.fallback&&!e){if(q.adapterPath)return await M();throw new g.NoFallbackError}}let I=null;!O||C.isDev||A||(I="/index"===(I=N)?"/":I);let D=!0===C.isDev||!O,H=O&&!D;j&&T&&(0,i.setManifestsSingleton)({page:y,clientReferenceManifest:T,serverActionsManifest:j});let $=e.method||"GET",L=(0,s.getTracer)(),z=L.getActiveScopeSpan(),F=!!(null==S?void 0:S.isWrappedByNextServer),K=!!(0,a.getRequestMeta)(e,"minimalMode"),B=(0,a.getRequestMeta)(e,"incrementalCache")||await C.getIncrementalCache(e,q,_,K);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let W={params:b,previewProps:_.preview,renderOpts:{experimental:{authInterrupts:!!q.experimental.authInterrupts},cacheComponents:!!q.cacheComponents,supportsDynamicResponse:D,incrementalCache:B,cacheLifeProfiles:q.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>C.onRequestError(e,t,n,a,S)},sharedContext:{buildId:v,deploymentId:R}},V=new l.NodeNextRequest(e),G=new l.NodeNextResponse(t),X=u.NextRequestAdapter.fromNodeNextRequest(V,(0,u.signalFromNodeResponse)(t));try{let a,i=async e=>C.handle(X,W).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=L.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${$} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),a&&a!==e&&(a.setAttribute("http.route",n),a.updateName(t))}else e.updateName(`${$} ${y}`)}),o=async a=>{var s,o;let l=async({previousCacheEntry:r})=>{try{if(!K&&k&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(a);e.fetchMetrics=W.renderOpts.fetchMetrics;let o=W.renderOpts.pendingWaitUntil;o&&n.waitUntil&&(n.waitUntil(o),o=void 0);let l=W.renderOpts.collectedTags;if(!O)return await (0,p.sendResponse)(V,G,s,W.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,x.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==W.renderOpts.collectedRevalidate&&!(W.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&W.renderOpts.collectedRevalidate,n=void 0===W.renderOpts.collectedExpire||W.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:W.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await C.onRequestError(e,t,{routerKind:"App Router",routePath:y,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:k})},!1,S),t}},u=await C.handleResponse({req:e,nextConfig:q,cacheKey:I,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:_,isRoutePPREnabled:!1,isOnDemandRevalidate:k,revalidateOnlyGenerated:P,responseGenerator:l,waitUntil:n.waitUntil,isMinimalMode:K});if(!O)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(o=u.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",k?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,x.fromNodeOutgoingHttpHeaders)(u.value.headers);return K&&O||d.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,h.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(V,G,new Response(u.value.body,{headers:d,status:u.value.status||200})),null};F&&z?await o(z):(a=L.getActiveScopeSpan(),await L.withPropagatedContext(e.headers,()=>L.trace(d.BaseServerSpan.handleRequest,{spanName:`${$} ${y}`,kind:s.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},o),void 0,!F))}catch(t){if(t instanceof g.NoFallbackError||await C.onRequestError(e,t,{routerKind:"App Router",routePath:U,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:k})},!1,S),O)throw t;return await (0,p.sendResponse)(V,G,new Response(null,{status:500})),null}}e.s(["handler",0,_,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:q,workUnitAsyncStorage:E})},"routeModule",0,C,"serverHooks",0,A,"workAsyncStorage",0,q,"workUnitAsyncStorage",0,E],772927)},605589,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_0o08fof._.js","server/chunks/src_lib_localDb_ts_101._fr._.js","server/chunks/[root-of-the-server]__0.ntnan._.js"].map(t=>e.l(t))).then(()=>t(969738)))},687903,e=>{e.v(e=>Promise.resolve().then(()=>e(912714)))},311105,e=>{e.v(e=>Promise.resolve().then(()=>e(750227)))},974237,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_node_os_06ur78j._.js"].map(t=>e.l(t))).then(()=>t(660526)))}];
1
+ module.exports=[982048,e=>{"use strict";async function t(){return e.A(605589)}async function r(){let{getSettings:e}=await t();return e()}async function n(e){let{updateSettings:r}=await t();return r(e)}async function a(e){let{atomicUpdateSettings:r}=await t();return r(e)}async function s(e){let{getProviderConnections:r}=await t();return r(e)}async function i(){let{isCloudEnabled:e}=await t();return e()}async function o(){let{getDefaultChatRuntimeSettings:e}=await t();return e()}async function l(e){let{normalizeChatRuntimeSettings:r}=await t();return r(e)}async function u(e){let{normalizeMorphSettings:r}=await t();return r(e)}e.s(["atomicUpdateCurrentSettings",0,a,"getCurrentProviderConnections",0,s,"getCurrentSettings",0,r,"getDefaultCurrentChatRuntimeSettings",0,o,"isCurrentCloudEnabled",0,i,"normalizeCurrentChatRuntimeSettings",0,l,"normalizeCurrentMorphSettings",0,u,"updateCurrentSettings",0,n])},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},449719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},178249,(e,t,r)=>{t.exports=e.x("util/types",()=>require("util/types"))},949665,460980,e=>{"use strict";function t(e,n={}){let a=e?.socket?.remoteAddress;if((n??{}).trustedProxyEnabled){let t=e?.headers?.get?.("x-forwarded-for");if(t)return r(t.split(",")[0].trim())}if(a)return r(a);let s=e?.headers?.get?.("x-real-ip");return s?r(s):null}function r(e){return e?e.startsWith("::ffff:")?e.substring(7):e:null}function n(e){let t=e.split(".");return 4!==t.length?null:t.reduce((e,t)=>(e<<8)+parseInt(t,10),0)>>>0}async function a(){let[t,r,n]=await Promise.all([e.A(687903),e.A(311105),e.A(974237)]);return{fs:t,path:r,os:n}}async function s(){let{path:e,os:t}=await a(),r=e.join(t.homedir(),".axonrouter");return e.join(r,"audit.log")}e.s(["getClientIP",0,t,"isLocalRequest",0,function(e,a={}){let s=a??{},i=t(e,s);if(!i)return!1;let o=s.ipWhitelist||["127.0.0.1","::1","172.17.0.0/16","192.168.0.0/16"];if(!i||!Array.isArray(o))return!1;let l=r(i);for(let e of o)if(e===l||e.includes("/")&&function(e,t){let[r,a]=t.split("/"),s=~((1<<32-parseInt(a,10))-1),i=n(e),o=n(r);return null!==i&&null!==o&&(i&s)==(o&s)}(l,e))return!0;return!1}],949665);let i=new class{enabled;maxSize;constructor(){this.enabled=!0,this.maxSize=0xa00000}async rotate(e){try{let{fs:t}=await a();for(let r=3;r>=1;r--){let n=e+"."+r,a=e+"."+(r+1);await t.access(n).then(()=>!0).catch(()=>!1)&&(3===r?await t.unlink(n):await t.rename(n,a))}await t.access(e).then(()=>!0).catch(()=>!1)&&await t.rename(e,e+".1")}catch(e){console.error("[AuditLog] Failed to rotate log:",e instanceof Error?e.message:String(e))}}async log(e,t,r){if(this.enabled)try{let{fs:n,path:i}=await a(),o=r||await s(),l={timestamp:new Date().toISOString(),event:e,...t},u=JSON.stringify(l)+"\n",d=i.dirname(o);await n.mkdir(d,{recursive:!0});let c=await n.stat(o).catch(()=>null);c&&c.size>=this.maxSize&&await this.rotate(o),await n.appendFile(o,u,"utf-8")}catch(e){console.error("[AuditLog] Failed to write log:",e instanceof Error?e.message:String(e))}}setEnabled(e){this.enabled=e}setMaxSize(e){this.maxSize=e}};e.s(["auditLog",0,i],460980)},724999,e=>{"use strict";var t=e.i(89171),r=e.i(438083),n=e.i(982048),a=e.i(949665),s=e.i(460980),i=e.i(238476);async function o(e){let t,n=(t=e.headers.get("cookie")||"",t.split(";").map(e=>e.trim()).find(e=>e.startsWith("auth_token="))?.slice("auth_token=".length));if(!n)return!1;try{return await r.V4.verify(n,(0,i.getPasetoPublicKey)()),!0}catch{return!1}}async function l(e){let r=await (0,n.getCurrentSettings)().catch(()=>null),i=(0,a.isLocalRequest)(e,r),l=await o(e);return(r?.auditLogEnabled&&s.auditLog.log("management_auth_attempt",{ip:(0,a.getClientIP)(e,r),path:new URL(e.url).pathname,allowed:i||l,reason:i?"localhost_whitelist":l?"valid_paseto":"denied"}),i||l)?null:t.NextResponse.json({error:"Unauthorized"},{status:401})}e.s(["requireManagementAuth",0,l])},912714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},857764,(e,t,r)=>{t.exports=e.x("node:url",()=>require("node:url"))},478500,(e,t,r)=>{t.exports=e.x("node:async_hooks",()=>require("node:async_hooks"))},951615,(e,t,r)=>{t.exports=e.x("node:buffer",()=>require("node:buffer"))},761095,(e,t,r)=>{t.exports=e.x("node:net",()=>require("node:net"))},347299,(e,t,r)=>{t.exports=e.x("node:http",()=>require("node:http"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},687769,(e,t,r)=>{t.exports=e.x("node:events",()=>require("node:events"))},677652,(e,t,r)=>{t.exports=e.x("node:diagnostics_channel",()=>require("node:diagnostics_channel"))},812057,(e,t,r)=>{t.exports=e.x("node:util",()=>require("node:util"))},685560,(e,t,r)=>{t.exports=e.x("node:tls",()=>require("node:tls"))},727028,(e,t,r)=>{t.exports=e.x("node:zlib",()=>require("node:zlib"))},495879,(e,t,r)=>{t.exports=e.x("node:dns",()=>require("node:dns"))},754787,e=>{"use strict";var t=e.i(936689);function r(e){return null==e?"":String(e).trim()}async function n({proxyUrl:e,testUrl:a,timeoutMs:s}={}){let i,o=r(e);if(!o)return{ok:!1,status:400,error:"proxyUrl is required"};let l=r(a)||"https://google.com/",u=Number(s),d=Number.isFinite(u)&&u>0?Math.min(u,3e4):8e3;try{try{i=new t.ProxyAgent({uri:o})}catch(e){return{ok:!1,status:400,error:`Invalid proxy URL: ${e?.message||String(e)}`}}let e=new AbortController,r=Date.now(),n=setTimeout(()=>e.abort(),d);try{let n=await (0,t.fetch)(l,{method:"HEAD",dispatcher:i,signal:e.signal,headers:{"User-Agent":"AxonRouter"}});return{ok:n.ok,status:n.status,statusText:n.statusText,url:l,elapsedMs:Date.now()-r}}catch(t){let e=t?.name==="AbortError"?"Proxy test timed out":function(e){if(!e)return"Unknown error";let t=e?.message||String(e),r=e?.cause?.code||e?.code,n=e?.cause?.message;return n&&n!==t?r?`${t}: ${n} (${r})`:`${t}: ${n}`:r&&!t.includes(r)?`${t} (${r})`:t}(t);return{ok:!1,status:500,error:e}}finally{clearTimeout(n)}}finally{try{await i?.close?.()}catch{}}}e.s(["testProxyUrl",0,n])},772927,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),s=e.i(561916),i=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),x=e.i(570101),h=e.i(626937),f=e.i(10372),g=e.i(193695);e.i(820232);var m=e.i(600220),y=e.i(89171),w=e.i(724999),v=e.i(754787);async function R(e){let t=await (0,w.requireManagementAuth)(e);if(t)return t;try{let t=await e.json(),r=await (0,v.testProxyUrl)({proxyUrl:t?.proxyUrl,testUrl:t?.testUrl,timeoutMs:t?.timeoutMs});if(r?.ok)return y.NextResponse.json(r);let n="number"==typeof r?.status?r.status:500;return y.NextResponse.json({ok:!1,error:r?.error||"Proxy test failed"},{status:n})}catch(t){let e=t?.name==="AbortError"?"Proxy test timed out":t?.message||String(t);return y.NextResponse.json({ok:!1,error:e},{status:500})}}e.s(["POST",0,R],43094);var b=e.i(43094);let C=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/settings/proxy-test/route",pathname:"/api/settings/proxy-test",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/settings/proxy-test/route.ts",nextConfigOutput:"standalone",userland:b,...{}}),{workAsyncStorage:q,workUnitAsyncStorage:E,serverHooks:A}=C;async function _(e,t,n){n.requestMeta&&(0,a.setRequestMeta)(e,n.requestMeta),C.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let y="/api/settings/proxy-test/route";y=y.replace(/\/index$/,"")||"/";let w=await C.prepare(e,t,{srcPage:y,multiZoneDraftMode:!1});if(!w)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:v,deploymentId:R,params:b,nextConfig:q,parsedUrl:E,isDraftMode:A,prerenderManifest:_,routerServerContext:S,isOnDemandRevalidate:k,revalidateOnlyGenerated:P,resolvedPathname:N,clientReferenceManifest:T,serverActionsManifest:j}=w,U=(0,o.normalizeAppPath)(y),O=!!(_.dynamicRoutes[U]||_.routes[N]),M=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,E,!1):t.end("This page could not be found"),null);if(O&&!A){let e=!!_.routes[N],t=_.dynamicRoutes[U];if(t&&!1===t.fallback&&!e){if(q.adapterPath)return await M();throw new g.NoFallbackError}}let I=null;!O||C.isDev||A||(I="/index"===(I=N)?"/":I);let D=!0===C.isDev||!O,H=O&&!D;j&&T&&(0,i.setManifestsSingleton)({page:y,clientReferenceManifest:T,serverActionsManifest:j});let $=e.method||"GET",L=(0,s.getTracer)(),z=L.getActiveScopeSpan(),F=!!(null==S?void 0:S.isWrappedByNextServer),K=!!(0,a.getRequestMeta)(e,"minimalMode"),B=(0,a.getRequestMeta)(e,"incrementalCache")||await C.getIncrementalCache(e,q,_,K);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let W={params:b,previewProps:_.preview,renderOpts:{experimental:{authInterrupts:!!q.experimental.authInterrupts},cacheComponents:!!q.cacheComponents,supportsDynamicResponse:D,incrementalCache:B,cacheLifeProfiles:q.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>C.onRequestError(e,t,n,a,S)},sharedContext:{buildId:v,deploymentId:R}},V=new l.NodeNextRequest(e),G=new l.NodeNextResponse(t),X=u.NextRequestAdapter.fromNodeNextRequest(V,(0,u.signalFromNodeResponse)(t));try{let a,i=async e=>C.handle(X,W).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=L.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${$} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),a&&a!==e&&(a.setAttribute("http.route",n),a.updateName(t))}else e.updateName(`${$} ${y}`)}),o=async a=>{var s,o;let l=async({previousCacheEntry:r})=>{try{if(!K&&k&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(a);e.fetchMetrics=W.renderOpts.fetchMetrics;let o=W.renderOpts.pendingWaitUntil;o&&n.waitUntil&&(n.waitUntil(o),o=void 0);let l=W.renderOpts.collectedTags;if(!O)return await (0,p.sendResponse)(V,G,s,W.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,x.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==W.renderOpts.collectedRevalidate&&!(W.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&W.renderOpts.collectedRevalidate,n=void 0===W.renderOpts.collectedExpire||W.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:W.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await C.onRequestError(e,t,{routerKind:"App Router",routePath:y,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:k})},!1,S),t}},u=await C.handleResponse({req:e,nextConfig:q,cacheKey:I,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:_,isRoutePPREnabled:!1,isOnDemandRevalidate:k,revalidateOnlyGenerated:P,responseGenerator:l,waitUntil:n.waitUntil,isMinimalMode:K});if(!O)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(o=u.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",k?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,x.fromNodeOutgoingHttpHeaders)(u.value.headers);return K&&O||d.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,h.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(V,G,new Response(u.value.body,{headers:d,status:u.value.status||200})),null};F&&z?await o(z):(a=L.getActiveScopeSpan(),await L.withPropagatedContext(e.headers,()=>L.trace(d.BaseServerSpan.handleRequest,{spanName:`${$} ${y}`,kind:s.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},o),void 0,!F))}catch(t){if(t instanceof g.NoFallbackError||await C.onRequestError(e,t,{routerKind:"App Router",routePath:U,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:k})},!1,S),O)throw t;return await (0,p.sendResponse)(V,G,new Response(null,{status:500})),null}}e.s(["handler",0,_,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:q,workUnitAsyncStorage:E})},"routeModule",0,C,"serverHooks",0,A,"workAsyncStorage",0,q,"workUnitAsyncStorage",0,E],772927)},605589,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_0o08fof._.js","server/chunks/src_lib_localDb_ts_101._fr._.js","server/chunks/[root-of-the-server]__009duxh._.js"].map(t=>e.l(t))).then(()=>t(969738)))},687903,e=>{e.v(e=>Promise.resolve().then(()=>e(912714)))},311105,e=>{e.v(e=>Promise.resolve().then(()=>e(750227)))},974237,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_node_os_06ur78j._.js"].map(t=>e.l(t))).then(()=>t(660526)))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__0~p.k_k._.js.map