omniroute 1.4.10 → 1.5.0

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 (374) hide show
  1. package/README.ar.md +1153 -0
  2. package/README.bg.md +1238 -0
  3. package/README.da.md +1238 -0
  4. package/README.de.md +1 -1
  5. package/README.es.md +1 -1
  6. package/README.fi.md +1238 -0
  7. package/README.fr.md +1 -1
  8. package/README.he.md +1238 -0
  9. package/README.hu.md +1238 -0
  10. package/README.id.md +1238 -0
  11. package/README.in.md +952 -0
  12. package/README.it.md +1 -1
  13. package/README.ja.md +1152 -0
  14. package/README.ko.md +1238 -0
  15. package/README.md +25 -20
  16. package/README.ms.md +1238 -0
  17. package/README.nl.md +1238 -0
  18. package/README.no.md +1238 -0
  19. package/README.phi.md +1238 -0
  20. package/README.pl.md +1238 -0
  21. package/README.pt-BR.md +16 -12
  22. package/README.pt.md +1238 -0
  23. package/README.ro.md +1238 -0
  24. package/README.ru.md +1 -1
  25. package/README.sk.md +1239 -0
  26. package/README.sv.md +1238 -0
  27. package/README.th.md +1229 -0
  28. package/README.uk-UA.md +1240 -0
  29. package/README.vi.md +1238 -0
  30. package/README.zh-CN.md +1 -1
  31. package/app/.next/BUILD_ID +1 -1
  32. package/app/.next/app-path-routes-manifest.json +39 -39
  33. package/app/.next/build-manifest.json +2 -2
  34. package/app/.next/prerender-manifest.json +3 -3
  35. package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js +2 -2
  36. package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js.nft.json +1 -1
  37. package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
  38. package/app/.next/server/app/(dashboard)/dashboard/api-manager/page.js +1 -1
  39. package/app/.next/server/app/(dashboard)/dashboard/api-manager/page.js.nft.json +1 -1
  40. package/app/.next/server/app/(dashboard)/dashboard/api-manager/page_client-reference-manifest.js +1 -1
  41. package/app/.next/server/app/(dashboard)/dashboard/audit-log/page.js +2 -2
  42. package/app/.next/server/app/(dashboard)/dashboard/audit-log/page.js.nft.json +1 -1
  43. package/app/.next/server/app/(dashboard)/dashboard/audit-log/page_client-reference-manifest.js +1 -1
  44. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js +6 -6
  45. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  46. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  47. package/app/.next/server/app/(dashboard)/dashboard/combos/page.js +1 -1
  48. package/app/.next/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  49. package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  50. package/app/.next/server/app/(dashboard)/dashboard/costs/page.js +2 -2
  51. package/app/.next/server/app/(dashboard)/dashboard/costs/page.js.nft.json +1 -1
  52. package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
  53. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  54. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  55. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  56. package/app/.next/server/app/(dashboard)/dashboard/health/page.js +2 -2
  57. package/app/.next/server/app/(dashboard)/dashboard/health/page.js.nft.json +1 -1
  58. package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
  59. package/app/.next/server/app/(dashboard)/dashboard/limits/page.js +2 -2
  60. package/app/.next/server/app/(dashboard)/dashboard/limits/page.js.nft.json +1 -1
  61. package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
  62. package/app/.next/server/app/(dashboard)/dashboard/logs/page.js +1 -1
  63. package/app/.next/server/app/(dashboard)/dashboard/logs/page.js.nft.json +1 -1
  64. package/app/.next/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +1 -1
  65. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js +2 -2
  66. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js.nft.json +1 -1
  67. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
  68. package/app/.next/server/app/(dashboard)/dashboard/page.js +2 -2
  69. package/app/.next/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  70. package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  71. package/app/.next/server/app/(dashboard)/dashboard/profile/page.js +1 -1
  72. package/app/.next/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  73. package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  74. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js +1 -1
  75. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  76. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  77. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js +1 -1
  78. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  79. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  80. package/app/.next/server/app/(dashboard)/dashboard/providers/page.js +1 -1
  81. package/app/.next/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  82. package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  83. package/app/.next/server/app/(dashboard)/dashboard/settings/page.js +2 -2
  84. package/app/.next/server/app/(dashboard)/dashboard/settings/page.js.nft.json +1 -1
  85. package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
  86. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page.js +2 -2
  87. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page.js.nft.json +1 -1
  88. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  89. package/app/.next/server/app/(dashboard)/dashboard/translator/page.js +4 -4
  90. package/app/.next/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  91. package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  92. package/app/.next/server/app/(dashboard)/dashboard/usage/page.js +1 -1
  93. package/app/.next/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  94. package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  95. package/app/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  96. package/app/.next/server/app/_global-error.html +2 -2
  97. package/app/.next/server/app/_global-error.rsc +1 -1
  98. package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  99. package/app/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  100. package/app/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  101. package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  102. package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  103. package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  104. package/app/.next/server/app/_not-found/page.js +1 -1
  105. package/app/.next/server/app/_not-found/page.js.nft.json +1 -1
  106. package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  107. package/app/.next/server/app/api/auth/login/route.js +1 -1
  108. package/app/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  109. package/app/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  110. package/app/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  111. package/app/.next/server/app/api/cache/route_client-reference-manifest.js +1 -1
  112. package/app/.next/server/app/api/cache/stats/route_client-reference-manifest.js +1 -1
  113. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  114. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +1 -1
  115. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js +2 -2
  116. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route_client-reference-manifest.js +1 -1
  117. package/app/.next/server/app/api/cli-tools/backups/route.js +1 -1
  118. package/app/.next/server/app/api/cli-tools/backups/route_client-reference-manifest.js +1 -1
  119. package/app/.next/server/app/api/cli-tools/claude-settings/route.js +1 -1
  120. package/app/.next/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
  121. package/app/.next/server/app/api/cli-tools/cline-settings/route.js +1 -1
  122. package/app/.next/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.js +1 -1
  123. package/app/.next/server/app/api/cli-tools/codex-profiles/route.js +2 -2
  124. package/app/.next/server/app/api/cli-tools/codex-profiles/route_client-reference-manifest.js +1 -1
  125. package/app/.next/server/app/api/cli-tools/codex-settings/route.js +2 -2
  126. package/app/.next/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
  127. package/app/.next/server/app/api/cli-tools/droid-settings/route.js +1 -1
  128. package/app/.next/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
  129. package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route_client-reference-manifest.js +1 -1
  130. package/app/.next/server/app/api/cli-tools/kilo-settings/route.js +1 -1
  131. package/app/.next/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -1
  132. package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  133. package/app/.next/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
  134. package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route.js +2 -2
  135. package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route_client-reference-manifest.js +1 -1
  136. package/app/.next/server/app/api/cli-tools/status/route.js +1 -1
  137. package/app/.next/server/app/api/cli-tools/status/route_client-reference-manifest.js +1 -1
  138. package/app/.next/server/app/api/cloud/auth/route_client-reference-manifest.js +1 -1
  139. package/app/.next/server/app/api/cloud/credentials/update/route_client-reference-manifest.js +1 -1
  140. package/app/.next/server/app/api/cloud/model/resolve/route_client-reference-manifest.js +1 -1
  141. package/app/.next/server/app/api/cloud/models/alias/route_client-reference-manifest.js +1 -1
  142. package/app/.next/server/app/api/combos/[id]/route_client-reference-manifest.js +1 -1
  143. package/app/.next/server/app/api/combos/metrics/route_client-reference-manifest.js +1 -1
  144. package/app/.next/server/app/api/combos/route.js +1 -1
  145. package/app/.next/server/app/api/combos/route_client-reference-manifest.js +1 -1
  146. package/app/.next/server/app/api/combos/test/route_client-reference-manifest.js +1 -1
  147. package/app/.next/server/app/api/compliance/audit-log/route_client-reference-manifest.js +1 -1
  148. package/app/.next/server/app/api/db-backups/export/route_client-reference-manifest.js +1 -1
  149. package/app/.next/server/app/api/db-backups/exportAll/route_client-reference-manifest.js +1 -1
  150. package/app/.next/server/app/api/db-backups/import/route_client-reference-manifest.js +1 -1
  151. package/app/.next/server/app/api/db-backups/route_client-reference-manifest.js +1 -1
  152. package/app/.next/server/app/api/evals/[suiteId]/route_client-reference-manifest.js +1 -1
  153. package/app/.next/server/app/api/evals/route_client-reference-manifest.js +1 -1
  154. package/app/.next/server/app/api/fallback/chains/route_client-reference-manifest.js +1 -1
  155. package/app/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
  156. package/app/.next/server/app/api/keys/[id]/route_client-reference-manifest.js +1 -1
  157. package/app/.next/server/app/api/keys/route.js +1 -1
  158. package/app/.next/server/app/api/keys/route_client-reference-manifest.js +1 -1
  159. package/app/.next/server/app/api/logs/console/route_client-reference-manifest.js +1 -1
  160. package/app/.next/server/app/api/models/alias/route_client-reference-manifest.js +1 -1
  161. package/app/.next/server/app/api/models/availability/route_client-reference-manifest.js +1 -1
  162. package/app/.next/server/app/api/models/catalog/route_client-reference-manifest.js +1 -1
  163. package/app/.next/server/app/api/models/route.js +1 -1
  164. package/app/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
  165. package/app/.next/server/app/api/monitoring/health/route.js +1 -1
  166. package/app/.next/server/app/api/monitoring/health/route_client-reference-manifest.js +1 -1
  167. package/app/.next/server/app/api/oauth/[provider]/[action]/route_client-reference-manifest.js +1 -1
  168. package/app/.next/server/app/api/oauth/cursor/auto-import/route_client-reference-manifest.js +1 -1
  169. package/app/.next/server/app/api/oauth/cursor/import/route_client-reference-manifest.js +1 -1
  170. package/app/.next/server/app/api/oauth/kiro/auto-import/route_client-reference-manifest.js +1 -1
  171. package/app/.next/server/app/api/oauth/kiro/import/route_client-reference-manifest.js +1 -1
  172. package/app/.next/server/app/api/oauth/kiro/social-authorize/route_client-reference-manifest.js +1 -1
  173. package/app/.next/server/app/api/oauth/kiro/social-exchange/route_client-reference-manifest.js +1 -1
  174. package/app/.next/server/app/api/policies/route_client-reference-manifest.js +1 -1
  175. package/app/.next/server/app/api/pricing/defaults/route_client-reference-manifest.js +1 -1
  176. package/app/.next/server/app/api/pricing/models/route_client-reference-manifest.js +1 -1
  177. package/app/.next/server/app/api/pricing/route_client-reference-manifest.js +1 -1
  178. package/app/.next/server/app/api/provider-metrics/route_client-reference-manifest.js +1 -1
  179. package/app/.next/server/app/api/provider-models/route_client-reference-manifest.js +1 -1
  180. package/app/.next/server/app/api/provider-nodes/[id]/route_client-reference-manifest.js +1 -1
  181. package/app/.next/server/app/api/provider-nodes/route_client-reference-manifest.js +1 -1
  182. package/app/.next/server/app/api/provider-nodes/validate/route_client-reference-manifest.js +1 -1
  183. package/app/.next/server/app/api/providers/[id]/models/route_client-reference-manifest.js +1 -1
  184. package/app/.next/server/app/api/providers/[id]/route_client-reference-manifest.js +1 -1
  185. package/app/.next/server/app/api/providers/[id]/test/route_client-reference-manifest.js +1 -1
  186. package/app/.next/server/app/api/providers/client/route_client-reference-manifest.js +1 -1
  187. package/app/.next/server/app/api/providers/route.js +1 -1
  188. package/app/.next/server/app/api/providers/route_client-reference-manifest.js +1 -1
  189. package/app/.next/server/app/api/providers/test-batch/route_client-reference-manifest.js +1 -1
  190. package/app/.next/server/app/api/providers/validate/route_client-reference-manifest.js +1 -1
  191. package/app/.next/server/app/api/rate-limit/route_client-reference-manifest.js +1 -1
  192. package/app/.next/server/app/api/rate-limits/route_client-reference-manifest.js +1 -1
  193. package/app/.next/server/app/api/resilience/reset/route_client-reference-manifest.js +1 -1
  194. package/app/.next/server/app/api/resilience/route_client-reference-manifest.js +1 -1
  195. package/app/.next/server/app/api/restart/route_client-reference-manifest.js +1 -1
  196. package/app/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
  197. package/app/.next/server/app/api/settings/combo-defaults/route_client-reference-manifest.js +1 -1
  198. package/app/.next/server/app/api/settings/ip-filter/route_client-reference-manifest.js +1 -1
  199. package/app/.next/server/app/api/settings/proxy/route_client-reference-manifest.js +1 -1
  200. package/app/.next/server/app/api/settings/proxy/test/route_client-reference-manifest.js +1 -1
  201. package/app/.next/server/app/api/settings/require-login/route_client-reference-manifest.js +1 -1
  202. package/app/.next/server/app/api/settings/route.js +1 -1
  203. package/app/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
  204. package/app/.next/server/app/api/settings/system-prompt/route_client-reference-manifest.js +1 -1
  205. package/app/.next/server/app/api/settings/thinking-budget/route_client-reference-manifest.js +1 -1
  206. package/app/.next/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
  207. package/app/.next/server/app/api/storage/health/route_client-reference-manifest.js +1 -1
  208. package/app/.next/server/app/api/sync/cloud/route_client-reference-manifest.js +1 -1
  209. package/app/.next/server/app/api/sync/initialize/route_client-reference-manifest.js +1 -1
  210. package/app/.next/server/app/api/tags/route_client-reference-manifest.js +1 -1
  211. package/app/.next/server/app/api/telemetry/summary/route_client-reference-manifest.js +1 -1
  212. package/app/.next/server/app/api/token-health/route_client-reference-manifest.js +1 -1
  213. package/app/.next/server/app/api/translator/detect/route_client-reference-manifest.js +1 -1
  214. package/app/.next/server/app/api/translator/history/route_client-reference-manifest.js +1 -1
  215. package/app/.next/server/app/api/translator/load/route_client-reference-manifest.js +1 -1
  216. package/app/.next/server/app/api/translator/save/route_client-reference-manifest.js +1 -1
  217. package/app/.next/server/app/api/translator/send/route_client-reference-manifest.js +1 -1
  218. package/app/.next/server/app/api/translator/translate/route_client-reference-manifest.js +1 -1
  219. package/app/.next/server/app/api/usage/[connectionId]/route_client-reference-manifest.js +1 -1
  220. package/app/.next/server/app/api/usage/analytics/route_client-reference-manifest.js +1 -1
  221. package/app/.next/server/app/api/usage/budget/route_client-reference-manifest.js +1 -1
  222. package/app/.next/server/app/api/usage/call-logs/[id]/route_client-reference-manifest.js +1 -1
  223. package/app/.next/server/app/api/usage/call-logs/route_client-reference-manifest.js +1 -1
  224. package/app/.next/server/app/api/usage/history/route_client-reference-manifest.js +1 -1
  225. package/app/.next/server/app/api/usage/logs/route_client-reference-manifest.js +1 -1
  226. package/app/.next/server/app/api/usage/proxy-logs/route_client-reference-manifest.js +1 -1
  227. package/app/.next/server/app/api/usage/request-logs/route_client-reference-manifest.js +1 -1
  228. package/app/.next/server/app/api/v1/api/chat/route_client-reference-manifest.js +1 -1
  229. package/app/.next/server/app/api/v1/audio/speech/route_client-reference-manifest.js +1 -1
  230. package/app/.next/server/app/api/v1/audio/transcriptions/route_client-reference-manifest.js +1 -1
  231. package/app/.next/server/app/api/v1/chat/completions/route_client-reference-manifest.js +1 -1
  232. package/app/.next/server/app/api/v1/embeddings/route_client-reference-manifest.js +1 -1
  233. package/app/.next/server/app/api/v1/images/generations/route_client-reference-manifest.js +1 -1
  234. package/app/.next/server/app/api/v1/messages/count_tokens/route_client-reference-manifest.js +1 -1
  235. package/app/.next/server/app/api/v1/messages/route_client-reference-manifest.js +1 -1
  236. package/app/.next/server/app/api/v1/models/route_client-reference-manifest.js +1 -1
  237. package/app/.next/server/app/api/v1/moderations/route_client-reference-manifest.js +1 -1
  238. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route_client-reference-manifest.js +1 -1
  239. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route_client-reference-manifest.js +1 -1
  240. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route_client-reference-manifest.js +1 -1
  241. package/app/.next/server/app/api/v1/rerank/route_client-reference-manifest.js +1 -1
  242. package/app/.next/server/app/api/v1/responses/route_client-reference-manifest.js +1 -1
  243. package/app/.next/server/app/api/v1/route_client-reference-manifest.js +1 -1
  244. package/app/.next/server/app/api/v1beta/models/[...path]/route_client-reference-manifest.js +1 -1
  245. package/app/.next/server/app/api/v1beta/models/route_client-reference-manifest.js +1 -1
  246. package/app/.next/server/app/callback/page.js +2 -2
  247. package/app/.next/server/app/callback/page.js.nft.json +1 -1
  248. package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
  249. package/app/.next/server/app/docs/page.js +2 -2
  250. package/app/.next/server/app/docs/page.js.nft.json +1 -1
  251. package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  252. package/app/.next/server/app/forbidden/page.js +2 -2
  253. package/app/.next/server/app/forbidden/page.js.nft.json +1 -1
  254. package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
  255. package/app/.next/server/app/forgot-password/page.js +2 -2
  256. package/app/.next/server/app/forgot-password/page.js.nft.json +1 -1
  257. package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
  258. package/app/.next/server/app/landing/page.js +2 -2
  259. package/app/.next/server/app/landing/page.js.nft.json +1 -1
  260. package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
  261. package/app/.next/server/app/login/page.js +2 -2
  262. package/app/.next/server/app/login/page.js.nft.json +1 -1
  263. package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
  264. package/app/.next/server/app/page.js +1 -1
  265. package/app/.next/server/app/page.js.nft.json +1 -1
  266. package/app/.next/server/app/page_client-reference-manifest.js +1 -1
  267. package/app/.next/server/app/privacy/page.js +2 -2
  268. package/app/.next/server/app/privacy/page.js.nft.json +1 -1
  269. package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
  270. package/app/.next/server/app/terms/page.js +2 -2
  271. package/app/.next/server/app/terms/page.js.nft.json +1 -1
  272. package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
  273. package/app/.next/server/app-paths-manifest.json +39 -39
  274. package/app/.next/server/chunks/1248.js +1 -0
  275. package/app/.next/server/chunks/{3994.js → 1465.js} +2 -2
  276. package/app/.next/server/chunks/1526.js +1 -0
  277. package/app/.next/server/chunks/1584.js +1 -0
  278. package/app/.next/server/chunks/1623.js +1 -0
  279. package/app/.next/server/chunks/1880.js +1 -0
  280. package/app/.next/server/chunks/1960.js +1 -1
  281. package/app/.next/server/chunks/1990.js +1 -1
  282. package/app/.next/server/chunks/2214.js +1 -0
  283. package/app/.next/server/chunks/2372.js +1 -0
  284. package/app/.next/server/chunks/2594.js +1 -0
  285. package/app/.next/server/chunks/3371.js +1 -0
  286. package/app/.next/server/chunks/3498.js +5 -3
  287. package/app/.next/server/chunks/3911.js +1 -0
  288. package/app/.next/server/chunks/438.js +1 -0
  289. package/app/.next/server/chunks/496.js +1 -0
  290. package/app/.next/server/chunks/5047.js +1 -0
  291. package/app/.next/server/chunks/5094.js +1 -0
  292. package/app/.next/server/chunks/5097.js +1 -0
  293. package/app/.next/server/chunks/5393.js +2 -0
  294. package/app/.next/server/chunks/5521.js +1 -0
  295. package/app/.next/server/chunks/5945.js +1 -0
  296. package/app/.next/server/chunks/6118.js +1 -0
  297. package/app/.next/server/chunks/6930.js +1 -0
  298. package/app/.next/server/chunks/7011.js +1 -0
  299. package/app/.next/server/chunks/708.js +1 -0
  300. package/app/.next/server/chunks/7650.js +1 -0
  301. package/app/.next/server/chunks/8220.js +1 -0
  302. package/app/.next/server/chunks/8464.js +1 -0
  303. package/app/.next/server/chunks/8706.js +1 -0
  304. package/app/.next/server/chunks/8976.js +1 -0
  305. package/app/.next/server/chunks/9119.js +1 -0
  306. package/app/.next/server/chunks/944.js +1 -0
  307. package/app/.next/server/chunks/9824.js +2 -2
  308. package/app/.next/server/chunks/9837.js +1 -0
  309. package/app/.next/server/pages/500.html +2 -2
  310. package/app/.next/server/server-reference-manifest.js +1 -1
  311. package/app/.next/server/server-reference-manifest.json +1 -1
  312. package/app/.next/static/chunks/{6458-085536744d592424.js → 1149-fefe7f95f0e9842f.js} +1 -1
  313. package/app/.next/static/chunks/{5846-bac355f56b136439.js → 5846-c6bffec2bf9757fa.js} +1 -1
  314. package/app/.next/static/chunks/{782-5e138760b7f7bf48.js → 8055-5844ff783b2e8a99.js} +3 -3
  315. package/app/.next/static/chunks/{993-961f6e199b93539a.js → 993-cf9fe6c017bc7e67.js} +3 -3
  316. package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/page-52f76c7c91444ec2.js +1 -0
  317. package/app/.next/static/chunks/app/(dashboard)/dashboard/api-manager/page-1dd4d0c348a7b0a6.js +1 -0
  318. package/app/.next/static/chunks/app/(dashboard)/dashboard/audit-log/page-e5bf8955e7b9a4f5.js +1 -0
  319. package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-ce332ffdb491a4d8.js +15 -0
  320. package/app/.next/static/chunks/app/(dashboard)/dashboard/combos/{page-ede2315b6918315e.js → page-6abed29d64c46388.js} +1 -1
  321. package/app/.next/static/chunks/app/(dashboard)/dashboard/costs/page-3ed2a7685adf9b91.js +1 -0
  322. package/app/.next/static/chunks/app/(dashboard)/dashboard/endpoint/page-1420c3ca376f1585.js +1 -0
  323. package/app/.next/static/chunks/app/(dashboard)/dashboard/health/page-9a6519bf1468f16e.js +1 -0
  324. package/app/.next/static/chunks/app/(dashboard)/dashboard/limits/page-f4a2d6d07df5ddc4.js +1 -0
  325. package/app/.next/static/chunks/app/(dashboard)/dashboard/logs/{page-6ee69634597daee0.js → page-833d24f322a20f5a.js} +1 -1
  326. package/app/.next/static/chunks/app/(dashboard)/dashboard/onboarding/page-ec914ae79f085e6f.js +1 -0
  327. package/app/.next/static/chunks/app/(dashboard)/dashboard/page-388840686801f3f5.js +1 -0
  328. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-9c8ffb212f855704.js +1 -0
  329. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/new/page-31cdb6e15134d8c2.js +1 -0
  330. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/page-1f022385b812b987.js +1 -0
  331. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-1393d4935fc087cf.js +1 -0
  332. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/pricing/{page-77158451270c1852.js → page-f10a8d4bb8236913.js} +1 -1
  333. package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/page-83b07523f81d6282.js +4 -0
  334. package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/page-9cc99ab874fc36e7.js +1 -0
  335. package/app/.next/static/chunks/app/(dashboard)/{layout-b23c2c5427e04dcf.js → layout-00d5d56af65098a9.js} +1 -1
  336. package/app/.next/static/chunks/app/callback/page-585a53f7dc6a30f1.js +1 -0
  337. package/app/.next/static/chunks/app/docs/page-2fe9dcbeb3f738c0.js +1 -0
  338. package/app/.next/static/chunks/app/forbidden/{page-4a39fedc08aaaf55.js → page-df886dfa2d5bd9fa.js} +1 -1
  339. package/app/.next/static/chunks/app/forgot-password/page-2a495f0b0c653ab4.js +1 -0
  340. package/app/.next/static/chunks/app/landing/page-9d540ab1716f8e3e.js +1 -0
  341. package/app/.next/static/chunks/app/login/page-121c612ee459e7c2.js +1 -0
  342. package/app/.next/static/chunks/app/privacy/page-2fe9dcbeb3f738c0.js +1 -0
  343. package/app/.next/static/chunks/app/terms/page-2fe9dcbeb3f738c0.js +1 -0
  344. package/app/.next/static/css/6f101b114a4a7286.css +1 -0
  345. package/app/package.json +1 -1
  346. package/package.json +1 -1
  347. package/app/.next/server/chunks/1259.js +0 -2
  348. package/app/.next/server/chunks/4509.js +0 -1
  349. package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/page-3fcbbdb2221f0b0c.js +0 -1
  350. package/app/.next/static/chunks/app/(dashboard)/dashboard/api-manager/page-d806e4f28c15636a.js +0 -1
  351. package/app/.next/static/chunks/app/(dashboard)/dashboard/audit-log/page-27bc511cf3930e1e.js +0 -1
  352. package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-ad885fdf9806e9a6.js +0 -15
  353. package/app/.next/static/chunks/app/(dashboard)/dashboard/costs/page-f256689b8410bd74.js +0 -1
  354. package/app/.next/static/chunks/app/(dashboard)/dashboard/endpoint/page-6e4f3ca7ac9778be.js +0 -1
  355. package/app/.next/static/chunks/app/(dashboard)/dashboard/health/page-8725f1a181e558a3.js +0 -1
  356. package/app/.next/static/chunks/app/(dashboard)/dashboard/limits/page-a5a48afa8c125ada.js +0 -1
  357. package/app/.next/static/chunks/app/(dashboard)/dashboard/onboarding/page-931fa0c45dca76c9.js +0 -1
  358. package/app/.next/static/chunks/app/(dashboard)/dashboard/page-04bc41f9e9de17ef.js +0 -1
  359. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-6b6d62c5872aee46.js +0 -1
  360. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/new/page-2dc2a865e90681dd.js +0 -1
  361. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/page-ac85ce5066cd9044.js +0 -1
  362. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-88cac9e6f2fbe335.js +0 -1
  363. package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/page-75c8b38a55e13042.js +0 -4
  364. package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/page-f0809c7842e4f5b4.js +0 -1
  365. package/app/.next/static/chunks/app/callback/page-e439cd5a287000d8.js +0 -1
  366. package/app/.next/static/chunks/app/docs/page-8f74097544a61b9d.js +0 -1
  367. package/app/.next/static/chunks/app/forgot-password/page-057ea91c6f140e0b.js +0 -1
  368. package/app/.next/static/chunks/app/landing/page-09741814aaca7548.js +0 -1
  369. package/app/.next/static/chunks/app/login/page-c1d7bfab91a7877c.js +0 -1
  370. package/app/.next/static/chunks/app/privacy/page-8f74097544a61b9d.js +0 -1
  371. package/app/.next/static/chunks/app/terms/page-8f74097544a61b9d.js +0 -1
  372. package/app/.next/static/css/e90887a86e63903f.css +0 -1
  373. /package/app/.next/static/{8UAle4UTGR7gIVofXmh_1 → XOdkUGO-Pm15MwsN4s6B3}/_buildManifest.js +0 -0
  374. /package/app/.next/static/{8UAle4UTGR7gIVofXmh_1 → XOdkUGO-Pm15MwsN4s6B3}/_ssgManifest.js +0 -0
package/README.bg.md ADDED
@@ -0,0 +1,1238 @@
1
+ <div align="center">
2
+ <img src="./docs/screenshots/MainOmniRoute.png" alt="OmniRoute Dashboard" width="800"/>
3
+
4
+ # 🚀 OmniRoute — Безплатният AI Gateway
5
+
6
+ 🌐 **[English](#-omniroute--the-free-ai-gateway)** | **[Português (BR)](#-omniroute--gateway-de-ia-gratuito)**
7
+
8
+ ### Никога не спирайте да кодирате. Интелигентно маршрутизиране към **БЕЗПЛАТНИ и евтини AI модели** с автоматичен резервен вариант.
9
+
10
+ _Вашият универсален API прокси — една крайна точка, 36+ доставчици, нулев престой._
11
+
12
+ **Завършвания на чат • Вграждания • Генериране на изображения • Аудио • Прекласиране • 100% TypeScript**
13
+
14
+ ---
15
+
16
+ ### 🤖 Безплатен доставчик на AI за вашите любими кодиращи агенти
17
+
18
+ _Свържете всеки базиран на AI IDE или CLI инструмент чрез OmniRoute — безплатен API шлюз за неограничено кодиране._
19
+
20
+ <table>
21
+ <tr>
22
+ <td align="center" width="110">
23
+ <a href="https://github.com/cline/cline">
24
+ <img src="./public/providers/openclaw.png" alt="OpenClaw" width="48"/><br/>
25
+ <b>OpenClaw</b>
26
+ </a><br/>
27
+ <sub>⭐ 205K</sub>
28
+ </td>
29
+ <td align="center" width="110">
30
+ <a href="https://github.com/HKUDS/nanobot">
31
+ <img src="./public/providers/nanobot.png" alt="NanoBot" width="48"/><br/>
32
+ <b>NanoBot</b>
33
+ </a><br/>
34
+ <sub>⭐ 20.9K</sub>
35
+ </td>
36
+ <td align="center" width="110">
37
+ <a href="https://github.com/sipeed/picoclaw">
38
+ <img src="./public/providers/picoclaw.jpg" alt="PicoClaw" width="48"/><br/>
39
+ <b>PicoClaw</b>
40
+ </a><br/>
41
+ <sub>⭐ 14.6K</sub>
42
+ </td>
43
+ <td align="center" width="110">
44
+ <a href="https://github.com/zeroclaw-labs/zeroclaw">
45
+ <img src="./public/providers/zeroclaw.png" alt="ZeroClaw" width="48"/><br/>
46
+ <b>ZeroClaw</b>
47
+ </a><br/>
48
+ <sub>⭐ 9.9K</sub>
49
+ </td>
50
+ <td align="center" width="110">
51
+ <a href="https://github.com/nearai/ironclaw">
52
+ <img src="./public/providers/ironclaw.png" alt="IronClaw" width="48"/><br/>
53
+ <b>IronClaw</b>
54
+ </a><br/>
55
+ <sub>⭐ 2.1K</sub>
56
+ </td>
57
+ </tr>
58
+ <tr>
59
+ <td align="center" width="110">
60
+ <a href="https://github.com/anomalyco/opencode">
61
+ <img src="./public/providers/opencode.svg" alt="OpenCode" width="48"/><br/>
62
+ <b>OpenCode</b>
63
+ </a><br/>
64
+ <sub>⭐ 106K</sub>
65
+ </td>
66
+ <td align="center" width="110">
67
+ <a href="https://github.com/openai/codex">
68
+ <img src="./public/providers/codex.png" alt="Codex CLI" width="48"/><br/>
69
+ <b>Codex CLI</b>
70
+ </a><br/>
71
+ <sub>⭐ 60.8K</sub>
72
+ </td>
73
+ <td align="center" width="110">
74
+ <a href="https://github.com/anthropics/claude-code">
75
+ <img src="./public/providers/claude.png" alt="Claude Code" width="48"/><br/>
76
+ <b>Claude Code</b>
77
+ </a><br/>
78
+ <sub>⭐ 67.3K</sub>
79
+ </td>
80
+ <td align="center" width="110">
81
+ <a href="https://github.com/google-gemini/gemini-cli">
82
+ <img src="./public/providers/gemini-cli.png" alt="Gemini CLI" width="48"/><br/>
83
+ <b>Gemini CLI</b>
84
+ </a><br/>
85
+ <sub>⭐ 94.7K</sub>
86
+ </td>
87
+ <td align="center" width="110">
88
+ <a href="https://github.com/Kilo-Org/kilocode">
89
+ <img src="./public/providers/kilocode.png" alt="Kilo Code" width="48"/><br/>
90
+ <b>Kilo Code</b>
91
+ </a><br/>
92
+ <sub>⭐ 15.5K</sub>
93
+ </td>
94
+ </tr>
95
+ </table>
96
+
97
+ <sub>📡 Всички агенти се свързват чрез <code>http://localhost:20128/v1</code> или <code>http://cloud.omniroute.online/v1</code> — една конфигурация, неограничени модели и квота</sub>
98
+
99
+ ---
100
+
101
+ [![npm version](https://img.shields.io/npm/v/omniroute?color=cb3837&logo=npm)](https://www.npmjs.com/package/omniroute)
102
+ [![Docker Hub](https://img.shields.io/docker/v/diegosouzapw/omniroute?label=Docker%20Hub&logo=docker&color=2496ED)](https://hub.docker.com/r/diegosouzapw/omniroute)
103
+ [![License](https://img.shields.io/github/license/diegosouzapw/OmniRoute)](https://github.com/diegosouzapw/OmniRoute/blob/main/LICENSE)
104
+ [![Website](https://img.shields.io/badge/Website-omniroute.online-blue?logo=google-chrome&logoColor=white)](https://omniroute.online)
105
+ [![WhatsApp](https://img.shields.io/badge/WhatsApp-Community-25D366?logo=whatsapp&logoColor=white)](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t)
106
+
107
+ [🌐 Website](https://omniroute.online) • [🚀 Quick Start](#-quick-start) • [💡 Features](#-key-features) • [📖 Docs](#-documentation) • [💰 Pricing](#-pricing-at-a-glance) • [💬 WhatsApp](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t)
108
+
109
+ 🌐 **Available in:** 🇺🇸 [English](README.md) | 🇧🇷 [Português (Brasil)](README.pt-BR.md) | 🇪🇸 [Español](README.es.md) | 🇫🇷 [Français](README.fr.md) | 🇮🇹 [Italiano](README.it.md) | 🇷🇺 [Русский](README.ru.md) | 🇨🇳 [中文 (简体)](README.zh-CN.md) | 🇩🇪 [Deutsch](README.de.md) | 🇮🇳 [हिन्दी](README.in.md) | 🇹🇭 [ไทย](README.th.md) | 🇺🇦 [Українська](README.uk-UA.md) | 🇸🇦 [العربية](README.ar.md) | 🇯🇵 [日本語](README.ja.md) | 🇻🇳 [Tiếng Việt](README.vi.md) | 🇧🇬 [Български](README.bg.md) | 🇩🇰 [Dansk](README.da.md) | 🇫🇮 [Suomi](README.fi.md) | 🇮🇱 [עברית](README.he.md) | 🇭🇺 [Magyar](README.hu.md) | 🇮🇩 [Bahasa Indonesia](README.id.md) | 🇰🇷 [한국어](README.ko.md) | 🇲🇾 [Bahasa Melayu](README.ms.md) | 🇳🇱 [Nederlands](README.nl.md) | 🇳🇴 [Norsk](README.no.md) | 🇵🇹 [Português (Portugal)](README.pt.md) | 🇷🇴 [Română](README.ro.md) | 🇵🇱 [Polski](README.pl.md) | 🇸🇰 [Slovenčina](README.sk.md) | 🇸🇪 [Svenska](README.sv.md) | 🇵🇭 [Filipino](README.phi.md)
110
+
111
+ </div>
112
+
113
+ ---
114
+
115
+ ## 🤔 Защо OmniRoute?
116
+
117
+ **Спрете да пилеете пари и да достигате лимити:**
118
+
119
+ - <img src="https://img.shields.io/badge/✗-e74c3c?style=flat-square" height="16"/> Абонаментната квота изтича неизползвана всеки месец
120
+ - <img src="https://img.shields.io/badge/✗-e74c3c?style=flat-square" height="16"/> Ограниченията на скоростта ви спират да кодирате по средата
121
+ - <img src="https://img.shields.io/badge/✗-e74c3c?style=flat-square" height="16"/> Скъпи API ($20-50/месец на доставчик)
122
+ - <img src="https://img.shields.io/badge/✗-e74c3c?style=flat-square" height="16"/> Ръчно превключване между доставчици
123
+
124
+ **OmniRoute решава това:**
125
+
126
+ - ✅ **Увеличете максимално абонаментите** - Проследете квотата, използвайте всеки бит преди нулиране
127
+ - ✅ **Автоматичен резервен режим** - Абонамент → API ключ → Евтини → Безплатно, нулев престой
128
+ - ✅ **Множество акаунти** - Кръгови сметки между акаунти на доставчик
129
+ - ✅ **Универсален** - Работи с Claude Code, Codex, Gemini CLI, Cursor, Cline, OpenClaw, всеки CLI инструмент
130
+
131
+ ---
132
+
133
+ ## 🔄 Как работи
134
+
135
+ ```
136
+ ┌─────────────┐
137
+ │ Your CLI │ (Claude Code, Codex, Gemini CLI, OpenClaw, Cursor, Cline...)
138
+ │ Tool │
139
+ └──────┬──────┘
140
+ │ http://localhost:20128/v1
141
+
142
+ ┌─────────────────────────────────────────┐
143
+ │ OmniRoute (Smart Router) │
144
+ │ • Format translation (OpenAI ↔ Claude) │
145
+ │ • Quota tracking + Embeddings + Images │
146
+ │ • Auto token refresh │
147
+ └──────┬──────────────────────────────────┘
148
+
149
+ ├─→ [Tier 1: SUBSCRIPTION] Claude Code, Codex, Gemini CLI
150
+ │ ↓ quota exhausted
151
+ ├─→ [Tier 2: API KEY] DeepSeek, Groq, xAI, Mistral, NVIDIA NIM, etc.
152
+ │ ↓ budget limit
153
+ ├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
154
+ │ ↓ budget limit
155
+ └─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
156
+
157
+ Result: Never stop coding, minimal cost
158
+ ```
159
+
160
+ ---
161
+
162
+ ## ⚡ Бърз старт
163
+
164
+ **1. Инсталирайте глобално:**
165
+
166
+ ```bash
167
+ npm install -g omniroute
168
+ omniroute
169
+ ```
170
+
171
+ 🎉 Таблото за управление се отваря на `http://localhost:20128`
172
+
173
+ | Команда | Описание |
174
+ | ----------------------- | ----------------------------------------------- |
175
+ | `omniroute` | Стартирайте сървър (порт по подразбиране 20128) |
176
+ | `omniroute --port 3000` | Използвайте персонализиран порт |
177
+ | `omniroute --no-open` | Без автоматично отваряне на браузъра |
178
+ | `omniroute --help` | Показване на помощ |
179
+
180
+ **2. Свържете БЕЗПЛАТЕН доставчик:**
181
+
182
+ Табло → Доставчици → Свържете **Claude Code** или **Antigravity** → OAuth влизане → Готово!
183
+
184
+ **3. Използвайте във вашия CLI инструмент:**
185
+
186
+ ```
187
+ Claude Code/Codex/Gemini CLI/OpenClaw/Cursor/Cline Settings:
188
+ Endpoint: http://localhost:20128/v1
189
+ API Key: [copy from dashboard]
190
+ Model: if/kimi-k2-thinking
191
+ ```
192
+
193
+ **Това е!** Започнете да кодирате с БЕЗПЛАТНИ AI модели.
194
+
195
+ **Алтернатива — стартиране от източника:**
196
+
197
+ ```bash
198
+ cp .env.example .env
199
+ npm install
200
+ PORT=20128 NEXT_PUBLIC_BASE_URL=http://localhost:20128 npm run dev
201
+ ```
202
+
203
+ ---
204
+
205
+ ## 🐳 Докер
206
+
207
+ OmniRoute е наличен като публично изображение на Docker на [Docker Hub](https://hub.docker.com/r/diegosouzapw/omniroute).
208
+
209
+ **Бързо бягане:**
210
+
211
+ ```bash
212
+ docker run -d \
213
+ --name omniroute \
214
+ --restart unless-stopped \
215
+ -p 20128:20128 \
216
+ -v omniroute-data:/app/data \
217
+ diegosouzapw/omniroute:latest
218
+ ```
219
+
220
+ **С файл на средата:**
221
+
222
+ ```bash
223
+ # Copy and edit .env first
224
+ cp .env.example .env
225
+
226
+ docker run -d \
227
+ --name omniroute \
228
+ --restart unless-stopped \
229
+ --env-file .env \
230
+ -p 20128:20128 \
231
+ -v omniroute-data:/app/data \
232
+ diegosouzapw/omniroute:latest
233
+ ```
234
+
235
+ **Използване на Docker Compose:**
236
+
237
+ ```bash
238
+ # Base profile (no CLI tools)
239
+ docker compose --profile base up -d
240
+
241
+ # CLI profile (Claude Code, Codex, OpenClaw built-in)
242
+ docker compose --profile cli up -d
243
+ ```
244
+
245
+ | Изображение | Етикет | Размер | Описание |
246
+ | ------------------------ | -------- | ------ | -------------------------- |
247
+ | `diegosouzapw/omniroute` | `latest` | ~250MB | Най-новата стабилна версия |
248
+ | `diegosouzapw/omniroute` | `1.0.3` | ~250MB | Текуща версия |
249
+
250
+ ---
251
+
252
+ ## 💰 Ценообразуването с един поглед
253
+
254
+ | Ниво | Доставчик | Цена | Нулиране на квота | Най-добро за |
255
+ | ------------------ | ----------------- | ---------------------------- | ----------------------- | ------------------------- |
256
+ | **💳 АБОНАМЕНТ** | Claude Code (Pro) | $20/месец | 5 часа + седмично | Вече сте абонирани |
257
+ | | Codex (Plus/Pro) | $20-200/месец | 5 часа + седмично | Потребители на OpenAI |
258
+ | | Gemini CLI | **БЕЗПЛАТНО** | 180K/месец + 1K/ден | всички! |
259
+ | | Копилот на GitHub | $10-19/месец | Месечно | Потребители на GitHub |
260
+ | **🔑 КЛЮЧ ЗА API** | NVIDIA NIM | **БЕЗПЛАТНО** (1000 кредита) | Еднократно | Безплатно ниво тестване |
261
+ | | DeepSeek | Плащане при използване | Няма | Най-добра цена/качество |
262
+ | | Groq | Безплатно ниво + платено | Ограничена скорост | Свръхбърз извод |
263
+ | | xAI (Grok) | Плащане при използване | Няма | Grok модели |
264
+ | | Мистрал | Безплатно ниво + платено | Ограничена скорост | Европейски AI |
265
+ | | OpenRouter | Плащане при използване | Няма | 100+ модела |
266
+ | **💰 ЕВТИНО** | GLM-4.7 | $0,6/1 милион | Ежедневно 10 сутринта | Резервно копие на бюджета |
267
+ | | MiniMax M2.1 | $0,2/1 милион | 5-часово търкаляне | Най-евтиният вариант |
268
+ | | Кими К2 | $9/месец апартамент | 10 милиона токена/месец | Предвидими разходи |
269
+ | **🆓 БЕЗПЛАТНО** | iFlow | $0 | Неограничен | 8 модела безплатно |
270
+ | | Куен | $0 | Неограничен | 3 модела безплатно |
271
+ | | Киро | $0 | Неограничен | Клод безплатно |
272
+
273
+ **💡 Професионален съвет:** Започнете с Gemini CLI (180K безплатно/месец) + iFlow (неограничено безплатно) комбинация = $0 цена!
274
+
275
+ ---
276
+
277
+ ## 🎯 Случаи на употреба
278
+
279
+ ### Случай 1: „Имам абонамент за Claude Pro“
280
+
281
+ **Проблем:** Квотата изтича неизползвана, ограничения на скоростта по време на тежко кодиране
282
+
283
+ ```
284
+ Combo: "maximize-claude"
285
+ 1. cc/claude-opus-4-6 (use subscription fully)
286
+ 2. glm/glm-4.7 (cheap backup when quota out)
287
+ 3. if/kimi-k2-thinking (free emergency fallback)
288
+
289
+ Monthly cost: $20 (subscription) + ~$5 (backup) = $25 total
290
+ vs. $20 + hitting limits = frustration
291
+ ```
292
+
293
+ ### Случай 2: „Искам нулеви разходи“
294
+
295
+ **Проблем:** Не мога да си позволя абонаменти, имам нужда от надеждно AI кодиране
296
+
297
+ ```
298
+ Combo: "free-forever"
299
+ 1. gc/gemini-3-flash (180K free/month)
300
+ 2. if/kimi-k2-thinking (unlimited free)
301
+ 3. qw/qwen3-coder-plus (unlimited free)
302
+
303
+ Monthly cost: $0
304
+ Quality: Production-ready models
305
+ ```
306
+
307
+ ### Случай 3: „Имам нужда от кодиране 24/7, без прекъсвания“
308
+
309
+ **Проблем:** Крайни срокове, не мога да си позволя престой
310
+
311
+ ```
312
+ Combo: "always-on"
313
+ 1. cc/claude-opus-4-6 (best quality)
314
+ 2. cx/gpt-5.2-codex (second subscription)
315
+ 3. glm/glm-4.7 (cheap, resets daily)
316
+ 4. minimax/MiniMax-M2.1 (cheapest, 5h reset)
317
+ 5. if/kimi-k2-thinking (free unlimited)
318
+
319
+ Result: 5 layers of fallback = zero downtime
320
+ ```
321
+
322
+ ### Случай 4: „Искам БЕЗПЛАТЕН AI в OpenClaw“
323
+
324
+ **Проблем:** Имате нужда от AI асистент в приложенията за съобщения, напълно безплатно
325
+
326
+ ```
327
+ Combo: "openclaw-free"
328
+ 1. if/glm-4.7 (unlimited free)
329
+ 2. if/minimax-m2.1 (unlimited free)
330
+ 3. if/kimi-k2-thinking (unlimited free)
331
+
332
+ Monthly cost: $0
333
+ Access via: WhatsApp, Telegram, Slack, Discord, iMessage, Signal...
334
+ ```
335
+
336
+ ---
337
+
338
+ ## 💡 Основни характеристики
339
+
340
+ ### 🧠 Основно маршрутизиране и разузнаване
341
+
342
+ | Характеристика | Какво прави |
343
+ | ----------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
344
+ | 🎯 **Интелигентен 4-степенен резервен вариант** | Автоматичен маршрут: Абонамент → API ключ → Евтини → Безплатно |
345
+ | 📊 **Проследяване на квоти в реално време** | Брой токени на живо + нулиране на обратното броене на доставчик |
346
+ | 🔄 **Форматиране на превода** | OpenAI ↔ Клод ↔ Близнаци ↔ Курсор ↔ Киро безпроблемно + дезинфекция на отговора |
347
+ | 👥 **Поддръжка за множество акаунти** | Няколко акаунта на доставчик с интелигентен избор |
348
+ | 🔄 **Автоматично опресняване на токени** | OAuth токените се опресняват автоматично с повторен опит |
349
+ | 🎨 **Персонализирани комбинации** | 6 стратегии: първо попълване, кръгова система, p2c, произволна, най-малко използвана, оптимизирана по отношение на разходите |
350
+ | 🧩 **Персонализирани модели** | Добавете всеки модел ID към който и да е доставчик |
351
+ | 🌐 **Wildcard Router** | Насочвайте `provider/*` шаблони към всеки доставчик динамично |
352
+ | 🧠 **Мислен бюджет** | Преминаване, автоматичен, персонализиран и адаптивен режим за модели на разсъждение |
353
+ | 💬 **Системно бързо инжектиране** | Глобална системна подкана, приложена към всички заявки |
354
+ | 📄 **API за отговори** | Пълна поддръжка на OpenAI Responses API (`/v1/responses`) за Codex |
355
+
356
+ ### 🎵 Мултимодални API
357
+
358
+ | Характеристика | Какво прави |
359
+ | -------------------------------- | ----------------------------------------------------------- |
360
+ | 🖼️ **Генериране на изображения** | `/v1/images/generations` — 4 доставчика, 9+ модела |
361
+ | 📐 **Вграждания** | `/v1/embeddings` — 6 доставчика, 9+ модела |
362
+ | 🎤 **Аудио транскрипция** | `/v1/audio/transcriptions` — Съвместим с Whisper |
363
+ | 🔊 **Текст към говор** | `/v1/audio/speech` — Синтез на аудио с множество доставчици |
364
+ | 🛡️ **Модерации** | `/v1/moderations` — Проверки за безопасност на съдържанието |
365
+ | 🔀 **Прекласиране** | `/v1/rerank` — Прекласиране на уместността на документа |
366
+
367
+ ### 🛡️ Устойчивост и сигурност
368
+
369
+ | Характеристика | Какво прави |
370
+ | -------------------------------------------- | ----------------------------------------------------------------------------------------------- |
371
+ | 🔌 **Прекъсвач** | Автоматично отваряне/затваряне за всеки доставчик с конфигурируеми прагове |
372
+ | 🛡️ **Anti-Thundering Herd** | Mutex + ограничение на скоростта на семафор за доставчици на API ключ |
373
+ | 🧠 **Семантичен кеш** | Двуслоен кеш (подпис + семантичен) намалява разходите и забавянето |
374
+ | ⚡ **Искане на идемпотентност** | 5s прозорец за дедупиране за дублирани заявки |
375
+ | 🔒 **TLS Fingerprint Spoofing** | Заобикаляне на TLS-базирано откриване на бот чрез wreq-js |
376
+ | 🌐 **IP филтриране** | Списък с разрешени/блокирани за контрол на достъпа до API |
377
+ | 📊 **Редактируеми ограничения на скоростта** | Конфигурируеми обороти в минута, минимална разлика и максимална едновременност на системно ниво |
378
+ | 🛡 **API Endpoint Protection** | Удостоверяване + блокиране на доставчик за крайната точка `/models` |
379
+ | 🔒 **Прокси видимост** | Цветно кодирани значки: 🟢 глобален, 🟡 доставчик, 🔵 за връзка с IP дисплей |
380
+ | 🌐 **3-ниво на прокси конфигурация** | Конфигуриране на прокси сървъри на глобално ниво, на ниво доставчик или на ниво връзка |
381
+
382
+ ### 📊 Наблюдаемост и анализ
383
+
384
+ | Характеристика | Какво прави |
385
+ | ---------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
386
+ | 📝 **Заявка за регистриране** | Режим на отстраняване на грешки с пълни журнали за заявки/отговори |
387
+ | 💾 **SQLite прокси регистрационни файлове** | Постоянните регистрационни файлове на прокси сървъра преживяват рестартиране на сървър |
388
+ | 📊 **Табло за управление на анализи** | Задвижва се от Recharts: статистически карти, диаграма за използване на модели, таблица на доставчик |
389
+ | 📈 **Проследяване на напредъка** | Включване на събития за прогрес на SSE за стрийминг |
390
+ | 🧪 **Оценки на LLM** | Тестване на златен сет с 4 стратегии за мач |
391
+ | 🔍 **Заявка за телеметрия** | p50/p95/p99 агрегиране на латентност + проследяване на X-Request-Id |
392
+ | 📋 **Табло за управление на регистрационни файлове** | Унифицирана страница с 4 раздела: регистрационни файлове на заявки, регистрационни файлове на прокси, регистрационни файлове за одит, конзола |
393
+ | 🖥️ **Console Log Viewer** | Визуализатор в стил терминал в реално време с филтър за ниво, търсене, автоматично превъртане |
394
+ | 📑 **Регистриране на базата на файлове** | Прихващачът на конзолата улавя целия изход в JSON лог файл с ротация |
395
+ | 🏥 **Здравно табло** | Работно време на системата, състояния на прекъсвачи, блокировки, статистика на кеша |
396
+ | 💰 **Проследяване на разходите** | Управление на бюджета + конфигурация на ценообразуване за модел |
397
+
398
+ ### ☁️ Внедряване и синхронизиране
399
+
400
+ | Характеристика | Какво прави |
401
+ | ----------------------------------------- | ---------------------------------------------------------------------------------------- |
402
+ | 💾 **Синхронизиране в облак** | Синхронизирайте конфигурацията между устройства чрез Cloudflare Workers |
403
+ | 🌐 **Разполагане навсякъде** | Localhost, VPS, Docker, Cloudflare Workers |
404
+ | 🔑 **API Key Management** | Генериране, завъртане и обхват на API ключове за всеки доставчик |
405
+ | 🧙 **Съветник за присъединяване** | Насочвана настройка в 4 стъпки за потребители за първи път |
406
+ | 🔧 **CLI Tools Dashboard** | Конфигурирайте с едно кликване Claude, Codex, Cline, OpenClaw, Kilo, Antigravity |
407
+ | 🔄 **Архивиране на DB** | Автоматично архивиране, възстановяване, експортиране и импортиране за всички настройки |
408
+ | 🌐 **Интернационализация** | Пълен i18n с next-intl — поддръжка на английски + португалски (Бразилия) |
409
+ | 🌍 **Избор на език** | Икона на глобус в заглавката за превключване на език в реално време (🇺🇸/🇧🇷) |
410
+ | 📂 **Директория с персонализирани данни** | `DATA_DIR` env променлива за замяна на пътя за съхранение по подразбиране `~/.omniroute` |
411
+
412
+ <details>
413
+ <summary><b>📖 Подробности за функцията</b></summary>
414
+
415
+ ### 🎯 Интелигентен 4-степенен резервен вариант
416
+
417
+ Създавайте комбинации с автоматичен резервен вариант:
418
+
419
+ ```
420
+ Combo: "my-coding-stack"
421
+ 1. cc/claude-opus-4-6 (your subscription)
422
+ 2. nvidia/llama-3.3-70b (free NVIDIA API)
423
+ 3. glm/glm-4.7 (cheap backup, $0.6/1M)
424
+ 4. if/kimi-k2-thinking (free fallback)
425
+
426
+ → Auto switches when quota runs out or errors occur
427
+ ```
428
+
429
+ ### 📊 Проследяване на квоти в реално време
430
+
431
+ - Консумация на токени на доставчик
432
+ - Нулиране на обратното броене (5 часа, ежедневно, седмично)
433
+ - Оценка на разходите за платени нива
434
+ - Месечни отчети за разходите
435
+
436
+ ### 🔄 Превод на формат
437
+
438
+ Безпроблемен превод между формати:
439
+
440
+ - **OpenAI** ↔ **Клод** ↔ **Близнаци** ↔ **Отговори на OpenAI**
441
+ - Вашият CLI инструмент изпраща OpenAI формат → OmniRoute превежда → Доставчикът получава собствен формат
442
+ - Работи с всеки инструмент, който поддържа персонализирани крайни точки на OpenAI
443
+ - **Дезифициране на отговора** — Премахва нестандартните полета за стриктна съвместимост с OpenAI SDK
444
+ - **Нормализиране на ролята** — `developer` → `system` за не-OpenAI; `system` → `user` за GLM/ERNIE модели
445
+ - **Извличане на мислене на тагове** — `<think>` блокове → `reasoning_content` за мислещи модели
446
+ - **Структуриран изход** — `json_schema` → `responseMimeType`/`responseSchema` на Gemini
447
+
448
+ ### 👥 Поддръжка за няколко акаунта
449
+
450
+ - Добавете няколко акаунта на доставчик
451
+ - Автоматично кръгово или базирано на приоритет маршрутизиране
452
+ - Връщане към следващия акаунт, когато някой достигне квотата
453
+
454
+ ### 🔄 Автоматично опресняване на токени
455
+
456
+ - OAuth токените се опресняват автоматично преди изтичане
457
+ - Не е необходимо ръчно повторно удостоверяване
458
+ - Безпроблемно изживяване при всички доставчици
459
+
460
+ ### 🎨 Персонализирани комбинации
461
+
462
+ - Създавайте неограничени комбинации от модели
463
+ - 6 стратегии: първо попълване, кръгъл-робин, сила на два избора, произволна, най-малко използвана, оптимизирана по отношение на разходите
464
+ - Споделяйте комбинации между устройства с Cloud Sync
465
+
466
+ ### 🏥 Здравно табло
467
+
468
+ - Състояние на системата (време на работа, версия, използване на паметта)
469
+ - Състояния на прекъсвача за всеки доставчик (затворен/отворен/полуотворен)
470
+ - Състояние на ограничение на скоростта и активни блокировки
471
+ - Статистика за кеша на подписите
472
+ - Телеметрия за забавяне (p50/p95/p99) + кеш за подкани
473
+ - Нулирайте здравословното състояние с едно щракване
474
+
475
+ ### 🔧 Площадка за преводачи
476
+
477
+ OmniRoute включва мощна вградена игра за преводачи с **4 режима** за отстраняване на грешки, тестване и наблюдение на API преводи:
478
+
479
+ | Режим | Описание |
480
+ | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
481
+ | **💻 Детска площадка** | Директен превод на формат — поставете всяко тяло на заявка за API и незабавно вижте как OmniRoute го превежда между формати на доставчик (OpenAI ↔ Claude ↔ Gemini ↔ Responses API). Включва примерни шаблони и автоматично откриване на формати. |
482
+ | **💬 Тестер за чат** | Изпращайте реални заявки за чат чрез OmniRoute и вижте пълното пътуване: вашият вход, преведената заявка, отговорът на доставчика и преведеният отговор обратно. Безценен за валидиране на комбинирано маршрутизиране. |
483
+ | **🧪 Тестова стенда** | Режим на пакетно тестване — дефинирайте множество тестови случаи с различни входове и очаквани изходи, стартирайте ги всички наведнъж и сравнете резултатите между доставчици и модели. |
484
+ | **📱 Монитор на живо** | Мониторинг на заявки в реално време — наблюдавайте входящите заявки, докато преминават през OmniRoute, вижте преводите на формати, които се случват на живо, и незабавно идентифицирайте проблемите. |
485
+
486
+ **Достъп:** Табло за управление → Преводач (странична лента)
487
+
488
+ ### 💾 Облачно синхронизиране
489
+
490
+ - Синхронизиране на доставчици, комбинации и настройки на всички устройства
491
+ - Автоматична фонова синхронизация
492
+ - Сигурно криптирано съхранение
493
+
494
+ </details>
495
+
496
+ ---
497
+
498
+ ## 📖 Ръководство за настройка
499
+
500
+ <details>
501
+ <summary><b>💳 Доставчици на абонамент</b></summary>
502
+
503
+ ### Claude Code (Pro/Max)
504
+
505
+ ```bash
506
+ Dashboard → Providers → Connect Claude Code
507
+ → OAuth login → Auto token refresh
508
+ → 5-hour + weekly quota tracking
509
+
510
+ Models:
511
+ cc/claude-opus-4-6
512
+ cc/claude-sonnet-4-5-20250929
513
+ cc/claude-haiku-4-5-20251001
514
+ ```
515
+
516
+ **Професионален съвет:** Използвайте Opus за сложни задачи, Sonnet за скорост. OmniRoute проследява квота за модел!
517
+
518
+ ### OpenAI Codex (Plus/Pro)
519
+
520
+ ```bash
521
+ Dashboard → Providers → Connect Codex
522
+ → OAuth login (port 1455)
523
+ → 5-hour + weekly reset
524
+
525
+ Models:
526
+ cx/gpt-5.2-codex
527
+ cx/gpt-5.1-codex-max
528
+ ```
529
+
530
+ ### Gemini CLI (БЕЗПЛАТНО 180K/месец!)
531
+
532
+ ```bash
533
+ Dashboard → Providers → Connect Gemini CLI
534
+ → Google OAuth
535
+ → 180K completions/month + 1K/day
536
+
537
+ Models:
538
+ gc/gemini-3-flash-preview
539
+ gc/gemini-2.5-pro
540
+ ```
541
+
542
+ **Най-добра стойност:** Огромно безплатно ниво! Използвайте това преди платените нива.
543
+
544
+ ### Копилот на GitHub
545
+
546
+ ```bash
547
+ Dashboard → Providers → Connect GitHub
548
+ → OAuth via GitHub
549
+ → Monthly reset (1st of month)
550
+
551
+ Models:
552
+ gh/gpt-5
553
+ gh/claude-4.5-sonnet
554
+ gh/gemini-3-pro
555
+ ```
556
+
557
+ </details>
558
+
559
+ <details>
560
+ <summary><b>🔑 API Key Providers</b></summary>
561
+
562
+ ### NVIDIA NIM (БЕЗПЛАТНИ 1000 кредита!)
563
+
564
+ 1. Регистрирайте се: [build.nvidia.com](https://build.nvidia.com)
565
+ 2. Вземете безплатен API ключ (включени 1000 кредита за изводи)
566
+ 3. Табло → Добавяне на доставчик → NVIDIA NIM:
567
+ - API ключ: `nvapi-your-key`
568
+
569
+ **Модели:** `nvidia/llama-3.3-70b-instruct`, `nvidia/mistral-7b-instruct` и още 50+
570
+
571
+ **Професионален съвет:** OpenAI-съвместим API — работи безпроблемно с превода на формати на OmniRoute!
572
+
573
+ ### DeepSeek
574
+
575
+ 1. Регистрирайте се: [platform.deepseek.com](https://platform.deepseek.com)
576
+ 2. Вземете API ключ
577
+ 3. Табло → Добавяне на доставчик → DeepSeek
578
+
579
+ **Модели:** `deepseek/deepseek-chat`, `deepseek/deepseek-coder`
580
+
581
+ ### Groq (налично безплатно ниво!)
582
+
583
+ 1. Регистрирайте се: [console.groq.com](https://console.groq.com)
584
+ 2. Вземете API ключ (включено безплатно ниво)
585
+ 3. Табло → Добавяне на доставчик → Groq
586
+
587
+ **Модели:** `groq/llama-3.3-70b`, `groq/mixtral-8x7b`
588
+
589
+ **Професионален съвет:** Изключително бърз извод — най-добър за кодиране в реално време!
590
+
591
+ ### OpenRouter (100+ модела)
592
+
593
+ 1. Регистрирайте се: [openrouter.ai](https://openrouter.ai)
594
+ 2. Вземете API ключ
595
+ 3. Табло → Добавяне на доставчик → OpenRouter
596
+
597
+ **Модели:** Достъп до 100+ модела от всички основни доставчици чрез един API ключ.
598
+
599
+ </details>
600
+
601
+ <details>
602
+ <summary><b>💰 Евтини доставчици (резервни)</b></summary>
603
+
604
+ ### GLM-4.7 (Ежедневно нулиране, $0,6/1 млн.)
605
+
606
+ 1. Регистрирайте се: [Zhipu AI](https://open.bigmodel.cn/)
607
+ 2. Вземете API ключ от Coding Plan
608
+ 3. Табло → Добавяне на API ключ:
609
+ - Доставчик: `glm`
610
+ - API ключ: `your-key`
611
+
612
+ **Използване:** `glm/glm-4.7`
613
+
614
+ **Професионален съвет:** Планът за кодиране предлага 3× квота на цена 1/7! Нулирайте всеки ден в 10:00 ч.
615
+
616
+ ### MiniMax M2.1 (5 часа нулиране, $0,20/1 млн.)
617
+
618
+ 1. Регистрирайте се: [MiniMax](https://www.minimax.io/)
619
+ 2. Вземете API ключ
620
+ 3. Табло → Добавяне на API ключ
621
+
622
+ **Използване:** `minimax/MiniMax-M2.1`
623
+
624
+ **Професионален съвет:** Най-евтината опция за дълъг контекст (1M токени)!
625
+
626
+ ### Kimi K2 ($9/месец фиксиран)
627
+
628
+ 1. Абонирайте се: [Moonshot AI](https://platform.moonshot.ai/)
629
+ 2. Вземете API ключ
630
+ 3. Табло → Добавяне на API ключ
631
+
632
+ **Използване:** `kimi/kimi-latest`
633
+
634
+ **Професионален съвет:** Фиксирани $9/месец за 10 милиона токена = $0,90/1 милион ефективна цена!
635
+
636
+ </details>
637
+
638
+ <details>
639
+ <summary><b>🆓 БЕЗПЛАТНИ доставчици (Спешно архивиране)</b></summary>
640
+
641
+ ### iFlow (8 БЕЗПЛАТНИ модела)
642
+
643
+ ```bash
644
+ Dashboard → Connect iFlow
645
+ → iFlow OAuth login
646
+ → Unlimited usage
647
+
648
+ Models:
649
+ if/kimi-k2-thinking
650
+ if/qwen3-coder-plus
651
+ if/glm-4.7
652
+ if/minimax-m2
653
+ if/deepseek-r1
654
+ ```
655
+
656
+ ### Qwen (3 БЕЗПЛАТНИ модела)
657
+
658
+ ```bash
659
+ Dashboard → Connect Qwen
660
+ → Device code authorization
661
+ → Unlimited usage
662
+
663
+ Models:
664
+ qw/qwen3-coder-plus
665
+ qw/qwen3-coder-flash
666
+ ```
667
+
668
+ ### Киро (Клод БЕЗПЛАТНО)
669
+
670
+ ```bash
671
+ Dashboard → Connect Kiro
672
+ → AWS Builder ID or Google/GitHub
673
+ → Unlimited usage
674
+
675
+ Models:
676
+ kr/claude-sonnet-4.5
677
+ kr/claude-haiku-4.5
678
+ ```
679
+
680
+ </details>
681
+
682
+ <details>
683
+ <summary><b>🎨 Създаване на комбинации</b></summary>
684
+
685
+ ### Пример 1: Увеличаване на абонамента → Евтино архивиране
686
+
687
+ ```
688
+ Dashboard → Combos → Create New
689
+
690
+ Name: premium-coding
691
+ Models:
692
+ 1. cc/claude-opus-4-6 (Subscription primary)
693
+ 2. glm/glm-4.7 (Cheap backup, $0.6/1M)
694
+ 3. minimax/MiniMax-M2.1 (Cheapest fallback, $0.20/1M)
695
+
696
+ Use in CLI: premium-coding
697
+ ```
698
+
699
+ ### Пример 2: Само безплатно (нулева цена)
700
+
701
+ ```
702
+ Name: free-combo
703
+ Models:
704
+ 1. gc/gemini-3-flash-preview (180K free/month)
705
+ 2. if/kimi-k2-thinking (unlimited)
706
+ 3. qw/qwen3-coder-plus (unlimited)
707
+
708
+ Cost: $0 forever!
709
+ ```
710
+
711
+ </details>
712
+
713
+ <details>
714
+ <summary><b>🔧 CLI интеграция</b></summary>
715
+
716
+ ### Курсор IDE
717
+
718
+ ```
719
+ Settings → Models → Advanced:
720
+ OpenAI API Base URL: http://localhost:20128/v1
721
+ OpenAI API Key: [from OmniRoute dashboard]
722
+ Model: cc/claude-opus-4-6
723
+ ```
724
+
725
+ ### Клод Код
726
+
727
+ Използвайте страницата **CLI Tools** в таблото за управление за конфигурация с едно кликване или редактирайте `~/.claude/settings.json` ръчно.
728
+
729
+ ### Codex CLI
730
+
731
+ ```bash
732
+ export OPENAI_BASE_URL="http://localhost:20128"
733
+ export OPENAI_API_KEY="your-omniroute-api-key"
734
+
735
+ codex "your prompt"
736
+ ```
737
+
738
+ ### OpenClaw
739
+
740
+ **Вариант 1 — Табло (препоръчително):**
741
+
742
+ ```
743
+ Dashboard → CLI Tools → OpenClaw → Select Model → Apply
744
+ ```
745
+
746
+ **Опция 2 — Ръчно:** Редактиране `~/.openclaw/openclaw.json`:
747
+
748
+ ```json
749
+ {
750
+ "models": {
751
+ "providers": {
752
+ "omniroute": {
753
+ "baseUrl": "http://127.0.0.1:20128/v1",
754
+ "apiKey": "sk_omniroute",
755
+ "api": "openai-completions"
756
+ }
757
+ }
758
+ }
759
+ }
760
+ ```
761
+
762
+ > **Забележка:** OpenClaw работи само с локален OmniRoute. Използвайте `127.0.0.1` вместо `localhost`, за да избегнете проблеми с разрешаването на IPv6.
763
+
764
+ ### Cline / Продължи / RooCode
765
+
766
+ ```
767
+ Settings → API Configuration:
768
+ Provider: OpenAI Compatible
769
+ Base URL: http://localhost:20128/v1
770
+ API Key: [from OmniRoute dashboard]
771
+ Model: if/kimi-k2-thinking
772
+ ```
773
+
774
+ </details>
775
+
776
+ ---
777
+
778
+ ## 📊 Налични модели
779
+
780
+ <details>
781
+ <summary><b>Вижте всички налични модели</b></summary>
782
+
783
+ **Claude Code (`cc/`)** - Pro/Max:
784
+
785
+ - `cc/claude-opus-4-6`
786
+ - `cc/claude-sonnet-4-5-20250929`
787
+ - `cc/claude-haiku-4-5-20251001`
788
+
789
+ **Codex (`cx/`)** - Plus/Pro:
790
+
791
+ - `cx/gpt-5.2-codex`
792
+ - `cx/gpt-5.1-codex-max`
793
+
794
+ **Gemini CLI (`gc/`)** - БЕЗПЛАТНО:
795
+
796
+ - `gc/gemini-3-flash-preview`
797
+ - `gc/gemini-2.5-pro`
798
+
799
+ **GitHub Copilot (`gh/`)**:
800
+
801
+ - `gh/gpt-5`
802
+ - `gh/claude-4.5-sonnet`
803
+
804
+ **NVIDIA NIM (`nvidia/`)** - БЕЗПЛАТНИ кредити:
805
+
806
+ - `nvidia/llama-3.3-70b-instruct`
807
+ - `nvidia/mistral-7b-instruct`
808
+ - още 50+ модела на [build.nvidia.com](https://build.nvidia.com)
809
+
810
+ **GLM (`glm/`)** - $0,6/1 млн.:
811
+
812
+ - `glm/glm-4.7`
813
+
814
+ **MiniMax (`minimax/`)** - $0,2/1 млн.:
815
+
816
+ - `minimax/MiniMax-M2.1`
817
+
818
+ **iFlow (`if/`)** - БЕЗПЛАТНО:
819
+
820
+ - `if/kimi-k2-thinking`
821
+ - `if/qwen3-coder-plus`
822
+ - `if/deepseek-r1`
823
+ - `if/glm-4.7`
824
+ - `if/minimax-m2`
825
+
826
+ **Qwen (`qw/`)** - БЕЗПЛАТНО:
827
+
828
+ - `qw/qwen3-coder-plus`
829
+ - `qw/qwen3-coder-flash`
830
+
831
+ **Киро (`kr/`)** - БЕЗПЛАТНО:
832
+
833
+ - `kr/claude-sonnet-4.5`
834
+ - `kr/claude-haiku-4.5`
835
+
836
+ **OpenRouter (`or/`)** - 100+ модела:
837
+
838
+ - `or/anthropic/claude-4-sonnet`
839
+ - `or/google/gemini-2.5-pro`
840
+ - Всеки модел от [openrouter.ai/models](https://openrouter.ai/models)
841
+
842
+ </details>
843
+
844
+ ---
845
+
846
+ ## 🧪 Оценки (Evals)
847
+
848
+ OmniRoute включва вградена рамка за оценка за тестване на качеството на отговора на LLM спрямо златен набор. Достъп до него чрез **Analytics → Evals** в таблото за управление.
849
+
850
+ ### Вграден златен комплект
851
+
852
+ Предварително зареденият "OmniRoute Golden Set" съдържа 10 тестови случая, покриващи:
853
+
854
+ - Поздрави, математика, география, генериране на код
855
+ - Съответствие с JSON формат, превод, маркдаун
856
+ - Отказ за безопасност (вредно съдържание), броене, булева логика
857
+
858
+ ### Стратегии за оценка
859
+
860
+ | Стратегия | Описание | Пример |
861
+ | ---------- | ----------------------------------------------------------------------- | -------------------------------- |
862
+ | `exact` | Изходът трябва да съвпада точно | `"4"` |
863
+ | `contains` | Изходът трябва да съдържа подниз (без значение за малки и големи букви) | `"Paris"` |
864
+ | `regex` | Изходът трябва да съответства на модела на регулярен израз | `"1.*2.*3"` |
865
+ | `custom` | Персонализираната JS функция връща true/false | `(output) => output.length > 10` |
866
+
867
+ ---
868
+
869
+ ## 🔐 OAuth em Servidor Remoto (Отдалечена настройка на OAuth)
870
+
871
+ <a name="oauth-em-servidor-remoto"></a>
872
+
873
+ > **⚠️ ВАЖНО за ползване на OmniRoute em VPS/Docker/servidor remoto**
874
+
875
+ ### Ако OAuth на Antigravity / Gemini CLI не работи с отдалечени сървъри?
876
+
877
+ Доставчиците на **Antigravity** и **Gemini CLI** използват **Google OAuth 2.0** за удостоверяване. Google изисква, че `redirect_uri` не използва fluxo OAuth като **exatamente**, когато URI адресите преди кадастрада не са в приложение на Google Cloud Console.
878
+
879
+ Като удостоверение за OAuth не е OmniRoute estão cadastradas **apenas para `localhost`**. Ако имате достъп до OmniRoute в дистанционния сървър (напр.: `https://omniroute.meuservidor.com`), или Google rejeita a autenticação com:
880
+
881
+ ```
882
+ Error 400: redirect_uri_mismatch
883
+ ```
884
+
885
+ ### Решение: Конфигурирайте собствените си права за удостоверяване на OAuth
886
+
887
+ Изпишете точно **OAuth 2.0 Client ID** без Google Cloud Console чрез URI на вашия сървър.
888
+
889
+ #### Passo a passo
890
+
891
+ **1. Достъп до Google Cloud Console**
892
+
893
+ Abra: [https://console.cloud.google.com/apis/credentials](https://console.cloud.google.com/apis/credentials)
894
+
895
+ **2. Crie um novo OAuth 2.0 Client ID**
896
+
897
+ - Кликнете върху **"+ Създаване на идентификационни данни"** → **"OAuth клиентски идентификатор"**
898
+ - Tipo de aplicativo: **"Уеб приложение"**
899
+ - Име: escolha qualquer име (напр.: `OmniRoute Remote`)
900
+
901
+ **3. Adicione като оторизирани URI адреси за пренасочване**
902
+
903
+ Без поле **„Оторизирани URI адреси за пренасочване“**, добавете:
904
+
905
+ ```
906
+ https://seu-servidor.com/callback
907
+ ```
908
+
909
+ > Замяна на `seu-servidor.com` домейн или IP на вашия сървър (включително необходим порт, напр.: `http://45.33.32.156:20128/callback`).
910
+
911
+ **4. Salve e copie as credenciais**
912
+
913
+ Например, Google показва **Клиентски идентификатор** и **Клиентска тайна**.
914
+
915
+ **5. Конфигуриране като variáveis de ambiente**
916
+
917
+ Няма `.env` (или нашите варианти на средата на Docker):
918
+
919
+ ```bash
920
+ # Para Antigravity:
921
+ ANTIGRAVITY_OAUTH_CLIENT_ID=seu-client-id.apps.googleusercontent.com
922
+ ANTIGRAVITY_OAUTH_CLIENT_SECRET=GOCSPX-seu-secret
923
+
924
+ # Para Gemini CLI:
925
+ GEMINI_OAUTH_CLIENT_ID=seu-client-id.apps.googleusercontent.com
926
+ GEMINI_OAUTH_CLIENT_SECRET=GOCSPX-seu-secret
927
+ GEMINI_CLI_OAUTH_CLIENT_SECRET=GOCSPX-seu-secret
928
+ ```
929
+
930
+ **6. Reinicie o OmniRoute**
931
+
932
+ ```bash
933
+ # Se usando npm:
934
+ npm run dev
935
+
936
+ # Se usando Docker:
937
+ docker restart omniroute
938
+ ```
939
+
940
+ **7. Tente conectar novamente**
941
+
942
+ Табло → Доставчици → Антигравитация (или Gemini CLI) → OAuth
943
+
944
+ Agora или Google пренасочва корекции за `https://seu-servidor.com/callback` и функционира автентичност.
945
+
946
+ ---
947
+
948
+ ### Временно заобиколно решение (sem configurar credenciais próprias)
949
+
950
+ Se não quiser criar credenciais próprias agora, ainda é possível usar o fluxo **manual de URL**:
951
+
952
+ 1. O OmniRoute премахва URL адрес за авторизация от Google
953
+ 2. Ако не разрешите, пренасочването на Google е пренасочено към `localhost` (което не е отдалечено от сървъра)
954
+ 3. **Копирайте пълния URL адрес** от страницата, която искате да прехвърлите в своя браузър (mesmo que a página não carregue)
955
+ 4. Cole essa URL no campo que aparece no modal de conexão do OmniRoute
956
+ 5. Щракнете върху **"Свързване"**
957
+
958
+ > Това заобиколно решение функционира, ако кодът на авторизацията на URL е валиден независимо от пренасочването към пренасочване или не.
959
+
960
+ ---
961
+
962
+ ## 🐛 Отстраняване на неизправности
963
+
964
+ <details>
965
+ <summary><b>Щракнете, за да разширите ръководството за отстраняване на неизправности</b></summary>
966
+
967
+ **„Езиковият модел не предостави съобщения“**
968
+
969
+ - Квотата на доставчика е изчерпана → Проверете инструмента за проследяване на квотата на таблото за управление
970
+ - Решение: Използвайте комбо резервен вариант или преминете към по-евтино ниво
971
+
972
+ **Ограничаване на скоростта**
973
+
974
+ - Изчерпване на квотата за абонамент → Резервно връщане към GLM/MiniMax
975
+ - Добавяне на комбинация: `cc/claude-opus-4-6 → glm/glm-4.7 → if/kimi-k2-thinking`
976
+
977
+ **OAuth токенът е изтекъл**
978
+
979
+ - Автоматично опресняване от OmniRoute
980
+ - Ако проблемите продължават: Табло → Доставчик → Повторно свързване
981
+
982
+ **Високи разходи**
983
+
984
+ - Проверете статистическите данни за използването в Табло → Разходи
985
+ - Превключете основния модел към GLM/MiniMax
986
+ - Използвайте безплатно ниво (Gemini CLI, iFlow) за некритични задачи
987
+
988
+ **Таблото се отваря на грешен порт**
989
+
990
+ - Задайте `PORT=20128` и `NEXT_PUBLIC_BASE_URL=http://localhost:20128`
991
+
992
+ **Грешки при синхронизиране в облак**
993
+
994
+ - Потвърдете, че `BASE_URL` сочи към вашия работещ екземпляр
995
+ - Проверете `CLOUD_URL` точки към вашата очаквана крайна точка в облака
996
+ - Поддържайте стойностите на `NEXT_PUBLIC_*` в съответствие със стойностите от страната на сървъра
997
+
998
+ **Първото влизане не работи**
999
+
1000
+ - Проверете `INITIAL_PASSWORD` в `.env`
1001
+ - Ако не е зададена, резервната парола е `123456`
1002
+
1003
+ **Няма регистрационни файлове за заявки**
1004
+
1005
+ - Задайте `ENABLE_REQUEST_LOGS=true` в `.env`
1006
+
1007
+ **Тестът за връзка показва „Невалидно“ за OpenAI-съвместими доставчици**
1008
+
1009
+ - Много доставчици не излагат `/models` крайна точка
1010
+ - OmniRoute v1.0.6+ включва резервно валидиране чрез завършвания на чат
1011
+ - Уверете се, че основният URL адрес включва суфикс `/v1`
1012
+
1013
+ </details>
1014
+
1015
+ ---
1016
+
1017
+ ## 🛠️ Tech Stack
1018
+
1019
+ - **Време на изпълнение**: Node.js 18–22 LTS (⚠️ Node.js 24+ **не се поддържа** — родните двоични файлове `better-sqlite3` са несъвместими)
1020
+ - **Език**: TypeScript 5.9 — **100% TypeScript** в `src/` и `open-sse/` (v1.0.6)
1021
+ - **Framework**: Next.js 16 + React 19 + Tailwind CSS 4
1022
+ - **База данни**: LowDB (JSON) + SQLite (състояние на домейна + регистрационни файлове на прокси)
1023
+ - **Поточно предаване**: Изпратени от сървъра събития (SSE)
1024
+ - **Auth**: OAuth 2.0 (PKCE) + JWT + API ключове
1025
+ - **Тестване**: Node.js тестов инструмент (368+ единични теста)
1026
+ - **CI/CD**: Действия на GitHub (автоматично публикуване на npm + Docker Hub при пускане)
1027
+ - **Уебсайт**: [omniroute.online](https://omniroute.online)
1028
+ - **Пакет**: [npmjs.com/package/omniroute](https://www.npmjs.com/package/omniroute)
1029
+ - **Docker**: [hub.docker.com/r/diegosouzapw/omniroute](https://hub.docker.com/r/diegosouzapw/omniroute)
1030
+ - **Устойчивост**: прекъсвач на веригата, експоненциално отдръпване, анти-гръмотевично стадо, TLS спуфинг
1031
+
1032
+ ---
1033
+
1034
+ ## 📖 Документация
1035
+
1036
+ | Документ | Описание |
1037
+ | -------------------------------------------- | ------------------------------------------------------- |
1038
+ | [User Guide](docs/USER_GUIDE.md) | Доставчици, комбинации, CLI интеграция, внедряване |
1039
+ | [API Reference](docs/API_REFERENCE.md) | Всички крайни точки с примери |
1040
+ | [Troubleshooting](docs/TROUBLESHOOTING.md) | Често срещани проблеми и решения |
1041
+ | [Architecture](docs/ARCHITECTURE.md) | Системна архитектура и вътрешност |
1042
+ | [Contributing](CONTRIBUTING.md) | Настройка и насоки за разработка |
1043
+ | [OpenAPI Spec](docs/openapi.yaml) | Спецификация на OpenAPI 3.0 |
1044
+ | [Security Policy](SECURITY.md) | Отчитане на уязвимости и практики за сигурност |
1045
+ | [VM Deployment](docs/VM_DEPLOYMENT_GUIDE.md) | Пълно ръководство: Настройка на VM + nginx + Cloudflare |
1046
+ | [Features Gallery](docs/FEATURES.md) | Визуална обиколка на таблото с екранни снимки |
1047
+
1048
+ ### 📸 Визуализация на таблото за управление
1049
+
1050
+ <details>
1051
+ <summary><b>Щракнете, за да видите екранни снимки на таблото за управление</b></summary>
1052
+
1053
+ | Страница | Екранна снимка |
1054
+ | -------------------------- | ------------------------------------------------- |
1055
+ | **Доставчици** | ![Providers](docs/screenshots/01-providers.png) |
1056
+ | **Комбота** | ![Combos](docs/screenshots/02-combos.png) |
1057
+ | **Анализ** | ![Analytics](docs/screenshots/03-analytics.png) |
1058
+ | **Здраве** | ![Health](docs/screenshots/04-health.png) |
1059
+ | **Преводач** | ![Translator](docs/screenshots/05-translator.png) |
1060
+ | **Настройки** | ![Settings](docs/screenshots/06-settings.png) |
1061
+ | **CLI инструменти** | ![CLI Tools](docs/screenshots/07-cli-tools.png) |
1062
+ | **Дневници за използване** | ![Usage](docs/screenshots/08-usage.png) |
1063
+ | **Крайна точка** | ![Endpoint](docs/screenshots/09-endpoint.png) |
1064
+
1065
+ </details>
1066
+
1067
+ ---
1068
+
1069
+ ## 🗺️ Пътна карта
1070
+
1071
+ OmniRoute има **планирани 210+ функции** в множество фази на разработка. Ето основните области:
1072
+
1073
+ | Категория | Планирани функции | Акценти |
1074
+ | ----------------------------------- | ----------------- | ----------------------------------------------------------------------------------------------------------------------------- |
1075
+ | 🧠 **Маршрутизиране и разузнаване** | 25+ | Маршрутизиране с най-ниска латентност, маршрутизиране на базата на маркери, предварителен полет на квота, избор на P2C акаунт |
1076
+ | 🔒 **Сигурност и съответствие** | 20+ | SSRF укрепване, прикриване на идентификационни данни, ограничение на скоростта за крайна точка, обхват на ключ за управление |
1077
+ | 📊 **Наблюдаемост** | 15+ | OpenTelemetry интеграция, мониторинг на квоти в реално време, проследяване на разходите за модел |
1078
+ | 🔄 **Интеграции на доставчици** | 20+ | Регистър на динамичен модел, изчакване на доставчика, Codex за множество акаунти, анализ на квота на Copilot |
1079
+ | ⚡ **Изпълнение** | 15+ | Слой с двоен кеш, кеш за подкани, кеш за отговор, поддържане на активността при поточно предаване, партиден API |
1080
+ | 🌐 **Екосистема** | 10+ | WebSocket API, горещо презареждане на конфигурация, разпределено хранилище за конфигурация, търговски режим |
1081
+
1082
+ ### 🔜 Очаквайте скоро
1083
+
1084
+ - 🔗 **OpenCode Integration** — Поддръжка на родния доставчик за IDE за кодиране OpenCode AI
1085
+ - 🔗 **TRAE Integration** — Пълна поддръжка за рамката за разработка на TRAE AI
1086
+ - 📦 **Batch API** — Асинхронна групова обработка за групови заявки
1087
+ - 🎯 **Маршрутизиране на базата на етикети** — Маршрутизирайте заявки въз основа на персонализирани тагове и метаданни
1088
+ - 💰 **Стратегия с най-ниска цена** — Автоматично изберете най-евтиния наличен доставчик
1089
+
1090
+ > 📝 Пълните спецификации на функциите са налични в [link](docs/new-features/) (217 подробни спецификации)
1091
+
1092
+ ---
1093
+
1094
+ ## 📧 Поддръжка
1095
+
1096
+ > 💬 **Присъединете се към нашата общност!** [WhatsApp Group](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) — Получете помощ, споделете съвети и бъдете в течение.
1097
+
1098
+ - **Уебсайт**: [omniroute.online](https://omniroute.online)
1099
+ - **GitHub**: [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute)
1100
+ - **Проблеми**: [github.com/diegosouzapw/OmniRoute/issues](https://github.com/diegosouzapw/OmniRoute/issues)
1101
+ - **WhatsApp**: [Community Group](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t)
1102
+ - **Оригинален проект**: [9router by decolua](https://github.com/decolua/9router)
1103
+
1104
+ ---
1105
+
1106
+ ## 👥 Сътрудници
1107
+
1108
+ [![Contributors](https://contrib.rocks/image?repo=diegosouzapw/OmniRoute&max=100&columns=20&anon=1)](https://github.com/diegosouzapw/OmniRoute/graphs/contributors)
1109
+
1110
+ ### Как да допринесете
1111
+
1112
+ 1. Разклонете хранилището
1113
+ 2. Създайте свой клон на функции (`git checkout -b feature/amazing-feature`)
1114
+ 3. Задайте вашите промени (`git commit -m 'Add amazing feature'`)
1115
+ 4. Натиснете до клона (`git push origin feature/amazing-feature`)
1116
+ 5. Отворете заявка за изтегляне
1117
+
1118
+ Вижте [CONTRIBUTING.md](CONTRIBUTING.md) за подробни насоки.
1119
+
1120
+ ### Пускане на нова версия
1121
+
1122
+ ```bash
1123
+ # Create a release — npm publish happens automatically
1124
+ gh release create v1.0.6 --title "v1.0.6" --generate-notes
1125
+ ```
1126
+
1127
+ ---
1128
+
1129
+ ## 📊 Звездна история
1130
+
1131
+ <a href="https://star-history.com/#diegosouzapw/OmniRoute&Date">
1132
+ <picture>
1133
+ <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=diegosouzapw/OmniRoute&type=Date&theme=dark" />
1134
+ <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=diegosouzapw/OmniRoute&type=Date" />
1135
+ <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=diegosouzapw/OmniRoute&type=Date" />
1136
+ </picture>
1137
+ </a>
1138
+
1139
+ ---
1140
+
1141
+ ## 🙏 Благодарности
1142
+
1143
+ Специални благодарности на **[9router](https://github.com/decolua/9router)** от **[decolua](https://github.com/decolua)** — оригиналният проект, който вдъхнови това разклонение. OmniRoute се основава на тази невероятна основа с допълнителни функции, мултимодални API и пълно пренаписване на TypeScript.
1144
+
1145
+ Специални благодарности на **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** — оригиналната реализация на Go, която вдъхнови този JavaScript порт.
1146
+
1147
+ ---
1148
+
1149
+ ## 📄 Лиценз
1150
+
1151
+ Лиценз на MIT – вижте [LICENSE](LICENSE) за подробности.
1152
+
1153
+ ---
1154
+
1155
+ ---
1156
+
1157
+ ## 🇧🇷 OmniRoute — Gateway de IA Gratuito
1158
+
1159
+ <a name="-omniroute--gateway-de-ia-gratuito"></a>
1160
+
1161
+ ### Nunca pare de codar. Roteamento inteligente para **modelos de IA GRATUITOS e de baixo custo** com резервен автоматичен.
1162
+
1163
+ _Seu прокси универсален API — um крайна точка, 36+ доставчици, нулев престой._
1164
+
1165
+ ### 🌐 Internacionalização (i18n)
1166
+
1167
+ Таблото за управление на OmniRoute поддържа **múltiplos idiomas**. Актуално налични:
1168
+
1169
+ | идиома | Código | Статус |
1170
+ | ------------------------- | ------- | ------------ |
1171
+ | 🇺🇸 английски | `en` | ✅ Завършено |
1172
+ | 🇧🇷 португалски (Бразилия) | `pt-BR` | ✅ Завършено |
1173
+
1174
+ **Параметр на трокар или идиома:** Кликнете без избор на идиома (🇺🇸 EN) без заглавка в таблото за управление → избор или избран идиома.
1175
+
1176
+ **Para adicionar um new idioma:**
1177
+
1178
+ 1. Извикайте `src/i18n/messages/{codigo}.json` базирано на `en.json`
1179
+ 2. Добавете кода към `src/i18n/config.ts` → `LOCALES` и `LANGUAGES`
1180
+ 3. Reinicie или сървър
1181
+
1182
+ ### ⚡ Início Rápido
1183
+
1184
+ ```bash
1185
+ # Instalar via npm
1186
+ npx omniroute@latest
1187
+
1188
+ # Ou rodar do código-fonte
1189
+ cp .env.example .env
1190
+ npm install
1191
+ PORT=20128 NEXT_PUBLIC_BASE_URL=http://localhost:20128 npm run dev
1192
+ ```
1193
+
1194
+ ### 🐳 Докер
1195
+
1196
+ ```bash
1197
+ docker run -d --name omniroute -p 20128:20128 diegosouzapw/omniroute:latest
1198
+ ```
1199
+
1200
+ ### 🔑 Funcionalidades Principais
1201
+
1202
+ - **36+ доставчици на IA** — Claude, GPT, Gemini, Llama, Qwen, DeepSeek и други
1203
+ - **Roteamento inteligente** — Резервни автоматични агенти
1204
+ - **Tradução de formato** — OpenAI ↔ Claude ↔ Gemini automaticamente
1205
+ - **Multi-conta** — Múltiplas contas por provedor com seleção inteligente
1206
+ - **Cache semântico** — Reduz custos e latência
1207
+ - **Автоматичен OAuth** — Автоматично обновяване на токени
1208
+ - **Combos personalizados** — 6 estratégias de roteamento
1209
+ - **Пълно табло** — Мониторинг, регистрационни файлове, анализи, конфигуриране
1210
+ - **CLI инструменти** — Конфигуриране на Claude Code, Codex, Cursor, Cline com um clique
1211
+ - **100% TypeScript** — Лимпо и тип код
1212
+
1213
+ ### 📖 Documentação
1214
+
1215
+ | Документ | Описание |
1216
+ | ----------------------------------------------- | --------------------------------------- |
1217
+ | [Guia do Usuário](docs/USER_GUIDE.md) | Доставчици, комбинации, CLI, внедряване |
1218
+ | [Referência da API](docs/API_REFERENCE.md) | Всички крайни точки с примери |
1219
+ | [Solução de Problemas](docs/TROUBLESHOOTING.md) | Общи проблеми и решения |
1220
+ | [Arquitetura](docs/ARCHITECTURE.md) | Архитектура и вътрешна система |
1221
+ | [Contribuição](CONTRIBUTING.md) | Setup de desenvolvimento e guidelines |
1222
+ | [Deploy em VM](docs/VM_DEPLOYMENT_GUIDE.md) | Пълна версия: VM + nginx + Cloudflare |
1223
+
1224
+ ### 📧 Подкрепете
1225
+
1226
+ > 💬 **Entre para a comunidade!** [Grupo WhatsApp](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) — Двойни гуми, компартилхе дикас и актуализация на фик.
1227
+
1228
+ - **Уебсайт**: [omniroute.online](https://omniroute.online)
1229
+ - **GitHub**: [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute)
1230
+ - **Проблеми**: [github.com/diegosouzapw/OmniRoute/issues](https://github.com/diegosouzapw/OmniRoute/issues)
1231
+
1232
+ ---
1233
+
1234
+ <div align="center">
1235
+ <sub>Създаден с ❤️ за разработчици, които кодират 24/7</sub>
1236
+ <br/>
1237
+ <sub><a href="https://omniroute.online">omniroute.online</a></sub>
1238
+ </div>