Files
OmniRoute/docs/i18n/sr/docs/reference/ENVIRONMENT.md
Diego Rodrigues de Sa e Souza 8feea123bb feat(docs): mirror every docs/ page in all 65 locales (#14106)
* feat(docs): mirror every docs/ page in all 65 locales

Extends the documentation mirrors from the 22-page core set (#13940) to
every Markdown page under docs/: 152 sources x 65 locales = 9,880 mirrors
(6,208 new), language bars rewritten for the full locale list, state
adopted so the blocking drift gate now covers all 152 pages.

run-translation.mjs: an oversized block made only of table rows or list
items (PROVIDER_REFERENCE.md 244-row table, FREE_TIERS.md 71-item list) is
cut at item boundaries and rejoined without a blank line — the single
16-40 KB request outlived the backend socket for verbose scripts. 48
older mirrors whose tables had lost rows were retranslated with --force.

* docs(i18n): refresh mirrors for the sources the base changed since the branch cut

Section-level retranslation of the 29 docs (and README.md) whose source
or mirrors moved on release/v3.8.51 during the run, then state adoption;
the drift gate is green again on the merged tree.
2026-09-18 13:16:46 -03:00

715 KiB
Raw Blame History

Environment Variables Reference (Српски)

🌐 Languages: 🇺🇸 English · 🇪🇹 am · 🇸🇦 ar · 🇦🇿 az · 🇧🇬 bg · 🇧🇩 bn · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇬🇷 el · 🇪🇸 es · 🇪🇪 et · 🇮🇷 fa · 🇫🇮 fi · 🇫🇷 fr · 🇮🇪 ga · 🇮🇳 gu · 🇳🇬 ha · 🇮🇱 he · 🇮🇳 hi · 🇭🇷 hr · 🇭🇺 hu · 🇦🇲 hy · 🇮🇩 id · 🇳🇬 ig · 🇮🇹 it · 🇯🇵 ja · 🇬🇪 ka · 🇰🇭 km · 🇮🇳 kn · 🇰🇷 ko · 🇱🇹 lt · 🇱🇻 lv · 🇮🇳 ml · 🇮🇳 mr · 🇲🇾 ms · 🇲🇹 mt · 🇲🇲 my · 🇳🇵 ne · 🇳🇱 nl · 🇳🇴 no · 🇮🇳 or · 🇮🇳 pa · 🇵🇭 phi · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇱🇰 si · 🇸🇰 sk · 🇸🇮 sl · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇺🇿 uz · 🇻🇳 vi · 🇳🇬 yo · 🇨🇳 zh-CN · 🇹🇼 zh-TW


Комплетна референца за сваку променљиву окружења коју OmniRoute препознаје. За шаблон за брзи почетак погледајте .env.example.

Important

Свака променљива документована овде мора се налазити и у .env.example, а свака променљива из .env.example мора бити документована овде. npm run check:env-doc-sync намеће ову проверу приликом прављења комита и у CI-ју. Да бисте намерно изоставили променљиву, додајте је на листу дозвољених унутар scripts/check/check-env-doc-sync.mjs.


Садржај


1. Обавезне тајне

Оне морају бити подешене пре првог покретања. Без њих ће апликација или одбити да се покрене или ће радити са небезбедним подразумеваним вредностима.

Променљива Обавезно Подразумевано Изворна датотека Опис
JWT_SECRET Да (нема) src/lib/auth Потписује/проверава све колачиће сесије контролне табле (JWT). Генеришите помоћу openssl rand -base64 48.
API_KEY_SECRET Да (нема) src/lib/db/apiKeys.ts AES кључ за шифровање вредности API кључева ускладиштених у SQLite бази. Генеришите помоћу openssl rand -hex 32.
INITIAL_PASSWORD Да CHANGEME Скрипта за иницијализацију Поставља почетну администраторску лозинку за контролну таблу (подудара се са подразумеваном вредношћу у .env.example — намерно је очигледно небезбедна како би се захтевала измена). Промените је пре прве употребе. Након пријављивања, промените је путем Контролна табла → Подешавања → Безбедност.
OMNIROUTE_WS_BRIDGE_SECRET Да (у продукцији) (није постављено) src/app/api/internal/codex-responses-ws/route.ts Дељена тајна за интерни WebSocket мост Codex Responses. Потврђује аутентичност захтева моста између Electron/прегледачког WS релеја и OmniRoute-а. ⚠️ ОБАВЕЗНО у продукцији — када није постављено, сви захтеви према WS мосту се одбијају. Генеришите помоћу openssl rand -base64 32.
OMNIROUTE_SW_BUILD_ID Не (git SHA) next.config.mjs, scripts/build/assembleStandalone.mjs Експлицитни идентификатор за поништавање кеша сервисног радника за PWA љуску (#11779); први у ланцу разрешавања.
SOURCE_VERSION Не (није постављено) next.config.mjs, scripts/build/assembleStandalone.mjs Други у ланцу — постављају га PaaS системи за изградњу (нпр. у стилу Heroku-а) као примењени комит.
NEXT_PUBLIC_SW_BUILD_ID Не (изведено) src/shared/components/PwaRegister.tsx Јавна вредност из времена изградње коју клијент користи за регистровање /sw.js?v=…; изводи се из претходне две вредности, а затим из git SHA вредности.
OMNIROUTE_PEER_STAMP_TOKEN Не (аутоматски) (аутоматски при сваком покретању) src/server/authz/policies/management.ts Тајна по процесу која доказује да поуздани печат IP адресе равноправног чвора потиче са сопственог HTTP сервера OmniRoute-а (scripts/dev/peer-stamp.mjs). Посреднички софтвер за ауторизацију верује да је захтев локалан (loopback/LAN ограничење за LOCAL_ONLY руте) само када печат садржи овај токен. Аутоматски се генерише при сваком покретању — оставите је непостављеном; поставите јој фиксну вредност само за вишепроцесне конфигурације које морају да деле печат.

Команде за генерисање

# Генеришите све четири тајне одједном:
echo "JWT_SECRET=$(openssl rand -base64 48)"
echo "API_KEY_SECRET=$(openssl rand -hex 32)"
echo "INITIAL_PASSWORD=$(openssl rand -base64 16)"
echo "OMNIROUTE_WS_BRIDGE_SECRET=$(openssl rand -base64 32)"

Caution

Никада немојте додавати .env датотеке са стварним тајнама у систем за контролу верзија. .gitignore већ изузима .env, али то проверите пре слања измена.


2. Skladištenje i baza podataka

OmniRoute koristi SQLite (preko better-sqlite3) za trajno čuvanje svih podataka. Ove promenljive kontrolišu lokaciju podataka, šifrovanje i životni ciklus.

Promenljiva Podrazumevana vrednost Izvorna datoteka Opis
DATA_DIR ~/.omniroute/ src/lib/db/core.ts Osnovni direktorijum za SQLite bazu podataka, rezervne kopije i datoteke sa podacima. Promenite ga za Docker volumene ili prilagođene putanje.
OMNIROUTE_ALLOW_DEFAULT_DATA_DIR (nije podešeno) src/lib/dataPaths.ts Zaobilazni mehanizam za zaštitu promenljive DATA_DIR tokom testiranja/evaluacije (#10428). Testovi i Node evaluacioni/ispisni pozivi (-e/--eval/-p/--print, uključujući oblike --eval=/--print=) bez promenljive DATA_DIR preusmeravaju se u privremeni direktorijum za jednokratnu upotrebu kako ne bi mogli da otvore stvarnu bazu podataka operatera; postavite na 1 da biste ponovo dozvolili korišćenje stvarnog direktorijuma.
OMNIROUTE_BUILD_SHA (nije podešeno) src/lib/monitoring/buildSha.ts Git SHA pokrenutog artefakta. Utiskuje ga npm run build:release; može se ubaciti u kontejnere koji se isporučuju bez kontrolne datoteke dist/BUILD_SHA. Prikazuje se kao system.buildSha na /api/monitoring/health.
OMNIROUTE_RELEASE_REF origin/main scripts/build/buildProvenance.ts Referenca u odnosu na koju kontrola porekla zapakovanog artefakta proverava SHA verzije (#10427).
OMNIROUTE_ALLOW_CANARY_BUILD (nije podešeno) scripts/build/buildProvenance.ts Postavite na 1 da biste dozvolili pakovanje verzije čiji SHA nije na liniji izdanja, uz evidentiranje kao namerne kanarske verzije umesto neuspešnog prolaska kontrole (#10427).
OMNIROUTE_SMOKE_API_KEY (nije podešeno) scripts/ops/deploy-canary.mjs API ključ za probnu proveru kanarskog postavljanja, koji se šalje kao Authorization: Bearer na /v1/chat/completions. Koristi ga samo skripta za postavljanje (#10429), nikada server. Nije povezan sa promenljivama OMNIROUTE_SMOKE_* probnog CLI okruženja koje se izričito uključuje (RUN_CLI_SMOKE=1, OMNIROUTE_SMOKE_BASE_URL/MODEL/API_KEY_ENV/TARGETS/TIMEOUT_MS u tests/integration/upstream-cli-smoke.int.test.ts) — pogledajte CLI integracije → Stvarno probno ispitivanje.
OMNIROUTE_BUILDING (nije podešeno) src/lib/buildPhase.ts Signal faze izgradnje (#10060): scripts/build/build-next-isolated.mjs ga postavlja na 1, a nasleđuje ga svaki pokrenuti radni proces izgradnje kako bi sloj baze podataka vratio neoperativnu zamenu umesto učitavanja nativnog dodatka better-sqlite3 (koji prekida radni proces pri izlasku). Nikada se ne postavlja za pokrenuti server.
OMNIROUTE_SKIP_NATIVE_DEP_CHECK 0 scripts/check/check-native-deps.mjs Postavite na 1 da biste preskočili proveru unapred izgrađenih opcionih nativnih zavisnosti za neuobičajena dobavljačka stabla. Ovo ne omogućava izgradnju kada zavisnost nedostaje; koristite samo kada se nativne zavisnosti obezbeđuju izvan standardnog procesa.
OMNIROUTE_DATA_DIR (nije podešeno) open-sse/executors/promptql/threadSticky.ts Rezervni pseudonim za DATA_DIR, koji se proverava samo kada DATA_DIR nije podešen. Koristi se za pronalaženje keša sesija izvršioca PromptQL sa trajnim vezivanjem za nit na disku (<dir>/promptql-thread-sessions.json); ako nijedna promenljiva nije podešena, keš ostaje samo u memoriji (ne čuva se između ponovnih pokretanja).
OMNIROUTE_PLUGINS_DIR (nije podešeno) src/lib/plugins/scanner.ts Direktorijum koji čita skener dodataka tokom izvršavanja — i osnovni direktorijum u koji upravljač dodataka instalira dodatke — čime se zamenjuje podrazumevana vrednost izvedena iz korisničkog direktorijuma (#11827). Usmerite ga na bind-montirano stablo dodataka u okruženju Docker/K8s umesto da premeštate HOME samo radi promene putanje skeniranja (HOME upravlja i svakim drugim ponašanjem vezanim za korisnički direktorijum). Kada nije podešeno = ~/.omniroute/plugins, ili /tmp/.omniroute/plugins kada proces uopšte ne izvozi korisnički direktorijum — čime se uklanja problem neprimetnog nepronalaženja dodataka. Razrešeni direktorijum se jednom pri pokretanju evidentira kao scanner.dir_resolved, zajedno sa ulaznom vrednošću koja je izabrana. Samo na strani servera: dodaci za CLI komande zadržavaju sopstveni OMNIROUTE_PLUGIN_PATH (odeljak 9).
STORAGE_ENCRYPTION_KEY (празно = онемогућено) src/lib/db/encryption.ts AES кључ за потпуно шифровање SQLite базе података у мировању. Генеришите га помоћу openssl rand -hex 32.
STORAGE_ENCRYPTION_KEY_VERSION v1 scripts/build/bootstrap-env.mjs, electron/main.js Ознака верзије кључа за шифровање. Увећајте је приликом ротације кључа како би било подржано дешифровање старих резервних копија.
DISABLE_SQLITE_AUTO_BACKUP false src/lib/db/backup.ts Када је true, прескачу се рутинске резервне копије SQLite датотеке и оне пре уписивања (чување/брисање цена са models.dev, уписивање подешавања). Ручне резервне копије и оне пре враћања и даље се извршавају. Ово не онемогућава обавезни трајни безбедносни снимак покретача миграције нити заштиту од масовне миграције за постојећу трајну базу података. Учесталост резервних копија које нису ручне ограничена је на највише једном у 60 минута. На контролној табли, у одељку Подешавања → Складиште, рутинско аутоматско прављење резервних копија може се засебно онемогућити.
OMNIROUTE_CRYPT_KEY (није постављено) src/lib/db/encryption.ts Застарели алијас за STORAGE_ENCRYPTION_KEY. Прихвата се као резервна опција када примарна променљива није присутна.
OMNIROUTE_API_KEY_BASE64 (није постављено) src/lib/db/encryption.ts Застарели алијас (облик кодиран помоћу Base64) који се прихвата као резервна опција. Аутоматски се декодира пре употребе.
OMNIROUTE_DB_HEALTHCHECK_INTERVAL_MS (није постављено) src/lib/db/core.ts Замењује интервал периодичне провере исправности SQLite-а (ms). Када није постављен, подразумеване вредности се изводе из NODE_ENV.
OMNIROUTE_WAL_TRUNCATE_INTERVAL_MS 21600000 (6ч) src/lib/db/walMaintenance.ts Замењује интервал периодичног wal_checkpoint(TRUNCATE) (ms). Аутоматска контролна тачка никада не смањује саму WAL датотеку, а дуготрајно активан сервер никада не затвара своју базу података. 0 онемогућава ову функцију.
OMNIROUTE_WAL_PASSIVE_INTERVAL_MS 300000 (5м) src/lib/db/walMaintenance.ts Замењује интервал учесталог wal_checkpoint(PASSIVE) (ms). Одржава број WAL оквира на чекању малим, тако да периодични TRUNCATE никада не копира вишегигабајтни заостатак на главној нити. 0 онемогућава ову функцију.
OMNIROUTE_WAL_GUARD_MAX_MB 256 src/lib/db/walMaintenance.ts Када PASSIVE циклус утврди да је WAL датотека већа од ове вредности, одмах прелази на wal_checkpoint(TRUNCATE) уместо да чека спори циклус.
OMNIROUTE_PRESSURE_SELF_RESTART false open-sse/utils/resourcePressure.ts Поставите на 1/true/yes/on да би процес завршио рад након што критично оптерећење ресурса потраје током периода OMNIROUTE_PRESSURE_SELF_RESTART_AFTER_MS, омогућавајући надзорном програму (systemd Restart=always, Docker политика поновног покретања) да покрене чист процес уместо да се одговори 503 испоручују неограничено дуго.
OMNIROUTE_PRESSURE_SELF_RESTART_AFTER_MS 120000 (2м) open-sse/utils/resourcePressure.ts Колико дуго критично оптерећење мора да траје пре него што се активира завршетак рада ради самосталног поновног покретања.
OMNIROUTE_SQLJS_WASM_PATH (аутоматско откривање) src/lib/db/adapters/sqljsAdapter.ts Изричита путања (апсолутна или релативна у односу на cwd) до sql-wasm.wasm при коришћењу резервног WASM адаптера sql.js. Када није постављена, аутоматски се открива преко зависности пакета и могућих распореда датотека.
OMNIROUTE_WAL_TRUNCATE_INTERVAL_MS 21600000 (6ч) src/lib/db/core.ts Замењује интервал периодичног wal_checkpoint(TRUNCATE) (ms). Аутоматска контролна тачка никада не смањује саму WAL датотеку, а дуготрајно активан сервер никада не затвара своју базу података. 0 онемогућава ову функцију.
OMNIROUTE_BATCH_RETENTION_DAYS 30 src/lib/db/cleanup.ts Број дана током којих се чувају контролне тачке завршеног (успешно/неуспешно/отказано/истекло) Batch API посла, референциране улазне/излазне датотеке и датотеке грешака, као и ред базе података, пре него што их аутоматско чишћење избрише. Примењује се тек када је BATCH_AND_FILE_AUTO_CLEANUP_ENABLED укључено; одговара OpenAI-јевом периоду чувања излазних података Batch API-ја. Не утиче на руту DELETE /api/v1/batches/delete-completed коју покреће оператер и која, према дизајну, остаје безусловна (без филтера старости).
BATCH_AND_FILE_AUTO_CLEANUP_ENABLED false src/lib/db/cleanup.ts Када је true, омогућава аутоматском чишћењу да избрише завршене Batch API задатке (и њихове контролне тачке) старије од OMNIROUTE_BATCH_RETENTION_DAYS и очисти BLOB садржај отпремљених датотека након њиховог expires_at. Подразумевано је искључено: свака постојећа инсталација задржава ове податке потпуно исто као и раније док оператер не омогући ову опцију. Ово је уједно и функционална заставица која се може мењати на контролној табли — погледајте docs/reference/FEATURE_FLAGS.md → Извршавање.
OMNIROUTE_SKIP_DB_HEALTHCHECK 0 src/lib/db/core.ts, src/lib/db/healthCheck.ts Поставите на 1 да бисте у потпуности прескочили проверу исправности базе података при покретању. Корисно за краткотрајне задатке и интеграционе тестове.
OMNIROUTE_FORCE_DB_HEALTHCHECK 0 src/lib/db/core.ts Поставите на 1 да бисте принудно укључили петљу за проверу исправности базе података, чак и када би иначе била прескочена (нпр. код краткотрајних задатака).
OMNIROUTE_SKIP_POSTINSTALL 0 scripts/postinstall.mjs Поставите на 1 да бисте прескочили загревање изворног извршног окружења током npm install. Корисно у CI/безглавим инсталацијама у којима је sqlite већ изграђен.
OMNIROUTE_MIGRATIONS_DIR (аутоматско откривање) src/lib/db/migrationRunner.ts Замените директоријум који покретач миграција скенира. Корисно када се у прилагођеним верзијама испоручују упаковане миграције.
OMNIROUTE_EXTRA_MIGRATIONS_DIRS (није постављено) src/lib/db/migrationRunner/extraDirs.ts Додатни директоријуми миграција као уноси namespace=dir, раздвојени граничником путање платформе (нпр. ee=/opt/app/enterprise/db/migrations). Датотеке пронађене у њима бележе се као <namespace>-<number>, тако да дистрибуција која испоручује сопствене миграције никада не долази у сукоб са нумеричким местима из изворног пројекта. Неисправно обликован унос, неважећи именски простор или директоријум који недостаје изазива грешку при покретању уместо тихог прескакања шеме.
OMNIROUTE_MAX_PENDING_MIGRATIONS 50 src/lib/db/migrationRunner.ts Безбедносни праг за велики број миграција на чекању (#3416). Покретање се прекида ако на постојећој бази података чека више миграција од овог броја (заштита од обрисане табеле за праћење). Повећајте вредност да бисте вратили старију резервну копију; поставите на 0 да бисте онемогућили проверу.
OMNIROUTE_INSTALL_UPGRADE_WORKDIR (<repo>/.install-upgrade) scripts/check/check-install-upgrade.mjs Радни директоријум за проверу издања check:install-upgrade. Потребно му је приближно 12 GB (два инсталациона стабла од по ~3 GB и tarball), па се не сме покретати на малом tmpfs-у — на самостално хостованом покретачу /tmp је tmpfs од 12 GB смештен у RAM-у, а провера га је исцрпела и скратила пакет.
OMNIROUTE_SPEND_FLUSH_INTERVAL_MS (подразумевано у коду) src/lib/spend/batchWriter.ts Интервал пражњења (ms) за пакетни упис потрошње/трошкова. Ниже вредности смањују обједињавање уписа; више вредности смањују сукобе у бази података.
OMNIROUTE_SPEND_MAX_BUFFER_SIZE (подразумевано у коду) src/lib/spend/batchWriter.ts Максималан број баферованих уноса потрошње пре принудног пражњења. Повећајте за примене са високим QPS-ом; смањите када је ограничена потрошња меморије важнија.
OMNIROUTE_PROXY_FETCH_DEBUG (није постављено) open-sse/utils/proxyFetch.ts Поставите на "true" да бисте на Vercel путањи релеја емитовали [ProxyFetch] евиденције за отклањање грешака. Подразумевано је искључено како би се избегло откривање информација о усмеравању.
PROXY_LOG_INCLUDE_IPS false src/lib/proxyLogger.ts Поставите на "true" или "1" да бисте укључили клијентске/излазне IP адресе и префикс налога у опширни [ProxyEgress] ред евиденције процеса. Подразумевано остаје ИСКЉУЧЕНО како евиденција процеса не би откривала IP адресе или префикс налога.
OMNIROUTE_DEBUG (није постављено) bin/cli/commands/quota.mjs Поставите на 1 да бисте из CLI команди за квоте у stderr исписивали дијагностику времена за сваки захтев ([omniroute] GET <path> completed in Nms).
OMNIROUTE_HEALTHCHECK_PATH (аутоматски) scripts/dev/healthcheck.mjs Изричита путања коју проверава контрола исправности контејнера. Ако није постављена, сонда је изводи из OMNIROUTE_BASE_PATH; њеним постављањем поново се укључује дубинска крајња тачка за надзор.
OMNIROUTE_DEBUG_COMPLETION (није постављено) bin/cli/commands/completion.mjs Поставите на било коју непразну вредност да бисте емитовали [omniroute completion] дијагностику из путања кеша за CLI довршавање у љусци (читање/освежавање/писање). Подразумевано је искључено — грешке тих кешева пролазе неприметно, тако да недостајући или оштећени кеш никада не нарушава довршавање помоћу табулатора.
BATCH_RETRY_DURATION_MS 86400000 (24 č) open-sse/services/batchProcessor.ts Maksimalni vremenski period za ponovne pokušaje pojedinačnih stavki paketa (ms). Stavke koje premaše ovo trajanje označavaju se kao neuspešne.
BATCH_BACKOFF_BASE_MS 5000 open-sse/services/batchProcessor.ts Osnovno kašnjenje (ms) za eksponencijalno odlaganje pri ponovnim pokušajima stavki paketa.
BATCH_BACKOFF_MAX_MS 3600000 (1 č) open-sse/services/batchProcessor.ts Gornja granica (ms) eksponencijalnog odlaganja između ponovnih pokušaja stavki paketa.
BATCH_MAX_CONCURRENT 1 open-sse/services/batchProcessor.ts Maksimalan broj paketa koji se istovremeno obrađuju. Povećajte vrednost radi veće propusnosti; zadržite je niskom da biste izbegli lavinu prekoračenja ograničenja broja zahteva.

Important

Pre izmene postojeće trajne baze podataka, alat za migraciju objavljuje potpun, sadržajno adresiran snimak u DATA_DIR/db_backups/. Objavljivanje zahteva sistem datoteka koji podržava čvrste veze bez prepisivanja unutar istog sistema datoteka, kao i trajnu sinhronizaciju datoteka. POSIX hostovi takođe zahtevaju sinhronizaciju direktorijuma; na Windows-u Node može da odbije ručke direktorijuma, pa OmniRoute sinhronizuje objavljenu datoteku i tretira sinhronizaciju unosa direktorijuma kao najbolji mogući pokušaj. Ako montirani DATA_DIR ne može da obezbedi te garancije, pokretanje se bezbedno prekida pre primene migracije. Premestite DATA_DIR na volumen koji podržava te primitive; nemojte koristiti DISABLE_SQLITE_AUTO_BACKUP za zaobilaženje bezbednosti migracije.

Scenariji

Scenario Konfiguracija
Lokalni razvoj Ostavite sve podrazumevane vrednosti. Baza podataka se nalazi na ~/.omniroute/omniroute.db.
Docker DATA_DIR=/data + montirajte volumen na /data.
Šifrovano u stanju mirovanja Podesite STORAGE_ENCRYPTION_KEY + čuvajte rezervne kopije ključa! Gubitak ključa = gubitak podataka.
CI/Testiranje DATA_DIR=/tmp/omniroute-test — privremeno, šifrovanje nije potrebno.

3. Мрежа и портови

Променљива Подразумевано Изворна датотека Опис
PORT 20128 src/lib/runtime/ports.ts Примарни порт и за кориснички интерфејс контролне табле и за API крајње тачке (режим са једним портом).
OMNIROUTE_BASE_PATH (празно = корен) next.config.mjs, scripts/docker/ensure-docker-base-path.mjs URL потпутања за опслуживање OmniRoute-а иза обрнутог проксија (поставља Next.js basePath; преусмеравања за аутентификацију узимају basePath у обзир). Нпр. /omniroute. У Docker-у се вредност уграђује током docker build (ARG OMNIROUTE_BASE_PATH); унапред изграђене коренске слике могу једном применити другачију вредност током извршавања, при покретању контејнера, пре него што се Next.js покрене. Подесите NEXT_PUBLIC_BASE_URL на јавни извор који укључује исто потпутање.
NEXT_PUBLIC_OMNIROUTE_BASE_PATH (празно = корен) src/shared/hooks/useDisplayBaseUrl.ts Копија променљиве OMNIROUTE_BASE_PATH видљива прегледачу, уграђена током изградње како би приказ крајње тачке на контролној табли приказивао https://host/omniroute/v1 уместо https://host/v1. Ако није подешена, користи OMNIROUTE_BASE_PATH. Након измене поново извршите изградњу (Next basePath се задаје током изградње).
DASHBOARD_ALLOW_EMBED (није подешено = не може се уградити) next.config.mjs, scripts/build/dashboardEmbed.mjs Опционо омогућавање уграђивања HTML страница у iframe. Када није подешено, свака рута испоручује frame-ancestors 'none' + X-Frame-Options: DENY. Подесите на vscode да би се странице (контролна табла, пријава, документација, одредишна страница) опслуживале са frame-ancestors 'self' vscode-webview: и без X-Frame-Options, тако да VS Code Simple Browser може да их прикаже (OmniCopilot режим dashboardOpen: "editor"). API површина (/api, /v1, /v1beta, /a2a, /healthz, алијаси на коренском нивоу) у сваком случају задржава строга заглавља. Препознаје се само vscode1/true то не омогућавају. Подешава се током изградње: након измене поново извршите изградњу (docker build --build-arg DASHBOARD_ALLOW_EMBED=vscode за слике; постављање на унапред изграђеној инсталацији нема ефекта).
API_PORT (није подешено) src/lib/runtime/ports.ts Када је подешено, опслужује /v1/* прокси API на овом засебном порту.
API_HOST 0.0.0.0 src/lib/runtime/ports.ts Адреса за везивање API порта.
DASHBOARD_PORT (није подешено) src/lib/runtime/ports.ts Када је подешено, опслужује кориснички интерфејс контролне табле на овом засебном порту.
OMNI_MAX_CONCURRENT_CONNECTIONS 0 (онемогућено) src/sse/utils/backpressure.ts Ограничава број истовремених активних веза за ћаскање; захтеви преко ограничења добијају 503 са Retry-After. Позитиван цео број омогућава заштиту; ако није подешено или је 0, заштита је онемогућена.
OMNIROUTE_INSTANCE_ID (није подешено) src/shared/resilience/peerRouting.ts Стабилан, јединствен ID овог мрежног пролаза при ланчаном повезивању OmniRoute инстанци. Омогућава улазне провере петљи између равноправних чворова. Дозвољени знакови: слова, цифре, ., _, : и -; највише 64 знака.
OMNIROUTE_PEER_URLS (није подешено) src/shared/resilience/peerRouting.ts, open-sse/executors/base.ts Основни OmniRoute URL-ови, раздвојени зарезима, који могу да приме X-OmniRoute-Peer-Trace. Метаподатке равноправног чвора добијају само изричито дозвољени узводни URL-ови; сви остали провајдери остају непромењени.
OMNIROUTE_PEER_MAX_HOPS 4 src/shared/resilience/peerRouting.ts Максималан број претходно посећених OmniRoute инстанци прихваћених у уланчаном захтеву (1-32). Поновљене инстанце или исцрпљен буџет враћају HTTP 508 Loop Detected.
PROD_DASHBOARD_PORT 20130 docker-compose.prod.yml Порт објављен на страни хоста за контролну таблу у Docker продукционом режиму.
PROD_API_PORT 20131 docker-compose.prod.yml Порт објављен на страни хоста за API у Docker продукционом режиму.
OMNIROUTE_PORT (није подешено) src/lib/runtime/ports.ts Има предност у односу на PORT када се покреће унутар Electron-а или других омотача.
LIVE_WS_PORT 20129 src/server/ws/liveServer.ts Порт за WebSocket сервер за праћење у реалном времену.
LIVE_WS_HOST 127.0.0.1 src/server/ws/liveServer.ts Адреса за везивање WebSocket сервера уживо. Подесите на 0.0.0.0 да бисте га изложили на LAN-у (такође конфигуришите LIVE_WS_ALLOWED_ORIGINS).
LIVE_WS_ALLOWED_ORIGINS (није подешено) src/server/ws/liveServer.ts Додатна изворишта, раздвојена зарезима, којима је дозвољено да отворе WebSocket везу уживо. Изворишта контролне табле на loopback адреси већ су подразумевано дозвољена.
LIVE_WS_ALLOWED_HOSTS (није подешено) src/server/ws/liveServerAllowList.ts Додатна имена хостова, раздвојена зарезима, дозвољена за WebSocket изворишта уживо. За разлику од LIVE_WS_ALLOWED_ORIGINS (пуни URL-ови изворишта), подудара се само део са хостом — корисно за LAN/Tailscale конфигурације.
NEXT_PUBLIC_LIVE_WS_PUBLIC_URL (није подешено) src/hooks/useLiveDashboard.ts Јавни URL за WebSocket контролне табле уживо (на страни прегледача). Подесите га када се испред WS сервера налази реверзни прокси или Cloudflare Tunnel (нпр. wss://ws.my-ai.com/live-ws); прегледач се повезује на ту адресу уместо на ws://hostname:20132. Део путање се такође користи као путања за WebSocket надоградњу (подразумевано: /live-ws).
OMNIROUTE_ENABLE_LIVE_WS true src/server/ws/liveServer.ts и scripts/start-ws-server.mjs Подесите на 0 или false да бисте онемогућили WebSocket сервер у реалном времену (подразумевано је омогућен и везан за loopback адресу). CI/harness прекидач који онемогућава самосталну помоћну скрипту за WebSocket уживо.
RELAY_IP_PER_MINUTE 30 src/app/api/v1/relay/chat/completions/route.ts Ограничење брзине прослеђивања по пару (токен, IP), у захтевима по минуту. Чува се у меморији, засебно по инстанци. 0 или негативна вредност онемогућава ограничење по IP димензији (ограничење по токену у бази података и даље важи).
NODE_ENV production Next.js jezgro Kontroliše detaljnost evidencije, keširanje, prikaz detalja grešaka i Next.js optimizacije.
OMNIROUTE_USE_TURBOPACK 1 (Turbopack — podrazumevano u kodu) package.json / Next.js 16 Turbopack je podrazumevani alat za objedinjavanje za npm run dev i npm run build (23× brže izgradnje, potvrđeno merenjima). Postavite na 0 da biste se vratili na webpack u sistemu Windows, kada naiđete na nekompatibilnosti nativnih povezivanja / alata za objedinjavanje, ili na računarima sa ograničenom RAM memorijom — poznato je da Turbopack produkcione izgradnje u ovoj liniji verzija Next.js-a (16.2.x) dostižu znatno veću vršnu potrošnju memorije nego webpack na velikim grafovima modula (Turbopack ispravka za oslobađanje memorije iz Next 16.3 još nije stabilna); rezervni prelazak na webpack dostiže znatno nižu vršnu potrošnju. Pogledajte #6409.
OMNIROUTE_SKIP_DB_HEALTHCHECK (nije postavljeno) src/lib/db/core.ts / src/lib/db/healthCheck.ts Postavite na 1 da biste preskočili proveru integriteta SQLite baze podataka pri pokretanju. Korisno za brže pokretanje sa velikim bazama podataka.
NOTIFY_SOCKET (nije postavljeno) systemd (protokol sd_notify) Postavlja systemd kada se proces izvršava u okviru servisne jedinice sa integracijom sd_notify; OmniRoute je čita (pogledajte OMNIROUTE_DISABLE_SD_NOTIFY) radi slanja READY/WATCHDOG obaveštenja. Korisnik je nikada ne postavlja.
OMNIROUTE_DISABLE_SD_NOTIFY (nije postavljeno) scripts/dev/systemd-notify.mjs Postavite na 1 da biste onemogućili systemd sd_notify (Type=notify / WatchdogSec=), čak i kada se izvršava u okviru systemd jedinice. Obaveštavač ne radi ništa izvan systemd-a.
CREDENTIAL_HEALTH_CHECK_INTERVAL 300000 open-sse/config/constants.ts / src/lib/credentialHealth/scheduler.ts Interval (ms) za pozadinski planer provere ispravnosti akreditiva. Minimum: 10000 (10 s).
CREDENTIAL_HEALTH_CACHE_TTL 300000 open-sse/config/constants.ts / src/lib/credentialHealth/cache.ts TTL (ms) za keširani status ispravnosti akreditiva.
OMNIROUTE_DISABLE_CREDENTIAL_HEALTH_CHECK false src/lib/credentialHealth/scheduler.ts Postavite na 1 ili true da biste onemogućili periodično pozadinsko testiranje veza sa pružaocima usluga. Pružaoci pretrage (SEARCH_VALIDATOR_CONFIGS u src/lib/providers/validation/searchProviders.ts, npr. tavily-search) uvek su izuzeti iz provere — njihova „validacija“ predstavlja stvarni naplativi upit ka nadređenoj usluzi, pa se njihova ispravnost nikada ne proverava periodično (#9970).
HOST 0.0.0.0 scripts/dev/run-next.mjs Adresa povezivanja za Next.js dev/start server. Kada je postavljena, zamenjuje podrazumevanu adresu 0.0.0.0.
HOSTNAME 127.0.0.1 scripts/dev/run-next-playwright.mjs Adresa povezivanja koju Playwright pokretač koristi pri pokretanju Next.js-a. Podrazumevana vrednost je 127.0.0.1 radi izolovanih testova. Ne koristite za omniroute serve — umesto toga koristite OMNIROUTE_SERVER_HOST (POSIX ljuske automatski postavljaju HOSTNAME na naziv računara; .env ne može da ga zameni).
OMNIROUTE_SERVER_HOST 0.0.0.0 bin/cli/commands/serve.mjs Adresa povezivanja za omniroute serve. Izbegava koliziju sa promenljivom POSIX ljuske HOSTNAME (koju bash/zsh uvek postavljaju na naziv računara). Ako nije postavljena, koristi se 0.0.0.0. (#6194)

Режими портова

┌────────────────────── Један порт (подразумевано) ──────────────────────────┐
│  PORT=20128                                                                 │
│  → Контролна табла: http://localhost:20128                                  │
│  → API:              http://localhost:20128/v1/chat/completions             │
└─────────────────────────────────────────────────────────────────────────────┘

┌─────────────────────────── Одвојени портови ────────────────────────────────┐
│  DASHBOARD_PORT=20128                                                       │
│  API_PORT=20129                                                             │
│  API_HOST=0.0.0.0                                                           │
│  → Контролна табла: http://localhost:20128                                  │
│  → API:              http://0.0.0.0:20129/v1/chat/completions              │
│  Намена: Изложите API LAN мрежи, а контролну таблу ограничите на localhost. │
└─────────────────────────────────────────────────────────────────────────────┘

┌─────────────────────────── Docker продукција ──────────────────────────────┐
│  PROD_DASHBOARD_PORT=443   PROD_API_PORT=8443                              │
│  → Мапира портове контејнера на портове хоста у docker-compose.prod.yml.   │
└─────────────────────────────────────────────────────────────────────────────┘

4. Безбедност и аутентификација

Променљива Подразумевана вредност Изворна датотека Опис
MACHINE_ID_SALT endpoint-proxy-salt src/lib/auth Со која се комбинује са хардверским идентификаторима ради генерисања отиска машине. Промените је за свако постављање ради изолације.
OMNIROUTE_CLI_SALT (није постављено = насумична со за сваку инсталацију, сачувана у <DATA_DIR>/cli-token-salt.json) src/lib/machineToken.ts HMAC со за извођење локалног CLI токена за аутентификацију. Постављање ове вредности ротира све CLI токене на машини и увек има предност над сачуваном сољу. Погледајте docs/security/CLI_TOKEN.md.
AUTH_COOKIE_SECURE false src/lib/auth Поставља ознаку Secure на колачићима сесије. Мора бити true када се апликација извршава иза HTTPS-а.
REQUIRE_API_KEY false API посреднички слој Када је true, сви /v1/* прокси захтеви морају да садрже важећи API кључ.
ALLOW_API_KEY_REVEAL false src/shared/constants/featureFlagDefinitions.ts Омогућава приказивање пуних вредности API кључева у корисничком интерфејсу контролне табле. Подешава се путем заставица функција на контролној табли; представља безбедносни ризик на дељеним инстанцама.
NO_LOG_API_KEY_IDS (празно) src/lib/compliance/index.ts Зарезима раздвојени ID-ови API кључева за које се заобилази евидентирање захтева (усклађеност са GDPR-ом).
DEFAULT_RATE_LIMIT_PER_DAY (није постављено = неограничено) src/shared/utils/apiKeyPolicy.ts Резервни дневни буџет захтева који се примењује на API кључеве чија је колона rate_limits null. Није постављено или је празно: нема подразумеваног ограничења (#2289, #11017). 0 има исто значење (неограничено). Позитиван цео број N омогућава N/дан, 5N/недељу, 20N/месец. Неисправне вредности које нису празне враћају се на претходне периоде од 1000/дан, 5000/недељу и 20000/месец.
MAX_BODY_SIZE_BYTES 10485760 (10 MB) src/shared/middleware/bodySizeGuard.ts Највећа дозвољена величина тела захтева. Одбија корисне садржаје који прекорачују ово ограничење.
OMNIROUTE_CHAT_LARGE_BODY_BYTES 262144 (256 KB) src/shared/middleware/chatBodyAdmission.ts Стварна тела захтева чија је величина једнака овом прагу или већа од њега преузимају атомски, процесно локални закуп за прихват тешких захтева пре JSON рашчлањивања (BYTE путања, укључујући POST /v1/responses). Исти механизам избегавања при довољној резерви капацитета из #10437 као и за структурно захтевне захтеве; и даље је ограничено вредношћу OMNIROUTE_CHAT_MAX_INFLIGHT_BYTES / #10110, како се #7849 не би поново појавио.
OMNIROUTE_CHAT_HARD_MAX_BODY_BYTES 52428800 (50 MB) src/shared/middleware/chatBodyAdmission.ts Строго ограничење за руте ћаскања које се примењује на бајтове прочитане током ограниченог пријема, укључујући захтеве са недостајућом, неважећом или нетачном вредношћу Content-Length; прекорачење добија одговор 413.
OMNIROUTE_CHAT_MAX_HEAVY_IN_FLIGHT (није постављено — нема ограничења броја захтева) src/shared/middleware/chatBodyAdmission.ts #503-fanout: ово застарело ограничење БРОЈА захтева сада се примењује само када је изричито постављено. Када није постављено (подразумевано), прихватање захтевних chat захтева уместо тога ограничава OMNIROUTE_CHAT_MAX_INFLIGHT_BYTES — аутоматски изведен БАЈТ буџет, одређен према стварном меморијском ограничењу процеса у једном процесу (једна V8 heap меморија). Два преклапајућа /v1/responses захтева са приближно 750 хиљада токена обарају heap меморије од приближно 12 GiB (#7849) — то је упозорење о меморијском буџету, а не чврсто ограничење производа на 2. Здрав процес (heap испод односа за одбацивање) МОЖЕ да прихвати више истовремених дугих /v1/responses захтева путем OMNIROUTE_CHAT_ADMISSION_HEALTHY_HEADROOM. Десетине дуготрајних SSE клијената (4050) зависе од heap меморије + OMNIROUTE_CHAT_MAX_INFLIGHT_BYTES / #10110, а не од „максимално 2“. Слепо повећавање ове вредности ради „коришћења хоста“ поново уводи #7849. Умножавајте heap меморије помоћу N независних DATA_DIR директоријума (#11024); никада не користите replicas>1 над једном SQLite датотеком.
OMNIROUTE_CHAT_MAX_INFLIGHT_BYTES (аутоматски изведено) src/shared/middleware/admissionBudget.ts #503-fanout: замена за аутоматски изведен бајт буџет за унос (25% строжег V8/cgroup меморијског ограничења подељено са 8x пролазним увећањем). Изведене и изричито задате вредности ограничавају се на 8 MiB2 GiB. Тело веће од ефективног буџета одмах не успева са 413 body_exceeds_budget; конкуренција између тела која се појединачно могу обрадити и даље враћа поновљиви 503. 4050 истовремених дуготрајних SSE клијената зависи од овог буџета + heap меморије, а не од чврстог ограничења „максимално 2“. Пре подешавања прочитајте chatAdmission.maxInflightBytes / budgetSource / pressureSeverity на /api/monitoring/health.
OMNIROUTE_CHAT_ADMISSION_HEAP_SHED_RATIO 0.75 src/shared/middleware/chatBodyAdmission.ts Однос притиска heap меморије за одбацивање (heapUsed / heap_size_limit) при прихватању захтевних захтева по БАЈТОВИМА и СТРУКТУРИ (#10183, #10268, #10437). Истовремени захтевни захтев који премашује OMNIROUTE_CHAT_MAX_HEAVY_IN_FLIGHT одбацује се са поновљивим 503 само када је heap ТАКОЂЕ на овом односу или изнад њега; на здравој heap меморији прихвата се путем додатног капацитета за здраво стање.
OMNIROUTE_CHAT_ADMISSION_HEALTHY_HEADROOM OMNIROUTE_CHAT_MAX_HEAVY_IN_FLIGHT (подразумевано 1) src/shared/middleware/chatBodyAdmission.ts Ограничени додатни капацитет за брзу путању при здравој heap меморији (#10437), и за СТРУКТУРУ и за БАЈТОВЕ (admitChatRequest, укључујући тела ≥ OMNIROUTE_CHAT_LARGE_BODY_BYTES). Без овог ограничења, сваки захтев при заузетом, али здравом heap-у заобилазио би контролу прихватања без горње границе. Када је оволико истовремених закупа активно путем путање за здрав heap, додатни захтеви током заузећа прелазе на ИСТУ путању ограниченог чекања/одбацивања која се користи под стварним притиском heap меморије. 0 у потпуности онемогућава заобилажење.
OMNIROUTE_CHAT_HEAVY_MESSAGE_COUNT 200 src/shared/middleware/chatBodyAdmission.ts Број порука при којем се chat захтев класификује као захтеван чак и када му је тело испод прага у бајтовима.
OMNIROUTE_CHAT_HEAVY_TOOL_COUNT 64 src/shared/middleware/chatBodyAdmission.ts Број алата при којем се chat захтев класификује као захтеван чак и када му је тело испод прага у бајтовима.
OMNIROUTE_CHAT_HEAVY_ESTIMATED_TOKENS 32000 src/shared/middleware/chatBodyAdmission.ts Конзервативна процена броја токена на основу величине ниске која класификује захтев као захтеван; ово је посредна мера трошка прихватања, а не токенизација провајдера за обрачун.
OMNIROUTE_CHAT_HARD_MAX_MESSAGES 0 (онемогућено) src/shared/middleware/chatBodyAdmission.ts Опционо ограничење историје chat-а које се изричито укључује. Подразумевано је онемогућено: број порука је политика примене, а не универзално својство захтева, а постављање ограничења овде одбацује разговоре коначним статусом 413 пре него што их ток компресије може учинити обрадивим. Раст heap меморије ограничавају OMNIROUTE_CHAT_MAX_HEAVY_IN_FLIGHT и одбацивање услед притиска heap меморије. Поставите позитивну вредност у применама са ограниченом меморијом којима је потребна чврста горња граница; прекорачење тада добија структурирани 413 који захтева сажимање.
OMNIROUTE_MAX_NONSTREAMING_RESPONSE_BYTES 67108864 (64 MB) open-sse/handlers/chatCore/nonStreamingResponseBody.ts Чврсто ограничење за upstream одговор без стримовања који се у потпуности смешта у меморију. Након прекорачења, upstream читач се отказује и захтев брзо не успева, уместо да ниска неограничено расте док се heap меморија не исцрпи.
OMNIROUTE_FORWARDING_HEADER_BUDGET_BYTES 768 open-sse/handlers/chatCore/responseHeaders.ts Максималан број бајтова на преносном нивоу који се прослеђују из заглавља upstream одговора. Када се буџет прекорачи, заглавља нижег приоритета (нпр. прилагођена x-codex-*, x-oai-request-id) одбацују се како би се остало у оквиру уобичајених ограничења заглавља reverse proxy сервера. Поставите већу вредност да бисте проследили више upstream метаподатака по цену веће величине заглавља одговора.
CORS_ORIGIN (неподешено) src/server/cors/origins.ts Застарела CORS листа дозвољених адреса са једним извором. За нова постављања користите CORS_ALLOWED_ORIGINS. CORS је намењен само API клијентима у прегледачу који приступају из другог извора; аутентификовани уписи преко контролне табле уместо тога користе захтеве са истог извора уз CSRF заштиту везану за сесију.
CORS_ALLOWED_ORIGINS (неподешено) src/server/cors/origins.ts CORS листа дозвољених адреса раздвојених зарезима. Џокер се не шаље осим ако CORS_ALLOW_ALL=true није изричито подешено.
CORS_ALLOW_ALL false src/server/cors/origins.ts Излаз у нужди само за развој који враћа било који Origin прегледача. Не омогућавајте у дељеним или продукционим окружењима.
OUTBOUND_SSRF_GUARD_ENABLED true src/shared/network/outboundUrlGuard.ts Блокира позиве добављачима који циљају приватне/loopback/link-local опсеге IP адреса. Онемогућите само у изолованим тестним окружењима.
OMNIROUTE_ALLOW_PRIVATE_PROVIDER_URLS false src/shared/network/outboundUrlGuard.ts Дозвољава URL-ове добављача који указују на приватне/локалне мреже (localhost, 192.168.x.x, 10.x.x.x итд.). ОБАВЕЗНО за добављаче који се самостално хостују (LM Studio, Ollama, vLLM, Llamafile, Triton, SearXNG). Када је false, контролна табла одбија валидацију локалних URL-ова.
OMNIROUTE_ALLOW_LOCAL_PROVIDER_URLS true src/shared/network/outboundUrlGuard.ts Дозвољава додавање/валидацију добављача на локалним/приватним адресама (127.0.0.1, localhost, LAN, приватни опсези) — ограничено на путању за валидацију добављача. Подразумевано је true (приоритет локалног окружења); поставите на false да бисте наметнули строго блокирање свега осим јавних адреса. Крајње тачке за метаподатке у облаку (169.254.169.254, metadata.google.internal) остају блокиране без обзира на ово подешавање. (#5066)
AUDIO_REMOTE_PROVIDER_NODES false src/app/api/v1/_shared/audioProviderNodes.ts Омогућава путањама /v1/audio/* (транскрипције, говор, преводи) да користе чвор добављача компатибилан са OpenAI-јем који се хостује ван localhost-а. Подразумевано је искључено — усмеравање звука ка удаљеном хосту мења излазни идентитет и мора бити изричита одлука оператера. Loopback/приватни чворови (localhost, 127.0.0.1, 172.16-31.x) увек су дозвољени и ово подешавање не утиче на њих. (#3963)
OMNIROUTE_OIDC_DISABLE_PASSWORD_LOGIN false src/app/api/auth/login/route.ts Када је OIDC омогућен, онемогућава пријављивање лозинком тако да корисници могу да се аутентификују само путем OIDC јединствене пријаве. Прихвата се и кратки алијас OIDC_DISABLE_PASSWORD_LOGIN; заставица функције на контролној табли са истим кључем има приоритет. (#10889)
OIDC_DISABLE_PASSWORD_LOGIN false src/app/api/auth/login/route.ts Кратки алијас за OMNIROUTE_OIDC_DISABLE_PASSWORD_LOGIN (#10889).

Контролна листа за безбедносно ојачавање

# Минимум за безбедност у продукцији:
AUTH_COOKIE_SECURE=true        # Захтева HTTPS
REQUIRE_API_KEY=true           # Аутентификује све proxy позиве
ALLOW_API_KEY_REVEAL=false     # Никада не приказује кључеве у корисничком интерфејсу
CORS_ALLOWED_ORIGINS=https://your.domain.com
MAX_BODY_SIZE_BYTES=5242880    # Ограничење од 5 MB

5. Санитизација улаза и заштита личних података

OmniRoute пружа двослојну заштиту: скенирање захтева ради откривања убацивања злонамерних инструкција и уклањање личних података из одговора.

⚠️ Ограничења: Ове заштитне мере представљају хеуристичке механизме који раде по принципу најбољег покушаја, а не потпуни заштитни зид против убацивања инструкција нити DLP систем за личне податке. Могу произвести лажно позитивне резултате (безопасни упити са персонама или RPG садржајем означени као ризични) и лажно негативне резултате (leet говор, размаци, обрасци који нису на енглеском). Саме по себи нису довољне за усклађеност са прописима. Прилагодите режиме и тестирајте их на свом саобраћају пре него што се ослоните на њих.

На страни захтева: заштита од убацивања инструкција

Променљива Подразумевано Изворна датотека Опис
INPUT_SANITIZER_ENABLED true src/middleware/promptInjectionGuard.ts Омогућава скенирање долазних порука ради откривања образаца убацивања инструкција.
INPUT_SANITIZER_MODE warn src/middleware/promptInjectionGuard.ts Политика за убацивање инструкција: warn = само евидентирање, block = одбијање захтева са статусом 400. Застарели режим redact не уклања текст уметнутих инструкција; користите PII_REDACTION_ENABLED за преправљање личних података у захтеву.
INJECTION_GUARD_MODE (није подешено) src/middleware/promptInjectionGuard.ts Застарели псеудоним за INPUT_SANITIZER_MODE — исто понашање.
INPUT_SANITIZER_BLOCK_THRESHOLD high src/shared/utils/injectionSeverity.ts Најнижи ниво озбиљности који MODE=block одбија: high (подразумевано), medium или low. Обрасци средњег нивоа служе само за посматрање, осим ако праг није снижен.
INJECTION_GUARD_BLOCK_THRESHOLD (није подешено) src/shared/utils/injectionSeverity.ts Застарели псеудоним за INPUT_SANITIZER_BLOCK_THRESHOLD — исто понашање.
PII_REDACTION_ENABLED false src/lib/guardrails/piiMasker.ts Када је true, редигује личне податке у долазним захтевима (независно од режима за убацивање инструкција).
CREDENTIAL_REDACTION_ENABLED false src/lib/guardrails/credentialMasker.ts Редигује познате обрасце API кључева / тајних токена из садржаја захтева и одговора. Опционо; прати PII_REDACTION_ENABLED.

На страни одговора: санитизатор личних података

Променљива Подразумевано Изворна датотека Опис
PII_RESPONSE_SANITIZATION false src/lib/piiSanitizer.ts Скенира LLM одговоре ради откривања откривених личних података пре враћања клијенту.
PII_RESPONSE_SANITIZATION_MODE redact src/lib/piiSanitizer.ts redact = маскирање личних података, warn = само евидентирање, block = одбацивање целог одговора.

Санитизатор контекста токенизованих рута за VS Code

Променљива Подразумевано Изворна датотека Опис
OMNIROUTE_VSCODE_SANITIZE_CONTEXT 1 src/app/api/v1/vscode/contextSanitizer.ts Уклања имплицитни контекст активног уређивача (editorContext, activeEditor, currentFile, selection, openTabs…) из захтева ка /v1/vscode/[token]/* и редигује садржај изричито приложених осетљивих датотека. Подразумевано безбедно; поставите на 0 да бисте онемогућили.

Сценарији

Сценарио Конфигурација
Усклађеност у предузећима INPUT_SANITIZER_ENABLED=true, INPUT_SANITIZER_MODE=block, PII_REDACTION_ENABLED=true, PII_RESPONSE_SANITIZATION=true (блокирање убацивања инструкција + редиговање личних података у захтевима и одговорима; режими су независни)
Само надгледање INPUT_SANITIZER_ENABLED=true, INPUT_SANITIZER_MODE=warn — евидентира, али никада не блокира
Лична употреба Оставите све онемогућено — без додатног оптерећења

6. Политике алата и рутирања

Променљива Подразумевано Изворна датотека Опис
TOOL_POLICY_MODE disabled src/lib/toolPolicy.ts Контролише приступ LLM-а позивању алата/функција. allowlist = само наведени алати, denylist = сви осим наведених, disabled = без ограничења.
OMNIROUTE_PAYLOAD_RULES_PATH ./config/payloadRules.json open-sse/services/payloadRules.ts Путања до JSON датотеке са правилима за манипулацију корисним садржајем (прилагођавања за надређени сервис по моделу/протоколу).
OMNIROUTE_PAYLOAD_RULES_RELOAD_MS 5000 open-sse/services/payloadRules.ts Интервал поновног учитавања (ms) за динамичко учитавање датотеке са правилима корисног садржаја. Минимум је 1000.
OMNIROUTE_PREFER_CLAUDE_CODE_FOR_UNPREFIXED_CLAUDE_MODELS false open-sse/services/model.ts Опционо: усмерава ID-ове модела без префикса claude-* из Claude Code клијената преко Claude Code OAuth налога, уместо да захтева префикс добављача. Експлицитни префикси добављача и даље имају предност. Такође се може конфигурисати преко прекидача на страници Claude добављача на контролној табли.
COMBO_CONCURRENCY_PER_MODEL 3 open-sse/services/comboConfig.ts Ограничење конкурентности по моделу за комбинације са кружним распоређивањем (#9100). Семафор комбинације са кружним распоређивањем био је строго ограничен на 3 истовремена захтева по моделу без могућности измене, због чега је саобраћај са већом конкурентношћу серијализован иза тог ограничења. Проверава се да је вредност >= 1, а ограничава се на <= 32.
DISABLE_CONTEXT_WINDOW_CHECKS false open-sse/handlers/chatCore.ts Опасна опциона поставка која прескаче OmniRoute-ову локалну проверу контекстног прозора / максималног броја улазних токена за директне захтеве ка једном моделу. Надређени добављачи и даље примењују своја стварна ограничења; компресија упита и сопствено ограничење излазних токена модела остају активни. Важећи редослед приоритета је: замена из базе података Feature Flags > променљива окружења > подразумевана вредност; поновно покретање није потребно.
OMNIROUTE_DISABLE_CONVERSATION_TRACKING (није постављено) open-sse/services/conversationTracker.ts Поставите на 1 да бисте зауставили прикупљање историје разговора. resolveConversationId() враћа резултат који се не прати пре читања SQLite-а или рашчлањивања историје порука, а обухваћени су и ID-ови сесија које је доставио клијент. Руковање сесијама рутирања остаје непромењено, а постојећи записи се не бришу. Намењено применама које не користе приказ разговора на контролној табли и желе да зауставе раст табеле потеза.

7. URL адресе и синхронизација са облаком

Променљива Подразумевана вредност Изворна датотека Опис
BASE_URL http://localhost:20128 src/lib/cloudSync.ts Серверска URL адреса преко које интерни послови синхронизације позивају /api/sync/cloud. Задржите је као URL адресу повратне петље/контејнера чак и када је апликација јавно доступна преко проксија.
CLOUD_URL (празно) src/lib/cloudSync.ts URL адреса крајње тачке посредника у облаку (премијум функција).
CLOUD_SYNC_TIMEOUT_MS 12000 src/lib/cloudSync.ts Временско ограничење HTTP захтева за синхронизацију са облаком.
OMNIROUTE_BUILD_PROFILE full Конфигурација Webpack изградње Профил током изградње (поставите на minimal да бисте физички изузели привилеговане модуле из пакета).
OMNIROUTE_STANDALONE_DIR .build/ самостални излаз scripts/build/colocate-standalone.mjs Замена директоријума самосталног излаза током изградње, који користи корак колокације након изградње. Није поставка током извршавања.
OMNIROUTE_CLOUD_SYNC_SECRET (празно) src/lib/cloudSync.ts Дељена тајна која се користи за проверу HMAC-SHA256 потписа одговора синхронизације са облаком.
OMNIROUTE_CLOUD_SYNC_SECRETS false src/lib/cloudSync.ts Поставите на true да бисте дозволили крајњој тачки синхронизације са облаком да препише локалне акредитиве. Подразумевана вредност је false.
OMNIROUTE_CLOUD_SYNC_ENFORCE_SIGNATURE false src/lib/cloudSync.ts Поставите на true да бисте одбацили непотписан одговор синхронизације са облаком када није конфигурисана локална тајна (#13679). Присутан потпис се увек проверава — и увек одбацује када OMNIROUTE_CLOUD_SYNC_SECRET није постављен — без обзира на ову заставицу. У v3.9 подразумевано се примењује обавезна провера.
OMNIROUTE_ZED_IMPORT_LEGACY_ONE_STEP false src/app/api/providers/zed/import/route.ts Поставите на true да бисте се вратили на понашање „увези све“ у једном кораку из v3.8.5, без потврде корисника.
NEXT_PUBLIC_BASE_URL http://localhost:20128 OAuth, контролна табла, синхронизација Јавно доступна URL адреса за OAuth redirect_uri, везе контролне табле и генерисане јавне URL адресе. Поставите је на стабилну јавну URL адресу када OAuth повратни позиви или генерисане везе за прегледач морају да користе канонски хост обрнутог проксија.
NEXT_PUBLIC_CLOUD_URL (празно) Клијентска страна Клијентски еквивалент променљиве CLOUD_URL.
NEXT_PUBLIC_APP_URL (није подешено) src/shared/services/cloudSyncScheduler.ts Застарела резервна вредност за NEXT_PUBLIC_BASE_URL.
OMNIROUTE_PUBLIC_BASE_URL (није подешено) Резолвер јавног порекла, URL-ови слика OmniRoute порекло највишег приоритета намењено прегледачу, које се користи за генерисање јавних URL-ова и проверу порекла у прегледачу ван контролне табле. Подесите ово када OpenWebUI или други релеј приступа OmniRoute-у преко интерног URL-а, али корисников прегледач мора да преузима генерисане медије преко LAN-а, тунела или јавног порекла. Немојте укључивати /v1.
OMNIROUTE_PROVIDER_MANIFEST_URL (није подешено) open-sse/config/providerPluginManifestUrl.ts Апсолутни URL манифеста додатка добављача који се оглашава пратећим клијентима. Када није подешен, OmniRoute изводи /api/v1/provider-plugin-manifest из порекла захтева или HOST/PORT.
OMNIROUTE_PUBLIC_PROTOCOL http open-sse/config/providerPluginManifestUrl.ts Протокол који се користи при извођењу URL-а манифеста додатка добављача из HOST/PORT када порекло захтева није доступно. Подесите на https иза јавног проксија који завршава TLS када није подешен експлицитни OMNIROUTE_PROVIDER_MANIFEST_URL.
OMNIROUTE_TRUST_PROXY (није подешено) src/server/origin/publicOrigin.ts Опциони режим поверења за прослеђена заглавља јавног порекла. Није подешено = не веруј заглављима Forwarded / X-Forwarded-* при безбедносним одлукама. true / loopback верује прослеђеном хосту/протоколу само од loopback проксија означеног токеном. private / lan такође верује прокси вршњацима у приватном LAN-у. У продукцији дајте предност експлицитном NEXT_PUBLIC_BASE_URL.
KIE_CALLBACK_URL (није подешено) open-sse/utils/kieTask.ts Јавни URL повратног позива за асинхроне kie.ai задатке. Замена највишег приоритета испред OMNIROUTE_KIE_CALLBACK_URL и OMNIROUTE_PUBLIC_URL.
OMNIROUTE_KIE_CALLBACK_URL (није подешено) open-sse/utils/kieTask.ts Алтернативни назив за KIE_CALLBACK_URL. Користи се као резервна вредност када примарна променљива није подешена.
OMNIROUTE_PUBLIC_URL (није подешено) open-sse/utils/kieTask.ts Јавно порекло које се користи за састављање URL-ова асинхроних повратних позива. Резервна вредност најнижег приоритета за kie.ai повратне позиве; користи се и као генерички јавни URL за друге релеје.
OMNIROUTE_CROF_USAGE_URL https://crof.ai/usage_api/ open-sse/services/usage.ts Крајња тачка за проверу CrofAI квоте коју користи страница „Коришћење“. Замените за релеје / тестне фикстуре.
OMNIROUTE_OPENCODE_QUOTA_URL https://opencode.ai/zen/go/v1/usage open-sse/services/opencodeQuotaFetcher.ts Званична OpenCode Go крајња тачка за коришћење, аутентификована API кључем, коју користи страница „Коришћење“. Замените за релеје / тестне фикстуре.
OPENCODE_SYNTHESIZE_CLI_HEADERS true open-sse/executors/opencode.ts Синтетише OpenCode CLI заглавља идентитета (User-Agent, x-opencode-client/project, UUID-ове захтева/сесије) за opencode-go/zen узводне захтеве које клијент није послао, како би их Cloudflare на VPS излазу прихватио (#6210/#5997). Подразумевано укључено од #10571; искључите помоћу false/0/no/off.
OPENCODE_USER_AGENT opencode open-sse/executors/opencode.ts Подразумевани User-Agent који се користи када је OPENCODE_SYNTHESIZE_CLI_HEADERS укључен и није подешена замена <PROVIDER>_USER_AGENT за појединачног добављача. Примењује се само на opencode извршиоце.
OPENCODE_CLIENT desktop open-sse/executors/opencode.ts Вредност синтетисаног заглавља x-opencode-client када је OPENCODE_SYNTHESIZE_CLI_HEADERS укључен.
OPENCODE_PROJECT global open-sse/executors/opencode.ts Вредност за синтетизовано заглавље x-opencode-project када је OPENCODE_SYNTHESIZE_CLI_HEADERS укључен.
OMNIROUTE_OLLAMA_CLOUD_USAGE_URL https://ollama.com/settings open-sse/services/usage.ts URL подешавања услуге Ollama Cloud који се користи за прикупљање података о квоти. Може се заменити за посредничке сервисе / тестне фикстуре.
OLLAMA_USAGE_COOKIE (није постављено) open-sse/services/usage.ts Колачић __Secure-session услуге Ollama Cloud који се користи за прикупљање података о квоти са странице подешавања. Осетљив податак; када је конфигурисано више налога, препоручује се коришћење поља на контролној табли за сваку везу.
OLLAMA_CLOUD_USAGE_COOKIE (није постављено) open-sse/services/usage.ts Алтернативна променљива окружења за колачић __Secure-session услуге Ollama Cloud. Осетљив податак; када је конфигурисано више налога, препоручује се коришћење поља на контролној табли за сваку везу.
OMNIROUTE_OLLAMA_USAGE_COOKIE (није постављено) open-sse/services/usage.ts Алтернативна променљива окружења за колачић __Secure-session услуге Ollama Cloud, која се користи пре краћих алијаса. Осетљив податак; када је конфигурисано више налога, препоручује се коришћење поља на контролној табли за сваку везу.
OMNIROUTE_CODEWHISPERER_BASE_URL https://codewhisperer.us-east-1.amazonaws.com open-sse/services/usage.ts Крајња тачка за ограничења коришћења услуге CodeWhisperer (AWS Kiro). Може се заменити за посредничке сервисе / тестне фикстуре.

Important

При примени иза реверзног проксија (nginx, Caddy), поставите NEXT_PUBLIC_BASE_URL на свој стабилни јавни URL (нпр. https://omniroute.example.com) када OAuth повратни позиви или генерисане јавне везе морају да користе тај назив хоста. Без тога OAuth повратни позиви могу бити неуспешни јер се redirect_uri неће подударати, а генерисане јавне везе могу упућивати на интерно порекло контејнера.

Задржите BASE_URL као интерни loopback URL или URL контејнера за задатке између сервера. Немојте користити Origin прегледача или јавни назив хоста за интерна самостална преузимања која садрже акредитиве.

Аутентификовани уписи са контролне табле не захтевају статички јавни основни URL: контролна табла шаље небезбедне захтеве истог порекла са CSRF токеном везаним за сесију. OmniRoute и даље централизује проверу јавног порекла за интеграције прегледача које не користе контролну таблу: најпре се верује експлицитним променљивама окружења за јавни URL; необрађена заглавља Forwarded / X-Forwarded-* се игноришу осим ако је OMNIROUTE_TRUST_PROXY омогућен и непосредни прокси чвор је означен токеном као поуздан. Немојте користити CORS подешавања да бисте исправили захтеве истог порекла са контролне табле; CORS служи само за клијенте прегледача који приступају са другог порекла.


8. Одлазни прокси

Усмерите позиве ка спољним LLM провајдерима преко HTTP или SOCKS5 проксија ради контроле одлазног саобраћаја, географског усмеравања или маскирања IP адресе.

Променљива Подразумевано Изворна датотека Опис
ENABLE_SOCKS5_PROXY true open-sse/executors Омогућава SOCKS5 прокси агент за позиве ка спољним сервисима. Искључите га вредношћу false.
NEXT_PUBLIC_ENABLE_SOCKS5_PROXY true На страни клијента Омогућава клијентској страни да зна да ли је SOCKS5 доступан.
PROXY_SKIP_RECENTLY_FAILED false src/shared/utils/featureFlags.ts Опциона заставица функције (погледајте FEATURE_FLAGS.md; замена вредности из базе података контролне табле има предност). Скупови проксија и ротација по налогу привремено престају да поново користе члана који је управо отказао (одбијена TCP провера или одговор 429 преко њега), током периода који се удвостручује при сваком поновљеном отказу, до задате горње границе. Вредност true (или 1, yes) то омогућава.
HTTP_PROXY (није подешено) Node.js стандард HTTP прокси за позиве ка спољним сервисима.
HTTPS_PROXY (није подешено) Node.js стандард HTTPS прокси за позиве ка спољним сервисима.
ALL_PROXY (није подешено) Node.js стандард Универзални прокси (подржава socks5://).
OMNIROUTE_PROXY_ECHO_URL (није подешено) src/lib/proxyEchoTarget.ts Везује циљ за враћање IP адресе, који се користи при проверама одлазног саобраћаја преко проксија, за један URL. Ако није подешено, провера прво покушава api64.ipify.org, а затим api4.ipify.org, како тунели који подржавају само IPv4 не би били пријављени као недоступни (#9694).
NO_PROXY (није подешено) Node.js стандард Називи хостова/IP адресе, раздвојени зарезима, за које треба заобићи прокси.
OMNIROUTE_PROXY_DISPATCHER_CONNECTIONS 32 open-sse/utils/proxyDispatcher.ts Максималан број истовремених сокета по кешираном HTTP/SOCKS прокси диспечеру. Дуготрајним SSE токовима, као што је Codex /v1/responses, потребно је више од једне везе када више захтева дели исти прокси на нивоу налога. Вредности веће од 256 ограничавају се на ту вредност.
SOCKS_HANDSHAKE_TIMEOUT_MS 10000 open-sse/utils/socksConnectorWithFamily.ts Временско ограничење за SOCKS5 руковање (повезивање), у ms. Повећајте га када је један хост резиденцијалног мрежног пролаза изложен великом броју истовремених захтева (нпр. 100 истовремених захтева) — стварно руковање може трајати дуже од 10s када је скуп преоптерећен, иако је прокси доступан, што би се иначе приказало као лажна грешка [Proxy Fast-Fail] Proxy unreachable. Ограничено је на 120000.
PROXY_FAIL_OPEN false src/sse/handlers/chatHelpers.ts Када је false (подразумевано), захтев чији додељени прокси не може да се разреши бива одбијен (fail-closed) уместо да се врати на директну везу — чиме се спречава откривање стварне IP адресе. Подесите на true да бисте вратили раније DIRECT резервно понашање.
ENABLE_TLS_FINGERPRINT false open-sse/executors Лажира TLS отисак помоћу wreq-js (имитира Chrome 124). Спречава JA3/JA4 блокирање.
TLS_FINGERPRINT_PROVIDERS (није подешено) open-sse/utils/proxyFetch.ts Листа дозвољених добављача, раздвојена зарезима, за ново проксирано TLS усмеравање (open-sse/utils/proxyFetch.ts). Директни TLS задржава своје наслеђено понашање када вредност није подешена; само ови добављачи се усмеравају преко моста за Chrome-124 отисак.
OMNIROUTE_TURNSTILE_IGNORE_TLS_ERRORS false open-sse/services/claudeTurnstileSolver.ts Омогућава да контекст Playwright прегледача за Claude Turnstile игнорише грешке HTTPS сертификата.

Сценарији

Сценарио Конфигурација
SOCKS5 кроз SSH тунел ALL_PROXY=socks5://127.0.0.1:7890, ENABLE_SOCKS5_PROXY=true
Корпоративни HTTP прокси HTTP_PROXY=http://proxy.corp.com:3128, HTTPS_PROXY=http://proxy.corp.com:3128, NO_PROXY=localhost,internal.corp.com
Заштита од узимања отиска ENABLE_TLS_FINGERPRINT=true — захтева wreq-js (укључен)
Контролисан излаз / без директног приступа Оставите PROXY_FAIL_OPEN=false (подразумевано). Захтеви се прекидају грешком када прокси није доступан, уместо да процуре директним путем.
Наслеђени режим / развој — дозволи директни резервни приступ PROXY_FAIL_OPEN=true. Враћа понашање пре безбедносног ојачавања: директна веза се користи када разрешавање проксија не успе.

Напомена (заобилажење NVIDIA валидације — #3226): NVIDIA крајња тачка за валидацију API кључа застаје када се усмерава кроз глобални прокси/TLS-закрпљени fetch (undici dispatcher → 504). src/lib/providers/validation.ts::directHttpsRequest() намерно заобилази прокси закрпу за тај један позив валидације помоћу safeOutboundFetch({ bypassProxyPatch: true }). Ово је документовани, ограничени изузетак — не утиче на излазни саобраћај за ћаскање/коришћење. Опсег заобилажења је фиксиран тестом tests/unit/proxy-bypass-scope-guard-3226.test.ts.


9. Интеграција CLI алата

Контролише како OmniRoute открива и покреће CLI пратеће процесе (Claude Code, Codex итд.).

Променљива Подразумевано Изворна датотека Опис
CLI_MODE auto src/shared/services/cliRuntime.ts auto = претражује системску путању PATH; manual = користи само експлицитне путање.
CLI_EXTRA_PATHS (није подешено) src/shared/services/cliRuntime.ts Додатне ставке путање PATH за проналажење CLI бинарних датотека (раздвојене двотачкама).
CLI_CONFIG_HOME (није подешено) src/shared/services/cliRuntime.ts Замењује матични директоријум за читање CLI конфигурација (~/.claude, ~/.codex). Мора бити апсолутна путања унутар матичног директоријума процеса — или, у контејнеру, путања монтирана помоћу bind mount-а (тако функционише /host-home). За све остало користи се матични директоријум.
CLI_ALLOW_CONFIG_WRITES true src/shared/services/cliRuntime.ts Омогућава OmniRoute-у да уписује CLI конфигурационе датотеке (освежавање токена, подаци сесије). Поставите на false како би сваки покушај уписа CLI конфигурације био неуспешан уз експлицитну грешку „уписивање је онемогућено“.
CLI_CLAUDE_BIN claude src/shared/services/cliRuntime.ts Прилагођена путања до Claude CLI бинарне датотеке.
CLI_CODEX_BIN codex src/shared/services/cliRuntime.ts Прилагођена путања до Codex CLI бинарне датотеке.
CLI_DROID_BIN droid src/shared/services/cliRuntime.ts Прилагођена путања до Droid CLI бинарне датотеке.
CLI_OPENCLAW_BIN openclaw src/shared/services/cliRuntime.ts Прилагођена путања до OpenClaw CLI бинарне датотеке.
CLI_CURSOR_BIN agent, затим cursor src/shared/services/cliRuntime.ts Прилагођена путања до бинарне датотеке Cursor агента. Ако није наведена, детекција прво покушава са agent, а затим прелази на cursor.
CLI_CLINE_BIN cline src/shared/services/cliRuntime.ts Прилагођена путања до Cline CLI бинарне датотеке.
CLI_5DIVE_BIN 5dive src/shared/services/cliRuntime.ts Прилагођена путања до 5dive CLI бинарне датотеке.
CLI_5DIVE_STATE_DIR /var/lib/5dive src/shared/services/cliRuntime.ts Системски директоријум стања за 5dive (аутентификациони профили у власништву root корисника); одговара подразумеваној вредности STATE_DIR самог 5dive-а.
CLI_CONTINUE_BIN cn src/shared/services/cliRuntime.ts Прилагођена путања до Continue CLI бинарне датотеке.
CLI_QODER_BIN qodercli src/shared/services/cliRuntime.ts Прилагођена путања до Qoder CLI бинарне датотеке.
CLI_QWEN_BIN qwen src/shared/services/cliRuntime.ts Прилагођена путања до Qwen Code CLI бинарне датотеке.
CLI_AIDER_BIN aider src/shared/services/cliRuntime.ts Прилагођена путања до Aider CLI бинарне датотеке.
CLI_GOOSE_BIN goose src/shared/services/cliRuntime.ts Прилагођена путања до Goose CLI бинарне датотеке.
CLI_GEMINI_BIN gemini src/shared/services/cliRuntime.ts Прилагођена путања до Google Gemini CLI бинарне датотеке — само за детекцију и провере исправности на страни сервера; omniroute run gemini проналази бинарну датотеку gemini преко системске путање PATH.
CLI_KILO_BIN kilocode src/shared/services/cliRuntime.ts Прилагођена путања до Kilo Code CLI бинарне датотеке.
CLI_OPENCODE_BIN opencode src/shared/services/cliRuntime.ts Прилагођена путања до OpenCode CLI бинарне датотеке.
CLI_HERMES_BIN hermes src/shared/services/cliRuntime.ts Прилагођена путања до Hermes бинарне датотеке. Заједничка је за обе ставке каталога (hermes и hermes-agent).
CLI_FORGE_BIN forge src/shared/services/cliRuntime.ts Прилагођена путања до ForgeCode CLI бинарне датотеке.
CLI_JCODE_BIN jcode src/shared/services/cliRuntime.ts Прилагођена путања до jcode CLI бинарне датотеке.
CLI_DEEPSEEK_TUI_BIN deepseek-tui src/shared/services/cliRuntime.ts Прилагођена путања до DeepSeek TUI бинарне датотеке.
CLI_CODEWHALE_BIN codewhale src/shared/services/cliRuntime.ts Прилагођена путања до CodeWhale CLI бинарне датотеке.
CLI_SMELT_BIN smelt src/shared/services/cliRuntime.ts Прилагођена путања до Smelt CLI бинарне датотеке.
CLI_PI_BIN pi src/shared/services/cliRuntime.ts Прилагођена путања до Pi (pi-coding-agent) бинарне датотеке.
CLI_CRUSH_BIN crush src/shared/services/cliRuntime.ts Прилагођена путања до Crush CLI бинарне датотеке.
CLI_OMP_BIN omp src/shared/services/cliRuntime.ts Прилагођена путања до бинарне датотеке Oh My Pi (omp) агента.
CLI_LETTA_BIN letta src/shared/services/cliRuntime.ts Прилагођена путања до Letta CLI бинарне датотеке.
CLI_PRIME_AGENT_BIN prime-agent src/shared/services/cliRuntime.ts Прилагођена путања до Prime Agent (Prime Intellect) бинарне датотеке.
CLI_WINDSURF_BIN (нема) src/shared/services/cliRuntime.ts Прилагођена путања до Windsurf бинарне датотеке. Windsurf се испоручује без подразумеване команде — откривање бинарне датотеке остаје онемогућено док се ово не подеси.
CLI_DEVIN_BIN devin open-sse/executors/devin-cli.ts Прилагођена путања до Devin CLI бинарне датотеке (v3.8.0). Користи је Windsurf/Devin извршилац.
DEVIN_DESKTOP_VERSION 3.6.27 open-sse/executors/devin-desktop.ts Devin Desktop ide_version. Замењене вредности морају да користе формат x.y.z; неважеће вредности се враћају на проверену подразумевану вредност.
DEVIN_DESKTOP_EXTENSION_VERSION 1.48.2 open-sse/executors/devin-desktop.ts Укључена Codeium/language-server вредност extension_version, различита од Desktop вредности ide_version. Замењене вредности морају да користе x.y.z; за неважеће вредности користи се укључена подразумевана вредност.
CLI_DEVIN_AGENTIC_BIN devin open-sse/executors/devin-cli-agentic.ts Замена за Devin CLI намењена искључиво агентском мосту. Извршилац прихвата само локални ACP stdio као изворни ток.
DEVIN_AGENTIC_HOME (обавезно) open-sse/executors/devin-cli-agentic.ts Апсолутна изолована матична фасцикла за агентски Devin потпроцес; прихваћене путање моста су /home/bridge и путање .sandbox локалне за задатак (на Windows систему, C:\...\.sandbox\...).
DEVIN_AGENTIC_ACP_TIMEOUT_MS 120000 open-sse/executors/devin-cli-agentic.ts Максимално трајање једног Devin ACP потеза пре него што мост прекине подређени процес и врати изричиту грешку прекорачења времена.
DEVIN_BRIDGE_MODEL devin-cli-agentic/swe-1-7 docker/devin-bridge/compose.yml Главни псеудоним Claude Code модела за изоловани мост. Активни тестни оквир замењује пример моделом који враћа тренутни Devin налог.
DEVIN_BRIDGE_SONNET_MODEL DEVIN_BRIDGE_MODEL docker/devin-bridge/compose.yml Псеудоним изолованог моста који се користи када Claude Code захтева подразумевани Sonnet модел.
DEVIN_BRIDGE_OPUS_MODEL DEVIN_BRIDGE_MODEL docker/devin-bridge/compose.yml Псеудоним изолованог моста који се користи када Claude Code захтева подразумевани Opus модел.
DEVIN_BRIDGE_HAIKU_MODEL DEVIN_BRIDGE_MODEL docker/devin-bridge/compose.yml Псеудоним изолованог моста који се користи када Claude Code захтева подразумевани Haiku модел.
DEVIN_BRIDGE_SUBAGENT_MODEL DEVIN_BRIDGE_MODEL docker/devin-bridge/compose.yml Псеудоним изолованог моста који се користи за Claude Code подагенте.
DEVIN_SEAT_API_URL https://server.codeium.com open-sse/services/usage/devinCli.ts Опционо замењивање Codeium API-ја за управљање лиценцама који користи квота Devin CLI-ја (GetUserStatus).
AUGGIE_BIN auggie open-sse/executors/auggie.ts Замењивање апсолутне путање до бинарне датотеке Augment (Auggie) CLI-ја коју користи локални добављач auggie. Ако није подешено, користи се CLI_AUGGIE_BIN, а затим претрага у PATH-у.
CLI_AUGGIE_BIN auggie open-sse/executors/auggie.ts Алтернативна променљива за замену путање до бинарне датотеке Augment (Auggie) CLI-ја (проверава се после AUGGIE_BIN).
ZCODE_BIN zcode open-sse/executors/zcode.ts Бинарна датотека коју користи stdio клијент локалног добављача zcode. Ако није подешено, користи се zcode из PATH-а.
ZCODE_ARGS open-sse/executors/zcode.ts JSON низ (≤16 ниски) додатних аргумената који се прослеђују бинарној датотеци zcode када се покреће преко cliTools.
ZCODE_CWD process.cwd() open-sse/executors/zcode.ts Радни директоријум за потпроцес ZCode серверске апликације.
ZCODE_PROVIDER_ID builtin:zai-coding-plan open-sse/executors/zcode.ts Замењивање ID-а добављача који се шаље серверској апликацији.
ZCODE_SERVER_RUNTIME_ROOT ~/.zcode/server open-sse/executors/zcode.ts Корен извршног окружења ZCode серверске апликације (где се налазе укључени node и zcode-server.cjs).
ZCODE_SERVER_NODE <runtimeRoot>/node open-sse/executors/zcode.ts Извршна датотека Node-а која се користи за покретање ZCode серверске апликације.
ZCODE_SERVER_ENTRY <runtimeRoot>/zcode-server.cjs open-sse/executors/zcode.ts Улазна скрипта серверске апликације која се користи за покретање ZCode сервера.
ZCODE_STARTUP_TIMEOUT_MS 10000 open-sse/executors/zcode.ts Временско ограничење покретања (ms) након којег се покретање ZCode серверске апликације сматра неуспешним.
ZCODE_RPC_TIMEOUT_MS 30000 open-sse/executors/zcode.ts Временско ограничење RPC-а по захтеву (ms) за позив ZCode серверске апликације.
ZCODE_TURN_TIMEOUT_MS 120000 open-sse/executors/zcode.ts Максимално трајање (ms) једног ZCode циклуса пре него што га надзорник прекине због истека времена.
ZCODE_POLL_INTERVAL_MS 250 open-sse/executors/zcode.ts Интервал провере (ms) завршетка ZCode циклуса.
HERMES_HOME ~/.hermes src/lib/cli-helper/config-generator/hermesHome.ts Матични директоријум Hermes Agent-а у којем OmniRoute чита/уписује конфигурацију Hermes CLI-ја. Одговара променљивој окружења коју Hermes PowerShell инсталатер поставља на Windows-у (%LOCALAPPDATA%\hermes).

Аутоматска синхронизација CLI профила

Ове заставице функција су опционе и подразумевано су искључене. Такође се могу укључити или искључити на контролној табли CLI Code-а.

Променљива Подразумевано Изворна датотека Опис
OMNIROUTE_AUTO_SYNC_CODEX_PROFILES false src/shared/constants/featureFlagDefinitions.ts Након синхронизације модела добављача, аутоматски поново уписује датотеке профила ~/.codex/*.config.toml из актуелног каталога. Захтева CLI_ALLOW_CONFIG_WRITES; никада не мења активну/подразумевану Codex конфигурацију, аутентификацију, Codex-lb подешавања нити избор добављача.
OMNIROUTE_AUTO_SYNC_CLAUDE_PROFILES false src/shared/constants/featureFlagDefinitions.ts Након синхронизације модела добављача, аутоматски поново уписује датотеке Claude Code профила ~/.claude/profiles/<name>/settings.json из актуелног каталога. Захтева CLI_ALLOW_CONFIG_WRITES; никада не мења активну/подразумевану Claude конфигурацију, аутентификацију нити избор добављача.

Docker пример

# Монтирајте бинарне датотеке хоста у контејнер и наведите OmniRoute-у где се налазе:
CLI_EXTRA_PATHS=/host-cli/bin
CLI_CONFIG_HOME=/host-home
CLI_ALLOW_CONFIG_WRITES=true
CLI_CLAUDE_BIN=/host-cli/bin/claude

CLI_CONFIG_HOME ступа на снагу само када је путања заиста bind-монтирана са хоста — упарите је са монтирањима као што је ~/.codex:/host-home/.codex:rw (погледајте профил host у датотеци docker-compose.yml). Путања која се не налази ни у матичном директоријуму корисника контејнера нити у bind mount-у игнорише се, јер би уписани подаци били одбачени приликом поновног креирања контејнера.

Имиџ се покреће као USER node, па немонтирани /root није важећа замена.

Променљива Подразумевано Изворна датотека Опис
OMNIROUTE_CONTAINER (аутоматски) src/shared/utils/containerEnv.ts Принудно укључује (1/true) или искључује (0/false) откривање контејнера. Потребно је само у окружењима која аутоматско откривање пропусти.
OMNIROUTE_ALLOW_CONTAINER_CONFIG_WRITE false src/shared/services/cliRuntime.ts Свеједно дозвољава CLI алатки да уписује конфигурацију у немонтирану путању контејнера. CLI еквивалент је --allow-container-write.

Помоћне функције CLI бинарне датотеке (omniroute)

Ове променљиве подешавају понашање саме omniroute CLI бинарне датотеке (а не претходно наведено откривање sidecar-а).

Променљива Подразумевано Изворна датотека Опис
OMNIROUTE_LANG (системски) bin/cli/i18n.mjs Принудно поставља језик CLI излаза. BCP-47 локал (нпр. en, pt-BR). Има предност над системским променљивама окружења за локализацију (LC_ALL, LC_MESSAGES).
OMNIROUTE_SHOW_LOG (непостављено) bin/cli/runtime/processSupervisor.mjs Поставите на 1 да бисте проследили stdout/stderr сервера терминалу у надгледаном режиму. Еквивалентно заставици --log команде omniroute serve.
OMNIROUTE_CLI_TOKEN (непостављено) bin/cli/api.mjs Токен за машинску аутентификацију који се умеће као заглавље x-omniroute-cli-token. Аутоматски се генерише у задатку 8.12.
OMNIROUTE_HTTP_TIMEOUT_MS 30000 bin/cli/api.mjs HTTP временско ограничење по покушају (ms) за CLI → сервер захтеве.
OMNIROUTE_READY_TIMEOUT_MS 60000 bin/cli/utils/pid.mjs Максимално време (ms) током којег CLI чека крајњу тачку за проверу стања сервера пре него што прикаже упозорење о истеку времена. Корисно за спора хладна покретања (нпр. Windows). Може се поставити и помоћу --ready-timeout.
OMNIROUTE_VERBOSE 0 bin/cli/api.mjs Поставите на 1 да бисте током CLI команди исписивали дијагностику поновних покушаја/одлагања у stderr.
OMNIROUTE_PLUGIN_PATH (непостављено) bin/cli/plugins.mjs Прилагођени директоријум за откривање CLI додатака (omniroute-cmd-* пакети). Када није постављено, подразумевана вредност је ~/.omniroute/plugins/. Само за CLI — никада не стиже до серверског скенера додатака, на који указује OMNIROUTE_PLUGINS_DIR (одељак 2).

10. Интерне интеграције агента и MCP-а

Променљива Подразумевана вредност Изворна датотека Опис
OMNIROUTE_BASE_URL аутоматско откривање open-sse/mcp-server/server.ts Експлицитни URL преко којег MCP/A2A алати приступају OmniRoute-у. Има предност над аутоматским откривањем localhost-а.
OMNIROUTE_API_KEY (није подешено) MCP/A2A модули API кључ за интерне позиве MCP алата и A2A вештина.
OMNIROUTE_API_KEY_ID (није подешено) open-sse/mcp-server/audit.ts ID кључа за приписивање у MCP евиденцији ревизије.
ROUTER_API_KEY (није подешено) Застарело Застарели псеудоним за OMNIROUTE_API_KEY.
OMNIROUTE_A2A_HISTORY_RETENTION_DAYS 30 src/lib/a2a/taskManager.ts Број дана током којих се историја A2A задатака чува у локалној бази података пре него што свакодневно чишћење избрише ред. Ако није подешено, није број или је <= 0, користи се 30.
OMNIROUTE_A2A_MEMORY_HITS 1 src/lib/a2a/taskExecution.ts Прекидач за онемогућавање функције опсервабилности A2A погодака у меморији. Поставите на 0 да бисте у потпуности прескочили претрагу меморије за задатак; било која друга вредност (укључујући неподешену) задржава је омогућеном.
OMNIROUTE_ISSUE_AGENT_ENABLED false src/app/api/issue-agent/runs/route.ts Омогућава локалну/офлајн крајњу тачку агента за проблеме за забележену тријажу. Оставите онемогућено осим ако изричито не покрећете локалне токове рада забележене тријаже.
OMNIROUTE_ISSUE_AGENT_TIMEOUT_MS (није подешено) src/lib/issueAgent/execution.ts Временско ограничење (ms) за једно покретање забележене тријаже агента за проблеме. Ограничено је интерним максимумом; ако није подешено или је неважеће, користи се уграђена подразумевана вредност.
OMNIROUTE_CONTEXT (активни контекст) bin/cli/program.mjs, bin/cli/api.mjs Контекст/профил удаљеног режима CLI-ја за omniroute команде; има предност над активним контекстом у локалном складишту контекста. Еквивалентно опцији --context <name>.
OMNIROUTE_CONTEXT_KEYCHAIN_DISABLED 0 bin/cli/contexts.mjs Онемогућава опциони keytar позадински систем OS привеска за кључеве за акредитиве CLI контекста. Када је омогућено, акредитиви остају у датотеци config.json са режимом 0600, а CLI једнократно приказује упозорење о коришћењу резервног решења; намењено свесно изабраном раду без графичког окружења или у контејнеру.
OMNIROUTE_MCP_ENFORCE_SCOPES true open-sse/mcp-server/server.ts Примењује контролу приступа засновану на опсезима за позиве MCP алата.
OMNIROUTE_MCP_SCOPES (сви) open-sse/mcp-server/server.ts Опсези раздвојени зарезима: admin, combos, health, models, routing, budget, metrics, pricing, memory, skills.
OMNIROUTE_MCP_COMPRESS_DESCRIPTIONS false open-sse/mcp-server/descriptionCompressor.ts Компримује описе MCP алата пре серијализације манифеста. Вредности за омогућавање: 1, true, on.
OMNIROUTE_MCP_DESCRIPTION_COMPRESSION rtk open-sse/mcp-server/descriptionCompressor.ts Алгоритам/профил компресије. Вредности за онемогућавање: 0, false, off.
OMNIROUTE_MCP_FETCH_TIMEOUT_MS 10000 open-sse/mcp-server/fetchTimeout.ts Временско ограничење (ms) за интерна управљачка читања MCP сервера (стање, отпорност, комбинације, квота, употреба).
OMNIROUTE_MCP_UPSTREAM_TIMEOUT_MS 60000 open-sse/mcp-server/fetchTimeout.ts Временско ограничење за прекид (ms) за MCP кораке који чекају добављача (route_request, web_search, web_fetch).
OMNIROUTE_CORPUS_CACHE_SIZE 5 src/lib/localCorpus/configured.ts Максималан број инстанци индекса локалног корпуса кешираних у меморији (LRU, по једна за сваки индексирани коренски директоријум). Ограничено на минимум 1.
MODEL_SYNC_INTERVAL_HOURS 24 src/shared/services/modelSyncScheduler.ts Интервал синхронизације каталога модела у сатима.
PROVIDER_LIMITS_SYNC_INTERVAL_MINUTES 70 src/lib/usage/providerLimits.ts Интервал провере ограничења брзине и квоте добављача.
PROVIDER_LIMITS_SYNC_SPACING_MS 1500 src/lib/usage/providerLimits.ts Размак (ms) између узастопних преузимања OAuth квота током групне синхронизације; OAuth везе се обрађују једна по једна како би се избегло нагло оптерећење надређеног сервиса. 0 искључује ово понашање (истовремено извршавање).
OMNIROUTE_QUOTA_FETCH_MIN_INTERVAL_MS 250 open-sse/services/quotaFetchThrottle.ts Минимални интервал (ms) између узастопних преузимања квота од надређеног сервиса на путањи провере пре захтева/надгледања за сваки захтев; временски раздваја истовремене мрежне позиве како велики број налога са једне IP адресе не би нагло оптеретио надређени сервис. Повезано са програмима за преузимање квота за Codex (/wham/usage), DeepSeek, Bailian (оба места преузимања), OpenCode и Crof (#6009, #6911). Генеричка путања прослеђивања usage.ts::getUsageForProvider (github/glm/minimax/nanogpt/xai/итд.) још није обухваћена — прати се засебно. Погоци кеша остају непромењени. 0 онемогућава; ограничено на 0..5000.
PROVIDER_LIMITS_POST_USAGE_REFRESH_DELAY_MS 5000 src/lib/usage/providerLimits.ts Кашњење (ms) пре освежавања ограничења добављача након стварног догађаја коришћења, чиме се API-ју за квоте надређеног сервиса даје време да региструје потрошњу.
OMNIROUTE_LOGIN_BROWSER_PATH аутоматско откривање open-sse/services/adobeFireflyBrowserLogin.ts Апсолутна путања до системске извршне датотеке Chrome-а или Edge-а која се користи за интерактивно пријављивање на Adobe Firefly и обнављање ван екрана.
ADOBE_FIREFLY_BROWSER_REFRESH омогућено open-sse/services/adobeFireflySession.ts Одржава IMS и стање ризика прегледача ажурним помоћу Chrome CDP сесија ограничених на налог. Подесите на 0 да бисте онемогућили обнављање у прегледачу.
ADOBE_FIREFLY_SESSION_DISK омогућено open-sse/services/adobeFireflySession.ts Трајно чува поправљене Adobe сесије у DATA_DIR између поновних покретања процеса. Подесите на 0 да би се сесије чувале само у меморији.
ADOBE_FIREFLY_MIN_SUBMIT_GAP_MS 12000 open-sse/services/adobeFireflySession.ts Минимални размак у милисекундама између слања захтева за генерисање у Adobe Firefly; 0 онемогућава размак.
ADOBE_FIREFLY_BATCH_EXTRA_GAP_MS 15000 open-sse/services/adobeFireflySession.ts Додатни период мировања у милисекундама након сваког трећег успешног слања Adobe захтева.
ADOBE_FIREFLY_SUBMIT_BASE_DELAY_MS 8000 open-sse/services/adobeFireflyClient.ts Основно експоненцијално одлагање у милисекундама након привремених Adobe 408 одговора; комбинује се са размаком између слања током највише пет покушаја.
OMNIROUTE_DISABLE_BACKGROUND_SERVICES false src/instrumentation-node.ts Онемогућава све позадинске сервисе (синхронизацију, цене, освежавање модела). Корисно за CI/тестирање.
OMNIROUTE_ENABLE_RUNTIME_BACKGROUND_TASKS (није подешено) src/lib/config/runtimeSettings.ts Принудно укључује позадинске задатке када је откривено аутоматизовано тестирање. Подесите 1 да бисте заобишли хеуристику тестирања.
OMNIROUTE_BUDGET_RESET_JOB_INTERVAL_MS 600000 src/lib/jobs/budgetResetJob.ts Учесталост провере ресетовања буџета (ms). Минимум 10000.
OMNIROUTE_CONNECTION_RECOVERY_INTERVAL_MS 60000 src/lib/quota/connectionRecovery.ts Интервал проактивног опоравка веза након периода хлађења (ms): поново проверава везе чији је привремени rate_limited_until истекао, ван критичне путање захтева. Минимум је 5000.
OMNIROUTE_DISABLE_CONNECTION_RECOVERY false src/lib/quota/connectionRecovery.ts Онемогућава планер проактивног опоравка веза након периода хлађења (лењи опоравак у getProviderCredentials и даље се примењује).
OMNIROUTE_REASONING_CACHE_CLEANUP_INTERVAL_MS 1800000 src/lib/jobs/reasoningCacheCleanupJob.ts Интервал чишћења кеша за резоновање (ms). Минимум је 60000.
OMNIROUTE_REASONING_MIN_BUDGET није подешено (онемогућено) open-sse/services/reasoningTokenBuffer.ts Опционо укључивање доње границе буџета излаза за моделе који размишљају: позиваочева вредност max_tokens у опсегу [256, доња граница) повећава се на доњу границу (уз ограничење горњом границом излаза модела). Није подешено = буџети клијента се никада не повећавају (#9507).
OMNIROUTE_LOG_EXPORT_CRON 0 * * * * src/lib/jobs/logExportJob.ts Cron израз (UTC) за задатак извоза евиденције позива, који обрађује свако омогућено одредиште за извоз евиденције.
OMNIROUTE_CONFIG_HOT_RELOAD_MS 5000 src/lib/config/hotReload.ts Интервал прозивања (ms) за динамичко поновно учитавање конфигурације. Вредност мања од 1000 се одбија.
OMNIROUTE_DISABLE_REDIS_AUTH_CACHE (омогућено) src/lib/db/apiKeys.ts Подесите на 1 да бисте заобишли Redis кеш за аутентификацију API кључем (приморава читање из базе података).
OMNIROUTE_RTK_TRUST_PROJECT_FILTERS 0 open-sse/services/compression/engines/rtk/filterLoader.ts Сматрајте поузданим правила RTK филтера пројекта којима управља корисник, без строгих провера потписа.
OMNIROUTE_LITE_MAX_TOOL_LENGTH 2000 open-sse/services/compression/lite.ts Ограничење броја знакова за Lite проактивно скраћивање резултата алата када lite.maxToolLength није подешен. Опсег је 2561000000. Подешавање контролне табле има предност над овом променљивом окружења.
OMNI_COMPRESSION_WORKERS 2 open-sse/services/compression/compressionWorkerPool.ts Максималан број истовремених синхроних RTK/Caveman радника; додатни задаци чекају по FIFO редоследу.
OMNI_COMPRESSION_WORKER_TIMEOUT_MS 120000 open-sse/services/compression/compressionWorkerPool.ts Временско ограничење по задатку у милисекундама. Радници којима време истекне се прекидају, а захтев се прослеђује непромењен.
OMNI_COMPRESSION_WORKER_IDLE_MS 60000 open-sse/services/compression/compressionWorkerPool.ts Период неактивности у милисекундама након којег се некоришћени радник за компресију прекида.
COMPRESSION_PIPELINE_BREAKER_ENABLED false open-sse/services/compression/pipelineEngineBreaker.ts Главни прекидач заштитног прекидача по механизму у T02 сложеном процесу. Опционо се укључује (подразумевано искључено) — када је укључен, механизам који више пута изазове изузетак у различитим захтевима прескаче се (уз прослеђивање без измена) током периода хлађења; искључено = наслеђено понашање идентично на нивоу бајтова.
COMPRESSION_PIPELINE_BREAKER_THRESHOLD 3 open-sse/services/compression/pipelineEngineBreaker.ts Број узастопних неуспеха у различитим захтевима пре него што се заштитни прекидач механизма отвори.
COMPRESSION_PIPELINE_BREAKER_COOLDOWN_MS 30000 open-sse/services/compression/pipelineEngineBreaker.ts Број милисекунди током којих се отворени механизам прескаче пре пробе у полуотвореном стању.
COMPRESSION_CCR_RETRIEVAL_RAMP_FACTOR 2 open-sse/services/compression/engines/ccr/index.ts T08/H8 CCR постепено повећање на основу повратних информација о преузимању: свако претходно преузимање сачуваног блока линеарно повећава његов ефективни minChars (садржај који се често преузима мање се компресује; >=3 преузимања = никада се не компресује). 1 онемогућава постепено повећање (бинарно прескакање само на прагу).
COMPRESSION_CCR_DURABLE_STORE true open-sse/services/compression/engines/ccr/index.ts Трајно CCR складиште блокова (#9061). Подупире складиште у меморији помоћу SQLite-а како би блок опстао након LRU избацивања, истека TTL-а, поновног покретања или преузимања које доспе на другу инстанцу. Поставите на false да би блокови остали само у меморији. Блокови већи од 512KB и окружења у облаку остају само у меморији без обзира на ово подешавање.
COMPRESSION_PREFIX_FREEZE_ENABLED false open-sse/services/compression/prefixFreeze.ts Главни прекидач за замрзавање префикса на основу уочене употребе T08/H5. Омогућава се по избору (подразумевано искључено) — када је укључен, системски упит уочен >= задатом прагу третира се као стабилан префикс погодан за кеширање и чува се од компресије чак и код добављача које статичка хеуристика кеширања не препознаје (замрзавање само чува, никада не мења).
COMPRESSION_PREFIX_FREEZE_THRESHOLD 3 open-sse/services/compression/prefixFreeze.ts Број уочавања системског упита пре него што се он почне третирати као замрзнути стабилни префикс.
OMNIROUTE_BOOTSTRAPPED false src/app/(dashboard)/dashboard/page.tsx Скрипта за иницијализацију поставља на true након почетног подешавања. Контролише видљивост чаробњака за подешавање.
OMNIROUTE_ALLOW_BODY_PROJECT_OVERRIDE 0 open-sse/executors/antigravity.ts Излаз у крајњој нужди: дозвољава телу захтева да замени поље Antigravity пројекта.
ANTIGRAVITY_CREDITS off open-sse/services/antigravityCredits.ts Смернице за Google One AI кредите: off никада не умеће кредите, retry их умеће једном након одговарајуће грешке прекорачења квоте 429, а always их умеће при првом захтеву.
ANTIGRAVITY_ALLOW_SIGNATURE_BYPASS 0 open-sse/translator/request/openai-to-gemini.ts Дозвољава Antigravity преводиоцу захтева да прескочи строгу проверу CLI потписа захтева када узводни сервис одбија исправне потписе (режим за отклањање грешака/застарели CLI). Вредност различита од нуле омогућава заобилажење.
AGY_TOKEN_FILE ~/.gemini/antigravity-cli/antigravity-oauth-token src/app/api/providers/agy-auth/apply-local/route.ts Замењује путању до датотеке токена Antigravity CLI-ја (agy) за аутоматски откривен увоз локалне пријаве.

OAuth CLI мост (интерно)

Променљива Подразумевано Изворна датотека Опис
OMNIROUTE_SERVER аутоматско откривање src/lib/oauth/config/index.ts URL сервера за CLI↔OmniRoute мост за аутентификацију.
OMNIROUTE_TOKEN (није постављено) src/lib/oauth/config/index.ts Токен за аутентификацију CLI моста.
OMNIROUTE_USER_ID cli src/lib/oauth/config/index.ts Кориснички ID за сесије CLI моста.
SERVER_URL (није постављено) src/lib/oauth/config/index.ts Застарели алијас за OMNIROUTE_SERVER.
CLI_TOKEN (није постављено) src/lib/oauth/config/index.ts Застарели алијас за OMNIROUTE_TOKEN.
CLI_USER_ID (није постављено) src/lib/oauth/config/index.ts Застарели алијас за OMNIROUTE_USER_ID.

11. Акредитиви OAuth добављача

Уграђени акредитиви за развој на localhost-у. За удаљена постављања региструјте сопствене акредитиве у програмерској конзоли сваког добављача.

Променљива Добављач Напомене
CLAUDE_OAUTH_CLIENT_ID Claude Code (Anthropic) Јавни клијент — тајна није потребна.
CLAUDE_CODE_REDIRECT_URI Claude Code Замењује URI за преусмеравање. Подразумевано: https://platform.claude.com/oauth/code/callback
CODEX_OAUTH_CLIENT_ID Codex / OpenAI Јавни клијент.
GEMINI_OAUTH_CLIENT_ID Gemini (Google) Захтева одговарајући _SECRET.
GEMINI_OAUTH_CLIENT_SECRET Gemini (Google)
KIMI_CODING_OAUTH_CLIENT_ID Kimi Coding (Moonshot) Јавни клијент.
ANTIGRAVITY_OAUTH_CLIENT_ID Antigravity (Google) Захтева одговарајући _SECRET.
ANTIGRAVITY_OAUTH_CLIENT_SECRET Antigravity (Google)
GITHUB_OAUTH_CLIENT_ID GitHub Copilot Јавни клијент.
GHE_COPILOT_OAUTH_CLIENT_ID GHE Copilot Опционална замена ID-а OAuth клијента за GitHub Enterprise Copilot. Ако није подешено, користи јавну подразумевану вредност променљиве GITHUB_OAUTH_CLIENT_ID.
WINDSURF_API_KEY Windsurf / Devin (v3.8) Резервни API кључ који користи open-sse/executors/devin-cli.ts када акредитив за конкретну везу није доступан. Опционо.
CLI_DEVIN_BIN Devin CLI (v3.8) Прилагођена путања до извршне датотеке Devin CLI-ја (devin). Разрешава је open-sse/executors/devin-cli.ts.
GITLAB_DUO_OAUTH_CLIENT_ID GitLab Duo (v3.8) ID OAuth клијента за GitLab Duo. Региструјте апликацију на https://gitlab.com/-/profile/applications са URI-јем за преусмеравање <NEXT_PUBLIC_BASE_URL>/callback и опсезима api, read_user, openid, profile, email. Ако није подешено, користи GITLAB_OAUTH_CLIENT_ID.
GITLAB_DUO_OAUTH_CLIENT_SECRET GitLab Duo (v3.8) Тајна OAuth клијента за GitLab Duo. Опционо — PKCE ток не захтева тајну. Ако није подешено, користи GITLAB_OAUTH_CLIENT_SECRET.
GITLAB_DUO_BASE_URL GitLab Duo (v3.8) Замењује основни URL GitLab-а (GitLab који се самостално хостује). Подразумевана вредност је https://gitlab.com. Ако није подешено, користи GITLAB_BASE_URL.
GITLAB_BASE_URL GitLab Duo (v3.8) Застарела резервна вредност за GITLAB_DUO_BASE_URL. Користи се када варијанта _DUO_ није подешена.
GITLAB_OAUTH_CLIENT_ID GitLab Duo (v3.8) Застарела резервна вредност за GITLAB_DUO_OAUTH_CLIENT_ID коју користи src/lib/oauth/constants/oauth.ts.
GITLAB_OAUTH_CLIENT_SECRET GitLab Duo (v3.8) Резервна опција за компатибилност са старијим верзијама за GITLAB_DUO_OAUTH_CLIENT_SECRET, коју користи src/lib/oauth/constants/oauth.ts.
QODER_OAUTH_CLIENT_SECRET Qoder
QODER_OAUTH_AUTHORIZE_URL Qoder Подесите да бисте омогућили Qoder OAuth.
QODER_OAUTH_TOKEN_URL Qoder
QODER_OAUTH_USERINFO_URL Qoder
QODER_OAUTH_CLIENT_ID Qoder
QODER_PERSONAL_ACCESS_TOKEN Qoder Резервни директни API кључ (заобилази OAuth).
QODER_CLI_WORKSPACE Qoder ID радног простора за Qoder CLI.
OMNIROUTE_QODER_WORKSPACE Qoder Алијас за QODER_CLI_WORKSPACE.
QODER_CLI_CONFIG_DIR Qoder Замените директоријум конфигурације за Qoder CLI (изолована PAT сесија, спречава преписивање пријаве у прегледачу).
BLACKBOX_WEB_VALIDATED_TOKEN Blackbox Web Фронтенд tk токен који се шаље као validated на /api/chat. Обавезан када Blackbox намеће подударање токена; у супротном OmniRoute користи насумични UUID као резервну опцију. Погледајте проблем #2252.
VISION_BRIDGE_BASE_URL Заштитни механизам Vision Bridge Основни URL компатибилан са OpenAI-јем за vision-bridge позиве који нису Anthropic. Подразумевано се користи застарела OpenAI URL променљива окружења или api.openai.com. Усмерите на OmniRoute-ову /v1 самопетљу или било коју крајњу тачку компатибилну са OpenAI-јем (Gemini OpenAI-compat, OpenRouter). Проблем #2232. Када је URL OmniRoute-ов сопствени /v1, describe потзахтев шаље x-omniroute-admission-bypass: internal и потврђује идентитет помоћу разрешеног акредитива самопетље (sk_omniroute сентинел у локалном режиму или OMNIROUTE_API_KEY / ROUTER_API_KEY — #1350), тако да примене са REQUIRE_API_KEY=true функционишу.
VISION_BRIDGE_API_KEY Заштитни механизам Vision Bridge API кључ за горенаведени URL. Има предност над OpenAI / Google променљивама окружења за сваког добављача за vision-bridge позиве који нису Anthropic. Anthropic модели задржавају своју наменску путању Anthropic кључа. Проблем #2232.

Warning

  1. Идите на Google Cloud Console → Credentials
  2. Направите OAuth 2.0 ID клијента (тип: „Веб-апликација“)
  3. Додајте URL свог сервера као овлашћени URI за преусмеравање
  4. Замените вредности акредитива у .env.

12. Замена Provider User-Agent вредности

Замените User-Agent заглавље које се шаље сваком узводном провајдеру. Извршна основна класа га динамички одређује током извршавања:

process.env[`${PROVIDER_ID}_USER_AGENT`]

Извор: open-sse/executors/base.tsbuildHeaders()

Променљива Подразумевана вредност Када ажурирати
CLAUDE_USER_AGENT claude-cli/2.1.258 (external, cli) Када Anthropic објави нову верзију CLI-ја
CLAUDE_DISABLE_TOOL_NAME_CLOAK false executors/base.ts + executors/cliproxyapi.ts Поставите на 1/true да би се називи алата независних окружења прослеђивали Anthropic-у дословно на обе путање усмерене ка Anthropic-у (изворни OAuth и CLIProxyAPI). Извршилац подразумевано детерминистички додељује псеудониме називима алата који не потичу из Claude Code-а (канонско Claude Code мапирање тамо где постоји, иначе PascalCase) и враћа их на одговору путем _toolNameMap, тако да окружења са алатима у snake_case формату не буду одбијена као препознати клијенти трећих страна. Само за отклањање грешака.
CODEX_USER_AGENT codex-cli/0.142.0 (Windows 10.0.26200; x64) Када OpenAI ажурира Codex CLI
CODEX_CLIENT_VERSION 0.131.0 Замените верзију Codex клијента независно од целог UA ниске
CLAUDE_CODE_CLIENT_VERSION 2.1.258 Замените оглашену верзију Claude Code-а независно од CLAUDE_USER_AGENT. Anthropic ограничава приступ неким моделима на основу ове вредности (#12417).
GITHUB_COPILOT_CLI_VERSION 1.0.81-6 Замените оглашену верзију Copilot CLI-ја независно од GITHUB_USER_AGENT
GITHUB_USER_AGENT GitHubCopilotChat/0.54.0 Када се GitHub Copilot Chat ажурира
ANTIGRAVITY_USER_AGENT antigravity/2.0.1 darwin/arm64 Када се Antigravity IDE ажурира
KIRO_USER_AGENT AWS-SDK-JS/3.0.0 kiro-ide/1.0.0 Када се Kiro IDE ажурира
KIRO_OAUTH_CLIENT_ID kiro-cli Замените clientId (јавни идентификатор) за Kiro друштвени ток кода уређаја
KIRO_VERIFY_FULL_CRC false Опционо: потпуна провера CRC-а сваког оквира у Kiro току догађаја (за отклањање грешака у оштећеним токовима)
QODER_USER_AGENT Qoder-Cli Када се Qoder CLI ажурира
CURSOR_USER_AGENT Cursor/3.3 Када се Cursor ажурира

Tip

Можете додати замену User-Agent вредности за било ког провајдера користећи образац {PROVIDER_ID}_USER_AGENT. Извршилац динамички конструише назив променљиве окружења.


13. Компатибилност CLI отиска

Када је омогућено, OmniRoute мења редослед HTTP заглавља и поља JSON тела како би одговарали тачном потпису званичних CLI алата. Ово смањује ризик од означавања налога, уз задржавање ваше proxy IP адресе.

Извор: open-sse/config/cliFingerprints.ts, open-sse/executors/base.ts

По добављачу

Променљива Активација Ефекат
CLI_COMPAT_CODEX =1 Имитира потпис захтева Codex CLI алата
CLI_COMPAT_CLAUDE =1 Имитира потпис захтева Claude Code алата
CLI_COMPAT_GITHUB =1 Имитира потпис захтева GitHub Copilot алата
CLI_COMPAT_ANTIGRAVITY =1 Имитира потпис Antigravity захтева
CLI_COMPAT_CURSOR =1 Имитира потпис Cursor захтева
CLI_COMPAT_KIMI_CODING =1 Имитира потпис Kimi Coding захтева
CLI_COMPAT_KILOCODE =1 Имитира потпис Kilo Code захтева
CLI_COMPAT_CLINE =1 Имитира потпис Cline захтева

Глобално

Променљива Активација Ефекат
CLI_COMPAT_ALL =1 Омогућава компатибилност отиска за све добављаче одједном.

Замене идентитета Kimi Coding CLI алата

Променљива Подразумевано Изворна датотека Опис
KIMI_CLI_VERSION 1.36.0 src/lib/oauth/providers/kimi-coding.ts Мења верзију Kimi CLI алата која се шаље током OAuth/API позива.
KIMI_CODING_DEVICE_ID (забележена вредност) src/lib/oauth/providers/kimi-coding.ts Мења забележени ID Kimi уређаја који се користи у заглављима клијента.

Note

Ова функција ради упоредо са заменама User-Agent вредности (§12). Систем отиска управља редоследом заглавља и поља тела, док замене User-Agent вредности управљају конкретном UA ниском. Обе могу бити омогућене независно.


14. Добављачи API кључева

API кључеви за добављаче који користе директну аутентификацију. Препоручено подешавање: Контролна табла → Добављачи → Додај API кључ.

Подешавање путем променљивих окружења представља алтернативу за Docker примене или примене без графичког интерфејса.

Препознати образац: {PROVIDER_ID}_API_KEY

Променљива Добављач
DEEPSEEK_API_KEY DeepSeek
NVIDIA_API_KEY NVIDIA NIM
JINA_AI_API_KEY Jina AI (Foundation API + резервни Reader)
JINA_API_KEY Jina AI (алијас за JINA_AI_API_KEY)
GEMINI_API_KEY Gemini (Google AI Studio) угнежђивања + резервни ћаскање
GOOGLE_API_KEY Gemini (алијас за GEMINI_API_KEY)

Note

Статички ${PROVIDER}_API_KEY уноси за Groq, xAI, Mistral, Perplexity, Together AI, Fireworks, Cerebras, Cohere, Nebius и Qianfan уклоњени су у v3.8.0 јер их извршно окружење више не чита — ти добављачи се ослањају искључиво на контролну таблу / data/provider-credentials.json / шифровану базу података. Путању за миграцију погледајте у одељку Ревизија: уклоњене / некоришћене променљиве на дну овог документа.

Tip

Кључеви подешени путем контролне табле чувају се шифровано у SQLite бази и имају предност над променљивама окружења.

Jina: jina-ai/… угнежђивања, поновно рангирање, класификација, сегментација и jina-search не задужују кључ окружења кластера када постоји веза jina-ai (или дељена jina-reader веза) са контролне табле — getProviderCredentials примењује приступ „прво попуни“. JINA_AI_API_KEY / JINA_API_KEY користе се само када не постоји употребљив кључ са контролне табле. Евиденције позива приписују резервну вредност из окружења као connection_id=env:JINA_AI_API_KEY. Картица Reader (jina-reader, r.jina.ai) никада не опслужује /v1/embeddings нити /v1/rerank.

Gemini: gemini/gemini-embedding-2 (алијас google/gemini-embedding-2) прво користи gemini везу са контролне табле. GEMINI_API_KEY / GOOGLE_API_KEY користе се само када не постоји употребљив кључ са контролне табле. Евиденције позива приписују резервну вредност из окружења као connection_id=env:GEMINI_API_KEY. Изворни мултимодални саобраћај користи x-goog-api-key за :embedContent / :batchEmbedContents — N OpenAI input ставки постаје N вектора.


15. Подешавања временских ограничења

Све вредности су у милисекундама. Централизовано разрешавање у src/shared/utils/runtimeTimeouts.ts.

Хијерархија временских ограничења

REQUEST_TIMEOUT_MS (глобално замењивање)
├─→ FETCH_TIMEOUT_MS (позиви ка спољним добављачима, подразумевано: 600000)
│   ├─→ FETCH_HEADERS_TIMEOUT_MS (наслеђује од FETCH_TIMEOUT_MS)
│   ├─→ FETCH_BODY_TIMEOUT_MS (наслеђује од FETCH_TIMEOUT_MS)
│   ├─→ TLS_CLIENT_TIMEOUT_MS (наслеђује од FETCH_TIMEOUT_MS)
│   │   └── TLS_FIRST_BYTE_WATCHDOG_MS (независно, подразумевано: 10000)
│   ├── RESPONSES_FIRST_BYTE_TIMEOUT_MS (независно, подразумевано: 15000)
│   ├── FETCH_CONNECT_TIMEOUT_MS (независно, подразумевано: 30000)
│   └── FETCH_KEEPALIVE_TIMEOUT_MS (независно, подразумевано: 4000)
├─→ STREAM_IDLE_TIMEOUT_MS (наслеђује од REQUEST_TIMEOUT_MS, подразумевано: 600000)
├─→ STREAM_ACTIVE_TIMEOUT_MS (независно, подразумевано: 1260000; 0 онемогућава)
├─→ STREAM_READINESS_TIMEOUT_MS (наслеђује од REQUEST_TIMEOUT_MS, подразумевано: 80000)
├─→ STREAM_READINESS_MAX_TIMEOUT_MS (ограничава адаптивна продужења спремности, подразумевано: 180000)
└─→ API_BRIDGE_PROXY_TIMEOUT_MS (наслеђује од REQUEST_TIMEOUT_MS, подразумевано: 30000)
    ├─→ API_BRIDGE_SERVER_REQUEST_TIMEOUT_MS (изведено, подразумевано: 300000)
    ├── API_BRIDGE_SERVER_HEADERS_TIMEOUT_MS (подразумевано: 60000)
    ├── API_BRIDGE_SERVER_KEEPALIVE_TIMEOUT_MS (подразумевано: 5000)
    └── API_BRIDGE_SERVER_SOCKET_TIMEOUT_MS (подразумевано: 0 = онемогућено)
Променљива Подразумевано Опис
REQUEST_TIMEOUT_MS (није подешено) Глобална пречица — замењује подразумеване вредности за FETCH_TIMEOUT_MS и STREAM_IDLE_TIMEOUT_MS.
FETCH_TIMEOUT_MS 600000 Укупно временско ограничење HTTP захтева за позиве узводним добављачима.
STREAM_IDLE_TIMEOUT_MS 600000 Максимална пауза између необрађених узводних бајтова пре прекида. Модели са проширеним резоновањем ретко праве паузу >90s.
STREAM_ACTIVE_TIMEOUT_MS 1260000 Максимално укупно трајање активног SSE тока; никада се не ресетује при пријему узводних бајтова и независно је од REQUEST_TIMEOUT_MS. Изведено је из највеће вредности timeoutMs по моделу у регистру (1200000, Codex), уз маргину од 60000, тако да модел којем је дозвољено да искористи цео свој буџет никада не буде прекинут усред одговора. Подесите на 0 да бисте онемогућили.
OMNIROUTE_SSE_COMMENTS (онемогућено) Да ли OmniRoute сме да емитује SSE редове коментара : (нпр. : keepalive сигнал за проверу активности и x-omniroute-* метаподатке на крају). Подразумевано је онемогућено (#10524), јер строги клијенти компатибилни са OpenAI-јем примењују JSON.parse на сваки SSE ред и отказују на коментарима :; ово не утиче на data: сигнале за проверу активности. Подесите на on/true/1/yes да бисте их поново укључили. Користи се у open-sse/utils/sseHeartbeat.ts.
STREAM_READINESS_TIMEOUT_MS 80000 Време за пријем првог SSE догађаја који није ping. Наслеђује REQUEST_TIMEOUT_MS када је подешен.
STREAM_READINESS_MAX_TIMEOUT_MS 180000 Максимални адаптивни период спремности за први догађај код великих стриминг захтева, захтева који интензивно користе алате или захтева са високим нивоом резоновања.
OMNIROUTE_AGENT_GOAL_POLICY_ENABLED true Прекидач за потпуно искључивање /goal хеуристике. Подесите на false/0/off да бисте потпуно онемогућили откривање — временска ограничења спремности и опоравак тока никада се не повећавају на основу тела/заглавља захтева, чиме се ублажава повећање временског ограничења којим управља клијент.
OMNIROUTE_AGENT_GOAL_READINESS_MAX_TIMEOUT_MS 600000 Максимални период спремности за први догађај код откривених покретања /goal агента или захтева наметнутих помоћу x-omniroute-agent-goal.
OMNIROUTE_AGENT_GOAL_STREAM_RECOVERY true Аутоматски омогућава рани опоравак тока за откривена покретања /goal агента. Подесите на false/0/off да бисте онемогућили укључивање специфично за циљ. Ово може само ДОДАТИ опоравак поврх подразумеване поставке оператера — никада не замењује изричито искључивање путем поставки STREAM_RECOVERY_ENABLED/DB.
OMNIROUTE_CODEX_DROP_NONSTANDARD_EVENTS true Уклања нестандардне codex.* SSE догађаје (нпр. codex.rate_limits) који нарушавају рад responses.stream() из OpenAI SDK-а уз грешку 502. Подразумевано је УКЉУЧЕНО (#11014). Подесите на 0/false/no/off да бисте их прослеђивали.
OMNIROUTE_CODEX_APPSERVER_WS (није подешено) Опционо укључивање Codex app-server транспорта. WebSocket крајња тачка (ws:///wss://) локалног codex app-server пратећег процеса. Када је подешено заједно са токеном, Codex захтеви се усмеравају преко JSON-RPC-а ка пратећем процесу уместо преко HTTP Responses API-ја. Може се подесити и за сваку везу преко providerSpecificData.codexAppServerUrl. Користи се у open-sse/executors/codex/appServerConfig.ts.
OMNIROUTE_CODEX_APPSERVER_WS_TOKEN (није подешено) Уграђени токен могућности/носилачки токен који се прослеђује app-server-у. Замена за појединачну везу: providerSpecificData.codexAppServerToken.
OMNIROUTE_CODEX_APPSERVER_WS_TOKEN_FILE (није подешено) Путања до датотеке која садржи токен могућности app-server-а (из codex app-server --ws-token-file). Користи се када OMNIROUTE_CODEX_APPSERVER_WS_TOKEN није подешен. Замена за појединачну везу: providerSpecificData.codexAppServerTokenFile.
OMNIROUTE_CODEX_APPSERVER_CWD /tmp Радни директоријум у којем се извршава итерација app-server-а. Замена за појединачну везу: providerSpecificData.codexAppServerCwd.
OMNIROUTE_CODEX_APPSERVER_APPROVAL (није подешено) Политика одобравања која се прослеђује итерацији app-server-а (нпр. never, on-request). Замена за појединачну везу: providerSpecificData.codexAppServerApprovalPolicy.
OMNIROUTE_CODEX_APPSERVER_SANDBOX (није подешено) Политика изолованог окружења која се прослеђује итерацији app-server-а (нпр. read-only, workspace-write, danger-full-access). Када није подешено, извршилац подразумевано користи workspace-write (безбедније; раније danger-full-access). Замена за појединачну везу: providerSpecificData.codexAppServerSandbox.
OMNIROUTE_CODEX_APPSERVER_AUTO_APPROVE false Аутоматски одобрава сопствене упите за одобрење app-server-а (извршавање команди/датотека/дозвола на хосту). Подразумевано је искључено — упити се аутоматски одбијају; ово не утиче на позиве алата контролног окружења (они путују одвојеним item/tool/call директним прослеђивањем). Прихвата true/1/yes. Замена за појединачну везу: providerSpecificData.codexAppServerAutoApprove.
FETCH_HEADERS_TIMEOUT_MS = FETCH_TIMEOUT_MS Време за пријем заглавља одговора.
OMNIROUTE_DIRECT_HEADERS_TIMEOUT_MS 30000 (30s) Максимално време чекања почетка одговора (ms) за сваки директан покушај без проксија. Након истека времена покушај се понавља једном преко новог сокета; поставите на 0 да бисте онемогућили ограничење и задржали претходно понашање.
FETCH_BODY_TIMEOUT_MS = FETCH_TIMEOUT_MS Време за пријем целог тела одговора.
FETCH_CONNECT_TIMEOUT_MS 30000 Временско ограничење за успостављање TCP везе.
FETCH_KEEPALIVE_TIMEOUT_MS 4000 Временско ограничење неактивности keep-alive сокета.
TLS_CLIENT_TIMEOUT_MS = FETCH_TIMEOUT_MS Временско ограничење проксија за TLS отисак (wreq-js).
TLS_FIRST_BYTE_WATCHDOG_MS 10000 Посебно ограничава време до првог бајта тела на wreq-js преносу са TLS отиском; сам TLS_CLIENT_TIMEOUT_MS не може да открије застој тела јер се разрешава чим заглавља стигну (#12656). Истек времена отказује wreq читач и прелази на директни/прокси диспечер; 0 онемогућава надзор.
RESPONSES_FIRST_BYTE_TIMEOUT_MS 15000 Само за OpenCode извршавач и само док је заставица функције OPENCODE_RESPONSES_STALL_ROTATION укључена (подразумевано је искључена): ограничава чекање првог бајта тела стримованог Responses одговора након његових заглавља (#13484). Responses ток почиње догађајем response.created, па тишина након овог периода означава застој: налог се привремено ставља на чекање, а захтев се једном преусмерава на следећи налог; други застој одмах доводи до неуспеха. 0 онемогућава заштиту чак и када је заставица укључена.
API_BRIDGE_PROXY_TIMEOUT_MS 30000 Временско ограничење прокси корака за /v1 захтеве моста.
FIRECRAWL_BASE_URL https://api.firecrawl.dev Усмерава Firecrawl извршавач за веб-добављање ка инстанци која се самостално хостује (API кључ је ван облака опционалан).
FIRECRAWL_TIMEOUT_MS 30000 Временско ограничење по захтеву за Firecrawl извршавач веб-добављања.
API_BRIDGE_SERVER_REQUEST_TIMEOUT_MS 300000 Укупно временско ограничење серверског захтева за мост.
API_BRIDGE_SERVER_HEADERS_TIMEOUT_MS 60000 Време за слање заглавља одговора преко моста.
API_BRIDGE_SERVER_KEEPALIVE_TIMEOUT_MS 5000 Временско ограничење неактивности keep-alive везе моста.
API_BRIDGE_SERVER_SOCKET_TIMEOUT_MS 0 Временско ограничење сировог сокета (0 = онемогућено).
SHUTDOWN_TIMEOUT_MS 30000 Период одлагања након SIGTERM/SIGINT пре принудног изласка.
OMNIROUTE_DEFAULT_FETCH_TIMEOUT_MS 120000 Резервна вредност коју користи src/shared/utils/fetchTimeout.ts када FETCH_TIMEOUT_MS није постављен.
OMNIROUTE_PROVIDER_PROBE_TIMEOUT_MS 8000 Временско ограничење (ms) за унапред подешене конфигурације validationRead и modelsProbe у src/shared/network/safeOutboundFetch.ts. Повећајте га за споре крајње тачке (Cerebras, Cloudflare AI, Groq) како бисте спречили осцилирање између стања активно/грешка на контролној табли. За неважеће (<1000) или ненумеричке вредности користи се резервна вредност од 8000ms.
OMNIROUTE_RELAY_FETCH_TIMEOUT_MS 25000 Временско ограничење добављања специфично за релеј у open-sse/utils/proxyFetch.ts (#9158). Релеј у застоју мора да откаже пре временског ограничења клијента/агента (~30s), тако да позиваоци виде грешку специфичну за релеј уместо општег временског ограничења узводног сервиса. Ограничено је на 29000 како би се увек прво активирало.
OMNIROUTE_RETRY_BACKOFF_MS 10 Заједничко одлагање поновног покушаја за директне/релејне/прокси путање које покушавају још једном у open-sse/utils/proxyFetch.ts (#9158). 0 = одмах понови покушај.
OMNIROUTE_CLAUDE_TLS_TIMEOUT_MS 60000 Временско ограничење изворног wreq-js захтева (claudeTlsClient.ts).
OMNIROUTE_CLAUDE_TLS_GRACE_MS 10000 Апсолутни JS додатни период за крајњи рок, који се додаје на изворно временско ограничење.
OMNIROUTE_PPLX_TLS_TIMEOUT_MS 30000 Временско ограничење изворног wreq-js захтева (perplexityTlsClient.ts).
OMNIROUTE_PPLX_TLS_GRACE_MS 10000 Апсолутни JS додатни период за крајњи рок, који се додаје на изворно временско ограничење.
OMNIROUTE_PPLX_SEARCH_HINT 0 (искључено) Додаје „Имате уграђену веб-претрагу. Одговарајте на питања директно користећи резултате претраге.“ системској поруци позиваоца (perplexity-web/protocol.ts). Подразумевано је искључено — Perplexity свакако претражује, а ова реченица се појављује у одговорима као метакоментар за клијенте за програмирање. Поставите на 1/true/yes/on да бисте је вратили.
OMNIROUTE_GROK_TLS_TIMEOUT_MS 60000 Временско ограничење изворног wreq-js захтева (grokTlsClient.ts).
OMNIROUTE_GROK_TLS_GRACE_MS 10000 Додатни период за апсолутни крајњи рок у JS-у који се додаје на изворно временско ограничење.
OMNIROUTE_NOTION_TLS_TIMEOUT_MS 30000 Временско ограничење изворног wreq-js захтева (notionTlsClient.ts); notion-web га по захтеву повећава на 180000 за дуга генерисања.
OMNIROUTE_NOTION_TLS_GRACE_MS 10000 Додатни период за апсолутни крајњи рок у JS-у који се додаје на изворно временско ограничење.
OMNIROUTE_BROWSER_POOL on Дељени скуп Playwright прегледача за ћаскање са веб-колачићима које користи прегледач (browserPool.ts); поставите на off да бисте га онемогућили.
OBSCURA_BIN auto-detect Путања до извршне датотеке obscura која се користи као примарни механизам скупа прегледача и Cloudflare Playground извршавача (open-sse/services/obscura.ts); аутоматски се открива из системске путање PATH када није постављена.
OBSCURA_CDP_ENDPOINT (није постављено) Усмерите на већ покренуту Obscura инстанцу (http://host:port) уместо покретања нове; модул не управља тим процесом (open-sse/services/obscura.ts).
OBSCURA_PORT random free port Изричито наведени порт за покренуту команду obscura serve; слободан порт се аутоматски бира када није постављен (open-sse/services/obscura.ts).
WEB_COOKIE_USE_BROWSER 0 Усмерава захтев за ћаскање са веб-колачићима на путању која користи прегледач (browserBackedChat.ts); поставите на 1 да бисте је омогућили.
KIMI_WEB_BASE_URL https://www.kimi.ai Основни URL за Kimi Web извршавач (међународни kimi.ai Connect-RPC) (kimi-web.ts); замените само за mirror/proxy крајње тачке.
KIMI_WEB_CHAT_URL <KIMI_WEB_BASE_URL>/apiv2/kimi.gateway.chat.v1.ChatService/Chat Потпуна крајња тачка за ћаскање Kimi Web извршавача (kimi-web.ts).
OMNIROUTE_LOGIN_BROWSER_PATH (аутоматски откривено) Путања до системске извршне датотеке Chrome/Edge за интерактивно пријављивање у Adobe Firefly преко прегледача (adobeFireflyBrowserLogin.ts); замењује аутоматско откривање за конкретни ОС.
OMNIROUTE_STANDALONE_DIR .build/ самостални излаз Замена директоријума самосталног излаза током изградње, који користи корак колокације након изградње (scripts/build/colocate-standalone.mjs); намењено алатима за изградњу, а не извршавању.

Покушаји комбинованих циљева наслеђују разрешено временско ограничење узводног захтева (FETCH_TIMEOUT_MS или REQUEST_TIMEOUT_MS када оно задаје подразумевану вредност за преузимање). Поставите targetTimeoutMs у комбинацији, подразумеваним вредностима комбинације или замени за добављача само да бисте убрзали прелазак комбинације на резервну опцију; вредности изнад тренутног узводног временског ограничења ограничавају се на узводно временско ограничење.

comboTimeoutMs је засебан укупан временски буџет комбинације према зидном сату за све циљеве пребацивања. Оставите га неподешеним или поставите на 0 да бисте задржали неограничено итерирање (и даље важи 10-минутно ограничење COMBO_LOOP_SAFETY_TIMEOUT_MS за заустављање заглављивања). Позитивна вредност замењује ту заштитну меру за комбинацију. Нека comboTimeoutMs буде дужи од targetTimeoutMs како би и после спорог првог циља остало времена за прелазак на резервну опцију.

Прагови прекидача кола

Подешавање прекидача кола на нивоу добављача. Подразумеване вредности одражавају скалиране вредности које се од v3.6 користе за више од 500 веза.

Променљива Подразумевано Изворна датотека Опис
OMNIROUTE_CIRCUIT_BREAKER_OAUTH_THRESHOLD 8 open-sse/config/constants.ts Праг узастопних неуспеха за OAuth провајдере пре активирања прекидача.
OMNIROUTE_CIRCUIT_BREAKER_OAUTH_RESET_MS 60000 open-sse/config/constants.ts Период ресетовања (ms) за прекидач OAuth провајдера.
OMNIROUTE_CIRCUIT_BREAKER_API_KEY_THRESHOLD 12 open-sse/config/constants.ts Праг узастопних неуспеха за провајдере са API кључем.
OMNIROUTE_CIRCUIT_BREAKER_API_KEY_RESET_MS 30000 open-sse/config/constants.ts Период ресетовања (ms) за прекидач провајдера са API кључем.
OMNIROUTE_CIRCUIT_BREAKER_LOCAL_THRESHOLD 2 open-sse/config/constants.ts Праг узастопних неуспеха за локалне провајдере (Ollama, LM Studio, ...).
OMNIROUTE_CIRCUIT_BREAKER_LOCAL_RESET_MS 15000 open-sse/config/constants.ts Период ресетовања (ms) за прекидач локалног провајдера.
OMNIROUTE_PROVIDER_BREAKER_OAUTH_FAILURE_THRESHOLD 10 open-sse/config/constants.ts Прекидач на нивоу провајдера: број неуспеха унутар периода пре него што цео OAuth провајдер уђе у период мировања.
OMNIROUTE_PROVIDER_BREAKER_OAUTH_FAILURE_WINDOW_MS 900000 open-sse/config/constants.ts Прекидач на нивоу провајдера: клизни период за бројање неуспеха (ms) за OAuth провајдере.
OMNIROUTE_PROVIDER_BREAKER_OAUTH_COOLDOWN_MS 300000 open-sse/config/constants.ts Прекидач на нивоу провајдера: период мировања (ms) након достизања прага OAuth провајдера.
OMNIROUTE_PROVIDER_BREAKER_OAUTH_DEGRADATION_THRESHOLD 5 open-sse/config/constants.ts OAuth провајдер прелази у стање DEGRADED након оволико неуспеха.
OMNIROUTE_PROVIDER_BREAKER_OAUTH_MAX_BACKOFF_MULTIPLIER 8 open-sse/config/constants.ts Максимални множилац повећања вредности resetTimeout за OAuth провајдера.
OMNIROUTE_PROVIDER_BREAKER_OAUTH_BACKOFF_ESCALATION_COUNT 2 open-sse/config/constants.ts OAuth провајдер повећава време чекања након оволико циклуса отвореног стања.
OMNIROUTE_PROVIDER_BREAKER_API_KEY_FAILURE_THRESHOLD 15 open-sse/config/constants.ts Прекидач на нивоу провајдера: број неуспеха унутар периода пре него што цео провајдер са API кључем уђе у период мировања.
OMNIROUTE_PROVIDER_BREAKER_API_KEY_FAILURE_WINDOW_MS 1800000 open-sse/config/constants.ts Прекидач на нивоу провајдера: клизни период за бројање неуспеха (ms) за провајдере са API кључем.
OMNIROUTE_PROVIDER_BREAKER_API_KEY_COOLDOWN_MS 600000 open-sse/config/constants.ts Прекидач на нивоу провајдера: период мировања (ms) након достизања прага провајдера са API кључем.
OMNIROUTE_PROVIDER_BREAKER_API_KEY_DEGRADATION_THRESHOLD 7 open-sse/config/constants.ts Провајдер са API кључем прелази у стање DEGRADED након оволико неуспеха.
OMNIROUTE_PROVIDER_BREAKER_API_KEY_MAX_BACKOFF_MULTIPLIER 4 open-sse/config/constants.ts Максимални множилац повећања вредности resetTimeout за провајдера са API кључем.
OMNIROUTE_PROVIDER_BREAKER_API_KEY_BACKOFF_ESCALATION_COUNT 3 open-sse/config/constants.ts Провајдер са API кључем повећава време чекања након оволико циклуса отвореног стања.
OMNIROUTE_PROVIDER_BREAKER_LOCAL_FAILURE_THRESHOLD 2 open-sse/config/constants.ts Прекидач на нивоу провајдера: број неуспеха пре него што цео локални провајдер уђе у период мировања.
OMNIROUTE_PROVIDER_BREAKER_LOCAL_FAILURE_WINDOW_MS 300000 open-sse/config/constants.ts Прекидач на нивоу провајдера: клизни период за бројање неуспеха (ms) за локалне провајдере.
OMNIROUTE_PROVIDER_BREAKER_LOCAL_COOLDOWN_MS 60000 open-sse/config/constants.ts Прекидач на нивоу провајдера: период мировања (ms) након достизања прага локалног провајдера.
PIN_DROP_BACKOFF_LEVEL 2 open-sse/services/combo.ts Ниво повратног чекања на којем се провајдер фиксиран у кешу контекста сматра трајно непоузданим, па се фиксација уклања ради преласка на резервни провајдер.
PIN_DROP_GRACE_MS 20000 open-sse/services/combo.ts Период за спречавање честих промена (ms), током којег се толеришу краткотрајни пролазни периоди мировања пре уклањања фиксације у кешу контекста.

Сценарији

Сценарио Конфигурација
Дуготрајно генерисање кода REQUEST_TIMEOUT_MS=900000 (15 мин)
Ограничење укупног трајања стрима STREAM_ACTIVE_TIMEOUT_MS=1260000 (21 мин)
Брзо отказивање за продукциони API API_BRIDGE_PROXY_TIMEOUT_MS=10000
Модели са продуженим размишљањем STREAM_IDLE_TIMEOUT_MS=300000 (5 мин између делова)

16. Евидентирање

Систем за евидентирање уписује записе и у stdout и у ротиране датотеке евиденције. Сва конфигурација се учитава из src/lib/logEnv.ts.

Променљива Подразумевано Опис
APP_LOG_LEVEL info Минимални ниво евидентирања: debug, info, warn, error.
APP_LOG_FORMAT text Формат излаза: text (читљив људима) или json (структуриран).
APP_LOG_TO_FILE true Уписује евиденцију у датотеку упоредо са stdout излазом.
APP_LOG_FILE_PATH logs/application/app.log Путања датотеке евиденције (у односу на корен пројекта или DATA_DIR).
APP_LOG_MAX_FILE_SIZE 50M Максимална величина датотеке пре ротације. Прихвата: 50M, 1G, 512K или обичан број бајтова.
APP_LOG_RETENTION_DAYS 7 Број дана чувања ротираних датотека евиденције апликације.
APP_LOG_MAX_FILES 20 Максималан број резервних ротираних датотека евиденције.
CALL_LOG_RETENTION_DAYS 7 Број дана чувања записа евиденције захтева/позива у бази података.
CALL_LOG_MAX_ENTRIES 10000 Максималан број записа евиденције позива у меморијском баферу.
CALL_LOGS_TABLE_MAX_ROWS 100000 Максималан број редова у SQLite табели call_logs пре уклањања старих података.
ENABLE_REQUEST_LOGS (није постављено) Принудно укључује или искључује детаљно евидентирање захтева, уз занемаривање подешавања контролне табле.
MAX_PENDING_REQUEST_AGE_MS 3600000 (1 сат) Максимална старост напуштених активних записа евиденције захтева пре чишћења из меморије.
CALL_LOG_PIPELINE_CAPTURE_STREAM_CHUNKS false Чува делове тока у артефактима процесног тока када је call_log_pipeline_enabled=true. Опционо (true) — подразумевано је искључено ради уштеде простора на диску.
CALL_LOG_PIPELINE_MAX_SIZE_KB 512 Максимална величина артефакта евиденције позива процесног тока у KB када је call_log_pipeline_enabled=true.
PROXY_LOGS_TABLE_MAX_ROWS 100000 Максималан број редова у SQLite табели proxy_logs пре уклањања старих података.
PROXY_LOG_INCLUDE_IPS false Укључује IP адресе клијента/излазне везе и префиксе налога у конзолне записе [ProxyEgress]. Записи прокси евиденције на контролној табли/у бази података задржавају све детаље.
APP_LOG_ROTATION_CHECK_INTERVAL_MS 60000 (1 мин) Учесталост којом src/lib/logRotation.ts поново проверава величину активне датотеке евиденције.
CHAT_LOG_TEXT_LIMIT 65536 Максимална дужина ниске која се задржава у артефактима евиденције ћаскања (подразумевано 64 KB).
CHAT_LOG_ARRAY_TAIL_ITEMS 128 Број ставки низа које се задржавају са краја приликом скраћивања садржаја евиденције ћаскања.
CHAT_LOG_MAX_DEPTH 6 Максимална дубина угнежђавања пре него што се садржаји евиденције ћаскања скрате.
CHAT_LOG_MAX_OBJECT_KEYS 80 Максималан број кључева објекта који се задржава у садржајима евиденције ћаскања (0 = неограничено).
CHAT_LOG_MAX_BODY_KB 1024 Величина целог тела захтева/одговора (KB) након које се оно замењује сажетим описом уместо потпуне копије. Повећајте ову вредност ако дуги агентски разговори на контролној табли приказују чувар места уместо стварних порука.
CHAT_DEBUG_FILE false Када је вредност true, serializeArtifactForStorage прескаче скраћивање засновано на величини. Само за отклањање грешака.

17. Оптимизација меморије

Променљива Подразумевано Опис
OMNIROUTE_MEMORY_MB аутоматски (директно на хардверу); 1024 у Docker слици Препоручено ограничење V8 heap меморије (MB) за Docker/самостално окружење. Када није подешено, динамички се калибрише (~35% системског RAM-а, ограничено на [512, 4096]); 512 је само доња граница када укупна меморија не може да се очита. У run-standalone.mjs (Docker CMD), експлицитна вредност се додаје као --max-old-space-size и има предност над неусаглашеном NODE_OPTIONS заставицом за heap (последња V8 заставица). omniroute serve и даље даје предност постојећој NODE_OPTIONS вредности за heap (#5238). Немојте подешавати обе на различите бројеве — процес бележи упозорење у ком наводи обе вредности и победничку вредност. Званична Docker слика увек поставља 1024, па се калибрација у њој никада не извршава. За /v1/responses агента за програмирање потребно је 819212288, уз додатни простор за cgroup — погледајте Docker водич — RAM током извршавања.
PROMPT_CACHE_MAX_SIZE 50 Максималан број кешираних уноса системских промптова.
PROMPT_CACHE_MAX_BYTES 2097152 (2 MB) Максимална укупна величина кеша промптова.
PROMPT_CACHE_TTL_MS 300000 (5 мин) TTL уноса у кешу промптова.
SEMANTIC_CACHE_MAX_SIZE 100 Максималан број кешираних одговора са temperature=0.
SEMANTIC_CACHE_MAX_BYTES 4194304 (4 MB) Максимална укупна величина семантичког кеша.
SEMANTIC_CACHE_TTL_MS 1800000 (30 мин) TTL уноса у семантичком кешу.
OMNIROUTE_CORPUS_CACHE_SIZE 5 Корени локалног корпуса који истовремено задржавају активан индекс у меморији (src/lib/localCorpus/configured.ts). LRU: када се достигне ограничење, индекс најдуже некоришћеног корена се избацује и поново изграђује при његовом следећем упиту. Ограничено је на минимум 1; ненумеричка вредност враћа подразумевану вредност.
STREAM_HISTORY_MAX 50 Максималан број недавних догађаја тока у баферу приказа уживо контролне табле.
CONTEXT_LENGTH_DEFAULT 128000 Глобална резервна максимална дужина контекста за моделе без експлицитне конфигурације.
USAGE_TOKEN_BUFFER 100 Додатна резерва токена при праћењу квота коришћења.

Компресија

Променљива Подразумевано Опис
OMNIROUTE_RTK_TRUST_PROJECT_FILTERS није подешено Веруј пројектној датотеци .rtk/filters.json без .rtk/trust.json хеша. Користите само у контролисаном локалном развојном окружењу.

Механизам меморије (план 21)

Оптерећење петље догађаја услед меморије, вештина и освежавања токена (#10349)

OmniRoute је један Node процес. Издвајање/преузимање меморије, уметање вештина и освежавање токена добављача извршавају се у истој петљи догађаја као GET /healthz и контролна табла. Не извршавају се у радној нити.

Посао Кôд Подразумевано Контрола оператера
Издвајање / преузимање меморије src/lib/memory/ Контролна табла memoryEnabled (подразумевано укључено) Искључите Подешавања → Меморија. Не постоји засебан прекидач окружења за искључивање осим онемогућавања функције у подешавањима.
Убризгавање вештина src/lib/skills/injection.ts Контролна табла skillsEnabled (подразумевано укључено) Искључите Подешавања → Меморија/Вештине (skillsEnabled). Подешавања sandbox окружења у наставку само ограничавају извршавање након што је убризгавање већ укључено.
Освежавање токена src/sse/services/tokenRefresh.ts Укључено за повезане OAuth/веб провајдере Прекините везу са провајдером или пустите да токени остану важећи; тренутно не постоји променљива окружења TOKEN_REFRESH=0.

Ако је /healthz спор на неоптерећеном систему, прво онемогућите меморију и вештине, а затим проверите оптерећење каталога/компресије (#10303, #9685). Ове функције препуштају извршавање на await тачкама, али се и даље надмећу за једну нит.

Подешавања слоја за угњежђивање, векторског складишта и поновног рангирања за подсистем трајне меморије (src/lib/memory/).

Променљива Подразумевано Опис
MEMORY_EMBEDDING_CACHE_TTL_MS 300000 (5 мин) TTL за кеш угњежђивања у меморији (по потпису извора/модела/димензије).
MEMORY_EMBEDDING_CACHE_MAX 1000 Највећи број LRU ставки које се чувају у кешу угњежђивања.
MEMORY_TRANSFORMERS_MODEL Xenova/all-MiniLM-L6-v2 ID HF репозиторијума за опционални локални MiniLM процесни ток @huggingface/transformers (~23 MB int8, ~400 MB RAM-а).
MEMORY_STATIC_MODEL minishlab/potion-base-8M ID HF репозиторијума за статички potion/Model2Vec угњежђивач заснован на табели претраживања. Преузима се по потреби у директоријум кеша.
MEMORY_STATIC_CACHE_DIR <DATA_DIR>/embeddings Директоријум који се користи за кеширање датотека статичког potion модела. Када није подешен, подразумевано се налази у оквиру DATA_DIR.
HF_HUB_ENDPOINT https://huggingface.co Замењује основни URL Hugging Face Hub-а који користи staticPotion.ts (нпр. крајња тачка огледала за изолована окружења).
MEMORY_VEC_TOP_K 20 Подразумевана top-K вредност коју користи векторска претрага потпуним проласком sqlite-vec унутар src/lib/memory/vectorStore.ts.
MEMORY_RRF_K 60 Константа k за Reciprocal Rank Fusion при хибридном FTS5 + векторском преузимању (sqlite-vec рецепт).
VECTOR_STORE_DISABLE_VEC false Тачка раздвајања за тестирање/дијагностику у getVectorStore() (src/lib/memory/vectorStore.ts): када је true, приморава векторско складиште на null (симулира cloud/WASM окружење без sqlite-vec), чиме се преузимање меморије своди на FTS5 претрагу по кључним речима. Оставите неподешено у продукцији.
NOTION_API_KEY (није подешено) API кључ за Notion позадински систем (користи га позната конфигурација позадинског система genericBackend.ts).
NOTION_API_URL https://api.notion.com/v1 Основни URL за Notion API (може се заменити за самостално хостоване Notion алтернативе).
OBSIDIAN_API_KEY (није подешено) API кључ за Obsidian Vault позадински систем (користи га позната конфигурација позадинског система genericBackend.ts).
OBSIDIAN_API_URL http://localhost:27123 Основни URL за Obsidian Vault API (може се заменити за удаљени трезор).
MEMORY_TYPED_DECAY_ENABLED false Главни прекидач за TV6 пропадање типизиране меморије. Опционо (подразумевано искључено) — чишћење брише пропале меморије. Када је искључено, access_count/last_accessed_at представљају искључиво телеметрију и ништа се никада не брише.
MEMORY_TYPED_DECAY_EPISODIC_DAYS 30 TTL (у данима) након којег неискоришћена episodic меморија пропада. 0 чини и епизодну меморију отпорном. Трајни типови (factual/procedural/semantic) увек су отпорни. Сат пропадања поново се заснива на last_accessed_at.
MEMORY_TYPED_DECAY_ACCESS_IMMUNITY 3 Меморија убризгана >= оволико пута постаје отпорна на пропадање без обзира на тип. 0 онемогућава отпорност на основу приступа.
MEMORY_TYPED_DECAY_SWEEP_INTERVAL 0 (онемогућено) Интервал (у секундама) за опционално периодично чишћење пропале меморије у src/lib/memory/typedDecay.ts. 0/неподешено = без периодичног чишћења. Захтева двоструко укључивање: такође је неопходно MEMORY_TYPED_DECAY_ENABLED=true.
OMNIROUTE_STRICT_SYSTEM_PROVIDERS (није подешено) ID-ови провајдера раздвојени зарезима (без обзира на величину слова) који прихватају поруку system само на индексу 0 (src/lib/memory/injection.ts). За њих, уметање меморије у средину низа које чува кеш није безбедно у разговорима са више размена, па се меморија уместо тога спаја/додаје на почетак као водећа системска порука. Подразумевано обухвата само xiaomi-mimo/mimo; проширите за самостално хостоване крајње тачке компатибилне са OpenAI-јем (нпр. Qwen3.5+/3.6) чији шаблон разговора намеће исто ограничење једне водеће системске поруке.

Пример Docker конфигурације са мало RAM-а

128 је намењено само контролној табли. Агенти за програмирање на овој количини heap меморије добијају FATAL ERROR током дугих /v1/responses захтева. Не користите овај пример као Claude/Codex/Grok мрежни пролаз.

OMNIROUTE_MEMORY_MB=128
PROMPT_CACHE_MAX_SIZE=20
PROMPT_CACHE_MAX_BYTES=524288        # 512 KB
SEMANTIC_CACHE_MAX_SIZE=25
SEMANTIC_CACHE_MAX_BYTES=1048576     # 1 MB
STREAM_HISTORY_MAX=10

18. Синхронизација цена

Аутоматска синхронизација података о ценама модела из спољних извора.

Променљива Подразумевано Изворна датотека Опис
PRICING_SYNC_ENABLED false src/lib/pricingSync.ts Опциона периодична синхронизација цена.
PRICING_SYNC_INTERVAL 86400 (24h) src/lib/pricingSync.ts Интервал синхронизације у секундама.
PRICING_SYNC_SOURCES litellm src/lib/pricingSync.ts Извори података раздвојени зарезима.

Синхронизација Arena ELO

Променљива Подразумевано Изворна датотека Опис
ARENA_ELO_SYNC_ENABLED true src/shared/constants/featureFlagDefinitions.ts Периодична синхронизација ELO ранг-листе Arena AI, која се може конфигурисати преко заставица функционалности на контролној табли или искључити вредношћу false.
MODELS_CATALOG_PREFIX_MODE dual src/shared/constants/featureFlagDefinitions.ts, src/app/api/v1/models/catalog.ts Облик префикса који се користи за идентификаторе модела у GET /v1/models. dual објављује и кратки префикс псеудонима и канонски префикс добављача за сваки модел (компатибилност са претходним верзијама — приближно удвостручује каталог); alias емитује један идентификатор по моделу; canonical емитује само пуни префикс идентификатора добављача (добављачи чији је псеудоним већ канонски идентификатор задржавају један унос). Клијенти могу да измене појединачни захтев помоћу ?prefix=alias. Погледајте API_REFERENCE.
ARENA_ELO_SYNC_INTERVAL 86400 (24h) src/lib/arenaEloSync.ts Интервал синхронизације у секундама.

Добављач PromptQL Playground (незванично/експериментално)

Обрнутим инжењерингом направљен GraphQL посредник за сесије за prompt.ql.app (src/shared/constants/providers/web-cookie.ts). Све је опционо — подразумеване вредности упућују на јавне крајње тачке интерактивног окружења; мењајте их само за самостално хостовано/алтернативно PromptQL окружење.

Променљива Подразумевано Изворна датотека Опис
PROMPTQL_GRAPHQL_ENDPOINT https://data.prompt.ql.app/promptql/playground-v2-hge/v1/graphql open-sse/executors/promptql.ts GraphQL крајња тачка која се користи за операције ћаскања/сесије.
PROMPTQL_CREDITS_ENDPOINT https://data.pro.ql.app/v1/graphql open-sse/executors/promptql.ts, open-sse/services/usage/promptql.ts GraphQL крајња тачка која се користи за упит о стању/потрошњи кредита.
PROMPTQL_TOKEN_REFRESH_URL https://auth.pro.ql.app/ddn/project/token open-sse/executors/promptql.ts Крајња тачка која се користи за покушај освежавања токена.
PROMPTQL_POLL_TIMEOUT_MS 180000 open-sse/executors/promptql.ts Максимално време (ms) за испитивање thread_events пре истека времена.

HyperAgent веб-провајдер (незванично/експериментално)

Реверзно пројектовани сесијски мост за hyperagent.com (src/shared/constants/providers/web-cookie.ts). Опционално — подразумевано подешавање указује на јавну крајњу тачку за наплату/употребу; промените га само за HyperAgent инсталацију која се самостално хостује или алтернативну инсталацију.

Променљива Подразумевано Изворна датотека Опис
HYPERAGENT_USAGE_URL https://hyperagent.com/api/settings/billing/usage open-sse/services/usage/hyperagent.ts Крајња тачка која се користи за преузимање блокова кредита за наплату/употребу.

Квоте употребе за Kilo Code

Провера личног стања у USD и употребе Kilo Pass-а за Kilo Code провајдер. Опционално — подразумевано подешавање указује на јавни Kilo API; промените га само за релеј/тестну поставку. Аутентификација користи постојећи OAuth приступни токен везе.

Променљива Подразумевано Изворна датотека Опис
KILO_API_URL https://api.kilo.ai open-sse/services/usage/kilocode.ts Основни URL који се користи за преузимање личног Kilo Code стања и употребе Kilo Pass-а.

Adobe Firefly веб-провајдер (незванично/експериментално)

Освежавање сесије којим управља прегледач за Adobe Firefly веб-провајдер (open-sse/services/adobeFireflyBrowserLogin.ts, open-sse/services/adobeFireflySession.ts, open-sse/services/adobeFireflyClient.ts). Опционално — све подразумеване вредности прилагођене су уобичајеној инсталацији на стоном рачунару.

Уклоњено у #9255. Стари Chrome процес повезан преко CDP-а (adobeFireflyChromeRuntime.ts) замењен је Playwright услугом за пријављивање путем прегледача, а његова подешавања више не постоје. Променљиве ADOBE_FIREFLY_CHROME_ CDP_PORT / VISIBLE / HEADED / PING / FORCE_RESTART, као и ADOBE_FIREFLY_LOGIN_WAIT_MS и ADOBE_FIREFLY_FORTER_WAIT_MS, не читају се нигде у бази кода — њихово постављање нема ефекта.

Променљива Подразумевано Изворна датотека Опис
ADOBE_FIREFLY_CHROME_HEADLESS 0 open-sse/services/adobeFireflyBrowserLogin.ts Поставите на 1 за прави Chrome без графичког интерфејса (познато је да не ради за генерисање; само за отклањање грешака).
ADOBE_FIREFLY_BROWSER_REFRESH 1 open-sse/services/adobeFireflySession.ts Укључивање/искључивање проактивног загревања прегледача. 0 онемогућава проактивно загревање (опоравак од грешке 408 усред серије се и даље примењује).
ADOBE_FIREFLY_SESSION_DISK 1 open-sse/services/adobeFireflySession.ts Поставите на 0 да бисте онемогућили чување Adobe Firefly сесије на диску.
ADOBE_FIREFLY_MIN_SUBMIT_GAP_MS (није постављено) open-sse/services/adobeFireflySession.ts Минимални размак (ms) који се примењује између узастопних слања и замењује уграђену подразумевану вредност.
ADOBE_FIREFLY_BATCH_EXTRA_GAP_MS (није постављено) open-sse/services/adobeFireflySession.ts Додатни размак (ms) који се додаје након успешне серије и замењује уграђену подразумевану вредност.
ADOBE_FIREFLY_SUBMIT_BASE_DELAY_MS (није постављено) open-sse/services/adobeFireflyClient.ts Основно кашњење (ms) пре слања захтева за генерисање, које замењује уграђену подразумевану вредност.

19. Синхронизација модела (развој)

Променљива Подразумевано Изворна датотека Опис
MODELS_DEV_SYNC_ENABLED (није постављено) src/lib/modelsDevSync.ts Строго замењивање подешавања синхронизације цена са models.dev. Ако није постављено = поштује Подешавања > AI (modelsDevSyncEnabled). 0/false/off/no има предност над базом података и прескаче и периодичну синхронизацију и SQL/JSON скенирања функције getModelsDevPricing() (опоравак када је контролна табла блокирана у истој петљи догађаја). 1/true/on/yes принудно укључује синхронизацију. Чување/брисање цена и даље позива backupDbFile("pre-write"), што не обавља ништа током ограничења од 60 минута или када је постављено DISABLE_SQLITE_AUTO_BACKUP.
MODELS_DEV_SYNC_INTERVAL 86400 (24 ч.) src/lib/modelsDevSync.ts Интервал синхронизације каталога модела током развоја, у секундама.
CONTEXT_WINDOW_RECONCILE_INTERVAL 86400 (24 ч.) src/lib/contextWindowResolver.ts Интервал (у секундама) за самокоригујући усклађивач контекстуалног прозора (5004): фиксира прозоре које је декларисао добављач, откривене преко /models, као замене auto:discovery када се разликују од каталога. Поставите на 0 да бисте онемогућили. Поново користи већ синхронизоване податке (без новог преузимања); никада не преписује manual замене.

20. Подешавања специфична за добављача

Променљива Подразумевано Изворна датотека Опис
OPENROUTER_CATALOG_TTL_MS 86400000 (24 ч) src/lib/catalog/openrouterCatalog.ts TTL кеша каталога OpenRouter модела.
MODEL_CATALOG_INCLUDE_NAMES true src/shared/constants/featureFlagDefinitions.ts Укључује поља name погодна за приказ у одговорима /v1/models. Онемогућите за клијенте који очекују само ID-ове.
CATALOG_BUILD_TIMEOUT_MS 8000 (8 с) src/app/api/v1/models/catalogCache.ts Временско ограничење чекања на хладној путањи за обједињену поновну изградњу каталога путем GET /v1/models (#12627). Након истека времена, враћа се последњи исправан одговор 200, ако постоји.
OMNIROUTE_SYNCED_CATALOG_STALE_AFTER_MS 2592000000 (30 дана) src/lib/db/models/activeSyncedCatalog.ts Старост након које синхронизована листа модела везе престаје да буде меродавна за усмеравање и дозвољава наставак преко регистра (#12849). Редови којима никада није додељена временска ознака сматрају се застарелим.
NANOBANANA_POLL_TIMEOUT_MS 120000 open-sse/handlers/imageGeneration.ts Максимално време чекања на задатке генерисања слика NanoBanana.
NANOBANANA_POLL_INTERVAL_MS 2500 open-sse/handlers/imageGeneration.ts Учесталост провере статуса NanoBanana задатка.
ADOBE_FIREFLY_SUBMIT_BASE_DELAY_MS 8000 open-sse/services/adobeFireflyUpscale.ts Основно кашњење за експоненцијално повећавање времена између поновних покушаја слања захтева за Adobe Firefly увећање резолуције.
AWS_REGION (није подешено) src/lib/providers/validation.ts, open-sse/handlers/audioSpeech.ts Регион који се користи за формирање AWS Bedrock крајњих тачака (Kiro, аудио).
AWS_DEFAULT_REGION (није подешено) src/lib/providers/validation.ts, open-sse/handlers/audioSpeech.ts Резервна вредност када AWS_REGION није подешен.
CLOUDFLARE_ACCOUNT_ID (није подешено) open-sse/executors/cloudflare-ai.ts ID налога за Cloudflare Workers AI.
CLOUDFLARE_PLAYGROUND_CHROME_PATH (није подешено) open-sse/executors/cloudflare-playground.ts Пуна путања до извршне датотеке десктоп верзије Chrome-а за Cloudflare AI Playground извршавач, која се користи када провера отиска прегледача без графичког интерфејса блокира Chromium који долази уз Playwright.
CLOUDFLARE_API_BASE https://api.cloudflare.com/client/v4 src/app/api/settings/proxy/cloudflare-deploy/route.ts Замена основне адресе Cloudflare REST API-ја коју користи постављач Workers релеја за скуп проксија (#4640 / 9router#1360).
NEXT_PUBLIC_CLOUDFLARE_RELAY_DEFAULT_PROJECT omniroute-relay src/app/(dashboard)/dashboard/settings/components/proxy/CloudflareRelayModal.tsx Подразумевани назив worker пројекта предложен у модалном прозору „Постави релеј“ за скуп проксија.
NEXT_PUBLIC_CLOUDFLARE_RELAY_ENABLED true src/app/(dashboard)/dashboard/settings/components/proxy/ProxyPoolTab.tsx Подесите на false да бисте сакрили опцију Cloudflare Workers релеја са картице скупа проксија.
CLOUDFLARED_BIN аутоматско откривање src/lib/cloudflaredTunnel.ts Прилагођена путања до извршне датотеке cloudflared.
CLOUDFLARED_PROTOCOL http2 src/lib/cloudflaredTunnel.ts Транспортни протокол тунела: http2 (подразумевано), quic или auto.
CLOUDFLARED_CONFIG (није подешено) src/lib/cloudflaredTunnel.ts Путања до локално управљане cloudflared датотеке config.yml (са tunnel:, credentials-file:, ingress:). Када је подешено, OmniRoute покреће tunnel --config <path> run (именовани тунел) уместо привременог брзог тунела.
CLOUDFLARED_HOSTNAME (из конфигурације ingress-а) src/lib/cloudflaredTunnel.ts Замена јавног назива хоста именованог тунела (нпр. ai.example.com), који се пријављује као publicUrl/apiUrl. Када није подешен, чита се из првог ingress назива хоста у конфигурацији.
DENO_DEPLOY_API_BASE https://api.deno.com/v2 src/app/api/settings/proxy/deno-deploy/route.ts Замењује основну адресу Deno Deploy REST API-ја коју користи алат за примену релеја скупа проксија (#4643 / 9router#1437).
NEXT_PUBLIC_DENO_RELAY_DEFAULT_PROJECT omniroute-deno-relay src/app/(dashboard)/dashboard/settings/components/proxy/DenoRelayModal.tsx Подразумевани назив Deno Deploy апликације предложен у модалном прозору „Deploy Relay“ за скуп проксија.
NEXT_PUBLIC_DENO_RELAY_ENABLED true src/app/(dashboard)/dashboard/settings/components/proxy/ProxyPoolTab.tsx Поставите на false да бисте сакрили опцију Deno Deploy релеја са картице Proxy Pool.
SEARCH_CACHE_TTL_MS 300000 (5 мин) open-sse/services/searchCache.ts TTL за кеширање одговора API-ја за претрагу (Perplexity, Brave итд.).
ENABLE_CC_COMPATIBLE_PROVIDER false src/shared/utils/featureFlags.ts Приказује експериментални кориснички интерфејс за CC-компатибилне добављаче, намењен релејима који подржавају само Claude Code.
NINEROUTER_HOST 127.0.0.1 open-sse/executors/ninerouter.ts Замењује хост на којем уграђена инстанца 9router ослушкује.
NINEROUTER_PORT 20130 open-sse/executors/ninerouter.ts Замењује порт на којем уграђена инстанца 9router ослушкује.
EMBED_WS_PROXY_HOST 127.0.0.1 src/lib/services/embedWsProxy.ts Хост за повезивање WebSocket проксија уграђене услуге (подразумевано само повратна петља).
EMBED_WS_PROXY_PORT 20131 src/lib/services/embedWsProxy.ts Порт за WebSocket прокси сервер уграђене услуге.
CLIPROXYAPI_HOST 127.0.0.1 open-sse/executors/cliproxyapi.ts Хост CLIProxyAPI моста (застарела интеграција).
CLIPROXYAPI_PORT 5544 open-sse/executors/cliproxyapi.ts Порт CLIProxyAPI моста.
CLIPROXYAPI_API_KEY (празно) open-sse/handlers/chatCore/cliproxyapiCredentials.ts Резервни кључ равни података када поставка cliproxyapi_api_key није присутна.
CLIPROXYAPI_MANAGEMENT_KEY (празно) src/lib/services/cliproxyAccountHealth.ts Управљачки кључ за читање стања налога из споља управљане CLIProxyAPI инстанце.
CLIPROXYAPI_CONFIG_DIR ~/.cli-proxy-api src/lib/versionManager/processManager.ts Директоријум конфигурације за CLIProxyAPI.
CLIPROXY_BIND_HOST 127.0.0.1 docker-compose.yml Интерфејс хоста на којем docker-compose објављује помоћни контејнер cliproxyapi (#12578). Његов волумен података садржи OAuth/API акредитиве добављача, а фиксирана слика нема замену api-keys равни података засновану на променљивама окружења (само монтирани config.yaml), па 0.0.0.0 излаже услугу која садржи акредитиве целој локалној мрежи.
MUX_SERVICE_PORT 8322 src/lib/services/bootstrap.ts Замењује порт на којем уграђени Mux (coder/mux) демон за оркестрацију агената ослушкује (увек 127.0.0.1).
DARIO_HOST 127.0.0.1 open-sse/executors/dario.ts Хост за повезивање/конекцију уграђене услуге Dario (подразумевано само повратна петља).
DARIO_PORT 3456 open-sse/executors/dario.ts Порт уграђене услуге Dario.
DARIO_HOST 127.0.0.1 open-sse/executors/dario.ts Хост за повезивање/конекцију уграђене услуге Dario (подразумевано само повратна петља).
DARIO_PORT 3456 open-sse/executors/dario.ts Порт уграђене услуге Dario.
LOCAL_HOSTNAMES (празно) open-sse/config/providerRegistry.ts Додатна имена хостова, раздвојена зарезима, која се третирају као „локална“ (називи Docker сервиса итд.).

ENABLE_CC_COMPATIBLE_PROVIDER је намењен искључиво посредничким сервисима трећих страна који прихватају само Claude Code клијенте. OmniRoute преписује захтеве тако да их ти посреднички сервиси прихвате. Ако желите да користите само Claude Code CLI или нисте сигурни шта су ти посреднички сервиси, оставите ову опцију онемогућену и уместо тога додајте стандардног добављача компатибилног са Anthropic API-јем.


21. Здравље проксија

Променљива Подразумевано Изворна датотека Опис
PROXY_FAST_FAIL_TIMEOUT_MS 2000 src/lib/proxyHealth.ts Временско ограничење брзе провере здравља.
PROXY_LATENCY_WINDOW_HOURS 3 src/lib/db/proxies.ts Временски период (у сатима) за израчунавање просечне латенције проксија кандидата у стратегији скупа оптимизованој за латенцију.
PROXY_HEALTH_CACHE_TTL_MS 30000 src/lib/proxyHealth.ts TTL кеша резултата провере здравља.
PROXY_HEALTH_UNHEALTHY_CACHE_TTL_MS 2000 src/lib/proxyHealth.ts TTL кеша за неуспеле провере здравља проксија. Ова вредност треба да буде краћа од PROXY_HEALTH_CACHE_TTL_MS како би се након пролазних прекорачења времена проксија при високој конкурентности брзо поново покушало, без онемогућавања брзог неуспеха за заиста недоступне проксије.
PROXY_HEALTH_ENABLED true src/lib/proxyHealth/scheduler.ts Поставите на false да бисте онемогућили позадински планер здравља проксија који периодично проверава регистроване проксије.
PROXY_HEALTH_INTERVAL_MS 600000 src/lib/proxyHealth/scheduler.ts Интервал циклуса позадинског планера здравља у ms (најмање 60000).
PROXY_HEALTH_TEST_URL https://httpbin.org/ip src/lib/proxyHealth/probeTarget.ts Циљ провере доступности који користе планер и крајња тачка /api/settings/proxies/auto-test. Подесите га на интерни URL или URL који сами хостујете да бисте избегли подразумевани јавни URL.
PROXY_HEALTH_TEST_CONCURRENCY 10 src/lib/proxyHealth/probeTarget.ts Број провера које се истовремено покрећу по групи, а који деле планер и крајња тачка /api/settings/proxies/auto-test. Минимална вредност је 1, а максимална 50.
PROXY_HEALTH_TEST_STAGGER_MS 100 src/lib/proxyHealth/probeTarget.ts Кашњење у ms између покретања две провере унутар групе. Без њега цела група креће истовремено, па дељена излазна IP адреса може да активира ограничење брзине на циљу. Подесите на 0 да бисте онемогућили временски размак; максимална вредност је 5000.
PROXY_HEALTH_USE_PROVIDER_TARGET true src/lib/proxyHealth/providerProbeTarget.ts Подесите на "false" да бисте обуставили проверу стварног хоста добављача додељеног проксију (GET /models, без API кључа) и уместо тога увек користили PROXY_HEALTH_TEST_URL.
PROXY_HEALTH_AUTO_DEACTIVATE false src/lib/proxyHealth/statusPolicy.ts Када је false (подразумевано), аутоматизоване провере доступности (планер + дугме "Тестирај све" крајње тачке /api/settings/proxies/auto-test) су само за читање и никада не мењају статус проксија — само оператер поставља прокси као активан/неактиван, тако да нестабилна провера не може да блокира додељени прокси (#6246). Подесите на true да бисте вратили претходно понашање тестирања и постављања статуса.
PROXY_POOL_EGRESS_OBSERVATION false src/shared/utils/featureFlags.ts Опциона заставица функције (погледајте FEATURE_FLAGS.md; замена подешавања у бази података контролне табле има предност). true (или 1, yes) приказује опсервацију излазног саобраћаја скупа проксија само за читање испод скупа проксија на контролној табли (различите излазне IP адресе, везе и највећи број веза иза једне IP адресе током последња 24 h, на основу евиденције проксија). Никада се не користи за усмеравање.
PROXY_AUTO_REMOVE false src/lib/proxyHealth/scheduler.ts Подесите на true да бисте омогућили планеру да аутоматски уклања проксије након поновљених узастопних неуспеха.
PROXY_AUTO_REMOVE_AFTER 3 src/lib/proxyHealth/scheduler.ts Број узастопних неуспеха након којих планер аутоматски уклања прокси (када је PROXY_AUTO_REMOVE=true).
PROXY_AUTO_DISABLE false src/lib/proxyHealth/scheduler.ts Поставите на true да бисте омогућили планеру да привремено онемогући (статус dead, никада се не брише) прокси након више узастопних неуспеха, уместо да га уклони. Недеструктивна алтернатива за PROXY_AUTO_REMOVE: прокси се одмах искључује из разрешења скупа/ротације (филтер активног статуса који користи разрешење скупа опсега већ га искључује) и аутоматски се поново активира када поново почне успешно да пролази провере. Користи исти праг PROXY_AUTO_REMOVE_AFTER. Ако су обе заставице постављене на true, PROXY_AUTO_REMOVE има предност.
OMNIROUTE_CONTROL_PLANE_PROXY_DIRECT_FALLBACK false src/shared/constants/featureFlagDefinitions.ts Омогућава OAuth токовима и токовима валидације добављача да заобиђу закачени прокси и директно се повежу када претходне провере доступности проксија не успеју. Важећи редослед приоритета је: замена из базе података заставица функционалности > променљива окружења > подразумевана вредност.
RATE_LIMIT_MAX_WAIT_MS 30000 (30s) open-sse/services/rateLimitManager.ts Максимално време чекања након одговора 429 пре него што захтев буде проглашен неуспешним.
RATE_LIMIT_EXECUTION_MAX_WAIT_MS 600000 (10 min) open-sse/services/rateLimitManager.ts Горња граница времена током којег прихваћени захтев може остати у извршавању пре него што му истекне резервација ограничења брзине — одвојено од временског буџета чекања у реду како споро покретање преузимања на неинкременталним мрежним пролазима не би истекло (#12027).
RATE_LIMIT_MAX_QUEUE_DEPTH 0 (онемогућено) open-sse/services/rateLimitManager.ts Ограничење пријема у ред: одбацује захтев са одговором 429 queue_full када се оволико захтева већ налази у реду. 0 = неограничено (подразумевано).
RATE_LIMIT_AUTO_ENABLE (није постављено) open-sse/services/rateLimitManager.ts Принудно укључује или искључује заштитни механизам за аутоматско омогућавање ограничења брзине, без обзира на сачувано подешавање контролне табле. Прихвата true/1/on за принудно укључивање и false/0/off за принудно искључивање.
PROVIDER_COOLDOWN_ENABLED (није постављено → искључено) open-sse/services/providerCooldownTracker.ts Опционо глобално праћење периода мировања добављача/везе између захтева. Подразумевано је ИСКЉУЧЕНО (преклапа се са периодом мировања везе / прекидачем кола добављача). Прихвата true/1/on за омогућавање.
PROVIDER_COOLDOWN_MIN_MS 5000 open-sse/services/providerCooldownTracker.ts Минимални период мировања (ms) пре поновног покушаја са добављачем/везом који нису успели. Експоненцијално се увећава са узастопним неуспесима. Користи се само када је PROVIDER_COOLDOWN_ENABLED омогућено.
PROVIDER_COOLDOWN_MAX_MS 300000 (5 мин) open-sse/services/providerCooldownTracker.ts Максимално ограничење периода хлађења (ms) пре него што се поново покуша са неуспелим провајдером/везом, без обзира на околности. Користи се само када је PROVIDER_COOLDOWN_ENABLED омогућен.
STREAM_RECOVERY_ENABLED (није постављено → искључено) src/lib/resilience/settings.ts (почетна вредност) → open-sse/services/streamRecovery.ts (логика) Шта: транспарентан опоравак прекинутих узводних токова (порт из free-claude-code). Задржава почетни SSE прозор до STREAM_RECOVERY.HOLDBACK_MS (750 ms), тако да се прекид пре потврде — онај који се догоди пре него што било који бајт стигне до клијента — поново отвара и неприметно понавља. Када омогућити: код нестабилних/узводних сервиса који често прекидају ток са 0 бајтова на почетку; оставите ИСКЉУЧЕНО ако не можете да прихватите до 750 ms додатног времена до првог токена за сваки ток. Прихвата true/1/on. Поставља почетну вредност трајно сачуваног подешавања отпорности; када се подеси, подешавање на контролној табли има предност.
STREAM_RECOVERY_MIDSTREAM_ENABLED (није постављено → искључено) src/lib/resilience/settings.ts (почетна вредност) → open-sse/services/streamRecovery.ts (логика) Шта: наставак усред тока (Фаза 4.4) — након прекида после потврде (бајтови су већ стигли до клијента), поново шаље захтев са делимичним текстом као унапред попуњеним одговором асистента и спаја недостајући суфикс. Само за OpenAI-компатибилне токове обичног текста; никада се не активира док је позив алатке у току. Када омогућити: за дуга генерисања која се прекидају усред одговора, ако прихватате да опорављени завршетак стигне одједном, уместо токен по токен. Независно је од STREAM_RECOVERY_ENABLED (другачији профил ризика). Прихвата true/1/on.
STREAM_THROUGHPUT_WATCHDOG_ENABLED (није постављено → искључено) src/lib/resilience/settings.tsopen-sse/services/throughputWatchdog.ts Опциони надзор корисног излаза активног тока. Открива токове који настављају да шаљу делове, али остају испод подешене брзине излаза асистента; сигнали активности, догађаји употребе, празне делте и фазе коришћења алатки/резоновања не представљају се лажно као напредак. Одвојено од временских ограничења неактивности и крајњег рока.
STREAM_THROUGHPUT_WATCHDOG_WARMUP_MS 30000 src/lib/resilience/settings/normalize.ts Период одлагања пре процене пропусности, ограничен на 0600000 ms.
STREAM_THROUGHPUT_WATCHDOG_WINDOW_MS 30000 src/lib/resilience/settings/normalize.ts Клизни прозор корисног излаза, ограничен на 1000600000 ms; пре прекида је потребан један потпун прозор.
STREAM_THROUGHPUT_WATCHDOG_MIN_BYTES_PER_SECOND 4 src/lib/resilience/settings/normalize.ts Минимална брзина излазних UTF-8 бајтова асистента (конзервативна замена за токене), ограничена на 11000000.
STREAM_THROUGHPUT_WATCHDOG_MIN_USEFUL_BYTES 1 src/lib/resilience/settings/normalize.ts Минимални узорак корисног излаза већи од нуле који се сматра мерљивим, ограничен на 11000000 бајтова.
HEALTHCHECK_STAGGER_MS 3000 src/lib/tokenHealthCheck.ts Интервал постепеног покретања (ms) између провера исправности токена провајдера при покретању.
HEALTHCHECK_JITTER_MIN_MS 500 src/lib/tokenHealthCheck.ts Минимално насумично одступање (ms) које се додаје на HEALTHCHECK_STAGGER_MS између провера исправности токена провајдера, ради спречавања наглог слања великог броја захтева (Проблем #1220).
HEALTHCHECK_JITTER_MAX_MS 5000 src/lib/tokenHealthCheck.ts Максимално насумично одступање (ms) које се додаје на HEALTHCHECK_STAGGER_MS између провера исправности токена провајдера, ради спречавања наглог слања великог броја захтева (Проблем #1220).
HEALTHCHECK_BATCH_SIZE 20 src/lib/tokenHealthCheck.ts Величина групе истовремених провера током почетног прегледа исправности токена; веће вредности паралелно проверавају више веза, док мање вредности смањују нагло оптерећење (проблем #7875, регресија проблема #7719).
REQUEST_RETRY 2 src/sse/services/cooldownAwareRetry.ts Број аутоматских поновних покушаја за одговоре о периоду мировања на нивоу модела пре враћања грешке клијенту.
MAX_RETRY_INTERVAL_SEC 30 src/sse/services/cooldownAwareRetry.ts Максимални интервал експоненцијалног одлагања (у секундама) између поновних покушаја током периода мировања. Ограничен је овом вредношћу без обзира на узводни Retry-After.
HEADROOM_URL http://localhost:8787 src/lib/headroom/detect.ts URL Headroom проксија за уштеду токена. Животни циклус контролне табле (api/headroom/*) подразумевано покреће локални headroom-ai CLI на повратној мрежној адреси; замените вредност само ради усмеравања на спољни Docker бочни прокси.

Константе за подешавање опоравка тока

Понашање задржавања при опоравку подешава се непроменљиво уписаним константама у open-sse/config/constants.ts (STREAM_RECOVERY), које су овде приказане ради референце — њихова измена захтева измену кода, а не променљиву окружења:

  • STREAM_RECOVERY.HOLDBACK_MS = 750 — колико дуго се почетни SSE прозор задржава како би се у случају раног прекида могао поновити покушај пре него што се било који бајт пошаље клијенту.
  • STREAM_RECOVERY.BUFFER_MAX_BYTES = 65536 — чврсто ограничење задржаног прозора; извршава се слање (пражњење + директно прослеђивање) чим се акумулира оволико бајтова, без обзира на тајмер.
  • STREAM_RECOVERY.EARLY_RETRY_MAX = 4 — максималан број неприметних поновних отварања узводног тока док задржани садржај још није послат.

Ограничење брзине по добављачу са клизним прозором (без променљиве окружења): резервни механизам ограничења брзине по добављачу са клизним прозором, пренет из FCC-а, постоји у коду (open-sse/services/providerDefaultRateLimit.ts, повезан преко open-sse/services/rateLimitManager.ts), али се испоручује са празном подразумеваном мапом и тренутно нема операторску променљиву окружења — омогућава се само преко тестне спојнице / измене кода. Намерно није наведен у горњој табели. Ограничивач релеја по пару (token, IP) који има параметар за подешавање јесте RELAY_IP_PER_MINUTE (§3 Мрежа и портови).


22. Отклањање грешака

Caution

Ове променљиве производе опширан излаз и могу открити осетљиве податке. Никада их не омогућавајте у продукцији.

Променљива Подразумевано Изворна датотека Опис
CURSOR_DEBUG (није постављено) open-sse/executors/cursor.ts Поставите на 1 да бисте омогућили опширне евиденције Cursor извршиоца (декодирани SSE фрагменти итд.).
CURSOR_STREAM_DEBUG (није постављено) open-sse/executors/cursor.ts Уназад компатибилан псеудоним за CURSOR_DEBUG.
CURSOR_DUMP_FILE (није постављено) open-sse/executors/cursor.ts Опциона путања датотеке у коју се уписују необрађени декодирани Cursor фрагменти када је CURSOR_DEBUG=1.
CURSOR_STREAM_TIMEOUT_MS 300000 open-sse/executors/cursor.ts Временско ограничење неактивности тока (ms) за Cursor извршиоца.
CURSOR_KV_GRACE_MS 2000 open-sse/executors/cursor.ts Период толеранције (ms) након меког завршетка composer kv_after_text када бајтови остану у баферу — омогућава завршном позиву алатке exec_mcp да доврши свој оквир.
CURSOR_TOOL_DIRECTIVE омогућено (!== "0") open-sse/executors/cursor.ts Директива за потврду алатке која омогућава да composer-2.5 поуздано издаје позиве алатки. Поставите на 0 да бисте је онемогућили.
OMNIROUTE_SYSTEM_INSTRUCTION_APPEND (није постављено) open-sse/translator/request/claude-to-openai.ts, open-sse/translator/response/openai-to-claude.ts Текст системског упита који дефинише оператер и који се додаје системској поруци НАКОН превођења (убацивање после превођења), чиме доспева до codex/Responses и путања /v1/messages. Такође се користи као префикс директиве који се уклања из поновљених блокова системског увода. Оставите непостављено да бисте онемогућили.
CURSOR_IMAGE_FETCH_TIMEOUT_MS 15000 open-sse/utils/cursorImages.ts Временско ограничење преузимања по слици (ms) за удаљени image_url визуелни улаз.
CURSOR_STATE_DB_PATH (аутоматски пронађено) open-sse/utils/cursorVersionDetector.ts Замењује путању претраге базе стања Cursor IDE-а која се користи за откривање верзије IDE-а.
CURSOR_AGENT_CLI_VERSION (откривање / фиксирање) open-sse/utils/cursorAgentCliVersion.ts Идентификатор CLI издања агента (YYYY.MM.DD-<hash>) за x-cursor-client-version: cli-… при покретању агента.
CURSOR_AGENT_BIN (није постављено) open-sse/handlers/imageGeneration/providers/cursorAgentImage.ts Путања до бинарне датотеке Cursor Agent-а која се користи за генерисање слика. Ако није постављена, руковалац користи providerSpecificData.agentBin, а затим PATH.
CURSOR_IMG_TIMEOUT_MS 210000 open-sse/handlers/imageGeneration/providers/cursorAgentImage.ts Укупно временско ограничење по слици (ms) за послове Cursor Agent-а са сликама.
CURSOR_IMG_MAX_CONCURRENT 2 open-sse/handlers/imageGeneration/providers/cursorAgentImage.ts Ограничење конкурентности дељеног места за Cursor послове са сликама.
CURSOR_IMG_MODEL захтев / auto open-sse/handlers/imageGeneration/providers/cursorAgentImage.ts Замењује Cursor CLI --model за послове са сликама.
UC_IMAGE_POLL_INTERVAL_MS 2000 open-sse/handlers/imageGeneration/providers/ucImage.ts Учесталост провере резултата генерисања слика у UC-у (uncensored.com) (ms).
UC_IMAGE_POLL_TIMEOUT_MS 60000 open-sse/handlers/imageGeneration/providers/ucImage.ts Укупно временско ограничење провере резултата генерисања слика у UC-у (ms).
UC_VIDEO_POLL_INTERVAL_MS 3000 open-sse/handlers/videoGeneration/providers/ucVideo.ts Учесталост провере резултата генерисања видео-записа у UC-у (uncensored.com) (ms).
UC_VIDEO_POLL_TIMEOUT_MS 300000 open-sse/handlers/videoGeneration/providers/ucVideo.ts Укупно временско ограничење провере резултата генерисања видео-записа у UC-у (ms).
CURSOR_DATA_DIR (аутоматски пронађено) open-sse/utils/cursorAgentCliVersion.ts Замењује директоријум података Cursor Agent CLI-ја (…/versions/<id>); иста променљива коју користи званични агент.
CURSOR_TOKEN (није постављено) scripts/ad-hoc/cursor-tap.cjs Директни Cursor токен носиоца који користе програмерске алатке.
OMNIROUTE_LOG_REQUEST_SHAPE онемогућено (укључује се путем "1") src/app/api/v1/chat/completions/route.ts Бележи ознаке типа и дужине садржаја за велика оптерећења ћаскања када је постављено "1". Подразумевано је искључено ради смањења шума у евиденцији.
DEBUG_RESPONSES_SSE_TO_JSON (није постављено) open-sse/handlers/responseTranslator.ts Поставите на true да бисте бележили детаље превођења Responses API SSE→JSON.
DEBUG_CLAUDE_NONSTREAM (није постављено) open-sse/handlers/responseTranslator.ts Поставите на true да бисте приказали празне textContent фрагменте на путањи превођења Claude одговора (само за отклањање грешака).
NEXT_PUBLIC_OMNIROUTE_E2E_MODE (није постављено) E2E окружење за тестирање Поставите на true да бисте омогућили E2E режим тестирања (ублажена аутентификација, тестне спојнице).

23. GitHub интеграција

Омогућите корисницима да пријављују проблеме директно са контролне табле.

Променљива Подразумевано Изворна датотека Опис
GITHUB_ISSUES_REPO (није подешено) src/app/api/v1/issues/report/route.ts Репозиторијум у формату owner/repo.
GITHUB_ISSUES_TOKEN (није подешено) src/app/api/v1/issues/report/route.ts GitHub лични приступни токен са опсегом issues:write.
GITHUB_TOKEN (није подешено) помоћни алати за тријажу проблема / агента у облаку Генерички GitHub приступни токен који се користи као резервна опција за GITHUB_ISSUES_TOKEN и који користе помоћни алати агента у облаку у src/lib/cloudAgent/*.

Сценарији примене

За SRE смернице за релејни позадински систем (понашање ts/bifrost/auto, позиционирање 9router у односу на CLIProxyAPI и резервну стратегију за висок проток), погледајте Стратегија релејног позадинског система.

Минимално локално развојно окружење

JWT_SECRET=$(openssl rand -base64 48)
API_KEY_SECRET=$(openssl rand -hex 32)
INITIAL_PASSWORD=dev123
PORT=20128
NODE_ENV=development

Продукционо окружење у Docker-у

JWT_SECRET=<generated>
API_KEY_SECRET=<generated>
INITIAL_PASSWORD=<generated>
STORAGE_ENCRYPTION_KEY=<generated>
DATA_DIR=/data
PORT=20128
API_PORT=20129
NODE_ENV=production
AUTH_COOKIE_SECURE=true
REQUIRE_API_KEY=true
NEXT_PUBLIC_BASE_URL=https://omniroute.example.com
BASE_URL=http://localhost:20128
OMNIROUTE_MEMORY_MB=8192
CORS_ORIGIN=https://your-frontend.example.com

Изоловано окружење / CI

JWT_SECRET=test-jwt-secret-for-ci
API_KEY_SECRET=test-api-key-secret-for-ci
INITIAL_PASSWORD=testpass
NODE_ENV=production
OMNIROUTE_DISABLE_BACKGROUND_SERVICES=true
APP_LOG_TO_FILE=false

VPS са реверзним проксијем (nginx + Cloudflare)

JWT_SECRET=<generated>
API_KEY_SECRET=<generated>
STORAGE_ENCRYPTION_KEY=<generated>
PORT=20128
AUTH_COOKIE_SECURE=true
REQUIRE_API_KEY=true
NEXT_PUBLIC_BASE_URL=https://omniroute.example.com
BASE_URL=http://127.0.0.1:20128
CORS_ORIGIN=https://omniroute.example.com
ENABLE_TLS_FINGERPRINT=true
CLI_COMPAT_ALL=1

24. Skills изоловано окружење (v3.8.0+)

Ограничења и безбедносна подешавања која се примењују када Skills оквир (src/lib/skills/) извршава аутоматизације које су дефинисали корисници у изолованом окружењу.

Променљива Подразумевано Изворна датотека Опис
SKILLS_SANDBOX_TIMEOUT_MS 10000 (10 s) src/lib/skills/builtins.ts Ограничење укупног времена по извршавању за код вештине у изолованом окружењу. Чврста граница; све што траје дуже биће прекинуто.
SKILLS_EXECUTION_TIMEOUT_MS (користи SKILLS_SANDBOX_TIMEOUT_MS као резервну вредност) src/lib/skills/ Ограничење времена за оркестрацију вештине високог нивоа. Подесите вредност већу од SKILLS_SANDBOX_TIMEOUT_MS да бисте омогућили токове рада у више корака.
SKILLS_MAX_FILE_BYTES 1048576 (1 MB) src/lib/skills/builtins.ts Максималан број бајтова који вештина може да прочита из било које појединачне датотеке у изолованом окружењу.
SKILLS_MAX_HTTP_RESPONSE_BYTES 256000 (250 KB) src/lib/skills/builtins.ts Максималан број бајтова забележених из било ког појединачног HTTP одговора унутар вештине.
SKILLS_MAX_SANDBOX_OUTPUT_CHARS 100000 src/lib/skills/builtins.ts Чврсто ограничење броја stdout/stderr знакова враћених из једног позива изолованог окружења.
SKILLS_SANDBOX_NETWORK_ENABLED false src/lib/skills/builtins.ts Подесите на 1/true да бисте дозволили одлазни мрежни саобраћај из изолованог окружења. Ради безбедности, подразумевано је изоловано.
SKILLS_ALLOWED_SANDBOX_IMAGES (празно) src/lib/skills/builtins.ts Листа слика контејнера, раздвојених зарезима, које су дозвољене за извршавање у изолованом окружењу. Празна вредност значи да је дозвољена само уграђена подразумевана слика.
SKILLS_SANDBOX_DOCKER_IMAGE (уграђена подразумевана вредност) src/lib/skills/ Слика контејнера која се користи при покретању изолованог окружења заснованог на Docker-у. Замените је да бисте фиксирали прилагођену ојачану основну слику.
SKILLS_SANDBOX_RUNTIME auto src/lib/skills/sandbox.ts, src/lib/skills/containerProvider.ts Извршно окружење контејнера за изолацију вештина: auto | docker | apple | wsl | orbstack | podman. auto бира најбоље инсталирано извршно окружење за оперативни систем домаћина (Apple Container/OrbStack на macOS-у, WSL Container на Windows-у, Podman на Linux-у), уз Docker као резервну опцију.

Caution

Омогућавање SKILLS_SANDBOX_NETWORK_ENABLED=true отвара путању за одлазни саобраћај произвољном коду вештине. У дељеним окружењима примене комбинујте ово са OUTBOUND_SSRF_GUARD_ENABLED=true и строгим правилима за CORS_ORIGIN/прокси.


25. Квоте провајдера, тунели, резервне копије и остало у извршном окружењу

Крајње тачке за квоте провајдера, мрежни тунели (Tailscale, Ngrok, MITM прокси за отклањање грешака), 1Proxy скуп за излазни саобраћај, резервне копије базе података и мала подешавања за појединачне функције на која упућују извршни слој или скрипте.

Променљива Подразумевана вредност Изворна датотека Опис
REDIS_URL redis://localhost:6379 src/shared/utils/rateLimiter.ts Redis ниска за повезивање са позадинским системом ограничавача брзине.
ALIBABA_CODING_PLAN_HOST (продукциони хост) open-sse/services/bailianQuotaFetcher.ts Замењује хост који се користи за преузимање квота Alibaba Bailian плана за програмирање.
ALIBABA_CODING_PLAN_QUOTA_URL изведено из хоста open-sse/services/bailianQuotaFetcher.ts Замена пуног URL-а за квоте услуге Alibaba Bailian.
QWEN_CLOUD_COOKIE (није постављено) open-sse/services/qwenTokenPlanQuotaFetcher.ts Колачић конзолне сесије за мрежни пролаз квота личног Token Plan-а услуге Qwen Cloud / Model Studio (API кључ за инференцију не може да га прочита). Копирајте цело Cookie заглавље захтева — оно садржи login_qwencloud_ticket — из било ког api.json позива ка cs-data.qwencloud.com на home.qwencloud.com Billing Subscription (F12 Network). Осетљиво је и ограничено на сесију; препоручује се поље контролне табле qwenCloudCookie за сваку појединачну везу.
QWEN_CLOUD_SEC_TOKEN (није постављено) open-sse/services/qwenTokenPlanQuotaFetcher.ts Ручна замена за sec_token за конзолни мрежни пролаз Token Plan-а. Осетљиво; када није постављено, програм за преузимање га проналази у HTML-у контролне табле помоћу колачића.
QWEN_TOKEN_PLAN_HOST https://cs-data.qwencloud.com open-sse/services/qwenTokenPlanQuotaFetcher.ts Замена хоста мрежног пролаза за програм за преузимање квота личног Token Plan-а (нпр. bailian-singapore-cs.alibabacloud.com за конзолу Model Studio).
QWEN_TOKEN_PLAN_DASHBOARD_URL https://home.qwencloud.com/ open-sse/services/qwenTokenPlanQuotaFetcher.ts URL контролне табле који се користи за проналажење sec_token у HTML-у пријављеног корисника.
ALIBABA_FREE_TIER_VISION_FE_PATH /costing-balance/free-quota-image-video open-sse/services/alibabaFreeTierQuotaFetcher.ts Замена путање корисничког интерфејса конзоле за преузимање бесплатне квоте за визуелни/медијски садржај услуге Alibaba Model Studio.
ALIBABA_FREE_TIER_MULTIMODAL_FE_PATH /costing-balance/free-quota-multimodal open-sse/services/alibabaFreeTierQuotaFetcher.ts Zamena putanje u prednjem delu konzole za preuzimanje besplatne multimodalne kvote servisa Alibaba Model Studio.
ALIBABA_FREE_TIER_AUDIO_FE_PATH /costing-balance/free-quota-audio open-sse/services/alibabaFreeTierQuotaFetcher.ts Zamena putanje u prednjem delu konzole za preuzimanje besplatne audio-kvote servisa Alibaba Model Studio.
ALIBABA_FREE_TIER_ALLOWLIST_PATH (nije postavljeno) open-sse/services/alibabaFreeTierAllowlist.ts Opciona putanja do lokalne JSON zamene za ugrađenu listu dozvoljenih tekstualnih modela u besplatnom nivou servisa Alibaba. Ako nije dostupna, koristi se $DATA_DIR/alibaba-free-tier-allowlist.json, a zatim config/alibaba-free-tier-allowlist.json.
CONTEXT_RESERVE_TOKENS 1024 open-sse/services/contextManager.ts Tokeni rezervisani za izlaz dovršavanja pri izračunavanju budžeta upita.
CONTEXT_KEEP_LATEST_IMAGES 2 open-sse/services/contextManager.ts Broj najnovijih umetnutih slika koje treba zadržati pri uklanjanju starijih kako bi sadržaj stao u kontekstni prozor (#8560).
MODEL_ALIAS_COMPAT_ENABLED omogućeno open-sse/services/model.ts Uključuje ili isključuje zastareli sloj kompatibilnosti pseudonima modela koji koriste stariji klijenti.
OMNIROUTE_EMERGENCY_FALLBACK omogućeno open-sse/services/emergencyFallback.ts Postavite na false (ili 0) da biste onemogućili rezervni mehanizam za hitne slučajeve iscrpljivanja budžeta, koji neuspele zahteve preusmerava na besplatni model nvidia/openai/gpt-oss-120b. Važeći redosled prvenstva je: zamena iz baze podataka Feature Flags > promenljiva okruženja > podrazumevana vrednost; ako nije dostupna, servis koristi neprerađenu vrednost promenljive okruženja.
COMMAND_CODE_CALLBACK_PORT (nije postavljeno) src/app/api/providers/command-code/auth/shared.ts Lokalni port koji se koristi za povratne pozive u OAuth stilu iz CLI pomoćnog programa Command Code.
COMMAND_CODE_VERSION 0.33.2 open-sse/executors/commandCode.ts Vrednost koja se šalje kao zaglavlje x-command-code-version nadređenom servisu Command Code. Zamenite je da biste povećali verziju CLI-ja.
COMMANDCODE_API_URL https://api.commandcode.ai open-sse/services/usage/command-code.ts Osnovni URL nadređenog servisa Command Code za korišćenje/kvotu, koji koristi telemetrija za preuzimanje kvote pametnog telefona. Zamenite ga za samostalno hostovan ili alternativni API servisa Command Code.
MITM_LOCAL_PORT 443 src/mitm/server.cjs Локални порт за повезивање MITM проксија за отклањање грешака.
MITM_DISABLE_TLS_VERIFY 0 src/mitm/server.cjs Поставите на 1 да бисте онемогућили узводну TLS проверу (само за развој).
MITM_IDLE_TIMEOUT_MS 60000 src/mitm/socketTimeouts.ts, src/mitm/server.cjs Временско ограничење неактивности сокета (ms) за проксиране везе; неактивни сокети који прекораче ово ограничење прекидају се како би се избегло цурење полуотворених тунела.
MITM_VERBOSE 1 src/mitm/server.cjs, src/mitm/_internal/bypass.cjs Опширност евиденције одлука о усмеравању: 0 искључује евиденцију, а више вредности бележе више одлука о заобилажењу/усмеравању.
MITM_ROOT_CA_ENABLED false src/mitm/manager.ts Поставите на true да бисте омогућили модел коренског CA сертификата и засебних крајњих сертификата за сваки хост (#6684). Нове инсталације га добијају аутоматски; инсталације са већ постојећим поузданим застарелим крајњим сертификатом задржавају застарели сертификат са фиксним SAN-ом, осим ако се ова опција изричито не омогући.
MITM_CERT_MODE legacy src/mitm/manager.ts, src/mitm/server.cjs Поставља га MITM менаџер за покренути прокси процес (root-ca | legacy) — одражава одлуку о миграцији сертификата; није намењено за ручно подешавање.
OMNIROUTE_NO_SUDO 0 src/mitm/systemCommands.ts Поставите на 1 (истинита вредност) да бисте уклонили почетни sudo из MITM команди за успостављање поверења у сертификат — за примене без root приступа / са корисничким именским просторима, где оператер ручно успоставља поверење у CA (нпр. путем Node механизма за додатне CA сертификате).
SKIP_ANTIGRAVITY_DNS (није постављено) src/mitm/dns/provision.ts Поставите на true да бисте у потпуности прескочили додавање DNS уноса у /etc/hosts за имена хостова Antigravity проксија — за контејнере у којима sudo/root није доступан.
OMNIROUTE_SKIP_DNS_WRITE (није постављено) src/mitm/dns/dnsConfig.ts Поставите на 1 да бисте прескочили уписивање у hosts датотеку приликом додавања/уклањања DNS уноса — за изолована тестна окружења или окружења само за читање.
OMNIROUTE_SKIP_SYSTEM_TRUST 0 src/mitm/cert/install.ts, src/mitm/tproxy/caTrust.ts Заштитна опција искључиво за тестирање/CI: поставите на 1 како инсталирање/деинсталирање поверења у сертификат не би обављало никакву радњу, тако да тестни пакет никада не мења системско складиште поузданих сертификата. Аутоматски је постављају конфигурација тестова и CI токови рада.
CHANGELOG_BASE_REF (аутоматски) scripts/check/check-changelog-integrity.mjs Експлицитна основна референца за заштитну проверу против брисања CHANGELOG-а (подразумевано је основна грана PR-а у CI окружењу или највиша release/v*).
FREE_PROXY_AUTO_SYNC_ENABLED false src/lib/freeProxyProviders/scheduler.ts Поставите на true да бисте омогућили позадински распоређивач за аутоматску синхронизацију скупа бесплатних проксија. Омогућава се по избору и подразумевано је искључен.
FREE_PROXY_AUTO_SYNC_INTERVAL_MS 1800000 src/lib/freeProxyProviders/scheduler.ts Интервал аутоматске синхронизације у милисекундама (подразумевано 30 минута).
FREE_PROXY_1PROXY_ENABLED true src/lib/freeProxyProviders/oneproxy.ts Омогућава извор бесплатних проксија 1proxy. Поставите на false да бисте га онемогућили.
FREE_PROXY_1PROXY_API_URL (погледајте oneproxy.ts) src/lib/freeProxyProviders/oneproxy.ts Замена URL-а за 1proxy API.
FREE_PROXY_1PROXY_MAX 500 src/lib/freeProxyProviders/oneproxy.ts Максималан број проксија који се преузима из 1proxy током једне синхронизације.
FREE_PROXY_1PROXY_MIN_QUALITY 50 src/lib/freeProxyProviders/oneproxy.ts Минимални праг оцене квалитета за увоз из 1proxy.
FREE_PROXY_PROXIFLY_ENABLED true src/lib/freeProxyProviders/proxifly.ts Омогућава Proxifly као извор бесплатних проксија. Поставите на false да бисте га онемогућили.
FREE_PROXY_PROXIFLY_QUANTITY 100 src/lib/freeProxyProviders/proxifly.ts Број проксија који се преузима током једне Proxifly синхронизације.
FREE_PROXY_PROXIFLY_ANONYMITY elite src/lib/freeProxyProviders/proxifly.ts Филтер нивоа анонимности за Proxifly (elite, anonymous, transparent).
FREE_PROXY_IPLOCATE_ENABLED false src/lib/freeProxyProviders/iplocate.ts Омогућава IPLocate извор бесплатних проксија. Активира се искључиво ручно.
FREE_PROXY_IPLOCATE_BASE_URL https://raw.githubusercontent.com/iplocate/free-proxy-list/main/protocols src/lib/freeProxyProviders/iplocate.ts Замена основног URL-а IPLocate листе проксија.
FREE_PROXY_WEBSHARE_ENABLED true src/lib/freeProxyProviders/webshare.ts Омогућава извор Webshare скупа проксија. Поставите на false да бисте га онемогућили; такође захтева да FREE_PROXY_WEBSHARE_API_KEY буде подешен.
FREE_PROXY_WEBSHARE_API_KEY (нема) src/lib/freeProxyProviders/webshare.ts API токен Webshare налога (Authorization: Token <key>). Обавезан је — добављач остаје онемогућен без њега.
FREE_PROXY_WEBSHARE_API_URL https://proxy.webshare.io/api/v2/proxy/list/ src/lib/freeProxyProviders/webshare.ts Замена URL-а API-ја Webshare листе проксија.
FREE_PROXY_WEBSHARE_MAX 500 src/lib/freeProxyProviders/webshare.ts Максималан број проксија који се увозе при свакој Webshare синхронизацији.
NEXT_PUBLIC_VERCEL_RELAY_ENABLED true src/app/(dashboard)/…/ProxyPoolTab.tsx Приказује/скрива дугме за примену Vercel Relay-а на картици скупа проксија.
VERCEL_API_BASE https://api.vercel.com src/app/api/settings/proxy/vercel-deploy/route.ts Замена основног URL-а Vercel API-ја (за тестирање).
NEXT_PUBLIC_VERCEL_RELAY_DEFAULT_PROJECT omniroute-relay src/app/(dashboard)/…/VercelRelayModal.tsx Подразумевани назив пројекта који је унапред унет у модалу за примену Vercel Relay-а.
TAILSCALE_BIN (аутоматско откривање) src/lib/tailscaleTunnel.ts Експлицитна путања до извршне датотеке tailscale.
TAILSCALED_BIN (аутоматско откривање) src/lib/tailscaleTunnel.ts Експлицитна путања до бинарне датотеке демона tailscaled.
TAILSCALE_AUTHKEY (није подешено) src/lib/tailscaleTunnel.ts Унапред дељени Tailscale кључ за аутентификацију за неинтерактивно / безглаво извршавање команде tailscale up (прослеђује се путем --auth-key=). Када није подешен, пријављивање се враћа на интерактивни URL за аутентификацију у прегледачу.
NGROK_AUTHTOKEN (није подешено) src/lib/ngrokTunnel.ts Аутентификује одлазне ngrok тунеле.
DB_BACKUP_MAX_FILES 20 src/lib/db/backup.ts Максималан број SQLite датотека резервних копија које се задржавају приликом ручног/планираног чишћења резервних копија. Снимци миграције адресирају се садржајем и поново користе за идентично стање базе података; не уклањају се унутар прозора истовремених миграција. Има предност над вредношћу сачуваном у Подешавања → Задржавање резервних копија базе података.
DB_BACKUP_RETENTION_DAYS 0 src/lib/db/backup.ts Максимална старост (у данима) резервних копија које се задржавају приликом ручног/планираног чишћења. 0 онемогућава уклањање на основу старости. Снимци миграције се не уклањају унутар прозора истовремених миграција. Има предност над вредношћу сачуваном у Подешавања → Задржавање резервних копија базе података.
OMNIROUTE_BACKUP_SCHEDULE_JOB_INTERVAL_MS 30000 src/lib/jobs/backupScheduleJob.ts Интервал откуцаја (ms) посла на страни сервера који извршава backup-schedule.json. Мора остати знатно испод једноминутне грануларности cron-а; вредности мање од 5000 или оне које није могуће рашчланити враћају се на 30000.
CONTAINER_HOST docker scripts/check-permissions.sh Назнака окружења за извршавање контејнера за проверу дозвола у улазној тачки. Подесите на podman за било коју Podman топологију. Пошто контејнер не може да утврди да ли је механизам локалан или му се приступа преко Podman Machine-а, упозорење остаје неутрално у погледу топологије и упућује на contrib/podman/README.md.
QUOTA_STORE_DRIVER sqlite src/lib/quota/storeFactory.ts Позадинско складиште потрошње дељене квоте: sqlite (подразумевано) или redis.
QUOTA_STORE_REDIS_URL (није подешено) src/lib/quota/storeFactory.ts Redis ниска за повезивање која се користи када је QUOTA_STORE_DRIVER=redis (нпр. redis://localhost:6379).
QUOTA_SATURATION_THRESHOLD 0.5 src/lib/quota/enforce.ts Однос засићења скупа (0..1); када се достигне или премаши, скуп прелази у строги режим (без позајмљивања).
QUOTA_SOFT_DEPRIORITIZE_FACTOR 0.7 open-sse/services/combo.ts Множилац резултата (0..1) који се примењује на циљ када му политика меке квоте смањи приоритет.
STATUS_SOFT_DEPRIORITIZE_FACTOR 0.5 open-sse/services/combo/autoStrategy.ts Множилац резултата (0..1) који се примењује на исцрпљеног добављача (credits_exhausted/rate_limited) при auto-combo бодовању када је прелиминарно ограничење квоте ИСКЉУЧЕНО (#4540).
QUOTA_CONSUMPTION_RETENTION_DAYS 14 src/lib/db/quotaConsumption.ts Период задржавања (у данима) за quota_consumption групе пре сакупљања отпада (gcQuotaConsumption).
QUOTA_PREFLIGHT_CUTOFF_ENABLED false src/lib/resilience/settings.ts Опционо (подразумевано ИСКЉУЧЕНО): омогућава строго ограничење квоте при аутоматском усмеравању, које уклања кандидате са малом квотом пре бодовања.
OMNIROUTE_AUTO_FREE_FALLBACK_TO_FULL_POOL false open-sse/services/autoCombo/virtualFactory.ts Опционо (подразумевано ИСКЉУЧЕНО): када филтер auto/<category>:<tier> не пронађе ниједног повезаног кандидата, враћа претходно понашање преласка на цео (нефилтрирани) скуп уместо враћања празног скупа. Када је подразумевано ИСКЉУЧЕНО, :free значи „само бесплатни ниво“.
OMNIROUTE_CHAOS_MAX_PANEL 5 open-sse/services/autoCombo/virtualFactory.ts Ограничење величине панела (сведено на опсег 110) за варијанту емитовања auto/*:chaos — један захтев се прослеђује на највише оволико модела различитих добављача.
OMNIROUTE_CHAOS_MIN_PANEL (подразумевана вредност механизма) open-sse/services/autoCombo/virtualFactory.ts Подешавање минималне величине панела које се прослеђује обрађивачу chaos емитовања; ако није постављено, задржава се подразумевана вредност механизма.
OMNIROUTE_CHAOS_PANEL_TIMEOUT_MS (подразумевана вредност механизма) open-sse/services/autoCombo/virtualFactory.ts Строго временско ограничење (ms) за целокупно паралелно прослеђивање chaos панелу; ако није постављено, задржава се подразумевана вредност механизма.
GROK_AUTH_PATH ~/.grok/auth.json open-sse/services/grokQuotaFetcher.ts Путања до Grok CLI датотеке auth.json која се користи за преузимање недељне квоте услуге grok-web; замените је за тестове или нестандардну CLI инсталацију.
AGENTBRIDGE_UPSTREAM_CA_CERT (није постављено) src/mitm/manager.ts Додатни CA сертификат (PEM) коме се верује за AgentBridge узводне TLS везе.
INSPECTOR_BUFFER_SIZE 1000 src/mitm/inspector/buffer.ts Максималан број снимљених захтева који се чувају у кружном баферу Инспектора саобраћаја.
INSPECTOR_MAX_BODY_KB 1024 src/mitm/inspector/buffer.ts Максимална величина тела снимљеног захтева/одговора (KB) пре скраћивања.
INSPECTOR_HTTP_PROXY_PORT 8080 src/mitm/inspector/httpProxyServer.ts Локални порт за HTTP прокси Инспектора саобраћаја.
INSPECTOR_HTTP_PROXY_AUTOSTART false src/mitm/inspector/httpProxyServer.ts Аутоматски покреће HTTP прокси инспектора при покретању система.
INSPECTOR_TLS_INTERCEPT false src/lib/inspector/captureState.ts Омогућава TLS пресретање (MITM) за снимљени HTTPS саобраћај.
INSPECTOR_LLM_HOSTS_EXTRA (није постављено) src/lib/inspector/captureState.ts Додатна имена хостова (раздвојена зарезима) која се за потребе снимања третирају као LLM крајње тачке.
INSPECTOR_MASK_SECRETS true src/mitm/inspector/buffer.ts Маскира тајне податке (заглавља за аутентификацију / API кључеве) у снимљеном саобраћају.
INSPECTOR_SYSTEM_PROXY_GUARD_MINUTES 30 src/app/api/tools/traffic-inspector/capture-modes/system-proxy/route.ts Број минута након којих заштита системског проксија аутоматски враћа подешавања проксија оперативног система.
INSPECTOR_INTERNAL_INGEST_TOKEN (аутоматски) src/app/api/tools/traffic-inspector/internal/ingest/route.ts Токен за аутентификацију интерног уноса снимљеног саобраћаја у инспектор.
PLAYGROUND_COMPARE_MAX_COLUMNS 4 src/app/(dashboard)/dashboard/playground/ Максималан број упоредних колона у режиму поређења Playground-а.
PLAYGROUND_IMPROVE_PROMPT_DEFAULT_MODEL (није постављено) src/app/(dashboard)/dashboard/playground/ Подразумевани модел за радњу „побољшај упит“ у Playground-у (ако није постављен, користи се активни модел).
BIFROST_ENABLED 1 src/app/api/v1/relay/chat/completions/bifrost/route.ts Главни прекидач за искључивање Bifrost sidecar проксија. Када је постављен на 0, рута враћа 503 са заглављем X-Bifrost-Killswitch, а оператор се преусмерава на TS путању. Користите га за онемогућавање sidecar-а без поновног постављања (инцидент рутера нивоа 1, ротација кључева).
BIFROST_BASE_URL (није постављено) src/app/api/v1/relay/chat/completions/bifrost/route.ts Када је постављена, рута Bifrost sidecar проксија прослеђује саобраћај за /v1/chat/completions овом Go мрежном пролазу уместо TS обрађивачу релеја. Није постављено → 503 са резервним преласком. Завршна коса црта се уклања.
BIFROST_PORT 8080 src/lib/services/bootstrap.ts Порт за који се везује надгледана уграђена Bifrost услуга (127.0.0.1:<port>) када OmniRoute управља животним циклусом Bifrost sidecar-а. Подразумевана вредност је 8080.
BIFROST_API_KEY (није постављено) src/app/api/v1/relay/chat/completions/bifrost/route.ts API кључ за Bifrost мрежни пролаз (шаље се као Authorization: Bearer ...). Ако није постављен, рута очекује да захтев садржи важећи OmniRoute API кључ; овај кључ служи само за аутентификацију на страни мрежног пролаза.
BIFROST_STREAMING_ENABLED true src/app/api/v1/relay/chat/completions/bifrost/route.ts Када је вредност true, Bifrost sidecar рута стримује одговоре назад путем SSE-а кроз мрежни пролаз, уместо преко TS извршиоца стримовања. Поставите на 0 да бисте принудно користили JSON одговоре без стримовања кроз мрежни пролаз.
BIFROST_TIMEOUT_MS 30000 src/app/api/v1/relay/chat/completions/bifrost/route.ts Временско ограничење по захтеву приликом проксирања ка Bifrost мрежном пролазу (ms). Након истека временског ограничења, рута враћа TS путању релеја путем заглавља X-Bifrost-Fallback.
OMNIROUTE_BIFROST_KEY (није постављено) src/app/api/v1/relay/chat/completions/bifrost/route.ts Алијас за BIFROST_API_KEY (користе га скрипте које читају окружење путем OMNIROUTE_*). BIFROST_API_KEY има предност када су обе вредности постављене.
OMNIROUTE_RELAY_BACKEND ts / auto src/app/api/v1/relay/chat/completions/routingBackend.ts Позадински систем релеја за /api/v1/relay/chat/completions: ts | bifrost | auto. ts = TypeScript релеј (подразумевано када Bifrost није конфигурисан); auto бира Bifrost када је BIFROST_BASE_URL постављен и BIFROST_ENABLED0, уз аутоматски резервни прелаз на TS ако sidecar није доступан; bifrost принудно користи Bifrost (строго, без резервног прелаза). Аутентификација/ограничење брзине/заштита од убацивања/листа дозвољених ставки увек се прво извршавају у Next рути. Одговори садрже X-Routing-Backend / X-Routing-Fallback / X-Routing-Fallback-Reason.
RELAY_ROUTING_BACKEND (није постављено) src/app/api/v1/relay/chat/completions/routingBackend.ts Прихваћени алијас за OMNIROUTE_RELAY_BACKEND (исте вредности ts | bifrost | auto). OMNIROUTE_RELAY_BACKEND има предност када су обе вредности постављене.
OMNIROUTE_BIFROST_FAILURE_COOLDOWN_MS 5000 src/app/api/v1/relay/chat/completions/bifrostCooldown.ts Период мировања (ms) након неуспешног проласка кроз Bifrost пратећи сервис у режиму auto, пре него што релеј поново покуша да употреби пратећи сервис; док траје период мировања, захтеве усмерава директно на TS путању, а затим поново врши проверу. 0 онемогућава ову функцију. Примењује се само када је OMNIROUTE_RELAY_BACKEND=auto.
OMNIROUTE_TLS_CERT (није подешено) bin/cli/commands/serve.mjs Путања до PEM TLS сертификата за покретање omniroute serve преко HTTPS-а (еквивалентно опцији --tls-cert). Мора се користити заједно са OMNIROUTE_TLS_KEY; самостални сервер тада завршава TLS на истом ослушкивачу (wss:// ради без измена). Није подешено → обичан HTTP. Ако је наведен само сертификат или кључ, односно ако путања није читљива, бележи се упозорење и остаје се на HTTP-у.
OMNIROUTE_TLS_KEY (није подешено) bin/cli/commands/serve.mjs Путања до приватног PEM TLS кључа за HTTPS у оквиру omniroute serve (еквивалентно опцији --tls-key). Мора се користити заједно са OMNIROUTE_TLS_CERT. Погледајте OMNIROUTE_TLS_CERT.
OMNIROUTE_LOCAL_ENDPOINTS_ENABLED 0 src/lib/security/localEndpoints.ts Главни прекидач за руте /api/local/*. Када није подешен или је 0, све руте /api/local/* у продукцији враћају 503. Мора бити 1 у применама које нису ограничене на loopback како би се омогућили Redis покретач и слични покретачи локалних услуга једним кликом. Представља додатни слој заштите уз класификацију рута заштитном функцијом isLocalOnlyPath() (LOCAL_ONLY_API_PREFIXES у src/server/authz/routeGuard.ts).
OMNIROUTE_LOCAL_ENDPOINTS_TOKEN (није подешено) src/lib/security/localEndpoints.ts Bearer токен за позиваоце /api/local/* који нису на loopback интерфејсу (нпр. десктоп апликација). Када је подешен, захтеви са IP адреса које нису loopback морају садржати Authorization: Bearer <token>. Обавезан је када је OMNIROUTE_LOCAL_ENDPOINTS_ENABLED=1 у применама које нису ограничене на loopback.
OMNIROUTE_REDIS_CONTAINER_NAME omniroute-redis bin/cli/commands/redis.mjs Назив контејнера за Redis покретач једним кликом (omniroute redis up). Користе га и CLI и графички интерфејс RedisLauncherPanel.
OMNIROUTE_REDIS_HOST_PORT 6379 bin/cli/commands/redis.mjs Порт хоста за Redis покретач једним кликом. Промените га ако хост већ користи порт 6379. Интерни порт контејнера остаје 6379.
OMNIROUTE_REDIS_BIND_HOST 127.0.0.1 bin/cli/commands/redis.mjs Интерфејс хоста на којем Redis покретач једним кликом објављује услугу. Покретач покреће Redis БЕЗ лозинке, па везивање за 0.0.0.0 омогућава сваком хосту на вашој LAN мрежи приступ Redis-у без аутентификације — проширите доступност само ако сами поставите лозинку за инстанцу.
REDIS_BIND_HOST 127.0.0.1 docker-compose.yml Интерфејс хоста на којем docker-compose објављује Redis пратећи сервис (#9286). Redis из compose окружења ради без requirepass; контејнери апликације приступају му преко compose мреже (redis:6379) — објављени порт постоји само за алате на страни хоста. 0.0.0.0 излаже Redis без аутентификације целој LAN мрежи.
REDIS_PORT 6379 docker-compose.yml Порт хоста за Redis пратећи сервис из compose окружења.
APP_BIND_HOST 127.0.0.1 docker-compose.yml, docker-compose.prod.yml Интерфејс хоста на којем docker-compose објављује сопствене портове апликације за контролну таблу/API/live-WS (#12568). Пошто се REQUIRE_API_KEY=false испоручује као подразумевана вредност у .env.example, 0.0.0.0 излаже анонимни /v1 LLM прокси целој LAN/WAN мрежи — проширите приступ тек када је REQUIRE_API_KEY=true или када посредни reverse proxy намеће сопствену аутентификацију.
QDRANT_BIND_HOST 127.0.0.1 docker-compose.yml Интерфејс хоста на којем docker-compose објављује Qdrant пратећи сервис за меморију (#12578). Важе исти разлози у вези са излагањем LAN мрежи као и за REDIS_BIND_HOST.
BIFROST_BIND_HOST 127.0.0.1 docker-compose.yml Интерфејс хоста на којем docker-compose објављује Bifrost пратећи сервис рутера (#12578). Важе исти разлози у вези са излагањем LAN мрежи као и за REDIS_BIND_HOST.
REDIS_KEY_PREFIX omniroute: src/shared/utils/rateLimiter.ts Префикс именског простора који се примењује на сваки OmniRoute Redis кључ (ограничавач брзине, кеш аутентификације, складиште квота, заштитни прекидач за загревање). Спречава колизије кључева када се Redis инстанца дели са другим апликацијама (#11042).
OMNIROUTE_INTERNAL_SERVICE_TOKEN (није постављено — механизам је онемогућен) src/lib/api/internalServiceAuth.ts Дељена тајна за интерне REST прелазе који чувају идентитет (#9260): OmniRoute компоненте које позивају друге локалне OmniRoute руте шаљу је као x-omniroute-internal-service-token, тако да се идентитет првобитног позиваоца очува. Пореди се помоћу timingSafeEqual.
OMNIROUTE_INTERNAL_SERVICE_TOKEN_FILE (није постављено) src/lib/api/internalServiceAuth.ts Варијанта интерног сервисног токена заснована на датотеци са тајном: путања до датотеке чији је садржај, након уклањања околних размака, токен. Користи се само када променљива са директно наведеном вредношћу није постављена.
OPENROUTER_PROVIDER_STATS_ENABLED true src/lib/catalog/openrouterProviderStats.ts Обогаћује листу добављача на контролној табли OpenRouter статистиком недељног рангирања (#9324). Подразумевано је укључено; поставите на false да бисте у потпуности прескочили позадинско преузимање (не блокира извршавање и никада није фатално).
OPENROUTER_PROVIDER_STATS_TTL_MS 86400000 (24 ч) src/lib/catalog/openrouterProviderStats.ts TTL кеша за снимак OpenRouter статистике добављача, у милисекундама.
OMNIROUTE_REDIS_IMAGE redis:7-alpine bin/cli/commands/redis.mjs Redis слика коју користи покретач Redis-а једним кликом. По потреби замените са redis:8-alpine или огледалом приватног регистра.
QDRANT_HOST qdrant (опциони профил кластера) Име хоста Qdrant пратећег сервиса када је --profile memory активан. Подразумевана вредност упућује на име qdrant сервиса унутар мреже; замените је за спољно постављање. Користи се само када је qdrantEnabled у коду постављен на true (src/lib/memory/vectorStore.ts:108).
QDRANT_PORT 6333 (опциони профил кластера) REST порт пратећег Qdrant контејнера.
QDRANT_GRPC_PORT 6334 (опциони профил кластера) gRPC порт пратећег Qdrant контејнера. Користе га клијентске библиотеке које за операције стримовања дају предност gRPC-у у односу на REST.
QDRANT_API_KEY (није постављено) (опциони профил кластера) Опциони API кључ за Qdrant Cloud или аутентификовану локалну инстанцу. Празно → не шаље се заглавље api-key.
QDRANT_COLLECTION omniroute-memory (опциони профил кластера) Назив колекције за векторске репрезентације меморије разговора у OmniRoute-у. Креира се при првом покретању са бројем димензија наведеним у QDRANT_VECTOR_SIZE.
QDRANT_EMBEDDING_MODEL text-embedding-3-small (опциони профил кластера) Подразумевани назив модела за векторске репрезентације, забележен у метаподацима Qdrant колекције. Стварне векторске репрезентације генерише добављач на којег указује поље embeddingModel у подешавањима OmniRoute-а.
QDRANT_VECTOR_SIZE 1536 (опциони профил кластера) Димензија вектора векторске репрезентације. Мора да одговара моделу који користите за генерисање векторских репрезентација (text-embedding-3-small → 1536; ada-002 → 1536; nomic-embed-text → 768).
QDRANT_HNSW_EF_CONSTRUCT 128 (опциони профил кластера) Прецизност при изградњи HNSW индекса. Већа вредност = спорија изградња, бржа претрага.
OMNIROUTE_ROTATION_ENABLED true open-sse/services/rotationConfig.ts Главни прекидач за ротацију налога коју може да конфигурише оператер. Када је false, ниједна од доленаведених класа OMNIROUTE_ROTATE_* не покреће прелазак на резервни налог (искључено главно стање такође блокира подразумевано омогућене класе 429/500/502). Омогућава надзорном корисничком интерфејсу (нпр. VibeProxy десктоп апликацији) да преслика сопствена правила ротације на механизам позадинског система за прелазак на резервни налог.
OMNIROUTE_ROTATION_RATE_LIMIT_RESET_SECONDS 0 open-sse/services/rotationConfig.ts Период чекања (у секундама) који се примењује на налог ограничен брзином када надређени сервис не наведе изричито време ресетовања. 0 = користи подразумевани период чекања механизма уместо фиксног замењивања вредности.
OMNIROUTE_ROTATION_DISABLE_TAG_WITHOUT_RESET true open-sse/services/rotationConfig.ts Одраз подешавања корисничког интерфејса „не означавај као ограничено брзином без времена ресетовања“.
OMNIROUTE_ROTATE_ON_429 true open-sse/services/rotationConfig.ts Omogućavanje rezervnog ponašanja po statusu za greške 429. Kada je false (i OMNIROUTE_ROTATION_ENABLED=true), 429 više ne pokreće rotaciju naloga, već se umesto toga vraća klijentu.
OMNIROUTE_ROTATE_429_THRESHOLD 1 open-sse/services/rotationConfig.ts Broj grešaka 429 unutar perioda OMNIROUTE_ROTATE_429_WINDOW_SECONDS potreban pre rotacije naloga. 1 (podrazumevano) odmah pokreće rotaciju, čime se zadržava dosadašnje ponašanje.
OMNIROUTE_ROTATE_429_WINDOW_SECONDS 120 open-sse/services/rotationConfig.ts Klizni vremenski prozor (u sekundama) tokom kojeg se greške 429 broje za dostizanje praga OMNIROUTE_ROTATE_429_THRESHOLD.
OMNIROUTE_ROTATE_ON_500 true open-sse/services/rotationConfig.ts Omogućavanje rezervnog ponašanja po statusu za serverske greške 5xx (izuzev 502, koja ima sopstvenu klasu). Kada je false, ove greške više ne pokreću rotaciju naloga.
OMNIROUTE_ROTATE_500_THRESHOLD 1 open-sse/services/rotationConfig.ts Broj grešaka 5xx unutar perioda OMNIROUTE_ROTATE_500_WINDOW_SECONDS potreban pre rotacije naloga. 1 (podrazumevano) odmah pokreće rotaciju.
OMNIROUTE_ROTATE_500_WINDOW_SECONDS 120 open-sse/services/rotationConfig.ts Klizni vremenski prozor (u sekundama) tokom kojeg se greške 5xx broje za dostizanje praga OMNIROUTE_ROTATE_500_THRESHOLD.
OMNIROUTE_ROTATE_ON_502 true open-sse/services/rotationConfig.ts Omogućavanje rezervnog ponašanja po statusu za greške 502 (neispravan mrežni prolaz). Kada je false, greške 502 više ne pokreću rotaciju naloga.
OMNIROUTE_ROTATE_502_THRESHOLD 1 open-sse/services/rotationConfig.ts Broj grešaka 502 unutar perioda OMNIROUTE_ROTATE_502_WINDOW_SECONDS potreban pre rotacije naloga. 1 (podrazumevano) odmah pokreće rotaciju.
OMNIROUTE_ROTATE_502_WINDOW_SECONDS 120 open-sse/services/rotationConfig.ts Klizni vremenski prozor (u sekundama) tokom kojeg se greške 502 broje za dostizanje praga OMNIROUTE_ROTATE_502_THRESHOLD.
OMNIROUTE_ROTATE_ON_400 false open-sse/services/rotationConfig.ts Opciona postavka (podrazumevano ISKLJUČENA): kada je true, obična greška 400 (neispravan zahtev) takođe pokreće rotaciju naloga. Ova opcija samo proširuje ponašanje — nikada ne blokira postojeće ponašanje mehanizma prema kojem se prelazi na drugi nalog kada greška 400 sadrži tekst o ograničenju brzine ili kvoti, bez obzira na ovu zastavicu.
OMNIROUTE_ROTATE_400_THRESHOLD 1 open-sse/services/rotationConfig.ts Број грешака 400 унутар периода OMNIROUTE_ROTATE_400_WINDOW_SECONDS потребан пре ротације налога (узима се у обзир само када је OMNIROUTE_ROTATE_ON_400=true).
OMNIROUTE_ROTATE_400_WINDOW_SECONDS 120 open-sse/services/rotationConfig.ts Клизни временски прозор (у секундама) током којег се грешке 400 броје за достизање прага OMNIROUTE_ROTATE_400_THRESHOLD.

Планер загревања за Claude

Загревање покретано cron-ом за Anthropic OAuth везе које су укључене у ову функцију, тако да се петочасовни период ограничења учесталости захтева отвара тривијалним заказаним захтевом уместо првим стварним захтевом (#8848). Планер је искључен осим ако OMNIROUTE_WARMUP_ENABLED има истиниту вредност и веза је означена у settings.claudeWarmup.connections; празна листа веза значи да се ништа не загрева, чак и када је променљива окружења укључена.

Променљива Подразумевана вредност Изворна датотека Опис
OMNIROUTE_WARMUP_ENABLED (није постављено → искључено) src/lib/warmupScheduler.ts Главни прекидач за планер загревања. Прихвата 1/true/yes/on (без обзира на величину слова, уз уклањање околних размака). Свака друга вредност, као и непостављена вредност, оставља планер искљученим.
OMNIROUTE_WARMUP_CRON 0 7 * * * src/lib/warmupScheduler.ts Cron израз са пет поља за циклус загревања, који се израчунава у временској зони America/Los_Angeles (Anthropic-ова временска зона ресетовања), без обзира на сат хоста.
OMNIROUTE_WARMUP_CONCURRENCY 3 src/lib/warmupScheduler.ts Број веза које се паралелно загревају у сваком циклусу. Ограничава се на опсег 110; ако вредност није број, користи се подразумевана вредност 3.
OMNIROUTE_WARMUP_MODEL claude-3-5-haiku-20241022 src/lib/warmupScheduler.ts Модел који се користи за захтев за загревање. Промените ову вредност само ако подразумевани модел није доступан у вашем пакету; изаберите најјефтинији модел који ипак отвара период.

VNC сесије за пријаву преко прегледача и алијас директоријума података

Контејнеризовани Chromium+VNC који се користи за интерактивно преузимање акредитива пријављивањем преко прегледача (/api/vnc-session), заједно са застарелим алијасом DATA_DIR. Све је опционо — подразумеване VNC вредности користе приложену слику omniroute-vnc-chromium:local и мењају се само за прилагођену слику контејнера, портове или подешавање животног циклуса.

Променљива Подразумевано Изворна датотека Опис
OMNIROUTE_VNC_IMAGE omniroute-vnc-chromium:local src/lib/vncSession/manifest.ts Ознака Docker слике за контејнер за пријављивање Chromium+VNC. Направите docker/vnc-browser/chromium или овде наведите прилагођену слику.
OMNIROUTE_DOCKER_BIN docker src/lib/vncSession/manifest.ts Извршна датотека контејнерског окружења која се користи за покретање VNC контејнера (нпр. поставите на podman).
OMNIROUTE_VNC_CONTAINER_VNC_PORT 3000 src/lib/vncSession/manifest.ts VNC/noVNC порт изложен унутар контејнера.
OMNIROUTE_VNC_CONTAINER_CDP_PORT 9223 src/lib/vncSession/manifest.ts Порт за Chrome DevTools Protocol унутар контејнера.
OMNIROUTE_VNC_CONTAINER_PROFILE_DIR /config src/lib/vncSession/manifest.ts Путања директоријума Chromium профила унутар контејнера.
OMNIROUTE_VNC_PROFILE_DIR $HOME/.omniroute/browser-login-profiles src/lib/vncSession/manifest.ts Директоријум на домаћину у ком се чувају трајни профили за пријављивање у прегледачу.
OMNIROUTE_VNC_IDLE_MS 600000 (10 мин) src/lib/vncSession/manifest.ts Временско ограничење неактивности (ms) након ког се неактивна VNC сесија уклања.
OMNIROUTE_VNC_MAX_MS 1800000 (30 мин) src/lib/vncSession/manifest.ts Чврсто ограничење (ms) трајања једне VNC сесије.
OMNIROUTE_VNC_MAX_SESSIONS 4 src/lib/vncSession/manifest.ts Максималан број истовремених VNC сесија.
OMNIROUTE_VNC_READY_MS 45000 src/lib/vncSession/manifest.ts Временско ограничење (ms) за чекање да контејнеризовани прегледач постане спреман за CDP.
OMNIROUTE_VNC_HARVEST_MS 20000 src/lib/vncSession/manifest.ts Временско ограничење (ms) за преузимање снимљене сесије/колачића након завршетка пријављивања.
OMNIROUTE_VNC_CHROMIUM_ARGS --remote-debugging-port=9222 --no-first-run --no-default-browser-check src/lib/vncSession/manifest.ts Додатне опције командне линије које се прослеђују контејнеризованом Chromium-у.
OMNIROUTE_VNC_NETWORK omniroute-vnc-browser-login src/lib/vncSession/manifest.ts Наменска Docker мрежа којој се придружује VNC контејнер за пријављивање (#12571) уместо подразумеване bridge мреже, тако да сродни контејнери не могу да приступе његовом CDP bridge порту.
VIBEPROXY_DATA_DIR (није постављено) open-sse/services/notionThreadSessions.ts Застарели алијас за DATA_DIR, који се проверава тек након што ни DATA_DIR ни OMNIROUTE_DATA_DIR нису постављени. Одређује локацију кеша Notion сесија веб-нити (<dir>/notion-web-thread-sessions.json).

26. Окружење за тестирање и E2E

Користе га scripts/dev/run-next-playwright.mjs, scripts/dev/smoke-electron-packaged.mjs, scripts/dev/run-ecosystem-tests.mjs и scripts/build/uninstall.mjs. Оставите све вредности у наставку неподешене у продукционим окружењима.

Променљива Подразумевана вредност Изворна датотека Опис
OMNIROUTE_E2E_BOOTSTRAP_MODE auth scripts/dev/run-next-playwright.mjs Режим E2E иницијализације (auth, fresh, reuse) за Playwright покретач.
OMNIROUTE_E2E_PASSWORD користи INITIAL_PASSWORD scripts/dev/run-next-playwright.mjs Администраторска лозинка која се убризгава у Playwright окружење.
OMNIROUTE_DISABLE_LOCAL_HEALTHCHECK true scripts/dev/run-next-playwright.mjs Онемогућава локалну проверу исправности током Playwright извршавања.
OMNIROUTE_DISABLE_TOKEN_HEALTHCHECK true scripts/dev/run-next-playwright.mjs Онемогућава петљу за проверу исправности OAuth токена током тестова.
OMNIROUTE_HEALTHCHECK_SKIP_PROVIDERS (није подешено) src/lib/tokenHealthCheck.ts Листа добављача раздвојених зарезима који су изузети из проактивног циклуса освежавања токена (нпр. codex,openai). Циљана алтернатива потпуном онемогућавању провере исправности — добављачи са кратким TTL-ом настављају да се освежавају, док добављачи са каскадним механизмом остају искључиво реактивни.
OMNIROUTE_HIDE_HEALTHCHECK_LOGS true scripts/dev/run-next-playwright.mjs Утишава поруке провере исправности у Playwright стандардном излазу.
OMNIROUTE_PLAYWRIGHT_SKIP_BUILD 0 scripts/dev/run-next-playwright.mjs Прескаче Next.js продукционо генерисање пре покретања Playwright-а (CI оптимизација).
OMNIROUTE_SKIP_UNINSTALL_HOOK 0 scripts/build/uninstall.mjs Прескаче OmniRoute деинсталациону куку (CI је користи да би node_modules остао нетакнут).
ECOSYSTEM_SERVER_WAIT_MS 180000 scripts/dev/run-ecosystem-tests.mjs Време чекања (ms) да сервер постане исправан пре покретања тестова екосистема/протокола.
ELECTRON_SMOKE_URL http://127.0.0.1:20128/login scripts/dev/smoke-electron-packaged.mjs URL на којем Electron окружење за основно тестирање очекује да упакована апликација буде доступна.
ELECTRON_SMOKE_TIMEOUT_MS 45000 scripts/dev/smoke-electron-packaged.mjs Укупно време чекања (ms) пре него што окружење за основно тестирање одустане.
ELECTRON_SMOKE_SETTLE_MS 2000 scripts/dev/smoke-electron-packaged.mjs Период стабилизације (ms) након учитавања странице.
ELECTRON_SMOKE_APP_EXECUTABLE (аутоматски) scripts/dev/smoke-electron-packaged.mjs Експлицитна путања до извршне датотеке упаковане Electron апликације.
ELECTRON_SMOKE_DATA_DIR (tmpdir) scripts/dev/smoke-electron-packaged.mjs Директоријум података за Electron основни тест.
ELECTRON_SMOKE_KEEP_DATA 0 scripts/dev/smoke-electron-packaged.mjs Поставите на 1 да бисте сачували директоријум са smoke подацима након извршавања.
ELECTRON_SMOKE_STREAM_LOGS 0 scripts/dev/smoke-electron-packaged.mjs Поставите на 1 да бисте током извршавања прослеђивали Electron евиденције на stdout.
ELECTRON_SMOKE_COLD_RESTART 0 scripts/dev/smoke-electron-packaged.mjs #7592: поново покрените са истим директоријумом података и потврдите да друго покретање бира изворни SQLite управљачки програм.
CLI_DEVIN_BIN (претрага у PATH) open-sse/executors/devin-cli.ts Замените путању до извршне датотеке Devin CLI-ја.

Процес превођења документације

Користи га scripts/i18n/run-translation.mjs (команда npm run i18n:run). Свих пет променљивих подразумевано није постављено — поставите их у .env само на машинама на којима треба омогућити покретање преводиоца документације.

Променљива Подразумевано Изворна датотека Опис
OMNIROUTE_TRANSLATION_API_URL (није постављено) scripts/i18n/run-translation.mjs Основни URL компатибилан са OpenAI-јем за позадински систем за превођење.
OMNIROUTE_TRANSLATION_API_KEY (није постављено) scripts/i18n/run-translation.mjs Bearer токен за позадински систем за превођење (никада се не евидентира).
OMNIROUTE_TRANSLATION_MODEL (није постављено) scripts/i18n/run-translation.mjs ID модела, нпр. gpt-4o-mini или cx/gpt-5.4-mini.
OMNIROUTE_TRANSLATION_TIMEOUT_MS 60000 scripts/i18n/run-translation.mjs Временско ограничење по захтеву у милисекундама.
OMNIROUTE_TRANSLATION_CONCURRENCY 4 scripts/i18n/run-translation.mjs Паралелни захтеви за превођење при обради више датотека / локала.

27. Radar фид (самостално хостовање)

Опциони додатак контролисан заставицом функције RADAR_ENABLED (подразумевано искључен — заставица функције која се мења преко подешавања/базе података, а не преко променљиве окружења; погледајте docs/frameworks/RADAR.md). Прве четири променљиве у наставку представљају опционе замене за самостално хостовани или форковани фид и токове кључева за подржаваоце. Пета, RADAR_ADMIN_URL, засебна је веза без подразумеване вредности ка власниковом приватном оперативном панелу. Погледајте docs/frameworks/RADAR.md за комплетну документацију модула и његов потпуни поступак активације и вођеног подешавања.

Генерички читач обавештења на почетној страници/у евиденцији измена не конфигурише се помоћу променљиве окружења и не зависи од заставице функције RADAR_ENABLED. Он искључиво методом GET чита јавни URL news.json репозиторијума декларисан у src/shared/utils/releaseNotes.ts; ID-ови одбачених обавештења остају у локалном складишту прегледача.

Променљива Подразумевана вредност Изворна датотека Опис
RADAR_FEED_URL https://radar.omniroute.online src/lib/radar/{sync,referralsSync,offersSync,intelSync}.ts Основни URL који деле засебно потписани фидови каталога, препорука, понуда за подржаваоце и Intel података. Замените га да би упућивао на самостално хостовану или форковану услугу.
RADAR_FEED_PUBKEY (закачени подразумевани кључ) src/lib/radar/pinnedKeys.ts Ed25519 јавни кључ (base64-DER SPKI или PEM) који се користи за проверу потписа прилагођеног фида.
RADAR_CONTRIBUTOR_CLAIM_URL https://radar.omniroute.online/auth/github src/lib/radar/links.ts URL који отвара дугме „Ја сам сарадник“ на контролној табли (GitHub OAuth ток за преузимање кључа подржаваоца).
RADAR_SUPPORTER_PLANS_URL https://radar.omniroute.online/planos src/lib/radar/links.ts URL који отвара дугме „Подржите пројекат“ на контролној табли (страница за плаћање/планове).
RADAR_ADMIN_URL (није постављено) src/lib/radar/links.ts Приватна веза ка оперативном панелу, доступна само власнику. HTTPS је обавезан, осим за HTTP loopback SSH прослеђивање; непостављене или неважеће вредности не креирају ставку за навигацију.

Провера: уклоњене / неактивне променљиве

Следеће променљиве су постојале у претходним верзијама датотеке .env.example, али немају референце током извршавања у тренутној бази кода. Уклоњене су:

Променљива Разлог
STORAGE_DRIVER=sqlite Не чита је ниједна изворна датотека. SQLite је једини подржани управљачки програм — избор није потребан.
INSTANCE_NAME=omniroute Присутна је у старој документацији и env шаблонима, али се не користи током извршавања. Може се вратити у будућој функцији за више инстанци.
SQLITE_MAX_SIZE_MB=2048 Не помиње се у изворном коду. Величина базе података није вештачки ограничена.
SQLITE_CLEAN_LEGACY_FILES=true Не помиње се у изворном коду. Чишћење застарелих датотека је вероватно уклоњено.
CLI_ROO_BIN Није регистрована у src/shared/services/cliRuntime.ts.
CLI_KIMI_CODING_BIN Није регистрована у src/shared/services/cliRuntime.ts (Kimi Coding користи OAuth, а не CLI бинарну датотеку).
IFLOW_OAUTH_CLIENT_ID / IFLOW_OAUTH_CLIENT_SECRET Нигде се не помињу у изворном коду.
CEREBRAS_API_KEY / COHERE_API_KEY / FIREWORKS_API_KEY / GROQ_API_KEY / MISTRAL_API_KEY / NEBIUS_API_KEY / PERPLEXITY_API_KEY / TOGETHER_API_KEY / XAI_API_KEY Уклоњене су у v3.8.0. Извршно окружење више не чита ове env променљиве — акредитиви долазе из контролне табле / data/provider-credentials.json / шифроване базе података.
CURSOR_PROTOBUF_DEBUG Уклоњена је у v3.8.0. Cursor извршилац користи CURSOR_DEBUG / CURSOR_STREAM_DEBUG (погледајте §22).
CLI_COMPAT_KIRO Уклоњена је у v3.8.0. Kiro се налази у CLI_COMPAT_OMITTED_PROVIDER_IDS — њен прекидач нема ефекта.
QIANFAN_API_KEY Уклоњена је заједно са осталим некоришћеним привременим API кључевима добављача у v3.8.0.

Исправке подразумеваних вредности

Променљива Стара вредност у .env.example Стварна подразумевана вредност у коду Исправка
APP_LOG_RETENTION_DAYS 90 7 Уклоњена обмањујућа вредност; 7 је документовано као подразумевано
CALL_LOG_RETENTION_DAYS 90 7 Уклоњена обмањујућа вредност; 7 је документовано као подразумевано

Поновно генерисање OpenCode конфигурације (ad-hoc алат)

Користи га scripts/ad-hoc/regen-opencode-config.ts за поновно генерисање датотеке opencode.json са тачним вредностима limit.context и limit.output, преузетим из активне OmniRoute инстанце. Ништа од овога није потребно за уобичајени рад — скрипта служи искључиво као алат за програмере.

Променљива Подразумевано Изворна датотека Опис
OMNIROUTE_URL http://localhost:20128 scripts/ad-hoc/regen-opencode-config.ts Основни URL инстанце OmniRoute која се упитује за /v1/models.
OMNIROUTE_KEY (није постављено) scripts/ad-hoc/regen-opencode-config.ts API кључ за аутентификацију на OmniRoute крајњој тачки /v1/models. Ако није постављен, користи се OPENCODE_API_KEY.
OPENCODE_API_KEY (није постављено) scripts/ad-hoc/regen-opencode-config.ts API кључ у OpenCode формату (sk-...) који се уписује у поново генерисани opencode.json. Ако није постављен, користи се OMNIROUTE_KEY.

Окружење за ванмрежно тестирање компресије (ad-hoc алати)

Користи га scripts/compression-eval/index.ts, CLI за ванмрежну евалуацију компресије. Није потребно за уобичајени рад — намењено је искључиво програмерима.

Променљива Подразумевано Изворна датотека Опис
OMNIROUTE_EVAL_CREDENTIALS {} (празно) scripts/compression-eval/index.ts JSON акредитиви које обезбеђује оператер за добављача над којим CLI за ванмрежну евалуацију компресије врши тестирање (рашчлањују се помоћу JSON.parse). Оставите непостављено за пробно покретање.

VNC сесије прегледача

Користи их src/lib/vncSession/manifest.ts за конфигурисање сесија Chromium-а без графичког интерфејса, заснованих на Docker-у, за добављаче аутоматизације прегледача. Све су опционе — подразумеване вредности су приказане у наставку.

Променљива Подразумевано Изворна датотека Опис
OMNIROUTE_DOCKER_BIN docker src/lib/vncSession/manifest.ts Путања до Docker извршне датотеке која се користи за покретање VNC контејнера.
OMNIROUTE_VNC_IMAGE omniroute-vnc-chromium:local src/lib/vncSession/manifest.ts Docker слика за VNC Chromium контејнер.
OMNIROUTE_VNC_CHROMIUM_ARGS (уграђене заставице) src/lib/vncSession/manifest.ts Додатни Chromium CLI аргументи који се прослеђују прегледачу унутар контејнера.
OMNIROUTE_VNC_CONTAINER_VNC_PORT 3000 src/lib/vncSession/manifest.ts VNC порт унутар контејнера.
OMNIROUTE_VNC_CONTAINER_CDP_PORT 9223 src/lib/vncSession/manifest.ts Порт Chrome DevTools Protocol-а унутар контејнера.
OMNIROUTE_VNC_CONTAINER_PROFILE_DIR /config src/lib/vncSession/manifest.ts Директоријум профила унутар контејнера.
OMNIROUTE_VNC_PROFILE_DIR (није постављено) src/lib/vncSession/manifest.ts Директоријум на хосту за трајне профиле прегледача.
OMNIROUTE_VNC_IDLE_MS 600000 src/lib/vncSession/manifest.ts Временско ограничење неактивности (ms) пре окончања VNC сесије.
OMNIROUTE_VNC_MAX_MS 1800000 src/lib/vncSession/manifest.ts Максимално трајање сесије (ms).
OMNIROUTE_VNC_MAX_SESSIONS 4 src/lib/vncSession/manifest.ts Максималан број истовремених VNC сесија.
OMNIROUTE_VNC_READY_MS 45000 src/lib/vncSession/manifest.ts Временско ограничење за спремност прегледача (ms).
OMNIROUTE_VNC_HARVEST_MS 20000 src/lib/vncSession/manifest.ts Временско ограничење за прикупљање/чишћење (ms).
OMNIROUTE_VNC_NETWORK omniroute-vnc-browser-login src/lib/vncSession/manifest.ts Наменска Docker мрежа којој се контејнер придружује (#12571), ван подразумеваног мрежног моста.
VIBEPROXY_DATA_DIR (није постављено) open-sse/services/notionThreadSessions.ts Директоријум за трајно чување сесија Notion нити.

Аутентификација интерних сервиса

Променљива Подразумевано Опис
OMNIROUTE_INTERNAL_SERVICE_TOKEN Токен наведен директно у променљивој за аутентификацију између сервиса управљачке равни.
OMNIROUTE_INTERNAL_SERVICE_TOKEN_FILE Путања до датотеке која садржи токен интерног сервиса (препоручено у контејнерима; има предност над променљивом са директно наведеним токеном).

Статистике добављача OpenRouter

Променљива Подразумевано Опис
OPENROUTER_PROVIDER_STATS_ENABLED true Поставите на false да бисте прескочили преузимање OpenRouter статистика по добављачу ради обогаћивања каталога.
OPENROUTER_PROVIDER_STATS_TTL_MS 3600000 TTL кеша (ms) за преузете OpenRouter статистике добављача.

Уграђено Redis повезивање

Променљива Подразумевана вредност Опис
REDIS_BIND_HOST 127.0.0.1 Адреса за повезивање уграђене Redis услуге.
REDIS_PORT 6379 Порт за уграђену Redis услугу.
OMNIROUTE_REDIS_BIND_HOST Замена адресе за повезивање уграђене Redis услуге, специфична за OmniRoute.

24. Додаци у издању v3.8.50

Ова подешавања су уведена након претходног снимка уговора окружења.

Променљива Подразумевана вредност Изворна датотека Опис
OMNIROUTE_CHAT_ADMISSION_QUEUE_MS 2000 src/shared/middleware/chatBodyAdmission.ts Максимално време чекања на слот за пријем захтевног ћаскања пре поновљиве грешке 503; кратко ограничено чекање серијализује нагле приливе агената уместо тренутне грешке 503. Вредност 0 поново омогућава тренутно одбијање.
OMNIROUTE_CHAT_ADMISSION_MAX_QUEUED_BYTES 4194304 (4 MB) src/shared/middleware/chatBodyAdmission.ts Буџет бајтова у реду за чекање на пријем: ограничава укупан број бајтова тела захтева који су баферовани и задржани на нивоу целог процеса, како чекање не би увећало заузеће хипа (#4380). Захтеви који премашују буџет одмах добијају поновљиву грешку 503.
OMNIROUTE_CHAT_VIRTUAL_TTL_MS 60000 (60 s) src/shared/middleware/chatBodyAdmission.ts Застарела поставка без ефекта од #10110: траке за пријем по сесији уклоњене су у корист једног буџета на нивоу целог процеса. Прихвата се ради компатибилности конфигурације; игнорише се.
OMNIROUTE_CHAT_VIRTUAL_MAX_SESSIONS 64 src/shared/middleware/chatBodyAdmission.ts Застарела поставка без ефекта од #10110: траке за пријем по сесији уклоњене су у корист једног буџета на нивоу целог процеса. Прихвата се ради компатибилности конфигурације; игнорише се.
OMNIROUTE_CHAT_VIRTUAL_LANES 0 (искључено) open-sse/services/admission/runtime.ts Адаптивне виртуелне траке за пријем током извршавања (#9654): главни прекидач за адаптивну капију по закупцу (систем 2). Разликује се од застарелих променљивих трака по вези изнад (TTL_MS / MAX_SESSIONS, без ефекта од #10110). Функционална заставица истог имена на контролној табли; променљива окружења има предност над подешавањем на контролној табли; захтева поновно покретање.
OMNIROUTE_RUNNOW_TIMEOUT_MS 30000 src/app/api/jobs/[id]/run-now/route.ts Ограничава колико дуго позив за тренутно покретање чека на посао који је у току пре покретања посла из реда.
ADOBE_FIREFLY_BROWSER_REFRESH омогућено open-sse/services/adobeFireflySession.ts Одржава IMS и стање ризика прегледача свежим преко Chrome CDP сесија ограничених на налог; поставите на 0 да бисте онемогућили.
ADOBE_FIREFLY_SESSION_DISK омогућено open-sse/services/adobeFireflySession.ts Трајно чува поправљене Adobe сесије у DATA_DIR; поставите на 0 за стање само у меморији.
ADOBE_FIREFLY_MIN_SUBMIT_GAP_MS 12000 open-sse/services/adobeFireflySession.ts Минимални размак између слања Adobe Firefly захтева за генерисање.
ADOBE_FIREFLY_BATCH_EXTRA_GAP_MS 15000 open-sse/services/adobeFireflySession.ts Додатни период мировања након сваког трећег успешног Adobe слања.
ADOBE_FIREFLY_CHROME_HEADLESS 0 open-sse/services/adobeFireflyBrowserLogin.ts Прави безглави режим намењен само отклањању грешака; Adobe colligo обично одбија тако насталу ризичну сесију.
CHROME_PATH аутоматско откривање open-sse/executors/cloudflare-playground.ts, open-sse/executors/chatgpt-web-codex.ts Опционална апсолутна путања до извршне датотеке Chrome-а коју користе извршиоци вођени прегледачем када аутоматско откривање платформе није довољно.
TELEGRAM_BOT_TOKEN (није постављено) src/lib/telegram/config.ts BotFather токен који омогућава долазни webhook и потписује initData Mini App апликације.
TELEGRAM_WEBHOOK_SECRET (није постављено) src/lib/telegram/config.ts Дељена тајна регистрована преко setWebhook и проверена у односу на заглавље X-Telegram-Bot-Api-Secret-Token при свакој webhook испоруци. Обавезна је за webhook путању; ако није постављена, webhook испоруке се одбијају грешком 503.
TELEGRAM_DEFAULT_MODEL auto/chat src/lib/telegram/chatProxy.ts Модел који се користи за одговоре у Telegram ћаскању.
TELEGRAM_BOT_API_BASE https://api.telegram.org src/lib/telegram/config.ts Замена основног URL-а Bot API-ја за проксије или самостално хостоване Bot API сервере.
TELEGRAM_WEBHOOK_TIMEOUT_MS 60000 src/lib/telegram/config.ts Временско ограничење у милисекундама за одлазне Bot API позиве.
OMNIROUTE_OPTIONAL_PACK_TAR 1 (омогућено) scripts/build/optionalPackStaging.mjs Поставите на 0 да бисте прескочили генерисање .tar.gz tarball архива приликом припреме опционалних ML/прегледачких пакета за самостално Electron стабло (директоријуми пакета и optional-packs.index.json и даље се производе). Користи га ток рада за десктоп издања ради смањења величине отпремања артефаката.

ChatGPT Web (Codex)

Глобалне подразумеване вредности за безглави прегледач и одлазни тунел алата. Вредности везе постављене на контролној табли имају предност.

Променљива Подразумевано Изворна датотека Опис
CHATGPT_WEB_CODEX_CHROME_PATH (аутоматско откривање) open-sse/executors/chatgpt-web-codex.ts Експлицитна путања до Chrome-а/Chromium-а за рад преко npm-а, systemd-а и PM2-а.
CHROME_PATH (аутоматско откривање) open-sse/executors/chatgpt-web-codex.ts Заједничка резервна опција за експлицитну путању до Chrome-а/Chromium-а.
CHATGPT_WEB_CODEX_CDP_URL (није постављено) open-sse/executors/chatgpt-web-codex.ts Интерна CDP крајња тачка; Docker користи sidecar на порту 9223.
CDP_PROXY_TOKEN (није постављено) docker/chatgpt-web-codex-browser/cdp-proxy.mjs Ако је постављено, сваки захтев ка CDP proxy sidecar-у мора да проследи ову вредност у заглављу X-Omni-Cdp-Token (#13679). Без вредности, proxy прослеђује захтеве без аутентификације — тада заштиту пружа само мрежна изолација Compose мреже chatgpt-web-codex-net. Генеришите помоћу openssl rand -hex 32.
CHATGPT_WEB_CODEX_TUNNEL_ID (није постављено) open-sse/executors/chatgpt-web-codex.ts Глобални OpenAI ID тунела за локалне рунде Codex алата.
CHATGPT_WEB_CODEX_RUNTIME_KEY (није постављено) open-sse/executors/chatgpt-web-codex.ts Глобални runtime кључ тунела; никада га не исписујте у логовима.
CHATGPT_WEB_CODEX_CONNECTOR_NAME OmniRoute Codex v2 open-sse/executors/chatgpt-web-codex.ts Тачан назив новокреираног ChatGPT прилагођеног конектора за MCP мост.
CODEX_CHATGPT_WEB_HOME <DATA_DIR>/chatgpt-web-codex open-sse/vendor/codex-chatgpt-web/config.ts Наменски директоријум за стање прегледача, broker-а и тунела.
CODEX_CHATGPT_WEB_BROWSER_DIAGNOSTICS 0 open-sse/vendor/codex-chatgpt-web/adapters/chatgpt-web/browser-worker.ts Када је вредност 1, дијагностичке слике прегледача снимају се на свакој контролној тачки.
CODEX_CHATGPT_WEB_LAUNCHER (није постављено) open-sse/vendor/codex-chatgpt-web/config.ts Опционална апсолутна путања до трајне launcher извршне датотеке.
CODEX_CHATGPT_WEB_BUN (аутоматско откривање) open-sse/vendor/codex-chatgpt-web/config.ts Опционална апсолутна путања до Bun runtime извршне датотеке.
CODEX_WEB_GPT_BUN (није постављено) open-sse/vendor/codex-chatgpt-web/config.ts Застарела резервна опција за CODEX_CHATGPT_WEB_BUN; нова подешавања користе канонски назив.

OmniConductor мост

Дуготрајни SSE потрошач који пресликава задатке OmniConductor чворишта у локални A2A TaskManager (src/lib/conductor/). Опционо — мост се покреће само када је постављен CONDUCTOR_HUB_URL. Само на страни сервера: токен чворишта никада не сме доспети до прегледача.

Променљива Подразумевано Изворна датотека Опис
CONDUCTOR_HUB_URL (празно) src/lib/conductor/boot.ts Основни URL OmniConductor чворишта (нпр. http://127.0.0.1:7910). Није постављено = мост је онемогућен.
CONDUCTOR_HUB_TOKEN (празно) src/lib/conductor/boot.ts Акредитив чворишта за SSE ток — емитујте peer врсте spokesperson на чворишту (POST /v1/peers, администраторски приступ).
CONDUCTOR_ORCHESTRATOR_TOKEN (празно) src/lib/conductor/hubProxy.ts Акредитив за долазно делегирање A2A→чвориште задатака (POST /v1/tasks); ако није постављен, користи се CONDUCTOR_HUB_TOKEN.
CONDUCTOR_SPOKESPERSON_URL http://127.0.0.1:7920 src/lib/conductor/faroProxy.ts Основни URL spokesperson (Faro) услуге иза проксија за ћаскање контролне табле (/api/conductor/ask).

Распоређивање уз уважавање квоте

Користе га open-sse/services/combo.ts и src/lib/quota/quotaScheduler.ts за проверу буџета токена пре захтева. Опционо — подразумевано понашање усмеравања остаје непромењено када није постављено.

Променљива Подразумевано Изворна датотека Опис
OMNIROUTE_QUOTA_AWARE_ROUTING 0 open-sse/services/combo.ts Када је 1, прескачу се везе чији буџет токена по временском прозору (rateLimitOverrides.tpm, табела provider_quota_state) не може да покрије процењени трошак захтева пре слања. Ако буџет није конфигурисан, захтев се подразумевано пропушта.