omniroute 1.7.2 → 1.7.4
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.ar.md +4 -0
- package/README.bg.md +4 -0
- package/README.da.md +4 -0
- package/README.de.md +13 -9
- package/README.es.md +13 -9
- package/README.fi.md +4 -0
- package/README.fr.md +13 -9
- package/README.he.md +29 -25
- package/README.hu.md +4 -0
- package/README.id.md +4 -0
- package/README.in.md +4 -0
- package/README.it.md +13 -9
- package/README.ja.md +4 -0
- package/README.ko.md +29 -25
- package/README.md +45 -0
- package/README.ms.md +4 -0
- package/README.nl.md +4 -0
- package/README.no.md +4 -0
- package/README.phi.md +4 -0
- package/README.pl.md +4 -0
- package/README.pt-BR.md +29 -25
- package/README.pt.md +4 -0
- package/README.ro.md +4 -0
- package/README.ru.md +13 -9
- package/README.sk.md +4 -0
- package/README.sv.md +4 -0
- package/README.th.md +16 -12
- package/README.uk-UA.md +4 -0
- package/README.vi.md +4 -0
- package/README.zh-CN.md +26 -22
- package/app/.env +122 -0
- package/app/.next/BUILD_ID +1 -1
- package/app/.next/app-path-routes-manifest.json +30 -28
- package/app/.next/build-manifest.json +3 -3
- package/app/.next/prerender-manifest.json +3 -3
- package/app/.next/required-server-files.json +1 -1
- package/app/.next/routes-manifest.json +12 -0
- package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/api-manager/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/api-manager/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/api-manager/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/audit-log/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/audit-log/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/audit-log/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js +3 -3
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +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.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/combos/page.js.nft.json +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.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/costs/page.js.nft.json +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.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +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.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/health/page.js.nft.json +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.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/limits/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/logs/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/logs/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/media/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js.nft.json +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.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/page.js.nft.json +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.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/profile/page.js.nft.json +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.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +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.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +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.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/providers/page.js.nft.json +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 +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/settings/page.js.nft.json +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.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page.js.nft.json +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 +3 -3
- package/app/.next/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/usage/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/usage/page.js.nft.json +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.js +3 -3
- 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 +4 -4
- package/app/.next/server/app/_global-error.segments/_full.segment.rsc +4 -4
- 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 +3 -3
- package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/_not-found/page.js +2 -2
- package/app/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/auth/login/route.js +1 -1
- package/app/.next/server/app/api/auth/login/route.js.nft.json +1 -1
- package/app/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/auth/logout/route.js +1 -1
- package/app/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/auth/status/route.js +1 -1
- package/app/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cache/route.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.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.js.nft.json +1 -1
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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.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 +2 -2
- 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.js +1 -1
- package/app/.next/server/app/api/cloud/auth/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/cloud/credentials/update/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/cloud/model/resolve/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/cloud/models/alias/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/combos/[id]/route.js.nft.json +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.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.js +1 -1
- package/app/.next/server/app/api/combos/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/combos/test/route.js.nft.json +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.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 -1
- package/app/.next/server/app/api/db-backups/export/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/db-backups/exportAll/route.js +1 -1
- package/app/.next/server/app/api/db-backups/exportAll/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/db-backups/import/route.js +1 -1
- package/app/.next/server/app/api/db-backups/import/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/db-backups/route.js +1 -1
- package/app/.next/server/app/api/db-backups/route.js.nft.json +1 -1
- package/app/.next/server/app/api/db-backups/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/evals/[suiteId]/route.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.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.js +2 -2
- package/app/.next/server/app/api/fallback/chains/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/init/route.js +1 -1
- package/app/.next/server/app/api/init/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/keys/[id]/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/keys/route.js.nft.json +1 -1
- package/app/.next/server/app/api/keys/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/logs/console/route.js +1 -1
- package/app/.next/server/app/api/logs/console/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/models/alias/route.js +1 -1
- package/app/.next/server/app/api/models/alias/route.js.nft.json +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.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.js +2 -2
- package/app/.next/server/app/api/models/catalog/route.js.nft.json +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 +2 -2
- package/app/.next/server/app/api/models/route.js.nft.json +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 +2 -2
- package/app/.next/server/app/api/monitoring/health/route.js.nft.json +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.js +2 -2
- package/app/.next/server/app/api/oauth/[provider]/[action]/route.js.nft.json +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.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.js +1 -1
- package/app/.next/server/app/api/oauth/cursor/import/route.js.nft.json +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.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.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/import/route.js.nft.json +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.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.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +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.js +2 -2
- package/app/.next/server/app/api/policies/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/pricing/defaults/route.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.js +1 -1
- package/app/.next/server/app/api/pricing/models/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/pricing/route.js.nft.json +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.js +2 -2
- package/app/.next/server/app/api/provider-metrics/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/provider-models/route.js +1 -1
- package/app/.next/server/app/api/provider-models/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/provider-nodes/[id]/route.js.nft.json +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.js +2 -2
- package/app/.next/server/app/api/provider-nodes/route.js.nft.json +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.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.js +2 -2
- package/app/.next/server/app/api/providers/[id]/models/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/providers/[id]/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/providers/[id]/test/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/providers/client/route.js.nft.json +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 +2 -2
- package/app/.next/server/app/api/providers/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/providers/test-batch/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/providers/validate/route.js.nft.json +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.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.js +1 -1
- package/app/.next/server/app/api/rate-limits/route.js.nft.json +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.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.js +1 -1
- package/app/.next/server/app/api/resilience/route.js.nft.json +1 -1
- package/app/.next/server/app/api/resilience/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/restart/route.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.js +1 -1
- package/app/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/background-degradation/route.js +1 -0
- package/app/.next/server/app/api/settings/background-degradation/route.js.nft.json +1 -0
- package/app/.next/server/app/api/settings/background-degradation/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/settings/combo-defaults/route.js +1 -1
- package/app/.next/server/app/api/settings/combo-defaults/route.js.nft.json +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.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/model-aliases/route.js +1 -0
- package/app/.next/server/app/api/settings/model-aliases/route.js.nft.json +1 -0
- package/app/.next/server/app/api/settings/model-aliases/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/settings/proxy/route.js +1 -1
- package/app/.next/server/app/api/settings/proxy/route.js.nft.json +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.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.js +1 -1
- package/app/.next/server/app/api/settings/require-login/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/settings/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/settings/system-prompt/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/settings/thinking-budget/route.js.nft.json +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.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.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.js +1 -1
- package/app/.next/server/app/api/sync/cloud/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/sync/initialize/route.js.nft.json +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.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.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.js +1 -1
- package/app/.next/server/app/api/token-health/route.js.nft.json +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.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.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.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.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.js +1 -1
- package/app/.next/server/app/api/translator/send/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/translator/translate/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/usage/[connectionId]/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/usage/analytics/route.js.nft.json +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.js +2 -2
- 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.js +1 -1
- package/app/.next/server/app/api/usage/call-logs/[id]/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/usage/call-logs/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/usage/history/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/usage/logs/route.js.nft.json +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.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.js +1 -1
- package/app/.next/server/app/api/usage/request-logs/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/v1/api/chat/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/v1/audio/speech/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/v1/audio/transcriptions/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/v1/chat/completions/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/v1/embeddings/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/v1/images/generations/route.js.nft.json +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.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.js +1 -1
- package/app/.next/server/app/api/v1/messages/route.js.nft.json +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.js +2 -2
- package/app/.next/server/app/api/v1/models/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/v1/moderations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/moderations/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/music/generations/route.js +1 -1
- package/app/.next/server/app/api/v1/music/generations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/music/generations/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/v1/rerank/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/v1/responses/route.js.nft.json +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.js +1 -1
- package/app/.next/server/app/api/v1/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/videos/generations/route.js +1 -1
- package/app/.next/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/videos/generations/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1beta/models/[...path]/route.js +1 -1
- package/app/.next/server/app/api/v1beta/models/[...path]/route.js.nft.json +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.js +2 -2
- package/app/.next/server/app/api/v1beta/models/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/callback/page.js +2 -2
- package/app/.next/server/app/callback/page.js.nft.json +1 -1
- package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/docs/page.js +3 -3
- package/app/.next/server/app/docs/page.js.nft.json +1 -1
- package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forbidden/page.js +2 -2
- package/app/.next/server/app/forbidden/page.js.nft.json +1 -1
- package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forgot-password/page.js +2 -2
- package/app/.next/server/app/forgot-password/page.js.nft.json +1 -1
- package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/landing/page.js +2 -2
- package/app/.next/server/app/landing/page.js.nft.json +1 -1
- package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/login/page.js +2 -2
- package/app/.next/server/app/login/page.js.nft.json +1 -1
- package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/page.js +2 -2
- package/app/.next/server/app/page.js.nft.json +1 -1
- package/app/.next/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/privacy/page.js +2 -2
- package/app/.next/server/app/privacy/page.js.nft.json +1 -1
- package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/terms/page.js +2 -2
- package/app/.next/server/app/terms/page.js.nft.json +1 -1
- package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app-paths-manifest.json +30 -28
- package/app/.next/server/chunks/1248.js +1 -1
- package/app/.next/server/chunks/1308.js +1 -1
- package/app/.next/server/chunks/1526.js +1 -1
- package/app/.next/server/chunks/1584.js +1 -1
- package/app/.next/server/chunks/1623.js +1 -1
- package/app/.next/server/chunks/1880.js +1 -1
- package/app/.next/server/chunks/1960.js +1 -1
- package/app/.next/server/chunks/1990.js +1 -1
- package/app/.next/server/chunks/2180.js +1 -1
- package/app/.next/server/chunks/2214.js +1 -1
- package/app/.next/server/chunks/2372.js +1 -1
- package/app/.next/server/chunks/2594.js +1 -1
- package/app/.next/server/chunks/2767.js +1 -1
- package/app/.next/server/chunks/2901.js +2 -2
- package/app/.next/server/chunks/2910.js +1 -1
- package/app/.next/server/chunks/3371.js +1 -1
- package/app/.next/server/chunks/3447.js +1 -1
- package/app/.next/server/chunks/3498.js +1 -1
- package/app/.next/server/chunks/3596.js +1 -1
- package/app/.next/server/chunks/3801.js +2 -0
- package/app/.next/server/chunks/3911.js +1 -1
- package/app/.next/server/chunks/4488.js +1 -1
- package/app/.next/server/chunks/4568.js +1 -1
- package/app/.next/server/chunks/496.js +1 -1
- package/app/.next/server/chunks/5047.js +1 -1
- package/app/.next/server/chunks/5094.js +1 -1
- package/app/.next/server/chunks/5097.js +1 -1
- package/app/.next/server/chunks/5521.js +1 -1
- package/app/.next/server/chunks/5945.js +1 -1
- package/app/.next/server/chunks/6118.js +1 -1
- package/app/.next/server/chunks/6930.js +1 -1
- package/app/.next/server/chunks/7011.js +1 -1
- package/app/.next/server/chunks/708.js +1 -1
- package/app/.next/server/chunks/7109.js +1 -1
- package/app/.next/server/chunks/7230.js +2 -2
- package/app/.next/server/chunks/7650.js +1 -1
- package/app/.next/server/chunks/8020.js +3 -3
- package/app/.next/server/chunks/8220.js +1 -1
- package/app/.next/server/chunks/8464.js +1 -1
- package/app/.next/server/chunks/8706.js +1 -1
- package/app/.next/server/chunks/8976.js +1 -1
- package/app/.next/server/chunks/9119.js +1 -1
- package/app/.next/server/chunks/944.js +1 -1
- package/app/.next/server/chunks/9548.js +1 -0
- package/app/.next/server/chunks/9679.js +1 -0
- package/app/.next/server/chunks/9824.js +2 -2
- package/app/.next/server/chunks/9837.js +1 -1
- package/app/.next/server/middleware-build-manifest.js +1 -1
- package/app/.next/server/middleware.js +3 -3
- package/app/.next/server/next-font-manifest.js +1 -1
- package/app/.next/server/next-font-manifest.json +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/a624rqqXG_QtNPqv8ZMWa/_buildManifest.js +1 -0
- package/app/.next/static/chunks/5846-1dad4fadf761e0d8.js +2 -0
- package/app/.next/static/chunks/{993-035473765d7d1871.js → 993-9f36b0b069ca090e.js} +2 -2
- package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/loading-ce5214cdf489c9df.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/{page-52f76c7c91444ec2.js → page-20786f2c7fdbab57.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/api-manager/page-12d772841a253032.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/audit-log/page-c9b98846b8479f3f.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-5e34630a5dc32825.js +15 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/combos/{page-3dce7fccfcf177dd.js → page-85a3e6a423aceded.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/costs/{page-3ed2a7685adf9b91.js → page-cdb8071441476da9.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/endpoint/page-588b8bc3c4e631e0.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/health/{page-9a6519bf1468f16e.js → page-b480b3cb318782d7.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/limits/page-0ae1d6cc5fc4671f.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/logs/{page-833d24f322a20f5a.js → page-ffdc1dcf074c7528.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/media/page-72b768421394b42c.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/onboarding/{page-d424641c7e428be9.js → page-5378e9473a20cd6a.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/page-5c87e49261a22fd5.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/profile/page-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-b38f2d03bae8166a.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/{error-2f0177a2197dd556.js → error-f0730d6d62d02e82.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/{loading-99ab4d478260d53b.js → loading-59cbccd6d5185ca9.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/new/page-a7fb36872be60fe0.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/{page-1f022385b812b987.js → page-40dc5ac82df708e9.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/{error-e844916e39172c8b.js → error-cc85c3ff1f63aea6.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/{loading-bb068659ee679ff4.js → loading-19fc771a287bcb4c.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-1550a2460948273c.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/pricing/{page-f10a8d4bb8236913.js → page-cbe9b21b62bbc2bd.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/{page-83b07523f81d6282.js → page-534e13a69cb60a4f.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/{page-9cc99ab874fc36e7.js → page-86a076d820931a30.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/{layout-00d5d56af65098a9.js → layout-16302e54f9ef3d0e.js} +1 -1
- package/app/.next/static/chunks/app/_global-error/page-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/_not-found/page-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/auth/login/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/auth/logout/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/auth/status/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cache/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cache/stats/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/backups/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/cline-settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/codex-profiles/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/guide-settings/[toolId]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/kilo-settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/runtime/[toolId]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/status/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/auth/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/credentials/update/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/model/resolve/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/models/alias/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/combos/[id]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/combos/metrics/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/combos/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/combos/test/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/compliance/audit-log/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/db-backups/export/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/db-backups/exportAll/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/db-backups/import/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/db-backups/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/evals/[suiteId]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/evals/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/fallback/chains/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/init/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/keys/[id]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/keys/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/logs/console/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/models/alias/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/models/availability/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/models/catalog/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/models/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/monitoring/health/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/cursor/import/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/import/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/policies/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/pricing/defaults/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/pricing/models/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/pricing/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/provider-metrics/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/provider-models/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/validate/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/models/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/test/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/client/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/test-batch/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/validate/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/rate-limit/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/rate-limits/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/resilience/reset/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/resilience/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/restart/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/sessions/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/background-degradation/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/combo-defaults/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/ip-filter/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/model-aliases/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/proxy/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/proxy/test/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/require-login/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/system-prompt/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/thinking-budget/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/shutdown/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/storage/health/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/sync/cloud/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/sync/initialize/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/tags/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/telemetry/summary/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/token-health/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/detect/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/history/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/load/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/save/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/send/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/translate/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/[connectionId]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/analytics/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/budget/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/call-logs/[id]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/call-logs/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/history/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/logs/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/proxy-logs/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/request-logs/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/api/chat/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/audio/speech/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/chat/completions/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/embeddings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/images/generations/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/messages/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/models/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/moderations/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/music/generations/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/chat/completions/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/embeddings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/images/generations/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/rerank/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/responses/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/videos/generations/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1beta/models/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/callback/{page-585a53f7dc6a30f1.js → page-0f0ebc0820dd18a5.js} +1 -1
- package/app/.next/static/chunks/app/docs/{page-2fe9dcbeb3f738c0.js → page-3658b3f15df3a19e.js} +1 -1
- package/app/.next/static/chunks/app/{error-0d59fc4efafbc38c.js → error-f918d9961a2368d3.js} +1 -1
- package/app/.next/static/chunks/app/forbidden/page-77657dfa95e61cd8.js +1 -0
- package/app/.next/static/chunks/app/forgot-password/page-be3bacc125c30a6b.js +1 -0
- package/app/.next/static/chunks/app/global-error-504ff9093e2a997d.js +1 -0
- package/app/.next/static/chunks/app/landing/page-75b0c988db383cfc.js +1 -0
- package/app/.next/static/chunks/app/{layout-108592eafb959363.js → layout-070972eb026af319.js} +1 -1
- package/app/.next/static/chunks/app/login/{page-121c612ee459e7c2.js → page-6c769465e407368f.js} +1 -1
- package/app/.next/static/chunks/app/not-found-11b712c853d93172.js +1 -0
- package/app/.next/static/chunks/app/page-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/privacy/{page-2fe9dcbeb3f738c0.js → page-3658b3f15df3a19e.js} +1 -1
- package/app/.next/static/chunks/app/terms/{page-2fe9dcbeb3f738c0.js → page-3658b3f15df3a19e.js} +1 -1
- package/app/.next/static/chunks/{main-app-c9da11a8061df107.js → main-app-ae230f6bf51a5edb.js} +1 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-6301a4ed902b878a.js +1 -0
- package/app/.next/static/css/bcd1741aee9d39ab.css +1 -0
- package/app/package.json +1 -1
- package/app/server.js +1 -1
- package/package.json +1 -1
- package/app/.next/server/chunks/5248.js +0 -1
- package/app/.next/server/chunks/5393.js +0 -2
- package/app/.next/static/chunks/5846-9e0f1f3afcbfb08c.js +0 -2
- package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/loading-6f1750506292c630.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/api-manager/page-1dd4d0c348a7b0a6.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/audit-log/page-e5bf8955e7b9a4f5.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-77ab26722f5c56c7.js +0 -15
- package/app/.next/static/chunks/app/(dashboard)/dashboard/endpoint/page-1420c3ca376f1585.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/limits/page-f4a2d6d07df5ddc4.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/media/page-1d0ca9b5d3eaf7cd.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/page-388840686801f3f5.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/profile/page-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-9c8ffb212f855704.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/new/page-31cdb6e15134d8c2.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-1393d4935fc087cf.js +0 -1
- package/app/.next/static/chunks/app/_global-error/page-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/_not-found/page-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/auth/login/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/auth/logout/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/auth/status/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cache/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cache/stats/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/backups/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/cline-settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/codex-profiles/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/guide-settings/[toolId]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/kilo-settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/runtime/[toolId]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/status/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/auth/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/credentials/update/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/model/resolve/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/models/alias/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/combos/[id]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/combos/metrics/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/combos/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/combos/test/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/compliance/audit-log/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/db-backups/export/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/db-backups/exportAll/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/db-backups/import/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/db-backups/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/evals/[suiteId]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/evals/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/fallback/chains/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/init/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/keys/[id]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/keys/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/logs/console/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/models/alias/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/models/availability/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/models/catalog/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/models/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/monitoring/health/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/cursor/import/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/import/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/policies/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/pricing/defaults/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/pricing/models/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/pricing/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/provider-metrics/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/provider-models/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/validate/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/models/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/test/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/client/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/test-batch/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/validate/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/rate-limit/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/rate-limits/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/resilience/reset/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/resilience/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/restart/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/sessions/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/combo-defaults/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/ip-filter/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/proxy/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/proxy/test/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/require-login/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/system-prompt/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/thinking-budget/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/shutdown/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/storage/health/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/sync/cloud/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/sync/initialize/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/tags/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/telemetry/summary/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/token-health/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/translator/detect/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/translator/history/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/translator/load/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/translator/save/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/translator/send/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/translator/translate/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/[connectionId]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/analytics/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/budget/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/call-logs/[id]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/call-logs/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/history/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/logs/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/proxy-logs/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/request-logs/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/api/chat/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/audio/speech/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/chat/completions/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/embeddings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/images/generations/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/messages/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/models/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/moderations/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/music/generations/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/chat/completions/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/embeddings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/images/generations/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/rerank/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/responses/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/videos/generations/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1beta/models/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/forbidden/page-df886dfa2d5bd9fa.js +0 -1
- package/app/.next/static/chunks/app/forgot-password/page-2a495f0b0c653ab4.js +0 -1
- package/app/.next/static/chunks/app/global-error-41eef2a698918fc1.js +0 -1
- package/app/.next/static/chunks/app/landing/page-9d540ab1716f8e3e.js +0 -1
- package/app/.next/static/chunks/app/not-found-1dbd8c3e506fe00f.js +0 -1
- package/app/.next/static/chunks/app/page-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/css/b77490a14619ffbb.css +0 -1
- package/app/.next/static/ozfkuTtQLl3_rnlOdkSZi/_buildManifest.js +0 -1
- /package/app/.next/static/{ozfkuTtQLl3_rnlOdkSZi → a624rqqXG_QtNPqv8ZMWa}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=1623,exports.ids=[1623],exports.modules={11623:a=>{a.exports=JSON.parse('{"common":{"save":"Salvar","cancel":"Cancelar","delete":"Excluir","loading":"Carregando...","error":"Ocorreu um erro","success":"Sucesso","confirm":"Voc\xea tem certeza?","refresh":"Atualizar","close":"Fechar","add":"Adicionar","edit":"Editar","search":"Pesquisar","back":"Voltar","next":"Pr\xf3ximo","submit":"Enviar","reset":"Redefinir","copy":"Copiar","copied":"Copiado!","enabled":"Habilitado","disabled":"Desativado","active":"Ativo","inactive":"Inativo","noData":"N\xe3o h\xe1 dados dispon\xedveis","configure":"Configurar","manage":"Gerenciar","name":"Nome","actions":"A\xe7\xf5es","status":"Estado","type":"Tipo","model":"Modelo","models":"modelos","provider":"Provedor","account":"Conta","time":"Hora","details":"Detalhes","created":"Criado","lastUsed":"\xdaltimo uso","loadMore":"Carregar mais","noResults":"Nenhum resultado encontrado","reloadPage":"Recarregar p\xe1gina","connected":"Conectado","disconnected":"Desconectado","notConfigured":"N\xe3o configurado","testConnection":"Conex\xe3o de teste","enable":"Habilitar","disable":"Desativar","columns":"Colunas","newest":"Mais recente","oldest":"Mais antigo","all":"Todos","none":"Nenhum","yes":"Sim","no":"N\xe3o","warning":"Aviso","note":"Nota","free":"Gr\xe1tis","skipToContent":"Pular para o conte\xfado"},"sidebar":{"home":"P\xe1gina inicial","dashboard":"Painel","providers":"Provedores","combos":"Combos","usage":"Uso","analytics":"An\xe1lise","costs":"Custos","health":"Sa\xfade","limits":"Limites e cotas","cliTools":"Ferramentas CLI","settings":"Configura\xe7\xf5es","translator":"Tradutor","docs":"Documentos","issues":"Problemas","endpoint":"Ponto final","apiManager":"Gerenciador de APIs","logs":"Registros","auditLog":"Registro de auditoria","shutdown":"Desligamento","restart":"Reiniciar","shutdownConfirm":"Desligar o OmniRoute?","restartConfirm":"Reiniciar o OmniRoute?","version":"v{version}","debug":"Depurar","system":"Sistema","help":"Ajuda","serverDisconnected":"Servidor desconectado","serverDisconnectedMsg":"O servidor proxy foi interrompido ou est\xe1 reiniciando.","expandSidebar":"Expandir barra lateral","collapseSidebar":"Recolher barra lateral"},"header":{"logout":"Sair","language":"Idioma","providers":"Provedores","providerDescription":"Gerencie suas conex\xf5es de provedor de IA","combos":"Combos","comboDescription":"Combina\xe7\xf5es de modelos com substituto","usage":"Uso e an\xe1lise","usageDescription":"Monitore o uso da API, o consumo de tokens e os registros de solicita\xe7\xe3o","analytics":"An\xe1lise","analyticsDescription":"Gr\xe1ficos, tend\xeancias e insights de avalia\xe7\xe3o","cliTools":"Ferramentas CLI","cliToolsDescription":"Configurar ferramentas CLI","home":"P\xe1gina inicial","homeDescription":"Bem-vindo ao OmniRoute","endpoint":"Ponto final","endpointDescription":"Configura\xe7\xe3o de endpoint de API","settings":"Configura\xe7\xf5es","settingsDescription":"Gerencie suas prefer\xeancias","openaiCompatible":"Compat\xedvel com OpenAI","anthropicCompatible":"Compat\xedvel Antr\xf3pico"},"home":{"quickStart":"In\xedcio r\xe1pido","quickStartDesc":"Comece a trabalhar em 4 etapas. Conecte provedores, encaminhe modelos, monitore tudo.","fullDocs":"Documentos completos","step1Title":"1. Crie uma chave API","step1Desc":"V\xe1 para <endpoint>Endpoint</endpoint> -> Chaves registradas. Gere uma chave por ambiente.","step2Title":"2. Conecte provedores","step2Desc":"Adicione contas em <providers>Providers</providers>. Suporta OAuth, chave de API e n\xedveis gratuitos.","step3Title":"3. Aponte seu cliente","step3Desc":"Defina o URL base como {url} em seu IDE ou cliente API.","step4Title":"4. Monitore e otimize","step4Desc":"Rastreie tokens, custos e erros em <logs>Logs de solicita\xe7\xe3o</logs> e <analytics>Analytics</analytics>.","providersOverview":"Vis\xe3o geral dos provedores","configuredOf":"{configured} configurado de {total} provedores dispon\xedveis","noModelsAvailable":"Nenhum modelo dispon\xedvel para este fornecedor.","configureFirst":"Configure uma conex\xe3o primeiro em {providers}","configureProvider":"Configurar provedor","modelAvailable":"Modelo {count} dispon\xedvel","modelsAvailable":"{count} modelos dispon\xedveis","connectionsActive":"{count} conex\xe3o ativa","connectionsActivePlural":"{count} conex\xf5es ativas","copyModelName":"Copiar nome do modelo","documentation":"Documenta\xe7\xe3o","healthMonitor":"Monitor de Sa\xfade","reportIssue":"Informar problema","activeError":"{active} ativo \xb7 Erro {errors}","oauthLabel":"OAuth","apiKeyLabel":"Chave de API","requestsShort":"{count} requisitos","providerModelsTitle":"{provider} - Modelos","copiedModel":"Copiado: {model}","aliasLabel":"apelido"},"analytics":{"title":"An\xe1lise","overviewDescription":"Monitore seus padr\xf5es de uso de API, consumo de tokens, custos e tend\xeancias de atividades em todos os provedores e modelos.","evalsDescription":"Execute conjuntos de avalia\xe7\xe3o para testar e validar seus endpoints LLM. Compare a qualidade do modelo, detecte regress\xf5es e compare a lat\xeancia.","overview":"Vis\xe3o geral","evals":"Avalia\xe7\xf5es"},"apiManager":{"title":"Chaves de API","createKey":"Criar chave de API","key":"Chave","revokeKey":"Revogar chave","revokeConfirm":"Tem certeza de que deseja revogar esta chave de API?","noKeys":"Ainda n\xe3o h\xe1 chaves de API","noKeysDesc":"Crie sua primeira chave de API para autenticar solicita\xe7\xf5es em seu endpoint","keyLabel":"Etiqueta-chave","permissions":"Permiss\xf5es","expiresAt":"Expira","never":"Nunca","revoke":"Revogar","showKey":"Mostrar chave","hideKey":"Ocultar chave","copyKey":"Copiar chave de API","allModels":"Todos os modelos","selectedModels":"Modelos Selecionados","readOnly":"Somente leitura","fullAccess":"Acesso total","keyManagement":"Gerenciamento de chaves de API","keyManagementDesc":"Crie e gerencie chaves de API para autenticar solicita\xe7\xf5es em seu endpoint","totalKeys":"Total de chaves","restricted":"Restrito","totalRequests":"Total de solicita\xe7\xf5es","modelsAvailable":"Modelos Dispon\xedveis","registeredKeys":"Chaves Registradas","keysRegistered":"{count} chaves registradas","keyRegistered":"{count} chave registrada","keysSecurityNote":"Cada chave isola o rastreamento de uso e pode ser revogada de forma independente. As chaves s\xe3o mascaradas ap\xf3s a cria\xe7\xe3o por seguran\xe7a.","createFirstKey":"Crie sua primeira chave","name":"Nome","usage":"Uso","created":"Criado","actions":"A\xe7\xf5es","reqs":"requisitos","neverUsed":"Nunca usado","deleteConfirm":"Excluir esta chave de API?","usageTips":"Dicas de uso","tipAuth":"Use chaves de API no cabe\xe7alho de autoriza\xe7\xe3o como portador YOUR_KEY","tipSecure":"As chaves s\xe3o mostradas apenas uma vez durante a cria\xe7\xe3o – armazene-as com seguran\xe7a","tipSeparate":"Crie chaves separadas para diferentes clientes ou ambientes","tipRestrict":"Restrinja chaves a modelos espec\xedficos para melhor seguran\xe7a e controle de custos","keyName":"Nome da chave","keyNamePlaceholder":"por exemplo, chave de produ\xe7\xe3o, chave de desenvolvimento","keyNameDesc":"Escolha um nome descritivo para identificar a finalidade desta chave","keyCreated":"Chave de API criada","keyCreatedSuccess":"Chave criada com sucesso!","keyCreatedNote":"Copie e armazene esta chave agora — ela n\xe3o ser\xe1 mostrada novamente.","done":"Conclu\xeddo","savePermissions":"Salvar permiss\xf5es","allowAll":"Permitir tudo","restrict":"Restringir","allowAllInfo":"Esta chave pode acessar todos os modelos dispon\xedveis.","restrictInfo":"Esta chave pode acessar {selected} de modelos {total}.","selected":"{count} selecionado","all":"Todos","clear":"Limpar","searchModels":"Pesquise modelos por nome ou fornecedor...","noModelsFound":"Nenhum modelo encontrado","keyNameRequired":"O nome da chave \xe9 obrigat\xf3rio","keyNameTooLong":"O nome da chave deve ter {max} caracteres ou menos","keyNameInvalid":"O nome da chave s\xf3 pode conter letras, n\xfameros, espa\xe7os, hifens e sublinhados","invalidKeyName":"Nome de chave inv\xe1lido","failedCreateKey":"Falha ao criar chave","failedCreateKeyRetry":"Falha ao criar chave. Por favor, tente novamente.","invalidKeyId":"ID de chave inv\xe1lido","failedDeleteKey":"Falha ao excluir a chave","failedDeleteKeyRetry":"Falha ao excluir a chave. Por favor, tente novamente.","invalidModelsSelection":"Sele\xe7\xe3o de modelos inv\xe1lidos","cannotSelectMoreThanModels":"N\xe3o \xe9 poss\xedvel selecionar mais de {max} modelos","failedUpdatePermissions":"Falha ao atualizar as permiss\xf5es","failedUpdatePermissionsRetry":"Falha ao atualizar as permiss\xf5es. Por favor, tente novamente.","unknownProvider":"desconhecido","copyMaskedKey":"Copiar chave mascarada","modelsCount":"{count, plural, one {# model} other {# models}}","lastUsedOn":"\xdaltimo: {date}","editPermissions":"Editar permiss\xf5es","deleteKey":"Excluir chave","model":"Modelo {count}","models":"{count} modelos","permissionsTitle":"Permiss\xf5es: {name}","allowAllDesc":"Esta chave pode acessar todos os modelos dispon\xedveis.","restrictDesc":"Esta chave pode acessar {selectedCount} de modelos {totalModels}.","selectedCount":"{count} selecionado"},"auditLog":{"title":"Registro de auditoria","searchPlaceholder":"A\xe7\xf5es de pesquisa...","action":"A\xe7\xe3o","actor":"Ator","target":"Alvo","ipAddress":"Endere\xe7o IP","timestamp":"Carimbo de data e hora","noEntries":"Nenhuma entrada de auditoria encontrada","filterByAction":"Filtrar por a\xe7\xe3o...","filterByActor":"Filtrar por ator...","filterEntriesAria":"Filtrar entradas de log de auditoria","filterByActionTypeAria":"Filtrar por tipo de a\xe7\xe3o","filterByActorAria":"Filtrar por ator","refreshAuditLogAria":"Atualizar registro de auditoria","tableAria":"Entradas de registro de auditoria","failedFetchAuditLog":"Falha ao buscar o log de auditoria","notAvailable":"—","description":"A\xe7\xf5es administrativas e eventos de seguran\xe7a","showing":"Mostrando entradas {count} (deslocamento {offset})","previous":"Anterior"},"cliTools":{"title":"Ferramentas CLI","noActiveProviders":"Nenhum provedor ativo","noActiveProvidersDesc":"Adicione e conecte provedores primeiro para configurar as ferramentas CLI.","mapModels":"Modelos de mapas","testConnection":"Conex\xe3o de teste","connectionStatus":"Status da conex\xe3o","configureEndpoint":"Configurar ponto final","instructions":"Instru\xe7\xf5es","modelMapping":"Mapeamento de modelo","baseUrl":"URL base","apiKey":"Chave de API","configured":"Configurado","notConfigured":"N\xe3o configurado","notInstalled":"N\xe3o instalado","custom":"Personalizado","unknown":"Desconhecido","lastSavedAt":"\xdaltimo salvo: {date}","never":"Nunca","justNow":"agora mesmo","minutesAgoShort":"{count}m atr\xe1s","hoursAgoShort":"{count}h atr\xe1s","daysAgoShort":"{count}d atr\xe1s","monthsAgoShort":"{count}mo atr\xe1s","yearsAgoShort":"{count}anos atr\xe1s","runtimeCheckFailed":"Falha na verifica\xe7\xe3o de tempo de execu\xe7\xe3o","yourApiKeyPlaceholder":"sua chave de API","modelPlaceholder":"provedor/id do modelo","configurationSaved":"Configura\xe7\xe3o salva com sucesso.","failedToSave":"Falha ao salvar a configura\xe7\xe3o.","noApiKeysCreateOne":"Nenhuma chave de API – Crie uma na p\xe1gina Chaves","defaultOmnirouteKey":"sk_omniroute (padr\xe3o)","selectModel":"Selecione o modelo","selectModelForAlias":"Selecione o modelo para {alias}","selectModelForTool":"Selecione o modelo para {tool}","select":"Selecione","clear":"Limpar","comingSoon":"Em breve","checkingRuntime":"Verificando o status do tempo de execu\xe7\xe3o...","guideOnlyIntegration":"Integra\xe7\xe3o somente guia (sem necessidade de tempo de execu\xe7\xe3o local)","cliRuntimeDetected":"Tempo de execu\xe7\xe3o CLI detectado e pronto","cliFoundNotRunnable":"CLI encontrada, mas n\xe3o execut\xe1vel{reason}","cliRuntimeNotDetected":"Tempo de execu\xe7\xe3o da CLI n\xe3o detectado","binary":"Bin\xe1rio","configPath":"Caminho de configura\xe7\xe3o","configPathShort":"Configura\xe7\xe3o","failedCheckRuntimeStatus":"Falha ao verificar o status do tempo de execu\xe7\xe3o.","copy":"Copiar","copied":"Copiado","copyConfig":"Copiar configura\xe7\xe3o","saveConfig":"Salvar configura\xe7\xe3o","selectionSaved":"Sele\xe7\xe3o salva","guide":"Guia","detected":"Detectado","notReady":"N\xe3o est\xe1 pronto","active":"Ativo","inactive":"Inativo","startMitm":"Iniciar MITM","stopMitm":"Pare o MITM","mitmStarted":"MITM iniciado com sucesso!","mitmStopped":"MITM parou com sucesso!","failedStart":"Falha ao iniciar o MITM","failedStop":"Falha ao parar o MITM","saveMappings":"Salvar mapeamentos","mappingsSaved":"Mapeamentos salvos!","failedSaveMappings":"Falha ao salvar mapeamentos","howItWorks":"Como funciona:","antigravityHowWorksDesc":"A antigravidade envia solicita\xe7\xf5es ao endpoint do Google. O MITM os intercepta e os redireciona para o OmniRoute.","antigravityStep1":"1. Inicie o MITM para rotear solicita\xe7\xf5es por meio do OmniRoute.","antigravityStep2Prefix":"2. Adicionar","antigravityStep2Suffix":"ao seu arquivo hosts como 127.0.0.1.","antigravityStep3":"3. Abra o Antigravity e as solicita\xe7\xf5es ser\xe3o proxy.","sudoPasswordRequiredTitle":"Senha Sudo obrigat\xf3ria","sudoPasswordHint":"A senha do administrador \xe9 necess\xe1ria para modificar o arquivo hosts e as configura\xe7\xf5es de proxy do sistema.","enterSudoPassword":"Digite a senha do sudo","sudoPasswordRequiredError":"A senha Sudo \xe9 necess\xe1ria.","cancel":"Cancelar","confirm":"Confirmar","settingsApplied":"Configura\xe7\xf5es aplicadas com sucesso!","failedApplySettings":"Falha ao aplicar configura\xe7\xf5es","settingsReset":"Configura\xe7\xf5es redefinidas com sucesso!","failedResetSettings":"Falha ao redefinir as configura\xe7\xf5es","backupRestored":"C\xf3pia de seguran\xe7a restaurada!","failedRestore":"Falha ao restaurar","checkingCli":"Verificando {tool} CLI...","cliNotRunnable":"{tool} CLI instalada, mas n\xe3o execut\xe1vel","cliNotInstalled":"{tool} CLI n\xe3o instalada","cliNotDetected":"{tool} CLI n\xe3o detectada","cliDetectedReady":"{tool} CLI detectada e pronta","cliFoundFailedHealthcheck":"{tool} CLI foi encontrada, mas falhou na verifica\xe7\xe3o de integridade do tempo de execu\xe7\xe3o{reason}.","installCliPrompt":"Instale {tool} CLI para usar este recurso.","installCodexPrompt":"Instale o Codex CLI para usar o recurso de aplica\xe7\xe3o autom\xe1tica.","hide":"Esconder","howToInstall":"Como instalar","installationGuide":"Guia de instala\xe7\xe3o","platforms":"macOS/Linux/Windows:","afterInstallationRun":"Ap\xf3s a instala\xe7\xe3o, execute","toVerify":"para verificar.","current":"Atual","baseUrlPlaceholder":"https://.../v1","resetToDefault":"Redefinir para o padr\xe3o","providerModelPlaceholder":"provedor/id do modelo","apply":"Aplicar","reset":"Redefinir","manualConfig":"Configura\xe7\xe3o manual","backups":"C\xf3pias de seguran\xe7a","configBackups":"Backups de configura\xe7\xe3o","noBackupsYet":"Ainda n\xe3o h\xe1 backups. Os backups s\xe3o criados automaticamente antes de cada aplica\xe7\xe3o ou redefini\xe7\xe3o.","restore":"Restaurar","backupRestoredReloading":"C\xf3pia de seguran\xe7a restaurada! Recarregando status...","failedRestoreBackup":"Falha ao restaurar o backup","applied":"Aplicado!","failed":"Falha","resetDone":"Redefinir!","omnirouteConfiguredOpenAiCompatible":"OmniRoute est\xe1 configurado como provedor compat\xedvel com OpenAI","provider":"Provedor","model":"Modelo","providers":"Provedores","auth":"Autentica\xe7\xe3o","noApiKeysAvailable":"Nenhuma chave de API dispon\xedvel","usingDefaultOmniroute":"Usando o padr\xe3o: sk_omniroute","updateConfig":"Atualizar configura\xe7\xe3o","applyConfig":"Aplicar configura\xe7\xe3o","noBackupsAvailable":"Nenhum backup dispon\xedvel.","profileSaved":"Perfil \\"{name}\\" salvo!","failedSaveProfile":"Falha ao salvar o perfil","profileActivated":"Perfil ativado!","failedActivateProfile":"Falha ao ativar o perfil","profiles":"Perfis","savedProfiles":"Perfis salvos","noProfilesYet":"Nenhum perfil salvo ainda. Salve a configura\xe7\xe3o atual como um perfil abaixo.","activate":"Ativar","deleteProfile":"Excluir perfil","profileNamePlaceholder":"Nome do perfil (por exemplo, conta pessoal)","saveCurrent":"Salvar atual","codexAuthNotePrefix":"Usos do Codex","codexAuthNoteMiddle":"com","codexAuthNoteSuffix":"Clique em \\"Aplicar\\" para configurar automaticamente.","claudeManualConfiguration":"Claude CLI - Configura\xe7\xe3o manual","codexManualConfiguration":"Codex CLI - Configura\xe7\xe3o manual","droidManualConfiguration":"Droid de f\xe1brica - configura\xe7\xe3o manual","openClawManualConfiguration":"Garra Aberta - Configura\xe7\xe3o Manual","clineManualConfiguration":"Configura\xe7\xe3o Manual do Cline","kiloManualConfiguration":"Configura\xe7\xe3o Manual do C\xf3digo Kilo","toolDescriptions":{"antigravity":"IDE antigravidade do Google com MITM","claude":"CLI do C\xf3digo Claude Antr\xf3pico","codex":"CLI do OpenAI Codex","droid":"Assistente de IA Droid de f\xe1brica","openclaw":"Assistente de IA de garra aberta","cline":"CLI do assistente de codifica\xe7\xe3o Cline AI","kilo":"CLI do assistente de IA do Kilo Code","cursor":"Editor de c\xf3digo do cursor AI","continue":"Continuar Assistente de IA"},"guides":{"cursor":{"notes":{"0":"Requer conta Cursor Pro para usar este recurso.","1":"O cursor roteia solicita\xe7\xf5es por meio de seu pr\xf3prio servidor, portanto, o endpoint local n\xe3o \xe9 compat\xedvel. Ative o Cloud Endpoint nas configura\xe7\xf5es."},"steps":{"1":{"title":"Abra Configura\xe7\xf5es","desc":"V\xe1 para Configura\xe7\xf5es -> Modelos"},"2":{"title":"Habilitar API OpenAI","desc":"Habilite a op\xe7\xe3o \\"chave de API OpenAI\\""},"3":{"title":"URL base"},"4":{"title":"Chave de API"},"5":{"title":"Adicionar modelo personalizado","desc":"Clique em \\"Ver todos os modelos\\" -> \\"Adicionar modelo personalizado\\""},"6":{"title":"Selecione o modelo"}}},"continue":{"steps":{"1":{"title":"Abrir configura\xe7\xe3o","desc":"Abra o arquivo de configura\xe7\xe3o Continuar"},"2":{"title":"Chave de API"},"3":{"title":"Selecione o modelo"},"4":{"title":"Adicionar configura\xe7\xe3o de modelo","desc":"Adicione a seguinte configura\xe7\xe3o ao seu array de modelos:"}}}}},"combos":{"title":"Combos","description":"Crie combina\xe7\xf5es de modelos com roteamento ponderado e suporte substituto","createCombo":"Criar combina\xe7\xe3o","editCombo":"Editar combina\xe7\xe3o","deleteCombo":"Excluir combina\xe7\xe3o","noModels":"Nenhum modelo","noModelsYet":"Nenhum modelo adicionado ainda","addModel":"Adicionar modelo","addModelToCombo":"Adicionar modelo ao combo","routingStrategy":"Estrat\xe9gia de Roteamento","maxRetries":"M\xe1ximo de tentativas","timeout":"Tempo limite (ms)","healthcheck":"Verifica\xe7\xe3o de integridade","priority":"Prioridade","fallback":"Alternativa","roundRobin":"Rodada Robin","random":"Aleat\xf3rio","leastLatency":"Menor lat\xeancia","comboName":"Nome do combo","comboNamePlaceholder":"meu-combo","deleteConfirm":"Excluir este combo?","noCombosYet":"Ainda n\xe3o h\xe1 combos","comboCreated":"Combo criado com sucesso","comboUpdated":"Combo atualizado com sucesso","comboDeleted":"Combina\xe7\xe3o exclu\xedda","failedCreate":"Falha ao criar combina\xe7\xe3o","failedUpdate":"Falha ao atualizar o combo","errorCreating":"Erro ao criar o combo","errorUpdating":"Erro ao atualizar o combo","errorDeleting":"Erro ao excluir o combo","testFailed":"Falha na solicita\xe7\xe3o de teste","failedToggle":"Falha ao alternar combina\xe7\xe3o","testResults":"Resultados do teste — {name}","resolvedBy":"Resolvido por:","more":"+{count} mais","reqs":"requisitos","success":"sucesso","proxyConfigured":"Proxy configurado","copyComboName":"Copiar nome do combo","enableCombo":"Ativar combina\xe7\xe3o","disableCombo":"Desativar combina\xe7\xe3o","testCombo":"Combina\xe7\xe3o de teste","duplicate":"Duplicar","proxyConfig":"Configura\xe7\xe3o de proxy","nameRequired":"O nome \xe9 obrigat\xf3rio","nameInvalid":"Apenas letras, n\xfameros, -, _, / e . permitido","nameHint":"Letras, n\xfameros, -, _, / e . permitido","priorityDesc":"Fallback sequencial: tenta primeiro o modelo 1, depois o 2, etc.","weightedDesc":"Distribui o tr\xe1fego por porcentagem de peso com substituto","roundRobinDesc":"Distribui\xe7\xe3o circular: cada solicita\xe7\xe3o vai para o pr\xf3ximo modelo em rota\xe7\xe3o","randomDesc":"Sele\xe7\xe3o aleat\xf3ria uniforme e, em seguida, retorno aos modelos restantes","leastUsedDesc":"Escolhe o modelo com menos solicita\xe7\xf5es, equilibrando a carga ao longo do tempo","costOptimizedDesc":"Rotas para o modelo mais barato primeiro com base no pre\xe7o","models":"Modelos","autoBalance":"Equil\xedbrio autom\xe1tico","advancedSettings":"Configura\xe7\xf5es avan\xe7adas","retryDelay":"Atraso de nova tentativa (ms)","concurrencyPerModel":"Simultaneidade/Modelo","queueTimeout":"Tempo limite da fila (ms)","advancedHint":"Deixe em branco para usar padr\xf5es globais. Eles substituem as configura\xe7\xf5es por provedor.","moveUp":"Subir","moveDown":"Mover para baixo","removeModel":"Remover","saving":"Salvando...","weighted":"Ponderado","leastUsed":"Menos usado","costOpt":"Op\xe7\xe3o de custo"},"costs":{"title":"Custos","budget":"Or\xe7amento","totalCost":"Custo total","breakdown":"Divis\xe3o de custos","noData":"Sem dados de custo","byModel":"Por modelo","byProvider":"Por provedor"},"endpoint":{"title":"Ponto final da API","available":"Terminais dispon\xedveis","cloudProxy":"Proxy de nuvem","disableConfirm":"Tem certeza de que deseja desativar o proxy na nuvem?","baseUrl":"URL base","apiKeyLabel":"Chave de API","registeredKeys":"Chaves Registradas","chatCompletions":"Conclus\xf5es de bate-papo","responses":"Respostas","listModels":"Listar modelos","usingCloudProxy":"Usando o Cloud Proxy","usingLocalServer":"Usando servidor local","machineId":"ID da m\xe1quina: {id}...","disableCloud":"Desativar nuvem","enableCloud":"Habilitar nuvem","modelsAcrossEndpoints":"Modelos {models} em endpoints {endpoints}","chatDesc":"Bate-papo com e sem streaming com todos os provedores","embeddings":"Incorpora\xe7\xf5es","embeddingsDesc":"Incorpora\xe7\xf5es de texto para pipelines de pesquisa e RAG","imageGeneration":"Gera\xe7\xe3o de imagem","imageDesc":"Gere imagens a partir de prompts de texto","rerank":"Reclassificar","rerankDesc":"Reclassificar documentos por relev\xe2ncia para uma consulta","audioTranscription":"Transcri\xe7\xe3o de \xe1udio","audioTranscriptionDesc":"Transcrever arquivos de \xe1udio para texto (Whisper)","textToSpeech":"Texto para fala","textToSpeechDesc":"Converta texto em fala com som natural","moderations":"Modera\xe7\xf5es","moderationsDesc":"Modera\xe7\xe3o de conte\xfado e classifica\xe7\xe3o de seguran\xe7a","enableCloudTitle":"Ativar proxy de nuvem","whatYouGet":"O que voc\xea receber\xe1","cloudBenefitAccess":"Acesse sua API de qualquer lugar do mundo","cloudBenefitShare":"Compartilhe endpoint com sua equipe facilmente","cloudBenefitPorts":"N\xe3o h\xe1 necessidade de abrir portas ou configurar firewall","cloudBenefitEdge":"Rede de borda global r\xe1pida","cloudSessionNote":"A nuvem manter\xe1 sua sess\xe3o de autentica\xe7\xe3o por 1 dia. Se n\xe3o for usado, ele ser\xe1 exclu\xeddo automaticamente.","cloudUnstableNote":"A nuvem est\xe1 atualmente inst\xe1vel com Claude Code OAuth em alguns casos.","cloudConnected":"Cloud Proxy conectado!","connectingToCloud":"Conectando \xe0 nuvem...","verifyingConnection":"Verificando conex\xe3o...","connecting":"Conectando...","verifying":"Verificando...","connected":"Conectado!","disableCloudTitle":"Desativar proxy de nuvem","disableWarning":"Todas as sess\xf5es de autentica\xe7\xe3o ser\xe3o exclu\xeddas da nuvem.","syncingData":"Sincronizando os dados mais recentes...","disablingCloud":"Desativando nuvem...","syncing":"Sincronizando...","disabling":"Desativando...","cloudConnectedVerified":"Cloud Proxy conectado e verificado!","connectedVerificationPending":"Conectado – verifica\xe7\xe3o pendente","connectedVerificationPendingWithError":"Conectado – verifica\xe7\xe3o pendente: {error}","cloudDisabledSuccess":"Nuvem desativada com sucesso","syncedSuccess":"Sincronizado com sucesso","failedDisable":"Falha ao desativar a nuvem","failedEnable":"Falha ao ativar a nuvem","cloudRequestTimeout":"Tempo limite de solicita\xe7\xe3o na nuvem","cloudRequestFailed":"Falha na solicita\xe7\xe3o de nuvem","cloudWorkerUnreachable":"N\xe3o foi poss\xedvel entrar em contato com o trabalhador da nuvem. Certifique-se de que o servi\xe7o de nuvem esteja em execu\xe7\xe3o (npm run dev in/cloud).","connectionFailed":"Falha na conex\xe3o","syncFailed":"Falha ao sincronizar dados na nuvem","providerModelsTitle":"{provider} — Modelos","noModelsForProvider":"Nenhum modelo dispon\xedvel para este fornecedor.","chat":"Bate-papo","embedding":"Incorpora\xe7\xe3o","image":"Imagem","custom":"personalizado","modelsCount":"{count, plural, one {# model} other {# models}}"},"health":{"title":"Sa\xfade do sistema","description":"Monitoramento em tempo real da sua inst\xe2ncia OmniRoute","healthy":"Saud\xe1vel","degraded":"Degradado","down":"Para baixo","uptime":"Tempo de atividade","memory":"Mem\xf3ria","memoryRss":"Mem\xf3ria (RSS)","heap":"Pilha","cpu":"CPU","database":"Banco de dados","version":"Vers\xe3o","lastCheck":"\xdaltima verifica\xe7\xe3o","providerHealth":"Sa\xfade do Provedor","systemMetrics":"M\xe9tricas do sistema","tokenHealth":"Sa\xfade do token","refreshAll":"Atualizar tudo","checkNow":"Verifique agora","loadingHealth":"Carregando dados de sa\xfade...","failedToLoad":"Falha ao carregar dados de integridade: {error}","retry":"Tentar novamente","allOperational":"Todos os sistemas operacionais","issuesDetected":"Problemas de sistema detectados","updatedAt":"{time} atualizado","latency":"Lat\xeancia","latencyP50":"p50","latencyP95":"p\xe1g.95","latencyP99":"p99","millisecondsShort":"{value}ms","notAvailable":"—","totalRequests":"Total de solicita\xe7\xf5es","noDataYet":"Ainda n\xe3o h\xe1 dados","promptCache":"Cache de prompt","entries":"Entradas","hitRate":"Taxa de acerto","hitsMisses":"Acertos / Erros","signatureCache":"Cache de Assinatura","signatureDefaults":"Padr\xf5es","signatureTool":"Ferramenta","signatureFamily":"Fam\xedlia","signatureSession":"Sess\xe3o","recovering":"Recuperando","noCBData":"N\xe3o h\xe1 dados dispon\xedveis sobre disjuntores. Fa\xe7a alguns pedidos primeiro.","providerHealthStatusAria":"Estado de sa\xfade do provedor","issuesLabel":"Problemas detectados","operational":"Operacional","providers":"Provedores","healthyCount":"{count} \xedntegro","nodeVersion":"N\xf3 {version}","failures":"{count} falha","failuresPlural":"{count} falhas","lastFailure":"\xdaltimo","rateLimitStatus":"Status do limite de taxa","activeLimiters":"{count} limitador ativo","activeLimitersPlural":"{count} limitadores ativos","queued":"Na fila","queuedCount":"{count} na fila","running":"correndo","runningCount":"{count} em execu\xe7\xe3o","ok":"OK","activeLockouts":"Bloqueios ativos","resetConfirm":"Redefinir todos os disjuntores para um estado \xedntegro? Isto limpar\xe1 todas as contagens de falhas e restaurar\xe1 todos os provedores ao status operacional.","resetAllTitle":"Reinicialize todos os disjuntores para um estado saud\xe1vel","resetting":"Redefinindo...","resetAll":"Redefinir tudo","until":"At\xe9 {time}"},"limits":{"title":"Limites e cotas","rateLimit":"Limite de taxa","remaining":"Restante","requestsPerMinute":"Solicita\xe7\xf5es/min","tokensPerMinute":"Tokens/min","dailyLimit":"Limite Di\xe1rio"},"logs":{"title":"Registros","requestLogs":"Solicitar registros","proxyLogs":"Registros de proxy","auditLog":"Registro de auditoria","console":"Consola","auditLogDesc":"A\xe7\xf5es administrativas e eventos de seguran\xe7a","loading":"Carregando...","refresh":"Atualizar","filterByAction":"Filtrar por a\xe7\xe3o...","filterByActor":"Filtrar por ator...","filterEntriesAria":"Filtrar entradas de log de auditoria","filterByActionTypeAria":"Filtrar por tipo de a\xe7\xe3o","filterByActorAria":"Filtrar por ator","refreshAuditLogAria":"Atualizar registro de auditoria","tableAria":"Entradas de registro de auditoria","failedFetchAuditLog":"Falha ao buscar o log de auditoria","showing":"Mostrando entradas {count} (deslocamento {offset})","search":"Pesquisar","timestamp":"Carimbo de data e hora","action":"A\xe7\xe3o","actor":"Ator","target":"Alvo","details":"Detalhes","ipAddress":"Endere\xe7o IP","notAvailable":"—","noEntries":"Nenhuma entrada de registro de auditoria encontrada","previous":"Anterior","next":"Pr\xf3ximo"},"onboarding":{"welcome":"Bem vindo","security":"Seguran\xe7a","test":"Teste","ready":"Pronto!","setPassword":"Definir senha","addProvider":"Adicione seu primeiro provedor","getStarted":"Comece","skip":"Pular","skipWizard":"Ignorar totalmente o assistente","skipPassword":"Ignorar configura\xe7\xe3o de senha","skipAndContinue":"Pular e continuar","passwordLabel":"Senha","confirmPassword":"Confirmar senha","enterPassword":"Digite a senha","confirmPasswordPlaceholder":"Confirmar senha","passwordsMismatch":"As senhas n\xe3o coincidem","setupComplete":"Configura\xe7\xe3o conclu\xedda!","goToDashboard":"V\xe1 para Painel →","welcomeDesc":"OmniRoute \xe9 o seu proxy local da API AI. Ele roteia solicita\xe7\xf5es para v\xe1rios provedores de IA com balanceamento de carga, failover e rastreamento de uso.","multiProvider":"Multi-Provedor","usageTracking":"Rastreamento de uso","apiKeyMgmt":"Gerenciamento de chave de API","securityDesc":"Defina uma senha para proteger seu painel ou pule por enquanto.","providerDesc":"Conecte seu primeiro provedor de IA. Voc\xea pode adicionar mais posteriormente.","apiKeyRequired":"Chave API (obrigat\xf3ria)","customUrlOptional":"URL personalizado (opcional)","testDesc":"Vamos verificar se a conex\xe3o do seu provedor funciona.","runTest":"Execute o teste de conex\xe3o","testingConnection":"Testando conex\xe3o...","connectionSuccessful":"Conex\xe3o bem-sucedida! Seu provedor est\xe1 pronto.","noProviderFound":"Nenhum provedor encontrado. Voc\xea pode adicionar um do painel posteriormente.","testFailed":"O teste falhou, mas voc\xea pode configurar isso mais tarde.","couldNotTest":"N\xe3o foi poss\xedvel testar agora. Voc\xea pode testar no painel.","doneDesc":"Est\xe1 tudo pronto! Sua inst\xe2ncia do OmniRoute est\xe1 configurada e pronta para fazer proxy de solicita\xe7\xf5es de IA.","yourEndpoint":"Seu ponto final:","continue":"Continuar","retry":"Tentar novamente","failedSetPassword":"Falha ao definir a senha. Tente novamente.","failedAddProvider":"Falha ao adicionar provedor. Tente novamente.","connectionError":"Erro de conex\xe3o. Por favor, tente novamente.","provider":"Provedor"},"providers":{"title":"Provedores","addProvider":"Adicionar provedor","editProvider":"Editar provedor","deleteProvider":"Excluir provedor","noProviders":"Nenhum provedor configurado","modelAvailability":"Disponibilidade do modelo","accounts":"Contas","newAccount":"Nova conta","deleteConfirm":"Tem certeza de que deseja excluir este provedor?","testing":"Testando...","testConnection":"Conex\xe3o de teste","testSuccess":"Conex\xe3o bem-sucedida","testFailed":"Falha na conex\xe3o","available":"Dispon\xedvel","cooldown":"Recarga","unavailable":"Indispon\xedvel","unknown":"Desconhecido","oauthLabel":"OAuth","compatibleLabel":"Compat\xedvel","chat":"Bate-papo","responses":"Respostas","messages":"Mensagens","oauthProviders":"Provedores OAuth","freeProviders":"Provedores Gratuitos","apiKeyProviders":"Provedores de chaves de API","compatibleProviders":"Provedores compat\xedveis com chave de API","testAll":"Teste tudo","testAllOAuth":"Teste todas as conex\xf5es OAuth","testAllFree":"Teste todas as conex\xf5es gratuitas","testAllApiKey":"Teste todas as conex\xf5es de chave de API","testAllCompatible":"Teste todas as conex\xf5es compat\xedveis","connected":"{count} Conectado","errorCount":"{count} Erro ({code})","errorCountNoCode":"{count} Erro","noConnections":"Sem conex\xf5es","disabled":"Desativado","enableProvider":"Habilitar provedor","disableProvider":"Desativar provedor","testResults":"Resultados do teste","noCompatibleYet":"Nenhum provedor compat\xedvel adicionado ainda","compatibleHint":"Use os bot\xf5es acima para adicionar endpoints compat\xedveis com OpenAI ou Antr\xf3pico","addOpenAICompatible":"Adicionar compat\xedvel com OpenAI","addAnthropicCompatible":"Adicionar Compat\xedvel Antr\xf3pico","addNewProvider":"Adicionar novo provedor","backToProviders":"Voltar para Provedores","configureNewProvider":"Configure um novo provedor de IA para usar com seus aplicativos.","providerLabel":"Provedor","selectProvider":"Selecione um provedor","selectedProvider":"Provedor selecionado","authMethod":"M\xe9todo de autentica\xe7\xe3o","apiKeyLabel":"Chave de API","apiKeyRequired":"A chave de API \xe9 obrigat\xf3ria","selectProviderRequired":"Selecione um provedor","enterApiKey":"Insira sua chave API","apiKeySecure":"Sua chave API ser\xe1 criptografada e armazenada com seguran\xe7a.","oauth2Connect":"Conecte-se com OAuth2","oauth2Label":"OAuth2","oauth2Desc":"Conecte sua conta usando autentica\xe7\xe3o OAuth2.","displayName":"Nome de exibi\xe7\xe3o","displayNamePlaceholder":"por exemplo, API de produ\xe7\xe3o, ambiente de desenvolvimento","displayNameHint":"Opcional. Um nome amig\xe1vel para identificar esta configura\xe7\xe3o.","active":"Ativo","activeDescription":"Habilite este provedor para uso em seus aplicativos","cancel":"Cancelar","createProvider":"Criar provedor","failedCreate":"Falha ao criar provedor","errorOccurred":"Ocorreu um erro. Por favor, tente novamente.","modelStatus":"Status do modelo","allModelsOperational":"Todos os modelos operacionais","modelsWithIssues":"{count} modelo(s) com problemas","allModelsNormal":"Todos os modelos est\xe3o respondendo normalmente.","cooldownCleared":"Tempo de espera liberado para {model}","failedClearCooldown":"Falha ao limpar o tempo de espera","loadingAvailability":"Carregando disponibilidade do modelo...","clearCooldown":"Limpar","clearing":"Limpando...","until":"At\xe9 {time}","providerTestFailed":"Falha no teste do provedor","modeTest":"{mode} Teste","passedCount":"{count} aprovado","failedCount":"{count} falhou","testedCount":"{count} testado","millisecondsAbbr":"{value}ms","okShort":"OK","errorShort":"ERRO","noActiveConnectionsInGroup":"Nenhuma conex\xe3o ativa encontrada para este grupo.","allTestsPassed":"Todos os testes {total} foram aprovados","testSummary":"{passed}/{total} aprovado, {failed} falhou","nameLabel":"Nome","prefixLabel":"Prefixo","baseUrlLabel":"URL base","apiTypeLabel":"Tipo de API","prefixHint":"Obrigat\xf3rio. Prefixo exclusivo para nomes de modelos.","nameHint":"Obrigat\xf3rio. Um r\xf3tulo amig\xe1vel para este n\xf3.","baseUrlHint":"Obrigat\xf3rio. URL base da API do provedor.","anthropicPrefixPlaceholder":"ac-prod","openaiPrefixPlaceholder":"oc-prod","anthropicBaseUrlPlaceholder":"https://api.anthropic.com/v1","openaiBaseUrlPlaceholder":"https://api.openai.com/v1","validateConnection":"Validar conex\xe3o","validating":"Validando...","connectionValid":"A conex\xe3o \xe9 v\xe1lida!","connectionFailed":"Falha na conex\xe3o. Verifique o URL e a chave.","testKeyLabel":"Chave de API de teste","testKeyPlaceholder":"sk-... (apenas para valida\xe7\xe3o)","providerNotFound":"Provedor n\xe3o encontrado","deleteConnectionConfirm":"Excluir esta conex\xe3o?","failedSetAlias":"Falha ao definir o alias","failedSaveConnection":"Falha ao salvar conex\xe3o","failedSaveConnectionRetry":"Falha ao salvar a conex\xe3o. Por favor, tente novamente.","failedRetestConnection":"Falha ao testar novamente a conex\xe3o","deleteCompatibleNodeConfirm":"Excluir este n\xf3 compat\xedvel com {type}?","anthropicCompatibleDetails":"Detalhes compat\xedveis com antr\xf3picos","openaiCompatibleDetails":"Detalhes compat\xedveis com OpenAI","messagesApi":"API de mensagens","responsesApi":"API de respostas","chatCompletions":"Conclus\xf5es de bate-papo","importingModels":"Importando...","importFromModels":"Importar de /modelos","addConnectionToImport":"Adicione uma conex\xe3o para permitir a importa\xe7\xe3o.","noModelsConfigured":"Nenhum modelo configurado","connectionCount":"{count} conex\xf5es","fetchingModels":"Buscando modelos dispon\xedveis...","failedFetchModels":"Falha ao buscar modelos","noModelsFound":"Nenhum modelo encontrado","importFailed":"Falha na importa\xe7\xe3o","noNewModelsAdded":"Nenhum novo modelo foi adicionado.","adding":"Adicionando...","importingModelsTitle":"Importando Modelos","copyModel":"Copiar modelo","removeModel":"Remover modelo","rateLimitProtected":"Protegido","rateLimitUnprotected":"Desprotegido","enableRateLimitProtection":"Clique para ativar a prote\xe7\xe3o de limite de taxa","disableRateLimitProtection":"Clique para desativar a prote\xe7\xe3o de limite de taxa","productionKey":"Chave de produ\xe7\xe3o","enterNewApiKey":"Insira a nova chave de API","optional":"Opcional","anthropicCompatibleName":"Compat\xedvel Antr\xf3pico","openaiCompatibleName":"Compat\xedvel com OpenAI","failedImportModels":"Falha ao importar modelos","noModelsReturnedFromEndpoint":"Nenhum modelo foi retornado do endpoint /models.","importingModelsProgress":"Importando {current} de modelos {total}...","foundModelsStartingImport":"Modelos {count} encontrados. Iniciando importa\xe7\xe3o...","importingModelById":"Importando {modelId}...","importSuccessCount":"{count, plural, one {# model} other {# models}} importado com sucesso!","noNewModelsAddedExisting":"Nenhum novo modelo foi adicionado (todos j\xe1 existem).","importDoneCount":"✓ Pronto! {count, plural, one {# model imported.} other {# models imported.}}","unexpectedErrorOccurred":"Ocorreu um erro inesperado","connectionCountLabel":"{count, plural, one {# connection} other {# connections}}","messagesPath":"mensagens","responsesPath":"respostas","chatCompletionsPath":"bate-papo/conclus\xf5es","add":"Adicionar","edit":"Editar","delete":"Excluir","anthropic":"Antr\xf3pico","openai":"OpenAI","singleConnectionPerCompatible":"Somente uma conex\xe3o \xe9 permitida por n\xf3 compat\xedvel. Adicione outro n\xf3 se precisar de mais conex\xf5es.","connections":"Conex\xf5es","providerProxyTitleConfigured":"Proxy do provedor: {host}","configured":"configurado","providerProxyConfigureHint":"Configure o proxy para todas as conex\xf5es deste provedor","providerProxy":"Proxy do provedor","noConnectionsYet":"Ainda n\xe3o h\xe1 conex\xf5es","addFirstConnectionHint":"Adicione sua primeira conex\xe3o para come\xe7ar","addConnection":"Adicionar conex\xe3o","availableModels":"Modelos Dispon\xedveis","pageAutoRefresh":"A p\xe1gina ser\xe1 atualizada automaticamente...","statusDisabled":"desativado","statusConnected":"conectado","statusRuntimeIssue":"problema de tempo de execu\xe7\xe3o","statusAuthFailed":"falha na autentica\xe7\xe3o","statusRateLimited":"taxa limitada","statusNetworkIssue":"problema de rede","statusTestUnsupported":"teste sem suporte","statusUnavailable":"indispon\xedvel","statusFailed":"falhou","statusError":"erro","oauthAccount":"Conta OAuth","errorTypeRuntime":"Tempo de execu\xe7\xe3o local","errorTypeUpstreamAuth":"Autentica\xe7\xe3o upstream","errorTypeMissingCredential":"Credencial ausente","errorTypeRefreshFailed":"Falha na atualiza\xe7\xe3o","errorTypeTokenExpired":"O token expirou","errorTypeRateLimited":"Taxa limitada","errorTypeUpstreamUnavailable":"Upstream indispon\xedvel","errorTypeNetworkError":"Erro de rede","errorTypeTestUnsupported":"Teste sem suporte","errorTypeUpstreamError":"Erro de envio","proxySourceGlobal":"Globais","proxySourceProvider":"Provedor","proxySourceKey":"Chave","proxyConfiguredBySource":"Proxy ({source}): {host}","autoPriority":"Autom\xe1tico: {priority}","proxy":"Procurador","retestAuthentication":"Testar novamente a autentica\xe7\xe3o","retest":"Teste novamente","disableConnection":"Desativar conex\xe3o","enableConnection":"Habilitar conex\xe3o","reauthenticateConnection":"Autentique novamente esta conex\xe3o","proxyConfig":"Configura\xe7\xe3o de proxy","aliasExistsAlert":"O alias \\"{alias}\\" j\xe1 existe. Use um modelo diferente ou edite o alias existente.","openRouterAnyModelHint":"OpenRouter suporta qualquer modelo. Adicione modelos e crie aliases para acesso r\xe1pido.","modelIdFromOpenRouter":"ID do modelo (do OpenRouter)","openRouterModelPlaceholder":"antr\xf3pico/claude-3-opus","customModels":"Modelos personalizados","customModelsHint":"Adicione IDs de modelo que n\xe3o est\xe3o na lista padr\xe3o. Eles estar\xe3o dispon\xedveis para roteamento.","modelId":"ID do modelo","customModelPlaceholder":"por exemplo gpt-4.5-turbo","loading":"Carregando...","removeCustomModel":"Remover modelo personalizado","noCustomModels":"Nenhum modelo personalizado adicionado ainda.","allSuggestedAliasesExist":"Todos os aliases sugeridos j\xe1 existem. Escolha um modelo diferente ou remova aliases conflitantes.","failedSaveCustomModel":"Falha ao salvar o modelo personalizado","modelAddedSuccess":"Modelo {modelId} adicionado com sucesso","failedAddModelTryAgain":"Falha ao adicionar modelo. Por favor, tente novamente.","failedSaveImportedModel":"Falha ao salvar o modelo importado no banco de dados personalizado","failedImportModelsTryAgain":"Falha ao importar modelos. Por favor, tente novamente.","failedRemoveModelFromDatabase":"Falha ao remover o modelo do banco de dados","modelRemovedSuccess":"Modelo removido com sucesso","failedDeleteModelTryAgain":"Falha ao excluir modelo. Por favor, tente novamente.","compatibleModelsDescription":"Adicione modelos compat\xedveis com {type} manualmente ou importe-os do endpoint /models.","anthropicCompatibleModelPlaceholder":"claude-3-opus-20240229","openaiCompatibleModelPlaceholder":"gpt-4o","apiKeyValidationFailed":"Falha na valida\xe7\xe3o da chave de API. Verifique sua chave e tente novamente.","addProviderApiKeyTitle":"Adicionar chave de API {provider}","checking":"Verificando...","check":"Verifique","valid":"V\xe1lido","invalid":"Inv\xe1lido","creating":"Criando...","validationChecksAnthropicCompatible":"A valida\xe7\xe3o verifica {provider} verificando a chave de API.","validationChecksOpenAiCompatible":"A valida\xe7\xe3o verifica {provider} via /models em seu URL base.","priorityLabel":"Prioridade","saving":"Salvando...","save":"Salvar","editConnection":"Editar conex\xe3o","accountName":"Nome da conta","email":"E-mail","healthCheckMinutes":"Verifica\xe7\xe3o de integridade (min)","healthCheckHint":"Intervalo de atualiza\xe7\xe3o de token proativo. 0 = desabilitado.","failedTestConnection":"Falha ao testar a conex\xe3o","failed":"Falha","leaveBlankKeepCurrentApiKey":"Deixe em branco para manter a chave API atual.","editCompatibleTitle":"Editar {type} Compat\xedvel","compatibleBaseUrlHint":"Use o URL base (terminando em /v1) para sua API compat\xedvel com {type}.","apiKeyForCheck":"Chave API (para verifica\xe7\xe3o)","compatibleProdPlaceholder":"{type} Compat\xedvel (Produ\xe7\xe3o)"},"settings":{"title":"Configura\xe7\xf5es","general":"Geral","security":"Seguran\xe7a","appearance":"Apar\xeancia","routing":"Roteamento","cache":"Cache","resilience":"Resili\xeancia","systemPrompt":"Alerta do sistema","thinkingBudget":"Pensando no or\xe7amento","proxy":"Procurador","pricing":"Pre\xe7os","storage":"Armazenamento","policies":"Pol\xedticas","ipFilter":"Filtro IP","comboDefaults":"Padr\xf5es de combina\xe7\xe3o","fallbackChains":"Cadeias substitutas","changePassword":"Alterar senha","enablePassword":"Habilitar senha","darkMode":"Modo escuro","lightMode":"Modo claro","systemTheme":"Tema do sistema","enableCache":"Habilitar cache","cacheTTL":"Cache TTL","maxCacheSize":"Tamanho m\xe1ximo do cache","clearCache":"Limpar Cache","cacheHits":"Acessos de cache","cacheMisses":"Perdas de cache","hitRate":"Taxa de acerto","cacheEntries":"Entradas de cache","circuitBreaker":"Disjuntor","retryPolicy":"Pol\xedtica de Nova Tentativa","maxRetries":"M\xe1ximo de tentativas","retryDelay":"Atraso na nova tentativa","timeoutMs":"Tempo limite (ms)","enableSystemPrompt":"Habilitar prompt do sistema","systemPromptText":"Texto de prompt do sistema","enableThinking":"Habilite o pensamento","maxThinkingTokens":"Tokens de pensamento m\xe1ximo","enableProxy":"Habilitar proxy","proxyUrl":"URL proxy","pricingRates":"Formato de taxas de pre\xe7os","currentPricing":"Vis\xe3o geral de pre\xe7os atuais","loadingPricing":"Carregando dados de pre\xe7os...","noPricing":"N\xe3o h\xe1 dados de pre\xe7os dispon\xedveis","input":"Entrada","output":"Sa\xedda","cached":"Em cache","reasoning":"Racioc\xednio","cacheCreation":"Cria\xe7\xe3o de Cache","customPricing":"Pre\xe7o personalizado","databaseSize":"Tamanho do banco de dados","backupDb":"Banco de dados de backup","restoreDb":"Restaurar banco de dados","exportData":"Exportar dados","importData":"Importar dados","clearData":"Limpar todos os dados","clearDataConfirm":"Isso excluir\xe1 permanentemente todos os dados. Tem certeza?","enableRequestLogs":"Habilitar registros de solicita\xe7\xe3o","logRetention":"Reten\xe7\xe3o de registros","ipWhitelist":"Lista de permiss\xf5es de IP","ipBlacklist":"Lista negra de IP","addIP":"Adicionar IP","savedSuccessfully":"Configura\xe7\xf5es salvas com sucesso","ai":"IA","advanced":"Avan\xe7ado","localMode":"Modo Local — Todos os dados armazenados em sua m\xe1quina","settingsSectionsAria":"Se\xe7\xf5es de configura\xe7\xf5es","switchThemes":"Alternar entre temas claros e escuros","themeSelectionAria":"Sele\xe7\xe3o de tema","themeLight":"Luz","themeDark":"Escuro","themeSystem":"Sistema","hideHealthLogs":"Ocultar registros de verifica\xe7\xe3o de integridade","hideHealthLogsDesc":"Quando ativado, suprime mensagens [HealthCheck] no console do servidor","promptCache":"Cache de prompt","flushCache":"Liberar cache","flushing":"Rubor…","size":"Tamanho","hits":"Acessos","evictions":"Despejos","loadingCacheStats":"Carregando estat\xedsticas de cache…","globalProxy":"Procurador global","globalProxyDesc":"Configure um proxy de sa\xedda global para todas as chamadas de API. Provedores individuais, combos e chaves podem substituir isso.","noGlobalProxy":"Nenhum proxy global configurado","globalLabel":"Globais","configure":"Configurar","globalSystemPrompt":"Alerta do sistema global","systemPromptDesc":"Injetado em todas as solicita\xe7\xf5es no n\xedvel do proxy","saved":"Salvo","systemPromptPlaceholder":"Digite o prompt do sistema para injetar em todas as solicita\xe7\xf5es...","systemPromptHint":"Este prompt \xe9 anexado \xe0 mensagem do sistema de cada solicita\xe7\xe3o. Use para instru\xe7\xf5es globais, diretrizes de seguran\xe7a ou regras de formata\xe7\xe3o de resposta.","chars":"{count} caracteres","thinkingBudgetTitle":"Pensando no or\xe7amento","thinkingBudgetDesc":"Controle o uso do token de racioc\xednio de IA em todas as solicita\xe7\xf5es","passthrough":"Passagem","passthroughDesc":"Sem altera\xe7\xf5es – o cliente controla o or\xe7amento pensado","auto":"Autom\xe1tico","autoDesc":"Remova todas as configura\xe7\xf5es de pensamento – deixe o provedor decidir","custom":"Personalizado","customDesc":"Defina um or\xe7amento fixo de tokens para todas as solicita\xe7\xf5es","adaptive":"Adaptativo","adaptiveDesc":"Dimensione o or\xe7amento com base na complexidade da solicita\xe7\xe3o","effortNone":"Nenhum (0 tokens)","effortLow":"Baixo (tokens de 1K)","effortMedium":"M\xe9dio (10 mil tokens)","effortHigh":"Alto (128 mil tokens)","tokenBudget":"Or\xe7amento de token","tokens":"fichas","baseEffortLevel":"N\xedvel de esfor\xe7o b\xe1sico","adaptiveHint":"O modo adaptativo \xe9 dimensionado a partir desse n\xedvel b\xe1sico com base na contagem de mensagens, no uso da ferramenta e no comprimento do prompt.","requireLogin":"Exigir login","requireLoginDesc":"Quando LIGADO, o painel requer senha. Quando DESLIGADO, acesse sem login.","currentPassword":"Senha atual","enterCurrentPassword":"Digite a senha atual","newPassword":"Nova senha","enterNewPassword":"Digite a nova senha","confirmPassword":"Confirme a nova senha","confirmPasswordPlaceholder":"Confirme a nova senha","passwordsNoMatch":"As senhas n\xe3o coincidem","passwordUpdated":"Senha atualizada com sucesso","failedUpdatePassword":"Falha ao atualizar a senha","errorOccurred":"Ocorreu um erro","updatePassword":"Atualizar senha","setPassword":"Definir senha","apiEndpointProtection":"Prote\xe7\xe3o de endpoint de API","requireAuthModels":"Exigir chave de API para /models","requireAuthModelsDesc":"Quando ativado, o endpoint /v1/models retorna 404 para solicita\xe7\xf5es n\xe3o autenticadas. Impede a descoberta de modelos por usu\xe1rios n\xe3o autorizados.","blockedProviders":"Provedores bloqueados","blockedProvidersDesc":"Oculte provedores espec\xedficos da resposta /v1/models. Os provedores bloqueados n\xe3o aparecer\xe3o nas listagens de modelos.","providersBlocked":"{count} provedor(es) bloqueado(s) em /models","blockProviderTitle":"Bloquear {provider}","unblockProviderTitle":"Desbloquear {provider}","routingStrategy":"Estrat\xe9gia de Roteamento","fillFirst":"Preencha primeiro","fillFirstDesc":"Use contas em ordem de prioridade","roundRobin":"Rodada Robin","roundRobinDesc":"Percorrer todas as contas","p2c":"P2C","p2cDesc":"Escolha 2 aleatoriamente, use o mais saud\xe1vel","random":"Aleat\xf3rio","randomDesc":"Conta aleat\xf3ria a cada solicita\xe7\xe3o","leastUsed":"Menos usado","leastUsedDesc":"Escolha a conta usada menos recentemente","costOpt":"Op\xe7\xe3o de custo","costOptDesc":"Prefira a conta mais barata dispon\xedvel","stickyLimit":"Limite pegajoso","stickyLimitDesc":"Chamadas por conta antes de mudar","modelAliases":"Aliases de modelo","modelAliasesDesc":"Padr\xf5es curinga para remapear nomes de modelos • Use * e ?","aliasPatternPlaceholder":"claude-soneto-*","aliasTargetPlaceholder":"claude-soneto-4-20250514","pattern":"Padr\xe3o","targetModel":"Modelo alvo","add":"+ Adicionar","session":"Sess\xe3o","sessionDetailsAria":"Detalhes da sess\xe3o","status":"Estado","authenticated":"Autenticado","guest":"Convidado","loginTime":"Hora de login","sessionAge":"Idade da sess\xe3o","browser":"Navegador","clearLocalData":"Limpar dados locais","logout":"Sair","clearLocalDataConfirm":"Limpar todos os dados locais? Isso redefinir\xe1 suas prefer\xeancias.","unknown":"Desconhecido","systemActor":"sistema","ipAccessControl":"Controle de acesso IP","ipAccessControlDesc":"Bloquear ou permitir endere\xe7os IP espec\xedficos","ipModeDisabled":"Desativado","ipModeBlacklist":"Lista negra","ipModeWhitelist":"Lista de permiss\xf5es","ipModeWhitelistPriority":"Prioridade WL","addIpAddress":"Adicionar endere\xe7o IP","ipAddressPlaceholder":"192.168.1.0/24 ou 10.0.*.*","block":"+ Bloquear","allow":"+ Permitir","blocked":"Bloqueado ({count})","allowed":"Permitido ({count})","temporaryBans":"Banimentos tempor\xe1rios ({count})","minLeft":"{min}m restantes","auditLog":"Registro de auditoria","searchAuditLogs":"Pesquisar registros de auditoria...","failedLoadAuditLog":"Falha ao carregar o log de auditoria","noAuditEvents":"Nenhum evento de auditoria encontrado","action":"A\xe7\xe3o","actor":"Ator","details":"Detalhes","time":"Hora","fallbackChainsTitle":"Cadeias substitutas","fallbackChainsDesc":"Definir ordem de fallback do provedor por modelo","addChain":"+ Adicionar corrente","modelName":"Nome do modelo","modelNamePlaceholder":"claude-soneto-4-20250514","providersCommaSeparated":"Provedores (separados por v\xedrgula, em ordem de prioridade)","providersCommaSeparatedPlaceholder":"antr\xf3pico, openai, g\xeameos","createChain":"Criar cadeia","noFallbackChains":"Sem cadeias de fallback","noFallbackChainsDesc":"Crie uma cadeia para definir a ordem de fallback do provedor para um modelo.","loadingFallbackChains":"Carregando cadeias de fallback...","deleteChainConfirm":"Excluir cadeia substituta para \\"{model}\\"?","chainCreated":"Cadeia criada para {model}","chainDeleted":"Cadeia exclu\xedda para {model}","failedCreateChain":"Falha ao criar cadeia","failedDeleteChain":"Falha ao excluir a cadeia","deleteChain":"Excluir cadeia","fillModelAndProviders":"Preencha o nome do modelo e os fornecedores","addAtLeastOneProvider":"Adicione pelo menos um provedor","comboDefaultsTitle":"Padr\xf5es de combina\xe7\xe3o","globalComboConfig":"Configura\xe7\xe3o de combina\xe7\xe3o global","defaultStrategy":"Estrat\xe9gia padr\xe3o","defaultStrategyDesc":"Aplicado a novos combos sem estrat\xe9gia expl\xedcita","comboStrategyAria":"Estrat\xe9gia combinada","priority":"Prioridade","weighted":"Ponderado","maxRetriesLabel":"M\xe1ximo de tentativas","retryDelayLabel":"Atraso de nova tentativa (ms)","timeoutLabel":"Tempo limite (ms)","healthCheck":"Verifica\xe7\xe3o de sa\xfade","healthCheckDesc":"Verifique previamente a disponibilidade do provedor","trackMetrics":"Rastrear m\xe9tricas","trackMetricsDesc":"Registrar m\xe9tricas de solicita\xe7\xe3o por combina\xe7\xe3o","providerOverrides":"Substitui\xe7\xf5es de provedor","providerOverridesDesc":"Substitua o tempo limite e novas tentativas por provedor. As configura\xe7\xf5es do provedor substituem os padr\xf5es globais.","providerMaxRetriesAria":"{provider} m\xe1ximo de novas tentativas","providerTimeoutAria":"{provider} tempo limite ms","removeProviderOverrideAria":"Remover substitui\xe7\xe3o de {provider}","newProviderNamePlaceholder":"por exemplo google, abraai...","newProviderNameAria":"Novo nome do provedor","retries":"novas tentativas","ms":"senhora","saveComboDefaults":"Salvar padr\xf5es de combina\xe7\xe3o","maxNestingDepth":"Profundidade m\xe1xima de aninhamento","concurrencyPerModel":"Simultaneidade/Modelo","queueTimeout":"Tempo limite da fila (ms)","providerProfiles":"Perfis de Provedores","providerProfilesDesc":"Configura\xe7\xf5es de resili\xeancia separadas para provedores OAuth (baseado em sess\xe3o) e chave de API (medida). Os provedores OAuth t\xeam limites mais r\xedgidos devido aos limites de taxas mais baixos.","oauthProviders":"Provedores OAuth","apiKeyProviders":"Provedores de chaves de API","transientCooldown":"Recarga transit\xf3ria","rateLimitCooldown":"Recarga do Limite de Taxa","maxBackoffLevel":"N\xedvel m\xe1ximo de espera","cbThreshold":"Limite CB","cbResetTime":"Tempo de reinicializa\xe7\xe3o do CB","rateLimiting":"Limita\xe7\xe3o de taxa","rateLimitingDesc":"Os provedores de chaves de API s\xe3o automaticamente limitados por taxas com padr\xf5es seguros. Os limites s\xe3o aprendidos nos cabe\xe7alhos de resposta e se adaptam ao longo do tempo.","defaultSafetyNet":"Rede de seguran\xe7a padr\xe3o","rpm":"RPM","minGap":"Intervalo m\xednimo","maxConcurrent":"M\xe1ximo simult\xe2neo","activeLimiters":"Limitadores Ativos","noActiveLimiters":"Ainda n\xe3o h\xe1 limitadores de taxa ativos.","reservoir":"Reservat\xf3rio","running":"Correndo","queued":"Na fila","circuitBreakers":"Disjuntores","breakerStateClosed":"Fechado","breakerStateOpen":"Abrir","breakerStateHalfOpen":"Meio aberto","tripped":"{count} trope\xe7ou","healthy":"{count} \xedntegro","resetAll":"Redefinir tudo","noCircuitBreakers":"Nenhum disjuntor ativo ainda. Eles s\xe3o criados automaticamente quando as solicita\xe7\xf5es fluem pelo pipeline combinado.","failures":"{count} falha(s)","policiesLocked":"Pol\xedticas e identificadores bloqueados","allOperational":"Todos os sistemas operacionais – sem bloqueios ou disjuntores desarmados","loadingPolicies":"Carregando pol\xedticas...","lockedIdentifiers":"Identificadores bloqueados","unlockedIdentifier":"Desbloqueado: {identifier}","sinceDate":"desde {date}","forceUnlock":"For\xe7ar desbloqueio","unlocking":"Desbloqueando...","failedUnlock":"Falha ao desbloquear","failedLoadWithStatus":"Falha ao carregar: {status}","failedLoadResilience":"Falha ao carregar o status de resili\xeancia","saveFailed":"Falha ao salvar","resetFailed":"Falha na redefini\xe7\xe3o","loadingResilience":"Carregando status de resili\xeancia...","retry":"Tentar novamente","systemStorage":"Sistema e armazenamento","allDataLocal":"Todos os dados armazenados localmente em sua m\xe1quina","databasePath":"Caminho do banco de dados","exportDatabase":"Exportar banco de dados","exportAll":"Exportar tudo (.tar.gz)","importDatabase":"Importar banco de dados","confirmDbImport":"Confirmar importa\xe7\xe3o do banco de dados","confirmDbImportDesc":"Isso substituir\xe1 todos os dados atuais pelo conte\xfado de {file}. Um backup ser\xe1 criado automaticamente antes da importa\xe7\xe3o.","yesImport":"Sim, importar","lastBackup":"\xdaltimo backup","noBackupYet":"Ainda n\xe3o h\xe1 backup","backupNow":"Fa\xe7a backup agora","backupRestore":"Backup e restaura\xe7\xe3o","viewBackups":"Ver backups","hide":"Esconder","backupRetentionDesc":"Os instant\xe2neos do banco de dados s\xe3o criados automaticamente antes da restaura\xe7\xe3o e a cada 15 minutos quando os dados s\xe3o alterados. Reten\xe7\xe3o: 24 horas + 30 backups di\xe1rios com rota\xe7\xe3o inteligente.","loadingBackups":"Carregando backups...","noBackupsYet":"Nenhum backup dispon\xedvel ainda. Os backups ser\xe3o criados automaticamente quando os dados forem alterados.","backupsAvailable":"{count} backup(s) dispon\xedveis","refresh":"Atualizar","confirm":"Confirmar?","yes":"Sim","no":"N\xe3o","restore":"Restaurar","invalidFileType":"Tipo de arquivo inv\xe1lido. Somente arquivos .sqlite s\xe3o aceitos.","exportFailed":"Falha na exporta\xe7\xe3o","exportFailedWithError":"Falha na exporta\xe7\xe3o: {error}","fullExportFailedWithError":"Falha na exporta\xe7\xe3o completa: {error}","backupCreated":"Backup criado: {file}","restoreSuccess":"Restaurado! {connections} conex\xf5es, {nodes} n\xf3s, {combos} combos, {apiKeys} chaves de API.","importSuccess":"Banco de dados importado! {connections} conex\xf5es, {nodes} n\xf3s, {combos} combos, {apiKeys} chaves de API.","justNow":"agora mesmo","minutesAgo":"{count}m atr\xe1s","hoursAgo":"{count}h atr\xe1s","daysAgo":"{count}d atr\xe1s","backupReasonManual":"manual","backupReasonPreRestore":"pr\xe9-restaura\xe7\xe3o","connectionsCount":"{count, plural, one {# connection} other {# connections}}","noChangesSinceBackup":"Nenhuma altera\xe7\xe3o desde o \xfaltimo backup","backupFailed":"Falha no backup","restoreFailed":"Falha na restaura\xe7\xe3o","importFailed":"Falha na importa\xe7\xe3o","errorDuringRestore":"Ocorreu um erro durante a restaura\xe7\xe3o","errorDuringImport":"Ocorreu um erro durante a importa\xe7\xe3o","modelPricing":"Pre\xe7o do modelo","modelPricingDesc":"Configurar taxas de custo por modelo • Todas as taxas em tokens de US$/1 milh\xe3o","providers":"Provedores","registry":"Registro","priced":"Pre\xe7o","searchProvidersModels":"Pesquise fornecedores ou modelos...","showAll":"Mostrar tudo","noProvidersMatch":"Nenhum provedor corresponde \xe0 sua pesquisa.","howPricingWorks":"Como funciona o pre\xe7o","cacheWrite":"Grava\xe7\xe3o em cache","unsaved":"n\xe3o salvo","resetDefaults":"Redefinir padr\xf5es","saveProvider":"Salvar provedor","saving":"Salvando...","model":"Modelo","models":"modelos","moreProviders":"{count} mais provedores","withPricing":"com pre\xe7os configurados","policiesCircuitBreakers":"Pol\xedticas e disjuntores","activeIssuesDetected":"Problemas ativos detectados","off":"Desligado","resetPricingConfirm":"Redefinir todos os pre\xe7os de {provider} para os padr\xf5es?","pricingDescInput":"Entrada: tokens enviados ao modelo","pricingDescOutput":"Sa\xedda: tokens gerados","pricingDescCached":"Armazenado em cache: entrada reutilizada (~50% da taxa de entrada)","pricingDescReasoning":"Racioc\xednio: tokens de pensamento (volta para Sa\xedda)","pricingDescCacheWrite":"Cache Write: criando entradas de cache (volta para Input)","pricingDescFormula":"Custo = (entrada \xd7 taxa_de_entrada) + (sa\xedda \xd7 taxa_de_sa\xedda) + (em cache \xd7 taxa_de_cache) por milh\xe3o de tokens.","pricingSettingsTitle":"Configura\xe7\xf5es de pre\xe7os","totalModels":"Modelos totais","active":"Ativo","costCalculation":"C\xe1lculo de custos","costCalculationDesc":"Os custos s\xe3o calculados com base no uso do token e nas taxas de pre\xe7os configuradas para cada modelo.","pricingFormat":"Formato de pre\xe7os","pricingFormatDesc":"Todas as taxas s\xe3o em tokens de US$/1 milh\xe3o (d\xf3lares por milh\xe3o de tokens).","tokenTypes":"Tipos de token","inputTokenDesc":"Tokens de prompt padr\xe3o","outputTokenDesc":"Tokens de conclus\xe3o/resposta","cachedTokenDesc":"Tokens de entrada armazenados em cache (normalmente 50% da taxa de entrada)","reasoningTokenDesc":"Tokens especiais de racioc\xednio/pensamento (substitui\xe7\xe3o para taxa de produ\xe7\xe3o)","cacheCreationTokenDesc":"Tokens usados para criar entradas de cache (fallback para taxa de entrada)","customPricingNote":"Voc\xea pode substituir o pre\xe7o padr\xe3o de modelos espec\xedficos. As substitui\xe7\xf5es personalizadas t\xeam prioridade sobre os pre\xe7os detectados automaticamente.","editPricing":"Editar pre\xe7os","viewFullDetails":"Ver detalhes completos"},"translator":{"title":"Tradutor","metaTitle":"Parque do Tradutor | OmniRoute","metaDescription":"Depure, teste e visualize tradu\xe7\xf5es de formatos de API entre provedores","playgroundTitle":"Parque do Tradutor","playground":"Parque infantil","realtime":"Atividade de tradu\xe7\xe3o em tempo real","chatTester":"Testador de bate-papo","testBench":"Bancada de testes","liveMonitor":"Monitoramento ao vivo","modeDescriptionPlayground":"Cole qualquer corpo de solicita\xe7\xe3o de API e veja como o OmniRoute o traduz entre formatos de provedor (OpenAI ↔ Claude ↔ Gemini ↔ API de respostas)","modeDescriptionChatTester":"Envie solicita\xe7\xf5es de chat reais por meio do OmniRoute e inspecione todo o percurso: entrada, solicita\xe7\xe3o traduzida, resposta do provedor e sa\xedda traduzida.","modeDescriptionTestBench":"Execute cen\xe1rios predefinidos e compare a compatibilidade entre provedores e modelos.","modeDescriptionLiveMonitor":"Assista a eventos de tradu\xe7\xe3o em tempo real \xe0 medida que as solicita\xe7\xf5es fluem pelo OmniRoute.","modeDescriptionFallback":"Depure, teste e visualize como o OmniRoute traduz solicita\xe7\xf5es de API entre provedores.","recentTranslations":"Tradu\xe7\xf5es recentes","noTranslations":"Ainda n\xe3o h\xe1 tradu\xe7\xf5es","source":"Fonte","target":"Alvo","time":"Hora","model":"Modelo","status":"Estado","latency":"Lat\xeancia","totalTranslations":"Total de tradu\xe7\xf5es","successful":"Bem sucedido","errors":"Erros","avgLatency":"Lat\xeancia m\xe9dia","millisecondsShort":"{value}ms","notAvailableSymbol":"—","liveAutoRefreshing":"Ao vivo – atualiza\xe7\xe3o autom\xe1tica","paused":"Pausado","eventsAppearHint":"Os eventos de tradu\xe7\xe3o aparecem aqui conforme as solicita\xe7\xf5es fluem pelo OmniRoute. Use qualquer um destes m\xe9todos para gerar eventos:","chatTesterTab":"Guia Testador de bate-papo","testBenchTab":"Aba Bancada de Teste","externalApiCalls":"Chamadas de API externas","ideCliIntegrations":"Integra\xe7\xf5es IDE/CLI","inMemoryNote":"Nota: Os eventos s\xe3o armazenados na mem\xf3ria e redefinidos quando o servidor \xe9 reiniciado.","ok":"OK","errorShort":"ERRO","formatConverter":"Conversor de formato","formatConverterDescription":"Cole ou digite um corpo de solicita\xe7\xe3o JSON. O tradutor detectar\xe1 automaticamente o formato de origem e o converter\xe1 para o formato de destino. Use isto para depurar como o OmniRoute traduz solicita\xe7\xf5es entre formatos (OpenAI ↔ Claude ↔ Gemini ↔ API de respostas).","input":"Entrada","output":"Sa\xedda","auto":"Autom\xe1tico","swapFormats":"Trocar formatos","translateAction":"Traduzir","clear":"Limpar","inputPlaceholder":"Cole o corpo da solicita\xe7\xe3o aqui ou selecione um modelo abaixo...","exampleTemplates":"Modelos de exemplo","exampleTemplatesHint":"- Clique para carregar","templateLoadHint":"O modelo carrega a solicita\xe7\xe3o no formato {format}. Altere o formato de origem para carregar em um formato diferente.","compatibilityTester":"Testador de compatibilidade","compatibilityReport":"Relat\xf3rio de compatibilidade","testBenchDescription":"Execute cen\xe1rios predefinidos (Simple Chat, Tool Calling, etc.) para verificar a tradu\xe7\xe3o e a compatibilidade do provedor. Selecione um formato de origem e um provedor de destino e execute todos os testes para ver uma porcentagem de compatibilidade. Use isso para descobrir quais recursos funcionam entre os provedores.","targetProvider":"Provedor de destino","runAllTests":"Execute todos os testes","runTest":"Executar teste","reRun":"Executar novamente","running":"Correndo...","passed":"passou","failed":"falhou","passedIconLabel":"✅ Aprovado","chunks":"peda\xe7os","scenarioSimpleChat":"Bate-papo simples","scenarioToolCalling":"Chamada de ferramenta","scenarioMultiTurn":"Multivoltas","scenarioThinking":"Pensando","scenarioSystemPrompt":"Alerta do sistema","scenarioStreaming":"Transmiss\xe3o","templateNames":{"simple-chat":"Bate-papo simples","tool-calling":"Chamada de ferramenta","multi-turn":"Multivoltas","thinking":"Pensando","system-prompt":"Alerta do sistema","streaming":"Transmiss\xe3o"},"templateDescriptions":{"simple-chat":"Mensagem de texto b\xe1sica","tool-calling":"Invoca\xe7\xe3o de fun\xe7\xe3o/ferramenta","multi-turn":"Conversa com hist\xf3ria","thinking":"Pensamento/racioc\xednio estendido","system-prompt":"Instru\xe7\xf5es complexas do sistema","streaming":"Solicita\xe7\xe3o de streaming SSE"},"templatePayloads":{"simpleChat":{"system":"Voc\xea \xe9 um assistente \xfatil.","userGreeting":"Ol\xe1! Como voc\xea est\xe1 hoje?"},"toolCalling":{"userWeather":"Como est\xe1 o clima em S\xe3o Paulo?","toolDescription":"Obtenha o clima atual para um local","cityNameDescription":"Nome da cidade"},"multiTurn":{"system":"Voc\xea \xe9 um assistente de codifica\xe7\xe3o.","userInitial":"Escreva uma fun\xe7\xe3o para classificar um array em Python.","assistantExample":"Aqui est\xe1 uma fun\xe7\xe3o de classifica\xe7\xe3o simples:\\n\\n```p\xedton\\ndef sort_array(arr):\\n retornar classificado (arr)\\n```","userFollowUp":"Agora classifique em ordem decrescente."},"thinking":{"question":"Qual \xe9 a soma dos primeiros 100 n\xfameros primos?"},"systemPrompt":{"systemInstruction":"Voc\xea \xe9 um engenheiro de software s\xeanior especializado em sistemas distribu\xeddos. Responda \xe0s perguntas de forma concisa usando as melhores pr\xe1ticas do setor. Sempre forne\xe7a exemplos de c\xf3digo quando relevante. Formate suas respostas usando markdown.","question":"Como fa\xe7o para implementar um padr\xe3o de disjuntor?"},"streaming":{"prompt":"Conte-me uma pequena hist\xf3ria sobre um rob\xf4 aprendendo a pintar."}},"openaiCompatibleLabel":"Compat\xedvel com OpenAI","anthropicCompatibleLabel":"Compat\xedvel Antr\xf3pico","noTemplateForFormat":"Nenhum modelo para este formato","translationFailed":"Falha na tradu\xe7\xe3o: {error}","pipelineDebugger":"Depurador de pipeline","translationPipeline":"Pipeline de Tradu\xe7\xe3o","pipelineVisualization":"Visualiza\xe7\xe3o de pipeline","pipelineVisualizationHint":"Envie uma mensagem para ver como sua solicita\xe7\xe3o flui atrav\xe9s de detec\xe7\xe3o → tradu\xe7\xe3o → chamada do provedor.","chatTesterDescription":"Envie mensagens em um formato de cliente espec\xedfico e inspecione cada etapa do pipeline de tradu\xe7\xe3o.","chatTesterFlow":"Solicita\xe7\xe3o do cliente → Detec\xe7\xe3o de formato → OpenAI Intermedi\xe1rio → Formato do provedor → Resposta","clickStepToInspect":"Clique em qualquer etapa para inspecionar os dados nessa fase.","clientFormat":"Formato do cliente","provider":"Provedor","modelPlaceholder":"Selecione ou digite um nome de modelo...","sendMessageToSeePipeline":"Envie uma mensagem para ver o pipeline de tradu\xe7\xe3o","chatMessageHintPrefix":"Sua mensagem ser\xe1 formatada como um","chatMessageHintSuffix":"solicita\xe7\xe3o, traduzida por meio do pipeline e enviada ao provedor selecionado.","youWithFormat":"Voc\xea ({format})","assistant":"Assistente","typeMessage":"Digite uma mensagem...","send":"Enviar","clientRequest":"Solicita\xe7\xe3o do cliente","clientRequestDescription":"O corpo da solicita\xe7\xe3o que seu cliente enviaria","formatDetected":"Formato detectado","formatDetectedDescription":"OmniRoute detecta automaticamente o formato da API na estrutura da solicita\xe7\xe3o","openaiIntermediate":"OpenAI intermedi\xe1rio","openaiIntermediateDescription":"Todos os formatos s\xe3o primeiro normalizados para o formato OpenAI (a ponte universal)","providerFormat":"Formato do provedor","providerFormatDescription":"O formato OpenAI \xe9 traduzido para o formato nativo do provedor","providerResponse":"Resposta do provedor","providerResponseRawDescription":"A resposta bruta da API do provedor","providerResponseSseDescription":"O fluxo SSE bruto da API do provedor","unexpectedError":"Ocorreu um erro inesperado","error":"Erro","errorMessage":"Erro: {message}","requestFailed":"Falha na solicita\xe7\xe3o","noTextExtracted":"(Nenhum texto extra\xeddo)","liveMonitorDescriptionPrefix":"Mostra eventos de tradu\xe7\xe3o \xe0 medida que as chamadas de API fluem pelo OmniRoute. Os eventos v\xeam do buffer na mem\xf3ria (redefini\xe7\xf5es na reinicializa\xe7\xe3o). Usar","liveMonitorDescriptionSuffix":"ou chamadas de API externas para gerar eventos."},"usage":{"title":"Uso","loggerTab":"Registrador","proxyTab":"Procurador","budgetManagement":"Gest\xe3o Or\xe7ament\xe1ria","budgetSaved":"Limites de or\xe7amento salvos","budgetSaveFailed":"Falha ao salvar o or\xe7amento","loadingBudgetData":"Carregando dados do or\xe7amento...","noApiKeysTitle":"Sem chaves de API","noApiKeysDescription":"Adicione chaves de API primeiro para configurar limites de or\xe7amento.","apiKey":"Chave de API","todaysSpend":"Gasto de hoje","thisMonth":"Este m\xeas","setLimits":"Definir limites","dailyLimitUsd":"Limite Di\xe1rio (USD)","monthlyLimitUsd":"Limite Mensal (USD)","warningThresholdPercent":"Limite de aviso (%)","dailyLimitPlaceholder":"por exemplo 5h00","monthlyLimitPlaceholder":"por exemplo 50,00","warningThresholdPlaceholder":"80","saveLimits":"Salvar Limites","budgetOk":"Or\xe7amento OK — {remaining} restantes","budgetExceeded":"Or\xe7amento excedido — solicita\xe7\xf5es podem ser bloqueadas","totalRequests":"Total de solicita\xe7\xf5es","noDataYet":"Ainda n\xe3o h\xe1 dados","latency":"Lat\xeancia","latencyP50":"p50","latencyP95":"p\xe1g.95","latencyP99":"p99","promptCache":"Cache de prompt","systemHealth":"Sa\xfade do sistema","entries":"Entradas","activeCount":"{count} ativo","openCircuitBreakersDetected":"Disjuntores abertos detectados","hitRate":"Taxa de acerto","hitsMisses":"Acertos / Erros","circuitBreakers":"Disjuntores","lockedIPs":"IPs bloqueados","lockoutsAutoRefreshHint":"Bloqueios de limite de taxa por modelo • Atualiza\xe7\xe3o autom\xe1tica de 10s","lockedCount":"{count, plural, one {# locked} other {# locked}}","timeLeft":"{time} restantes","howItWorks":"Como funciona","howItWorksSubtitle":"Saiba como as avalia\xe7\xf5es validam suas respostas do LLM","define":"Definir","defineStepDescription":"Crie casos de teste com prompts de entrada e crit\xe9rios de sa\xedda esperados usando estrat\xe9gias como cont\xe9m, regex ou correspond\xeancia exata.","run":"Corre","runStepDescription":"Execute casos de teste em seus endpoints LLM por meio do OmniRoute. Cada caso \xe9 enviado como uma solicita\xe7\xe3o de API real.","evaluate":"Avaliar","evaluateStepDescription":"As respostas s\xe3o comparadas com os crit\xe9rios esperados. Veja aprova\xe7\xe3o/reprova\xe7\xe3o para cada caso com m\xe9tricas de lat\xeancia e feedback detalhado.","evalSuites":"Su\xedtes de avalia\xe7\xe3o","evalSuitesHint":"Clique em um conjunto para visualizar casos de teste e execute para avaliar seus endpoints LLM","evalsLoading":"Carregando su\xedtes de avalia\xe7\xe3o...","noEvalSuitesFound":"Nenhuma su\xedte Eval encontrada","noEvalSuitesDescription":"Os conjuntos de avalia\xe7\xe3o podem ser definidos por meio da API ou em c\xf3digo. Eles testam os resultados do modelo em rela\xe7\xe3o aos resultados esperados usando estrat\xe9gias como cont\xe9m, regex, correspond\xeancia exata e fun\xe7\xf5es personalizadas.","columnCase":"Caso","columnStatus":"Estado","columnLatency":"Lat\xeancia","columnDetails":"Detalhes","columnModel":"Modelo","columnStrategy":"Estrat\xe9gia","columnExpected":"Esperado","statsSuites":"Su\xedtes","statsTestCases":"Casos de teste","statsModels":"Modelos","statsCoverage":"Cobertura","statsStrategiesCount":"{count} estrat\xe9gias","evaluationStrategies":"Estrat\xe9gias de Avalia\xe7\xe3o","modelsUnderTest":"Modelos em teste","searchSuitesPlaceholder":"Pesquisar su\xedtes...","passSuffix":"passar","casesCount":"{count, plural, one {# case} other {# cases}}","runEval":"Executar avalia\xe7\xe3o","runningProgress":"Executando {current}/{total}...","passRate":"taxa de aprova\xe7\xe3o","summaryBreakdown":"{passed} aprovado \xb7 {failed} reprovado \xb7 {total} total","passedIconLabel":"✅ Aprovado","failedIconLabel":"❌ Falhou","detailsContains":"Cont\xe9m: \\"{term}\\"","detailsRegex":"Regex: {pattern}","detailsExpected":"Esperado: \\"{expected}\\"","noResultsYet":"Ainda n\xe3o h\xe1 resultados","testCasesCount":"Casos de teste ({count})","noTestCasesDefined":"Nenhum caso de teste definido","runEvalHint":"Clique em \\"Executar avalia\xe7\xe3o\\" para executar todos os casos em seu endpoint LLM. Cada teste envia uma solicita\xe7\xe3o real atrav\xe9s do OmniRoute.","notifyNoTestCases":"Nenhum caso de teste definido para este pacote","notifyAllCasesPassed":"Todos os casos {total} foram aprovados ✅","notifySomeCasesFailed":"{passed}/{total} aprovado, {failed} falhou","notifyEvalRunFailed":"Falha na execu\xe7\xe3o da avalia\xe7\xe3o","notifyEvalTitle":"Avalia\xe7\xe3o: {name}","modelEvals":"Avalia\xe7\xf5es de modelos","evalsHeroDescription":"Teste e valide seus endpoints LLM executando conjuntos de avalia\xe7\xe3o predefinidos. Cada conjunto cont\xe9m casos de teste que enviam prompts reais por meio do OmniRoute e comparam as respostas com os crit\xe9rios esperados, ajudando voc\xea a detectar regress\xf5es, comparar modelos e garantir a qualidade da resposta entre os provedores.","qualityValidation":"Valida\xe7\xe3o de Qualidade","modelComparison":"Compara\xe7\xe3o de modelos","regressionDetection":"Detec\xe7\xe3o de regress\xe3o","latencyBenchmarks":"Benchmarks de lat\xeancia","modelLockouts":"Bloqueios de modelo","noLockouts":"Nenhum modelo atualmente bloqueado","activeSessions":"Sess\xf5es ativas","noSessions":"Nenhuma sess\xe3o ativa","sessionsHint":"As sess\xf5es aparecem conforme as solicita\xe7\xf5es fluem pelo proxy","sessionsTrackedHint":"Rastreado por solicita\xe7\xe3o de impress\xe3o digital • Atualiza\xe7\xe3o autom\xe1tica 5s","session":"Sess\xe3o","age":"Idade","requests":"Solicita\xe7\xf5es","connection":"Conex\xe3o","durationMillisecondsShort":"{value}ms","durationSecondsShort":"{value}s","durationMinutesShort":"{value}m","durationHoursShort":"{value}h","reasonSeparator":" - ","notAvailableSymbol":"-","providerLimits":"Limites do provedor","noProviders":"Nenhum provedor conectado","connectProvidersForQuota":"Conecte-se a provedores com OAuth para rastrear o uso e os limites de cota de API.","accountsCount":"{count, plural, one {# account} other {# accounts}}","filteredFromCount":"(filtrado de {count})","autoRefresh":"Atualiza\xe7\xe3o autom\xe1tica","refreshAll":"Atualizar tudo","loadingQuotas":"Carregando...","account":"Conta","modelQuotas":"Cotas de modelo","lastUsed":"\xdaltimo uso","actions":"A\xe7\xf5es","refreshQuota":"Atualizar cota","today":"Hoje","tomorrow":"Amanh\xe3","dayTimeFormat":"{day}, {time}","inDuration":"em {duration}","notApplicable":"N/A","rawPlanWithValue":"Plano bruto: {plan}","noPlanFromProvider":"Nenhum plano do provedor","noQuotaData":"Sem dados de cota","noQuotaDataAvailable":"N\xe3o h\xe1 dados de cota dispon\xedveis","noAccountsForTierFilter":"Nenhuma conta encontrada para filtro de n\xedvel","tierAll":"Todos","tierEnterprise":"Empresa","tierTeam":"Equipe","tierBusiness":"Neg\xf3cios","tierUltra":"Ultra","tierPro":"Pr\xf3","tierPlus":"Mais","tierFree":"Gr\xe1tis","tierUnknown":"Desconhecido"},"modals":{"waitingAuth":"Aguardando autoriza\xe7\xe3o","verificationUrl":"URL de verifica\xe7\xe3o","yourCode":"Seu c\xf3digo","remoteAccess":"Acesso remoto:","connectedSuccess":"Conectado com sucesso!","connectionFailed":"Falha na conex\xe3o","chooseAuthMethod":"Escolha seu m\xe9todo de autentica\xe7\xe3o:","awsBuilderId":"ID do construtor AWS","awsIamIdentity":"Centro de identidade AWS IAM","googleAccount":"Conta do Google","githubAccount":"Conta GitHub","importToken":"Token de importa\xe7\xe3o","pasteToken":"Cole o token de atualiza\xe7\xe3o do Kiro IDE.","awsRegion":"Regi\xe3o AWS","autoDetecting":"Detec\xe7\xe3o autom\xe1tica de tokens...","readingFromCache":"Lendo do cache SSO da AWS","readingFromCursor":"Lendo do banco de dados Cursor IDE","initializing":"Inicializando...","pricingConfig":"Configura\xe7\xe3o de pre\xe7os","loadingPricing":"Carregando dados de pre\xe7os...","pricingRatesFormat":"Formato de taxas de pre\xe7os","noPricingData":"N\xe3o h\xe1 dados de pre\xe7os dispon\xedveis","noModelsFound":"Nenhum modelo encontrado"},"loggers":{"allProviders":"Todos os provedores","allModels":"Todos os modelos","allAccounts":"Todas as contas","allApiKeys":"Todas as chaves de API","allTypes":"Todos os tipos","allLevels":"Todos os n\xedveis","modelAZ":"Modelo A-Z","modelZA":"Modelo Z-A","loadingLogs":"Carregando registros...","loadingProxyLogs":"Carregando registros de proxy...","noLogEntries":"Nenhuma entrada de registro encontrada","noPayloadData":"N\xe3o h\xe1 dados de carga dispon\xedveis para esta entrada de log.","proxyEvent":"Evento proxy","proxy":"Procurador","level":"N\xedvel","directNative":"Direto (nativo)","combo":"Combina\xe7\xe3o","inputTokens":"Eu:","outputTokens":"\xd3:"},"stats":{"usageOverview":"Vis\xe3o geral do uso","outputTokens":"Tokens de sa\xedda","totalCost":"Custo total","usageByModel":"Uso por modelo","usageByAccount":"Uso por conta","failedToLoad":"Falha ao carregar estat\xedsticas de uso.","tokenHealth":"Sa\xfade do token","totalOAuth":"OAuth total","healthy":"Saud\xe1vel","warning":"Aviso","errored":"Erro","lastCheck":"\xdaltima verifica\xe7\xe3o","noData":"Sem dados","share":"Compartilhar","unableToLoad":"N\xe3o foi poss\xedvel carregar as m\xe9tricas do sistema","product":"Produto","resources":"Recursos","company":"Empresa"},"auth":{"welcome":"Bem vindo","signIn":"Fa\xe7a login","enterPassword":"Digite sua senha para continuar","password":"Senha","unifiedProxy":"Proxy de API de IA unificado","unifiedAiApiProxy":"Proxy de API de IA unificado","unifiedAiApiProxyDesc":"Encaminhe solicita\xe7\xf5es para v\xe1rios provedores de IA por meio de um \xfanico endpoint. Balanceamento de carga, failover e rastreamento de uso integrados.","passwordNotEnabled":"A prote\xe7\xe3o por senha n\xe3o est\xe1 ativada","loading":"Carregando...","invalidPassword":"Senha inv\xe1lida","errorOccurredRetry":"Ocorreu um erro. Por favor, tente novamente.","configureInstance":"Vamos configurar sua inst\xe2ncia do OmniRoute","runOnboardingWizard":"Execute o assistente de integra\xe7\xe3o para configurar sua senha e conectar seu primeiro provedor de IA.","startOnboarding":"Comece a integra\xe7\xe3o","secureYourInstance":"Proteja sua inst\xe2ncia","setPasswordDescription":"Defina uma senha para proteger seu painel e proteger seus endpoints de API contra acesso n\xe3o autorizado.","configurePassword":"Configurar senha","continue":"Continuar","windowWillClose":"Esta janela fechar\xe1 automaticamente...","closeTabNow":"Voc\xea pode fechar esta guia agora.","copyUrlManual":"Copie o URL da barra de endere\xe7o e cole-o no aplicativo.","accessDeniedDescription":"Voc\xea n\xe3o tem permiss\xe3o para acessar este recurso. Verifique sua chave API ou entre em contato com o administrador.","goToDashboard":"V\xe1 para o painel","featureMultiProviderTitle":"Multi-Provedor","featureMultiProviderDesc":"OpenAI, Antr\xf3pico, Google e muito mais","featureLoadBalancingTitle":"Balanceamento de carga","featureLoadBalancingDesc":"Distribua solicita\xe7\xf5es de forma inteligente","featureUsageTrackingTitle":"Rastreamento de uso","featureUsageTrackingDesc":"Monitore custos e tokens","resetPassword":"Redefinir senha","resetDescription":"Escolha um m\xe9todo para recuperar o acesso ao seu painel","stopServer":"Pare o servidor OmniRoute","processing":"Processando...","pleaseWait":"Aguarde enquanto conclu\xedmos a autoriza\xe7\xe3o.","authSuccess":"Autoriza\xe7\xe3o bem-sucedida!","copyUrl":"Copie este URL","accessDenied":"Acesso negado","methodCliTitle":"M\xe9todo 1: redefini\xe7\xe3o CLI","methodCliDescription":"Execute o seguinte comando no servidor onde o OmniRoute est\xe1 sendo executado:","methodCliHint":"Isso solicitar\xe1 que voc\xea defina uma nova senha. O servidor deve ser parado primeiro.","methodManualTitle":"M\xe9todo 2: reinicializa\xe7\xe3o manual","methodManualDescription":"Exclua a senha do banco de dados e defina uma nova na inicializa\xe7\xe3o:","setPasswordInYour":"Defina uma nova senha em seu","fileLabelSuffix":"arquivo:","newPasswordPlaceholder":"sua_nova_senha","deleteSettingsFile":"Excluir","orRemovePasswordHashField":"ou remova o campo passwordHash","restartServerWithNewPassword":"Reinicie o servidor - ele usar\xe1 a nova senha","backToLogin":"Voltar ao login","forgotPassword":"Esqueceu a senha?"},"landing":{"brandName":"OmniRoute","navigateHome":"Navegue at\xe9 a casa","toggleMenu":"Alternar menu","featuresLink":"Recursos","docsLink":"Documentos","github":"GitHub","versionLive":"v1.0 agora est\xe1 ativo","oneEndpoint":"Um ponto final para","allProviders":"Todos os provedores de IA","heroDescription":"Proxy de endpoint de IA com painel da web – uma porta JavaScript do CLIProxyAPI. Funciona perfeitamente com Claude Code, OpenAI Codex, Cline, RooCode e outras ferramentas CLI.","getStarted":"Comece","viewOnGithub":"Ver no GitHub","powerfulFeatures":"Recursos poderosos","featuresSubtitle":"Tudo o que voc\xea precisa para gerenciar sua infraestrutura de IA em um s\xf3 lugar, desenvolvida para escalar.","featureUnifiedEndpointTitle":"Ponto final unificado","featureUnifiedEndpointDesc":"Acesse todos os provedores por meio de um \xfanico URL de API padr\xe3o.","featureEasySetupTitle":"Configura\xe7\xe3o f\xe1cil","featureEasySetupDesc":"Comece a trabalhar em minutos com o comando npx.","featureModelFallbackTitle":"Modelo substituto","featureModelFallbackDesc":"Alterne automaticamente os provedores em caso de falha ou alta lat\xeancia.","featureUsageTrackingTitle":"Rastreamento de uso","featureUsageTrackingDesc":"An\xe1lise detalhada e monitoramento de custos em todos os modelos.","featureOAuthApiKeysTitle":"Chaves OAuth e API","featureOAuthApiKeysDesc":"Gerencie credenciais com seguran\xe7a em um cofre.","featureCloudSyncTitle":"Sincroniza\xe7\xe3o na nuvem","featureCloudSyncDesc":"Sincronize suas configura\xe7\xf5es entre dispositivos instantaneamente.","featureCliSupportTitle":"Suporte CLI","featureCliSupportDesc":"Funciona com Claude Code, Codex, Cline, Cursor e muito mais.","featureDashboardTitle":"Painel","featureDashboardDesc":"Painel visual para an\xe1lise de tr\xe1fego em tempo real.","howItWorks":"Como funciona o OmniRoute","howItWorksDescription":"Os dados fluem perfeitamente da sua aplica\xe7\xe3o atrav\xe9s da nossa camada de roteamento inteligente at\xe9 o melhor fornecedor para o trabalho.","howItWorksStep1Title":"1. CLI e SDKs","howItWorksStep1Description":"Suas solicita\xe7\xf5es partem de suas ferramentas favoritas ou de nosso SDK unificado. Basta alterar o URL base.","howItWorksStep2Title":"2. Hub OmniRoute","howItWorksStep2Description":"Nosso mecanismo analisa o prompt, verifica a integridade do provedor e encaminha para obter menor lat\xeancia ou custo.","howItWorksStep3Title":"3. Provedores de IA","howItWorksStep3Description":"A solicita\xe7\xe3o \xe9 atendida por OpenAI, Anthropic, Gemini ou outros instantaneamente.","getStartedIn30Seconds":"Comece em 30 segundos","getStartedDescription":"Instale o OmniRoute, configure seus provedores por meio do painel da web e comece a rotear solicita\xe7\xf5es de IA.","installOmniRoute":"Instalar OmniRoute","installStepDescription":"Execute o comando npx para iniciar o servidor instantaneamente","openDashboard":"Abra o painel","openDashboardStepDescription":"Configure provedores e chaves de API via interface web","routeRequests":"Solicita\xe7\xf5es de rota","routeRequestsStepDescription":"Aponte suas ferramentas CLI para {endpoint}","terminal":"terminal","copy":"Copiar","copied":"✓ Copiado","startingOmniRoute":"Iniciando o OmniRoute...","serverRunningOnLabel":"Servidor em execu\xe7\xe3o","dashboardLabel":"Painel","readyToRoute":"Pronto para rota! ✓","configureProvidersNote":"\uD83D\uDCDD Configure provedores no painel ou use vari\xe1veis de ambiente","dataLocation":"Localiza\xe7\xe3o dos dados:","dataLocationMacLinux":" macOS/Linux:","dataLocationWindows":" Janelas:","product":"Produto","dashboardLink":"Painel","changelog":"Registro de altera\xe7\xf5es","resources":"Recursos","documentation":"Documenta\xe7\xe3o","npm":"NPM","legal":"Jur\xeddico","mitLicense":"Licen\xe7a MIT","footerTagline":"O endpoint unificado para gera\xe7\xe3o de IA. Conecte, encaminhe e gerencie seus provedores de IA com facilidade.","copyright":"\xa9 {year} OmniRoute. Todos os direitos reservados.","flowToolClaudeCode":"C\xf3digo Claude","flowToolOpenAICodex":"C\xf3dice OpenAI","flowToolCline":"Cline","flowToolCursor":"Cursor","flowProviderOpenAI":"OpenAI","flowProviderAnthropic":"Antr\xf3pico","flowProviderGemini":"G\xeameos","flowProviderGithubCopilot":"Copiloto GitHub","interactiveDiagram":"Diagrama interativo vis\xedvel na \xe1rea de trabalho","ctaTitle":"Pronto para simplificar sua infraestrutura de IA?","ctaDescription":"Junte-se aos desenvolvedores que est\xe3o simplificando suas integra\xe7\xf5es de IA com o OmniRoute. C\xf3digo aberto e gratuito para come\xe7ar.","startFree":"Comece gr\xe1tis","readDocumentation":"Leia a documenta\xe7\xe3o"},"docs":{"title":"Documenta\xe7\xe3o","quickStart":"In\xedcio r\xe1pido","features":"Recursos","supportedProviders":"Provedores Suportados","supportedProvidersToc":"Provedores","commonUseCases":"Casos de uso comuns","clientCompatibility":"Compatibilidade do cliente","apiReference":"Refer\xeancia de API","method":"M\xe9todo","path":"Caminho","notes":"Notas","modelPrefixes":"Prefixos de modelo","prefix":"Prefixo","troubleshooting":"Solu\xe7\xe3o de problemas","supportsChat":"Suporta endpoints de chat e respostas.","oauthAutoRefresh":"Conex\xe3o OAuth com atualiza\xe7\xe3o autom\xe1tica de token.","fullStreaming":"Suporte completo de streaming para todos os modelos.","docsLabel":"Documentos","docsHeroDescription":"Gateway de IA para LLMs de v\xe1rios provedores. Um endpoint para OpenAI, Anthropic, Gemini, GitHub Copilot, Claude Code, Cursor e mais de 20 provedores.","openDashboard":"Abra o painel","endpointPage":"P\xe1gina de ponto final","github":"GitHub","reportIssue":"Reportar problema","onThisPage":"Nesta p\xe1gina","documentationVersion":"Documenta\xe7\xe3o - v{version}","quickStartStep1Title":"1. Instale e execute","quickStartStep1Prefix":"Corre","quickStartStep1Middle":"ou clone do GitHub e execute","quickStartStep2Title":"2. Crie uma chave API","quickStartStep2Text":"V\xe1 para Endpoint -> Chaves Registradas. Gere uma chave por ambiente.","quickStartStep3Title":"3. Conecte provedores","quickStartStep3Text":"Adicione contas de provedor por meio de login OAuth, chave de API ou conex\xe3o autom\xe1tica de n\xedvel gratuito.","quickStartStep4Title":"4. Defina o URL da base do cliente","quickStartStep4Prefix":"Aponte seu cliente IDE ou API para","quickStartStep4Suffix":"Use o prefixo do provedor, por exemplo","featureRoutingTitle":"Roteamento multiprovedor","featureRoutingText":"Encaminhe solicita\xe7\xf5es para mais de 30 provedores de IA por meio de um \xfanico endpoint compat\xedvel com OpenAI. Suporta APIs de chat, respostas, \xe1udio e imagem.","featureCombosTitle":"Combos e Balanceamento","featureCombosText":"Crie combina\xe7\xf5es de modelos com cadeias de fallback e estrat\xe9gias de balanceamento: round-robin, prioridade, aleat\xf3rio, menos usado e com custo otimizado.","featureUsageTitle":"Uso e rastreamento de custos","featureUsageText":"Contagem de tokens em tempo real, c\xe1lculo de custos por provedor/modelo e detalhamento de uso por chave de API e conta.","featureAnalyticsTitle":"Painel anal\xedtico","featureAnalyticsText":"An\xe1lise visual com gr\xe1ficos de solicita\xe7\xf5es, tokens, erros, lat\xeancia, custos e popularidade do modelo ao longo do tempo.","featureHealthTitle":"Monitoramento de Sa\xfade","featureHealthText":"Verifica\xe7\xf5es de integridade em tempo real, status do provedor, estados de disjuntores e detec\xe7\xe3o autom\xe1tica de limite de taxa com espera exponencial.","featureCliTitle":"Ferramentas CLI","featureCliText":"Gerencie configura\xe7\xf5es de IDE, exporte/importe backups, descubra perfis de codex e defina configura\xe7\xf5es no painel.","featureSecurityTitle":"Seguran\xe7a e Pol\xedticas","featureSecurityText":"Autentica\xe7\xe3o de chave de API, filtragem de IP, prote\xe7\xe3o contra inje\xe7\xe3o de prompt, pol\xedticas de dom\xednio, gerenciamento de sess\xe3o e registro de auditoria.","featureCloudSyncTitle":"Sincroniza\xe7\xe3o na nuvem","featureCloudSyncText":"Sincronize sua configura\xe7\xe3o com Cloudflare Workers para acesso remoto com credenciais criptografadas e failover autom\xe1tico.","providersAcrossConnectionTypes":"{count} provedores em tr\xeas tipos de conex\xe3o.","manageProviders":"Gerenciar provedores","providersCount":"{count} provedores","providerTypeFree":"N\xedvel gratuito","providerTypeOAuth":"OAuth","providerTypeApiKey":"Chave de API","useCaseSingleEndpointTitle":"Endpoint \xfanico para muitos provedores","useCaseSingleEndpointText":"Aponte os clientes para uma URL base e roteie por prefixo de modelo (por exemplo: gh/, cc/, kr/, openai/).","useCaseFallbackTitle":"Fallback e troca de modelo com combos","useCaseFallbackText":"Crie modelos combinados no Dashboard e mantenha a configura\xe7\xe3o do cliente est\xe1vel enquanto os provedores alternam internamente.","useCaseUsageVisibilityTitle":"Visibilidade de uso, custo e depura\xe7\xe3o","useCaseUsageVisibilityText":"Rastreie tokens e custos por provedor, conta e chave de API nas guias Uso e An\xe1lise.","clientCherryStudioTitle":"Est\xfadio Cereja","baseUrlLabel":"URL base","chatEndpointLabel":"Ponto de extremidade do bate-papo","modelRecommendationLabel":"Recomenda\xe7\xe3o de modelo: prefixo expl\xedcito","clientCodexTitle":"Modelos de copiloto Codex/GitHub","clientCodexBullet1":"Use IDs de modelo com","clientCodexBullet2":"Os modelos da fam\xedlia Codex roteiam automaticamente para","clientCodexBullet3":"Os modelos n\xe3o-Codex continuam","clientCursorTitle":"Cursor IDE","clientCursorBullet1":"Usar","clientCursorBullet1Suffix":"prefixo para modelos Cursor.","clientCursorBullet2":"Conex\xe3o OAuth - fa\xe7a login na p\xe1gina Provedores.","clientClaudeTitle":"C\xf3digo Claude / Antigravidade","clientClaudeBullet1Prefix":"Usar","clientClaudeBullet1Middle":"(Cl\xe1udio) ou","clientClaudeBullet1Suffix":"Prefixo (antigravidade).","endpointChatNote":"Endpoint de chat compat\xedvel com OpenAI (padr\xe3o).","endpointResponsesNote":"Endpoint da API de respostas (Codex, s\xe9rie o).","endpointModelsNote":"Cat\xe1logo de modelos para todos os provedores conectados.","endpointAudioNote":"Transcri\xe7\xe3o de \xe1udio (Deepgram, AssemblyAI).","endpointImagesNote":"Gera\xe7\xe3o de imagens (NanoBanana).","endpointRewriteChatNote":"Auxiliar de reescrita para clientes sem /v1.","endpointRewriteResponsesNote":"Reescreva o auxiliar para respostas sem /v1.","endpointRewriteModelsNote":"Reescreva o auxiliar para descoberta de modelo sem /v1.","modelPrefixesDescriptionStart":"Use o prefixo do provedor antes do nome do modelo para rotear para um provedor espec\xedfico. Exemplo:","modelPrefixesDescriptionEnd":"rotas para GitHub Copilot.","provider":"Provedor","type":"Tipo","troubleshootingModelRouting":"Se o cliente falhar com o roteamento do modelo, use provedor/modelo expl\xedcito (por exemplo: gh/gpt-5.1-codex).","troubleshootingAmbiguousModels":"Se voc\xea receber erros de modelo amb\xedguos, escolha um prefixo de provedor em vez de um ID de modelo simples.","troubleshootingCodexFamily":"Para modelos da fam\xedlia GitHub Codex, mantenha o modelo como gh/<codex-model>; roteador seleciona /respostas automaticamente.","troubleshootingTestConnection":"Use Painel > Provedores > Testar conex\xe3o antes de testar em IDEs ou clientes externos.","troubleshootingCircuitBreaker":"Se um provedor mostrar o disjuntor aberto, aguarde o resfriamento ou verifique a p\xe1gina de integridade para obter detalhes.","troubleshootingOAuth":"Para provedores OAuth, autentique novamente se os tokens expirarem. Verifique o indicador de status do cart\xe3o do provedor."},"legal":{"privacyPolicy":"Pol\xedtica de Privacidade","termsOfService":"Termos de Servi\xe7o","providerConfigurations":"Configura\xe7\xf5es do provedor","apiKeys":"Chaves de API","usageLogs":"Registros de uso","applicationSettings":"Configura\xe7\xf5es do aplicativo","viewExportAnalytics":"Visualize e exporte an\xe1lises de uso","clearHistory":"Limpe o hist\xf3rico de uso a qualquer momento","configureRetention":"Configurar pol\xedticas de reten\xe7\xe3o de log","backupRestore":"Fa\xe7a backup e restaure seu banco de dados","privacyMetadataTitle":"Pol\xedtica de Privacidade | OmniRoute","privacyMetadataDescription":"Pol\xedtica de privacidade para o roteador proxy OmniRoute AI API.","termsMetadataTitle":"Termos de Servi\xe7o | OmniRoute","termsMetadataDescription":"Termos de servi\xe7o do roteador proxy OmniRoute AI API.","backToHome":"De volta para casa","lastUpdated":"\xdaltima atualiza\xe7\xe3o: {date}","policyLastUpdatedDate":"13 de fevereiro de 2026","listSeparator":"-","questionsVisit":"Perguntas? Visite nosso","githubRepository":"Reposit\xf3rio GitHub","privacySection1Title":"1. Arquitetura local primeiro","privacySection1Text":"OmniRoute foi projetado como um aplicativo local. Todo o processamento e armazenamento de dados ocorre inteiramente em sua m\xe1quina. N\xe3o existe um servidor centralizado que coleta suas informa\xe7\xf5es.","privacySection2Title":"2. Dados que armazenamos","privacyDataStoredIn":"Os seguintes dados s\xe3o armazenados localmente em","privacyDataProviderConfigurationsDesc":"URLs de conex\xe3o, tipos de provedores e configura\xe7\xf5es de prioridade","privacyDataApiKeysDesc":"criptografado e armazenado localmente para autentica\xe7\xe3o com provedores de IA","privacyDataUsageLogsDesc":"contagens de solicita\xe7\xf5es, uso de token, nomes de modelos, carimbos de data/hora e tempos de resposta","privacyDataApplicationSettingsDesc":"prefer\xeancias de tema, estrat\xe9gia de roteamento e configura\xe7\xf5es combinadas","privacySection3Title":"3. Sem telemetria","privacySection3Text":"OmniRoute n\xe3o coleta telemetria, an\xe1lises ou relat\xf3rios de falhas. Nenhum dado \xe9 enviado para n\xf3s ou para terceiros. Seus padr\xf5es de uso, chamadas de API e configura\xe7\xf5es permanecem totalmente privados.","privacySection4Title":"4. Provedores terceirizados de IA","privacySection4Text":"Ao fazer chamadas de API por meio do OmniRoute, suas solicita\xe7\xf5es s\xe3o encaminhadas para os provedores de IA que voc\xea configurou (por exemplo: OpenAI, Anthropic, Google). Esses provedores t\xeam suas pr\xf3prias pol\xedticas de privacidade que regem a forma como lidam com seus dados. Por favor, revise:","privacyOpenAiPolicy":"Pol\xedtica de privacidade da OpenAI","privacyAnthropicPolicy":"Pol\xedtica de Privacidade Antr\xf3pica","privacyGooglePolicy":"Pol\xedtica de privacidade do Google","privacySection5Title":"5. Sincroniza\xe7\xe3o na nuvem (opcional)","privacySection5Text":"Se voc\xea ativar o recurso opcional de sincroniza\xe7\xe3o em nuvem, as configura\xe7\xf5es do provedor e as chaves de API poder\xe3o ser transmitidas para um endpoint de nuvem configurado. Este recurso est\xe1 desabilitado por padr\xe3o e requer aceita\xe7\xe3o expl\xedcita.","privacySection6Title":"6. Registro","privacyLoggingIntro":"Os logs de solicita\xe7\xe3o podem ser configurados nas configura\xe7\xf5es do painel. Voc\xea pode:","privacySection7Title":"7. Seus direitos","privacySection7TextStart":"Como todos os dados s\xe3o armazenados localmente, voc\xea tem controle total. Voc\xea pode excluir seus dados a qualquer momento, removendo o","privacySection7TextEnd":"diret\xf3rio ou usando os recursos de backup e restaura\xe7\xe3o do banco de dados no painel.","termsSection1Title":"1. Vis\xe3o geral","termsSection1Text":"OmniRoute \xe9 um roteador proxy API AI local que opera inteiramente em sua m\xe1quina. Ele roteia solicita\xe7\xf5es para v\xe1rios provedores de IA com balanceamento de carga, failover e rastreamento de uso.","termsSection2Title":"2. Responsabilidades do usu\xe1rio","termsResponsibilityApiKeys":"Voc\xea \xe9 o \xfanico respons\xe1vel por gerenciar suas pr\xf3prias chaves de API e credenciais para provedores de IA terceirizados (OpenAI, Anthropic, Google, etc.).","termsResponsibilityCompliance":"Voc\xea deve cumprir os termos de servi\xe7o de cada provedor de IA cuja API voc\xea acessa por meio do OmniRoute.","termsResponsibilitySecurity":"Voc\xea \xe9 respons\xe1vel pela seguran\xe7a da instala\xe7\xe3o local do OmniRoute, incluindo a defini\xe7\xe3o de uma senha e a restri\xe7\xe3o do acesso \xe0 rede.","termsSection3Title":"3. Como funciona","termsSection3Text":"OmniRoute atua como um proxy intermedi\xe1rio. As chamadas de API enviadas ao OmniRoute s\xe3o traduzidas e encaminhadas para seus provedores de IA configurados. OmniRoute n\xe3o modifica o conte\xfado de suas solicita\xe7\xf5es ou respostas al\xe9m da tradu\xe7\xe3o de protocolo necess\xe1ria.","termsSection4Title":"4. Tratamento de dados","termsDataStoredLocally":"Todos os dados s\xe3o armazenados localmente na sua m\xe1quina em um banco de dados SQLite.","termsNoTransmission":"O OmniRoute n\xe3o transmite nenhum dado para servidores externos, a menos que voc\xea habilite explicitamente os recursos de sincroniza\xe7\xe3o na nuvem.","termsDataLocationText":"Logs de uso, chaves de API e configura\xe7\xe3o s\xe3o armazenados em","termsSection5Title":"5. Isen\xe7\xe3o de responsabilidade","termsSection5Text":"OmniRoute \xe9 fornecido \\"como est\xe1\\" sem qualquer tipo de garantia. N\xe3o somos respons\xe1veis por quaisquer custos incorridos atrav\xe9s do uso da API, interrup\xe7\xf5es de servi\xe7o ou perda de dados. Sempre mantenha backups de sua configura\xe7\xe3o.","termsSection6Title":"6. C\xf3digo aberto","termsSection6Text":"OmniRoute \xe9 um software de c\xf3digo aberto. Voc\xea \xe9 livre para inspecion\xe1-lo, modific\xe1-lo e distribu\xed-lo sob os termos de sua licen\xe7a."}}')}};
|
|
1
|
+
"use strict";exports.id=1623,exports.ids=[1623],exports.modules={11623:a=>{a.exports=JSON.parse('{"common":{"save":"Salvar","cancel":"Cancelar","delete":"Excluir","loading":"Carregando...","error":"Ocorreu um erro","success":"Sucesso","confirm":"Voc\xea tem certeza?","refresh":"Atualizar","close":"Fechar","add":"Adicionar","edit":"Editar","search":"Pesquisar","back":"Voltar","next":"Pr\xf3ximo","submit":"Enviar","reset":"Redefinir","copy":"Copiar","copied":"Copiado!","enabled":"Habilitado","disabled":"Desativado","active":"Ativo","inactive":"Inativo","noData":"N\xe3o h\xe1 dados dispon\xedveis","configure":"Configurar","manage":"Gerenciar","name":"Nome","actions":"A\xe7\xf5es","status":"Estado","type":"Tipo","model":"Modelo","models":"modelos","provider":"Provedor","account":"Conta","time":"Hora","details":"Detalhes","created":"Criado","lastUsed":"\xdaltimo uso","loadMore":"Carregar mais","noResults":"Nenhum resultado encontrado","reloadPage":"Recarregar p\xe1gina","connected":"Conectado","disconnected":"Desconectado","notConfigured":"N\xe3o configurado","testConnection":"Conex\xe3o de teste","enable":"Habilitar","disable":"Desativar","columns":"Colunas","newest":"Mais recente","oldest":"Mais antigo","all":"Todos","none":"Nenhum","yes":"Sim","no":"N\xe3o","warning":"Aviso","note":"Nota","free":"Gr\xe1tis","skipToContent":"Pular para o conte\xfado"},"sidebar":{"home":"P\xe1gina inicial","dashboard":"Painel","providers":"Provedores","combos":"Combos","usage":"Uso","analytics":"An\xe1lise","costs":"Custos","health":"Sa\xfade","limits":"Limites e cotas","cliTools":"Ferramentas CLI","settings":"Configura\xe7\xf5es","translator":"Tradutor","docs":"Documentos","issues":"Problemas","endpoint":"Ponto final","apiManager":"Gerenciador de APIs","logs":"Registros","auditLog":"Registro de auditoria","shutdown":"Desligamento","restart":"Reiniciar","shutdownConfirm":"Desligar o OmniRoute?","restartConfirm":"Reiniciar o OmniRoute?","version":"v{version}","debug":"Depurar","system":"Sistema","help":"Ajuda","serverDisconnected":"Servidor desconectado","serverDisconnectedMsg":"O servidor proxy foi interrompido ou est\xe1 reiniciando.","expandSidebar":"Expandir barra lateral","collapseSidebar":"Recolher barra lateral"},"header":{"logout":"Sair","language":"Idioma","providers":"Provedores","providerDescription":"Gerencie suas conex\xf5es de provedor de IA","combos":"Combos","comboDescription":"Combina\xe7\xf5es de modelos com substituto","usage":"Uso e an\xe1lise","usageDescription":"Monitore o uso da API, o consumo de tokens e os registros de solicita\xe7\xe3o","analytics":"An\xe1lise","analyticsDescription":"Gr\xe1ficos, tend\xeancias e insights de avalia\xe7\xe3o","cliTools":"Ferramentas CLI","cliToolsDescription":"Configurar ferramentas CLI","home":"P\xe1gina inicial","homeDescription":"Bem-vindo ao OmniRoute","endpoint":"Ponto final","endpointDescription":"Configura\xe7\xe3o de endpoint de API","settings":"Configura\xe7\xf5es","settingsDescription":"Gerencie suas prefer\xeancias","openaiCompatible":"Compat\xedvel com OpenAI","anthropicCompatible":"Compat\xedvel Antr\xf3pico"},"home":{"quickStart":"In\xedcio r\xe1pido","quickStartDesc":"Comece a trabalhar em 4 etapas. Conecte provedores, encaminhe modelos, monitore tudo.","fullDocs":"Documentos completos","step1Title":"1. Crie uma chave API","step1Desc":"V\xe1 para <endpoint>Endpoint</endpoint> -> Chaves registradas. Gere uma chave por ambiente.","step2Title":"2. Conecte provedores","step2Desc":"Adicione contas em <providers>Providers</providers>. Suporta OAuth, chave de API e n\xedveis gratuitos.","step3Title":"3. Aponte seu cliente","step3Desc":"Defina o URL base como {url} em seu IDE ou cliente API.","step4Title":"4. Monitore e otimize","step4Desc":"Rastreie tokens, custos e erros em <logs>Logs de solicita\xe7\xe3o</logs> e <analytics>Analytics</analytics>.","providersOverview":"Vis\xe3o geral dos provedores","configuredOf":"{configured} configurado de {total} provedores dispon\xedveis","noModelsAvailable":"Nenhum modelo dispon\xedvel para este fornecedor.","configureFirst":"Configure uma conex\xe3o primeiro em {providers}","configureProvider":"Configurar provedor","modelAvailable":"Modelo {count} dispon\xedvel","modelsAvailable":"{count} modelos dispon\xedveis","connectionsActive":"{count} conex\xe3o ativa","connectionsActivePlural":"{count} conex\xf5es ativas","copyModelName":"Copiar nome do modelo","documentation":"Documenta\xe7\xe3o","healthMonitor":"Monitor de Sa\xfade","reportIssue":"Informar problema","activeError":"{active} ativo \xb7 Erro {errors}","oauthLabel":"OAuth","apiKeyLabel":"Chave de API","requestsShort":"{count} requisitos","providerModelsTitle":"{provider} - Modelos","copiedModel":"Copiado: {model}","aliasLabel":"apelido"},"analytics":{"title":"An\xe1lise","overviewDescription":"Monitore seus padr\xf5es de uso de API, consumo de tokens, custos e tend\xeancias de atividades em todos os provedores e modelos.","evalsDescription":"Execute conjuntos de avalia\xe7\xe3o para testar e validar seus endpoints LLM. Compare a qualidade do modelo, detecte regress\xf5es e compare a lat\xeancia.","overview":"Vis\xe3o geral","evals":"Avalia\xe7\xf5es"},"apiManager":{"title":"Chaves de API","createKey":"Criar chave de API","key":"Chave","revokeKey":"Revogar chave","revokeConfirm":"Tem certeza de que deseja revogar esta chave de API?","noKeys":"Ainda n\xe3o h\xe1 chaves de API","noKeysDesc":"Crie sua primeira chave de API para autenticar solicita\xe7\xf5es em seu endpoint","keyLabel":"Etiqueta-chave","permissions":"Permiss\xf5es","expiresAt":"Expira","never":"Nunca","revoke":"Revogar","showKey":"Mostrar chave","hideKey":"Ocultar chave","copyKey":"Copiar chave de API","allModels":"Todos os modelos","selectedModels":"Modelos Selecionados","readOnly":"Somente leitura","fullAccess":"Acesso total","keyManagement":"Gerenciamento de chaves de API","keyManagementDesc":"Crie e gerencie chaves de API para autenticar solicita\xe7\xf5es em seu endpoint","totalKeys":"Total de chaves","restricted":"Restrito","totalRequests":"Total de solicita\xe7\xf5es","modelsAvailable":"Modelos Dispon\xedveis","registeredKeys":"Chaves Registradas","keysRegistered":"{count} chaves registradas","keyRegistered":"{count} chave registrada","keysSecurityNote":"Cada chave isola o rastreamento de uso e pode ser revogada de forma independente. As chaves s\xe3o mascaradas ap\xf3s a cria\xe7\xe3o por seguran\xe7a.","createFirstKey":"Crie sua primeira chave","name":"Nome","usage":"Uso","created":"Criado","actions":"A\xe7\xf5es","reqs":"requisitos","neverUsed":"Nunca usado","deleteConfirm":"Excluir esta chave de API?","usageTips":"Dicas de uso","tipAuth":"Use chaves de API no cabe\xe7alho de autoriza\xe7\xe3o como portador YOUR_KEY","tipSecure":"As chaves s\xe3o mostradas apenas uma vez durante a cria\xe7\xe3o – armazene-as com seguran\xe7a","tipSeparate":"Crie chaves separadas para diferentes clientes ou ambientes","tipRestrict":"Restrinja chaves a modelos espec\xedficos para melhor seguran\xe7a e controle de custos","keyName":"Nome da chave","keyNamePlaceholder":"por exemplo, chave de produ\xe7\xe3o, chave de desenvolvimento","keyNameDesc":"Escolha um nome descritivo para identificar a finalidade desta chave","keyCreated":"Chave de API criada","keyCreatedSuccess":"Chave criada com sucesso!","keyCreatedNote":"Copie e armazene esta chave agora — ela n\xe3o ser\xe1 mostrada novamente.","done":"Conclu\xeddo","savePermissions":"Salvar permiss\xf5es","allowAll":"Permitir tudo","restrict":"Restringir","allowAllInfo":"Esta chave pode acessar todos os modelos dispon\xedveis.","restrictInfo":"Esta chave pode acessar {selected} de modelos {total}.","selected":"{count} selecionado","all":"Todos","clear":"Limpar","searchModels":"Pesquise modelos por nome ou fornecedor...","noModelsFound":"Nenhum modelo encontrado","keyNameRequired":"O nome da chave \xe9 obrigat\xf3rio","keyNameTooLong":"O nome da chave deve ter {max} caracteres ou menos","keyNameInvalid":"O nome da chave s\xf3 pode conter letras, n\xfameros, espa\xe7os, hifens e sublinhados","invalidKeyName":"Nome de chave inv\xe1lido","failedCreateKey":"Falha ao criar chave","failedCreateKeyRetry":"Falha ao criar chave. Por favor, tente novamente.","invalidKeyId":"ID de chave inv\xe1lido","failedDeleteKey":"Falha ao excluir a chave","failedDeleteKeyRetry":"Falha ao excluir a chave. Por favor, tente novamente.","invalidModelsSelection":"Sele\xe7\xe3o de modelos inv\xe1lidos","cannotSelectMoreThanModels":"N\xe3o \xe9 poss\xedvel selecionar mais de {max} modelos","failedUpdatePermissions":"Falha ao atualizar as permiss\xf5es","failedUpdatePermissionsRetry":"Falha ao atualizar as permiss\xf5es. Por favor, tente novamente.","unknownProvider":"desconhecido","copyMaskedKey":"Copiar chave mascarada","modelsCount":"{count, plural, one {# model} other {# models}}","lastUsedOn":"\xdaltimo: {date}","editPermissions":"Editar permiss\xf5es","deleteKey":"Excluir chave","model":"Modelo {count}","models":"{count} modelos","permissionsTitle":"Permiss\xf5es: {name}","allowAllDesc":"Esta chave pode acessar todos os modelos dispon\xedveis.","restrictDesc":"Esta chave pode acessar {selectedCount} de modelos {totalModels}.","selectedCount":"{count} selecionado"},"auditLog":{"title":"Registro de auditoria","searchPlaceholder":"A\xe7\xf5es de pesquisa...","action":"A\xe7\xe3o","actor":"Ator","target":"Alvo","ipAddress":"Endere\xe7o IP","timestamp":"Carimbo de data e hora","noEntries":"Nenhuma entrada de auditoria encontrada","filterByAction":"Filtrar por a\xe7\xe3o...","filterByActor":"Filtrar por ator...","filterEntriesAria":"Filtrar entradas de log de auditoria","filterByActionTypeAria":"Filtrar por tipo de a\xe7\xe3o","filterByActorAria":"Filtrar por ator","refreshAuditLogAria":"Atualizar registro de auditoria","tableAria":"Entradas de registro de auditoria","failedFetchAuditLog":"Falha ao buscar o log de auditoria","notAvailable":"—","description":"A\xe7\xf5es administrativas e eventos de seguran\xe7a","showing":"Mostrando entradas {count} (deslocamento {offset})","previous":"Anterior"},"cliTools":{"title":"Ferramentas CLI","noActiveProviders":"Nenhum provedor ativo","noActiveProvidersDesc":"Adicione e conecte provedores primeiro para configurar as ferramentas CLI.","mapModels":"Modelos de mapas","testConnection":"Conex\xe3o de teste","connectionStatus":"Status da conex\xe3o","configureEndpoint":"Configurar ponto final","instructions":"Instru\xe7\xf5es","modelMapping":"Mapeamento de modelo","baseUrl":"URL base","apiKey":"Chave de API","configured":"Configurado","notConfigured":"N\xe3o configurado","notInstalled":"N\xe3o instalado","custom":"Personalizado","unknown":"Desconhecido","lastSavedAt":"\xdaltimo salvo: {date}","never":"Nunca","justNow":"agora mesmo","minutesAgoShort":"{count}m atr\xe1s","hoursAgoShort":"{count}h atr\xe1s","daysAgoShort":"{count}d atr\xe1s","monthsAgoShort":"{count}mo atr\xe1s","yearsAgoShort":"{count}anos atr\xe1s","runtimeCheckFailed":"Falha na verifica\xe7\xe3o de tempo de execu\xe7\xe3o","yourApiKeyPlaceholder":"sua chave de API","modelPlaceholder":"provedor/id do modelo","configurationSaved":"Configura\xe7\xe3o salva com sucesso.","failedToSave":"Falha ao salvar a configura\xe7\xe3o.","noApiKeysCreateOne":"Nenhuma chave de API – Crie uma na p\xe1gina Chaves","defaultOmnirouteKey":"sk_omniroute (padr\xe3o)","selectModel":"Selecione o modelo","selectModelForAlias":"Selecione o modelo para {alias}","selectModelForTool":"Selecione o modelo para {tool}","select":"Selecione","clear":"Limpar","comingSoon":"Em breve","checkingRuntime":"Verificando o status do tempo de execu\xe7\xe3o...","guideOnlyIntegration":"Integra\xe7\xe3o somente guia (sem necessidade de tempo de execu\xe7\xe3o local)","cliRuntimeDetected":"Tempo de execu\xe7\xe3o CLI detectado e pronto","cliFoundNotRunnable":"CLI encontrada, mas n\xe3o execut\xe1vel{reason}","cliRuntimeNotDetected":"Tempo de execu\xe7\xe3o da CLI n\xe3o detectado","binary":"Bin\xe1rio","configPath":"Caminho de configura\xe7\xe3o","configPathShort":"Configura\xe7\xe3o","failedCheckRuntimeStatus":"Falha ao verificar o status do tempo de execu\xe7\xe3o.","copy":"Copiar","copied":"Copiado","copyConfig":"Copiar configura\xe7\xe3o","saveConfig":"Salvar configura\xe7\xe3o","selectionSaved":"Sele\xe7\xe3o salva","guide":"Guia","detected":"Detectado","notReady":"N\xe3o est\xe1 pronto","active":"Ativo","inactive":"Inativo","startMitm":"Iniciar MITM","stopMitm":"Pare o MITM","mitmStarted":"MITM iniciado com sucesso!","mitmStopped":"MITM parou com sucesso!","failedStart":"Falha ao iniciar o MITM","failedStop":"Falha ao parar o MITM","saveMappings":"Salvar mapeamentos","mappingsSaved":"Mapeamentos salvos!","failedSaveMappings":"Falha ao salvar mapeamentos","howItWorks":"Como funciona:","antigravityHowWorksDesc":"A antigravidade envia solicita\xe7\xf5es ao endpoint do Google. O MITM os intercepta e os redireciona para o OmniRoute.","antigravityStep1":"1. Inicie o MITM para rotear solicita\xe7\xf5es por meio do OmniRoute.","antigravityStep2Prefix":"2. Adicionar","antigravityStep2Suffix":"ao seu arquivo hosts como 127.0.0.1.","antigravityStep3":"3. Abra o Antigravity e as solicita\xe7\xf5es ser\xe3o proxy.","sudoPasswordRequiredTitle":"Senha Sudo obrigat\xf3ria","sudoPasswordHint":"A senha do administrador \xe9 necess\xe1ria para modificar o arquivo hosts e as configura\xe7\xf5es de proxy do sistema.","enterSudoPassword":"Digite a senha do sudo","sudoPasswordRequiredError":"A senha Sudo \xe9 necess\xe1ria.","cancel":"Cancelar","confirm":"Confirmar","settingsApplied":"Configura\xe7\xf5es aplicadas com sucesso!","failedApplySettings":"Falha ao aplicar configura\xe7\xf5es","settingsReset":"Configura\xe7\xf5es redefinidas com sucesso!","failedResetSettings":"Falha ao redefinir as configura\xe7\xf5es","backupRestored":"C\xf3pia de seguran\xe7a restaurada!","failedRestore":"Falha ao restaurar","checkingCli":"Verificando {tool} CLI...","cliNotRunnable":"{tool} CLI instalada, mas n\xe3o execut\xe1vel","cliNotInstalled":"{tool} CLI n\xe3o instalada","cliNotDetected":"{tool} CLI n\xe3o detectada","cliDetectedReady":"{tool} CLI detectada e pronta","cliFoundFailedHealthcheck":"{tool} CLI foi encontrada, mas falhou na verifica\xe7\xe3o de integridade do tempo de execu\xe7\xe3o{reason}.","installCliPrompt":"Instale {tool} CLI para usar este recurso.","installCodexPrompt":"Instale o Codex CLI para usar o recurso de aplica\xe7\xe3o autom\xe1tica.","hide":"Esconder","howToInstall":"Como instalar","installationGuide":"Guia de instala\xe7\xe3o","platforms":"macOS/Linux/Windows:","afterInstallationRun":"Ap\xf3s a instala\xe7\xe3o, execute","toVerify":"para verificar.","current":"Atual","baseUrlPlaceholder":"https://.../v1","resetToDefault":"Redefinir para o padr\xe3o","providerModelPlaceholder":"provedor/id do modelo","apply":"Aplicar","reset":"Redefinir","manualConfig":"Configura\xe7\xe3o manual","backups":"C\xf3pias de seguran\xe7a","configBackups":"Backups de configura\xe7\xe3o","noBackupsYet":"Ainda n\xe3o h\xe1 backups. Os backups s\xe3o criados automaticamente antes de cada aplica\xe7\xe3o ou redefini\xe7\xe3o.","restore":"Restaurar","backupRestoredReloading":"C\xf3pia de seguran\xe7a restaurada! Recarregando status...","failedRestoreBackup":"Falha ao restaurar o backup","applied":"Aplicado!","failed":"Falha","resetDone":"Redefinir!","omnirouteConfiguredOpenAiCompatible":"OmniRoute est\xe1 configurado como provedor compat\xedvel com OpenAI","provider":"Provedor","model":"Modelo","providers":"Provedores","auth":"Autentica\xe7\xe3o","noApiKeysAvailable":"Nenhuma chave de API dispon\xedvel","usingDefaultOmniroute":"Usando o padr\xe3o: sk_omniroute","updateConfig":"Atualizar configura\xe7\xe3o","applyConfig":"Aplicar configura\xe7\xe3o","noBackupsAvailable":"Nenhum backup dispon\xedvel.","profileSaved":"Perfil \\"{name}\\" salvo!","failedSaveProfile":"Falha ao salvar o perfil","profileActivated":"Perfil ativado!","failedActivateProfile":"Falha ao ativar o perfil","profiles":"Perfis","savedProfiles":"Perfis salvos","noProfilesYet":"Nenhum perfil salvo ainda. Salve a configura\xe7\xe3o atual como um perfil abaixo.","activate":"Ativar","deleteProfile":"Excluir perfil","profileNamePlaceholder":"Nome do perfil (por exemplo, conta pessoal)","saveCurrent":"Salvar atual","codexAuthNotePrefix":"Usos do Codex","codexAuthNoteMiddle":"com","codexAuthNoteSuffix":"Clique em \\"Aplicar\\" para configurar automaticamente.","claudeManualConfiguration":"Claude CLI - Configura\xe7\xe3o manual","codexManualConfiguration":"Codex CLI - Configura\xe7\xe3o manual","droidManualConfiguration":"Droid de f\xe1brica - configura\xe7\xe3o manual","openClawManualConfiguration":"Garra Aberta - Configura\xe7\xe3o Manual","clineManualConfiguration":"Configura\xe7\xe3o Manual do Cline","kiloManualConfiguration":"Configura\xe7\xe3o Manual do C\xf3digo Kilo","toolDescriptions":{"antigravity":"IDE antigravidade do Google com MITM","claude":"CLI do C\xf3digo Claude Antr\xf3pico","codex":"CLI do OpenAI Codex","droid":"Assistente de IA Droid de f\xe1brica","openclaw":"Assistente de IA de garra aberta","cline":"CLI do assistente de codifica\xe7\xe3o Cline AI","kilo":"CLI do assistente de IA do Kilo Code","cursor":"Editor de c\xf3digo do cursor AI","continue":"Continuar Assistente de IA"},"guides":{"cursor":{"notes":{"0":"Requer conta Cursor Pro para usar este recurso.","1":"O cursor roteia solicita\xe7\xf5es por meio de seu pr\xf3prio servidor, portanto, o endpoint local n\xe3o \xe9 compat\xedvel. Ative o Cloud Endpoint nas configura\xe7\xf5es."},"steps":{"1":{"title":"Abra Configura\xe7\xf5es","desc":"V\xe1 para Configura\xe7\xf5es -> Modelos"},"2":{"title":"Habilitar API OpenAI","desc":"Habilite a op\xe7\xe3o \\"chave de API OpenAI\\""},"3":{"title":"URL base"},"4":{"title":"Chave de API"},"5":{"title":"Adicionar modelo personalizado","desc":"Clique em \\"Ver todos os modelos\\" -> \\"Adicionar modelo personalizado\\""},"6":{"title":"Selecione o modelo"}}},"continue":{"steps":{"1":{"title":"Abrir configura\xe7\xe3o","desc":"Abra o arquivo de configura\xe7\xe3o Continuar"},"2":{"title":"Chave de API"},"3":{"title":"Selecione o modelo"},"4":{"title":"Adicionar configura\xe7\xe3o de modelo","desc":"Adicione a seguinte configura\xe7\xe3o ao seu array de modelos:"}}}}},"combos":{"title":"Combos","description":"Crie combina\xe7\xf5es de modelos com roteamento ponderado e suporte substituto","createCombo":"Criar combina\xe7\xe3o","editCombo":"Editar combina\xe7\xe3o","deleteCombo":"Excluir combina\xe7\xe3o","noModels":"Nenhum modelo","noModelsYet":"Nenhum modelo adicionado ainda","addModel":"Adicionar modelo","addModelToCombo":"Adicionar modelo ao combo","routingStrategy":"Estrat\xe9gia de Roteamento","maxRetries":"M\xe1ximo de tentativas","timeout":"Tempo limite (ms)","healthcheck":"Verifica\xe7\xe3o de integridade","priority":"Prioridade","fallback":"Alternativa","roundRobin":"Rodada Robin","random":"Aleat\xf3rio","leastLatency":"Menor lat\xeancia","comboName":"Nome do combo","comboNamePlaceholder":"meu-combo","deleteConfirm":"Excluir este combo?","noCombosYet":"Ainda n\xe3o h\xe1 combos","comboCreated":"Combo criado com sucesso","comboUpdated":"Combo atualizado com sucesso","comboDeleted":"Combina\xe7\xe3o exclu\xedda","failedCreate":"Falha ao criar combina\xe7\xe3o","failedUpdate":"Falha ao atualizar o combo","errorCreating":"Erro ao criar o combo","errorUpdating":"Erro ao atualizar o combo","errorDeleting":"Erro ao excluir o combo","testFailed":"Falha na solicita\xe7\xe3o de teste","failedToggle":"Falha ao alternar combina\xe7\xe3o","testResults":"Resultados do teste — {name}","resolvedBy":"Resolvido por:","more":"+{count} mais","reqs":"requisitos","success":"sucesso","proxyConfigured":"Proxy configurado","copyComboName":"Copiar nome do combo","enableCombo":"Ativar combina\xe7\xe3o","disableCombo":"Desativar combina\xe7\xe3o","testCombo":"Combina\xe7\xe3o de teste","duplicate":"Duplicar","proxyConfig":"Configura\xe7\xe3o de proxy","nameRequired":"O nome \xe9 obrigat\xf3rio","nameInvalid":"Apenas letras, n\xfameros, -, _, / e . permitido","nameHint":"Letras, n\xfameros, -, _, / e . permitido","priorityDesc":"Fallback sequencial: tenta primeiro o modelo 1, depois o 2, etc.","weightedDesc":"Distribui o tr\xe1fego por porcentagem de peso com substituto","roundRobinDesc":"Distribui\xe7\xe3o circular: cada solicita\xe7\xe3o vai para o pr\xf3ximo modelo em rota\xe7\xe3o","randomDesc":"Sele\xe7\xe3o aleat\xf3ria uniforme e, em seguida, retorno aos modelos restantes","leastUsedDesc":"Escolhe o modelo com menos solicita\xe7\xf5es, equilibrando a carga ao longo do tempo","costOptimizedDesc":"Rotas para o modelo mais barato primeiro com base no pre\xe7o","models":"Modelos","autoBalance":"Equil\xedbrio autom\xe1tico","advancedSettings":"Configura\xe7\xf5es avan\xe7adas","retryDelay":"Atraso de nova tentativa (ms)","concurrencyPerModel":"Simultaneidade/Modelo","queueTimeout":"Tempo limite da fila (ms)","advancedHint":"Deixe em branco para usar padr\xf5es globais. Eles substituem as configura\xe7\xf5es por provedor.","moveUp":"Subir","moveDown":"Mover para baixo","removeModel":"Remover","saving":"Salvando...","weighted":"Ponderado","leastUsed":"Menos usado","costOpt":"Op\xe7\xe3o de custo"},"costs":{"title":"Custos","budget":"Or\xe7amento","totalCost":"Custo total","breakdown":"Divis\xe3o de custos","noData":"Sem dados de custo","byModel":"Por modelo","byProvider":"Por provedor"},"endpoint":{"title":"Ponto final da API","available":"Terminais dispon\xedveis","cloudProxy":"Proxy de nuvem","disableConfirm":"Tem certeza de que deseja desativar o proxy na nuvem?","baseUrl":"URL base","apiKeyLabel":"Chave de API","registeredKeys":"Chaves Registradas","chatCompletions":"Conclus\xf5es de bate-papo","responses":"Respostas","listModels":"Listar modelos","usingCloudProxy":"Usando o Cloud Proxy","usingLocalServer":"Usando servidor local","machineId":"ID da m\xe1quina: {id}...","disableCloud":"Desativar nuvem","enableCloud":"Habilitar nuvem","modelsAcrossEndpoints":"Modelos {models} em endpoints {endpoints}","chatDesc":"Bate-papo com e sem streaming com todos os provedores","embeddings":"Incorpora\xe7\xf5es","embeddingsDesc":"Incorpora\xe7\xf5es de texto para pipelines de pesquisa e RAG","imageGeneration":"Gera\xe7\xe3o de imagem","imageDesc":"Gere imagens a partir de prompts de texto","rerank":"Reclassificar","rerankDesc":"Reclassificar documentos por relev\xe2ncia para uma consulta","audioTranscription":"Transcri\xe7\xe3o de \xe1udio","audioTranscriptionDesc":"Transcrever arquivos de \xe1udio para texto (Whisper)","textToSpeech":"Texto para fala","textToSpeechDesc":"Converta texto em fala com som natural","moderations":"Modera\xe7\xf5es","moderationsDesc":"Modera\xe7\xe3o de conte\xfado e classifica\xe7\xe3o de seguran\xe7a","enableCloudTitle":"Ativar proxy de nuvem","whatYouGet":"O que voc\xea receber\xe1","cloudBenefitAccess":"Acesse sua API de qualquer lugar do mundo","cloudBenefitShare":"Compartilhe endpoint com sua equipe facilmente","cloudBenefitPorts":"N\xe3o h\xe1 necessidade de abrir portas ou configurar firewall","cloudBenefitEdge":"Rede de borda global r\xe1pida","cloudSessionNote":"A nuvem manter\xe1 sua sess\xe3o de autentica\xe7\xe3o por 1 dia. Se n\xe3o for usado, ele ser\xe1 exclu\xeddo automaticamente.","cloudUnstableNote":"A nuvem est\xe1 atualmente inst\xe1vel com Claude Code OAuth em alguns casos.","cloudConnected":"Cloud Proxy conectado!","connectingToCloud":"Conectando \xe0 nuvem...","verifyingConnection":"Verificando conex\xe3o...","connecting":"Conectando...","verifying":"Verificando...","connected":"Conectado!","disableCloudTitle":"Desativar proxy de nuvem","disableWarning":"Todas as sess\xf5es de autentica\xe7\xe3o ser\xe3o exclu\xeddas da nuvem.","syncingData":"Sincronizando os dados mais recentes...","disablingCloud":"Desativando nuvem...","syncing":"Sincronizando...","disabling":"Desativando...","cloudConnectedVerified":"Cloud Proxy conectado e verificado!","connectedVerificationPending":"Conectado – verifica\xe7\xe3o pendente","connectedVerificationPendingWithError":"Conectado – verifica\xe7\xe3o pendente: {error}","cloudDisabledSuccess":"Nuvem desativada com sucesso","syncedSuccess":"Sincronizado com sucesso","failedDisable":"Falha ao desativar a nuvem","failedEnable":"Falha ao ativar a nuvem","cloudRequestTimeout":"Tempo limite de solicita\xe7\xe3o na nuvem","cloudRequestFailed":"Falha na solicita\xe7\xe3o de nuvem","cloudWorkerUnreachable":"N\xe3o foi poss\xedvel entrar em contato com o trabalhador da nuvem. Certifique-se de que o servi\xe7o de nuvem esteja em execu\xe7\xe3o (npm run dev in/cloud).","connectionFailed":"Falha na conex\xe3o","syncFailed":"Falha ao sincronizar dados na nuvem","providerModelsTitle":"{provider} — Modelos","noModelsForProvider":"Nenhum modelo dispon\xedvel para este fornecedor.","chat":"Bate-papo","embedding":"Incorpora\xe7\xe3o","image":"Imagem","custom":"personalizado","modelsCount":"{count, plural, one {# model} other {# models}}","responsesDesc":"API Responses do OpenAI para Codex e fluxos de trabalho ag\xeanticos avan\xe7ados","listModelsDesc":"Listar todos os modelos dispon\xedveis em todos os fornecedores conectados","settingsApi":"Settings API","settingsApiDesc":"Ler e modificar a configura\xe7\xe3o do OmniRoute via API","categoryCore":"APIs Principais","categoryMedia":"M\xeddia e Multi-Modal","categoryUtility":"Utilidades e Gest\xe3o"},"health":{"title":"Sa\xfade do sistema","description":"Monitoramento em tempo real da sua inst\xe2ncia OmniRoute","healthy":"Saud\xe1vel","degraded":"Degradado","down":"Para baixo","uptime":"Tempo de atividade","memory":"Mem\xf3ria","memoryRss":"Mem\xf3ria (RSS)","heap":"Pilha","cpu":"CPU","database":"Banco de dados","version":"Vers\xe3o","lastCheck":"\xdaltima verifica\xe7\xe3o","providerHealth":"Sa\xfade do Provedor","systemMetrics":"M\xe9tricas do sistema","tokenHealth":"Sa\xfade do token","refreshAll":"Atualizar tudo","checkNow":"Verifique agora","loadingHealth":"Carregando dados de sa\xfade...","failedToLoad":"Falha ao carregar dados de integridade: {error}","retry":"Tentar novamente","allOperational":"Todos os sistemas operacionais","issuesDetected":"Problemas de sistema detectados","updatedAt":"{time} atualizado","latency":"Lat\xeancia","latencyP50":"p50","latencyP95":"p\xe1g.95","latencyP99":"p99","millisecondsShort":"{value}ms","notAvailable":"—","totalRequests":"Total de solicita\xe7\xf5es","noDataYet":"Ainda n\xe3o h\xe1 dados","promptCache":"Cache de prompt","entries":"Entradas","hitRate":"Taxa de acerto","hitsMisses":"Acertos / Erros","signatureCache":"Cache de Assinatura","signatureDefaults":"Padr\xf5es","signatureTool":"Ferramenta","signatureFamily":"Fam\xedlia","signatureSession":"Sess\xe3o","recovering":"Recuperando","noCBData":"N\xe3o h\xe1 dados dispon\xedveis sobre disjuntores. Fa\xe7a alguns pedidos primeiro.","providerHealthStatusAria":"Estado de sa\xfade do provedor","issuesLabel":"Problemas detectados","operational":"Operacional","providers":"Provedores","healthyCount":"{count} \xedntegro","nodeVersion":"N\xf3 {version}","failures":"{count} falha","failuresPlural":"{count} falhas","lastFailure":"\xdaltimo","rateLimitStatus":"Status do limite de taxa","activeLimiters":"{count} limitador ativo","activeLimitersPlural":"{count} limitadores ativos","queued":"Na fila","queuedCount":"{count} na fila","running":"correndo","runningCount":"{count} em execu\xe7\xe3o","ok":"OK","activeLockouts":"Bloqueios ativos","resetConfirm":"Redefinir todos os disjuntores para um estado \xedntegro? Isto limpar\xe1 todas as contagens de falhas e restaurar\xe1 todos os provedores ao status operacional.","resetAllTitle":"Reinicialize todos os disjuntores para um estado saud\xe1vel","resetting":"Redefinindo...","resetAll":"Redefinir tudo","until":"At\xe9 {time}"},"limits":{"title":"Limites e cotas","rateLimit":"Limite de taxa","remaining":"Restante","requestsPerMinute":"Solicita\xe7\xf5es/min","tokensPerMinute":"Tokens/min","dailyLimit":"Limite Di\xe1rio"},"logs":{"title":"Registros","requestLogs":"Solicitar registros","proxyLogs":"Registros de proxy","auditLog":"Registro de auditoria","console":"Consola","auditLogDesc":"A\xe7\xf5es administrativas e eventos de seguran\xe7a","loading":"Carregando...","refresh":"Atualizar","filterByAction":"Filtrar por a\xe7\xe3o...","filterByActor":"Filtrar por ator...","filterEntriesAria":"Filtrar entradas de log de auditoria","filterByActionTypeAria":"Filtrar por tipo de a\xe7\xe3o","filterByActorAria":"Filtrar por ator","refreshAuditLogAria":"Atualizar registro de auditoria","tableAria":"Entradas de registro de auditoria","failedFetchAuditLog":"Falha ao buscar o log de auditoria","showing":"Mostrando entradas {count} (deslocamento {offset})","search":"Pesquisar","timestamp":"Carimbo de data e hora","action":"A\xe7\xe3o","actor":"Ator","target":"Alvo","details":"Detalhes","ipAddress":"Endere\xe7o IP","notAvailable":"—","noEntries":"Nenhuma entrada de registro de auditoria encontrada","previous":"Anterior","next":"Pr\xf3ximo"},"onboarding":{"welcome":"Bem vindo","security":"Seguran\xe7a","test":"Teste","ready":"Pronto!","setPassword":"Definir senha","addProvider":"Adicione seu primeiro provedor","getStarted":"Comece","skip":"Pular","skipWizard":"Ignorar totalmente o assistente","skipPassword":"Ignorar configura\xe7\xe3o de senha","skipAndContinue":"Pular e continuar","passwordLabel":"Senha","confirmPassword":"Confirmar senha","enterPassword":"Digite a senha","confirmPasswordPlaceholder":"Confirmar senha","passwordsMismatch":"As senhas n\xe3o coincidem","setupComplete":"Configura\xe7\xe3o conclu\xedda!","goToDashboard":"V\xe1 para Painel →","welcomeDesc":"OmniRoute \xe9 o seu proxy local da API AI. Ele roteia solicita\xe7\xf5es para v\xe1rios provedores de IA com balanceamento de carga, failover e rastreamento de uso.","multiProvider":"Multi-Provedor","usageTracking":"Rastreamento de uso","apiKeyMgmt":"Gerenciamento de chave de API","securityDesc":"Defina uma senha para proteger seu painel ou pule por enquanto.","providerDesc":"Conecte seu primeiro provedor de IA. Voc\xea pode adicionar mais posteriormente.","apiKeyRequired":"Chave API (obrigat\xf3ria)","customUrlOptional":"URL personalizado (opcional)","testDesc":"Vamos verificar se a conex\xe3o do seu provedor funciona.","runTest":"Execute o teste de conex\xe3o","testingConnection":"Testando conex\xe3o...","connectionSuccessful":"Conex\xe3o bem-sucedida! Seu provedor est\xe1 pronto.","noProviderFound":"Nenhum provedor encontrado. Voc\xea pode adicionar um do painel posteriormente.","testFailed":"O teste falhou, mas voc\xea pode configurar isso mais tarde.","couldNotTest":"N\xe3o foi poss\xedvel testar agora. Voc\xea pode testar no painel.","doneDesc":"Est\xe1 tudo pronto! Sua inst\xe2ncia do OmniRoute est\xe1 configurada e pronta para fazer proxy de solicita\xe7\xf5es de IA.","yourEndpoint":"Seu ponto final:","continue":"Continuar","retry":"Tentar novamente","failedSetPassword":"Falha ao definir a senha. Tente novamente.","failedAddProvider":"Falha ao adicionar provedor. Tente novamente.","connectionError":"Erro de conex\xe3o. Por favor, tente novamente.","provider":"Provedor"},"providers":{"title":"Provedores","addProvider":"Adicionar provedor","editProvider":"Editar provedor","deleteProvider":"Excluir provedor","noProviders":"Nenhum provedor configurado","modelAvailability":"Disponibilidade do modelo","accounts":"Contas","newAccount":"Nova conta","deleteConfirm":"Tem certeza de que deseja excluir este provedor?","testing":"Testando...","testConnection":"Conex\xe3o de teste","testSuccess":"Conex\xe3o bem-sucedida","testFailed":"Falha na conex\xe3o","available":"Dispon\xedvel","cooldown":"Recarga","unavailable":"Indispon\xedvel","unknown":"Desconhecido","oauthLabel":"OAuth","compatibleLabel":"Compat\xedvel","chat":"Bate-papo","responses":"Respostas","messages":"Mensagens","oauthProviders":"Provedores OAuth","freeProviders":"Provedores Gratuitos","apiKeyProviders":"Provedores de chaves de API","compatibleProviders":"Provedores compat\xedveis com chave de API","testAll":"Teste tudo","testAllOAuth":"Teste todas as conex\xf5es OAuth","testAllFree":"Teste todas as conex\xf5es gratuitas","testAllApiKey":"Teste todas as conex\xf5es de chave de API","testAllCompatible":"Teste todas as conex\xf5es compat\xedveis","connected":"{count} Conectado","errorCount":"{count} Erro ({code})","errorCountNoCode":"{count} Erro","noConnections":"Sem conex\xf5es","disabled":"Desativado","enableProvider":"Habilitar provedor","disableProvider":"Desativar provedor","testResults":"Resultados do teste","noCompatibleYet":"Nenhum provedor compat\xedvel adicionado ainda","compatibleHint":"Use os bot\xf5es acima para adicionar endpoints compat\xedveis com OpenAI ou Antr\xf3pico","addOpenAICompatible":"Adicionar compat\xedvel com OpenAI","addAnthropicCompatible":"Adicionar Compat\xedvel Antr\xf3pico","addNewProvider":"Adicionar novo provedor","backToProviders":"Voltar para Provedores","configureNewProvider":"Configure um novo provedor de IA para usar com seus aplicativos.","providerLabel":"Provedor","selectProvider":"Selecione um provedor","selectedProvider":"Provedor selecionado","authMethod":"M\xe9todo de autentica\xe7\xe3o","apiKeyLabel":"Chave de API","apiKeyRequired":"A chave de API \xe9 obrigat\xf3ria","selectProviderRequired":"Selecione um provedor","enterApiKey":"Insira sua chave API","apiKeySecure":"Sua chave API ser\xe1 criptografada e armazenada com seguran\xe7a.","oauth2Connect":"Conecte-se com OAuth2","oauth2Label":"OAuth2","oauth2Desc":"Conecte sua conta usando autentica\xe7\xe3o OAuth2.","displayName":"Nome de exibi\xe7\xe3o","displayNamePlaceholder":"por exemplo, API de produ\xe7\xe3o, ambiente de desenvolvimento","displayNameHint":"Opcional. Um nome amig\xe1vel para identificar esta configura\xe7\xe3o.","active":"Ativo","activeDescription":"Habilite este provedor para uso em seus aplicativos","cancel":"Cancelar","createProvider":"Criar provedor","failedCreate":"Falha ao criar provedor","errorOccurred":"Ocorreu um erro. Por favor, tente novamente.","modelStatus":"Status do modelo","allModelsOperational":"Todos os modelos operacionais","modelsWithIssues":"{count} modelo(s) com problemas","allModelsNormal":"Todos os modelos est\xe3o respondendo normalmente.","cooldownCleared":"Tempo de espera liberado para {model}","failedClearCooldown":"Falha ao limpar o tempo de espera","loadingAvailability":"Carregando disponibilidade do modelo...","clearCooldown":"Limpar","clearing":"Limpando...","until":"At\xe9 {time}","providerTestFailed":"Falha no teste do provedor","modeTest":"{mode} Teste","passedCount":"{count} aprovado","failedCount":"{count} falhou","testedCount":"{count} testado","millisecondsAbbr":"{value}ms","okShort":"OK","errorShort":"ERRO","noActiveConnectionsInGroup":"Nenhuma conex\xe3o ativa encontrada para este grupo.","allTestsPassed":"Todos os testes {total} foram aprovados","testSummary":"{passed}/{total} aprovado, {failed} falhou","nameLabel":"Nome","prefixLabel":"Prefixo","baseUrlLabel":"URL base","apiTypeLabel":"Tipo de API","prefixHint":"Obrigat\xf3rio. Prefixo exclusivo para nomes de modelos.","nameHint":"Obrigat\xf3rio. Um r\xf3tulo amig\xe1vel para este n\xf3.","baseUrlHint":"Obrigat\xf3rio. URL base da API do provedor.","anthropicPrefixPlaceholder":"ac-prod","openaiPrefixPlaceholder":"oc-prod","anthropicBaseUrlPlaceholder":"https://api.anthropic.com/v1","openaiBaseUrlPlaceholder":"https://api.openai.com/v1","validateConnection":"Validar conex\xe3o","validating":"Validando...","connectionValid":"A conex\xe3o \xe9 v\xe1lida!","connectionFailed":"Falha na conex\xe3o. Verifique o URL e a chave.","testKeyLabel":"Chave de API de teste","testKeyPlaceholder":"sk-... (apenas para valida\xe7\xe3o)","providerNotFound":"Provedor n\xe3o encontrado","deleteConnectionConfirm":"Excluir esta conex\xe3o?","failedSetAlias":"Falha ao definir o alias","failedSaveConnection":"Falha ao salvar conex\xe3o","failedSaveConnectionRetry":"Falha ao salvar a conex\xe3o. Por favor, tente novamente.","failedRetestConnection":"Falha ao testar novamente a conex\xe3o","deleteCompatibleNodeConfirm":"Excluir este n\xf3 compat\xedvel com {type}?","anthropicCompatibleDetails":"Detalhes compat\xedveis com antr\xf3picos","openaiCompatibleDetails":"Detalhes compat\xedveis com OpenAI","messagesApi":"API de mensagens","responsesApi":"API de respostas","chatCompletions":"Conclus\xf5es de bate-papo","importingModels":"Importando...","importFromModels":"Importar de /modelos","addConnectionToImport":"Adicione uma conex\xe3o para permitir a importa\xe7\xe3o.","noModelsConfigured":"Nenhum modelo configurado","connectionCount":"{count} conex\xf5es","fetchingModels":"Buscando modelos dispon\xedveis...","failedFetchModels":"Falha ao buscar modelos","noModelsFound":"Nenhum modelo encontrado","importFailed":"Falha na importa\xe7\xe3o","noNewModelsAdded":"Nenhum novo modelo foi adicionado.","adding":"Adicionando...","importingModelsTitle":"Importando Modelos","copyModel":"Copiar modelo","removeModel":"Remover modelo","rateLimitProtected":"Protegido","rateLimitUnprotected":"Desprotegido","enableRateLimitProtection":"Clique para ativar a prote\xe7\xe3o de limite de taxa","disableRateLimitProtection":"Clique para desativar a prote\xe7\xe3o de limite de taxa","productionKey":"Chave de produ\xe7\xe3o","enterNewApiKey":"Insira a nova chave de API","optional":"Opcional","anthropicCompatibleName":"Compat\xedvel Antr\xf3pico","openaiCompatibleName":"Compat\xedvel com OpenAI","failedImportModels":"Falha ao importar modelos","noModelsReturnedFromEndpoint":"Nenhum modelo foi retornado do endpoint /models.","importingModelsProgress":"Importando {current} de modelos {total}...","foundModelsStartingImport":"Modelos {count} encontrados. Iniciando importa\xe7\xe3o...","importingModelById":"Importando {modelId}...","importSuccessCount":"{count, plural, one {# model} other {# models}} importado com sucesso!","noNewModelsAddedExisting":"Nenhum novo modelo foi adicionado (todos j\xe1 existem).","importDoneCount":"✓ Pronto! {count, plural, one {# model imported.} other {# models imported.}}","unexpectedErrorOccurred":"Ocorreu um erro inesperado","connectionCountLabel":"{count, plural, one {# connection} other {# connections}}","messagesPath":"mensagens","responsesPath":"respostas","chatCompletionsPath":"bate-papo/conclus\xf5es","add":"Adicionar","edit":"Editar","delete":"Excluir","anthropic":"Antr\xf3pico","openai":"OpenAI","singleConnectionPerCompatible":"Somente uma conex\xe3o \xe9 permitida por n\xf3 compat\xedvel. Adicione outro n\xf3 se precisar de mais conex\xf5es.","connections":"Conex\xf5es","providerProxyTitleConfigured":"Proxy do provedor: {host}","configured":"configurado","providerProxyConfigureHint":"Configure o proxy para todas as conex\xf5es deste provedor","providerProxy":"Proxy do provedor","noConnectionsYet":"Ainda n\xe3o h\xe1 conex\xf5es","addFirstConnectionHint":"Adicione sua primeira conex\xe3o para come\xe7ar","addConnection":"Adicionar conex\xe3o","availableModels":"Modelos Dispon\xedveis","pageAutoRefresh":"A p\xe1gina ser\xe1 atualizada automaticamente...","statusDisabled":"desativado","statusConnected":"conectado","statusRuntimeIssue":"problema de tempo de execu\xe7\xe3o","statusAuthFailed":"falha na autentica\xe7\xe3o","statusRateLimited":"taxa limitada","statusNetworkIssue":"problema de rede","statusTestUnsupported":"teste sem suporte","statusUnavailable":"indispon\xedvel","statusFailed":"falhou","statusError":"erro","oauthAccount":"Conta OAuth","errorTypeRuntime":"Tempo de execu\xe7\xe3o local","errorTypeUpstreamAuth":"Autentica\xe7\xe3o upstream","errorTypeMissingCredential":"Credencial ausente","errorTypeRefreshFailed":"Falha na atualiza\xe7\xe3o","errorTypeTokenExpired":"O token expirou","errorTypeRateLimited":"Taxa limitada","errorTypeUpstreamUnavailable":"Upstream indispon\xedvel","errorTypeNetworkError":"Erro de rede","errorTypeTestUnsupported":"Teste sem suporte","errorTypeUpstreamError":"Erro de envio","proxySourceGlobal":"Globais","proxySourceProvider":"Provedor","proxySourceKey":"Chave","proxyConfiguredBySource":"Proxy ({source}): {host}","autoPriority":"Autom\xe1tico: {priority}","proxy":"Procurador","retestAuthentication":"Testar novamente a autentica\xe7\xe3o","retest":"Teste novamente","disableConnection":"Desativar conex\xe3o","enableConnection":"Habilitar conex\xe3o","reauthenticateConnection":"Autentique novamente esta conex\xe3o","proxyConfig":"Configura\xe7\xe3o de proxy","aliasExistsAlert":"O alias \\"{alias}\\" j\xe1 existe. Use um modelo diferente ou edite o alias existente.","openRouterAnyModelHint":"OpenRouter suporta qualquer modelo. Adicione modelos e crie aliases para acesso r\xe1pido.","modelIdFromOpenRouter":"ID do modelo (do OpenRouter)","openRouterModelPlaceholder":"antr\xf3pico/claude-3-opus","customModels":"Modelos personalizados","customModelsHint":"Adicione IDs de modelo que n\xe3o est\xe3o na lista padr\xe3o. Eles estar\xe3o dispon\xedveis para roteamento.","modelId":"ID do modelo","customModelPlaceholder":"por exemplo gpt-4.5-turbo","loading":"Carregando...","removeCustomModel":"Remover modelo personalizado","noCustomModels":"Nenhum modelo personalizado adicionado ainda.","allSuggestedAliasesExist":"Todos os aliases sugeridos j\xe1 existem. Escolha um modelo diferente ou remova aliases conflitantes.","failedSaveCustomModel":"Falha ao salvar o modelo personalizado","modelAddedSuccess":"Modelo {modelId} adicionado com sucesso","failedAddModelTryAgain":"Falha ao adicionar modelo. Por favor, tente novamente.","failedSaveImportedModel":"Falha ao salvar o modelo importado no banco de dados personalizado","failedImportModelsTryAgain":"Falha ao importar modelos. Por favor, tente novamente.","failedRemoveModelFromDatabase":"Falha ao remover o modelo do banco de dados","modelRemovedSuccess":"Modelo removido com sucesso","failedDeleteModelTryAgain":"Falha ao excluir modelo. Por favor, tente novamente.","compatibleModelsDescription":"Adicione modelos compat\xedveis com {type} manualmente ou importe-os do endpoint /models.","anthropicCompatibleModelPlaceholder":"claude-3-opus-20240229","openaiCompatibleModelPlaceholder":"gpt-4o","apiKeyValidationFailed":"Falha na valida\xe7\xe3o da chave de API. Verifique sua chave e tente novamente.","addProviderApiKeyTitle":"Adicionar chave de API {provider}","checking":"Verificando...","check":"Verifique","valid":"V\xe1lido","invalid":"Inv\xe1lido","creating":"Criando...","validationChecksAnthropicCompatible":"A valida\xe7\xe3o verifica {provider} verificando a chave de API.","validationChecksOpenAiCompatible":"A valida\xe7\xe3o verifica {provider} via /models em seu URL base.","priorityLabel":"Prioridade","saving":"Salvando...","save":"Salvar","editConnection":"Editar conex\xe3o","accountName":"Nome da conta","email":"E-mail","healthCheckMinutes":"Verifica\xe7\xe3o de integridade (min)","healthCheckHint":"Intervalo de atualiza\xe7\xe3o de token proativo. 0 = desabilitado.","failedTestConnection":"Falha ao testar a conex\xe3o","failed":"Falha","leaveBlankKeepCurrentApiKey":"Deixe em branco para manter a chave API atual.","editCompatibleTitle":"Editar {type} Compat\xedvel","compatibleBaseUrlHint":"Use o URL base (terminando em /v1) para sua API compat\xedvel com {type}.","apiKeyForCheck":"Chave API (para verifica\xe7\xe3o)","compatibleProdPlaceholder":"{type} Compat\xedvel (Produ\xe7\xe3o)"},"settings":{"title":"Configura\xe7\xf5es","general":"Geral","security":"Seguran\xe7a","appearance":"Apar\xeancia","routing":"Roteamento","cache":"Cache","resilience":"Resili\xeancia","systemPrompt":"Alerta do sistema","thinkingBudget":"Pensando no or\xe7amento","proxy":"Procurador","pricing":"Pre\xe7os","storage":"Armazenamento","policies":"Pol\xedticas","ipFilter":"Filtro IP","comboDefaults":"Padr\xf5es de combina\xe7\xe3o","fallbackChains":"Cadeias substitutas","changePassword":"Alterar senha","enablePassword":"Habilitar senha","darkMode":"Modo escuro","lightMode":"Modo claro","systemTheme":"Tema do sistema","enableCache":"Habilitar cache","cacheTTL":"Cache TTL","maxCacheSize":"Tamanho m\xe1ximo do cache","clearCache":"Limpar Cache","cacheHits":"Acessos de cache","cacheMisses":"Perdas de cache","hitRate":"Taxa de acerto","cacheEntries":"Entradas de cache","circuitBreaker":"Disjuntor","retryPolicy":"Pol\xedtica de Nova Tentativa","maxRetries":"M\xe1ximo de tentativas","retryDelay":"Atraso na nova tentativa","timeoutMs":"Tempo limite (ms)","enableSystemPrompt":"Habilitar prompt do sistema","systemPromptText":"Texto de prompt do sistema","enableThinking":"Habilite o pensamento","maxThinkingTokens":"Tokens de pensamento m\xe1ximo","enableProxy":"Habilitar proxy","proxyUrl":"URL proxy","pricingRates":"Formato de taxas de pre\xe7os","currentPricing":"Vis\xe3o geral de pre\xe7os atuais","loadingPricing":"Carregando dados de pre\xe7os...","noPricing":"N\xe3o h\xe1 dados de pre\xe7os dispon\xedveis","input":"Entrada","output":"Sa\xedda","cached":"Em cache","reasoning":"Racioc\xednio","cacheCreation":"Cria\xe7\xe3o de Cache","customPricing":"Pre\xe7o personalizado","databaseSize":"Tamanho do banco de dados","backupDb":"Banco de dados de backup","restoreDb":"Restaurar banco de dados","exportData":"Exportar dados","importData":"Importar dados","clearData":"Limpar todos os dados","clearDataConfirm":"Isso excluir\xe1 permanentemente todos os dados. Tem certeza?","enableRequestLogs":"Habilitar registros de solicita\xe7\xe3o","logRetention":"Reten\xe7\xe3o de registros","ipWhitelist":"Lista de permiss\xf5es de IP","ipBlacklist":"Lista negra de IP","addIP":"Adicionar IP","savedSuccessfully":"Configura\xe7\xf5es salvas com sucesso","ai":"IA","advanced":"Avan\xe7ado","localMode":"Modo Local — Todos os dados armazenados em sua m\xe1quina","settingsSectionsAria":"Se\xe7\xf5es de configura\xe7\xf5es","switchThemes":"Alternar entre temas claros e escuros","themeSelectionAria":"Sele\xe7\xe3o de tema","themeLight":"Luz","themeDark":"Escuro","themeSystem":"Sistema","hideHealthLogs":"Ocultar registros de verifica\xe7\xe3o de integridade","hideHealthLogsDesc":"Quando ativado, suprime mensagens [HealthCheck] no console do servidor","promptCache":"Cache de prompt","flushCache":"Liberar cache","flushing":"Rubor…","size":"Tamanho","hits":"Acessos","evictions":"Despejos","loadingCacheStats":"Carregando estat\xedsticas de cache…","globalProxy":"Procurador global","globalProxyDesc":"Configure um proxy de sa\xedda global para todas as chamadas de API. Provedores individuais, combos e chaves podem substituir isso.","noGlobalProxy":"Nenhum proxy global configurado","globalLabel":"Globais","configure":"Configurar","globalSystemPrompt":"Alerta do sistema global","systemPromptDesc":"Injetado em todas as solicita\xe7\xf5es no n\xedvel do proxy","saved":"Salvo","systemPromptPlaceholder":"Digite o prompt do sistema para injetar em todas as solicita\xe7\xf5es...","systemPromptHint":"Este prompt \xe9 anexado \xe0 mensagem do sistema de cada solicita\xe7\xe3o. Use para instru\xe7\xf5es globais, diretrizes de seguran\xe7a ou regras de formata\xe7\xe3o de resposta.","chars":"{count} caracteres","thinkingBudgetTitle":"Pensando no or\xe7amento","thinkingBudgetDesc":"Controle o uso do token de racioc\xednio de IA em todas as solicita\xe7\xf5es","passthrough":"Passagem","passthroughDesc":"Sem altera\xe7\xf5es – o cliente controla o or\xe7amento pensado","auto":"Autom\xe1tico","autoDesc":"Remova todas as configura\xe7\xf5es de pensamento – deixe o provedor decidir","custom":"Personalizado","customDesc":"Defina um or\xe7amento fixo de tokens para todas as solicita\xe7\xf5es","adaptive":"Adaptativo","adaptiveDesc":"Dimensione o or\xe7amento com base na complexidade da solicita\xe7\xe3o","effortNone":"Nenhum (0 tokens)","effortLow":"Baixo (tokens de 1K)","effortMedium":"M\xe9dio (10 mil tokens)","effortHigh":"Alto (128 mil tokens)","tokenBudget":"Or\xe7amento de token","tokens":"fichas","baseEffortLevel":"N\xedvel de esfor\xe7o b\xe1sico","adaptiveHint":"O modo adaptativo \xe9 dimensionado a partir desse n\xedvel b\xe1sico com base na contagem de mensagens, no uso da ferramenta e no comprimento do prompt.","requireLogin":"Exigir login","requireLoginDesc":"Quando LIGADO, o painel requer senha. Quando DESLIGADO, acesse sem login.","currentPassword":"Senha atual","enterCurrentPassword":"Digite a senha atual","newPassword":"Nova senha","enterNewPassword":"Digite a nova senha","confirmPassword":"Confirme a nova senha","confirmPasswordPlaceholder":"Confirme a nova senha","passwordsNoMatch":"As senhas n\xe3o coincidem","passwordUpdated":"Senha atualizada com sucesso","failedUpdatePassword":"Falha ao atualizar a senha","errorOccurred":"Ocorreu um erro","updatePassword":"Atualizar senha","setPassword":"Definir senha","apiEndpointProtection":"Prote\xe7\xe3o de endpoint de API","requireAuthModels":"Exigir chave de API para /models","requireAuthModelsDesc":"Quando ativado, o endpoint /v1/models retorna 404 para solicita\xe7\xf5es n\xe3o autenticadas. Impede a descoberta de modelos por usu\xe1rios n\xe3o autorizados.","blockedProviders":"Provedores bloqueados","blockedProvidersDesc":"Oculte provedores espec\xedficos da resposta /v1/models. Os provedores bloqueados n\xe3o aparecer\xe3o nas listagens de modelos.","providersBlocked":"{count} provedor(es) bloqueado(s) em /models","blockProviderTitle":"Bloquear {provider}","unblockProviderTitle":"Desbloquear {provider}","routingStrategy":"Estrat\xe9gia de Roteamento","fillFirst":"Preencha primeiro","fillFirstDesc":"Use contas em ordem de prioridade","roundRobin":"Rodada Robin","roundRobinDesc":"Percorrer todas as contas","p2c":"P2C","p2cDesc":"Escolha 2 aleatoriamente, use o mais saud\xe1vel","random":"Aleat\xf3rio","randomDesc":"Conta aleat\xf3ria a cada solicita\xe7\xe3o","leastUsed":"Menos usado","leastUsedDesc":"Escolha a conta usada menos recentemente","costOpt":"Op\xe7\xe3o de custo","costOptDesc":"Prefira a conta mais barata dispon\xedvel","stickyLimit":"Limite pegajoso","stickyLimitDesc":"Chamadas por conta antes de mudar","modelAliases":"Aliases de modelo","modelAliasesDesc":"Padr\xf5es curinga para remapear nomes de modelos • Use * e ?","aliasPatternPlaceholder":"claude-soneto-*","aliasTargetPlaceholder":"claude-soneto-4-20250514","pattern":"Padr\xe3o","targetModel":"Modelo alvo","add":"+ Adicionar","session":"Sess\xe3o","sessionDetailsAria":"Detalhes da sess\xe3o","status":"Estado","authenticated":"Autenticado","guest":"Convidado","loginTime":"Hora de login","sessionAge":"Idade da sess\xe3o","browser":"Navegador","clearLocalData":"Limpar dados locais","logout":"Sair","clearLocalDataConfirm":"Limpar todos os dados locais? Isso redefinir\xe1 suas prefer\xeancias.","unknown":"Desconhecido","systemActor":"sistema","ipAccessControl":"Controle de acesso IP","ipAccessControlDesc":"Bloquear ou permitir endere\xe7os IP espec\xedficos","ipModeDisabled":"Desativado","ipModeBlacklist":"Lista negra","ipModeWhitelist":"Lista de permiss\xf5es","ipModeWhitelistPriority":"Prioridade WL","addIpAddress":"Adicionar endere\xe7o IP","ipAddressPlaceholder":"192.168.1.0/24 ou 10.0.*.*","block":"+ Bloquear","allow":"+ Permitir","blocked":"Bloqueado ({count})","allowed":"Permitido ({count})","temporaryBans":"Banimentos tempor\xe1rios ({count})","minLeft":"{min}m restantes","auditLog":"Registro de auditoria","searchAuditLogs":"Pesquisar registros de auditoria...","failedLoadAuditLog":"Falha ao carregar o log de auditoria","noAuditEvents":"Nenhum evento de auditoria encontrado","action":"A\xe7\xe3o","actor":"Ator","details":"Detalhes","time":"Hora","fallbackChainsTitle":"Cadeias substitutas","fallbackChainsDesc":"Definir ordem de fallback do provedor por modelo","addChain":"+ Adicionar corrente","modelName":"Nome do modelo","modelNamePlaceholder":"claude-soneto-4-20250514","providersCommaSeparated":"Provedores (separados por v\xedrgula, em ordem de prioridade)","providersCommaSeparatedPlaceholder":"antr\xf3pico, openai, g\xeameos","createChain":"Criar cadeia","noFallbackChains":"Sem cadeias de fallback","noFallbackChainsDesc":"Crie uma cadeia para definir a ordem de fallback do provedor para um modelo.","loadingFallbackChains":"Carregando cadeias de fallback...","deleteChainConfirm":"Excluir cadeia substituta para \\"{model}\\"?","chainCreated":"Cadeia criada para {model}","chainDeleted":"Cadeia exclu\xedda para {model}","failedCreateChain":"Falha ao criar cadeia","failedDeleteChain":"Falha ao excluir a cadeia","deleteChain":"Excluir cadeia","fillModelAndProviders":"Preencha o nome do modelo e os fornecedores","addAtLeastOneProvider":"Adicione pelo menos um provedor","comboDefaultsTitle":"Padr\xf5es de combina\xe7\xe3o","globalComboConfig":"Configura\xe7\xe3o de combina\xe7\xe3o global","defaultStrategy":"Estrat\xe9gia padr\xe3o","defaultStrategyDesc":"Aplicado a novos combos sem estrat\xe9gia expl\xedcita","comboStrategyAria":"Estrat\xe9gia combinada","priority":"Prioridade","weighted":"Ponderado","maxRetriesLabel":"M\xe1ximo de tentativas","retryDelayLabel":"Atraso de nova tentativa (ms)","timeoutLabel":"Tempo limite (ms)","healthCheck":"Verifica\xe7\xe3o de sa\xfade","healthCheckDesc":"Verifique previamente a disponibilidade do provedor","trackMetrics":"Rastrear m\xe9tricas","trackMetricsDesc":"Registrar m\xe9tricas de solicita\xe7\xe3o por combina\xe7\xe3o","providerOverrides":"Substitui\xe7\xf5es de provedor","providerOverridesDesc":"Substitua o tempo limite e novas tentativas por provedor. As configura\xe7\xf5es do provedor substituem os padr\xf5es globais.","providerMaxRetriesAria":"{provider} m\xe1ximo de novas tentativas","providerTimeoutAria":"{provider} tempo limite ms","removeProviderOverrideAria":"Remover substitui\xe7\xe3o de {provider}","newProviderNamePlaceholder":"por exemplo google, abraai...","newProviderNameAria":"Novo nome do provedor","retries":"novas tentativas","ms":"senhora","saveComboDefaults":"Salvar padr\xf5es de combina\xe7\xe3o","maxNestingDepth":"Profundidade m\xe1xima de aninhamento","concurrencyPerModel":"Simultaneidade/Modelo","queueTimeout":"Tempo limite da fila (ms)","providerProfiles":"Perfis de Provedores","providerProfilesDesc":"Configura\xe7\xf5es de resili\xeancia separadas para provedores OAuth (baseado em sess\xe3o) e chave de API (medida). Os provedores OAuth t\xeam limites mais r\xedgidos devido aos limites de taxas mais baixos.","oauthProviders":"Provedores OAuth","apiKeyProviders":"Provedores de chaves de API","transientCooldown":"Recarga transit\xf3ria","rateLimitCooldown":"Recarga do Limite de Taxa","maxBackoffLevel":"N\xedvel m\xe1ximo de espera","cbThreshold":"Limite CB","cbResetTime":"Tempo de reinicializa\xe7\xe3o do CB","rateLimiting":"Limita\xe7\xe3o de taxa","rateLimitingDesc":"Os provedores de chaves de API s\xe3o automaticamente limitados por taxas com padr\xf5es seguros. Os limites s\xe3o aprendidos nos cabe\xe7alhos de resposta e se adaptam ao longo do tempo.","defaultSafetyNet":"Rede de seguran\xe7a padr\xe3o","rpm":"RPM","minGap":"Intervalo m\xednimo","maxConcurrent":"M\xe1ximo simult\xe2neo","activeLimiters":"Limitadores Ativos","noActiveLimiters":"Ainda n\xe3o h\xe1 limitadores de taxa ativos.","reservoir":"Reservat\xf3rio","running":"Correndo","queued":"Na fila","circuitBreakers":"Disjuntores","breakerStateClosed":"Fechado","breakerStateOpen":"Abrir","breakerStateHalfOpen":"Meio aberto","tripped":"{count} trope\xe7ou","healthy":"{count} \xedntegro","resetAll":"Redefinir tudo","noCircuitBreakers":"Nenhum disjuntor ativo ainda. Eles s\xe3o criados automaticamente quando as solicita\xe7\xf5es fluem pelo pipeline combinado.","failures":"{count} falha(s)","policiesLocked":"Pol\xedticas e identificadores bloqueados","allOperational":"Todos os sistemas operacionais – sem bloqueios ou disjuntores desarmados","loadingPolicies":"Carregando pol\xedticas...","lockedIdentifiers":"Identificadores bloqueados","unlockedIdentifier":"Desbloqueado: {identifier}","sinceDate":"desde {date}","forceUnlock":"For\xe7ar desbloqueio","unlocking":"Desbloqueando...","failedUnlock":"Falha ao desbloquear","failedLoadWithStatus":"Falha ao carregar: {status}","failedLoadResilience":"Falha ao carregar o status de resili\xeancia","saveFailed":"Falha ao salvar","resetFailed":"Falha na redefini\xe7\xe3o","loadingResilience":"Carregando status de resili\xeancia...","retry":"Tentar novamente","systemStorage":"Sistema e armazenamento","allDataLocal":"Todos os dados armazenados localmente em sua m\xe1quina","databasePath":"Caminho do banco de dados","exportDatabase":"Exportar banco de dados","exportAll":"Exportar tudo (.tar.gz)","importDatabase":"Importar banco de dados","confirmDbImport":"Confirmar importa\xe7\xe3o do banco de dados","confirmDbImportDesc":"Isso substituir\xe1 todos os dados atuais pelo conte\xfado de {file}. Um backup ser\xe1 criado automaticamente antes da importa\xe7\xe3o.","yesImport":"Sim, importar","lastBackup":"\xdaltimo backup","noBackupYet":"Ainda n\xe3o h\xe1 backup","backupNow":"Fa\xe7a backup agora","backupRestore":"Backup e restaura\xe7\xe3o","viewBackups":"Ver backups","hide":"Esconder","backupRetentionDesc":"Os instant\xe2neos do banco de dados s\xe3o criados automaticamente antes da restaura\xe7\xe3o e a cada 15 minutos quando os dados s\xe3o alterados. Reten\xe7\xe3o: 24 horas + 30 backups di\xe1rios com rota\xe7\xe3o inteligente.","loadingBackups":"Carregando backups...","noBackupsYet":"Nenhum backup dispon\xedvel ainda. Os backups ser\xe3o criados automaticamente quando os dados forem alterados.","backupsAvailable":"{count} backup(s) dispon\xedveis","refresh":"Atualizar","confirm":"Confirmar?","yes":"Sim","no":"N\xe3o","restore":"Restaurar","invalidFileType":"Tipo de arquivo inv\xe1lido. Somente arquivos .sqlite s\xe3o aceitos.","exportFailed":"Falha na exporta\xe7\xe3o","exportFailedWithError":"Falha na exporta\xe7\xe3o: {error}","fullExportFailedWithError":"Falha na exporta\xe7\xe3o completa: {error}","backupCreated":"Backup criado: {file}","restoreSuccess":"Restaurado! {connections} conex\xf5es, {nodes} n\xf3s, {combos} combos, {apiKeys} chaves de API.","importSuccess":"Banco de dados importado! {connections} conex\xf5es, {nodes} n\xf3s, {combos} combos, {apiKeys} chaves de API.","justNow":"agora mesmo","minutesAgo":"{count}m atr\xe1s","hoursAgo":"{count}h atr\xe1s","daysAgo":"{count}d atr\xe1s","backupReasonManual":"manual","backupReasonPreRestore":"pr\xe9-restaura\xe7\xe3o","connectionsCount":"{count, plural, one {# connection} other {# connections}}","noChangesSinceBackup":"Nenhuma altera\xe7\xe3o desde o \xfaltimo backup","backupFailed":"Falha no backup","restoreFailed":"Falha na restaura\xe7\xe3o","importFailed":"Falha na importa\xe7\xe3o","errorDuringRestore":"Ocorreu um erro durante a restaura\xe7\xe3o","errorDuringImport":"Ocorreu um erro durante a importa\xe7\xe3o","modelPricing":"Pre\xe7o do modelo","modelPricingDesc":"Configurar taxas de custo por modelo • Todas as taxas em tokens de US$/1 milh\xe3o","providers":"Provedores","registry":"Registro","priced":"Pre\xe7o","searchProvidersModels":"Pesquise fornecedores ou modelos...","showAll":"Mostrar tudo","noProvidersMatch":"Nenhum provedor corresponde \xe0 sua pesquisa.","howPricingWorks":"Como funciona o pre\xe7o","cacheWrite":"Grava\xe7\xe3o em cache","unsaved":"n\xe3o salvo","resetDefaults":"Redefinir padr\xf5es","saveProvider":"Salvar provedor","saving":"Salvando...","model":"Modelo","models":"modelos","moreProviders":"{count} mais provedores","withPricing":"com pre\xe7os configurados","policiesCircuitBreakers":"Pol\xedticas e disjuntores","activeIssuesDetected":"Problemas ativos detectados","off":"Desligado","resetPricingConfirm":"Redefinir todos os pre\xe7os de {provider} para os padr\xf5es?","pricingDescInput":"Entrada: tokens enviados ao modelo","pricingDescOutput":"Sa\xedda: tokens gerados","pricingDescCached":"Armazenado em cache: entrada reutilizada (~50% da taxa de entrada)","pricingDescReasoning":"Racioc\xednio: tokens de pensamento (volta para Sa\xedda)","pricingDescCacheWrite":"Cache Write: criando entradas de cache (volta para Input)","pricingDescFormula":"Custo = (entrada \xd7 taxa_de_entrada) + (sa\xedda \xd7 taxa_de_sa\xedda) + (em cache \xd7 taxa_de_cache) por milh\xe3o de tokens.","pricingSettingsTitle":"Configura\xe7\xf5es de pre\xe7os","totalModels":"Modelos totais","active":"Ativo","costCalculation":"C\xe1lculo de custos","costCalculationDesc":"Os custos s\xe3o calculados com base no uso do token e nas taxas de pre\xe7os configuradas para cada modelo.","pricingFormat":"Formato de pre\xe7os","pricingFormatDesc":"Todas as taxas s\xe3o em tokens de US$/1 milh\xe3o (d\xf3lares por milh\xe3o de tokens).","tokenTypes":"Tipos de token","inputTokenDesc":"Tokens de prompt padr\xe3o","outputTokenDesc":"Tokens de conclus\xe3o/resposta","cachedTokenDesc":"Tokens de entrada armazenados em cache (normalmente 50% da taxa de entrada)","reasoningTokenDesc":"Tokens especiais de racioc\xednio/pensamento (substitui\xe7\xe3o para taxa de produ\xe7\xe3o)","cacheCreationTokenDesc":"Tokens usados para criar entradas de cache (fallback para taxa de entrada)","customPricingNote":"Voc\xea pode substituir o pre\xe7o padr\xe3o de modelos espec\xedficos. As substitui\xe7\xf5es personalizadas t\xeam prioridade sobre os pre\xe7os detectados automaticamente.","editPricing":"Editar pre\xe7os","viewFullDetails":"Ver detalhes completos","modelAliasesTitle":"Aliases de Modelo","addCustomAlias":"Adicionar Alias Personalizado","deprecatedModelId":"ID do modelo depreciado","newModelId":"Novo ID do modelo","customAliases":"Aliases Personalizados","builtInAliases":"Aliases Integrados","backgroundDegradationTitle":"Degrada\xe7\xe3o de Tarefas em Background","backgroundDegradationDesc":"Detecta automaticamente tarefas em background (t\xedtulos, resumos) e roteia para modelos mais baratos","enableDegradation":"Ativar Degrada\xe7\xe3o em Background","enableDegradationHint":"Quando ativado, tarefas em background como gera\xe7\xe3o de t\xedtulos e resumos s\xe3o roteadas automaticamente para modelos mais baratos","tasksDetected":"Tarefas detectadas","degradationMap":"Mapa de Degrada\xe7\xe3o de Modelos","premiumModel":"Modelo premium","cheapModel":"Modelo barato","detectionPatterns":"Padr\xf5es de Dete\xe7\xe3o","newPattern":"ex: \\"gerar um t\xedtulo\\""},"translator":{"title":"Tradutor","metaTitle":"Parque do Tradutor | OmniRoute","metaDescription":"Depure, teste e visualize tradu\xe7\xf5es de formatos de API entre provedores","playgroundTitle":"Parque do Tradutor","playground":"Parque infantil","realtime":"Atividade de tradu\xe7\xe3o em tempo real","chatTester":"Testador de bate-papo","testBench":"Bancada de testes","liveMonitor":"Monitoramento ao vivo","modeDescriptionPlayground":"Cole qualquer corpo de solicita\xe7\xe3o de API e veja como o OmniRoute o traduz entre formatos de provedor (OpenAI ↔ Claude ↔ Gemini ↔ API de respostas)","modeDescriptionChatTester":"Envie solicita\xe7\xf5es de chat reais por meio do OmniRoute e inspecione todo o percurso: entrada, solicita\xe7\xe3o traduzida, resposta do provedor e sa\xedda traduzida.","modeDescriptionTestBench":"Execute cen\xe1rios predefinidos e compare a compatibilidade entre provedores e modelos.","modeDescriptionLiveMonitor":"Assista a eventos de tradu\xe7\xe3o em tempo real \xe0 medida que as solicita\xe7\xf5es fluem pelo OmniRoute.","modeDescriptionFallback":"Depure, teste e visualize como o OmniRoute traduz solicita\xe7\xf5es de API entre provedores.","recentTranslations":"Tradu\xe7\xf5es recentes","noTranslations":"Ainda n\xe3o h\xe1 tradu\xe7\xf5es","source":"Fonte","target":"Alvo","time":"Hora","model":"Modelo","status":"Estado","latency":"Lat\xeancia","totalTranslations":"Total de tradu\xe7\xf5es","successful":"Bem sucedido","errors":"Erros","avgLatency":"Lat\xeancia m\xe9dia","millisecondsShort":"{value}ms","notAvailableSymbol":"—","liveAutoRefreshing":"Ao vivo – atualiza\xe7\xe3o autom\xe1tica","paused":"Pausado","eventsAppearHint":"Os eventos de tradu\xe7\xe3o aparecem aqui conforme as solicita\xe7\xf5es fluem pelo OmniRoute. Use qualquer um destes m\xe9todos para gerar eventos:","chatTesterTab":"Guia Testador de bate-papo","testBenchTab":"Aba Bancada de Teste","externalApiCalls":"Chamadas de API externas","ideCliIntegrations":"Integra\xe7\xf5es IDE/CLI","inMemoryNote":"Nota: Os eventos s\xe3o armazenados na mem\xf3ria e redefinidos quando o servidor \xe9 reiniciado.","ok":"OK","errorShort":"ERRO","formatConverter":"Conversor de formato","formatConverterDescription":"Cole ou digite um corpo de solicita\xe7\xe3o JSON. O tradutor detectar\xe1 automaticamente o formato de origem e o converter\xe1 para o formato de destino. Use isto para depurar como o OmniRoute traduz solicita\xe7\xf5es entre formatos (OpenAI ↔ Claude ↔ Gemini ↔ API de respostas).","input":"Entrada","output":"Sa\xedda","auto":"Autom\xe1tico","swapFormats":"Trocar formatos","translateAction":"Traduzir","clear":"Limpar","inputPlaceholder":"Cole o corpo da solicita\xe7\xe3o aqui ou selecione um modelo abaixo...","exampleTemplates":"Modelos de exemplo","exampleTemplatesHint":"- Clique para carregar","templateLoadHint":"O modelo carrega a solicita\xe7\xe3o no formato {format}. Altere o formato de origem para carregar em um formato diferente.","compatibilityTester":"Testador de compatibilidade","compatibilityReport":"Relat\xf3rio de compatibilidade","testBenchDescription":"Execute cen\xe1rios predefinidos (Simple Chat, Tool Calling, etc.) para verificar a tradu\xe7\xe3o e a compatibilidade do provedor. Selecione um formato de origem e um provedor de destino e execute todos os testes para ver uma porcentagem de compatibilidade. Use isso para descobrir quais recursos funcionam entre os provedores.","targetProvider":"Provedor de destino","runAllTests":"Execute todos os testes","runTest":"Executar teste","reRun":"Executar novamente","running":"Correndo...","passed":"passou","failed":"falhou","passedIconLabel":"✅ Aprovado","chunks":"peda\xe7os","scenarioSimpleChat":"Bate-papo simples","scenarioToolCalling":"Chamada de ferramenta","scenarioMultiTurn":"Multivoltas","scenarioThinking":"Pensando","scenarioSystemPrompt":"Alerta do sistema","scenarioStreaming":"Transmiss\xe3o","templateNames":{"simple-chat":"Bate-papo simples","tool-calling":"Chamada de ferramenta","multi-turn":"Multivoltas","thinking":"Pensando","system-prompt":"Alerta do sistema","streaming":"Transmiss\xe3o"},"templateDescriptions":{"simple-chat":"Mensagem de texto b\xe1sica","tool-calling":"Invoca\xe7\xe3o de fun\xe7\xe3o/ferramenta","multi-turn":"Conversa com hist\xf3ria","thinking":"Pensamento/racioc\xednio estendido","system-prompt":"Instru\xe7\xf5es complexas do sistema","streaming":"Solicita\xe7\xe3o de streaming SSE"},"templatePayloads":{"simpleChat":{"system":"Voc\xea \xe9 um assistente \xfatil.","userGreeting":"Ol\xe1! Como voc\xea est\xe1 hoje?"},"toolCalling":{"userWeather":"Como est\xe1 o clima em S\xe3o Paulo?","toolDescription":"Obtenha o clima atual para um local","cityNameDescription":"Nome da cidade"},"multiTurn":{"system":"Voc\xea \xe9 um assistente de codifica\xe7\xe3o.","userInitial":"Escreva uma fun\xe7\xe3o para classificar um array em Python.","assistantExample":"Aqui est\xe1 uma fun\xe7\xe3o de classifica\xe7\xe3o simples:\\n\\n```p\xedton\\ndef sort_array(arr):\\n retornar classificado (arr)\\n```","userFollowUp":"Agora classifique em ordem decrescente."},"thinking":{"question":"Qual \xe9 a soma dos primeiros 100 n\xfameros primos?"},"systemPrompt":{"systemInstruction":"Voc\xea \xe9 um engenheiro de software s\xeanior especializado em sistemas distribu\xeddos. Responda \xe0s perguntas de forma concisa usando as melhores pr\xe1ticas do setor. Sempre forne\xe7a exemplos de c\xf3digo quando relevante. Formate suas respostas usando markdown.","question":"Como fa\xe7o para implementar um padr\xe3o de disjuntor?"},"streaming":{"prompt":"Conte-me uma pequena hist\xf3ria sobre um rob\xf4 aprendendo a pintar."}},"openaiCompatibleLabel":"Compat\xedvel com OpenAI","anthropicCompatibleLabel":"Compat\xedvel Antr\xf3pico","noTemplateForFormat":"Nenhum modelo para este formato","translationFailed":"Falha na tradu\xe7\xe3o: {error}","pipelineDebugger":"Depurador de pipeline","translationPipeline":"Pipeline de Tradu\xe7\xe3o","pipelineVisualization":"Visualiza\xe7\xe3o de pipeline","pipelineVisualizationHint":"Envie uma mensagem para ver como sua solicita\xe7\xe3o flui atrav\xe9s de detec\xe7\xe3o → tradu\xe7\xe3o → chamada do provedor.","chatTesterDescription":"Envie mensagens em um formato de cliente espec\xedfico e inspecione cada etapa do pipeline de tradu\xe7\xe3o.","chatTesterFlow":"Solicita\xe7\xe3o do cliente → Detec\xe7\xe3o de formato → OpenAI Intermedi\xe1rio → Formato do provedor → Resposta","clickStepToInspect":"Clique em qualquer etapa para inspecionar os dados nessa fase.","clientFormat":"Formato do cliente","provider":"Provedor","modelPlaceholder":"Selecione ou digite um nome de modelo...","sendMessageToSeePipeline":"Envie uma mensagem para ver o pipeline de tradu\xe7\xe3o","chatMessageHintPrefix":"Sua mensagem ser\xe1 formatada como um","chatMessageHintSuffix":"solicita\xe7\xe3o, traduzida por meio do pipeline e enviada ao provedor selecionado.","youWithFormat":"Voc\xea ({format})","assistant":"Assistente","typeMessage":"Digite uma mensagem...","send":"Enviar","clientRequest":"Solicita\xe7\xe3o do cliente","clientRequestDescription":"O corpo da solicita\xe7\xe3o que seu cliente enviaria","formatDetected":"Formato detectado","formatDetectedDescription":"OmniRoute detecta automaticamente o formato da API na estrutura da solicita\xe7\xe3o","openaiIntermediate":"OpenAI intermedi\xe1rio","openaiIntermediateDescription":"Todos os formatos s\xe3o primeiro normalizados para o formato OpenAI (a ponte universal)","providerFormat":"Formato do provedor","providerFormatDescription":"O formato OpenAI \xe9 traduzido para o formato nativo do provedor","providerResponse":"Resposta do provedor","providerResponseRawDescription":"A resposta bruta da API do provedor","providerResponseSseDescription":"O fluxo SSE bruto da API do provedor","unexpectedError":"Ocorreu um erro inesperado","error":"Erro","errorMessage":"Erro: {message}","requestFailed":"Falha na solicita\xe7\xe3o","noTextExtracted":"(Nenhum texto extra\xeddo)","liveMonitorDescriptionPrefix":"Mostra eventos de tradu\xe7\xe3o \xe0 medida que as chamadas de API fluem pelo OmniRoute. Os eventos v\xeam do buffer na mem\xf3ria (redefini\xe7\xf5es na reinicializa\xe7\xe3o). Usar","liveMonitorDescriptionSuffix":"ou chamadas de API externas para gerar eventos."},"usage":{"title":"Uso","loggerTab":"Registrador","proxyTab":"Procurador","budgetManagement":"Gest\xe3o Or\xe7ament\xe1ria","budgetSaved":"Limites de or\xe7amento salvos","budgetSaveFailed":"Falha ao salvar o or\xe7amento","loadingBudgetData":"Carregando dados do or\xe7amento...","noApiKeysTitle":"Sem chaves de API","noApiKeysDescription":"Adicione chaves de API primeiro para configurar limites de or\xe7amento.","apiKey":"Chave de API","todaysSpend":"Gasto de hoje","thisMonth":"Este m\xeas","setLimits":"Definir limites","dailyLimitUsd":"Limite Di\xe1rio (USD)","monthlyLimitUsd":"Limite Mensal (USD)","warningThresholdPercent":"Limite de aviso (%)","dailyLimitPlaceholder":"por exemplo 5h00","monthlyLimitPlaceholder":"por exemplo 50,00","warningThresholdPlaceholder":"80","saveLimits":"Salvar Limites","budgetOk":"Or\xe7amento OK — {remaining} restantes","budgetExceeded":"Or\xe7amento excedido — solicita\xe7\xf5es podem ser bloqueadas","totalRequests":"Total de solicita\xe7\xf5es","noDataYet":"Ainda n\xe3o h\xe1 dados","latency":"Lat\xeancia","latencyP50":"p50","latencyP95":"p\xe1g.95","latencyP99":"p99","promptCache":"Cache de prompt","systemHealth":"Sa\xfade do sistema","entries":"Entradas","activeCount":"{count} ativo","openCircuitBreakersDetected":"Disjuntores abertos detectados","hitRate":"Taxa de acerto","hitsMisses":"Acertos / Erros","circuitBreakers":"Disjuntores","lockedIPs":"IPs bloqueados","lockoutsAutoRefreshHint":"Bloqueios de limite de taxa por modelo • Atualiza\xe7\xe3o autom\xe1tica de 10s","lockedCount":"{count, plural, one {# locked} other {# locked}}","timeLeft":"{time} restantes","howItWorks":"Como funciona","howItWorksSubtitle":"Saiba como as avalia\xe7\xf5es validam suas respostas do LLM","define":"Definir","defineStepDescription":"Crie casos de teste com prompts de entrada e crit\xe9rios de sa\xedda esperados usando estrat\xe9gias como cont\xe9m, regex ou correspond\xeancia exata.","run":"Corre","runStepDescription":"Execute casos de teste em seus endpoints LLM por meio do OmniRoute. Cada caso \xe9 enviado como uma solicita\xe7\xe3o de API real.","evaluate":"Avaliar","evaluateStepDescription":"As respostas s\xe3o comparadas com os crit\xe9rios esperados. Veja aprova\xe7\xe3o/reprova\xe7\xe3o para cada caso com m\xe9tricas de lat\xeancia e feedback detalhado.","evalSuites":"Su\xedtes de avalia\xe7\xe3o","evalSuitesHint":"Clique em um conjunto para visualizar casos de teste e execute para avaliar seus endpoints LLM","evalsLoading":"Carregando su\xedtes de avalia\xe7\xe3o...","noEvalSuitesFound":"Nenhuma su\xedte Eval encontrada","noEvalSuitesDescription":"Os conjuntos de avalia\xe7\xe3o podem ser definidos por meio da API ou em c\xf3digo. Eles testam os resultados do modelo em rela\xe7\xe3o aos resultados esperados usando estrat\xe9gias como cont\xe9m, regex, correspond\xeancia exata e fun\xe7\xf5es personalizadas.","columnCase":"Caso","columnStatus":"Estado","columnLatency":"Lat\xeancia","columnDetails":"Detalhes","columnModel":"Modelo","columnStrategy":"Estrat\xe9gia","columnExpected":"Esperado","statsSuites":"Su\xedtes","statsTestCases":"Casos de teste","statsModels":"Modelos","statsCoverage":"Cobertura","statsStrategiesCount":"{count} estrat\xe9gias","evaluationStrategies":"Estrat\xe9gias de Avalia\xe7\xe3o","modelsUnderTest":"Modelos em teste","searchSuitesPlaceholder":"Pesquisar su\xedtes...","passSuffix":"passar","casesCount":"{count, plural, one {# case} other {# cases}}","runEval":"Executar avalia\xe7\xe3o","runningProgress":"Executando {current}/{total}...","passRate":"taxa de aprova\xe7\xe3o","summaryBreakdown":"{passed} aprovado \xb7 {failed} reprovado \xb7 {total} total","passedIconLabel":"✅ Aprovado","failedIconLabel":"❌ Falhou","detailsContains":"Cont\xe9m: \\"{term}\\"","detailsRegex":"Regex: {pattern}","detailsExpected":"Esperado: \\"{expected}\\"","noResultsYet":"Ainda n\xe3o h\xe1 resultados","testCasesCount":"Casos de teste ({count})","noTestCasesDefined":"Nenhum caso de teste definido","runEvalHint":"Clique em \\"Executar avalia\xe7\xe3o\\" para executar todos os casos em seu endpoint LLM. Cada teste envia uma solicita\xe7\xe3o real atrav\xe9s do OmniRoute.","notifyNoTestCases":"Nenhum caso de teste definido para este pacote","notifyAllCasesPassed":"Todos os casos {total} foram aprovados ✅","notifySomeCasesFailed":"{passed}/{total} aprovado, {failed} falhou","notifyEvalRunFailed":"Falha na execu\xe7\xe3o da avalia\xe7\xe3o","notifyEvalTitle":"Avalia\xe7\xe3o: {name}","modelEvals":"Avalia\xe7\xf5es de modelos","evalsHeroDescription":"Teste e valide seus endpoints LLM executando conjuntos de avalia\xe7\xe3o predefinidos. Cada conjunto cont\xe9m casos de teste que enviam prompts reais por meio do OmniRoute e comparam as respostas com os crit\xe9rios esperados, ajudando voc\xea a detectar regress\xf5es, comparar modelos e garantir a qualidade da resposta entre os provedores.","qualityValidation":"Valida\xe7\xe3o de Qualidade","modelComparison":"Compara\xe7\xe3o de modelos","regressionDetection":"Detec\xe7\xe3o de regress\xe3o","latencyBenchmarks":"Benchmarks de lat\xeancia","modelLockouts":"Bloqueios de modelo","noLockouts":"Nenhum modelo atualmente bloqueado","activeSessions":"Sess\xf5es ativas","noSessions":"Nenhuma sess\xe3o ativa","sessionsHint":"As sess\xf5es aparecem conforme as solicita\xe7\xf5es fluem pelo proxy","sessionsTrackedHint":"Rastreado por solicita\xe7\xe3o de impress\xe3o digital • Atualiza\xe7\xe3o autom\xe1tica 5s","session":"Sess\xe3o","age":"Idade","requests":"Solicita\xe7\xf5es","connection":"Conex\xe3o","durationMillisecondsShort":"{value}ms","durationSecondsShort":"{value}s","durationMinutesShort":"{value}m","durationHoursShort":"{value}h","reasonSeparator":" - ","notAvailableSymbol":"-","providerLimits":"Limites do provedor","noProviders":"Nenhum provedor conectado","connectProvidersForQuota":"Conecte-se a provedores com OAuth para rastrear o uso e os limites de cota de API.","accountsCount":"{count, plural, one {# account} other {# accounts}}","filteredFromCount":"(filtrado de {count})","autoRefresh":"Atualiza\xe7\xe3o autom\xe1tica","refreshAll":"Atualizar tudo","loadingQuotas":"Carregando...","account":"Conta","modelQuotas":"Cotas de modelo","lastUsed":"\xdaltimo uso","actions":"A\xe7\xf5es","refreshQuota":"Atualizar cota","today":"Hoje","tomorrow":"Amanh\xe3","dayTimeFormat":"{day}, {time}","inDuration":"em {duration}","notApplicable":"N/A","rawPlanWithValue":"Plano bruto: {plan}","noPlanFromProvider":"Nenhum plano do provedor","noQuotaData":"Sem dados de cota","noQuotaDataAvailable":"N\xe3o h\xe1 dados de cota dispon\xedveis","noAccountsForTierFilter":"Nenhuma conta encontrada para filtro de n\xedvel","tierAll":"Todos","tierEnterprise":"Empresa","tierTeam":"Equipe","tierBusiness":"Neg\xf3cios","tierUltra":"Ultra","tierPro":"Pr\xf3","tierPlus":"Mais","tierFree":"Gr\xe1tis","tierUnknown":"Desconhecido"},"modals":{"waitingAuth":"Aguardando autoriza\xe7\xe3o","verificationUrl":"URL de verifica\xe7\xe3o","yourCode":"Seu c\xf3digo","remoteAccess":"Acesso remoto:","connectedSuccess":"Conectado com sucesso!","connectionFailed":"Falha na conex\xe3o","chooseAuthMethod":"Escolha seu m\xe9todo de autentica\xe7\xe3o:","awsBuilderId":"ID do construtor AWS","awsIamIdentity":"Centro de identidade AWS IAM","googleAccount":"Conta do Google","githubAccount":"Conta GitHub","importToken":"Token de importa\xe7\xe3o","pasteToken":"Cole o token de atualiza\xe7\xe3o do Kiro IDE.","awsRegion":"Regi\xe3o AWS","autoDetecting":"Detec\xe7\xe3o autom\xe1tica de tokens...","readingFromCache":"Lendo do cache SSO da AWS","readingFromCursor":"Lendo do banco de dados Cursor IDE","initializing":"Inicializando...","pricingConfig":"Configura\xe7\xe3o de pre\xe7os","loadingPricing":"Carregando dados de pre\xe7os...","pricingRatesFormat":"Formato de taxas de pre\xe7os","noPricingData":"N\xe3o h\xe1 dados de pre\xe7os dispon\xedveis","noModelsFound":"Nenhum modelo encontrado"},"loggers":{"allProviders":"Todos os provedores","allModels":"Todos os modelos","allAccounts":"Todas as contas","allApiKeys":"Todas as chaves de API","allTypes":"Todos os tipos","allLevels":"Todos os n\xedveis","modelAZ":"Modelo A-Z","modelZA":"Modelo Z-A","loadingLogs":"Carregando registros...","loadingProxyLogs":"Carregando registros de proxy...","noLogEntries":"Nenhuma entrada de registro encontrada","noPayloadData":"N\xe3o h\xe1 dados de carga dispon\xedveis para esta entrada de log.","proxyEvent":"Evento proxy","proxy":"Procurador","level":"N\xedvel","directNative":"Direto (nativo)","combo":"Combina\xe7\xe3o","inputTokens":"Eu:","outputTokens":"\xd3:"},"stats":{"usageOverview":"Vis\xe3o geral do uso","outputTokens":"Tokens de sa\xedda","totalCost":"Custo total","usageByModel":"Uso por modelo","usageByAccount":"Uso por conta","failedToLoad":"Falha ao carregar estat\xedsticas de uso.","tokenHealth":"Sa\xfade do token","totalOAuth":"OAuth total","healthy":"Saud\xe1vel","warning":"Aviso","errored":"Erro","lastCheck":"\xdaltima verifica\xe7\xe3o","noData":"Sem dados","share":"Compartilhar","unableToLoad":"N\xe3o foi poss\xedvel carregar as m\xe9tricas do sistema","product":"Produto","resources":"Recursos","company":"Empresa"},"auth":{"welcome":"Bem vindo","signIn":"Fa\xe7a login","enterPassword":"Digite sua senha para continuar","password":"Senha","unifiedProxy":"Proxy de API de IA unificado","unifiedAiApiProxy":"Proxy de API de IA unificado","unifiedAiApiProxyDesc":"Encaminhe solicita\xe7\xf5es para v\xe1rios provedores de IA por meio de um \xfanico endpoint. Balanceamento de carga, failover e rastreamento de uso integrados.","passwordNotEnabled":"A prote\xe7\xe3o por senha n\xe3o est\xe1 ativada","loading":"Carregando...","invalidPassword":"Senha inv\xe1lida","errorOccurredRetry":"Ocorreu um erro. Por favor, tente novamente.","configureInstance":"Vamos configurar sua inst\xe2ncia do OmniRoute","runOnboardingWizard":"Execute o assistente de integra\xe7\xe3o para configurar sua senha e conectar seu primeiro provedor de IA.","startOnboarding":"Comece a integra\xe7\xe3o","secureYourInstance":"Proteja sua inst\xe2ncia","setPasswordDescription":"Defina uma senha para proteger seu painel e proteger seus endpoints de API contra acesso n\xe3o autorizado.","configurePassword":"Configurar senha","continue":"Continuar","windowWillClose":"Esta janela fechar\xe1 automaticamente...","closeTabNow":"Voc\xea pode fechar esta guia agora.","copyUrlManual":"Copie o URL da barra de endere\xe7o e cole-o no aplicativo.","accessDeniedDescription":"Voc\xea n\xe3o tem permiss\xe3o para acessar este recurso. Verifique sua chave API ou entre em contato com o administrador.","goToDashboard":"V\xe1 para o painel","featureMultiProviderTitle":"Multi-Provedor","featureMultiProviderDesc":"OpenAI, Antr\xf3pico, Google e muito mais","featureLoadBalancingTitle":"Balanceamento de carga","featureLoadBalancingDesc":"Distribua solicita\xe7\xf5es de forma inteligente","featureUsageTrackingTitle":"Rastreamento de uso","featureUsageTrackingDesc":"Monitore custos e tokens","resetPassword":"Redefinir senha","resetDescription":"Escolha um m\xe9todo para recuperar o acesso ao seu painel","stopServer":"Pare o servidor OmniRoute","processing":"Processando...","pleaseWait":"Aguarde enquanto conclu\xedmos a autoriza\xe7\xe3o.","authSuccess":"Autoriza\xe7\xe3o bem-sucedida!","copyUrl":"Copie este URL","accessDenied":"Acesso negado","methodCliTitle":"M\xe9todo 1: redefini\xe7\xe3o CLI","methodCliDescription":"Execute o seguinte comando no servidor onde o OmniRoute est\xe1 sendo executado:","methodCliHint":"Isso solicitar\xe1 que voc\xea defina uma nova senha. O servidor deve ser parado primeiro.","methodManualTitle":"M\xe9todo 2: reinicializa\xe7\xe3o manual","methodManualDescription":"Exclua a senha do banco de dados e defina uma nova na inicializa\xe7\xe3o:","setPasswordInYour":"Defina uma nova senha em seu","fileLabelSuffix":"arquivo:","newPasswordPlaceholder":"sua_nova_senha","deleteSettingsFile":"Excluir","orRemovePasswordHashField":"ou remova o campo passwordHash","restartServerWithNewPassword":"Reinicie o servidor - ele usar\xe1 a nova senha","backToLogin":"Voltar ao login","forgotPassword":"Esqueceu a senha?"},"landing":{"brandName":"OmniRoute","navigateHome":"Navegue at\xe9 a casa","toggleMenu":"Alternar menu","featuresLink":"Recursos","docsLink":"Documentos","github":"GitHub","versionLive":"v1.0 agora est\xe1 ativo","oneEndpoint":"Um ponto final para","allProviders":"Todos os provedores de IA","heroDescription":"Proxy de endpoint de IA com painel da web – uma porta JavaScript do CLIProxyAPI. Funciona perfeitamente com Claude Code, OpenAI Codex, Cline, RooCode e outras ferramentas CLI.","getStarted":"Comece","viewOnGithub":"Ver no GitHub","powerfulFeatures":"Recursos poderosos","featuresSubtitle":"Tudo o que voc\xea precisa para gerenciar sua infraestrutura de IA em um s\xf3 lugar, desenvolvida para escalar.","featureUnifiedEndpointTitle":"Ponto final unificado","featureUnifiedEndpointDesc":"Acesse todos os provedores por meio de um \xfanico URL de API padr\xe3o.","featureEasySetupTitle":"Configura\xe7\xe3o f\xe1cil","featureEasySetupDesc":"Comece a trabalhar em minutos com o comando npx.","featureModelFallbackTitle":"Modelo substituto","featureModelFallbackDesc":"Alterne automaticamente os provedores em caso de falha ou alta lat\xeancia.","featureUsageTrackingTitle":"Rastreamento de uso","featureUsageTrackingDesc":"An\xe1lise detalhada e monitoramento de custos em todos os modelos.","featureOAuthApiKeysTitle":"Chaves OAuth e API","featureOAuthApiKeysDesc":"Gerencie credenciais com seguran\xe7a em um cofre.","featureCloudSyncTitle":"Sincroniza\xe7\xe3o na nuvem","featureCloudSyncDesc":"Sincronize suas configura\xe7\xf5es entre dispositivos instantaneamente.","featureCliSupportTitle":"Suporte CLI","featureCliSupportDesc":"Funciona com Claude Code, Codex, Cline, Cursor e muito mais.","featureDashboardTitle":"Painel","featureDashboardDesc":"Painel visual para an\xe1lise de tr\xe1fego em tempo real.","howItWorks":"Como funciona o OmniRoute","howItWorksDescription":"Os dados fluem perfeitamente da sua aplica\xe7\xe3o atrav\xe9s da nossa camada de roteamento inteligente at\xe9 o melhor fornecedor para o trabalho.","howItWorksStep1Title":"1. CLI e SDKs","howItWorksStep1Description":"Suas solicita\xe7\xf5es partem de suas ferramentas favoritas ou de nosso SDK unificado. Basta alterar o URL base.","howItWorksStep2Title":"2. Hub OmniRoute","howItWorksStep2Description":"Nosso mecanismo analisa o prompt, verifica a integridade do provedor e encaminha para obter menor lat\xeancia ou custo.","howItWorksStep3Title":"3. Provedores de IA","howItWorksStep3Description":"A solicita\xe7\xe3o \xe9 atendida por OpenAI, Anthropic, Gemini ou outros instantaneamente.","getStartedIn30Seconds":"Comece em 30 segundos","getStartedDescription":"Instale o OmniRoute, configure seus provedores por meio do painel da web e comece a rotear solicita\xe7\xf5es de IA.","installOmniRoute":"Instalar OmniRoute","installStepDescription":"Execute o comando npx para iniciar o servidor instantaneamente","openDashboard":"Abra o painel","openDashboardStepDescription":"Configure provedores e chaves de API via interface web","routeRequests":"Solicita\xe7\xf5es de rota","routeRequestsStepDescription":"Aponte suas ferramentas CLI para {endpoint}","terminal":"terminal","copy":"Copiar","copied":"✓ Copiado","startingOmniRoute":"Iniciando o OmniRoute...","serverRunningOnLabel":"Servidor em execu\xe7\xe3o","dashboardLabel":"Painel","readyToRoute":"Pronto para rota! ✓","configureProvidersNote":"\uD83D\uDCDD Configure provedores no painel ou use vari\xe1veis de ambiente","dataLocation":"Localiza\xe7\xe3o dos dados:","dataLocationMacLinux":" macOS/Linux:","dataLocationWindows":" Janelas:","product":"Produto","dashboardLink":"Painel","changelog":"Registro de altera\xe7\xf5es","resources":"Recursos","documentation":"Documenta\xe7\xe3o","npm":"NPM","legal":"Jur\xeddico","mitLicense":"Licen\xe7a MIT","footerTagline":"O endpoint unificado para gera\xe7\xe3o de IA. Conecte, encaminhe e gerencie seus provedores de IA com facilidade.","copyright":"\xa9 {year} OmniRoute. Todos os direitos reservados.","flowToolClaudeCode":"C\xf3digo Claude","flowToolOpenAICodex":"C\xf3dice OpenAI","flowToolCline":"Cline","flowToolCursor":"Cursor","flowProviderOpenAI":"OpenAI","flowProviderAnthropic":"Antr\xf3pico","flowProviderGemini":"G\xeameos","flowProviderGithubCopilot":"Copiloto GitHub","interactiveDiagram":"Diagrama interativo vis\xedvel na \xe1rea de trabalho","ctaTitle":"Pronto para simplificar sua infraestrutura de IA?","ctaDescription":"Junte-se aos desenvolvedores que est\xe3o simplificando suas integra\xe7\xf5es de IA com o OmniRoute. C\xf3digo aberto e gratuito para come\xe7ar.","startFree":"Comece gr\xe1tis","readDocumentation":"Leia a documenta\xe7\xe3o"},"docs":{"title":"Documenta\xe7\xe3o","quickStart":"In\xedcio r\xe1pido","features":"Recursos","supportedProviders":"Provedores Suportados","supportedProvidersToc":"Provedores","commonUseCases":"Casos de uso comuns","clientCompatibility":"Compatibilidade do cliente","apiReference":"Refer\xeancia de API","method":"M\xe9todo","path":"Caminho","notes":"Notas","modelPrefixes":"Prefixos de modelo","prefix":"Prefixo","troubleshooting":"Solu\xe7\xe3o de problemas","supportsChat":"Suporta endpoints de chat e respostas.","oauthAutoRefresh":"Conex\xe3o OAuth com atualiza\xe7\xe3o autom\xe1tica de token.","fullStreaming":"Suporte completo de streaming para todos os modelos.","docsLabel":"Documentos","docsHeroDescription":"Gateway de IA para LLMs de v\xe1rios provedores. Um endpoint para OpenAI, Anthropic, Gemini, GitHub Copilot, Claude Code, Cursor e mais de 20 provedores.","openDashboard":"Abra o painel","endpointPage":"P\xe1gina de ponto final","github":"GitHub","reportIssue":"Reportar problema","onThisPage":"Nesta p\xe1gina","documentationVersion":"Documenta\xe7\xe3o - v{version}","quickStartStep1Title":"1. Instale e execute","quickStartStep1Prefix":"Corre","quickStartStep1Middle":"ou clone do GitHub e execute","quickStartStep2Title":"2. Crie uma chave API","quickStartStep2Text":"V\xe1 para Endpoint -> Chaves Registradas. Gere uma chave por ambiente.","quickStartStep3Title":"3. Conecte provedores","quickStartStep3Text":"Adicione contas de provedor por meio de login OAuth, chave de API ou conex\xe3o autom\xe1tica de n\xedvel gratuito.","quickStartStep4Title":"4. Defina o URL da base do cliente","quickStartStep4Prefix":"Aponte seu cliente IDE ou API para","quickStartStep4Suffix":"Use o prefixo do provedor, por exemplo","featureRoutingTitle":"Roteamento multiprovedor","featureRoutingText":"Encaminhe solicita\xe7\xf5es para mais de 30 provedores de IA por meio de um \xfanico endpoint compat\xedvel com OpenAI. Suporta APIs de chat, respostas, \xe1udio e imagem.","featureCombosTitle":"Combos e Balanceamento","featureCombosText":"Crie combina\xe7\xf5es de modelos com cadeias de fallback e estrat\xe9gias de balanceamento: round-robin, prioridade, aleat\xf3rio, menos usado e com custo otimizado.","featureUsageTitle":"Uso e rastreamento de custos","featureUsageText":"Contagem de tokens em tempo real, c\xe1lculo de custos por provedor/modelo e detalhamento de uso por chave de API e conta.","featureAnalyticsTitle":"Painel anal\xedtico","featureAnalyticsText":"An\xe1lise visual com gr\xe1ficos de solicita\xe7\xf5es, tokens, erros, lat\xeancia, custos e popularidade do modelo ao longo do tempo.","featureHealthTitle":"Monitoramento de Sa\xfade","featureHealthText":"Verifica\xe7\xf5es de integridade em tempo real, status do provedor, estados de disjuntores e detec\xe7\xe3o autom\xe1tica de limite de taxa com espera exponencial.","featureCliTitle":"Ferramentas CLI","featureCliText":"Gerencie configura\xe7\xf5es de IDE, exporte/importe backups, descubra perfis de codex e defina configura\xe7\xf5es no painel.","featureSecurityTitle":"Seguran\xe7a e Pol\xedticas","featureSecurityText":"Autentica\xe7\xe3o de chave de API, filtragem de IP, prote\xe7\xe3o contra inje\xe7\xe3o de prompt, pol\xedticas de dom\xednio, gerenciamento de sess\xe3o e registro de auditoria.","featureCloudSyncTitle":"Sincroniza\xe7\xe3o na nuvem","featureCloudSyncText":"Sincronize sua configura\xe7\xe3o com Cloudflare Workers para acesso remoto com credenciais criptografadas e failover autom\xe1tico.","providersAcrossConnectionTypes":"{count} provedores em tr\xeas tipos de conex\xe3o.","manageProviders":"Gerenciar provedores","providersCount":"{count} provedores","providerTypeFree":"N\xedvel gratuito","providerTypeOAuth":"OAuth","providerTypeApiKey":"Chave de API","useCaseSingleEndpointTitle":"Endpoint \xfanico para muitos provedores","useCaseSingleEndpointText":"Aponte os clientes para uma URL base e roteie por prefixo de modelo (por exemplo: gh/, cc/, kr/, openai/).","useCaseFallbackTitle":"Fallback e troca de modelo com combos","useCaseFallbackText":"Crie modelos combinados no Dashboard e mantenha a configura\xe7\xe3o do cliente est\xe1vel enquanto os provedores alternam internamente.","useCaseUsageVisibilityTitle":"Visibilidade de uso, custo e depura\xe7\xe3o","useCaseUsageVisibilityText":"Rastreie tokens e custos por provedor, conta e chave de API nas guias Uso e An\xe1lise.","clientCherryStudioTitle":"Est\xfadio Cereja","baseUrlLabel":"URL base","chatEndpointLabel":"Ponto de extremidade do bate-papo","modelRecommendationLabel":"Recomenda\xe7\xe3o de modelo: prefixo expl\xedcito","clientCodexTitle":"Modelos de copiloto Codex/GitHub","clientCodexBullet1":"Use IDs de modelo com","clientCodexBullet2":"Os modelos da fam\xedlia Codex roteiam automaticamente para","clientCodexBullet3":"Os modelos n\xe3o-Codex continuam","clientCursorTitle":"Cursor IDE","clientCursorBullet1":"Usar","clientCursorBullet1Suffix":"prefixo para modelos Cursor.","clientCursorBullet2":"Conex\xe3o OAuth - fa\xe7a login na p\xe1gina Provedores.","clientClaudeTitle":"C\xf3digo Claude / Antigravidade","clientClaudeBullet1Prefix":"Usar","clientClaudeBullet1Middle":"(Cl\xe1udio) ou","clientClaudeBullet1Suffix":"Prefixo (antigravidade).","endpointChatNote":"Endpoint de chat compat\xedvel com OpenAI (padr\xe3o).","endpointResponsesNote":"Endpoint da API de respostas (Codex, s\xe9rie o).","endpointModelsNote":"Cat\xe1logo de modelos para todos os provedores conectados.","endpointAudioNote":"Transcri\xe7\xe3o de \xe1udio (Deepgram, AssemblyAI).","endpointImagesNote":"Gera\xe7\xe3o de imagens (NanoBanana).","endpointRewriteChatNote":"Auxiliar de reescrita para clientes sem /v1.","endpointRewriteResponsesNote":"Reescreva o auxiliar para respostas sem /v1.","endpointRewriteModelsNote":"Reescreva o auxiliar para descoberta de modelo sem /v1.","modelPrefixesDescriptionStart":"Use o prefixo do provedor antes do nome do modelo para rotear para um provedor espec\xedfico. Exemplo:","modelPrefixesDescriptionEnd":"rotas para GitHub Copilot.","provider":"Provedor","type":"Tipo","troubleshootingModelRouting":"Se o cliente falhar com o roteamento do modelo, use provedor/modelo expl\xedcito (por exemplo: gh/gpt-5.1-codex).","troubleshootingAmbiguousModels":"Se voc\xea receber erros de modelo amb\xedguos, escolha um prefixo de provedor em vez de um ID de modelo simples.","troubleshootingCodexFamily":"Para modelos da fam\xedlia GitHub Codex, mantenha o modelo como gh/<codex-model>; roteador seleciona /respostas automaticamente.","troubleshootingTestConnection":"Use Painel > Provedores > Testar conex\xe3o antes de testar em IDEs ou clientes externos.","troubleshootingCircuitBreaker":"Se um provedor mostrar o disjuntor aberto, aguarde o resfriamento ou verifique a p\xe1gina de integridade para obter detalhes.","troubleshootingOAuth":"Para provedores OAuth, autentique novamente se os tokens expirarem. Verifique o indicador de status do cart\xe3o do provedor."},"legal":{"privacyPolicy":"Pol\xedtica de Privacidade","termsOfService":"Termos de Servi\xe7o","providerConfigurations":"Configura\xe7\xf5es do provedor","apiKeys":"Chaves de API","usageLogs":"Registros de uso","applicationSettings":"Configura\xe7\xf5es do aplicativo","viewExportAnalytics":"Visualize e exporte an\xe1lises de uso","clearHistory":"Limpe o hist\xf3rico de uso a qualquer momento","configureRetention":"Configurar pol\xedticas de reten\xe7\xe3o de log","backupRestore":"Fa\xe7a backup e restaure seu banco de dados","privacyMetadataTitle":"Pol\xedtica de Privacidade | OmniRoute","privacyMetadataDescription":"Pol\xedtica de privacidade para o roteador proxy OmniRoute AI API.","termsMetadataTitle":"Termos de Servi\xe7o | OmniRoute","termsMetadataDescription":"Termos de servi\xe7o do roteador proxy OmniRoute AI API.","backToHome":"De volta para casa","lastUpdated":"\xdaltima atualiza\xe7\xe3o: {date}","policyLastUpdatedDate":"13 de fevereiro de 2026","listSeparator":"-","questionsVisit":"Perguntas? Visite nosso","githubRepository":"Reposit\xf3rio GitHub","privacySection1Title":"1. Arquitetura local primeiro","privacySection1Text":"OmniRoute foi projetado como um aplicativo local. Todo o processamento e armazenamento de dados ocorre inteiramente em sua m\xe1quina. N\xe3o existe um servidor centralizado que coleta suas informa\xe7\xf5es.","privacySection2Title":"2. Dados que armazenamos","privacyDataStoredIn":"Os seguintes dados s\xe3o armazenados localmente em","privacyDataProviderConfigurationsDesc":"URLs de conex\xe3o, tipos de provedores e configura\xe7\xf5es de prioridade","privacyDataApiKeysDesc":"criptografado e armazenado localmente para autentica\xe7\xe3o com provedores de IA","privacyDataUsageLogsDesc":"contagens de solicita\xe7\xf5es, uso de token, nomes de modelos, carimbos de data/hora e tempos de resposta","privacyDataApplicationSettingsDesc":"prefer\xeancias de tema, estrat\xe9gia de roteamento e configura\xe7\xf5es combinadas","privacySection3Title":"3. Sem telemetria","privacySection3Text":"OmniRoute n\xe3o coleta telemetria, an\xe1lises ou relat\xf3rios de falhas. Nenhum dado \xe9 enviado para n\xf3s ou para terceiros. Seus padr\xf5es de uso, chamadas de API e configura\xe7\xf5es permanecem totalmente privados.","privacySection4Title":"4. Provedores terceirizados de IA","privacySection4Text":"Ao fazer chamadas de API por meio do OmniRoute, suas solicita\xe7\xf5es s\xe3o encaminhadas para os provedores de IA que voc\xea configurou (por exemplo: OpenAI, Anthropic, Google). Esses provedores t\xeam suas pr\xf3prias pol\xedticas de privacidade que regem a forma como lidam com seus dados. Por favor, revise:","privacyOpenAiPolicy":"Pol\xedtica de privacidade da OpenAI","privacyAnthropicPolicy":"Pol\xedtica de Privacidade Antr\xf3pica","privacyGooglePolicy":"Pol\xedtica de privacidade do Google","privacySection5Title":"5. Sincroniza\xe7\xe3o na nuvem (opcional)","privacySection5Text":"Se voc\xea ativar o recurso opcional de sincroniza\xe7\xe3o em nuvem, as configura\xe7\xf5es do provedor e as chaves de API poder\xe3o ser transmitidas para um endpoint de nuvem configurado. Este recurso est\xe1 desabilitado por padr\xe3o e requer aceita\xe7\xe3o expl\xedcita.","privacySection6Title":"6. Registro","privacyLoggingIntro":"Os logs de solicita\xe7\xe3o podem ser configurados nas configura\xe7\xf5es do painel. Voc\xea pode:","privacySection7Title":"7. Seus direitos","privacySection7TextStart":"Como todos os dados s\xe3o armazenados localmente, voc\xea tem controle total. Voc\xea pode excluir seus dados a qualquer momento, removendo o","privacySection7TextEnd":"diret\xf3rio ou usando os recursos de backup e restaura\xe7\xe3o do banco de dados no painel.","termsSection1Title":"1. Vis\xe3o geral","termsSection1Text":"OmniRoute \xe9 um roteador proxy API AI local que opera inteiramente em sua m\xe1quina. Ele roteia solicita\xe7\xf5es para v\xe1rios provedores de IA com balanceamento de carga, failover e rastreamento de uso.","termsSection2Title":"2. Responsabilidades do usu\xe1rio","termsResponsibilityApiKeys":"Voc\xea \xe9 o \xfanico respons\xe1vel por gerenciar suas pr\xf3prias chaves de API e credenciais para provedores de IA terceirizados (OpenAI, Anthropic, Google, etc.).","termsResponsibilityCompliance":"Voc\xea deve cumprir os termos de servi\xe7o de cada provedor de IA cuja API voc\xea acessa por meio do OmniRoute.","termsResponsibilitySecurity":"Voc\xea \xe9 respons\xe1vel pela seguran\xe7a da instala\xe7\xe3o local do OmniRoute, incluindo a defini\xe7\xe3o de uma senha e a restri\xe7\xe3o do acesso \xe0 rede.","termsSection3Title":"3. Como funciona","termsSection3Text":"OmniRoute atua como um proxy intermedi\xe1rio. As chamadas de API enviadas ao OmniRoute s\xe3o traduzidas e encaminhadas para seus provedores de IA configurados. OmniRoute n\xe3o modifica o conte\xfado de suas solicita\xe7\xf5es ou respostas al\xe9m da tradu\xe7\xe3o de protocolo necess\xe1ria.","termsSection4Title":"4. Tratamento de dados","termsDataStoredLocally":"Todos os dados s\xe3o armazenados localmente na sua m\xe1quina em um banco de dados SQLite.","termsNoTransmission":"O OmniRoute n\xe3o transmite nenhum dado para servidores externos, a menos que voc\xea habilite explicitamente os recursos de sincroniza\xe7\xe3o na nuvem.","termsDataLocationText":"Logs de uso, chaves de API e configura\xe7\xe3o s\xe3o armazenados em","termsSection5Title":"5. Isen\xe7\xe3o de responsabilidade","termsSection5Text":"OmniRoute \xe9 fornecido \\"como est\xe1\\" sem qualquer tipo de garantia. N\xe3o somos respons\xe1veis por quaisquer custos incorridos atrav\xe9s do uso da API, interrup\xe7\xf5es de servi\xe7o ou perda de dados. Sempre mantenha backups de sua configura\xe7\xe3o.","termsSection6Title":"6. C\xf3digo aberto","termsSection6Text":"OmniRoute \xe9 um software de c\xf3digo aberto. Voc\xea \xe9 livre para inspecion\xe1-lo, modific\xe1-lo e distribu\xed-lo sob os termos de sua licen\xe7a."}}')}};
|