zevairouter 1.0.42 → 1.0.43

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 (499) hide show
  1. package/CHANGELOG.md +12 -7
  2. package/README.md +1 -1
  3. package/cli/LICENSE +1 -1
  4. package/cli/README.md +28 -28
  5. package/cli/app/.next-cli-build/BUILD_ID +1 -1
  6. package/cli/app/.next-cli-build/app-path-routes-manifest.json +3 -3
  7. package/cli/app/.next-cli-build/build-manifest.json +2 -2
  8. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page_client-reference-manifest.js +1 -1
  9. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  10. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +3 -3
  11. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  12. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
  13. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  14. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  15. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  16. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page_client-reference-manifest.js +1 -1
  17. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  18. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  19. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  20. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  21. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  22. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  23. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  24. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  25. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  26. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  27. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  28. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  29. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
  30. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  31. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  32. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  33. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  34. package/cli/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  35. package/cli/app/.next-cli-build/server/app/_global-error.html +1 -1
  36. package/cli/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  37. package/cli/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  38. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  39. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  40. package/cli/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  41. package/cli/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  42. package/cli/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  43. package/cli/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  44. package/cli/app/.next-cli-build/server/app/_not-found.html +1 -1
  45. package/cli/app/.next-cli-build/server/app/_not-found.rsc +3 -3
  46. package/cli/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +3 -3
  47. package/cli/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  48. package/cli/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +3 -3
  49. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  50. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  51. package/cli/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  52. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +5 -5
  53. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  54. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +1 -1
  55. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +1 -1
  56. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js +1 -1
  57. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
  58. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +1 -1
  59. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +1 -1
  60. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +1 -1
  61. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
  62. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +1 -1
  63. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
  64. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
  65. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +1 -1
  66. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +1 -1
  67. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
  68. package/cli/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
  69. package/cli/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
  70. package/cli/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  71. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +2 -2
  72. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +2 -2
  73. package/cli/app/.next-cli-build/server/app/api/models/route.js +1 -1
  74. package/cli/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  75. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js +1 -1
  76. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  77. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js +1 -1
  78. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js +1 -1
  79. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js +1 -1
  80. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  81. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  82. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  83. package/cli/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  84. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  85. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  86. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  87. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  88. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
  89. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  90. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  91. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  92. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js +1 -1
  93. package/cli/app/.next-cli-build/server/app/api/version/route.js +1 -1
  94. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  95. package/cli/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  96. package/cli/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  97. package/cli/app/.next-cli-build/server/app/callback.html +1 -1
  98. package/cli/app/.next-cli-build/server/app/callback.rsc +3 -3
  99. package/cli/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +3 -3
  100. package/cli/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  101. package/cli/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +3 -3
  102. package/cli/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
  103. package/cli/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  104. package/cli/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  105. package/cli/app/.next-cli-build/server/app/dashboard/automation.html +1 -1
  106. package/cli/app/.next-cli-build/server/app/dashboard/automation.rsc +5 -5
  107. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation/__PAGE__.segment.rsc +2 -2
  108. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation.segment.rsc +1 -1
  109. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  110. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  111. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_full.segment.rsc +5 -5
  112. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_head.segment.rsc +1 -1
  113. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_index.segment.rsc +3 -3
  114. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_tree.segment.rsc +1 -1
  115. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  116. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +5 -5
  117. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  118. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  119. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  120. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  121. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +5 -5
  122. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  123. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +3 -3
  124. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
  125. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  126. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +5 -5
  127. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  128. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  129. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  130. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  131. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +5 -5
  132. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  133. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +3 -3
  134. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
  135. package/cli/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  136. package/cli/app/.next-cli-build/server/app/dashboard/combos.rsc +5 -5
  137. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  138. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  139. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  140. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  141. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +5 -5
  142. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  143. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +3 -3
  144. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
  145. package/cli/app/.next-cli-build/server/app/dashboard/context.html +1 -1
  146. package/cli/app/.next-cli-build/server/app/dashboard/context.rsc +5 -5
  147. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context/__PAGE__.segment.rsc +2 -2
  148. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context.segment.rsc +1 -1
  149. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  150. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  151. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_full.segment.rsc +5 -5
  152. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_head.segment.rsc +1 -1
  153. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_index.segment.rsc +3 -3
  154. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_tree.segment.rsc +1 -1
  155. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  156. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.rsc +5 -5
  157. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  158. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  159. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  160. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  161. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +5 -5
  162. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  163. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +3 -3
  164. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
  165. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  166. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +5 -5
  167. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  168. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  169. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  170. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  171. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  172. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +5 -5
  173. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  174. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +3 -3
  175. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +1 -1
  176. package/cli/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  177. package/cli/app/.next-cli-build/server/app/dashboard/mitm.rsc +5 -5
  178. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  179. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  180. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  181. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  182. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +5 -5
  183. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  184. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +3 -3
  185. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
  186. package/cli/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  187. package/cli/app/.next-cli-build/server/app/dashboard/profile.rsc +5 -5
  188. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  189. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  190. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  191. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  192. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +5 -5
  193. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  194. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +3 -3
  195. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
  196. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  197. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.rsc +5 -5
  198. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  199. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  200. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  201. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  202. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  203. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +5 -5
  204. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  205. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +3 -3
  206. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
  207. package/cli/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  208. package/cli/app/.next-cli-build/server/app/dashboard/providers.rsc +5 -5
  209. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  210. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  211. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  212. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  213. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +5 -5
  214. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  215. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +3 -3
  216. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
  217. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  218. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +5 -5
  219. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  220. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  221. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  222. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  223. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +5 -5
  224. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  225. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +3 -3
  226. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
  227. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
  228. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +5 -5
  229. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +2 -2
  230. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe.segment.rsc +1 -1
  231. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  232. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  233. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +5 -5
  234. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_head.segment.rsc +1 -1
  235. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_index.segment.rsc +3 -3
  236. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +1 -1
  237. package/cli/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
  238. package/cli/app/.next-cli-build/server/app/dashboard/quota.rsc +6 -6
  239. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  240. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  241. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  242. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  243. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +6 -6
  244. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  245. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +3 -3
  246. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
  247. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  248. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  249. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +3 -3
  250. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +3 -3
  251. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  252. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +3 -3
  253. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
  254. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  255. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  256. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  257. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  258. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  259. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.rsc +5 -5
  260. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +2 -2
  261. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +1 -1
  262. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  263. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  264. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +5 -5
  265. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +1 -1
  266. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +3 -3
  267. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +1 -1
  268. package/cli/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  269. package/cli/app/.next-cli-build/server/app/dashboard/translator.rsc +5 -5
  270. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  271. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  272. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  273. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  274. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +5 -5
  275. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  276. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +3 -3
  277. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
  278. package/cli/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  279. package/cli/app/.next-cli-build/server/app/dashboard/usage.rsc +5 -5
  280. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  281. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  282. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  283. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  284. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +5 -5
  285. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  286. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +3 -3
  287. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
  288. package/cli/app/.next-cli-build/server/app/dashboard.html +1 -1
  289. package/cli/app/.next-cli-build/server/app/dashboard.rsc +5 -5
  290. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  291. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  292. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  293. package/cli/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +5 -5
  294. package/cli/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  295. package/cli/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +3 -3
  296. package/cli/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +1 -1
  297. package/cli/app/.next-cli-build/server/app/index.html +1 -1
  298. package/cli/app/.next-cli-build/server/app/index.rsc +3 -3
  299. package/cli/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  300. package/cli/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +3 -3
  301. package/cli/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  302. package/cli/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +3 -3
  303. package/cli/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
  304. package/cli/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  305. package/cli/app/.next-cli-build/server/app/landing.html +1 -1
  306. package/cli/app/.next-cli-build/server/app/landing.rsc +3 -3
  307. package/cli/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +3 -3
  308. package/cli/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  309. package/cli/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +3 -3
  310. package/cli/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
  311. package/cli/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  312. package/cli/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  313. package/cli/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  314. package/cli/app/.next-cli-build/server/app/login.html +1 -1
  315. package/cli/app/.next-cli-build/server/app/login.rsc +4 -4
  316. package/cli/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +4 -4
  317. package/cli/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  318. package/cli/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +3 -3
  319. package/cli/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
  320. package/cli/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  321. package/cli/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  322. package/cli/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  323. package/cli/app/.next-cli-build/server/app-paths-manifest.json +3 -3
  324. package/cli/app/.next-cli-build/server/chunks/1939.js +1 -1
  325. package/cli/app/.next-cli-build/server/chunks/2722.js +16 -16
  326. package/cli/app/.next-cli-build/server/chunks/3104.js +1 -1
  327. package/cli/app/.next-cli-build/server/chunks/3110.js +1 -1
  328. package/cli/app/.next-cli-build/server/chunks/3159.js +1 -1
  329. package/cli/app/.next-cli-build/server/chunks/318.js +1 -1
  330. package/cli/app/.next-cli-build/server/chunks/4746.js +3 -3
  331. package/cli/app/.next-cli-build/server/chunks/5024.js +1 -1
  332. package/cli/app/.next-cli-build/server/chunks/6896.js +1 -1
  333. package/cli/app/.next-cli-build/server/chunks/7153.js +1 -1
  334. package/cli/app/.next-cli-build/server/chunks/7276.js +2 -2
  335. package/cli/app/.next-cli-build/server/chunks/8242.js +1 -1
  336. package/cli/app/.next-cli-build/server/chunks/8255.js +1 -1
  337. package/cli/app/.next-cli-build/server/chunks/891.js +1 -1
  338. package/cli/app/.next-cli-build/server/chunks/915.js +7 -7
  339. package/cli/app/.next-cli-build/server/chunks/9489.js +1 -1
  340. package/cli/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  341. package/cli/app/.next-cli-build/server/middleware.js +2 -2
  342. package/cli/app/.next-cli-build/server/pages/404.html +1 -1
  343. package/cli/app/.next-cli-build/server/pages/500.html +1 -1
  344. package/cli/app/.next-cli-build/static/chunks/{1321-89d6a896f3dae03e.js → 1321-3f408a698d9c9da9.js} +1 -1
  345. package/cli/app/.next-cli-build/static/chunks/6069-f8381e3d2db222bb.js +54 -0
  346. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/page-c8d0727b97defe81.js +1 -0
  347. package/cli/app/package.json +1 -1
  348. package/cli/app/public/i18n/literals/ar.json +4 -4
  349. package/cli/app/public/i18n/literals/bn.json +4 -4
  350. package/cli/app/public/i18n/literals/cs.json +4 -4
  351. package/cli/app/public/i18n/literals/da.json +4 -4
  352. package/cli/app/public/i18n/literals/de.json +4 -4
  353. package/cli/app/public/i18n/literals/el.json +4 -4
  354. package/cli/app/public/i18n/literals/es.json +4 -4
  355. package/cli/app/public/i18n/literals/fi.json +4 -4
  356. package/cli/app/public/i18n/literals/fr.json +4 -4
  357. package/cli/app/public/i18n/literals/he.json +4 -4
  358. package/cli/app/public/i18n/literals/hi.json +4 -4
  359. package/cli/app/public/i18n/literals/hu.json +4 -4
  360. package/cli/app/public/i18n/literals/id.json +4 -4
  361. package/cli/app/public/i18n/literals/it.json +4 -4
  362. package/cli/app/public/i18n/literals/ja.json +4 -4
  363. package/cli/app/public/i18n/literals/ko.json +4 -4
  364. package/cli/app/public/i18n/literals/nl.json +4 -4
  365. package/cli/app/public/i18n/literals/no.json +4 -4
  366. package/cli/app/public/i18n/literals/pl.json +4 -4
  367. package/cli/app/public/i18n/literals/pt-BR.json +4 -4
  368. package/cli/app/public/i18n/literals/pt-PT.json +4 -4
  369. package/cli/app/public/i18n/literals/ro.json +4 -4
  370. package/cli/app/public/i18n/literals/ru.json +4 -4
  371. package/cli/app/public/i18n/literals/sv.json +4 -4
  372. package/cli/app/public/i18n/literals/th.json +4 -4
  373. package/cli/app/public/i18n/literals/tl.json +4 -4
  374. package/cli/app/public/i18n/literals/tr.json +4 -4
  375. package/cli/app/public/i18n/literals/uk.json +4 -4
  376. package/cli/app/public/i18n/literals/ur.json +4 -4
  377. package/cli/app/public/i18n/literals/vi.json +4 -4
  378. package/cli/app/public/i18n/literals/zh-CN.json +15 -15
  379. package/cli/app/public/i18n/literals/zh-TW.json +4 -4
  380. package/cli/app/src/mitm/server.js +2 -2
  381. package/cli/cli.js +9 -9
  382. package/cli/package.json +1 -1
  383. package/cli/src/cli/api/client.js +3 -3
  384. package/cli/src/cli/menus/cliTools.js +18 -15
  385. package/cli/src/cli/menus/settings.js +1 -1
  386. package/cli/src/cli/tray/autostart.js +6 -6
  387. package/cli/src/cli/tray/tray.js +2 -2
  388. package/cli/src/cli/tray/tray.ps1 +1 -1
  389. package/open-sse/config/appConstants.js +1 -1
  390. package/open-sse/config/kiroConstants.js +5 -5
  391. package/open-sse/config/providerModels.js +1 -1
  392. package/open-sse/executors/codebuddy-cn.js +1 -1
  393. package/open-sse/executors/commandcode.js +1 -1
  394. package/open-sse/rtk/headroom.js +1 -1
  395. package/open-sse/services/antigravityObfuscation.js +1 -1
  396. package/open-sse/services/kiroModels.js +4 -4
  397. package/open-sse/services/usage.js +1 -1
  398. package/open-sse/translator/request/openai-to-kiro.js +1 -1
  399. package/open-sse/translator/response/commandcode-to-openai.js +1 -1
  400. package/open-sse/utils/sessionManager.js +2 -2
  401. package/open-sse/utils/thinkingSuffix.js +1 -1
  402. package/package.json +1 -1
  403. package/public/i18n/literals/ar.json +4 -4
  404. package/public/i18n/literals/bn.json +4 -4
  405. package/public/i18n/literals/cs.json +4 -4
  406. package/public/i18n/literals/da.json +4 -4
  407. package/public/i18n/literals/de.json +4 -4
  408. package/public/i18n/literals/el.json +4 -4
  409. package/public/i18n/literals/es.json +4 -4
  410. package/public/i18n/literals/fi.json +4 -4
  411. package/public/i18n/literals/fr.json +4 -4
  412. package/public/i18n/literals/he.json +4 -4
  413. package/public/i18n/literals/hi.json +4 -4
  414. package/public/i18n/literals/hu.json +4 -4
  415. package/public/i18n/literals/id.json +4 -4
  416. package/public/i18n/literals/it.json +4 -4
  417. package/public/i18n/literals/ja.json +4 -4
  418. package/public/i18n/literals/ko.json +4 -4
  419. package/public/i18n/literals/nl.json +4 -4
  420. package/public/i18n/literals/no.json +4 -4
  421. package/public/i18n/literals/pl.json +4 -4
  422. package/public/i18n/literals/pt-BR.json +4 -4
  423. package/public/i18n/literals/pt-PT.json +4 -4
  424. package/public/i18n/literals/ro.json +4 -4
  425. package/public/i18n/literals/ru.json +4 -4
  426. package/public/i18n/literals/sv.json +4 -4
  427. package/public/i18n/literals/th.json +4 -4
  428. package/public/i18n/literals/tl.json +4 -4
  429. package/public/i18n/literals/tr.json +4 -4
  430. package/public/i18n/literals/uk.json +4 -4
  431. package/public/i18n/literals/ur.json +4 -4
  432. package/public/i18n/literals/vi.json +4 -4
  433. package/public/i18n/literals/zh-CN.json +15 -15
  434. package/public/i18n/literals/zh-TW.json +4 -4
  435. package/src/app/(dashboard)/dashboard/cli-tools/components/AntigravityToolCard.js +2 -2
  436. package/src/app/(dashboard)/dashboard/cli-tools/components/ApiKeySelect.js +1 -1
  437. package/src/app/(dashboard)/dashboard/cli-tools/components/BaseUrlSelect.js +1 -1
  438. package/src/app/(dashboard)/dashboard/cli-tools/components/ClaudeToolCard.js +5 -5
  439. package/src/app/(dashboard)/dashboard/cli-tools/components/ClineToolCard.js +4 -4
  440. package/src/app/(dashboard)/dashboard/cli-tools/components/CodexToolCard.js +8 -8
  441. package/src/app/(dashboard)/dashboard/cli-tools/components/CopilotToolCard.js +7 -7
  442. package/src/app/(dashboard)/dashboard/cli-tools/components/CoworkToolCard.js +4 -4
  443. package/src/app/(dashboard)/dashboard/cli-tools/components/DeepSeekTuiToolCard.js +4 -4
  444. package/src/app/(dashboard)/dashboard/cli-tools/components/DefaultToolCard.js +1 -1
  445. package/src/app/(dashboard)/dashboard/cli-tools/components/DroidToolCard.js +16 -11
  446. package/src/app/(dashboard)/dashboard/cli-tools/components/EndpointPresetControl.js +1 -1
  447. package/src/app/(dashboard)/dashboard/cli-tools/components/HermesToolCard.js +3 -3
  448. package/src/app/(dashboard)/dashboard/cli-tools/components/JcodeToolCard.js +16 -16
  449. package/src/app/(dashboard)/dashboard/cli-tools/components/KiloToolCard.js +4 -4
  450. package/src/app/(dashboard)/dashboard/cli-tools/components/MitmServerCard.js +2 -2
  451. package/src/app/(dashboard)/dashboard/cli-tools/components/OpenClawToolCard.js +11 -11
  452. package/src/app/(dashboard)/dashboard/cli-tools/components/OpenCodeToolCard.js +18 -13
  453. package/src/app/(dashboard)/dashboard/cli-tools/components/ToolSummaryCard.js +1 -1
  454. package/src/app/api/cli-tools/antigravity-mitm/route.js +2 -2
  455. package/src/app/api/cli-tools/claude-settings/route.js +2 -2
  456. package/src/app/api/cli-tools/cline-settings/route.js +4 -4
  457. package/src/app/api/cli-tools/codex-settings/route.js +16 -16
  458. package/src/app/api/cli-tools/copilot-settings/route.js +19 -14
  459. package/src/app/api/cli-tools/cowork-mcp-registry/route.js +1 -1
  460. package/src/app/api/cli-tools/cowork-mcp-tools/route.js +1 -1
  461. package/src/app/api/cli-tools/cowork-settings/route.js +4 -4
  462. package/src/app/api/cli-tools/deepseek-tui-settings/route.js +7 -7
  463. package/src/app/api/cli-tools/droid-settings/route.js +12 -12
  464. package/src/app/api/cli-tools/hermes-settings/route.js +4 -4
  465. package/src/app/api/cli-tools/jcode-settings/route.js +13 -13
  466. package/src/app/api/cli-tools/kilo-settings/route.js +7 -7
  467. package/src/app/api/cli-tools/openclaw-settings/route.js +26 -26
  468. package/src/app/api/cli-tools/opencode-settings/route.js +27 -27
  469. package/src/app/api/headroom/restart/route.js +1 -1
  470. package/src/app/api/headroom/start/route.js +1 -1
  471. package/src/app/api/models/test/ping.js +2 -2
  472. package/src/app/globals.css +1 -1
  473. package/src/dashboardGuard.js +2 -2
  474. package/src/lib/appUpdater.js +4 -4
  475. package/src/lib/db/dataDirMigration.js +18 -26
  476. package/src/lib/headroom/detect.js +1 -1
  477. package/src/lib/mcp/stdioSseBridge.js +5 -5
  478. package/src/lib/network/proxyTest.js +1 -1
  479. package/src/lib/oauth/constants/xai.js +1 -1
  480. package/src/lib/oauth/services/codebuddyBulkImportManager.js +1 -1
  481. package/src/mitm/cert/install.js +11 -6
  482. package/src/mitm/cert/rootCA.js +2 -2
  483. package/src/mitm/config.js +1 -1
  484. package/src/mitm/handlers/base.js +4 -4
  485. package/src/mitm/handlers/copilot.js +2 -2
  486. package/src/mitm/handlers/kiro.js +3 -3
  487. package/src/mitm/manager.js +22 -17
  488. package/src/mitm/paths.js +1 -1
  489. package/src/mitm/server.js +1 -1
  490. package/src/shared/constants/cliTools.js +8 -8
  491. package/src/shared/constants/providers.js +2 -2
  492. package/src/shared/services/initializeApp.js +1 -1
  493. package/src/shared/utils/clineAuth.js +2 -2
  494. package/src/shared/utils/machineId.js +1 -1
  495. package/src/sse/services/codexGateway.js +4 -4
  496. package/cli/app/.next-cli-build/static/chunks/6069-3a19c2e23280b9f4.js +0 -54
  497. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/page-95c0533e8dd61515.js +0 -1
  498. /package/cli/app/.next-cli-build/static/{WPP0ARz-9ieVVo7WDF86q → fd5MEFhSt3dq0IoH1ok24}/_buildManifest.js +0 -0
  499. /package/cli/app/.next-cli-build/static/{WPP0ARz-9ieVVo7WDF86q → fd5MEFhSt3dq0IoH1ok24}/_ssgManifest.js +0 -0
@@ -11,8 +11,8 @@ import { DATA_DIR } from "@/lib/dataDir";
11
11
  import { getConsistentMachineId } from "@/shared/utils/machineId";
12
12
 
13
13
  const APP_PORT = UPDATER_CONFIG.appPort;
14
- const CLI_TOKEN_HEADER = "x-9r-cli-token";
15
- const CLI_TOKEN_SALT = "9r-cli-auth";
14
+ const CLI_TOKEN_HEADER = "x-zevai-cli-token";
15
+ const CLI_TOKEN_SALT = "zevai-cli-auth";
16
16
  const LOCAL_MCP_PREFIX = `http://localhost:${APP_PORT}/api/mcp/`;
17
17
 
18
18
  let cachedCliToken = null;
@@ -260,7 +260,7 @@ export async function GET() {
260
260
  ? config.inferenceModels.map((m) => (typeof m === "string" ? m : m?.name)).filter(Boolean)
261
261
  : [];
262
262
  const managedMcp = Array.isArray(config?.managedMcpServers) ? config.managedMcpServers : [];
263
- const has9Router = !!(config?.inferenceProvider === PROVIDER && baseUrl);
263
+ const hasZevai = !!(config?.inferenceProvider === PROVIDER && baseUrl);
264
264
 
265
265
  // Active local plugins = managedMcp entries whose URL points at our inline bridge.
266
266
  const stdioNames = new Set(LOCAL_STDIO_PLUGINS.map((p) => p.name));
@@ -276,7 +276,7 @@ export async function GET() {
276
276
  return NextResponse.json({
277
277
  installed: true,
278
278
  config,
279
- has9Router,
279
+ hasZevai,
280
280
  configPath,
281
281
  cowork: {
282
282
  appliedId,
@@ -9,7 +9,7 @@ import os from "os";
9
9
 
10
10
  const execAsync = promisify(exec);
11
11
 
12
- const PROVIDER_NAME = "9router";
12
+ const PROVIDER_NAME = "zevairouter";
13
13
 
14
14
  const getDeepSeekDir = () => path.join(os.homedir(), ".deepseek");
15
15
  const getDeepSeekConfigPath = () => path.join(getDeepSeekDir(), "config.toml");
@@ -51,8 +51,8 @@ const parseToml = (content) => {
51
51
  return result;
52
52
  };
53
53
 
54
- // Build TOML config for 9Router (openai provider mode)
55
- const build9RouterConfig = (baseUrl, apiKey, model) => {
54
+ // Build TOML config for ZevaiRouter (openai provider mode)
55
+ const buildZevaiConfig = (baseUrl, apiKey, model) => {
56
56
  const normalizedBaseUrl = baseUrl.endsWith("/v1") ? baseUrl : `${baseUrl}/v1`;
57
57
  return `provider = "openai"
58
58
 
@@ -92,8 +92,8 @@ const readConfigToml = async () => {
92
92
  }
93
93
  };
94
94
 
95
- // Detect 9Router by checking if provider is "openai" and base_url points to localhost/127.0.0.1
96
- const has9RouterConfig = (config) => {
95
+ // Detect ZevaiRouter by checking if provider is "openai" and base_url points to localhost/127.0.0.1
96
+ const hasZevaiConfig = (config) => {
97
97
  if (!config) return false;
98
98
  const provider = config.provider;
99
99
  if (provider !== "openai") return false;
@@ -113,7 +113,7 @@ export async function GET() {
113
113
  return NextResponse.json({
114
114
  installed: true,
115
115
  settings: config,
116
- has9Router: has9RouterConfig(config),
116
+ hasZevai: hasZevaiConfig(config),
117
117
  configPath: getDeepSeekConfigPath(),
118
118
  });
119
119
  } catch (error) {
@@ -132,7 +132,7 @@ export async function POST(request) {
132
132
  const dir = getDeepSeekDir();
133
133
  await fs.mkdir(dir, { recursive: true });
134
134
 
135
- const newConfig = build9RouterConfig(baseUrl, apiKey || "sk_9router", model);
135
+ const newConfig = buildZevaiConfig(baseUrl, apiKey || "sk_zevai", model);
136
136
  await fs.writeFile(getDeepSeekConfigPath(), newConfig);
137
137
 
138
138
  return NextResponse.json({
@@ -44,10 +44,10 @@ const readSettings = async () => {
44
44
  }
45
45
  };
46
46
 
47
- // Check if settings has 9Router customModels
48
- const has9RouterConfig = (settings) => {
47
+ // Check if settings has ZevaiRouter customModels
48
+ const hasZevaiConfig = (settings) => {
49
49
  if (!settings || !settings.customModels) return false;
50
- return settings.customModels.some(m => m.id?.startsWith("custom:9Router"));
50
+ return settings.customModels.some(m => m.id?.startsWith("custom:Zevai"));
51
51
  };
52
52
 
53
53
  // GET - Check droid CLI and read current settings
@@ -68,7 +68,7 @@ export async function GET() {
68
68
  return NextResponse.json({
69
69
  installed: true,
70
70
  settings,
71
- has9Router: has9RouterConfig(settings),
71
+ hasZevai: hasZevaiConfig(settings),
72
72
  settingsPath: getDroidSettingsPath(),
73
73
  });
74
74
  } catch (error) {
@@ -77,7 +77,7 @@ export async function GET() {
77
77
  }
78
78
  }
79
79
 
80
- // POST - Update 9Router customModels (merge with existing settings)
80
+ // POST - Update ZevaiRouter customModels (merge with existing settings)
81
81
  // Accepts either `model` (string, legacy single-model) or `models` (array of strings, multi-model)
82
82
  // Also accepts `activeModel` to set which model is active/primary
83
83
  export async function POST(request) {
@@ -109,8 +109,8 @@ export async function POST(request) {
109
109
  settings.customModels = [];
110
110
  }
111
111
 
112
- // Remove all existing 9Router configs
113
- settings.customModels = settings.customModels.filter(m => !m.id?.startsWith("custom:9Router"));
112
+ // Remove all existing ZevaiRouter configs
113
+ settings.customModels = settings.customModels.filter(m => !m.id?.startsWith("custom:Zevai"));
114
114
 
115
115
  // Normalize baseUrl to ensure /v1 suffix
116
116
  const normalizedBaseUrl = baseUrl.endsWith("/v1") ? baseUrl : `${baseUrl}/v1`;
@@ -135,7 +135,7 @@ export async function POST(request) {
135
135
  if (!m || typeof m !== "string") continue;
136
136
  settings.customModels.push({
137
137
  model: m,
138
- id: `custom:9Router-${i}`,
138
+ id: `custom:Zevai-${i}`,
139
139
  index: i,
140
140
  baseUrl: normalizedBaseUrl,
141
141
  apiKey: keyToUse,
@@ -169,7 +169,7 @@ export async function POST(request) {
169
169
  }
170
170
  }
171
171
 
172
- // DELETE - Remove 9Router customModels only (keep other settings)
172
+ // DELETE - Remove ZevaiRouter customModels only (keep other settings)
173
173
  export async function DELETE() {
174
174
  try {
175
175
  const settingsPath = getDroidSettingsPath();
@@ -189,9 +189,9 @@ export async function DELETE() {
189
189
  throw error;
190
190
  }
191
191
 
192
- // Remove 9Router customModels
192
+ // Remove ZevaiRouter customModels
193
193
  if (settings.customModels) {
194
- settings.customModels = settings.customModels.filter(m => !m.id?.startsWith("custom:9Router"));
194
+ settings.customModels = settings.customModels.filter(m => !m.id?.startsWith("custom:Zevai"));
195
195
 
196
196
  // Remove customModels array if empty
197
197
  if (settings.customModels.length === 0) {
@@ -204,7 +204,7 @@ export async function DELETE() {
204
204
 
205
205
  return NextResponse.json({
206
206
  success: true,
207
- message: "9Router settings removed successfully",
207
+ message: "ZevaiRouter settings removed successfully",
208
208
  });
209
209
  } catch (error) {
210
210
  console.log("Error resetting droid settings:", error);
@@ -9,7 +9,7 @@ import os from "os";
9
9
 
10
10
  const execAsync = promisify(exec);
11
11
 
12
- const PROVIDER_NAME = "9router";
12
+ const PROVIDER_NAME = "zevairouter";
13
13
  const API_KEY_ENV = "OPENAI_API_KEY";
14
14
 
15
15
  const getHermesDir = () => path.join(os.homedir(), ".hermes");
@@ -92,8 +92,8 @@ const readEnvFile = async () => {
92
92
  }
93
93
  };
94
94
 
95
- // Detect 9router by base_url containing localhost/127.0.0.1 or matching tunnel URL
96
- const has9RouterConfig = (modelCfg) => {
95
+ // Detect zevairouter by base_url containing localhost/127.0.0.1 or matching tunnel URL
96
+ const hasZevaiConfig = (modelCfg) => {
97
97
  if (!modelCfg?.base_url) return false;
98
98
  return modelCfg.provider === "custom" && /localhost|127\.0\.0\.1|0\.0\.0\.0/.test(modelCfg.base_url);
99
99
  };
@@ -109,7 +109,7 @@ export async function GET() {
109
109
  return NextResponse.json({
110
110
  installed: true,
111
111
  settings: { model },
112
- has9Router: has9RouterConfig(model),
112
+ hasZevai: hasZevaiConfig(model),
113
113
  configPath: getHermesConfigPath(),
114
114
  });
115
115
  } catch (error) {
@@ -15,7 +15,7 @@ const getConfigPath = () => path.join(getJcodeConfigDir(), "config.toml");
15
15
 
16
16
  const getProviderEnvPath = () => {
17
17
  const configDir = process.env.XDG_CONFIG_HOME || path.join(os.homedir(), ".config");
18
- return path.join(configDir, "jcode", "provider-9router.env");
18
+ return path.join(configDir, "jcode", "provider-zevairouter.env");
19
19
  };
20
20
 
21
21
  const checkJcodeInstalled = async () => {
@@ -44,12 +44,12 @@ const readConfig = async () => {
44
44
  }
45
45
  };
46
46
 
47
- const has9RouterConfig = (config) => {
47
+ const hasZevaiConfig = (config) => {
48
48
  if (!config || !config.providers) return false;
49
49
 
50
50
  const providers = config.providers;
51
51
 
52
- if (providers["9router"]) return true;
52
+ if (providers["zevai"]) return true;
53
53
 
54
54
  for (const [name, provider] of Object.entries(providers)) {
55
55
  if (provider.base_url && provider.base_url.includes("localhost:1997")) {
@@ -118,12 +118,12 @@ export async function GET() {
118
118
  }
119
119
 
120
120
  const config = await readConfig();
121
- const has9Router = has9RouterConfig(config);
121
+ const hasZevai = hasZevaiConfig(config);
122
122
 
123
123
  return NextResponse.json({
124
124
  installed: true,
125
125
  config,
126
- has9Router,
126
+ hasZevai,
127
127
  configPath: getConfigPath(),
128
128
  });
129
129
  }
@@ -149,12 +149,12 @@ export async function POST(request) {
149
149
  config.providers = {};
150
150
  }
151
151
 
152
- config.providers["9router"] = {
152
+ config.providers["zevai"] = {
153
153
  type: "openai-compatible",
154
154
  base_url: normalizedBaseUrl,
155
155
  auth: "bearer",
156
- api_key_env: "JCODE_9ROUTER_API_KEY",
157
- env_file: "provider-9router.env",
156
+ api_key_env: "JCODE_ZEVAI_API_KEY",
157
+ env_file: "provider-zevairouter.env",
158
158
  default_model: models && models.length > 0 ? models[0] : "cc/claude-opus-4-7",
159
159
  requires_api_key: true,
160
160
  };
@@ -169,12 +169,12 @@ export async function POST(request) {
169
169
  await fs.mkdir(jcodeConfigDir, { recursive: true });
170
170
 
171
171
  const env = await readProviderEnv();
172
- env.JCODE_9ROUTER_API_KEY = apiKey;
172
+ env.JCODE_ZEVAI_API_KEY = apiKey;
173
173
  await writeProviderEnv(env);
174
174
 
175
175
  return NextResponse.json({
176
176
  success: true,
177
- message: "jcode configured successfully. Use: jcode --provider-profile 9router",
177
+ message: "jcode configured successfully. Use: jcode --provider-profile zevairouter",
178
178
  configPath: getConfigPath(),
179
179
  });
180
180
  } catch (error) {
@@ -194,17 +194,17 @@ export async function DELETE() {
194
194
  return NextResponse.json({ success: true, message: "No configuration to remove" });
195
195
  }
196
196
 
197
- delete config.providers["9router"];
197
+ delete config.providers["zevai"];
198
198
 
199
199
  await writeConfig(config);
200
200
 
201
201
  const env = await readProviderEnv();
202
- delete env.JCODE_9ROUTER_API_KEY;
202
+ delete env.JCODE_ZEVAI_API_KEY;
203
203
  await writeProviderEnv(env);
204
204
 
205
205
  return NextResponse.json({
206
206
  success: true,
207
- message: "9router configuration removed from jcode",
207
+ message: "zevairouter configuration removed from jcode",
208
208
  });
209
209
  } catch (error) {
210
210
  console.error("Error removing jcode configuration:", error);
@@ -42,12 +42,12 @@ const readJson = async (filePath) => {
42
42
  }
43
43
  };
44
44
 
45
- const has9RouterConfig = (auth) => {
45
+ const hasZevaiConfig = (auth) => {
46
46
  if (!auth) return false;
47
- const entry = auth["openai-compatible"] || auth["9router"];
47
+ const entry = auth["openai-compatible"] || auth["zevai"];
48
48
  if (!entry) return false;
49
49
  const baseUrl = entry.baseUrl || entry.baseURL || "";
50
- return baseUrl.includes("localhost") || baseUrl.includes("127.0.0.1") || baseUrl.includes("9router");
50
+ return baseUrl.includes("localhost") || baseUrl.includes("127.0.0.1") || baseUrl.includes("zevairouter");
51
51
  };
52
52
 
53
53
  export async function GET() {
@@ -60,7 +60,7 @@ export async function GET() {
60
60
  return NextResponse.json({
61
61
  installed: true,
62
62
  settings: { auth: auth ? Object.keys(auth) : [] },
63
- has9Router: has9RouterConfig(auth),
63
+ hasZevai: hasZevaiConfig(auth),
64
64
  authPath: getAuthPath(),
65
65
  });
66
66
  } catch (error) {
@@ -92,7 +92,7 @@ export async function POST(request) {
92
92
  // Best-effort: update VS Code extension settings
93
93
  try {
94
94
  const vscode = (await readJson(getVscodeSettingsPath())) || {};
95
- vscode["kilocode.customProvider"] = { name: "9Router", baseURL: normalizedBaseUrl, apiKey };
95
+ vscode["kilocode.customProvider"] = { name: "ZevaiRouter", baseURL: normalizedBaseUrl, apiKey };
96
96
  vscode["kilocode.defaultModel"] = model;
97
97
  await fs.writeFile(getVscodeSettingsPath(), JSON.stringify(vscode, null, 2));
98
98
  } catch { /* VS Code settings not writable */ }
@@ -111,7 +111,7 @@ export async function DELETE() {
111
111
  return NextResponse.json({ success: true, message: "No settings file to reset" });
112
112
  }
113
113
  delete auth["openai-compatible"];
114
- delete auth["9router"];
114
+ delete auth["zevai"];
115
115
  await fs.writeFile(getAuthPath(), JSON.stringify(auth, null, 2));
116
116
 
117
117
  try {
@@ -123,7 +123,7 @@ export async function DELETE() {
123
123
  }
124
124
  } catch { /* ignore */ }
125
125
 
126
- return NextResponse.json({ success: true, message: "9Router settings removed from Kilo Code" });
126
+ return NextResponse.json({ success: true, message: "ZevaiRouter settings removed from Kilo Code" });
127
127
  } catch (error) {
128
128
  console.log("Error resetting kilo settings:", error);
129
129
  return NextResponse.json({ error: "Failed to reset kilo settings" }, { status: 500 });
@@ -54,19 +54,19 @@ const readSettings = async () => {
54
54
  }
55
55
  };
56
56
 
57
- // Check if settings has 9Router config
58
- const has9RouterConfig = (settings) => {
57
+ // Check if settings has ZevaiRouter config
58
+ const hasZevaiConfig = (settings) => {
59
59
  if (!settings || !settings.models || !settings.models.providers) return false;
60
- return !!settings.models.providers["9router"];
60
+ return !!settings.models.providers["zevai"];
61
61
  };
62
62
 
63
- // Read per-agent models.json and return current model id (without "9router/" prefix)
63
+ // Read per-agent models.json and return current model id (without "zevai/" prefix)
64
64
  const readAgentModel = async (agentDir) => {
65
65
  try {
66
66
  const modelsPath = path.join(agentDir, "models.json");
67
67
  const content = await fs.readFile(modelsPath, "utf-8");
68
68
  const data = JSON.parse(content);
69
- const models = data?.providers?.["9router"]?.models;
69
+ const models = data?.providers?.["zevai"]?.models;
70
70
  return models?.[0]?.id || null;
71
71
  } catch {
72
72
  return null;
@@ -103,7 +103,7 @@ export async function GET() {
103
103
  installed: true,
104
104
  settings,
105
105
  agents: enrichedAgents,
106
- has9Router: has9RouterConfig(settings),
106
+ hasZevai: hasZevaiConfig(settings),
107
107
  settingsPath: getOpenClawSettingsPath(),
108
108
  });
109
109
  } catch (error) {
@@ -123,7 +123,7 @@ const writeAgentModels = async (agentDir, model, baseUrl, apiKey) => {
123
123
  } catch { /* No existing */ }
124
124
 
125
125
  if (!existing.providers) existing.providers = {};
126
- existing.providers["9router"] = {
126
+ existing.providers["zevai"] = {
127
127
  baseUrl,
128
128
  apiKey: apiKey || "your_api_key",
129
129
  api: "openai-completions",
@@ -132,7 +132,7 @@ const writeAgentModels = async (agentDir, model, baseUrl, apiKey) => {
132
132
  await fs.writeFile(modelsPath, JSON.stringify(existing, null, 2));
133
133
  };
134
134
 
135
- // POST - Update 9Router settings (merge with existing settings)
135
+ // POST - Update ZevaiRouter settings (merge with existing settings)
136
136
  export async function POST(request) {
137
137
  try {
138
138
  // agentModels: { [agentId]: modelId } for per-agent override
@@ -161,11 +161,11 @@ export async function POST(request) {
161
161
  if (!settings.models.providers) settings.models.providers = {};
162
162
 
163
163
  const normalizedBaseUrl = baseUrl.endsWith("/v1") ? baseUrl : `${baseUrl}/v1`;
164
- const fullModelId = `9router/${model}`;
164
+ const fullModelId = `zevai/${model}`;
165
165
 
166
- // Remove all old 9router/* entries from agents.defaults.models
166
+ // Remove all old zevai/* entries from agents.defaults.models
167
167
  Object.keys(settings.agents.defaults.models)
168
- .filter((k) => k.startsWith("9router/"))
168
+ .filter((k) => k.startsWith("zevai/"))
169
169
  .forEach((k) => { delete settings.agents.defaults.models[k]; });
170
170
 
171
171
  // Update default model
@@ -175,16 +175,16 @@ export async function POST(request) {
175
175
  const allModelIds = new Set([model]);
176
176
  Object.values(agentModels).forEach((m) => { if (m) allModelIds.add(m); });
177
177
 
178
- // Add fresh 9router models to allowlist
178
+ // Add fresh zevairouter models to allowlist
179
179
  allModelIds.forEach((m) => {
180
- settings.agents.defaults.models[`9router/${m}`] = {};
180
+ settings.agents.defaults.models[`zevai/${m}`] = {};
181
181
  });
182
182
 
183
- // Remove old 9router model from each agent in agents.list. The
183
+ // Remove old zevairouter model from each agent in agents.list. The
184
184
  // model field may be a plain string or `{ primary, fallbacks }`.
185
185
  if (settings.agents.list) {
186
186
  settings.agents.list = settings.agents.list.map((agent) => {
187
- if (resolveAgentModel(agent.model).startsWith("9router/")) {
187
+ if (resolveAgentModel(agent.model).startsWith("zevai/")) {
188
188
  const { model: _, ...rest } = agent;
189
189
  return rest;
190
190
  }
@@ -192,8 +192,8 @@ export async function POST(request) {
192
192
  });
193
193
  }
194
194
 
195
- // Update models.providers.9router with all models
196
- settings.models.providers["9router"] = {
195
+ // Update models.providers.zevai with all models
196
+ settings.models.providers["zevai"] = {
197
197
  baseUrl: normalizedBaseUrl,
198
198
  apiKey: apiKey || "your_api_key",
199
199
  api: "openai-completions",
@@ -204,7 +204,7 @@ export async function POST(request) {
204
204
  if (settings.agents.list) {
205
205
  settings.agents.list = settings.agents.list.map((agent) => {
206
206
  const agentModel = agentModels[agent.id];
207
- if (agentModel) return { ...agent, model: `9router/${agentModel}` };
207
+ if (agentModel) return { ...agent, model: `zevai/${agentModel}` };
208
208
  return agent;
209
209
  });
210
210
 
@@ -232,7 +232,7 @@ export async function POST(request) {
232
232
  }
233
233
  }
234
234
 
235
- // DELETE - Remove 9Router settings only (keep other settings)
235
+ // DELETE - Remove ZevaiRouter settings only (keep other settings)
236
236
  export async function DELETE() {
237
237
  try {
238
238
  const settingsPath = getOpenClawSettingsPath();
@@ -252,9 +252,9 @@ export async function DELETE() {
252
252
  throw error;
253
253
  }
254
254
 
255
- // Remove 9Router from models.providers
255
+ // Remove ZevaiRouter from models.providers
256
256
  if (settings.models && settings.models.providers) {
257
- delete settings.models.providers["9router"];
257
+ delete settings.models.providers["zevai"];
258
258
 
259
259
  // Remove providers object if empty
260
260
  if (Object.keys(settings.models.providers).length === 0) {
@@ -262,9 +262,9 @@ export async function DELETE() {
262
262
  }
263
263
  }
264
264
 
265
- // Remove 9router models from agents.defaults.models allowlist
265
+ // Remove zevairouter models from agents.defaults.models allowlist
266
266
  if (settings.agents?.defaults?.models) {
267
- const keysToRemove = Object.keys(settings.agents.defaults.models).filter((k) => k.startsWith("9router/"));
267
+ const keysToRemove = Object.keys(settings.agents.defaults.models).filter((k) => k.startsWith("zevai/"));
268
268
  for (const key of keysToRemove) {
269
269
  delete settings.agents.defaults.models[key];
270
270
  }
@@ -273,8 +273,8 @@ export async function DELETE() {
273
273
  }
274
274
  }
275
275
 
276
- // Reset agents.defaults.model.primary if it uses 9router
277
- if (settings.agents?.defaults?.model?.primary?.startsWith("9router/")) {
276
+ // Reset agents.defaults.model.primary if it uses zevairouter
277
+ if (settings.agents?.defaults?.model?.primary?.startsWith("zevai/")) {
278
278
  delete settings.agents.defaults.model.primary;
279
279
  }
280
280
 
@@ -283,7 +283,7 @@ export async function DELETE() {
283
283
 
284
284
  return NextResponse.json({
285
285
  success: true,
286
- message: "9Router settings removed successfully",
286
+ message: "ZevaiRouter settings removed successfully",
287
287
  });
288
288
  } catch (error) {
289
289
  console.log("Error resetting openclaw settings:", error);
@@ -42,9 +42,9 @@ const readConfig = async () => {
42
42
  }
43
43
  };
44
44
 
45
- const has9RouterConfig = (config) => {
45
+ const hasZevaiConfig = (config) => {
46
46
  if (!config?.provider) return false;
47
- return !!config.provider["9router"];
47
+ return !!config.provider["zevai"];
48
48
  };
49
49
 
50
50
  // GET - Check opencode CLI and read current settings
@@ -61,17 +61,17 @@ export async function GET() {
61
61
  }
62
62
 
63
63
  const config = await readConfig();
64
- const providerConfig = config?.provider?.["9router"];
64
+ const providerConfig = config?.provider?.["zevai"];
65
65
  const modelMap = providerConfig?.models || {};
66
66
 
67
67
  return NextResponse.json({
68
68
  installed: true,
69
69
  config,
70
- has9Router: has9RouterConfig(config),
70
+ hasZevai: hasZevaiConfig(config),
71
71
  configPath: getConfigPath(),
72
72
  opencode: {
73
73
  models: Object.keys(modelMap),
74
- activeModel: config?.model?.startsWith("9router/") ? config.model.replace(/^9router\//, "") : null,
74
+ activeModel: config?.model?.startsWith("zevai/") ? config.model.replace(/^zevairouter\//, "") : null,
75
75
  baseURL: providerConfig?.options?.baseURL || null,
76
76
  },
77
77
  });
@@ -81,7 +81,7 @@ export async function GET() {
81
81
  }
82
82
  }
83
83
 
84
- // POST - Apply 9Router as openai-compatible provider (multi-model support)
84
+ // POST - Apply ZevaiRouter as openai-compatible provider (multi-model support)
85
85
  export async function POST(request) {
86
86
  try {
87
87
  const { baseUrl, apiKey, model, models, activeModel, subagentModel } = await request.json();
@@ -106,14 +106,14 @@ export async function POST(request) {
106
106
  } catch { /* No existing config */ }
107
107
 
108
108
  const normalizedBaseUrl = baseUrl.endsWith("/v1") ? baseUrl : `${baseUrl}/v1`;
109
- const keyToUse = apiKey || "sk_9router";
109
+ const keyToUse = apiKey || "sk_zevai";
110
110
  const effectiveSubagentModel = subagentModel || modelsArray[0];
111
111
 
112
112
  // Ensure provider object
113
113
  if (!config.provider) config.provider = {};
114
114
 
115
- // Preserve any existing 9router provider entry and its models
116
- const existingProvider = config.provider["9router"] || { npm: "@ai-sdk/openai-compatible", options: {}, models: {} };
115
+ // Preserve any existing zevairouter provider entry and its models
116
+ const existingProvider = config.provider["zevai"] || { npm: "@ai-sdk/openai-compatible", options: {}, models: {} };
117
117
 
118
118
  // Merge options (overwrite baseURL/apiKey)
119
119
  existingProvider.options = {
@@ -132,7 +132,7 @@ export async function POST(request) {
132
132
  }
133
133
 
134
134
  // Save merged provider back
135
- config.provider["9router"] = existingProvider;
135
+ config.provider["zevai"] = existingProvider;
136
136
 
137
137
  // Set the active model: prefer explicit activeModel, else first of modelsArray
138
138
  // If activeModel is explicitly empty string, clear the model
@@ -141,7 +141,7 @@ export async function POST(request) {
141
141
  } else {
142
142
  const finalActive = activeModel || modelsArray[0];
143
143
  if (finalActive) {
144
- config.model = `9router/${finalActive}`;
144
+ config.model = `zevai/${finalActive}`;
145
145
  }
146
146
  }
147
147
 
@@ -150,7 +150,7 @@ export async function POST(request) {
150
150
  config.agent.explorer = {
151
151
  description: "Fast explorer subagent for codebase exploration",
152
152
  mode: "subagent",
153
- model: `9router/${effectiveSubagentModel}`,
153
+ model: `zevai/${effectiveSubagentModel}`,
154
154
  };
155
155
 
156
156
  await fs.writeFile(configPath, JSON.stringify(config, null, 2));
@@ -185,7 +185,7 @@ export async function PATCH(request) {
185
185
 
186
186
  if (clearActiveModel === true) {
187
187
  // Clear active model but keep models in the list
188
- if (config.model?.startsWith("9router/")) {
188
+ if (config.model?.startsWith("zevai/")) {
189
189
  config.model = "";
190
190
  }
191
191
  }
@@ -202,7 +202,7 @@ export async function PATCH(request) {
202
202
  }
203
203
  }
204
204
 
205
- // DELETE - Remove 9Router provider or specific models from config
205
+ // DELETE - Remove ZevaiRouter provider or specific models from config
206
206
  export async function DELETE(request) {
207
207
  try {
208
208
  const { searchParams } = new URL(request.url);
@@ -221,26 +221,26 @@ export async function DELETE(request) {
221
221
  }
222
222
 
223
223
  // If specific model provided, remove just that model
224
- if (modelToRemove && config.provider?.["9router"]?.models) {
225
- delete config.provider["9router"].models[modelToRemove];
224
+ if (modelToRemove && config.provider?.["zevai"]?.models) {
225
+ delete config.provider["zevai"].models[modelToRemove];
226
226
 
227
227
  // If no models left, remove the provider
228
- if (Object.keys(config.provider["9router"].models).length === 0) {
229
- delete config.provider["9router"];
230
- if (config.model?.startsWith("9router/")) delete config.model;
231
- } else if (config.model === `9router/${modelToRemove}`) {
228
+ if (Object.keys(config.provider["zevai"].models).length === 0) {
229
+ delete config.provider["zevai"];
230
+ if (config.model?.startsWith("zevai/")) delete config.model;
231
+ } else if (config.model === `zevai/${modelToRemove}`) {
232
232
  // If removed model was active, switch to first remaining model
233
- const remainingModels = Object.keys(config.provider["9router"].models);
234
- config.model = `9router/${remainingModels[0]}`;
233
+ const remainingModels = Object.keys(config.provider["zevai"].models);
234
+ config.model = `zevai/${remainingModels[0]}`;
235
235
  }
236
236
  } else {
237
- // No specific model - remove entire 9router provider
238
- if (config.provider) delete config.provider["9router"];
239
- if (config.model?.startsWith("9router/")) delete config.model;
237
+ // No specific model - remove entire zevairouter provider
238
+ if (config.provider) delete config.provider["zevai"];
239
+ if (config.model?.startsWith("zevai/")) delete config.model;
240
240
  }
241
241
 
242
242
  // Remove subagent configuration
243
- if (config.agent?.explorer?.model?.startsWith("9router/")) {
243
+ if (config.agent?.explorer?.model?.startsWith("zevai/")) {
244
244
  delete config.agent.explorer;
245
245
  // Clean up empty agent object
246
246
  if (Object.keys(config.agent).length === 0) delete config.agent;
@@ -250,7 +250,7 @@ export async function DELETE(request) {
250
250
 
251
251
  return NextResponse.json({
252
252
  success: true,
253
- message: modelToRemove ? `Model "${modelToRemove}" removed` : "9Router settings removed from OpenCode",
253
+ message: modelToRemove ? `Model "${modelToRemove}" removed` : "ZevaiRouter settings removed from OpenCode",
254
254
  });
255
255
  } catch (error) {
256
256
  console.log("Error resetting opencode settings:", error);
@@ -19,7 +19,7 @@ export async function POST() {
19
19
  const settings = await getSettings();
20
20
  const url = settings.headroomUrl || DEFAULT_HEADROOM_URL;
21
21
  if (!isLoopbackHeadroomUrl(url)) {
22
- return NextResponse.json({ error: "External Headroom proxies must be started outside 9Router", code: "EXTERNAL_PROXY" }, { status: 400 });
22
+ return NextResponse.json({ error: "External Headroom proxies must be started outside ZevaiRouter", code: "EXTERNAL_PROXY" }, { status: 400 });
23
23
  }
24
24
  const port = parsePortFromUrl(url) || 8787;
25
25
  const result = await restartHeadroomProxy({
@@ -19,7 +19,7 @@ export async function POST() {
19
19
  const settings = await getSettings();
20
20
  const url = settings.headroomUrl || DEFAULT_HEADROOM_URL;
21
21
  if (!isLoopbackHeadroomUrl(url)) {
22
- return NextResponse.json({ error: "External Headroom proxies must be started outside 9Router", code: "EXTERNAL_PROXY" }, { status: 400 });
22
+ return NextResponse.json({ error: "External Headroom proxies must be started outside ZevaiRouter", code: "EXTERNAL_PROXY" }, { status: 400 });
23
23
  }
24
24
  const port = parsePortFromUrl(url) || 8787;
25
25
  const result = await startHeadroomProxy({