switchboard-router 0.5.21 → 0.6.1

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 (1238) hide show
  1. package/app/.next-cli-build/BUILD_ID +1 -1
  2. package/app/.next-cli-build/app-path-routes-manifest.json +17 -7
  3. package/app/.next-cli-build/build-manifest.json +3 -3
  4. package/app/.next-cli-build/prerender-manifest.json +3 -435
  5. package/app/.next-cli-build/required-server-files.json +9 -2
  6. package/app/.next-cli-build/routes-manifest.json +92 -13
  7. package/app/.next-cli-build/server/app/(dashboard)/dashboard/agent-library/page.js +2 -2
  8. package/app/.next-cli-build/server/app/(dashboard)/dashboard/agent-library/page.js.nft.json +1 -1
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/agent-library/page_client-reference-manifest.js +1 -1
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +11 -24
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/routing/page.js +2 -2
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/routing/page.js.nft.json +1 -1
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/routing/page_client-reference-manifest.js +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +3 -3
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +16 -16
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  34. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
  35. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  36. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  37. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +4 -4
  38. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  39. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  40. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/page.js +2 -2
  41. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/page.js.nft.json +1 -1
  42. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/page_client-reference-manifest.js +1 -1
  43. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
  44. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  45. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  46. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  47. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  48. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  49. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
  50. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  51. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  52. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  53. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  54. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  55. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +4 -4
  56. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  57. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  58. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  59. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  60. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  61. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  62. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  63. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  64. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  65. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  66. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  67. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/[id]/page.js +2 -2
  68. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/[id]/page.js.nft.json +1 -1
  69. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/[id]/page_client-reference-manifest.js +1 -1
  70. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +2 -2
  71. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
  72. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  73. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +2 -2
  74. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
  75. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  76. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  77. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  78. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  79. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  80. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  81. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  82. package/app/.next-cli-build/server/app/_global-error/page.js +2 -2
  83. package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  84. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  85. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  86. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  87. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  88. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  89. package/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  90. package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  91. package/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  92. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  93. package/app/.next-cli-build/server/app/_not-found/page.js +2 -2
  94. package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  95. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  96. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  97. package/app/.next-cli-build/server/app/_not-found.rsc +4 -4
  98. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +4 -4
  99. package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  100. package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +4 -4
  101. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  102. package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  103. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  104. package/app/.next-cli-build/server/app/api/agent-library/catalog/route.js +1 -1
  105. package/app/.next-cli-build/server/app/api/agent-library/catalog/route.js.nft.json +1 -1
  106. package/app/.next-cli-build/server/app/api/agent-library/doctor/route.js +1 -1
  107. package/app/.next-cli-build/server/app/api/agent-library/doctor/route.js.nft.json +1 -1
  108. package/app/.next-cli-build/server/app/api/agent-library/export/route.js +1 -1
  109. package/app/.next-cli-build/server/app/api/agent-library/export/route.js.nft.json +1 -1
  110. package/app/.next-cli-build/server/app/api/agent-library/mcp/route.js +1 -1
  111. package/app/.next-cli-build/server/app/api/agent-library/mcp/route.js.nft.json +1 -1
  112. package/app/.next-cli-build/server/app/api/agent-library/route.js +1 -1
  113. package/app/.next-cli-build/server/app/api/agent-library/route.js.nft.json +1 -1
  114. package/app/.next-cli-build/server/app/api/agent-library/skills/route.js +1 -1
  115. package/app/.next-cli-build/server/app/api/agent-library/skills/route.js.nft.json +1 -1
  116. package/app/.next-cli-build/server/app/api/agent-library/sync/route.js +1 -1
  117. package/app/.next-cli-build/server/app/api/agent-library/sync/route.js.nft.json +1 -1
  118. package/app/.next-cli-build/server/app/api/agent-library/updates/route.js +1 -0
  119. package/app/.next-cli-build/server/app/api/agent-library/updates/route.js.nft.json +1 -0
  120. package/app/.next-cli-build/server/app/api/agent-library/updates/route_client-reference-manifest.js +1 -0
  121. package/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
  122. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  123. package/app/.next-cli-build/server/app/api/cli-tools/aider-settings/route.js +5 -11
  124. package/app/.next-cli-build/server/app/api/cli-tools/aider-settings/route.js.nft.json +1 -1
  125. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +13 -38
  126. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  127. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  128. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  129. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  130. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  131. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  132. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  133. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +5 -2
  134. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  135. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +2 -1
  136. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  137. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
  138. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  139. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
  140. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  141. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
  142. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  143. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +5 -9
  144. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  145. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +5 -2
  146. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  147. package/app/.next-cli-build/server/app/api/cli-tools/gemini-cli-settings/route.js +9 -10
  148. package/app/.next-cli-build/server/app/api/cli-tools/gemini-cli-settings/route.js.nft.json +1 -1
  149. package/app/.next-cli-build/server/app/api/cli-tools/grok-settings/route.js +9 -6
  150. package/app/.next-cli-build/server/app/api/cli-tools/grok-settings/route.js.nft.json +1 -1
  151. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +8 -10
  152. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  153. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +6 -2
  154. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  155. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +5 -2
  156. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  157. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +1 -2
  158. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  159. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  160. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  161. package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/route.js +5 -2
  162. package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/route.js.nft.json +1 -1
  163. package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  164. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  165. package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  166. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  167. package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
  168. package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
  169. package/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
  170. package/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
  171. package/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
  172. package/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
  173. package/app/.next-cli-build/server/app/api/headroom/stop/route.js +1 -1
  174. package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
  175. package/app/.next-cli-build/server/app/api/health/route.js +1 -1
  176. package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  177. package/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  178. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  179. package/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  180. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  181. package/app/.next-cli-build/server/app/api/locale/route.js +1 -1
  182. package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  183. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +2 -2
  184. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  185. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +5 -5
  186. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  187. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  188. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  189. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  190. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  191. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  192. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  193. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  194. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  195. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  196. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  197. package/app/.next-cli-build/server/app/api/mgmt/v1/combos/[id]/route.js +1 -0
  198. package/app/.next-cli-build/server/app/api/mgmt/v1/combos/[id]/route.js.nft.json +1 -0
  199. package/app/.next-cli-build/server/app/api/mgmt/v1/combos/[id]/route_client-reference-manifest.js +1 -0
  200. package/app/.next-cli-build/server/app/api/mgmt/v1/combos/[id]/strategy/route.js +1 -0
  201. package/app/.next-cli-build/server/app/api/mgmt/v1/combos/[id]/strategy/route.js.nft.json +1 -0
  202. package/app/.next-cli-build/server/app/api/mgmt/v1/combos/[id]/strategy/route_client-reference-manifest.js +1 -0
  203. package/app/.next-cli-build/server/app/api/mgmt/v1/combos/route.js +1 -0
  204. package/app/.next-cli-build/server/app/api/mgmt/v1/combos/route.js.nft.json +1 -0
  205. package/app/.next-cli-build/server/app/api/mgmt/v1/combos/route_client-reference-manifest.js +1 -0
  206. package/app/.next-cli-build/server/app/api/mgmt/v1/health/route.js +1 -0
  207. package/app/.next-cli-build/server/app/api/mgmt/v1/health/route.js.nft.json +1 -0
  208. package/app/.next-cli-build/server/app/api/mgmt/v1/health/route_client-reference-manifest.js +1 -0
  209. package/app/.next-cli-build/server/app/api/mgmt/v1/providers/route.js +1 -0
  210. package/app/.next-cli-build/server/app/api/mgmt/v1/providers/route.js.nft.json +1 -0
  211. package/app/.next-cli-build/server/app/api/mgmt/v1/providers/route_client-reference-manifest.js +1 -0
  212. package/app/.next-cli-build/server/app/api/mgmt/v1/routing/route.js +1 -0
  213. package/app/.next-cli-build/server/app/api/mgmt/v1/routing/route.js.nft.json +1 -0
  214. package/app/.next-cli-build/server/app/api/mgmt/v1/routing/route_client-reference-manifest.js +1 -0
  215. package/app/.next-cli-build/server/app/api/mgmt/v1/usage/route.js +1 -0
  216. package/app/.next-cli-build/server/app/api/mgmt/v1/usage/route.js.nft.json +1 -0
  217. package/app/.next-cli-build/server/app/api/mgmt/v1/usage/route_client-reference-manifest.js +1 -0
  218. package/app/.next-cli-build/server/app/api/mgmt/v1/version/route.js +1 -0
  219. package/app/.next-cli-build/server/app/api/mgmt/v1/version/route.js.nft.json +1 -0
  220. package/app/.next-cli-build/server/app/api/mgmt/v1/version/route_client-reference-manifest.js +1 -0
  221. package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  222. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  223. package/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
  224. package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  225. package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  226. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  227. package/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  228. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  229. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  230. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  231. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  232. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  233. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  234. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  235. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
  236. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
  237. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  238. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  239. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  240. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  241. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  242. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  243. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  244. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  245. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  246. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  247. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js +1 -1
  248. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
  249. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  250. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  251. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  252. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  253. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js +1 -1
  254. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
  255. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  256. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  257. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  258. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  259. package/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  260. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  261. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  262. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  263. package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  264. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  265. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
  266. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  267. package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/batch/route.js +1 -1
  268. package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/batch/route.js.nft.json +1 -1
  269. package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/cache/route.js +1 -1
  270. package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/cache/route.js.nft.json +1 -1
  271. package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/prepare/route.js +1 -1
  272. package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/prepare/route.js.nft.json +1 -1
  273. package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/remove-unavailable/route.js +1 -1
  274. package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/remove-unavailable/route.js.nft.json +1 -1
  275. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  276. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  277. package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  278. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  279. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  280. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  281. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  282. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  283. package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  284. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  285. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
  286. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  287. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  288. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  289. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
  290. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  291. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  292. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  293. package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  294. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  295. package/app/.next-cli-build/server/app/api/routing/feedback/route.js +1 -0
  296. package/app/.next-cli-build/server/app/api/routing/feedback/route.js.nft.json +1 -0
  297. package/app/.next-cli-build/server/app/api/routing/feedback/route_client-reference-manifest.js +1 -0
  298. package/app/.next-cli-build/server/app/api/routing/insights/route.js +1 -1
  299. package/app/.next-cli-build/server/app/api/routing/insights/route.js.nft.json +1 -1
  300. package/app/.next-cli-build/server/app/api/routing/learn/route.js +1 -1
  301. package/app/.next-cli-build/server/app/api/routing/learn/route.js.nft.json +1 -1
  302. package/app/.next-cli-build/server/app/api/routing/stats/route.js +1 -0
  303. package/app/.next-cli-build/server/app/api/routing/stats/route.js.nft.json +1 -0
  304. package/app/.next-cli-build/server/app/api/routing/stats/route_client-reference-manifest.js +1 -0
  305. package/app/.next-cli-build/server/app/api/routing/versions/promote/route.js +1 -1
  306. package/app/.next-cli-build/server/app/api/routing/versions/promote/route.js.nft.json +1 -1
  307. package/app/.next-cli-build/server/app/api/routing/versions/rollback/route.js +1 -1
  308. package/app/.next-cli-build/server/app/api/routing/versions/rollback/route.js.nft.json +1 -1
  309. package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  310. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  311. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  312. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  313. package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  314. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  315. package/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
  316. package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  317. package/app/.next-cli-build/server/app/api/skills/[id]/route.js +1 -1
  318. package/app/.next-cli-build/server/app/api/skills/[id]/route.js.nft.json +1 -1
  319. package/app/.next-cli-build/server/app/api/tags/route.js +1 -1
  320. package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  321. package/app/.next-cli-build/server/app/api/token-saver/vault-stats/route.js +1 -0
  322. package/app/.next-cli-build/server/app/api/token-saver/vault-stats/route.js.nft.json +1 -0
  323. package/app/.next-cli-build/server/app/api/token-saver/vault-stats/route_client-reference-manifest.js +1 -0
  324. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  325. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  326. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
  327. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  328. package/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
  329. package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  330. package/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
  331. package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  332. package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  333. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  334. package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  335. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  336. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +1 -1
  337. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
  338. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  339. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  340. package/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  341. package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  342. package/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
  343. package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  344. package/app/.next-cli-build/server/app/api/usage/logs/route.js +1 -1
  345. package/app/.next-cli-build/server/app/api/usage/logs/route.js.nft.json +1 -1
  346. package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  347. package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  348. package/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  349. package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  350. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  351. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  352. package/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  353. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  354. package/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
  355. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  356. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  357. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  358. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  359. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  360. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  361. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  362. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  363. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  364. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  365. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  366. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  367. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  368. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +2 -2
  369. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  370. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  371. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  372. package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  373. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  374. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
  375. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  376. package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  377. package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  378. package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  379. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  380. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  381. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  382. package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  383. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  384. package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  385. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  386. package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  387. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  388. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  389. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  390. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  391. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  392. package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  393. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  394. package/app/.next-cli-build/server/app/api/version/route.js +1 -1
  395. package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  396. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  397. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  398. package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  399. package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  400. package/app/.next-cli-build/server/app/callback/page.js +2 -2
  401. package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  402. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  403. package/app/.next-cli-build/server/app/callback.html +1 -1
  404. package/app/.next-cli-build/server/app/callback.rsc +5 -5
  405. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +5 -5
  406. package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  407. package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +4 -4
  408. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
  409. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +2 -2
  410. package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  411. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
  412. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  413. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  414. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  415. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +5 -5
  416. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +5 -5
  417. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  418. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
  419. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  420. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +2 -2
  421. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  422. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  423. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  424. package/app/.next-cli-build/server/app/favicon.ico/route.js +1 -1
  425. package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
  426. package/app/.next-cli-build/server/app/index.html +1 -1
  427. package/app/.next-cli-build/server/app/index.rsc +4 -4
  428. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  429. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +4 -4
  430. package/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  431. package/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +4 -4
  432. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
  433. package/app/.next-cli-build/server/app/landing/page.js +2 -2
  434. package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  435. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  436. package/app/.next-cli-build/server/app/landing.html +1 -1
  437. package/app/.next-cli-build/server/app/landing.rsc +5 -5
  438. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +5 -5
  439. package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  440. package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +4 -4
  441. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
  442. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
  443. package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  444. package/app/.next-cli-build/server/app/login/page.js +2 -2
  445. package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  446. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  447. package/app/.next-cli-build/server/app/login.html +1 -1
  448. package/app/.next-cli-build/server/app/login.rsc +4 -4
  449. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +4 -4
  450. package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  451. package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +4 -4
  452. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
  453. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  454. package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  455. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
  456. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  457. package/app/.next-cli-build/server/app/page.js +2 -2
  458. package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  459. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  460. package/app/.next-cli-build/server/app-paths-manifest.json +17 -7
  461. package/app/.next-cli-build/server/chunks/1062.js +64 -0
  462. package/app/.next-cli-build/server/chunks/1064.js +104 -0
  463. package/app/.next-cli-build/server/chunks/1294.js +49 -0
  464. package/app/.next-cli-build/server/chunks/159.js +1 -0
  465. package/app/.next-cli-build/server/chunks/1808.js +1 -0
  466. package/app/.next-cli-build/server/chunks/194.js +1 -0
  467. package/app/.next-cli-build/server/chunks/1998.js +1 -1
  468. package/app/.next-cli-build/server/chunks/241.js +1 -1
  469. package/app/.next-cli-build/server/chunks/2712.js +3 -0
  470. package/app/.next-cli-build/server/chunks/{9528.js → 2750.js} +2 -3
  471. package/app/.next-cli-build/server/chunks/2925.js +1 -0
  472. package/app/.next-cli-build/server/chunks/3072.js +2 -0
  473. package/app/.next-cli-build/server/chunks/3075.js +1 -0
  474. package/app/.next-cli-build/server/chunks/319.js +3 -3
  475. package/app/.next-cli-build/server/chunks/3535.js +1 -1
  476. package/app/.next-cli-build/server/chunks/3546.js +1 -1
  477. package/app/.next-cli-build/server/chunks/3593.js +2 -2
  478. package/app/.next-cli-build/server/chunks/3675.js +1 -0
  479. package/app/.next-cli-build/server/chunks/369.js +70 -0
  480. package/app/.next-cli-build/server/chunks/3904.js +1 -0
  481. package/app/.next-cli-build/server/chunks/3986.js +49 -14
  482. package/app/.next-cli-build/server/chunks/4126.js +5 -0
  483. package/app/.next-cli-build/server/chunks/{2422.js → 4176.js} +1 -1
  484. package/app/.next-cli-build/server/chunks/4192.js +1 -0
  485. package/app/.next-cli-build/server/chunks/4194.js +1 -1
  486. package/app/.next-cli-build/server/chunks/440.js +26 -0
  487. package/app/.next-cli-build/server/chunks/4646.js +1 -0
  488. package/app/.next-cli-build/server/chunks/4739.js +2 -2
  489. package/app/.next-cli-build/server/chunks/4746.js +1 -1
  490. package/app/.next-cli-build/server/chunks/4776.js +33 -0
  491. package/app/.next-cli-build/server/chunks/4780.js +2 -2
  492. package/app/.next-cli-build/server/chunks/4803.js +9 -0
  493. package/app/.next-cli-build/server/chunks/4904.js +10 -0
  494. package/app/.next-cli-build/server/chunks/507.js +1 -1
  495. package/app/.next-cli-build/server/chunks/5115.js +67 -0
  496. package/app/.next-cli-build/server/chunks/5139.js +1 -0
  497. package/app/.next-cli-build/server/chunks/5258.js +2 -2
  498. package/app/.next-cli-build/server/chunks/5350.js +1 -0
  499. package/app/.next-cli-build/server/chunks/5615.js +3 -3
  500. package/app/.next-cli-build/server/chunks/5821.js +1 -0
  501. package/app/.next-cli-build/server/chunks/5920.js +17 -0
  502. package/app/.next-cli-build/server/chunks/6103.js +1 -0
  503. package/app/.next-cli-build/server/chunks/615.js +1 -1
  504. package/app/.next-cli-build/server/chunks/6182.js +3 -3
  505. package/app/.next-cli-build/server/chunks/6252.js +9 -0
  506. package/app/.next-cli-build/server/chunks/6448.js +109 -0
  507. package/app/.next-cli-build/server/chunks/{4206.js → 6470.js} +1 -1
  508. package/app/.next-cli-build/server/chunks/6492.js +1 -0
  509. package/app/.next-cli-build/server/chunks/6844.js +1 -1
  510. package/app/.next-cli-build/server/chunks/698.js +1 -1
  511. package/app/.next-cli-build/server/chunks/7141.js +1 -0
  512. package/app/.next-cli-build/server/chunks/7155.js +1 -0
  513. package/app/.next-cli-build/server/chunks/7250.js +1 -0
  514. package/app/.next-cli-build/server/chunks/7335.js +1 -0
  515. package/app/.next-cli-build/server/chunks/7662.js +1 -0
  516. package/app/.next-cli-build/server/chunks/7753.js +1 -0
  517. package/app/.next-cli-build/server/chunks/7828.js +1 -0
  518. package/app/.next-cli-build/server/chunks/7965.js +2 -2
  519. package/app/.next-cli-build/server/chunks/8062.js +9 -0
  520. package/app/.next-cli-build/server/chunks/8117.js +1 -0
  521. package/app/.next-cli-build/server/chunks/8129.js +1 -0
  522. package/app/.next-cli-build/server/chunks/8400.js +153 -0
  523. package/app/.next-cli-build/server/chunks/8469.js +9 -0
  524. package/app/.next-cli-build/server/chunks/8520.js +1 -1
  525. package/app/.next-cli-build/server/chunks/869.js +1 -0
  526. package/app/.next-cli-build/server/chunks/8775.js +1 -1
  527. package/app/.next-cli-build/server/chunks/8998.js +486 -0
  528. package/app/.next-cli-build/server/chunks/9046.js +1 -0
  529. package/app/.next-cli-build/server/chunks/9062.js +104 -0
  530. package/app/.next-cli-build/server/chunks/9261.js +88 -0
  531. package/app/.next-cli-build/server/chunks/9291.js +1 -0
  532. package/app/.next-cli-build/server/chunks/9397.js +1 -0
  533. package/app/.next-cli-build/server/chunks/9489.js +8 -0
  534. package/app/.next-cli-build/server/chunks/9508.js +45 -0
  535. package/app/.next-cli-build/server/chunks/9696.js +3 -3
  536. package/app/.next-cli-build/server/chunks/995.js +1 -0
  537. package/app/.next-cli-build/server/chunks/static/media/catalog.e7ada387.json +1710 -0
  538. package/app/.next-cli-build/server/instrumentation.js +1 -0
  539. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  540. package/app/.next-cli-build/server/middleware.js +11 -11
  541. package/app/.next-cli-build/server/pages/404.html +1 -1
  542. package/app/.next-cli-build/server/pages/500.html +1 -1
  543. package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
  544. package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
  545. package/app/.next-cli-build/server/webpack-runtime.js +1 -1
  546. package/app/.next-cli-build/static/TXnbOJZ6FVNX0p7oT_f3I/_buildManifest.js +1 -0
  547. package/app/.next-cli-build/static/chunks/1321-e3e6d10c0bafafeb.js +1 -0
  548. package/app/.next-cli-build/static/chunks/136-b76ff55769d5ecb1.js +1 -0
  549. package/app/.next-cli-build/static/chunks/2280-61262f8359f37a85.js +64 -0
  550. package/app/.next-cli-build/static/chunks/2493-6241eb181f2ecb6e.js +67 -0
  551. package/app/.next-cli-build/static/chunks/5497-aa5f62602eba33e9.js +7 -0
  552. package/app/.next-cli-build/static/chunks/7592-bbf465c7acd2478e.js +1 -0
  553. package/app/.next-cli-build/static/chunks/782-3676be0287313117.js +3 -0
  554. package/app/.next-cli-build/static/chunks/8500-287dd3e5d372ba6f.js +1 -0
  555. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/agent-library/page-d720efb4c9d427e6.js +1 -0
  556. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/page-04509a38b9fd3dcf.js +1 -0
  557. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-fa35870caaeabe20.js +1 -0
  558. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/{page-88244cb193592f8f.js → page-aa9c65a5e73a3f5d.js} +1 -1
  559. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-a8d77d24b4c71915.js +1 -0
  560. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/routing/page-95f09ae849f539d6.js +1 -0
  561. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-6678759c536b4008.js +1 -0
  562. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-59e92d48daea1aed.js +3 -0
  563. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-183cf5498e6d3e42.js +59 -0
  564. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-b67e7e3b9acaf1cc.js +1 -0
  565. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/page-a4bad553cba810e7.js +4 -0
  566. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/{page-36448aa4e37c7802.js → page-0568602ac2385103.js} +1 -1
  567. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/page-f6e3507247a819e5.js +1 -0
  568. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/{page-755ed32651028f99.js → page-08fe6612a31239da.js} +1 -1
  569. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-27ae229b00137a0b.js +1 -0
  570. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-a1ab95a02951c91d.js +1 -0
  571. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-0d7fcdbff356b2ab.js +10 -0
  572. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/page-608cdc11e7047159.js +1 -0
  573. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-ad84a479883e6cc3.js +1 -0
  574. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-f312c1076859630e.js +1 -0
  575. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/[id]/page-90277b8688f387c1.js +1 -0
  576. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/{page-77bb7400c2be9752.js → page-33e127c15efc66a5.js} +1 -1
  577. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-0f74a450b98fa125.js +1 -0
  578. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/page-ad2eda4b48c9319b.js +1 -0
  579. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-025d20cc7b091120.js +1 -0
  580. package/app/.next-cli-build/static/chunks/app/(dashboard)/layout-b06b9aec5dcdf486.js +1 -0
  581. package/app/.next-cli-build/static/chunks/app/_global-error/page-554d472d679429b3.js +1 -0
  582. package/app/.next-cli-build/static/chunks/app/api/agent-library/catalog/route-554d472d679429b3.js +1 -0
  583. package/app/.next-cli-build/static/chunks/app/api/agent-library/doctor/route-554d472d679429b3.js +1 -0
  584. package/app/.next-cli-build/static/chunks/app/api/agent-library/export/route-554d472d679429b3.js +1 -0
  585. package/app/.next-cli-build/static/chunks/app/api/agent-library/mcp/route-554d472d679429b3.js +1 -0
  586. package/app/.next-cli-build/static/chunks/app/api/agent-library/route-554d472d679429b3.js +1 -0
  587. package/app/.next-cli-build/static/chunks/app/api/agent-library/skills/route-554d472d679429b3.js +1 -0
  588. package/app/.next-cli-build/static/chunks/app/api/agent-library/sync/route-554d472d679429b3.js +1 -0
  589. package/app/.next-cli-build/static/chunks/app/api/agent-library/updates/route-554d472d679429b3.js +1 -0
  590. package/app/.next-cli-build/static/chunks/app/api/auth/status/route-554d472d679429b3.js +1 -0
  591. package/app/.next-cli-build/static/chunks/app/api/cli-tools/aider-settings/route-554d472d679429b3.js +1 -0
  592. package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-554d472d679429b3.js +1 -0
  593. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-554d472d679429b3.js +1 -0
  594. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-554d472d679429b3.js +1 -0
  595. package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-554d472d679429b3.js +1 -0
  596. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-554d472d679429b3.js +1 -0
  597. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-554d472d679429b3.js +1 -0
  598. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-554d472d679429b3.js +1 -0
  599. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-554d472d679429b3.js +1 -0
  600. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-554d472d679429b3.js +1 -0
  601. package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-554d472d679429b3.js +1 -0
  602. package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-554d472d679429b3.js +1 -0
  603. package/app/.next-cli-build/static/chunks/app/api/cli-tools/gemini-cli-settings/route-554d472d679429b3.js +1 -0
  604. package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-settings/route-554d472d679429b3.js +1 -0
  605. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-554d472d679429b3.js +1 -0
  606. package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-554d472d679429b3.js +1 -0
  607. package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-554d472d679429b3.js +1 -0
  608. package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-554d472d679429b3.js +1 -0
  609. package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-554d472d679429b3.js +1 -0
  610. package/app/.next-cli-build/static/chunks/app/api/cli-tools/pi-settings/route-554d472d679429b3.js +1 -0
  611. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-554d472d679429b3.js +1 -0
  612. package/app/.next-cli-build/static/chunks/app/api/combos/route-554d472d679429b3.js +1 -0
  613. package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-554d472d679429b3.js +1 -0
  614. package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-554d472d679429b3.js +1 -0
  615. package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-554d472d679429b3.js +1 -0
  616. package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-554d472d679429b3.js +1 -0
  617. package/app/.next-cli-build/static/chunks/app/api/health/route-554d472d679429b3.js +1 -0
  618. package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-554d472d679429b3.js +1 -0
  619. package/app/.next-cli-build/static/chunks/app/api/keys/route-554d472d679429b3.js +1 -0
  620. package/app/.next-cli-build/static/chunks/app/api/locale/route-554d472d679429b3.js +1 -0
  621. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-554d472d679429b3.js +1 -0
  622. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-554d472d679429b3.js +1 -0
  623. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-554d472d679429b3.js +1 -0
  624. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-554d472d679429b3.js +1 -0
  625. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-554d472d679429b3.js +1 -0
  626. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-554d472d679429b3.js +1 -0
  627. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-554d472d679429b3.js +1 -0
  628. package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/combos/[id]/route-554d472d679429b3.js +1 -0
  629. package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/combos/[id]/strategy/route-554d472d679429b3.js +1 -0
  630. package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/combos/route-554d472d679429b3.js +1 -0
  631. package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/health/route-554d472d679429b3.js +1 -0
  632. package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/providers/route-554d472d679429b3.js +1 -0
  633. package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/routing/route-554d472d679429b3.js +1 -0
  634. package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/usage/route-554d472d679429b3.js +1 -0
  635. package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/version/route-554d472d679429b3.js +1 -0
  636. package/app/.next-cli-build/static/chunks/app/api/models/alias/route-554d472d679429b3.js +1 -0
  637. package/app/.next-cli-build/static/chunks/app/api/models/availability/route-554d472d679429b3.js +1 -0
  638. package/app/.next-cli-build/static/chunks/app/api/models/custom/route-554d472d679429b3.js +1 -0
  639. package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-554d472d679429b3.js +1 -0
  640. package/app/.next-cli-build/static/chunks/app/api/models/route-554d472d679429b3.js +1 -0
  641. package/app/.next-cli-build/static/chunks/app/api/models/test/route-554d472d679429b3.js +1 -0
  642. package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-554d472d679429b3.js +1 -0
  643. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-554d472d679429b3.js +1 -0
  644. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-554d472d679429b3.js +1 -0
  645. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-554d472d679429b3.js +1 -0
  646. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-554d472d679429b3.js +1 -0
  647. package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-554d472d679429b3.js +1 -0
  648. package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-554d472d679429b3.js +1 -0
  649. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-554d472d679429b3.js +1 -0
  650. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-554d472d679429b3.js +1 -0
  651. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-554d472d679429b3.js +1 -0
  652. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-554d472d679429b3.js +1 -0
  653. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-554d472d679429b3.js +1 -0
  654. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-554d472d679429b3.js +1 -0
  655. package/app/.next-cli-build/static/chunks/app/api/pricing/route-554d472d679429b3.js +1 -0
  656. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-554d472d679429b3.js +1 -0
  657. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-554d472d679429b3.js +1 -0
  658. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-554d472d679429b3.js +1 -0
  659. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/batch/route-554d472d679429b3.js +1 -0
  660. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/cache/route-554d472d679429b3.js +1 -0
  661. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/prepare/route-554d472d679429b3.js +1 -0
  662. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/remove-unavailable/route-554d472d679429b3.js +1 -0
  663. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-554d472d679429b3.js +1 -0
  664. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-554d472d679429b3.js +1 -0
  665. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-554d472d679429b3.js +1 -0
  666. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-554d472d679429b3.js +1 -0
  667. package/app/.next-cli-build/static/chunks/app/api/providers/client/route-554d472d679429b3.js +1 -0
  668. package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-554d472d679429b3.js +1 -0
  669. package/app/.next-cli-build/static/chunks/app/api/providers/route-554d472d679429b3.js +1 -0
  670. package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-554d472d679429b3.js +1 -0
  671. package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-554d472d679429b3.js +1 -0
  672. package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-554d472d679429b3.js +1 -0
  673. package/app/.next-cli-build/static/chunks/app/api/routing/feedback/route-554d472d679429b3.js +1 -0
  674. package/app/.next-cli-build/static/chunks/app/api/routing/insights/route-554d472d679429b3.js +1 -0
  675. package/app/.next-cli-build/static/chunks/app/api/routing/learn/route-554d472d679429b3.js +1 -0
  676. package/app/.next-cli-build/static/chunks/app/api/routing/stats/route-554d472d679429b3.js +1 -0
  677. package/app/.next-cli-build/static/chunks/app/api/routing/versions/promote/route-554d472d679429b3.js +1 -0
  678. package/app/.next-cli-build/static/chunks/app/api/routing/versions/rollback/route-554d472d679429b3.js +1 -0
  679. package/app/.next-cli-build/static/chunks/app/api/settings/database/route-554d472d679429b3.js +1 -0
  680. package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-554d472d679429b3.js +1 -0
  681. package/app/.next-cli-build/static/chunks/app/api/settings/route-554d472d679429b3.js +1 -0
  682. package/app/.next-cli-build/static/chunks/app/api/shutdown/route-554d472d679429b3.js +1 -0
  683. package/app/.next-cli-build/static/chunks/app/api/skills/[id]/route-554d472d679429b3.js +1 -0
  684. package/app/.next-cli-build/static/chunks/app/api/tags/route-554d472d679429b3.js +1 -0
  685. package/app/.next-cli-build/static/chunks/app/api/token-saver/vault-stats/route-554d472d679429b3.js +1 -0
  686. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-554d472d679429b3.js +1 -0
  687. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-554d472d679429b3.js +1 -0
  688. package/app/.next-cli-build/static/chunks/app/api/translator/load/route-554d472d679429b3.js +1 -0
  689. package/app/.next-cli-build/static/chunks/app/api/translator/save/route-554d472d679429b3.js +1 -0
  690. package/app/.next-cli-build/static/chunks/app/api/translator/send/route-554d472d679429b3.js +1 -0
  691. package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-554d472d679429b3.js +1 -0
  692. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-554d472d679429b3.js +1 -0
  693. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-554d472d679429b3.js +1 -0
  694. package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-554d472d679429b3.js +1 -0
  695. package/app/.next-cli-build/static/chunks/app/api/usage/history/route-554d472d679429b3.js +1 -0
  696. package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-554d472d679429b3.js +1 -0
  697. package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-554d472d679429b3.js +1 -0
  698. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-554d472d679429b3.js +1 -0
  699. package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-554d472d679429b3.js +1 -0
  700. package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-554d472d679429b3.js +1 -0
  701. package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-554d472d679429b3.js +1 -0
  702. package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-554d472d679429b3.js +1 -0
  703. package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-554d472d679429b3.js +1 -0
  704. package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-554d472d679429b3.js +1 -0
  705. package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-554d472d679429b3.js +1 -0
  706. package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-554d472d679429b3.js +1 -0
  707. package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-554d472d679429b3.js +1 -0
  708. package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-554d472d679429b3.js +1 -0
  709. package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-554d472d679429b3.js +1 -0
  710. package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-554d472d679429b3.js +1 -0
  711. package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-554d472d679429b3.js +1 -0
  712. package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-554d472d679429b3.js +1 -0
  713. package/app/.next-cli-build/static/chunks/app/api/v1/models/route-554d472d679429b3.js +1 -0
  714. package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-554d472d679429b3.js +1 -0
  715. package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-554d472d679429b3.js +1 -0
  716. package/app/.next-cli-build/static/chunks/app/api/v1/route-554d472d679429b3.js +1 -0
  717. package/app/.next-cli-build/static/chunks/app/api/v1/search/route-554d472d679429b3.js +1 -0
  718. package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-554d472d679429b3.js +1 -0
  719. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-554d472d679429b3.js +1 -0
  720. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-554d472d679429b3.js +1 -0
  721. package/app/.next-cli-build/static/chunks/app/api/version/route-554d472d679429b3.js +1 -0
  722. package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-554d472d679429b3.js +1 -0
  723. package/app/.next-cli-build/static/chunks/app/api/version/update/route-554d472d679429b3.js +1 -0
  724. package/app/.next-cli-build/static/chunks/app/callback/page-5c1d863ff86ddc6e.js +1 -0
  725. package/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/page-4cfc7195d2a8bf0e.js +1 -0
  726. package/app/.next-cli-build/static/chunks/app/landing/page-9e06d57d9b215fd7.js +1 -0
  727. package/app/.next-cli-build/static/chunks/app/login/page-554d472d679429b3.js +1 -0
  728. package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-554d472d679429b3.js +1 -0
  729. package/app/.next-cli-build/static/chunks/app/page-554d472d679429b3.js +1 -0
  730. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-554d472d679429b3.js +1 -0
  731. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-554d472d679429b3.js +1 -0
  732. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-554d472d679429b3.js +1 -0
  733. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-554d472d679429b3.js +1 -0
  734. package/app/.next-cli-build/static/chunks/webpack-57b54315eb9fa808.js +1 -0
  735. package/app/.next-cli-build/static/css/92a5708a6b29ef8c.css +1 -0
  736. package/app/.next-cli-build/static/media/catalog.e7ada387.json +1710 -0
  737. package/app/custom-server.js +5 -5
  738. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/container.js +26 -18
  739. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/css-syntax-error.js +47 -14
  740. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/fromJSON.js +23 -9
  741. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/input.js +61 -33
  742. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/lazy-result.js +50 -37
  743. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/map-generator.js +26 -9
  744. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/no-work-result.js +57 -55
  745. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/node.js +110 -35
  746. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/parser.js +46 -38
  747. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/previous-map.js +30 -11
  748. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/processor.js +7 -7
  749. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/result.js +5 -5
  750. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/stringifier.js +41 -20
  751. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/tokenize.js +6 -2
  752. package/app/node_modules/{next/node_modules/postcss → postcss}/package.json +48 -48
  753. package/app/open-sse/package.json +4 -0
  754. package/app/open-sse/providers/generated/catalog.json +1710 -0
  755. package/app/package.json +22 -10
  756. package/app/public/i18n/literals/zh-CN.json +8 -0
  757. package/app/server.js +1 -1
  758. package/app/src/lib/db/adapters/betterSqliteAdapter.js +2 -3
  759. package/app/src/lib/db/adapters/bunSqliteAdapter.js +0 -2
  760. package/app/src/lib/db/adapters/nodeSqliteAdapter.js +0 -2
  761. package/app/src/lib/db/adapters/sqljsAdapter.js +23 -4
  762. package/app/src/lib/db/migrate.js +15 -4
  763. package/app/src/lib/updater/updater.js +67 -9
  764. package/app/src/shared/utils/apiKey.js +3 -7
  765. package/cli.js +205 -180
  766. package/hooks/sqliteRuntime.js +1 -7
  767. package/package.json +2 -2
  768. package/src/cli/api/client.js +3 -20
  769. package/src/cli/menus/settings.js +3 -62
  770. package/src/cli/tray/tray.js +18 -26
  771. package/src/shared/dataDir.js +61 -0
  772. package/src/shared/disableMitm.js +102 -0
  773. package/src/shared/openBrowser.js +43 -0
  774. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +0 -2
  775. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +0 -1
  776. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route_client-reference-manifest.js +0 -1
  777. package/app/.next-cli-build/server/app/api/init/route.js +0 -1
  778. package/app/.next-cli-build/server/app/api/init/route.js.nft.json +0 -1
  779. package/app/.next-cli-build/server/app/api/init/route_client-reference-manifest.js +0 -1
  780. package/app/.next-cli-build/server/app/dashboard/agent-library.html +0 -1
  781. package/app/.next-cli-build/server/app/dashboard/agent-library.meta +0 -17
  782. package/app/.next-cli-build/server/app/dashboard/agent-library.rsc +0 -30
  783. package/app/.next-cli-build/server/app/dashboard/agent-library.segments/!KGRhc2hib2FyZCk/dashboard/agent-library/__PAGE__.segment.rsc +0 -9
  784. package/app/.next-cli-build/server/app/dashboard/agent-library.segments/!KGRhc2hib2FyZCk/dashboard/agent-library.segment.rsc +0 -5
  785. package/app/.next-cli-build/server/app/dashboard/agent-library.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  786. package/app/.next-cli-build/server/app/dashboard/agent-library.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  787. package/app/.next-cli-build/server/app/dashboard/agent-library.segments/_full.segment.rsc +0 -30
  788. package/app/.next-cli-build/server/app/dashboard/agent-library.segments/_head.segment.rsc +0 -6
  789. package/app/.next-cli-build/server/app/dashboard/agent-library.segments/_index.segment.rsc +0 -8
  790. package/app/.next-cli-build/server/app/dashboard/agent-library.segments/_tree.segment.rsc +0 -8
  791. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +0 -1
  792. package/app/.next-cli-build/server/app/dashboard/basic-chat.meta +0 -17
  793. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +0 -27
  794. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +0 -6
  795. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +0 -5
  796. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  797. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  798. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +0 -27
  799. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +0 -6
  800. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +0 -8
  801. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +0 -8
  802. package/app/.next-cli-build/server/app/dashboard/cli-tools.html +0 -1
  803. package/app/.next-cli-build/server/app/dashboard/cli-tools.meta +0 -17
  804. package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +0 -28
  805. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +0 -6
  806. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +0 -5
  807. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  808. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  809. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +0 -28
  810. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +0 -6
  811. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +0 -8
  812. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +0 -8
  813. package/app/.next-cli-build/server/app/dashboard/combos/routing.html +0 -1
  814. package/app/.next-cli-build/server/app/dashboard/combos/routing.meta +0 -18
  815. package/app/.next-cli-build/server/app/dashboard/combos/routing.rsc +0 -30
  816. package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/!KGRhc2hib2FyZCk/dashboard/combos/routing/__PAGE__.segment.rsc +0 -9
  817. package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/!KGRhc2hib2FyZCk/dashboard/combos/routing.segment.rsc +0 -5
  818. package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +0 -5
  819. package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  820. package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  821. package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/_full.segment.rsc +0 -30
  822. package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/_head.segment.rsc +0 -6
  823. package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/_index.segment.rsc +0 -8
  824. package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/_tree.segment.rsc +0 -8
  825. package/app/.next-cli-build/server/app/dashboard/combos.html +0 -1
  826. package/app/.next-cli-build/server/app/dashboard/combos.meta +0 -17
  827. package/app/.next-cli-build/server/app/dashboard/combos.rsc +0 -28
  828. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +0 -6
  829. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +0 -5
  830. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  831. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  832. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +0 -28
  833. package/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +0 -6
  834. package/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +0 -8
  835. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +0 -8
  836. package/app/.next-cli-build/server/app/dashboard/endpoint.html +0 -1
  837. package/app/.next-cli-build/server/app/dashboard/endpoint.meta +0 -17
  838. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +0 -28
  839. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +0 -6
  840. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +0 -5
  841. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  842. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  843. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +0 -28
  844. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +0 -6
  845. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +0 -8
  846. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +0 -8
  847. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +0 -1
  848. package/app/.next-cli-build/server/app/dashboard/media-providers/web.meta +0 -18
  849. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +0 -30
  850. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +0 -9
  851. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +0 -5
  852. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +0 -5
  853. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  854. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  855. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +0 -30
  856. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +0 -6
  857. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +0 -8
  858. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +0 -8
  859. package/app/.next-cli-build/server/app/dashboard/media-providers.html +0 -1
  860. package/app/.next-cli-build/server/app/dashboard/media-providers.meta +0 -17
  861. package/app/.next-cli-build/server/app/dashboard/media-providers.rsc +0 -30
  862. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/__PAGE__.segment.rsc +0 -9
  863. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +0 -5
  864. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  865. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  866. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/_full.segment.rsc +0 -30
  867. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/_head.segment.rsc +0 -6
  868. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/_index.segment.rsc +0 -8
  869. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/_tree.segment.rsc +0 -8
  870. package/app/.next-cli-build/server/app/dashboard/mitm.html +0 -1
  871. package/app/.next-cli-build/server/app/dashboard/mitm.meta +0 -17
  872. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +0 -27
  873. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +0 -6
  874. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +0 -5
  875. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  876. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  877. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +0 -27
  878. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +0 -6
  879. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +0 -8
  880. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +0 -8
  881. package/app/.next-cli-build/server/app/dashboard/profile.html +0 -1
  882. package/app/.next-cli-build/server/app/dashboard/profile.meta +0 -17
  883. package/app/.next-cli-build/server/app/dashboard/profile.rsc +0 -28
  884. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +0 -6
  885. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +0 -5
  886. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  887. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  888. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +0 -28
  889. package/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +0 -6
  890. package/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +0 -8
  891. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +0 -8
  892. package/app/.next-cli-build/server/app/dashboard/providers/new.html +0 -1
  893. package/app/.next-cli-build/server/app/dashboard/providers/new.meta +0 -18
  894. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +0 -30
  895. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +0 -9
  896. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +0 -5
  897. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +0 -5
  898. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  899. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  900. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +0 -30
  901. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +0 -6
  902. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +0 -8
  903. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +0 -8
  904. package/app/.next-cli-build/server/app/dashboard/providers.html +0 -1
  905. package/app/.next-cli-build/server/app/dashboard/providers.meta +0 -17
  906. package/app/.next-cli-build/server/app/dashboard/providers.rsc +0 -28
  907. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +0 -6
  908. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +0 -5
  909. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  910. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  911. package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +0 -28
  912. package/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +0 -6
  913. package/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +0 -8
  914. package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +0 -8
  915. package/app/.next-cli-build/server/app/dashboard/quota.html +0 -2
  916. package/app/.next-cli-build/server/app/dashboard/quota.meta +0 -17
  917. package/app/.next-cli-build/server/app/dashboard/quota.rsc +0 -28
  918. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +0 -7
  919. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +0 -5
  920. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  921. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  922. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +0 -28
  923. package/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +0 -6
  924. package/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +0 -8
  925. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +0 -8
  926. package/app/.next-cli-build/server/app/dashboard/skills.html +0 -1
  927. package/app/.next-cli-build/server/app/dashboard/skills.meta +0 -17
  928. package/app/.next-cli-build/server/app/dashboard/skills.rsc +0 -30
  929. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +0 -9
  930. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +0 -5
  931. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  932. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  933. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +0 -30
  934. package/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +0 -6
  935. package/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +0 -8
  936. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +0 -8
  937. package/app/.next-cli-build/server/app/dashboard/token-saver.html +0 -1
  938. package/app/.next-cli-build/server/app/dashboard/token-saver.meta +0 -17
  939. package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +0 -27
  940. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +0 -6
  941. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +0 -5
  942. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  943. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  944. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +0 -27
  945. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +0 -6
  946. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +0 -8
  947. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +0 -8
  948. package/app/.next-cli-build/server/app/dashboard/translator.html +0 -1
  949. package/app/.next-cli-build/server/app/dashboard/translator.meta +0 -17
  950. package/app/.next-cli-build/server/app/dashboard/translator.rsc +0 -30
  951. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +0 -9
  952. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +0 -5
  953. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  954. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  955. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +0 -30
  956. package/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +0 -6
  957. package/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +0 -8
  958. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +0 -8
  959. package/app/.next-cli-build/server/app/dashboard/usage.html +0 -1
  960. package/app/.next-cli-build/server/app/dashboard/usage.meta +0 -17
  961. package/app/.next-cli-build/server/app/dashboard/usage.rsc +0 -30
  962. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +0 -9
  963. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +0 -5
  964. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  965. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  966. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +0 -30
  967. package/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +0 -6
  968. package/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +0 -8
  969. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +0 -8
  970. package/app/.next-cli-build/server/app/dashboard.html +0 -1
  971. package/app/.next-cli-build/server/app/dashboard.meta +0 -16
  972. package/app/.next-cli-build/server/app/dashboard.rsc +0 -28
  973. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +0 -6
  974. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
  975. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
  976. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +0 -28
  977. package/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +0 -6
  978. package/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +0 -8
  979. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +0 -8
  980. package/app/.next-cli-build/server/chunks/1051.js +0 -1
  981. package/app/.next-cli-build/server/chunks/1220.js +0 -3
  982. package/app/.next-cli-build/server/chunks/1241.js +0 -1
  983. package/app/.next-cli-build/server/chunks/1814.js +0 -17
  984. package/app/.next-cli-build/server/chunks/2117.js +0 -1
  985. package/app/.next-cli-build/server/chunks/2280.js +0 -1
  986. package/app/.next-cli-build/server/chunks/2548.js +0 -67
  987. package/app/.next-cli-build/server/chunks/2701.js +0 -10
  988. package/app/.next-cli-build/server/chunks/2768.js +0 -79
  989. package/app/.next-cli-build/server/chunks/3943.js +0 -1
  990. package/app/.next-cli-build/server/chunks/4632.js +0 -1
  991. package/app/.next-cli-build/server/chunks/4827.js +0 -1
  992. package/app/.next-cli-build/server/chunks/5330.js +0 -161
  993. package/app/.next-cli-build/server/chunks/5612.js +0 -1
  994. package/app/.next-cli-build/server/chunks/5655.js +0 -1
  995. package/app/.next-cli-build/server/chunks/5699.js +0 -1
  996. package/app/.next-cli-build/server/chunks/5961.js +0 -28
  997. package/app/.next-cli-build/server/chunks/6040.js +0 -1
  998. package/app/.next-cli-build/server/chunks/6059.js +0 -1
  999. package/app/.next-cli-build/server/chunks/6070.js +0 -1
  1000. package/app/.next-cli-build/server/chunks/6150.js +0 -64
  1001. package/app/.next-cli-build/server/chunks/6306.js +0 -1
  1002. package/app/.next-cli-build/server/chunks/6763.js +0 -1
  1003. package/app/.next-cli-build/server/chunks/6777.js +0 -1
  1004. package/app/.next-cli-build/server/chunks/6922.js +0 -1
  1005. package/app/.next-cli-build/server/chunks/7651.js +0 -1
  1006. package/app/.next-cli-build/server/chunks/8164.js +0 -67
  1007. package/app/.next-cli-build/server/chunks/8238.js +0 -1
  1008. package/app/.next-cli-build/server/chunks/8860.js +0 -32
  1009. package/app/.next-cli-build/server/chunks/8895.js +0 -67
  1010. package/app/.next-cli-build/server/chunks/8910.js +0 -8
  1011. package/app/.next-cli-build/server/chunks/8920.js +0 -1
  1012. package/app/.next-cli-build/server/chunks/9830.js +0 -73
  1013. package/app/.next-cli-build/static/HFerqnfiKkxdqoMVxOfPW/_buildManifest.js +0 -1
  1014. package/app/.next-cli-build/static/chunks/1321-39ad919b1616c75c.js +0 -1
  1015. package/app/.next-cli-build/static/chunks/1610-cd46c6c47a9aa99a.js +0 -1
  1016. package/app/.next-cli-build/static/chunks/1655-0df56bb46fc3a442.js +0 -73
  1017. package/app/.next-cli-build/static/chunks/2562-ceb69ca00b47af6e.js +0 -64
  1018. package/app/.next-cli-build/static/chunks/5242-bb1a1a7ec3bfb62f.js +0 -1
  1019. package/app/.next-cli-build/static/chunks/5497-1ebc533b1f404c9f.js +0 -7
  1020. package/app/.next-cli-build/static/chunks/5772-901f1092d831ec37.js +0 -3
  1021. package/app/.next-cli-build/static/chunks/705-012db20bb6a5da8b.js +0 -1
  1022. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/agent-library/page-b6f9c90a614bfb03.js +0 -1
  1023. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/page-af2d913820faedae.js +0 -1
  1024. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-a777baf9c2aa43b4.js +0 -1
  1025. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-3f5fa0d8e152056f.js +0 -1
  1026. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/routing/page-ff92eef8e57d1447.js +0 -1
  1027. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-73628e93426ae624.js +0 -1
  1028. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-a8d8d0f4bfbcfbae.js +0 -3
  1029. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-a915efd975f6af81.js +0 -59
  1030. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-9cad271042843781.js +0 -1
  1031. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/page-8bff15a89ffc3746.js +0 -4
  1032. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/page-4d2b06f4c8d1b384.js +0 -1
  1033. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-afeae41f2e9445ec.js +0 -1
  1034. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-ff7973275ee57a96.js +0 -1
  1035. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-5e44267c26a7e42d.js +0 -10
  1036. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/page-3afd6ee04180298c.js +0 -1
  1037. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-4957f02eb9879798.js +0 -1
  1038. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-14da9269a25bd090.js +0 -1
  1039. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/[id]/page-95e55b6593bcf3f7.js +0 -1
  1040. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-54d1bd253432bc6f.js +0 -1
  1041. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/page-ef0b203963c2c25e.js +0 -1
  1042. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-59db0b586ad5ab45.js +0 -1
  1043. package/app/.next-cli-build/static/chunks/app/(dashboard)/layout-58013e7e99d17d70.js +0 -1
  1044. package/app/.next-cli-build/static/chunks/app/_global-error/page-4ff27935cdf818b5.js +0 -1
  1045. package/app/.next-cli-build/static/chunks/app/api/agent-library/catalog/route-4ff27935cdf818b5.js +0 -1
  1046. package/app/.next-cli-build/static/chunks/app/api/agent-library/doctor/route-4ff27935cdf818b5.js +0 -1
  1047. package/app/.next-cli-build/static/chunks/app/api/agent-library/export/route-4ff27935cdf818b5.js +0 -1
  1048. package/app/.next-cli-build/static/chunks/app/api/agent-library/mcp/route-4ff27935cdf818b5.js +0 -1
  1049. package/app/.next-cli-build/static/chunks/app/api/agent-library/route-4ff27935cdf818b5.js +0 -1
  1050. package/app/.next-cli-build/static/chunks/app/api/agent-library/skills/route-4ff27935cdf818b5.js +0 -1
  1051. package/app/.next-cli-build/static/chunks/app/api/agent-library/sync/route-4ff27935cdf818b5.js +0 -1
  1052. package/app/.next-cli-build/static/chunks/app/api/auth/status/route-4ff27935cdf818b5.js +0 -1
  1053. package/app/.next-cli-build/static/chunks/app/api/cli-tools/aider-settings/route-4ff27935cdf818b5.js +0 -1
  1054. package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-4ff27935cdf818b5.js +0 -1
  1055. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-4ff27935cdf818b5.js +0 -1
  1056. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-4ff27935cdf818b5.js +0 -1
  1057. package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-4ff27935cdf818b5.js +0 -1
  1058. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-4ff27935cdf818b5.js +0 -1
  1059. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-4ff27935cdf818b5.js +0 -1
  1060. package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-4ff27935cdf818b5.js +0 -1
  1061. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-4ff27935cdf818b5.js +0 -1
  1062. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-4ff27935cdf818b5.js +0 -1
  1063. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-4ff27935cdf818b5.js +0 -1
  1064. package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-4ff27935cdf818b5.js +0 -1
  1065. package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-4ff27935cdf818b5.js +0 -1
  1066. package/app/.next-cli-build/static/chunks/app/api/cli-tools/gemini-cli-settings/route-4ff27935cdf818b5.js +0 -1
  1067. package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-settings/route-4ff27935cdf818b5.js +0 -1
  1068. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-4ff27935cdf818b5.js +0 -1
  1069. package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-4ff27935cdf818b5.js +0 -1
  1070. package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-4ff27935cdf818b5.js +0 -1
  1071. package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-4ff27935cdf818b5.js +0 -1
  1072. package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-4ff27935cdf818b5.js +0 -1
  1073. package/app/.next-cli-build/static/chunks/app/api/cli-tools/pi-settings/route-4ff27935cdf818b5.js +0 -1
  1074. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-4ff27935cdf818b5.js +0 -1
  1075. package/app/.next-cli-build/static/chunks/app/api/combos/route-4ff27935cdf818b5.js +0 -1
  1076. package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-4ff27935cdf818b5.js +0 -1
  1077. package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-4ff27935cdf818b5.js +0 -1
  1078. package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-4ff27935cdf818b5.js +0 -1
  1079. package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-4ff27935cdf818b5.js +0 -1
  1080. package/app/.next-cli-build/static/chunks/app/api/health/route-4ff27935cdf818b5.js +0 -1
  1081. package/app/.next-cli-build/static/chunks/app/api/init/route-4ff27935cdf818b5.js +0 -1
  1082. package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-4ff27935cdf818b5.js +0 -1
  1083. package/app/.next-cli-build/static/chunks/app/api/keys/route-4ff27935cdf818b5.js +0 -1
  1084. package/app/.next-cli-build/static/chunks/app/api/locale/route-4ff27935cdf818b5.js +0 -1
  1085. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-4ff27935cdf818b5.js +0 -1
  1086. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-4ff27935cdf818b5.js +0 -1
  1087. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-4ff27935cdf818b5.js +0 -1
  1088. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-4ff27935cdf818b5.js +0 -1
  1089. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-4ff27935cdf818b5.js +0 -1
  1090. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-4ff27935cdf818b5.js +0 -1
  1091. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-4ff27935cdf818b5.js +0 -1
  1092. package/app/.next-cli-build/static/chunks/app/api/models/alias/route-4ff27935cdf818b5.js +0 -1
  1093. package/app/.next-cli-build/static/chunks/app/api/models/availability/route-4ff27935cdf818b5.js +0 -1
  1094. package/app/.next-cli-build/static/chunks/app/api/models/custom/route-4ff27935cdf818b5.js +0 -1
  1095. package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-4ff27935cdf818b5.js +0 -1
  1096. package/app/.next-cli-build/static/chunks/app/api/models/route-4ff27935cdf818b5.js +0 -1
  1097. package/app/.next-cli-build/static/chunks/app/api/models/test/route-4ff27935cdf818b5.js +0 -1
  1098. package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-4ff27935cdf818b5.js +0 -1
  1099. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-4ff27935cdf818b5.js +0 -1
  1100. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-4ff27935cdf818b5.js +0 -1
  1101. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-4ff27935cdf818b5.js +0 -1
  1102. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-4ff27935cdf818b5.js +0 -1
  1103. package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-4ff27935cdf818b5.js +0 -1
  1104. package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-4ff27935cdf818b5.js +0 -1
  1105. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-4ff27935cdf818b5.js +0 -1
  1106. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-4ff27935cdf818b5.js +0 -1
  1107. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-4ff27935cdf818b5.js +0 -1
  1108. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-4ff27935cdf818b5.js +0 -1
  1109. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-4ff27935cdf818b5.js +0 -1
  1110. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-4ff27935cdf818b5.js +0 -1
  1111. package/app/.next-cli-build/static/chunks/app/api/pricing/route-4ff27935cdf818b5.js +0 -1
  1112. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-4ff27935cdf818b5.js +0 -1
  1113. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-4ff27935cdf818b5.js +0 -1
  1114. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-4ff27935cdf818b5.js +0 -1
  1115. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/batch/route-4ff27935cdf818b5.js +0 -1
  1116. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/cache/route-4ff27935cdf818b5.js +0 -1
  1117. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/prepare/route-4ff27935cdf818b5.js +0 -1
  1118. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/remove-unavailable/route-4ff27935cdf818b5.js +0 -1
  1119. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-4ff27935cdf818b5.js +0 -1
  1120. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-4ff27935cdf818b5.js +0 -1
  1121. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-4ff27935cdf818b5.js +0 -1
  1122. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-4ff27935cdf818b5.js +0 -1
  1123. package/app/.next-cli-build/static/chunks/app/api/providers/client/route-4ff27935cdf818b5.js +0 -1
  1124. package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-4ff27935cdf818b5.js +0 -1
  1125. package/app/.next-cli-build/static/chunks/app/api/providers/route-4ff27935cdf818b5.js +0 -1
  1126. package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-4ff27935cdf818b5.js +0 -1
  1127. package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-4ff27935cdf818b5.js +0 -1
  1128. package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-4ff27935cdf818b5.js +0 -1
  1129. package/app/.next-cli-build/static/chunks/app/api/routing/insights/route-4ff27935cdf818b5.js +0 -1
  1130. package/app/.next-cli-build/static/chunks/app/api/routing/learn/route-4ff27935cdf818b5.js +0 -1
  1131. package/app/.next-cli-build/static/chunks/app/api/routing/versions/promote/route-4ff27935cdf818b5.js +0 -1
  1132. package/app/.next-cli-build/static/chunks/app/api/routing/versions/rollback/route-4ff27935cdf818b5.js +0 -1
  1133. package/app/.next-cli-build/static/chunks/app/api/settings/database/route-4ff27935cdf818b5.js +0 -1
  1134. package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-4ff27935cdf818b5.js +0 -1
  1135. package/app/.next-cli-build/static/chunks/app/api/settings/route-4ff27935cdf818b5.js +0 -1
  1136. package/app/.next-cli-build/static/chunks/app/api/shutdown/route-4ff27935cdf818b5.js +0 -1
  1137. package/app/.next-cli-build/static/chunks/app/api/skills/[id]/route-4ff27935cdf818b5.js +0 -1
  1138. package/app/.next-cli-build/static/chunks/app/api/tags/route-4ff27935cdf818b5.js +0 -1
  1139. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-4ff27935cdf818b5.js +0 -1
  1140. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-4ff27935cdf818b5.js +0 -1
  1141. package/app/.next-cli-build/static/chunks/app/api/translator/load/route-4ff27935cdf818b5.js +0 -1
  1142. package/app/.next-cli-build/static/chunks/app/api/translator/save/route-4ff27935cdf818b5.js +0 -1
  1143. package/app/.next-cli-build/static/chunks/app/api/translator/send/route-4ff27935cdf818b5.js +0 -1
  1144. package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-4ff27935cdf818b5.js +0 -1
  1145. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-4ff27935cdf818b5.js +0 -1
  1146. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-4ff27935cdf818b5.js +0 -1
  1147. package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-4ff27935cdf818b5.js +0 -1
  1148. package/app/.next-cli-build/static/chunks/app/api/usage/history/route-4ff27935cdf818b5.js +0 -1
  1149. package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-4ff27935cdf818b5.js +0 -1
  1150. package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-4ff27935cdf818b5.js +0 -1
  1151. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-4ff27935cdf818b5.js +0 -1
  1152. package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-4ff27935cdf818b5.js +0 -1
  1153. package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-4ff27935cdf818b5.js +0 -1
  1154. package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-4ff27935cdf818b5.js +0 -1
  1155. package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-4ff27935cdf818b5.js +0 -1
  1156. package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-4ff27935cdf818b5.js +0 -1
  1157. package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-4ff27935cdf818b5.js +0 -1
  1158. package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-4ff27935cdf818b5.js +0 -1
  1159. package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-4ff27935cdf818b5.js +0 -1
  1160. package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-4ff27935cdf818b5.js +0 -1
  1161. package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-4ff27935cdf818b5.js +0 -1
  1162. package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-4ff27935cdf818b5.js +0 -1
  1163. package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-4ff27935cdf818b5.js +0 -1
  1164. package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-4ff27935cdf818b5.js +0 -1
  1165. package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-4ff27935cdf818b5.js +0 -1
  1166. package/app/.next-cli-build/static/chunks/app/api/v1/models/route-4ff27935cdf818b5.js +0 -1
  1167. package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-4ff27935cdf818b5.js +0 -1
  1168. package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-4ff27935cdf818b5.js +0 -1
  1169. package/app/.next-cli-build/static/chunks/app/api/v1/route-4ff27935cdf818b5.js +0 -1
  1170. package/app/.next-cli-build/static/chunks/app/api/v1/search/route-4ff27935cdf818b5.js +0 -1
  1171. package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-4ff27935cdf818b5.js +0 -1
  1172. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-4ff27935cdf818b5.js +0 -1
  1173. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-4ff27935cdf818b5.js +0 -1
  1174. package/app/.next-cli-build/static/chunks/app/api/version/route-4ff27935cdf818b5.js +0 -1
  1175. package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-4ff27935cdf818b5.js +0 -1
  1176. package/app/.next-cli-build/static/chunks/app/api/version/update/route-4ff27935cdf818b5.js +0 -1
  1177. package/app/.next-cli-build/static/chunks/app/callback/page-64f2a90493720740.js +0 -1
  1178. package/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/page-2c2051aa3be879d6.js +0 -1
  1179. package/app/.next-cli-build/static/chunks/app/landing/page-8c76c0ea58e06a53.js +0 -1
  1180. package/app/.next-cli-build/static/chunks/app/login/page-4ff27935cdf818b5.js +0 -1
  1181. package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-4ff27935cdf818b5.js +0 -1
  1182. package/app/.next-cli-build/static/chunks/app/page-4ff27935cdf818b5.js +0 -1
  1183. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-4ff27935cdf818b5.js +0 -1
  1184. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-4ff27935cdf818b5.js +0 -1
  1185. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-4ff27935cdf818b5.js +0 -1
  1186. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-4ff27935cdf818b5.js +0 -1
  1187. package/app/.next-cli-build/static/chunks/webpack-868e94e9a2c8d9a9.js +0 -1
  1188. package/app/.next-cli-build/static/css/20c5585d3269ee43.css +0 -1
  1189. package/app/cli/.build-home/.switchboard/auth/machine-id-salt +0 -1
  1190. package/app/cli/.build-home/.switchboard/db/data.sqlite +0 -0
  1191. package/app/cli/.build-home/.switchboard/machine-id +0 -1
  1192. package/app/public/i18n/literals/ar.json +0 -195
  1193. package/app/public/i18n/literals/bn.json +0 -195
  1194. package/app/public/i18n/literals/cs.json +0 -195
  1195. package/app/public/i18n/literals/da.json +0 -195
  1196. package/app/public/i18n/literals/de.json +0 -195
  1197. package/app/public/i18n/literals/el.json +0 -195
  1198. package/app/public/i18n/literals/es.json +0 -195
  1199. package/app/public/i18n/literals/fa.json +0 -195
  1200. package/app/public/i18n/literals/fi.json +0 -195
  1201. package/app/public/i18n/literals/fr.json +0 -195
  1202. package/app/public/i18n/literals/he.json +0 -195
  1203. package/app/public/i18n/literals/hi.json +0 -195
  1204. package/app/public/i18n/literals/hu.json +0 -195
  1205. package/app/public/i18n/literals/id.json +0 -195
  1206. package/app/public/i18n/literals/it.json +0 -195
  1207. package/app/public/i18n/literals/ja.json +0 -195
  1208. package/app/public/i18n/literals/ko.json +0 -195
  1209. package/app/public/i18n/literals/nl.json +0 -195
  1210. package/app/public/i18n/literals/no.json +0 -195
  1211. package/app/public/i18n/literals/pl.json +0 -195
  1212. package/app/public/i18n/literals/pt-BR.json +0 -195
  1213. package/app/public/i18n/literals/pt-PT.json +0 -195
  1214. package/app/public/i18n/literals/ro.json +0 -195
  1215. package/app/public/i18n/literals/ru.json +0 -195
  1216. package/app/public/i18n/literals/sv.json +0 -195
  1217. package/app/public/i18n/literals/th.json +0 -195
  1218. package/app/public/i18n/literals/tl.json +0 -195
  1219. package/app/public/i18n/literals/tr.json +0 -195
  1220. package/app/public/i18n/literals/uk.json +0 -195
  1221. package/app/public/i18n/literals/ur.json +0 -195
  1222. package/app/public/i18n/literals/vi.json +0 -195
  1223. package/app/public/i18n/literals/zh-TW.json +0 -195
  1224. package/app/.next-cli-build/static/{HFerqnfiKkxdqoMVxOfPW → TXnbOJZ6FVNX0p7oT_f3I}/_ssgManifest.js +0 -0
  1225. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/at-rule.js +0 -0
  1226. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/comment.js +0 -0
  1227. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/declaration.js +4 -4
  1228. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/document.js +0 -0
  1229. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/list.js +0 -0
  1230. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/parse.js +1 -1
  1231. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/postcss.js +12 -12
  1232. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/root.js +0 -0
  1233. package/app/node_modules/{next/node_modules/postcss → postcss}/lib/rule.js +6 -6
  1234. /package/app/node_modules/{next/node_modules/postcss → postcss}/lib/stringify.js +0 -0
  1235. /package/app/node_modules/{next/node_modules/postcss → postcss}/lib/symbols.js +0 -0
  1236. /package/app/node_modules/{next/node_modules/postcss → postcss}/lib/terminal-highlight.js +0 -0
  1237. /package/app/node_modules/{next/node_modules/postcss → postcss}/lib/warn-once.js +0 -0
  1238. /package/app/node_modules/{next/node_modules/postcss → postcss}/lib/warning.js +0 -0
package/cli.js CHANGED
@@ -1,10 +1,11 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- const { spawn, exec, execSync } = require("child_process");
3
+ const { spawn, execSync } = require("child_process");
4
4
  const path = require("path");
5
5
  const fs = require("fs");
6
6
  const https = require("https");
7
7
  const os = require("os");
8
+ const { openBrowser: openBrowserWithoutShell } = require("./src/shared/openBrowser");
8
9
 
9
10
  // Native spinner - no external dependency
10
11
  function createSpinner(text) {
@@ -45,8 +46,15 @@ function createSpinner(text) {
45
46
  const pkg = require("./package.json");
46
47
  const { ensureSqliteRuntime, buildEnvWithRuntime } = require("./hooks/sqliteRuntime");
47
48
  const { ensureTrayRuntime } = require("./hooks/trayRuntime");
49
+ const { pinDataDir, getDataDir } = require("./src/shared/dataDir");
50
+ const { disableMitm } = require("./src/shared/disableMitm");
48
51
  const args = process.argv.slice(2);
49
52
 
53
+ // Resolve the data directory ONCE, before anything can create cache dirs inside
54
+ // a candidate, and export it so the spawned server and the CLI's token client
55
+ // cannot disagree about where the database and cli-secret live.
56
+ pinDataDir();
57
+
50
58
  // Self-heal SQLite runtime deps (sql.js + better-sqlite3) into ~/.switchboard/runtime
51
59
  // so the server can resolve them via NODE_PATH. Best-effort — sql.js is required,
52
60
  // better-sqlite3 is optional. Logs to stderr only on failure.
@@ -83,12 +91,6 @@ function getDisplayHost() {
83
91
  return host;
84
92
  }
85
93
  const MAX_PORT_ATTEMPTS = 10;
86
- // Identifiers for killAllAppProcesses — bin + package name only
87
- const PROCESS_IDENTIFIERS = [
88
- "switchboard",
89
- "switchboard-router",
90
- ];
91
-
92
94
  // Parse arguments
93
95
  let port = DEFAULT_PORT;
94
96
  let host = DEFAULT_HOST;
@@ -134,8 +136,9 @@ Options:
134
136
  }
135
137
  }
136
138
 
137
- // Auto-relaunch after update: detached process has no TTY fallback to tray
138
- if (skipUpdate && !trayMode && !process.stdin.isTTY) {
139
+ // A detached or piped CLI cannot answer the interactive menu. Keep it in the
140
+ // long-lived tray lifecycle even when it was launched without lifecycle flags.
141
+ if ((!process.stdin.isTTY || !process.stdout.isTTY) && !trayMode) {
139
142
  trayMode = true;
140
143
  process.env.TRAY_MODE = "1";
141
144
  }
@@ -154,11 +157,65 @@ function compareVersions(a, b) {
154
157
  return 0;
155
158
  }
156
159
 
157
- // Get app data dir (matches app/src/lib/dataDir.js convention)
158
- function getAppDataDir() {
159
- return process.platform === "win32"
160
- ? path.join(process.env.APPDATA || "", "switchboard")
161
- : path.join(os.homedir(), ".switchboard");
160
+ // PID/runtime state lives in the SAME directory the server writes to. Hardcoding
161
+ // `.switchboard` here would look for `.mitm.pid` in the wrong place under legacy
162
+ // adoption or an explicit DATA_DIR, leaving a privileged MITM process alive on
163
+ // port 443. pinDataDir() ran at startup, so this is the resolved value.
164
+ const getAppDataDir = getDataDir;
165
+ const getProcessStateFile = () => path.join(getAppDataDir(), "runtime", "owned-processes.json");
166
+
167
+ function readOwnedProcessState() {
168
+ try {
169
+ const parsed = JSON.parse(fs.readFileSync(getProcessStateFile(), "utf8"));
170
+ return parsed && typeof parsed === "object" ? parsed : {};
171
+ } catch { return {}; }
172
+ }
173
+
174
+ function writeOwnedProcessState(serverPid) {
175
+ try {
176
+ const file = getProcessStateFile();
177
+ fs.mkdirSync(path.dirname(file), { recursive: true });
178
+ fs.writeFileSync(file, JSON.stringify({
179
+ cliPid: process.pid,
180
+ cliPath: __filename,
181
+ serverPid,
182
+ serverPath,
183
+ writtenAt: Date.now(),
184
+ }), { mode: 0o600 });
185
+ } catch { /* best effort */ }
186
+ }
187
+
188
+ function clearOwnedProcessState() {
189
+ try {
190
+ const state = readOwnedProcessState();
191
+ if (Number(state.cliPid) === process.pid) fs.unlinkSync(getProcessStateFile());
192
+ } catch { /* best effort */ }
193
+ }
194
+
195
+ function processMatchesRecordedPath(pid, expectedPath) {
196
+ if (!expectedPath) return false;
197
+ try {
198
+ const command = process.platform === "win32"
199
+ ? execSync(`powershell -NonInteractive -NoProfile -Command "(Get-CimInstance Win32_Process -Filter 'ProcessId = ${Number(pid)}').CommandLine"`, { encoding: "utf8", windowsHide: true, timeout: 3000 })
200
+ : execSync(`ps -p ${Number(pid)} -o command=`, { encoding: "utf8", timeout: 3000 });
201
+ return command.includes(expectedPath);
202
+ } catch {
203
+ // If identity cannot be verified, fail closed rather than risking a PID
204
+ // reuse killing an unrelated process.
205
+ return false;
206
+ }
207
+ }
208
+
209
+ function readOwnedAppPids() {
210
+ const state = readOwnedProcessState();
211
+ return [
212
+ [state.serverPid, state.serverPath],
213
+ [state.cliPid, state.cliPath],
214
+ ]
215
+ .filter(([, expectedPath]) => typeof expectedPath === "string" && expectedPath.length > 0)
216
+ .map(([pid, expectedPath]) => [Number(pid), expectedPath])
217
+ .filter(([pid, expectedPath]) => Number.isInteger(pid) && pid > 1 && pid !== process.pid && processMatchesRecordedPath(pid, expectedPath))
218
+ .map(([pid]) => pid);
162
219
  }
163
220
 
164
221
  // Kill PID from file (best-effort, removes file after)
@@ -185,37 +242,7 @@ function killTunnelByPidFile() {
185
242
  killByPidFile(path.join(tunnelDir, "tailscale.pid"));
186
243
  }
187
244
 
188
- // Kill cloudflared whose --url targets this app's port (covers stale PID file case)
189
- function killCloudflaredByAppPort(appPort) {
190
- if (!appPort) return [];
191
- const portMatchers = [`localhost:${appPort}`, `127.0.0.1:${appPort}`];
192
- const pids = [];
193
- try {
194
- if (process.platform === "win32") {
195
- const psCmd = `powershell -NonInteractive -WindowStyle Hidden -Command "Get-WmiObject Win32_Process -Filter 'Name=\\"cloudflared.exe\\"' | Select-Object ProcessId,CommandLine | ConvertTo-Csv -NoTypeInformation"`;
196
- const output = execSync(psCmd, { encoding: "utf8", windowsHide: true, timeout: 5000 });
197
- const lines = output.split("\n").slice(1).filter(l => l.trim());
198
- lines.forEach(line => {
199
- if (portMatchers.some(m => line.includes(m))) {
200
- const match = line.match(/^"(\d+)"/);
201
- if (match && match[1]) pids.push(match[1]);
202
- }
203
- });
204
- } else {
205
- const output = execSync("ps -eo pid,command 2>/dev/null", { encoding: "utf8", timeout: 5000 });
206
- output.split("\n").forEach(line => {
207
- if (line.includes("cloudflared") && portMatchers.some(m => line.includes(m))) {
208
- const parts = line.trim().split(/\s+/);
209
- const pid = parts[0];
210
- if (pid && !isNaN(pid)) pids.push(pid);
211
- }
212
- });
213
- }
214
- } catch { }
215
- return pids;
216
- }
217
-
218
- // Kill all switchboard processes
245
+ // Kill only processes previously recorded by this launcher.
219
246
  function killAllAppProcesses(appPort) {
220
247
  return new Promise((resolve) => {
221
248
  try {
@@ -225,83 +252,36 @@ function killAllAppProcesses(appPort) {
225
252
  killTunnelByPidFile();
226
253
 
227
254
  const platform = process.platform;
228
- let pids = [];
229
-
230
- // Catch stale PID files: kill cloudflared bound to this app's port
231
- pids.push(...killCloudflaredByAppPort(appPort));
232
-
233
- if (platform === "win32") {
234
- // Windows: use WMI to get full CommandLine (tasklist /V doesn't include it)
235
- try {
236
- const psCmd = `powershell -NonInteractive -WindowStyle Hidden -Command "Get-WmiObject Win32_Process -Filter 'Name=\\"node.exe\\"' | Select-Object ProcessId,CommandLine | ConvertTo-Csv -NoTypeInformation"`;
237
- const output = execSync(psCmd, {
238
- encoding: "utf8",
239
- windowsHide: true,
240
- timeout: 5000
241
- });
242
- const lines = output.split("\n").slice(1).filter(l => l.trim());
243
- lines.forEach(line => {
244
- // Whitelist: real node process running switchboard/cli.js, or next-server.
245
- // Avoids killing editors/grep/strace/cursor that just have "switchboard" in cmdline.
246
- const cmd = line.toLowerCase();
247
- const isAppProcess =
248
- (cmd.includes("node") && cmd.includes("switchboard") && (cmd.includes("cli.js") || cmd.includes("\\switchboard") || cmd.includes("/switchboard")))
249
- || cmd.includes("next-server");
250
- if (isAppProcess) {
251
- const match = line.match(/^"(\d+)"/);
252
- if (match && match[1] && match[1] !== process.pid.toString()) {
253
- pids.push(match[1]);
254
- }
255
- }
256
- });
257
- } catch (e) {
258
- // No processes found or error - continue
259
- }
260
- } else {
261
- // macOS/Linux: use ps to find all matching processes
262
- try {
263
- const output = execSync('ps aux 2>/dev/null', {
264
- encoding: 'utf8',
265
- timeout: 5000
266
- });
267
- const lines = output.split('\n');
268
-
269
- lines.forEach(line => {
270
- // Whitelist: real node process running switchboard/cli.js, or next-server.
271
- // Avoids killing grep/strace/editors/cursor that incidentally match "switchboard".
272
- const cmd = line.toLowerCase();
273
- const isAppProcess =
274
- (cmd.includes("node") && cmd.includes("switchboard") && (cmd.includes("cli.js") || cmd.includes("/switchboard")))
275
- || cmd.includes("next-server");
276
- if (isAppProcess) {
277
- const parts = line.trim().split(/\s+/);
278
- const pid = parts[1];
279
- if (pid && !isNaN(pid) && pid !== process.pid.toString()) {
280
- pids.push(pid);
281
- }
282
- }
283
- });
284
- } catch (e) {
285
- // No processes found or error - continue
286
- }
287
- }
255
+ const pids = readOwnedAppPids();
288
256
 
289
- // Kill all found processes
257
+ // Gracefully stop owned processes, then force only survivors.
290
258
  if (pids.length > 0) {
291
- pids.forEach(pid => {
259
+ const uniquePids = [...new Set(pids.map(Number))];
260
+ uniquePids.forEach(pid => {
292
261
  try {
293
262
  if (platform === "win32") {
294
- execSync(`taskkill /F /PID ${pid} 2>nul`, { stdio: 'ignore', shell: true, windowsHide: true, timeout: 3000 });
263
+ execSync(`taskkill /T /PID ${pid} 2>nul`, { stdio: 'ignore', shell: true, windowsHide: true, timeout: 3000 });
295
264
  } else {
296
- execSync(`kill -9 ${pid} 2>/dev/null`, { stdio: 'ignore', timeout: 3000 });
265
+ process.kill(pid, "SIGTERM");
297
266
  }
298
267
  } catch (err) {
299
268
  // Process already dead or can't kill - continue
300
269
  }
301
270
  });
302
-
303
- // Wait for processes to fully terminate
304
- setTimeout(() => resolve(), 1000);
271
+ setTimeout(() => {
272
+ uniquePids.forEach((pid) => {
273
+ try {
274
+ process.kill(pid, 0);
275
+ if (platform === "win32") {
276
+ execSync(`taskkill /F /T /PID ${pid} 2>nul`, { stdio: "ignore", shell: true, windowsHide: true, timeout: 3000 });
277
+ } else {
278
+ process.kill(pid, "SIGKILL");
279
+ }
280
+ } catch { /* already stopped */ }
281
+ });
282
+ try { fs.unlinkSync(getProcessStateFile()); } catch { }
283
+ resolve();
284
+ }, 2000);
305
285
  } else {
306
286
  resolve();
307
287
  }
@@ -359,51 +339,69 @@ function killProxyByPidFile() {
359
339
  } catch { }
360
340
  }
361
341
 
362
- // Kill any process on specific port
342
+ function findListeningPids(port) {
343
+ const numericPort = Number(port);
344
+ if (!Number.isInteger(numericPort) || numericPort <= 0) return [];
345
+
346
+ try {
347
+ if (process.platform === "win32") {
348
+ const output = execSync(`netstat -ano | findstr :${numericPort}`, {
349
+ encoding: "utf8",
350
+ shell: true,
351
+ windowsHide: true,
352
+ timeout: 5000,
353
+ });
354
+ return output.split("\n")
355
+ .filter((line) => line.includes("LISTENING"))
356
+ .filter((line) => line.trim().split(/\s+/).some((field) => field.endsWith(`:${numericPort}`)))
357
+ .map((line) => Number(line.trim().split(/\s+/).pop()))
358
+ .filter((pid) => Number.isInteger(pid) && pid > 1);
359
+ }
360
+
361
+ const output = execSync(`lsof -tiTCP:${numericPort} -sTCP:LISTEN`, {
362
+ encoding: "utf8",
363
+ stdio: ["pipe", "pipe", "ignore"],
364
+ });
365
+ return output.split(/\s+/)
366
+ .map(Number)
367
+ .filter((pid) => Number.isInteger(pid) && pid > 1);
368
+ } catch {
369
+ return [];
370
+ }
371
+ }
372
+
373
+ // Never kill an arbitrary listener that happens to share the app port. The
374
+ // launcher may only signal PIDs recorded in its ownership state file.
363
375
  function killProcessOnPort(port) {
364
- return new Promise((resolve) => {
365
- try {
366
- const platform = process.platform;
367
- let pid;
376
+ const ownedPids = new Set(readOwnedAppPids());
377
+ const pids = findListeningPids(port).filter((pid) => ownedPids.has(pid));
378
+ if (pids.length === 0) return Promise.resolve();
368
379
 
369
- if (platform === "win32") {
370
- try {
371
- const output = execSync(`netstat -ano | findstr :${port}`, {
372
- encoding: 'utf8',
373
- shell: true,
374
- windowsHide: true,
375
- timeout: 5000
376
- }).trim();
377
- const lines = output.split('\n').filter(l => l.includes('LISTENING'));
378
- if (lines.length > 0) {
379
- pid = lines[0].trim().split(/\s+/).pop();
380
- execSync(`taskkill /F /PID ${pid} 2>nul`, { stdio: 'ignore', shell: true, windowsHide: true, timeout: 3000 });
381
- }
382
- } catch (e) {
383
- // Port is free or error
380
+ return new Promise((resolve) => {
381
+ const platform = process.platform;
382
+ pids.forEach((pid) => {
383
+ try {
384
+ if (platform === "win32") {
385
+ execSync(`taskkill /T /PID ${pid}`, { stdio: "ignore", shell: true, windowsHide: true, timeout: 3000 });
386
+ } else {
387
+ process.kill(pid, "SIGTERM");
384
388
  }
385
- } else {
386
- // macOS/Linux
389
+ } catch { /* already dead or inaccessible */ }
390
+ });
391
+
392
+ setTimeout(() => {
393
+ pids.forEach((pid) => {
387
394
  try {
388
- const pidOutput = execSync(`lsof -ti:${port}`, {
389
- encoding: 'utf8',
390
- stdio: ['pipe', 'pipe', 'ignore']
391
- }).trim();
392
- if (pidOutput) {
393
- pid = pidOutput.split('\n')[0];
394
- execSync(`kill -9 ${pid} 2>/dev/null`, { stdio: 'ignore', timeout: 3000 });
395
+ process.kill(pid, 0);
396
+ if (platform === "win32") {
397
+ execSync(`taskkill /F /T /PID ${pid}`, { stdio: "ignore", shell: true, windowsHide: true, timeout: 3000 });
398
+ } else {
399
+ process.kill(pid, "SIGKILL");
395
400
  }
396
- } catch (e) {
397
- // Port is free or error
398
- }
399
- }
400
-
401
- // Wait for port to be released
402
- setTimeout(() => resolve(), 500);
403
- } catch (err) {
404
- // Silent fail - continue anyway
401
+ } catch { /* already stopped */ }
402
+ });
405
403
  resolve();
406
- }
404
+ }, 500);
407
405
  });
408
406
  }
409
407
 
@@ -469,7 +467,7 @@ function checkForUpdate() {
469
467
  const ver = latest.version;
470
468
  // Reject name collisions: require a router/gateway-looking description
471
469
  const desc = String(latest.description || "").toLowerCase();
472
- const looksOurs = /switchboard|9router|routing|router|gateway|model/.test(desc);
470
+ const looksOurs = /switchboard|routing|router|gateway|model/.test(desc);
473
471
  if (ver && looksOurs && compareVersions(ver, pkg.version) > 0) {
474
472
  done(ver);
475
473
  } else {
@@ -488,21 +486,10 @@ function checkForUpdate() {
488
486
 
489
487
  // Open browser
490
488
  function openBrowser(url) {
491
- const platform = process.platform;
492
- let cmd;
493
-
494
- if (platform === "darwin") {
495
- cmd = `open "${url}"`;
496
- } else if (platform === "win32") {
497
- cmd = `start "" "${url}"`;
498
- } else {
499
- cmd = `xdg-open "${url}"`;
500
- }
501
-
502
- exec(cmd, { windowsHide: true }, (err) => {
503
- if (err) {
489
+ openBrowserWithoutShell(url, {
490
+ onError: () => {
504
491
  console.log(`Open browser manually: ${url}`);
505
- }
492
+ },
506
493
  });
507
494
  }
508
495
 
@@ -606,6 +593,7 @@ function startServer(latestVersion) {
606
593
  HOSTNAME: host
607
594
  }
608
595
  });
596
+ if (child.pid) writeOwnedProcessState(child.pid);
609
597
  if (!showLog && child.stderr) {
610
598
  child.stderr.on("data", (data) => {
611
599
  const lines = data.toString().split("\n").filter(Boolean);
@@ -618,7 +606,7 @@ function startServer(latestVersion) {
618
606
 
619
607
  let server = spawnServer();
620
608
 
621
- // Cleanup function - force kill server process
609
+ // Cleanup function - graceful SIGTERM wait → SIGKILL
622
610
  let isCleaningUp = false;
623
611
  function cleanup() {
624
612
  if (isCleaningUp) return;
@@ -633,12 +621,16 @@ function startServer(latestVersion) {
633
621
  killProxyByPidFile();
634
622
  // Kill cloudflared/tailscale via PID file (only this app's tunnel)
635
623
  killTunnelByPidFile();
636
- // Kill server process directly
624
+ // Graceful shutdown: SIGTERM first so server can flush DB, then SIGKILL
637
625
  if (server.pid) {
638
- process.kill(server.pid, "SIGKILL");
626
+ try { process.kill(server.pid, "SIGTERM"); } catch { }
627
+ if (!waitForExit(server.pid, 2000)) {
628
+ try { process.kill(server.pid, "SIGKILL"); } catch { }
629
+ }
630
+ // Also try to kill process group
631
+ try { process.kill(-server.pid, "SIGKILL"); } catch { }
639
632
  }
640
- // Also try to kill process group
641
- process.kill(-server.pid, "SIGKILL");
633
+ clearOwnedProcessState();
642
634
  } catch (e) { }
643
635
  }
644
636
 
@@ -798,7 +790,8 @@ function startServer(latestVersion) {
798
790
  function attachServerEvents() {
799
791
  server.on("error", (err) => {
800
792
  console.error("Failed to start server:", err.message);
801
- if (!isShuttingDown) tryRestart();
793
+ if (err?.code === "EADDRINUSE") stopForPortConflict();
794
+ else if (!isShuttingDown) tryRestart();
802
795
  else { cleanup(); process.exit(1); }
803
796
  });
804
797
 
@@ -807,25 +800,57 @@ function startServer(latestVersion) {
807
800
  process.exit(code || 0);
808
801
  return;
809
802
  }
803
+ if (isPortConflict()) {
804
+ stopForPortConflict();
805
+ return;
806
+ }
810
807
  tryRestart(code);
811
808
  });
812
809
  }
813
810
 
811
+ let mitmResetDone = false;
812
+
813
+ function isPortConflict() {
814
+ return crashLog.some((line) => /EADDRINUSE|address already in use|listen .*already in use/i.test(line));
815
+ }
816
+
817
+ function stopForPortConflict() {
818
+ if (isShuttingDown) return;
819
+ isShuttingDown = true;
820
+ console.error(`\n❌ Port ${port} is already in use. Stop the other listener or choose a different port.`);
821
+ cleanup();
822
+ process.exit(1);
823
+ }
824
+
814
825
  function tryRestart(code) {
826
+ if (isPortConflict()) {
827
+ stopForPortConflict();
828
+ return;
829
+ }
815
830
  const aliveMs = Date.now() - serverStartTime;
816
831
  // Reset counter if last run was stable
817
832
  if (aliveMs >= RESTART_RESET_MS) restartCount = 0;
818
833
 
819
834
  if (restartCount >= MAX_RESTARTS) {
820
- console.error(`\n⚠️ Server crashed ${MAX_RESTARTS} times. Disabling MIT and restarting...`);
821
- try {
822
- const dbPath = path.join(os.homedir(), process.platform === "win32" ? path.join("AppData", "Roaming", "switchboard", "db.json") : path.join(".switchboard", "db.json"));
823
- if (fs.existsSync(dbPath)) {
824
- const db = JSON.parse(fs.readFileSync(dbPath, "utf-8"));
825
- if (db.settings) db.settings.mitmEnabled = false;
826
- fs.writeFileSync(dbPath, JSON.stringify(db, null, 2));
835
+ // Already tried MITM reset and still crashing — exit non-zero
836
+ if (mitmResetDone) {
837
+ console.error(`\n❌ Server still crashing after MITM reset. Giving up.`);
838
+ console.error(` Data directory: ${getAppDataDir()}`);
839
+ if (crashLog.length) {
840
+ console.error("\n--- Server crash log ---");
841
+ crashLog.forEach(l => console.error(l));
842
+ console.error("--- End crash log ---\n");
827
843
  }
828
- } catch { /* best effort */ }
844
+ cleanup();
845
+ process.exit(1);
846
+ }
847
+ console.error(`\n⚠️ Server crashed ${MAX_RESTARTS} times. Disabling MIT and restarting...`);
848
+ if (!disableMitm()) {
849
+ console.error("❌ Could not disable MIT in the database — refusing to restart into the same crash.");
850
+ console.error(` Data directory: ${getAppDataDir()}`);
851
+ process.exit(1);
852
+ }
853
+ mitmResetDone = true;
829
854
  restartCount = 0;
830
855
  server = spawnServer();
831
856
  attachServerEvents();
@@ -3,18 +3,12 @@
3
3
  // sql.js is bundled in bin/app already; node:sqlite / bun:sqlite are built-in.
4
4
  const { execSync, spawnSync } = require("child_process");
5
5
  const fs = require("fs");
6
- const os = require("os");
7
6
  const path = require("path");
8
7
 
9
8
  const BETTER_SQLITE3_VERSION = "12.6.2";
10
9
  const SQL_JS_VERSION = "1.14.1";
11
10
 
12
- function getDataDir() {
13
- if (process.env.DATA_DIR) return process.env.DATA_DIR;
14
- return process.platform === "win32"
15
- ? path.join(process.env.APPDATA || os.homedir(), "switchboard")
16
- : path.join(os.homedir(), ".switchboard");
17
- }
11
+ const { getDataDir } = require("../src/shared/dataDir");
18
12
 
19
13
  function getRuntimeDir() {
20
14
  return path.join(getDataDir(), "runtime");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "switchboard-router",
3
- "version": "0.5.21",
3
+ "version": "0.6.1",
4
4
  "description": "Switchboard CLI — local AI routing gateway (install: npm i -g switchboard-router; run: switchboard)",
5
5
  "bin": {
6
6
  "switchboard": "./cli.js"
@@ -24,7 +24,7 @@
24
24
  "scripts": {
25
25
  "dev": "nodemon -I --watch cli.js --watch src --watch hooks --ext js,json cli.js",
26
26
  "build": "node scripts/build-cli.js",
27
- "pack:cli": "npm run build && npm pack --pack-destination ../..",
27
+ "pack:cli": "npm run build && npm pack --pack-destination ..",
28
28
  "publish:cli": "npm run build && npm publish",
29
29
  "postinstall": "node hooks/postinstall.js",
30
30
  "prepublishOnly": "npm run build"
@@ -3,7 +3,6 @@ const https = require("https");
3
3
  const crypto = require("crypto");
4
4
  const fs = require("node:fs");
5
5
  const path = require("node:path");
6
- const os = require("node:os");
7
6
  const { machineIdSync } = require("node-machine-id");
8
7
 
9
8
  // Default configuration
@@ -13,17 +12,10 @@ const DEFAULT_CONFIG = {
13
12
  protocol: "http:",
14
13
  };
15
14
 
16
- const CLI_TOKEN_HEADER = "x-9r-cli-token";
17
- const CLI_TOKEN_SALT = "9r-cli-auth";
18
- const APP_NAME = "switchboard";
15
+ const CLI_TOKEN_HEADER = "x-switchboard-cli-token";
16
+ const CLI_TOKEN_SALT = "switchboard-cli-auth";
19
17
 
20
- function getDataDir() {
21
- if (process.env.DATA_DIR) return process.env.DATA_DIR;
22
- if (process.platform === "win32") {
23
- return path.join(process.env.APPDATA || path.join(os.homedir(), "AppData", "Roaming"), APP_NAME);
24
- }
25
- return path.join(os.homedir(), `.${APP_NAME}`);
26
- }
18
+ const { getDataDir } = require("../../shared/dataDir");
27
19
 
28
20
  const MACHINE_ID_FILE = path.join(getDataDir(), "machine-id");
29
21
  const AUTH_DIR = path.join(getDataDir(), "auth");
@@ -410,14 +402,6 @@ async function updateSettings(data) {
410
402
  return makeRequest("PATCH", "/api/settings", data);
411
403
  }
412
404
 
413
- /**
414
- * Reset dashboard password to default (clears stored hash server-side)
415
- * @returns {Promise<Object>} { success }
416
- */
417
- async function resetPassword() {
418
- return makeRequest("POST", "/api/auth/reset-password");
419
- }
420
-
421
405
  // ============================================================================
422
406
  // MODELS API
423
407
  // ============================================================================
@@ -537,7 +521,6 @@ module.exports = {
537
521
  // Settings
538
522
  getSettings,
539
523
  updateSettings,
540
- resetPassword,
541
524
 
542
525
  // Tunnel
543
526
  getTunnelStatus,