omniroute 0.9.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.de.md +5 -5
- package/README.es.md +5 -5
- package/README.fr.md +5 -5
- package/README.it.md +5 -5
- package/README.md +71 -18
- package/README.pt-BR.md +69 -16
- package/README.ru.md +5 -5
- package/README.zh-CN.md +5 -5
- package/app/.next/BUILD_ID +1 -1
- package/app/.next/app-path-routes-manifest.json +33 -30
- package/app/.next/build-manifest.json +2 -2
- package/app/.next/prerender-manifest.json +3 -3
- package/app/.next/routes-manifest.json +18 -0
- package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/page.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/translator/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_global-error.html +2 -2
- package/app/.next/server/app/_global-error.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_not-found.html +1 -1
- package/app/.next/server/app/_not-found.rsc +3 -3
- package/app/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/app/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/app/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cache/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cache/stats/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/backups/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/backups/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/claude-settings/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/cline-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/codex-profiles/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/codex-profiles/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/codex-settings/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/droid-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/kilo-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/status/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/status/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cloud/auth/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cloud/credentials/update/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cloud/model/resolve/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cloud/models/alias/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/combos/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/combos/metrics/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/combos/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/combos/test/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/compliance/audit-log/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/db-backups/export/route.js +1 -0
- package/app/.next/server/app/api/db-backups/export/route.js.nft.json +1 -0
- package/app/.next/server/app/api/db-backups/export/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/db-backups/exportAll/route.js +1 -0
- package/app/.next/server/app/api/db-backups/exportAll/route.js.nft.json +1 -0
- package/app/.next/server/app/api/db-backups/exportAll/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/db-backups/import/route.js +1 -0
- package/app/.next/server/app/api/db-backups/import/route.js.nft.json +1 -0
- package/app/.next/server/app/api/db-backups/import/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/db-backups/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/evals/[suiteId]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/evals/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/fallback/chains/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/keys/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/keys/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/models/alias/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/models/availability/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/models/catalog/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/models/route.js +1 -1
- package/app/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/monitoring/health/route.js +1 -1
- package/app/.next/server/app/api/monitoring/health/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/[provider]/[action]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/cursor/auto-import/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/cursor/import/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/auto-import/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/import/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/social-authorize/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/social-exchange/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/policies/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/pricing/defaults/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/pricing/models/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/pricing/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/provider-metrics/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/provider-models/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/provider-nodes/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/provider-nodes/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/provider-nodes/validate/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/[id]/models/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/[id]/test/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/client/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/route.js +1 -1
- package/app/.next/server/app/api/providers/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/test-batch/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/validate/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/rate-limit/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/rate-limits/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/resilience/reset/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/resilience/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/restart/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/combo-defaults/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/ip-filter/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/proxy/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/proxy/test/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/require-login/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/system-prompt/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/thinking-budget/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/storage/health/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/sync/cloud/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/sync/initialize/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/tags/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/telemetry/summary/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/token-health/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/translator/detect/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/translator/history/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/translator/load/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/translator/save/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/translator/send/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/translator/translate/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/[connectionId]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/analytics/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/budget/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/call-logs/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/call-logs/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/history/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/logs/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/proxy-logs/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/request-logs/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/api/chat/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/audio/speech/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/audio/transcriptions/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/chat/completions/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/embeddings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/images/generations/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/messages/count_tokens/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/messages/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/models/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/moderations/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/rerank/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/responses/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1beta/models/[...path]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1beta/models/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/callback.html +1 -1
- package/app/.next/server/app/callback.rsc +3 -3
- package/app/.next/server/app/callback.segments/_full.segment.rsc +3 -3
- package/app/.next/server/app/callback.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/callback.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/callback.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/callback.segments/callback.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/analytics.html +1 -1
- package/app/.next/server/app/dashboard/analytics.rsc +5 -5
- package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/analytics.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/analytics.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/analytics.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/analytics.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/cli-tools.html +1 -1
- package/app/.next/server/app/dashboard/cli-tools.rsc +5 -5
- package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/cli-tools.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/cli-tools.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/combos.html +1 -1
- package/app/.next/server/app/dashboard/combos.rsc +5 -5
- package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/combos.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/combos.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/costs.html +1 -1
- package/app/.next/server/app/dashboard/costs.rsc +5 -5
- package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk/dashboard/costs/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk/dashboard/costs.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/costs.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/costs.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/costs.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/costs.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/endpoint.html +1 -1
- package/app/.next/server/app/dashboard/endpoint.rsc +5 -5
- package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/endpoint.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/endpoint.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/health.html +1 -1
- package/app/.next/server/app/dashboard/health.rsc +5 -5
- package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk/dashboard/health/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk/dashboard/health.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/health.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/health.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/health.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/health.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/limits.html +2 -2
- package/app/.next/server/app/dashboard/limits.rsc +5 -5
- package/app/.next/server/app/dashboard/limits.segments/!KGRhc2hib2FyZCk/dashboard/limits/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/limits.segments/!KGRhc2hib2FyZCk/dashboard/limits.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/limits.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/limits.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/limits.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/limits.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/limits.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/limits.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/onboarding.html +1 -1
- package/app/.next/server/app/dashboard/onboarding.rsc +4 -4
- package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk/dashboard/onboarding/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk/dashboard/onboarding.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/onboarding.segments/_full.segment.rsc +4 -4
- package/app/.next/server/app/dashboard/onboarding.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/onboarding.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/onboarding.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/profile.html +1 -1
- package/app/.next/server/app/dashboard/profile.rsc +4 -4
- package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/profile.segments/_full.segment.rsc +4 -4
- package/app/.next/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/profile.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/providers/new.html +1 -1
- package/app/.next/server/app/dashboard/providers/new.rsc +5 -5
- package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/providers/new.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers/new.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/providers.html +1 -1
- package/app/.next/server/app/dashboard/providers.rsc +5 -5
- package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/providers.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/providers.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.rsc +4 -4
- package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
- package/app/.next/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/settings.html +1 -1
- package/app/.next/server/app/dashboard/settings.rsc +5 -5
- package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/settings.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/settings.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/settings.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/settings.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/translator.html +2 -2
- package/app/.next/server/app/dashboard/translator.rsc +5 -5
- package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/translator.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/translator.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/usage.html +1 -1
- package/app/.next/server/app/dashboard/usage.rsc +5 -5
- package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next/server/app/dashboard/usage.segments/_full.segment.rsc +5 -5
- package/app/.next/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/dashboard/usage.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/docs/page.js +1 -1
- package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/docs.html +1 -1
- package/app/.next/server/app/docs.rsc +3 -3
- package/app/.next/server/app/docs.segments/_full.segment.rsc +3 -3
- package/app/.next/server/app/docs.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/docs.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/docs.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/docs.segments/docs.segment.rsc +1 -1
- package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forbidden.html +1 -1
- package/app/.next/server/app/forbidden.rsc +3 -3
- package/app/.next/server/app/forbidden.segments/_full.segment.rsc +3 -3
- package/app/.next/server/app/forbidden.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/forbidden.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/forbidden.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/forbidden.segments/forbidden/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/forbidden.segments/forbidden.segment.rsc +1 -1
- package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forgot-password.html +1 -1
- package/app/.next/server/app/forgot-password.rsc +4 -4
- package/app/.next/server/app/forgot-password.segments/_full.segment.rsc +4 -4
- package/app/.next/server/app/forgot-password.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/forgot-password.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/forgot-password.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/forgot-password.segments/forgot-password/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/forgot-password.segments/forgot-password.segment.rsc +1 -1
- package/app/.next/server/app/index.html +1 -1
- package/app/.next/server/app/index.rsc +3 -3
- package/app/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/app/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/index.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/landing.html +1 -1
- package/app/.next/server/app/landing.rsc +3 -3
- package/app/.next/server/app/landing.segments/_full.segment.rsc +3 -3
- package/app/.next/server/app/landing.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/landing.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/landing.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/landing.segments/landing.segment.rsc +1 -1
- package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/login.html +1 -1
- package/app/.next/server/app/login.rsc +4 -4
- package/app/.next/server/app/login.segments/_full.segment.rsc +4 -4
- package/app/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/login.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/login.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/app/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/app/.next/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/privacy.html +1 -1
- package/app/.next/server/app/privacy.rsc +3 -3
- package/app/.next/server/app/privacy.segments/_full.segment.rsc +3 -3
- package/app/.next/server/app/privacy.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/privacy.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/privacy.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/privacy.segments/privacy/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/privacy.segments/privacy.segment.rsc +1 -1
- package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/terms.html +1 -1
- package/app/.next/server/app/terms.rsc +3 -3
- package/app/.next/server/app/terms.segments/_full.segment.rsc +3 -3
- package/app/.next/server/app/terms.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/terms.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/terms.segments/_tree.segment.rsc +2 -2
- package/app/.next/server/app/terms.segments/terms/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/terms.segments/terms.segment.rsc +1 -1
- package/app/.next/server/app-paths-manifest.json +33 -30
- package/app/.next/server/chunks/5583.js +1 -1
- package/app/.next/server/chunks/9824.js +1 -1
- package/app/.next/server/pages/404.html +1 -1
- package/app/.next/server/pages/500.html +2 -2
- package/app/.next/server/server-reference-manifest.js +1 -1
- package/app/.next/server/server-reference-manifest.json +1 -1
- package/app/.next/static/chunks/{5846-0541241939d8c7e3.js → 5846-dfe52e95348ffdd8.js} +1 -1
- package/app/.next/static/chunks/{993-b74bac8c882e8d1a.js → 993-5102e3fd1db64935.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/profile/page-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-cdc5fc5dfecc1047.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/{page-efca884c20a509a4.js → page-775e1506821cac94.js} +2 -2
- package/app/.next/static/chunks/app/_global-error/page-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/_not-found/page-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/auth/login/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/auth/logout/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cache/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cache/stats/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/backups/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/cline-settings/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/codex-profiles/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/guide-settings/[toolId]/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/kilo-settings/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/runtime/[toolId]/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/status/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/auth/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/credentials/update/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/model/resolve/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/models/alias/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/combos/[id]/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/combos/metrics/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/combos/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/combos/test/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/compliance/audit-log/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/db-backups/export/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/db-backups/exportAll/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/db-backups/import/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/db-backups/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/evals/[suiteId]/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/evals/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/fallback/chains/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/init/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/keys/[id]/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/keys/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/models/alias/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/models/availability/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/models/catalog/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/models/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/monitoring/health/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/cursor/import/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/import/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/policies/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/pricing/defaults/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/pricing/models/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/pricing/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/provider-metrics/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/provider-models/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/validate/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/models/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/test/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/providers/client/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/providers/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/providers/test-batch/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/providers/validate/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/rate-limit/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/rate-limits/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/resilience/reset/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/resilience/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/restart/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/sessions/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/settings/combo-defaults/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/settings/ip-filter/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/settings/proxy/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/settings/proxy/test/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/settings/require-login/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/settings/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/settings/system-prompt/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/settings/thinking-budget/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/shutdown/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/storage/health/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/sync/cloud/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/sync/initialize/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/tags/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/telemetry/summary/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/token-health/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/translator/detect/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/translator/history/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/translator/load/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/translator/save/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/translator/send/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/translator/translate/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/usage/[connectionId]/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/usage/analytics/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/usage/budget/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/usage/call-logs/[id]/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/usage/call-logs/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/usage/history/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/usage/logs/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/usage/proxy-logs/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/usage/request-logs/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/api/chat/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/audio/speech/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/chat/completions/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/embeddings/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/images/generations/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/messages/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/models/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/moderations/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/chat/completions/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/embeddings/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/images/generations/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/rerank/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/responses/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/api/v1beta/models/route-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/app/page-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-58b169603fdf1d6f.js +1 -0
- package/app/.next/static/css/{1c99dc691f001331.css → 99e359b9e40091af.css} +1 -1
- package/app/.next/static/mo3wTjoSYKP1E96Wu512B/_buildManifest.js +1 -0
- package/app/package.json +2 -2
- package/package.json +2 -2
- package/app/.next/static/8ACUE6hz9uxBNe_Q_ZH6y/_buildManifest.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/profile/page-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-038687bc5d2c3bb5.js +0 -1
- package/app/.next/static/chunks/app/_global-error/page-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/_not-found/page-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/auth/login/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/auth/logout/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cache/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cache/stats/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/backups/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/cline-settings/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/codex-profiles/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/guide-settings/[toolId]/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/kilo-settings/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/runtime/[toolId]/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/status/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/auth/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/credentials/update/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/model/resolve/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/models/alias/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/combos/[id]/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/combos/metrics/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/combos/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/combos/test/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/compliance/audit-log/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/db-backups/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/evals/[suiteId]/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/evals/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/fallback/chains/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/init/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/keys/[id]/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/keys/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/models/alias/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/models/availability/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/models/catalog/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/models/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/monitoring/health/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/cursor/import/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/import/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/policies/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/pricing/defaults/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/pricing/models/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/pricing/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/provider-metrics/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/provider-models/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/validate/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/models/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/test/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/providers/client/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/providers/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/providers/test-batch/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/providers/validate/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/rate-limit/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/rate-limits/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/resilience/reset/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/resilience/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/restart/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/sessions/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/settings/combo-defaults/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/settings/ip-filter/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/settings/proxy/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/settings/proxy/test/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/settings/require-login/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/settings/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/settings/system-prompt/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/settings/thinking-budget/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/shutdown/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/storage/health/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/sync/cloud/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/sync/initialize/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/tags/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/telemetry/summary/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/token-health/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/translator/detect/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/translator/history/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/translator/load/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/translator/save/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/translator/send/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/translator/translate/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/usage/[connectionId]/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/usage/analytics/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/usage/budget/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/usage/call-logs/[id]/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/usage/call-logs/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/usage/history/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/usage/logs/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/usage/proxy-logs/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/usage/request-logs/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/api/chat/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/audio/speech/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/chat/completions/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/embeddings/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/images/generations/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/messages/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/models/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/moderations/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/chat/completions/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/embeddings/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/images/generations/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/rerank/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/responses/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/api/v1beta/models/route-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/app/page-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-9dc1eebb90668f5a.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-9dc1eebb90668f5a.js +0 -1
- /package/app/.next/static/{8ACUE6hz9uxBNe_Q_ZH6y → mo3wTjoSYKP1E96Wu512B}/_ssgManifest.js +0 -0
package/README.de.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<div align="center">
|
|
2
|
-
<img src="./
|
|
2
|
+
<img src="./docs/screenshots/MainOmniRoute.png" alt="OmniRoute Dashboard" width="800"/>
|
|
3
3
|
|
|
4
4
|
# 🚀 OmniRoute — Das kostenlose AI-Gateway
|
|
5
5
|
|
|
@@ -242,7 +242,7 @@ docker compose --profile cli up -d
|
|
|
242
242
|
| Image | Tag | Größe | Beschreibung |
|
|
243
243
|
| ------------------------ | -------- | ------ | ------------------------ |
|
|
244
244
|
| `diegosouzapw/omniroute` | `latest` | ~250MB | Letztes stabiles Release |
|
|
245
|
-
| `diegosouzapw/omniroute` | `0.
|
|
245
|
+
| `diegosouzapw/omniroute` | `1.0.0` | ~250MB | Aktuelle Version |
|
|
246
246
|
|
|
247
247
|
---
|
|
248
248
|
|
|
@@ -892,7 +892,7 @@ Das vorgeladene „OmniRoute Golden Set" enthält 10 Testfälle:
|
|
|
892
892
|
**Verbindungstest zeigt „Invalid" für OpenAI-kompatible Anbieter**
|
|
893
893
|
|
|
894
894
|
- Viele Anbieter stellen den `/models` Endpoint nicht bereit
|
|
895
|
-
- OmniRoute
|
|
895
|
+
- OmniRoute v1.0.0+ enthält Fallback-Validierung via Chat Completions
|
|
896
896
|
- Stelle sicher, dass die Base URL den `/v1` Suffix enthält
|
|
897
897
|
|
|
898
898
|
</details>
|
|
@@ -902,7 +902,7 @@ Das vorgeladene „OmniRoute Golden Set" enthält 10 Testfälle:
|
|
|
902
902
|
## 🛠️ Technologie-Stack
|
|
903
903
|
|
|
904
904
|
- **Runtime**: Node.js 20+
|
|
905
|
-
- **Sprache**: TypeScript 5.9 — **100% TypeScript** in `src/` und `open-sse/` (
|
|
905
|
+
- **Sprache**: TypeScript 5.9 — **100% TypeScript** in `src/` und `open-sse/` (v1.0.0)
|
|
906
906
|
- **Framework**: Next.js 16 + React 19 + Tailwind CSS 4
|
|
907
907
|
- **Datenbank**: LowDB (JSON) + SQLite (Domain-Status + Proxy-Logs)
|
|
908
908
|
- **Streaming**: Server-Sent Events (SSE)
|
|
@@ -957,7 +957,7 @@ Siehe [CONTRIBUTING.md](CONTRIBUTING.md) für detaillierte Richtlinien.
|
|
|
957
957
|
|
|
958
958
|
```bash
|
|
959
959
|
# Release erstellen — npm-Veröffentlichung erfolgt automatisch
|
|
960
|
-
gh release create
|
|
960
|
+
gh release create v1.0.0 --title "v1.0.0" --generate-notes
|
|
961
961
|
```
|
|
962
962
|
|
|
963
963
|
---
|
package/README.es.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<div align="center">
|
|
2
|
-
<img src="./
|
|
2
|
+
<img src="./docs/screenshots/MainOmniRoute.png" alt="OmniRoute Dashboard" width="800"/>
|
|
3
3
|
|
|
4
4
|
# 🚀 OmniRoute — El Gateway de IA Gratuito
|
|
5
5
|
|
|
@@ -242,7 +242,7 @@ docker compose --profile cli up -d
|
|
|
242
242
|
| Imagen | Tag | Tamaño | Descripción |
|
|
243
243
|
| ------------------------ | -------- | ------ | ---------------------- |
|
|
244
244
|
| `diegosouzapw/omniroute` | `latest` | ~250MB | Última versión estable |
|
|
245
|
-
| `diegosouzapw/omniroute` | `0.
|
|
245
|
+
| `diegosouzapw/omniroute` | `1.0.0` | ~250MB | Versión actual |
|
|
246
246
|
|
|
247
247
|
---
|
|
248
248
|
|
|
@@ -892,7 +892,7 @@ El "OmniRoute Golden Set" precargado contiene 10 casos de prueba que cubren:
|
|
|
892
892
|
**Prueba de conexión muestra "Invalid" para proveedores compatibles con OpenAI**
|
|
893
893
|
|
|
894
894
|
- Muchos proveedores no exponen el endpoint `/models`
|
|
895
|
-
- OmniRoute
|
|
895
|
+
- OmniRoute v1.0.0+ incluye validación vía chat completions como fallback
|
|
896
896
|
- Asegúrate de que la URL base incluya el sufijo `/v1`
|
|
897
897
|
|
|
898
898
|
</details>
|
|
@@ -902,7 +902,7 @@ El "OmniRoute Golden Set" precargado contiene 10 casos de prueba que cubren:
|
|
|
902
902
|
## 🛠️ Stack Tecnológico
|
|
903
903
|
|
|
904
904
|
- **Runtime**: Node.js 20+
|
|
905
|
-
- **Lenguaje**: TypeScript 5.9 — **100% TypeScript** en `src/` y `open-sse/` (
|
|
905
|
+
- **Lenguaje**: TypeScript 5.9 — **100% TypeScript** en `src/` y `open-sse/` (v1.0.0)
|
|
906
906
|
- **Framework**: Next.js 16 + React 19 + Tailwind CSS 4
|
|
907
907
|
- **Base de Datos**: LowDB (JSON) + SQLite (estado del dominio + logs de proxy)
|
|
908
908
|
- **Streaming**: Server-Sent Events (SSE)
|
|
@@ -957,7 +957,7 @@ Consulta [CONTRIBUTING.md](CONTRIBUTING.md) para directrices detalladas.
|
|
|
957
957
|
|
|
958
958
|
```bash
|
|
959
959
|
# Crea un release — la publicación en npm ocurre automáticamente
|
|
960
|
-
gh release create
|
|
960
|
+
gh release create v1.0.0 --title "v1.0.0" --generate-notes
|
|
961
961
|
```
|
|
962
962
|
|
|
963
963
|
---
|
package/README.fr.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<div align="center">
|
|
2
|
-
<img src="./
|
|
2
|
+
<img src="./docs/screenshots/MainOmniRoute.png" alt="OmniRoute Dashboard" width="800"/>
|
|
3
3
|
|
|
4
4
|
# 🚀 OmniRoute — La Passerelle IA Gratuite
|
|
5
5
|
|
|
@@ -242,7 +242,7 @@ docker compose --profile cli up -d
|
|
|
242
242
|
| Image | Tag | Taille | Description |
|
|
243
243
|
| ------------------------ | -------- | ------ | ----------------------- |
|
|
244
244
|
| `diegosouzapw/omniroute` | `latest` | ~250MB | Dernière version stable |
|
|
245
|
-
| `diegosouzapw/omniroute` | `0.
|
|
245
|
+
| `diegosouzapw/omniroute` | `1.0.0` | ~250MB | Version actuelle |
|
|
246
246
|
|
|
247
247
|
---
|
|
248
248
|
|
|
@@ -892,7 +892,7 @@ Le « OmniRoute Golden Set » préchargé contient 10 cas de test :
|
|
|
892
892
|
**Le test de connexion affiche « Invalid » pour les fournisseurs compatibles OpenAI**
|
|
893
893
|
|
|
894
894
|
- Beaucoup de fournisseurs n'exposent pas le point de terminaison `/models`
|
|
895
|
-
- OmniRoute
|
|
895
|
+
- OmniRoute v1.0.0+ inclut une validation de secours via chat completions
|
|
896
896
|
- Assurez-vous que l'URL de base inclut le suffixe `/v1`
|
|
897
897
|
|
|
898
898
|
</details>
|
|
@@ -902,7 +902,7 @@ Le « OmniRoute Golden Set » préchargé contient 10 cas de test :
|
|
|
902
902
|
## 🛠️ Stack technologique
|
|
903
903
|
|
|
904
904
|
- **Runtime** : Node.js 20+
|
|
905
|
-
- **Langage** : TypeScript 5.9 — **100% TypeScript** dans `src/` et `open-sse/` (
|
|
905
|
+
- **Langage** : TypeScript 5.9 — **100% TypeScript** dans `src/` et `open-sse/` (v1.0.0)
|
|
906
906
|
- **Framework** : Next.js 16 + React 19 + Tailwind CSS 4
|
|
907
907
|
- **Base de données** : LowDB (JSON) + SQLite (état du domaine + logs proxy)
|
|
908
908
|
- **Streaming** : Server-Sent Events (SSE)
|
|
@@ -957,7 +957,7 @@ Consultez [CONTRIBUTING.md](CONTRIBUTING.md) pour les directives détaillées.
|
|
|
957
957
|
|
|
958
958
|
```bash
|
|
959
959
|
# Créer un release — la publication npm est automatique
|
|
960
|
-
gh release create
|
|
960
|
+
gh release create v1.0.0 --title "v1.0.0" --generate-notes
|
|
961
961
|
```
|
|
962
962
|
|
|
963
963
|
---
|
package/README.it.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<div align="center">
|
|
2
|
-
<img src="./
|
|
2
|
+
<img src="./docs/screenshots/MainOmniRoute.png" alt="OmniRoute Dashboard" width="800"/>
|
|
3
3
|
|
|
4
4
|
# 🚀 OmniRoute — Il Gateway IA Gratuito
|
|
5
5
|
|
|
@@ -242,7 +242,7 @@ docker compose --profile cli up -d
|
|
|
242
242
|
| Immagine | Tag | Dimensione | Descrizione |
|
|
243
243
|
| ------------------------ | -------- | ---------- | ----------------------- |
|
|
244
244
|
| `diegosouzapw/omniroute` | `latest` | ~250MB | Ultima versione stabile |
|
|
245
|
-
| `diegosouzapw/omniroute` | `0.
|
|
245
|
+
| `diegosouzapw/omniroute` | `1.0.0` | ~250MB | Versione attuale |
|
|
246
246
|
|
|
247
247
|
---
|
|
248
248
|
|
|
@@ -892,7 +892,7 @@ Il "OmniRoute Golden Set" precaricato contiene 10 casi di test:
|
|
|
892
892
|
**Il test di connessione mostra "Invalid" per provider compatibili OpenAI**
|
|
893
893
|
|
|
894
894
|
- Molti provider non espongono l'endpoint `/models`
|
|
895
|
-
- OmniRoute
|
|
895
|
+
- OmniRoute v1.0.0+ include validazione fallback tramite chat completions
|
|
896
896
|
- Assicurati che la URL base includa il suffisso `/v1`
|
|
897
897
|
|
|
898
898
|
</details>
|
|
@@ -902,7 +902,7 @@ Il "OmniRoute Golden Set" precaricato contiene 10 casi di test:
|
|
|
902
902
|
## 🛠️ Stack Tecnologico
|
|
903
903
|
|
|
904
904
|
- **Runtime**: Node.js 20+
|
|
905
|
-
- **Linguaggio**: TypeScript 5.9 — **100% TypeScript** in `src/` e `open-sse/` (
|
|
905
|
+
- **Linguaggio**: TypeScript 5.9 — **100% TypeScript** in `src/` e `open-sse/` (v1.0.0)
|
|
906
906
|
- **Framework**: Next.js 16 + React 19 + Tailwind CSS 4
|
|
907
907
|
- **Database**: LowDB (JSON) + SQLite (stato dominio + log proxy)
|
|
908
908
|
- **Streaming**: Server-Sent Events (SSE)
|
|
@@ -957,7 +957,7 @@ Consulta [CONTRIBUTING.md](CONTRIBUTING.md) per le linee guida dettagliate.
|
|
|
957
957
|
|
|
958
958
|
```bash
|
|
959
959
|
# Crea un rilascio — la pubblicazione npm avviene automaticamente
|
|
960
|
-
gh release create
|
|
960
|
+
gh release create v1.0.0 --title "v1.0.0" --generate-notes
|
|
961
961
|
```
|
|
962
962
|
|
|
963
963
|
---
|
package/README.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<div align="center">
|
|
2
|
-
<img src="./
|
|
2
|
+
<img src="./docs/screenshots/MainOmniRoute.png" alt="OmniRoute Dashboard" width="800"/>
|
|
3
3
|
|
|
4
4
|
# 🚀 OmniRoute — The Free AI Gateway
|
|
5
5
|
|
|
@@ -242,7 +242,7 @@ docker compose --profile cli up -d
|
|
|
242
242
|
| Image | Tag | Size | Description |
|
|
243
243
|
| ------------------------ | -------- | ------ | --------------------- |
|
|
244
244
|
| `diegosouzapw/omniroute` | `latest` | ~250MB | Latest stable release |
|
|
245
|
-
| `diegosouzapw/omniroute` | `0.
|
|
245
|
+
| `diegosouzapw/omniroute` | `1.0.0` | ~250MB | Current version |
|
|
246
246
|
|
|
247
247
|
---
|
|
248
248
|
|
|
@@ -396,7 +396,7 @@ Access via: WhatsApp, Telegram, Slack, Discord, iMessage, Signal...
|
|
|
396
396
|
| 🔑 **API Key Management** | Generate, rotate, and scope API keys per provider |
|
|
397
397
|
| 🧙 **Onboarding Wizard** | 4-step guided setup for first-time users |
|
|
398
398
|
| 🔧 **CLI Tools Dashboard** | One-click configure Claude, Codex, Cline, OpenClaw, Kilo, Antigravity |
|
|
399
|
-
| 🔄 **DB Backups** | Automatic backup
|
|
399
|
+
| 🔄 **DB Backups** | Automatic backup, restore, export & import for all settings |
|
|
400
400
|
|
|
401
401
|
<details>
|
|
402
402
|
<summary><b>📖 Feature Details</b></summary>
|
|
@@ -459,9 +459,16 @@ Seamless translation between formats:
|
|
|
459
459
|
|
|
460
460
|
### 🔧 Translator Playground
|
|
461
461
|
|
|
462
|
-
-
|
|
463
|
-
|
|
464
|
-
|
|
462
|
+
OmniRoute includes a powerful built-in Translator Playground with **4 modes** for debugging, testing, and monitoring API translations:
|
|
463
|
+
|
|
464
|
+
| Mode | Description |
|
|
465
|
+
| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
466
|
+
| **💻 Playground** | Direct format translation — paste any API request body and instantly see how OmniRoute translates it between provider formats (OpenAI ↔ Claude ↔ Gemini ↔ Responses API). Includes example templates and format auto-detection. |
|
|
467
|
+
| **💬 Chat Tester** | Send real chat requests through OmniRoute and see the full round-trip: your input, the translated request, the provider response, and the translated response back. Invaluable for validating combo routing. |
|
|
468
|
+
| **🧪 Test Bench** | Batch testing mode — define multiple test cases with different inputs and expected outputs, run them all at once, and compare results across providers and models. |
|
|
469
|
+
| **📱 Live Monitor** | Real-time request monitoring — watch incoming requests as they flow through OmniRoute, see format translations happening live, and identify issues instantly. |
|
|
470
|
+
|
|
471
|
+
**Access:** Dashboard → Translator (sidebar)
|
|
465
472
|
|
|
466
473
|
### 💾 Cloud Sync
|
|
467
474
|
|
|
@@ -892,7 +899,7 @@ The pre-loaded "OmniRoute Golden Set" contains 10 test cases covering:
|
|
|
892
899
|
**Connection test shows "Invalid" for OpenAI-compatible providers**
|
|
893
900
|
|
|
894
901
|
- Many providers don't expose a `/models` endpoint
|
|
895
|
-
- OmniRoute
|
|
902
|
+
- OmniRoute v1.0.0+ includes fallback validation via chat completions
|
|
896
903
|
- Ensure base URL includes `/v1` suffix
|
|
897
904
|
|
|
898
905
|
</details>
|
|
@@ -902,7 +909,7 @@ The pre-loaded "OmniRoute Golden Set" contains 10 test cases covering:
|
|
|
902
909
|
## 🛠️ Tech Stack
|
|
903
910
|
|
|
904
911
|
- **Runtime**: Node.js 20+
|
|
905
|
-
- **Language**: TypeScript 5.9 — **100% TypeScript** across `src/` and `open-sse/` (
|
|
912
|
+
- **Language**: TypeScript 5.9 — **100% TypeScript** across `src/` and `open-sse/` (v1.0.0)
|
|
906
913
|
- **Framework**: Next.js 16 + React 19 + Tailwind CSS 4
|
|
907
914
|
- **Database**: LowDB (JSON) + SQLite (domain state + proxy logs)
|
|
908
915
|
- **Streaming**: Server-Sent Events (SSE)
|
|
@@ -918,15 +925,61 @@ The pre-loaded "OmniRoute Golden Set" contains 10 test cases covering:
|
|
|
918
925
|
|
|
919
926
|
## 📖 Documentation
|
|
920
927
|
|
|
921
|
-
| Document
|
|
922
|
-
|
|
|
923
|
-
| [User Guide](docs/USER_GUIDE.md)
|
|
924
|
-
| [API Reference](docs/API_REFERENCE.md)
|
|
925
|
-
| [Troubleshooting](docs/TROUBLESHOOTING.md)
|
|
926
|
-
| [Architecture](docs/ARCHITECTURE.md)
|
|
927
|
-
| [Contributing](CONTRIBUTING.md)
|
|
928
|
-
| [OpenAPI Spec](docs/openapi.yaml)
|
|
929
|
-
| [Security Policy](SECURITY.md)
|
|
928
|
+
| Document | Description |
|
|
929
|
+
| -------------------------------------------- | ---------------------------------------------- |
|
|
930
|
+
| [User Guide](docs/USER_GUIDE.md) | Providers, combos, CLI integration, deployment |
|
|
931
|
+
| [API Reference](docs/API_REFERENCE.md) | All endpoints with examples |
|
|
932
|
+
| [Troubleshooting](docs/TROUBLESHOOTING.md) | Common problems and solutions |
|
|
933
|
+
| [Architecture](docs/ARCHITECTURE.md) | System architecture and internals |
|
|
934
|
+
| [Contributing](CONTRIBUTING.md) | Development setup and guidelines |
|
|
935
|
+
| [OpenAPI Spec](docs/openapi.yaml) | OpenAPI 3.0 specification |
|
|
936
|
+
| [Security Policy](SECURITY.md) | Vulnerability reporting and security practices |
|
|
937
|
+
| [VM Deployment](docs/VM_DEPLOYMENT_GUIDE.md) | Complete guide: VM + nginx + Cloudflare setup |
|
|
938
|
+
| [Features Gallery](docs/FEATURES.md) | Visual dashboard tour with screenshots |
|
|
939
|
+
|
|
940
|
+
### 📸 Dashboard Preview
|
|
941
|
+
|
|
942
|
+
<details>
|
|
943
|
+
<summary><b>Click to see dashboard screenshots</b></summary>
|
|
944
|
+
|
|
945
|
+
| Page | Screenshot |
|
|
946
|
+
| -------------- | ------------------------------------------------- |
|
|
947
|
+
| **Providers** |  |
|
|
948
|
+
| **Combos** |  |
|
|
949
|
+
| **Analytics** |  |
|
|
950
|
+
| **Health** |  |
|
|
951
|
+
| **Translator** |  |
|
|
952
|
+
| **Settings** |  |
|
|
953
|
+
| **CLI Tools** |  |
|
|
954
|
+
| **Usage Logs** |  |
|
|
955
|
+
| **Endpoint** |  |
|
|
956
|
+
|
|
957
|
+
</details>
|
|
958
|
+
|
|
959
|
+
---
|
|
960
|
+
|
|
961
|
+
## 🗺️ Roadmap
|
|
962
|
+
|
|
963
|
+
OmniRoute has **210+ features planned** across multiple development phases. Here are the key areas:
|
|
964
|
+
|
|
965
|
+
| Category | Planned Features | Highlights |
|
|
966
|
+
| ----------------------------- | ---------------- | -------------------------------------------------------------------------------------- |
|
|
967
|
+
| 🧠 **Routing & Intelligence** | 25+ | Lowest-latency routing, tag-based routing, quota preflight, P2C account selection |
|
|
968
|
+
| 🔒 **Security & Compliance** | 20+ | SSRF hardening, credential cloaking, rate-limit per endpoint, management key scoping |
|
|
969
|
+
| 📊 **Observability** | 15+ | OpenTelemetry integration, real-time quota monitoring, cost tracking per model |
|
|
970
|
+
| 🔄 **Provider Integrations** | 20+ | Dynamic model registry, provider cooldowns, multi-account Codex, Copilot quota parsing |
|
|
971
|
+
| ⚡ **Performance** | 15+ | Dual cache layer, prompt cache, response cache, streaming keepalive, batch API |
|
|
972
|
+
| 🌐 **Ecosystem** | 10+ | WebSocket API, config hot-reload, distributed config store, commercial mode |
|
|
973
|
+
|
|
974
|
+
### 🔜 Coming Soon
|
|
975
|
+
|
|
976
|
+
- 🔗 **OpenCode Integration** — Native provider support for the OpenCode AI coding IDE
|
|
977
|
+
- 🔗 **TRAE Integration** — Full support for the TRAE AI development framework
|
|
978
|
+
- 📦 **Batch API** — Asynchronous batch processing for bulk requests
|
|
979
|
+
- 🎯 **Tag-Based Routing** — Route requests based on custom tags and metadata
|
|
980
|
+
- 💰 **Lowest-Cost Strategy** — Automatically select the cheapest available provider
|
|
981
|
+
|
|
982
|
+
> 📝 Full feature specifications available in [`docs/new-features/`](docs/new-features/) (217 detailed specs)
|
|
930
983
|
|
|
931
984
|
---
|
|
932
985
|
|
|
@@ -957,7 +1010,7 @@ See [CONTRIBUTING.md](CONTRIBUTING.md) for detailed guidelines.
|
|
|
957
1010
|
|
|
958
1011
|
```bash
|
|
959
1012
|
# Create a release — npm publish happens automatically
|
|
960
|
-
gh release create
|
|
1013
|
+
gh release create v1.0.0 --title "v1.0.0" --generate-notes
|
|
961
1014
|
```
|
|
962
1015
|
|
|
963
1016
|
---
|
package/README.pt-BR.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<div align="center">
|
|
2
|
-
<img src="./
|
|
2
|
+
<img src="./docs/screenshots/MainOmniRoute.png" alt="OmniRoute Dashboard" width="800"/>
|
|
3
3
|
|
|
4
4
|
# 🚀 OmniRoute — O Gateway de IA Gratuito
|
|
5
5
|
|
|
@@ -242,7 +242,7 @@ docker compose --profile cli up -d
|
|
|
242
242
|
| Imagem | Tag | Tamanho | Descrição |
|
|
243
243
|
| ------------------------ | -------- | ------- | --------------------- |
|
|
244
244
|
| `diegosouzapw/omniroute` | `latest` | ~250MB | Última versão estável |
|
|
245
|
-
| `diegosouzapw/omniroute` | `0.
|
|
245
|
+
| `diegosouzapw/omniroute` | `1.0.0` | ~250MB | Versão atual |
|
|
246
246
|
|
|
247
247
|
---
|
|
248
248
|
|
|
@@ -389,14 +389,14 @@ Acesso via: WhatsApp, Telegram, Slack, Discord, iMessage, Signal...
|
|
|
389
389
|
|
|
390
390
|
### ☁️ Deploy e Sincronização
|
|
391
391
|
|
|
392
|
-
| Funcionalidade | O que Faz
|
|
393
|
-
| --------------------------------- |
|
|
394
|
-
| 💾 **Cloud Sync** | Sincronize configurações entre dispositivos via Cloudflare Workers
|
|
395
|
-
| 🌐 **Deploy em Qualquer Lugar** | Localhost, VPS, Docker, Cloudflare Workers
|
|
396
|
-
| 🔑 **Gestão de API Keys** | Gere, rotacione e defina escopo de API keys por provedor
|
|
397
|
-
| 🧙 **Assistente de Configuração** | Setup guiado em 4 etapas para novos usuários
|
|
398
|
-
| 🔧 **Dashboard CLI Tools** | Configuração em um clique para Claude, Codex, Cline, OpenClaw, Kilo, Antigravity
|
|
399
|
-
| 🔄 **Backups de DB** | Backup e
|
|
392
|
+
| Funcionalidade | O que Faz |
|
|
393
|
+
| --------------------------------- | --------------------------------------------------------------------------------- |
|
|
394
|
+
| 💾 **Cloud Sync** | Sincronize configurações entre dispositivos via Cloudflare Workers |
|
|
395
|
+
| 🌐 **Deploy em Qualquer Lugar** | Localhost, VPS, Docker, Cloudflare Workers |
|
|
396
|
+
| 🔑 **Gestão de API Keys** | Gere, rotacione e defina escopo de API keys por provedor |
|
|
397
|
+
| 🧙 **Assistente de Configuração** | Setup guiado em 4 etapas para novos usuários |
|
|
398
|
+
| 🔧 **Dashboard CLI Tools** | Configuração em um clique para Claude, Codex, Cline, OpenClaw, Kilo, Antigravity |
|
|
399
|
+
| 🔄 **Backups de DB** | Backup, restauração, exportação e importação automática de todas as configurações |
|
|
400
400
|
|
|
401
401
|
<details>
|
|
402
402
|
<summary><b>📖 Detalhes das Funcionalidades</b></summary>
|
|
@@ -459,9 +459,16 @@ Tradução transparente entre formatos:
|
|
|
459
459
|
|
|
460
460
|
### 🔧 Playground do Tradutor
|
|
461
461
|
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
462
|
+
O OmniRoute inclui um poderoso Playground de Tradução integrado com **4 modos** para debug, teste e monitoramento de traduções de API:
|
|
463
|
+
|
|
464
|
+
| Modo | Descrição |
|
|
465
|
+
| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
466
|
+
| **💻 Playground** | Tradução direta entre formatos — cole qualquer corpo de requisição e veja instantaneamente como o OmniRoute traduz entre formatos (OpenAI ↔ Claude ↔ Gemini ↔ Responses API). Inclui templates de exemplo e auto-detecção de formato. |
|
|
467
|
+
| **💬 Chat Tester** | Envie requisições reais pelo OmniRoute e veja a viagem completa: sua entrada, a requisição traduzida, a resposta do provedor, e a resposta traduzida de volta. Inestimável para validar roteamento de combos. |
|
|
468
|
+
| **🧪 Test Bench** | Modo de teste em lote — defina múltiplos casos de teste com diferentes entradas e saídas esperadas, execute todos de uma vez, e compare resultados entre provedores e modelos. |
|
|
469
|
+
| **📱 Live Monitor** | Monitoramento de requisições em tempo real — acompanhe requisições entrando conforme fluem pelo OmniRoute, veja traduções de formato acontecendo ao vivo, e identifique problemas instantaneamente. |
|
|
470
|
+
|
|
471
|
+
**Acesso:** Dashboard → Translator (barra lateral)
|
|
465
472
|
|
|
466
473
|
### 💾 Cloud Sync
|
|
467
474
|
|
|
@@ -892,7 +899,7 @@ O "OmniRoute Golden Set" pré-carregado contém 10 casos de teste cobrindo:
|
|
|
892
899
|
**Teste de conexão mostra "Invalid" para provedores compatíveis com OpenAI**
|
|
893
900
|
|
|
894
901
|
- Muitos provedores não expõem endpoint `/models`
|
|
895
|
-
- OmniRoute
|
|
902
|
+
- OmniRoute v1.0.0+ inclui validação via chat completions como fallback
|
|
896
903
|
- Certifique-se de que a base URL inclui sufixo `/v1`
|
|
897
904
|
|
|
898
905
|
</details>
|
|
@@ -902,7 +909,7 @@ O "OmniRoute Golden Set" pré-carregado contém 10 casos de teste cobrindo:
|
|
|
902
909
|
## 🛠️ Stack Tecnológico
|
|
903
910
|
|
|
904
911
|
- **Runtime**: Node.js 20+
|
|
905
|
-
- **Linguagem**: TypeScript 5.9 — **100% TypeScript** em `src/` e `open-sse/` (
|
|
912
|
+
- **Linguagem**: TypeScript 5.9 — **100% TypeScript** em `src/` e `open-sse/` (v1.0.0)
|
|
906
913
|
- **Framework**: Next.js 16 + React 19 + Tailwind CSS 4
|
|
907
914
|
- **Banco de Dados**: LowDB (JSON) + SQLite (estado do domínio + logs de proxy)
|
|
908
915
|
- **Streaming**: Server-Sent Events (SSE)
|
|
@@ -927,6 +934,52 @@ O "OmniRoute Golden Set" pré-carregado contém 10 casos de teste cobrindo:
|
|
|
927
934
|
| [Contribuindo](CONTRIBUTING.md) | Setup de desenvolvimento e diretrizes |
|
|
928
935
|
| [Spec OpenAPI](docs/openapi.yaml) | Especificação OpenAPI 3.0 |
|
|
929
936
|
| [Política de Segurança](SECURITY.md) | Reportar vulnerabilidades e práticas de segurança |
|
|
937
|
+
| [Deploy em VM](docs/VM_DEPLOYMENT_GUIDE.md) | Guia completo: VM + nginx + Cloudflare |
|
|
938
|
+
| [Galeria de Features](docs/FEATURES.md) | Tour visual do dashboard com screenshots |
|
|
939
|
+
|
|
940
|
+
### 📸 Preview do Dashboard
|
|
941
|
+
|
|
942
|
+
<details>
|
|
943
|
+
<summary><b>Clique para ver screenshots do dashboard</b></summary>
|
|
944
|
+
|
|
945
|
+
| Página | Screenshot |
|
|
946
|
+
| ----------------- | ------------------------------------------------- |
|
|
947
|
+
| **Provedores** |  |
|
|
948
|
+
| **Combos** |  |
|
|
949
|
+
| **Analytics** |  |
|
|
950
|
+
| **Saúde** |  |
|
|
951
|
+
| **Tradutor** |  |
|
|
952
|
+
| **Configurações** |  |
|
|
953
|
+
| **CLI Tools** |  |
|
|
954
|
+
| **Logs de Uso** |  |
|
|
955
|
+
| **Endpoint** |  |
|
|
956
|
+
|
|
957
|
+
</details>
|
|
958
|
+
|
|
959
|
+
---
|
|
960
|
+
|
|
961
|
+
## 🗺️ Roadmap
|
|
962
|
+
|
|
963
|
+
O OmniRoute tem **210+ funcionalidades planejadas** em múltiplas fases de desenvolvimento. Áreas principais:
|
|
964
|
+
|
|
965
|
+
| Categoria | Features Planejadas | Destaques |
|
|
966
|
+
| -------------------------------- | ------------------- | --------------------------------------------------------------------------- |
|
|
967
|
+
| 🧠 **Roteamento e Inteligência** | 25+ | Roteamento por menor latência, roteamento por tags, pré-verificação de cota |
|
|
968
|
+
| 🔒 **Segurança e Compliance** | 20+ | Hardening SSRF, cloaking de credenciais, rate-limit por endpoint |
|
|
969
|
+
| 📊 **Observabilidade** | 15+ | Integração OpenTelemetry, monitoramento de cota em tempo real |
|
|
970
|
+
| 🔄 **Integrações** | 20+ | Registro dinâmico de modelos, cooldowns de provedor |
|
|
971
|
+
| ⚡ **Performance** | 15+ | Cache dupla camada, prompt cache, response cache, batch API |
|
|
972
|
+
| 🌐 **Ecossistema** | 10+ | WebSocket API, config hot-reload, modo comercial |
|
|
973
|
+
|
|
974
|
+
### 🔜 Em Breve
|
|
975
|
+
|
|
976
|
+
- 🔗 **Integração com OpenCode** — Suporte nativo como provider para a IDE OpenCode
|
|
977
|
+
- 🔗 **Integração com TRAE** — Suporte completo ao framework de desenvolvimento TRAE
|
|
978
|
+
- 📦 **Batch API** — Processamento assíncrono em lote para requisições em massa
|
|
979
|
+
- 🎯 **Roteamento por Tags** — Roteamento de requisições baseado em tags personalizadas
|
|
980
|
+
- 💰 **Estratégia de Menor Custo** — Seleção automática do provedor mais barato
|
|
981
|
+
|
|
982
|
+
> 📝 Especificações completas de features disponíveis em [`docs/new-features/`](docs/new-features/) (217 specs detalhadas)
|
|
930
983
|
|
|
931
984
|
---
|
|
932
985
|
|
|
@@ -957,7 +1010,7 @@ Veja [CONTRIBUTING.md](CONTRIBUTING.md) para diretrizes detalhadas.
|
|
|
957
1010
|
|
|
958
1011
|
```bash
|
|
959
1012
|
# Crie um release — publicação no npm acontece automaticamente
|
|
960
|
-
gh release create
|
|
1013
|
+
gh release create v1.0.0 --title "v1.0.0" --generate-notes
|
|
961
1014
|
```
|
|
962
1015
|
|
|
963
1016
|
---
|
package/README.ru.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<div align="center">
|
|
2
|
-
<img src="./
|
|
2
|
+
<img src="./docs/screenshots/MainOmniRoute.png" alt="OmniRoute Dashboard" width="800"/>
|
|
3
3
|
|
|
4
4
|
# 🚀 OmniRoute — Бесплатный AI Gateway
|
|
5
5
|
|
|
@@ -242,7 +242,7 @@ docker compose --profile cli up -d
|
|
|
242
242
|
| Образ | Тег | Размер | Описание |
|
|
243
243
|
| ------------------------ | -------- | ------ | -------------------------- |
|
|
244
244
|
| `diegosouzapw/omniroute` | `latest` | ~250MB | Последний стабильный релиз |
|
|
245
|
-
| `diegosouzapw/omniroute` | `0.
|
|
245
|
+
| `diegosouzapw/omniroute` | `1.0.0` | ~250MB | Текущая версия |
|
|
246
246
|
|
|
247
247
|
---
|
|
248
248
|
|
|
@@ -892,7 +892,7 @@ OmniRoute включает встроенный фреймворк оценки
|
|
|
892
892
|
**Тест подключения показывает «Invalid» для OpenAI-совместимых провайдеров**
|
|
893
893
|
|
|
894
894
|
- Многие провайдеры не предоставляют endpoint `/models`
|
|
895
|
-
- OmniRoute
|
|
895
|
+
- OmniRoute v1.0.0+ включает fallback-валидацию через chat completions
|
|
896
896
|
- Убедитесь что base URL содержит суффикс `/v1`
|
|
897
897
|
|
|
898
898
|
</details>
|
|
@@ -902,7 +902,7 @@ OmniRoute включает встроенный фреймворк оценки
|
|
|
902
902
|
## 🛠️ Технологический стек
|
|
903
903
|
|
|
904
904
|
- **Runtime**: Node.js 20+
|
|
905
|
-
- **Язык**: TypeScript 5.9 — **100% TypeScript** в `src/` и `open-sse/` (
|
|
905
|
+
- **Язык**: TypeScript 5.9 — **100% TypeScript** в `src/` и `open-sse/` (v1.0.0)
|
|
906
906
|
- **Framework**: Next.js 16 + React 19 + Tailwind CSS 4
|
|
907
907
|
- **База данных**: LowDB (JSON) + SQLite (состояние домена + proxy-логи)
|
|
908
908
|
- **Стриминг**: Server-Sent Events (SSE)
|
|
@@ -957,7 +957,7 @@ OmniRoute включает встроенный фреймворк оценки
|
|
|
957
957
|
|
|
958
958
|
```bash
|
|
959
959
|
# Создайте релиз — публикация в npm происходит автоматически
|
|
960
|
-
gh release create
|
|
960
|
+
gh release create v1.0.0 --title "v1.0.0" --generate-notes
|
|
961
961
|
```
|
|
962
962
|
|
|
963
963
|
---
|
package/README.zh-CN.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<div align="center">
|
|
2
|
-
<img src="./
|
|
2
|
+
<img src="./docs/screenshots/MainOmniRoute.png" alt="OmniRoute Dashboard" width="800"/>
|
|
3
3
|
|
|
4
4
|
# 🚀 OmniRoute — 免费 AI 网关
|
|
5
5
|
|
|
@@ -242,7 +242,7 @@ docker compose --profile cli up -d
|
|
|
242
242
|
| 镜像 | 标签 | 大小 | 描述 |
|
|
243
243
|
| ------------------------ | -------- | ------ | ---------- |
|
|
244
244
|
| `diegosouzapw/omniroute` | `latest` | ~250MB | 最新稳定版 |
|
|
245
|
-
| `diegosouzapw/omniroute` | `0.
|
|
245
|
+
| `diegosouzapw/omniroute` | `1.0.0` | ~250MB | 当前版本 |
|
|
246
246
|
|
|
247
247
|
---
|
|
248
248
|
|
|
@@ -892,7 +892,7 @@ OmniRoute 包含内置评估框架,用于针对黄金集测试 LLM 响应质
|
|
|
892
892
|
**兼容 OpenAI 的提供商连接测试显示 "Invalid"**
|
|
893
893
|
|
|
894
894
|
- 许多提供商不暴露 `/models` 端点
|
|
895
|
-
- OmniRoute
|
|
895
|
+
- OmniRoute v1.0.0+ 包含通过 chat completions 的回退验证
|
|
896
896
|
- 确保 base URL 包含 `/v1` 后缀
|
|
897
897
|
|
|
898
898
|
</details>
|
|
@@ -902,7 +902,7 @@ OmniRoute 包含内置评估框架,用于针对黄金集测试 LLM 响应质
|
|
|
902
902
|
## 🛠️ 技术栈
|
|
903
903
|
|
|
904
904
|
- **运行时**: Node.js 20+
|
|
905
|
-
- **语言**: TypeScript 5.9 — `src/` 和 `open-sse/` 中 **100% TypeScript**(
|
|
905
|
+
- **语言**: TypeScript 5.9 — `src/` 和 `open-sse/` 中 **100% TypeScript**(v1.0.0)
|
|
906
906
|
- **框架**: Next.js 16 + React 19 + Tailwind CSS 4
|
|
907
907
|
- **数据库**: LowDB (JSON) + SQLite(领域状态 + 代理日志)
|
|
908
908
|
- **流式传输**: Server-Sent Events (SSE)
|
|
@@ -957,7 +957,7 @@ OmniRoute 包含内置评估框架,用于针对黄金集测试 LLM 响应质
|
|
|
957
957
|
|
|
958
958
|
```bash
|
|
959
959
|
# 创建发布 — npm 发布自动完成
|
|
960
|
-
gh release create
|
|
960
|
+
gh release create v1.0.0 --title "v1.0.0" --generate-notes
|
|
961
961
|
```
|
|
962
962
|
|
|
963
963
|
---
|
package/app/.next/BUILD_ID
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
mo3wTjoSYKP1E96Wu512B
|