Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -1134,7 +1134,7 @@ NEXT_PUBLIC_ENABLE_SOCKS5_PROXY=true
# Model catalog sync interval in hours.
# Used by: src/shared/services/modelSyncScheduler.ts — periodic model refresh.
# Default: 24
# MODEL_SYNC_INTERVAL_HOURS=24
# MODEL_SYNC_INTERVAL_HOURS=6

# Provider limits sync interval in minutes (rate limit windows, quotas).
# Used by: src/lib/usage/providerLimits.ts — polls provider health endpoints.
Expand Down Expand Up @@ -1601,7 +1601,7 @@ CURSOR_USER_AGENT="Cursor/3.4"
#
# Override the advertised GitHub Copilot CLI version independently of
# GITHUB_USER_AGENT. Used by: open-sse/config/providerHeaderProfiles.ts.
# GITHUB_COPILOT_CLI_VERSION=1.0.82
# GITHUB_COPILOT_CLI_VERSION=1.0.91
#
# Pin the `copilot-integration-id` header sent to standard GitHub Copilot,
# overriding the default copilot-developer-cli identity (and disabling the
Expand Down
4 changes: 2 additions & 2 deletions docs/reference/ENVIRONMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -565,7 +565,7 @@ detection above).
| `OMNIROUTE_MCP_FETCH_TIMEOUT_MS` | `10000` | `open-sse/mcp-server/fetchTimeout.ts` | Abort budget (ms) for MCP-server internal management reads (health, resilience, combos, quota, usage). |
| `OMNIROUTE_MCP_UPSTREAM_TIMEOUT_MS` | `60000` | `open-sse/mcp-server/fetchTimeout.ts` | Abort budget (ms) for MCP hops that wait on a provider (`route_request`, `web_search`, `web_fetch`). |
| `OMNIROUTE_CORPUS_CACHE_SIZE` | `5` | `src/lib/localCorpus/configured.ts` | Maximum number of local-corpus index instances cached in memory (LRU, one per indexed root directory). Clamped to a minimum of `1`. |
| `MODEL_SYNC_INTERVAL_HOURS` | `24` | `src/shared/services/modelSyncScheduler.ts` | Model catalog sync interval in hours. |
| `MODEL_SYNC_INTERVAL_HOURS` | `6` | `src/shared/services/modelSyncScheduler.ts` | Model catalog sync interval in hours. |
| `PROVIDER_LIMITS_SYNC_INTERVAL_MINUTES` | `70` | `src/lib/usage/providerLimits.ts` | Provider rate-limit and quota polling interval. |
| `PROVIDER_LIMITS_SYNC_SPACING_MS` | `1500` | `src/lib/usage/providerLimits.ts` | Gap (ms) between consecutive OAuth quota fetches in a bulk sync; OAuth connections are fetched one at a time to avoid bursting an upstream. `0` opts out (concurrent). |
| `OMNIROUTE_QUOTA_FETCH_MIN_INTERVAL_MS` | `250` | `open-sse/services/quotaFetchThrottle.ts` | Min interval (ms) between consecutive upstream quota fetches on the per-request preflight/monitor path; spaces concurrent network calls so many accounts on one IP don't burst the upstream. Wired into the Codex (`/wham/usage`), DeepSeek, Bailian (both fetch sites), OpenCode, and Crof quota fetchers (#6009, #6911). The generic `usage.ts::getUsageForProvider` dispatch path (github/glm/minimax/nanogpt/xai/etc.) is not yet covered — tracked separately. Cache hits unaffected. `0` disables; clamped `0..5000`. |
Expand Down Expand Up @@ -685,7 +685,7 @@ process.env[`${PROVIDER_ID}_USER_AGENT`]
| `CODEX_CLIENT_VERSION` | `0.155.0` | Override Codex client version independently of full UA string |
| `CLAUDE_CODE_CLIENT_VERSION` | `2.1.258` | Override advertised Claude Code version independently of `CLAUDE_USER_AGENT`. Anthropic gates some models on this value (#12417). |
| `CLAUDE_CODE_CLIENT_BUILD_REVISION` | `1e2` | Override the 3-character suffix OmniRoute appends to `cc_version=` in the Claude billing block. Bump alongside `CLAUDE_CODE_CLIENT_VERSION` — pinning only the version advertises a `version.revision` pair no real binary emits. |
| `GITHUB_COPILOT_CLI_VERSION` | `1.0.81-6` | Override advertised Copilot CLI version independently of `GITHUB_USER_AGENT` |
| `GITHUB_COPILOT_CLI_VERSION` | `1.0.91` | Override advertised Copilot CLI version independently of `GITHUB_USER_AGENT` |
| `GITHUB_USER_AGENT` | `GitHubCopilotChat/0.54.0` | When GitHub Copilot Chat updates |
| `ANTIGRAVITY_USER_AGENT` | `antigravity/2.0.1 darwin/arm64` | When Antigravity IDE updates |
| `KIRO_USER_AGENT` | `AWS-SDK-JS/3.0.0 kiro-ide/1.0.0` | When Kiro IDE updates |
Expand Down
2 changes: 1 addition & 1 deletion docs/reference/FEATURE_FLAGS.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ used when neither a DB override nor an environment variable is present.
| Key | Type | Default | Description |
| ------------------------------- | ------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `TOOL_POLICY_MODE` | enum | `disabled` | Tool-use policy enforcement mode. Values: `disabled`, `warn`, `block`. |
| `RATE_LIMIT_AUTO_ENABLE` | boolean | `false` | Automatically enable rate limiting based on usage patterns. |
| `RATE_LIMIT_AUTO_ENABLE` | boolean | _(unset)_ | Force the auto-enable rate-limit safety net on/off; unset follows the dashboard setting (default on). |
| `DISABLE_CONTEXT_WINDOW_CHECKS` | boolean | `false` | Skip OmniRoute's local context-window / max-input-token check for direct single-model requests. Upstream limits still apply. |
| `CAPABILITY_FILTER_ENABLED` | boolean | `false` | Reject requests before dispatch when the target model lacks required capabilities (vision, tools, structured output, context window). Protects direct single-provider requests that bypass the combo-layer compatibility filter. |
| `RADAR_ENABLED` | boolean | `false` | Enable the OmniRoute Radar module (catalog feed screens and sync). Off by default; enabling only unlocks the UI — data sync remains a separate opt-in. |
Expand Down
2 changes: 1 addition & 1 deletion src/app/api/sync/initialize/route.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ export async function POST(request) {
await initializeCloudSync();
syncInitialized = true;

// (#488) Start model auto-sync scheduler (24h, configurable via MODEL_SYNC_INTERVAL_HOURS)
// (#488) Start model auto-sync scheduler (6h default, configurable via MODEL_SYNC_INTERVAL_HOURS)
if (!modelSyncInitialized) {
startModelSyncScheduler();
modelSyncInitialized = true;
Expand Down
2 changes: 1 addition & 1 deletion src/i18n/messages/am.json
Original file line number Diff line number Diff line change
Expand Up @@ -5375,7 +5375,7 @@
"resetToUpstreamDefaults": "የላይኛውን ምንጭ ነባሪ ቅንብሮች መልስ",
"resetToUpstreamDefaultsSuccess": "የላይኛው ምንጭ ሞዴል ነባሪ ቅንብሮች ተመልሰዋል",
"resetToUpstreamDefaultsFailed": "የላይኛውን ምንጭ ሞዴል ነባሪ ቅንብሮች መመለስ አልተሳካም",
"autoSyncTooltip": "በየ24 ሰዓቱ የሞዴል ዝርዝሩን በራስ-ሰር ያድሳል (በ MODEL_SYNC_INTERVAL_HOURS ሊዋቀር ይችላል)",
"autoSyncTooltip": "__MISSING__:Automatically refresh model list every 6h by default (configurable via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncEnabled": "ራስ-ሰር ማመሳሰል ነቅቷል — ሞዴሎች በየጊዜው ይታደሳሉ",
"autoSyncDisabled": "ራስ-ሰር ማመሳሰል ተሰናክሏል",
"autoSyncToggleFailed": "የራስ-ሰር ማመሳሰል ቅንብርን መቀየር አልተሳካም",
Expand Down
2 changes: 1 addition & 1 deletion src/i18n/messages/ar.json
Original file line number Diff line number Diff line change
Expand Up @@ -5375,7 +5375,7 @@
"resetToUpstreamDefaults": "استعادة الإعدادات الافتراضية للمصدر",
"resetToUpstreamDefaultsSuccess": "تم استعادة إعدادات النموذج الافتراضية من المصدر",
"resetToUpstreamDefaultsFailed": "فشل في استعادة إعدادات النموذج الافتراضية من المصدر",
"autoSyncTooltip": "تحديث قائمة النماذج كل 24 ساعة (يمكن ضبطه عبر MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncTooltip": "__MISSING__:Automatically refresh model list every 6h by default (configurable via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncEnabled": "تم تمكين المزامنة التلقائية — سيتم تحديث النماذج بشكل دوري",
"autoSyncDisabled": "تم تعطيل المزامنة التلقائية",
"autoSyncToggleFailed": "فشل في تبديل المزامنة التلقائية",
Expand Down
2 changes: 1 addition & 1 deletion src/i18n/messages/az.json
Original file line number Diff line number Diff line change
Expand Up @@ -5375,7 +5375,7 @@
"resetToUpstreamDefaults": "Yuxarı axın standartlarını bərpa et",
"resetToUpstreamDefaultsSuccess": "Yuxarı axın modelinin standart parametrləri bərpa edildi",
"resetToUpstreamDefaultsFailed": "Yuxarı axın modelinin standartlarını bərpa etmək mümkün olmadı",
"autoSyncTooltip": "Model siyahısını hər 24 saatdan bir avtomatik yenilə (MODEL_SYNC_INTERVAL_HOURS vasitəsilə konfiqurasiya edilə bilər)",
"autoSyncTooltip": "__MISSING__:Automatically refresh model list every 6h by default (configurable via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncEnabled": "Avtomatik sinxronizasiya aktivdir — modellər vaxtaşırı yenilənəcək",
"autoSyncDisabled": "Avtomatik sinxronizasiya deaktivdir",
"autoSyncToggleFailed": "Avtomatik sinxronizasiya dəyişdirilə bilmədi",
Expand Down
2 changes: 1 addition & 1 deletion src/i18n/messages/bg.json
Original file line number Diff line number Diff line change
Expand Up @@ -5375,7 +5375,7 @@
"resetToUpstreamDefaults": "Възстановяване на настройки по подразбиране на upstream",
"resetToUpstreamDefaultsSuccess": "Възстановени настройки по подразбиране на upstream модела",
"resetToUpstreamDefaultsFailed": "Неуспешно възстановяване на подразбиращите се настройки на upstream модела",
"autoSyncTooltip": "Автоматично опресняване на списъка с модели на всеки 24 часа (може да се конфигурира чрез MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncTooltip": "__MISSING__:Automatically refresh model list every 6h by default (configurable via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncEnabled": "Автоматичното синхронизиране е активирано — моделите ще се опресняват периодично",
"autoSyncDisabled": "Автоматичното синхронизиране е деактивирано",
"autoSyncToggleFailed": "Неуспешно превключване на автоматичното синхронизиране",
Expand Down
2 changes: 1 addition & 1 deletion src/i18n/messages/bn.json
Original file line number Diff line number Diff line change
Expand Up @@ -5375,7 +5375,7 @@
"resetToUpstreamDefaults": "আপস্ট্রিম ডিফল্টগুলি পুনরুদ্ধার করুন",
"resetToUpstreamDefaultsSuccess": "আপস্ট্রিম মডেল ডিফল্টগুলি পুনরুদ্ধার করা হয়েছে",
"resetToUpstreamDefaultsFailed": "আপস্ট্রিম মডেল ডিফল্টগুলি পুনরুদ্ধার করতে ব্যর্থ হয়েছে",
"autoSyncTooltip": "প্রতি 24 ঘণ্টায় স্বয়ংক্রিয়ভাবে মডেলের তালিকা রিফ্রেশ হবে (MODEL_SYNC_INTERVAL_HOURS-এর মাধ্যমে কনফিগারযোগ্য)",
"autoSyncTooltip": "__MISSING__:Automatically refresh model list every 6h by default (configurable via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncEnabled": "স্বয়ংক্রিয় সিঙ্ক চালু আছে — মডেলগুলো নির্দিষ্ট সময় পরপর রিফ্রেশ হবে",
"autoSyncDisabled": "স্বয়ংক্রিয় সিঙ্ক বন্ধ আছে",
"autoSyncToggleFailed": "স্বয়ংক্রিয় সিঙ্কের অবস্থা পরিবর্তন করা যায়নি",
Expand Down
2 changes: 1 addition & 1 deletion src/i18n/messages/bs.json
Original file line number Diff line number Diff line change
Expand Up @@ -5375,7 +5375,7 @@
"resetToUpstreamDefaults": "Vrati podrazumijevane postavke upstream-a",
"resetToUpstreamDefaultsSuccess": "Vraćene su podrazumijevane postavke upstream modela",
"resetToUpstreamDefaultsFailed": "Neuspjelo vraćanje podrazumijevanih postavki upstream modela",
"autoSyncTooltip": "Automatski osvježi listu modela svakih 24h (konfigurabilno putem MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncTooltip": "__MISSING__:Automatically refresh model list every 6h by default (configurable via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncEnabled": "Auto-sync omogućen — modeli će se periodično osvježavati",
"autoSyncDisabled": "Auto-sync onemogućen",
"autoSyncToggleFailed": "Neuspjelo prebacivanje auto-sync-a",
Expand Down
2 changes: 1 addition & 1 deletion src/i18n/messages/cs.json
Original file line number Diff line number Diff line change
Expand Up @@ -5375,7 +5375,7 @@
"resetToUpstreamDefaults": "Obnovit výchozí hodnoty upstream",
"resetToUpstreamDefaultsSuccess": "Obnoveny výchozí modely upstream",
"resetToUpstreamDefaultsFailed": "Nepodařilo se obnovit výchozí hodnoty modelu upstream",
"autoSyncTooltip": "Automaticky obnovuje seznam modelů každých 24 hodin (lze nastavit přes MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncTooltip": "__MISSING__:Automatically refresh model list every 6h by default (configurable via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncEnabled": "Automatická synchronizace povolena – modely se budou pravidelně obnovovat",
"autoSyncDisabled": "Automatická synchronizace zakázána",
"autoSyncToggleFailed": "Nepodařilo se přepnout automatickou synchronizaci",
Expand Down
2 changes: 1 addition & 1 deletion src/i18n/messages/da.json
Original file line number Diff line number Diff line change
Expand Up @@ -5375,7 +5375,7 @@
"resetToUpstreamDefaults": "Gendan upstream standardindstillinger",
"resetToUpstreamDefaultsSuccess": "Gendannet upstream model standardindstillinger",
"resetToUpstreamDefaultsFailed": "Mislykkedes med at gendanne standardindstillinger for upstream-modellen",
"autoSyncTooltip": "Opdater modellisten automatisk hver 24. time (kan konfigureres via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncTooltip": "__MISSING__:Automatically refresh model list every 6h by default (configurable via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncEnabled": "Automatisk synkronisering aktiveret - modellerne opdateres med jævne mellemrum",
"autoSyncDisabled": "Automatisk synkronisering deaktiveret",
"autoSyncToggleFailed": "Automatisk synkronisering kunne ikke slås til eller fra",
Expand Down
2 changes: 1 addition & 1 deletion src/i18n/messages/de.json
Original file line number Diff line number Diff line change
Expand Up @@ -5375,7 +5375,7 @@
"resetToUpstreamDefaults": "Ursprüngliche Standardeinstellungen wiederherstellen",
"resetToUpstreamDefaultsSuccess": "Ursprüngliche Standardwerte des Upstream-Modells wiederhergestellt",
"resetToUpstreamDefaultsFailed": "Wiederherstellung der Standardwerte des upstream-Modells fehlgeschlagen",
"autoSyncTooltip": "Modellliste automatisch alle 24 Stunden aktualisieren (konfigurierbar über MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncTooltip": "__MISSING__:Automatically refresh model list every 6h by default (configurable via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncEnabled": "Auto-Sync aktiviert — Modelle werden regelmäßig aktualisiert",
"autoSyncDisabled": "Auto-Sync deaktiviert",
"autoSyncToggleFailed": "Auto-Sync umschalten fehlgeschlagen",
Expand Down
2 changes: 1 addition & 1 deletion src/i18n/messages/el.json
Original file line number Diff line number Diff line change
Expand Up @@ -5375,7 +5375,7 @@
"resetToUpstreamDefaults": "Επαναφορά προεπιλογών upstream",
"resetToUpstreamDefaultsSuccess": "Οι προεπιλογές upstream μοντέλου επαναφέρθηκαν",
"resetToUpstreamDefaultsFailed": "Αποτυχία επαναφοράς προεπιλογών upstream μοντέλου",
"autoSyncTooltip": "Αυτόματη ανανέωση λίστας μοντέλων κάθε 24 ώρες (ρυθμιζόμενη μέσω MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncTooltip": "__MISSING__:Automatically refresh model list every 6h by default (configurable via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncEnabled": "Ο αυτόματος συγχρονισμός ενεργοποιήθηκε — τα μοντέλα θα ανανεώνονται περιοδικά",
"autoSyncDisabled": "Ο αυτόματος συγχρονισμός απενεργοποιήθηκε",
"autoSyncToggleFailed": "Αποτυχία εναλλαγής αυτόματου συγχρονισμού",
Expand Down
2 changes: 1 addition & 1 deletion src/i18n/messages/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -5375,7 +5375,7 @@
"resetToUpstreamDefaults": "Restore upstream defaults",
"resetToUpstreamDefaultsSuccess": "Restored upstream model defaults",
"resetToUpstreamDefaultsFailed": "Failed to restore upstream model defaults",
"autoSyncTooltip": "Automatically refresh model list every 24h (configurable via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncTooltip": "Automatically refresh model list every 6h by default (configurable via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncEnabled": "Auto-sync enabled — models will refresh periodically",
"autoSyncDisabled": "Auto-sync disabled",
"autoSyncToggleFailed": "Failed to toggle auto-sync",
Expand Down
2 changes: 1 addition & 1 deletion src/i18n/messages/es.json
Original file line number Diff line number Diff line change
Expand Up @@ -5375,7 +5375,7 @@
"resetToUpstreamDefaults": "Restaurar valores predeterminados del upstream",
"resetToUpstreamDefaultsSuccess": "Restaurados los valores predeterminados del modelo upstream",
"resetToUpstreamDefaultsFailed": "No se pudo restaurar los valores predeterminados del modelo upstream",
"autoSyncTooltip": "Actualiza automáticamente la lista de modelos cada 24 horas (configurable vía MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncTooltip": "__MISSING__:Automatically refresh model list every 6h by default (configurable via MODEL_SYNC_INTERVAL_HOURS)",
"autoSyncEnabled": "Sincronización automática activada — los modelos se actualizarán periódicamente",
"autoSyncDisabled": "Sincronización automática desactivada",
"autoSyncToggleFailed": "Error al alternar sincronización automática",
Expand Down
Loading
Loading