* 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.
618 KiB
Environment Variables Reference (Bahasa Melayu)
🌐 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 · 🇲🇹 mt · 🇲🇲 my · 🇳🇵 ne · 🇳🇱 nl · 🇳🇴 no · 🇮🇳 or · 🇮🇳 pa · 🇵🇭 phi · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇱🇰 si · 🇸🇰 sk · 🇸🇮 sl · 🇷🇸 sr · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇺🇿 uz · 🇻🇳 vi · 🇳🇬 yo · 🇨🇳 zh-CN · 🇹🇼 zh-TW
Rujukan lengkap bagi setiap pemboleh ubah persekitaran yang dikenali oleh OmniRoute. Untuk templat mula pantas, lihat
.env.example.
Important
Setiap pemboleh ubah yang didokumentasikan di sini juga mesti terdapat dalam
.env.example, dan setiap pemboleh ubah dalam.env.examplemesti terdapat di sini.npm run check:env-doc-syncmenguatkuasakan perkara ini semasa komit dan dalam CI. Untuk mengecualikan pemboleh ubah dengan sengaja, tambahkannya pada senarai dibenarkan dalamscripts/check/check-env-doc-sync.mjs.
Kandungan
- 1. Rahsia yang Diperlukan
- 2. Storan & Pangkalan Data
- 3. Rangkaian & Port
- 4. Keselamatan & Pengesahan
- 5. Sanitasi Input & Perlindungan PII
- 6. Dasar Alat & Penghalaan
- 7. URL & Penyegerakan Awan
- 8. Proksi Keluar
- 9. Penyepaduan Alat CLI
- 10. Penyepaduan Ejen Dalaman & MCP
- 11. Kelayakan Penyedia OAuth
- 12. Penggantian User-Agent Penyedia
- 13. Keserasian Cap Jari CLI
- 14. Penyedia Kunci API
- 15. Tetapan Tamat Masa
- 16. Pengelogan
- 17. Pengoptimuman Memori
- 18. Penyegerakan Harga
- 19. Penyegerakan Model (Pembangunan)
- 20. Tetapan Khusus Penyedia
- 21. Kesihatan Proksi
- 22. Penyahpepijatan
- 23. Penyepaduan GitHub
- 24. Kotak Pasir Kemahiran (v3.8.0+)
- 27. Suapan Radar (Pengehosan Kendiri)
- Senario Penggunaan
- Audit: Pemboleh Ubah yang Dialih Keluar / Tidak Digunakan
1. Rahsia yang Diperlukan
Pemboleh ubah ini mesti ditetapkan sebelum dijalankan buat kali pertama. Tanpanya, aplikasi sama ada akan enggan dimulakan atau beroperasi dengan tetapan lalai yang tidak selamat.
| Pemboleh Ubah | Diperlukan | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|---|
JWT_SECRET |
Ya | (tiada) | src/lib/auth |
Menandatangani/mengesahkan semua kuki sesi papan pemuka (JWT). Jana dengan openssl rand -base64 48. |
API_KEY_SECRET |
Ya | (tiada) | src/lib/db/apiKeys.ts |
Kunci penyulitan AES untuk nilai kunci API yang disimpan dalam SQLite. Jana dengan openssl rand -hex 32. |
INITIAL_PASSWORD |
Ya | CHANGEME |
Skrip but | Menetapkan kata laluan awal papan pemuka pentadbir (sepadan dengan nilai lalai .env.example — sengaja dibiarkan jelas tidak selamat untuk memaksa perubahan). Tukar sebelum penggunaan pertama. Selepas log masuk, tukar melalui Papan Pemuka → Tetapan → Keselamatan. |
OMNIROUTE_WS_BRIDGE_SECRET |
Ya (pengeluaran) | (tidak ditetapkan) | src/app/api/internal/codex-responses-ws/route.ts |
Rahsia dikongsi untuk jambatan WebSocket Codex Responses dalaman. Mengesahkan permintaan jambatan antara geganti WS Electron/pelayar dengan OmniRoute. ⚠️ DIPERLUKAN dalam pengeluaran — apabila tidak ditetapkan, semua permintaan jambatan WS ditolak. Jana dengan openssl rand -base64 32. |
OMNIROUTE_SW_BUILD_ID |
Tidak | (SHA git) | next.config.mjs, scripts/build/assembleStandalone.mjs |
ID pembatalan cache pekerja perkhidmatan yang eksplisit untuk cangkerang PWA (#11779); yang pertama dalam rantaian resolusi. |
SOURCE_VERSION |
Tidak | (tidak ditetapkan) | next.config.mjs, scripts/build/assembleStandalone.mjs |
Yang kedua dalam rantaian — ditetapkan oleh pembina PaaS (contohnya, gaya Heroku) sebagai komit yang digunakan. |
NEXT_PUBLIC_SW_BUILD_ID |
Tidak | (diterbitkan) | src/shared/components/PwaRegister.tsx |
Nilai awam masa binaan yang digunakan oleh klien untuk mendaftarkan /sw.js?v=…; diterbitkan daripada dua nilai di atas, kemudian SHA git. |
OMNIROUTE_PEER_STAMP_TOKEN |
Tidak (automatik) | (automatik setiap but) | src/server/authz/policies/management.ts |
Rahsia setiap proses yang membuktikan cap IP rakan dipercayai berasal daripada pelayan HTTP OmniRoute sendiri (scripts/dev/peer-stamp.mjs). Perisian tengah authz mempercayai kelokalan permintaan (pengawalan gelung balik/LAN bagi laluan LOCAL_ONLY) hanya apabila cap tersebut membawa token ini. Dijana secara automatik pada setiap but — biarkan tidak ditetapkan; hanya tetapkan secara kekal untuk persediaan berbilang proses yang perlu berkongsi cap tersebut. |
Perintah Penjanaan
# Jana keempat-empat rahsia serentak:
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
Jangan sekali-kali komit fail
.envyang mengandungi rahsia sebenar kepada kawalan versi..gitignoresudah mengecualikan.env, tetapi sahkannya sebelum menolak perubahan.
2. Storan & Pangkalan Data
OmniRoute menggunakan SQLite (melalui better-sqlite3) untuk semua pengekalan data. Pemboleh ubah ini mengawal lokasi, penyulitan dan kitaran hayat data.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
DATA_DIR |
~/.omniroute/ |
src/lib/db/core.ts |
Direktori akar untuk pangkalan data SQLite, sandaran dan fail data. Gantikan untuk volum Docker atau laluan tersuai. |
OMNIROUTE_ALLOW_DEFAULT_DATA_DIR |
(tidak ditetapkan) | src/lib/dataPaths.ts |
Mekanisme pelepasan untuk pengawal DATA_DIR ujian/penilaian (#10428). Ujian dan prob penilaian/cetakan Node (-e/--eval/-p/--print, termasuk bentuk --eval=/--print=) tanpa DATA_DIR diubah hala ke direktori sementara pakai buang supaya tidak dapat membuka pangkalan data sebenar pengendali; tetapkan kepada 1 untuk memilih semula penggunaan direktori sebenar. |
OMNIROUTE_BUILD_SHA |
(tidak ditetapkan) | src/lib/monitoring/buildSha.ts |
SHA Git bagi artifak yang sedang berjalan. Dicapkan oleh npm run build:release; boleh disuntik ke dalam bekas yang dihantar tanpa penanda dist/BUILD_SHA. Dipaparkan sebagai system.buildSha pada /api/monitoring/health. |
OMNIROUTE_RELEASE_REF |
origin/main |
scripts/build/buildProvenance.ts |
Rujukan yang digunakan oleh gerbang asal-usul pembungkusan artifak untuk menyemak SHA binaan (#10427). |
OMNIROUTE_ALLOW_CANARY_BUILD |
(tidak ditetapkan) | scripts/build/buildProvenance.ts |
Tetapkan kepada 1 untuk membenarkan pembungkusan binaan yang SHAnya tidak berada pada baris keluaran, dengan merekodkannya sebagai binaan kenari yang disengajakan dan bukannya menggagalkan gerbang (#10427). |
OMNIROUTE_SMOKE_API_KEY |
(tidak ditetapkan) | scripts/ops/deploy-canary.mjs |
Kunci API untuk prob asap penggunaan kenari, dihantar sebagai Authorization: Bearer pada /v1/chat/completions. Hanya digunakan oleh skrip penggunaan (#10429), bukan oleh pelayan. Tidak berkaitan dengan pemboleh ubah OMNIROUTE_SMOKE_* bagi abah-abah asap CLI ikut serta (RUN_CLI_SMOKE=1, OMNIROUTE_SMOKE_BASE_URL/MODEL/API_KEY_ENV/TARGETS/TIMEOUT_MS dalam tests/integration/upstream-cli-smoke.int.test.ts) — lihat Penyepaduan CLI → Sapuan asap sebenar. |
OMNIROUTE_BUILDING |
(tidak ditetapkan) | src/lib/buildPhase.ts |
Isyarat fasa binaan (#10060): ditetapkan kepada 1 oleh scripts/build/build-next-isolated.mjs dan diwarisi oleh setiap pekerja binaan yang dimulakan supaya lapisan pangkalan data mengembalikan stub tanpa operasi dan bukannya memuatkan tambahan asli better-sqlite3 (yang menghentikan pekerja semasa keluar). Tidak sekali-kali ditetapkan untuk pelayan yang sedang berjalan. |
OMNIROUTE_SKIP_NATIVE_DEP_CHECK |
0 |
scripts/check/check-native-deps.mjs |
Tetapkan kepada 1 untuk melangkau semakan prabinaan kebergantungan asli pilihan bagi pepohon vendor yang eksotik. Ini tidak menjadikan kebergantungan yang hilang boleh dibina; gunakan hanya apabila kebergantungan asli dibekalkan melalui saluran luaran. |
OMNIROUTE_DATA_DIR |
(tidak ditetapkan) | open-sse/executors/promptql/threadSticky.ts |
Alias sandaran untuk DATA_DIR, diperiksa hanya apabila DATA_DIR tidak ditetapkan. Digunakan untuk mencari cache sesi lekat-utas pada cakera bagi pelaksana PromptQL (<dir>/promptql-thread-sessions.json); jika kedua-dua pemboleh ubah tidak ditetapkan, cache kekal dalam memori sahaja (tidak dikekalkan merentasi mula semula). |
OMNIROUTE_PLUGINS_DIR |
(tidak ditetapkan) | src/lib/plugins/scanner.ts |
Direktori yang dibaca oleh pengimbas pemalam masa jalan — dan akar tempat pengurus pemalam memasang pemalam — dengan menggantikan lalai yang diperoleh daripada direktori rumah (#11827). Halakannya ke pepohon pemalam yang dipasang secara ikatan dalam Docker/K8s dan bukannya memindahkan HOME semata-mata untuk menempatkan semula laluan imbasan (HOME turut mengawal semua tingkah laku relatif kepada direktori rumah yang lain). Tidak ditetapkan = ~/.omniroute/plugins, atau /tmp/.omniroute/plugins apabila proses tidak mengeksport sebarang direktori rumah — keadaan pemalam tidak ditemui secara senyap yang diselesaikan oleh pemboleh ubah ini. Direktori yang diselesaikan dilog sekali ketika permulaan sebagai scanner.dir_resolved berserta input yang dipilih. Bahagian pelayan sahaja: pemalam perintah CLI mengekalkan OMNIROUTE_PLUGIN_PATH masing-masing (bahagian 9). |
STORAGE_ENCRYPTION_KEY |
(kosong = dilumpuhkan) | src/lib/db/encryption.ts |
Kunci AES untuk penyulitan penuh pangkalan data SQLite semasa disimpan. Jana dengan openssl rand -hex 32. |
STORAGE_ENCRYPTION_KEY_VERSION |
v1 |
scripts/build/bootstrap-env.mjs, electron/main.js |
Label versi untuk kunci penyulitan. Tambahkan nilainya apabila melakukan penggiliran kunci untuk menyokong penyahsulitan sandaran lama. |
DISABLE_SQLITE_AUTO_BACKUP |
false |
src/lib/db/backup.ts |
Apabila true, melangkau sandaran fail SQLite rutin/sebelum tulis (simpan/kosongkan harga models.dev, penulisan tetapan). Sandaran manual dan sebelum pemulihan masih dijalankan. Ia tidak melumpuhkan petikan keselamatan tahan lama mandatori pelaksana migrasi atau perlindungan migrasi besar-besaran untuk DB berterusan yang sedia ada. Sandaran bukan manual dihadkan kepada paling banyak sekali setiap 60 minit. Settings → Storage pada papan pemuka boleh melumpuhkan sandaran automatik rutin secara berasingan. |
OMNIROUTE_CRYPT_KEY |
(tidak ditetapkan) | src/lib/db/encryption.ts |
Alias legasi untuk STORAGE_ENCRYPTION_KEY. Diterima sebagai nilai sandaran apabila pemboleh ubah utama tiada. |
OMNIROUTE_API_KEY_BASE64 |
(tidak ditetapkan) | src/lib/db/encryption.ts |
Alias legasi (bentuk berkod Base64) yang diterima sebagai nilai sandaran. Dinyahkod secara automatik sebelum digunakan. |
OMNIROUTE_DB_HEALTHCHECK_INTERVAL_MS |
(tidak ditetapkan) | src/lib/db/core.ts |
Gantikan selang pemeriksaan kesihatan SQLite berkala (ms). Apabila tidak ditetapkan, nilai lalai diterbitkan daripada NODE_ENV. |
OMNIROUTE_WAL_TRUNCATE_INTERVAL_MS |
21600000 (6j) |
src/lib/db/walMaintenance.ts |
Gantikan selang wal_checkpoint(TRUNCATE) berkala (ms). Titik semak automatik tidak pernah mengecilkan fail WAL itu sendiri dan pelayan yang berjalan lama tidak pernah menutup DB-nya. 0 melumpuhkannya. |
OMNIROUTE_WAL_PASSIVE_INTERVAL_MS |
300000 (5m) |
src/lib/db/walMaintenance.ts |
Gantikan selang wal_checkpoint(PASSIVE) yang kerap (ms). Mengekalkan bingkai WAL tertunda pada saiz kecil supaya TRUNCATE berkala tidak menyalin tunggakan berbilang GB pada utas utama. 0 melumpuhkannya. |
OMNIROUTE_WAL_GUARD_MAX_MB |
256 |
src/lib/db/walMaintenance.ts |
Apabila detik PASSIVE mendapati fail WAL melebihi saiz ini, tingkatkan kepada wal_checkpoint(TRUNCATE) dengan segera dan bukannya menunggu detik perlahan. |
OMNIROUTE_PRESSURE_SELF_RESTART |
false |
open-sse/utils/resourcePressure.ts |
Tetapkan kepada 1/true/yes/on untuk keluar daripada proses selepas tekanan sumber kritikal berterusan selama OMNIROUTE_PRESSURE_SELF_RESTART_AFTER_MS, membolehkan penyelia (systemd Restart=always, dasar mula semula Docker) menghidupkan semula proses yang bersih dan bukannya memberikan respons 503 tanpa henti. |
OMNIROUTE_PRESSURE_SELF_RESTART_AFTER_MS |
120000 (2m) |
open-sse/utils/resourcePressure.ts |
Tempoh tekanan kritikal mesti berterusan sebelum proses keluar untuk mula semula kendiri dicetuskan. |
OMNIROUTE_SQLJS_WASM_PATH |
(dikesan secara automatik) | src/lib/db/adapters/sqljsAdapter.ts |
Laluan eksplisit (mutlak atau relatif kepada cwd) ke sql-wasm.wasm apabila menggunakan penyesuai sandaran WASM sql.js. Dikesan secara automatik melalui kebergantungan pakej dan susun atur calon apabila tidak ditetapkan. |
OMNIROUTE_WAL_TRUNCATE_INTERVAL_MS |
21600000 (6j) |
src/lib/db/core.ts |
Gantikan selang wal_checkpoint(TRUNCATE) berkala (ms). Titik semak automatik tidak pernah mengecilkan fail WAL itu sendiri dan pelayan yang berjalan lama tidak pernah menutup DB-nya. 0 melumpuhkannya. |
OMNIROUTE_BATCH_RETENTION_DAYS |
30 |
src/lib/db/cleanup.ts |
Bilangan hari titik semak tugas Batch API terminal (selesai/gagal/dibatalkan/tamat tempoh), fail input/output/ralat yang dirujuk dan barisnya disimpan oleh pembersihan automatik sebelum dipadamkan. Hanya berkuat kuasa setelah BATCH_AND_FILE_AUTO_CLEANUP_ENABLED dihidupkan; sepadan dengan tempoh pengekalan output Batch API OpenAI sendiri. Tidak menjejaskan laluan DELETE /api/v1/batches/delete-completed yang dicetuskan oleh pengendali, yang kekal tanpa syarat (tiada penapis usia) mengikut reka bentuk. |
BATCH_AND_FILE_AUTO_CLEANUP_ENABLED |
false |
src/lib/db/cleanup.ts |
Apabila true, benarkan proses pembersihan automatik memadam tugas Batch API berstatus terminal (serta titik semaknya) yang telah melepasi OMNIROUTE_BATCH_RETENTION_DAYS, dan mengosongkan kandungan BLOB bagi fail yang dimuat naik setelah melepasi expires_at masing-masing. Dimatikan secara lalai: setiap pemasangan sedia ada mengekalkan data ini tepat seperti sebelumnya sehingga pengendali memilih untuk mengaktifkannya. Juga merupakan bendera ciri yang boleh disunting melalui papan pemuka — lihat docs/reference/FEATURE_FLAGS.md → Masa Jalan. |
OMNIROUTE_SKIP_DB_HEALTHCHECK |
0 |
src/lib/db/core.ts, src/lib/db/healthCheck.ts |
Tetapkan kepada 1 untuk melangkau pemeriksaan kesihatan DB sepenuhnya semasa permulaan. Berguna untuk tugas jangka pendek dan ujian integrasi. |
OMNIROUTE_FORCE_DB_HEALTHCHECK |
0 |
src/lib/db/core.ts |
Tetapkan kepada 1 untuk memaksa gelung pemeriksaan kesihatan DB diaktifkan, walaupun ia biasanya akan dilangkau (cth., tugas jangka pendek). |
OMNIROUTE_SKIP_POSTINSTALL |
0 |
scripts/postinstall.mjs |
Tetapkan kepada 1 untuk melangkau pemanasan awal masa jalan natif semasa npm install. Berguna dalam pemasangan CI/tanpa paparan apabila sqlite telah pun dibina. |
OMNIROUTE_MIGRATIONS_DIR |
(kesan automatik) | src/lib/db/migrationRunner.ts |
Gantikan direktori yang diimbas oleh pelaksana migrasi. Berguna apabila menghantar migrasi terbundel dalam binaan tersuai. |
OMNIROUTE_EXTRA_MIGRATIONS_DIRS |
(tidak ditetapkan) | src/lib/db/migrationRunner/extraDirs.ts |
Direktori migrasi tambahan sebagai entri namespace=dir yang dipisahkan oleh pembatas laluan platform (cth. ee=/opt/app/enterprise/db/migrations). Fail yang ditemui di sana direkodkan sebagai <namespace>-<number>, supaya pengedaran yang menyertakan migrasinya sendiri tidak pernah bertembung dengan slot angka huluan. Entri yang tidak sah bentuknya, ruang nama yang tidak sah atau direktori yang tiada akan mencetuskan ralat semasa permulaan dan bukannya melangkau skema secara senyap. |
OMNIROUTE_MAX_PENDING_MIGRATIONS |
50 |
src/lib/db/migrationRunner.ts |
Ambang keselamatan migrasi tertangguh secara besar-besaran (#3416). Permulaan dibatalkan jika lebih banyak migrasi daripada jumlah ini masih tertangguh pada DB sedia ada (melindungi daripada jadual penjejakan yang telah dikosongkan). Naikkan nilainya untuk memulihkan sandaran lama; tetapkan kepada 0 untuk menyahdayakan pemeriksaan. |
OMNIROUTE_INSTALL_UPGRADE_WORKDIR |
(<repo>/.install-upgrade) |
scripts/check/check-install-upgrade.mjs |
Direktori kerja untuk get keluaran check:install-upgrade. Ia memerlukan kira-kira 12 GB (dua pepohon pemasangan ~3 GB serta tarball), jadi ia tidak boleh dijalankan pada tmpfs yang kecil — pada pelaksana hos sendiri, /tmp ialah tmpfs 12 GB yang disokong RAM dan get tersebut telah menghabiskan ruangnya, menyebabkan pakej terpotong. |
OMNIROUTE_SPEND_FLUSH_INTERVAL_MS |
(lalai dalam kod) | src/lib/spend/batchWriter.ts |
Selang pengosongan (ms) untuk penulis perbelanjaan/kos berkelompok. Nilai yang lebih rendah mengurangkan penggabungan penulisan; nilai yang lebih tinggi mengurangkan perebutan DB. |
OMNIROUTE_SPEND_MAX_BUFFER_SIZE |
(lalai dalam kod) | src/lib/spend/batchWriter.ts |
Bilangan maksimum entri perbelanjaan yang dibufer sebelum pengosongan paksa. Naikkan untuk penggunaan QPS tinggi; turunkan apabila had memori lebih penting. |
OMNIROUTE_PROXY_FETCH_DEBUG |
(tidak ditetapkan) | open-sse/utils/proxyFetch.ts |
Tetapkan kepada "true" untuk menghasilkan log nyahpepijat [ProxyFetch] pada laluan geganti Vercel. Dimatikan secara lalai untuk mengelakkan pembocoran petunjuk penghalaan. |
PROXY_LOG_INCLUDE_IPS |
false |
src/lib/proxyLogger.ts |
Tetapkan kepada "true" atau "1" untuk menyertakan IP klien/keluar dan awalan akaun dalam baris log proses terperinci [ProxyEgress]. Dikekalkan MATI secara lalai supaya log proses tidak membocorkan IP atau awalan akaun. |
OMNIROUTE_DEBUG |
(tidak ditetapkan) | bin/cli/commands/quota.mjs |
Tetapkan kepada 1 untuk mencetak diagnostik pemasaan bagi setiap permintaan ([omniroute] GET <path> completed in Nms) daripada perintah kuota CLI ke stderr. |
OMNIROUTE_HEALTHCHECK_PATH |
(automatik) | scripts/dev/healthcheck.mjs |
Laluan nyata yang diperiksa oleh pemeriksaan kesihatan bekas. Jika tidak ditetapkan, prob akan memperolehnya daripada OMNIROUTE_BASE_PATH; menetapkannya akan mengaktifkan semula titik akhir pemantauan mendalam. |
OMNIROUTE_DEBUG_COMPLETION |
(tidak ditetapkan) | bin/cli/commands/completion.mjs |
Tetapkan kepada sebarang nilai bukan kosong untuk menghasilkan diagnostik [omniroute completion] daripada laluan cache pelengkapan shell CLI (baca/segar semula/tulis). Dimatikan secara lalai — cache tersebut gagal secara senyap supaya cache yang hilang/rosak tidak sekali-kali menjejaskan pelengkapan tab. |
BATCH_RETRY_DURATION_MS |
86400000 (24j) |
open-sse/services/batchProcessor.ts |
Tempoh percubaan semula maksimum untuk item kelompok individu (ms). Item yang melebihi tempoh ini ditandai sebagai gagal. |
BATCH_BACKOFF_BASE_MS |
5000 |
open-sse/services/batchProcessor.ts |
Kelewatan asas (ms) untuk undur eksponen bagi percubaan semula item kelompok. |
BATCH_BACKOFF_MAX_MS |
3600000 (1j) |
open-sse/services/batchProcessor.ts |
Had maksimum (ms) untuk undur eksponen antara percubaan semula item kelompok. |
BATCH_MAX_CONCURRENT |
1 |
open-sse/services/batchProcessor.ts |
Bilangan maksimum kelompok yang diproses secara serentak. Tingkatkan untuk menambah daya pemprosesan; kekalkan rendah untuk mengelakkan lonjakan had kadar. |
Important
Sebelum mengubah pangkalan data berterusan yang sedia ada, pengendali migrasi menerbitkan petikan lengkap beralamatkan kandungan di bawah
DATA_DIR/db_backups/. Penerbitan memerlukan sistem fail yang menyokong pautan keras dalam sistem fail yang sama tanpa penulisan ganti serta penyegerakan fail yang tahan lama. Hos POSIX juga memerlukan penyegerakan direktori; pada Windows, Node mungkin menolak pemegang direktori, maka OmniRoute melakukan flush pada fail yang diterbitkan dan menganggap penyegerakan entri direktori sebagai usaha terbaik. JikaDATA_DIRyang dilekapkan tidak dapat memberikan jaminan tersebut, permulaan akan gagal secara tertutup sebelum melaksanakan migrasi. PindahkanDATA_DIRke volum yang mempunyai primitif tersebut; jangan gunakanDISABLE_SQLITE_AUTO_BACKUPuntuk memintas keselamatan migrasi.
Senario
| Senario | Konfigurasi |
|---|---|
| Pembangunan setempat | Kekalkan semua nilai lalai. DB terletak di ~/.omniroute/omniroute.db. |
| Docker | DATA_DIR=/data + lekapkan volum di /data. |
| Disulitkan ketika disimpan | Tetapkan STORAGE_ENCRYPTION_KEY + simpan sandaran kunci tersebut! Kehilangannya = kehilangan data. |
| CI/Pengujian | DATA_DIR=/tmp/omniroute-test — bersifat sementara, penyulitan tidak diperlukan. |
3. Rangkaian & Port
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
PORT |
20128 |
src/lib/runtime/ports.ts |
Port utama untuk kedua-dua UI Papan Pemuka dan titik akhir API (mod port tunggal). |
OMNIROUTE_BASE_PATH |
(kosong = akar) | next.config.mjs, scripts/docker/ensure-docker-base-path.mjs |
Sublaluan URL untuk menyediakan OmniRoute di belakang proksi songsang (menetapkan basePath Next.js; penghalaan semula pengesahan mengambil kira basePath). Contohnya /omniroute. Dalam Docker, nilai ini diterapkan semasa docker build (ARG OMNIROUTE_BASE_PATH); imej akar prabina boleh menggunakan nilai masa jalan yang berbeza sekali ketika kontena dimulakan sebelum Next.js dimulakan. Tetapkan NEXT_PUBLIC_BASE_URL kepada sumber awam yang merangkumi sublaluan yang sama. |
NEXT_PUBLIC_OMNIROUTE_BASE_PATH |
(kosong = akar) | src/shared/hooks/useDisplayBaseUrl.ts |
Cerminan OMNIROUTE_BASE_PATH yang boleh dilihat oleh pelayar, disisipkan semasa binaan supaya paparan titik akhir papan pemuka menunjukkan https://host/omniroute/v1 dan bukannya https://host/v1. Kembali menggunakan OMNIROUTE_BASE_PATH apabila tidak ditetapkan. Bina semula selepas mengubahnya (basePath Next ditetapkan semasa binaan). |
DASHBOARD_ALLOW_EMBED |
(tidak ditetapkan = tidak boleh dibingkaikan) | next.config.mjs, scripts/build/dashboardEmbed.mjs |
Penyertaan iframe bagi halaman HTML secara ikut serta. Apabila tidak ditetapkan, setiap laluan dihantar dengan frame-ancestors 'none' + X-Frame-Options: DENY. Tetapkan kepada vscode untuk menyediakan halaman (papan pemuka, log masuk, dokumentasi, halaman pendaratan) dengan frame-ancestors 'self' vscode-webview: dan tanpa X-Frame-Options, supaya Pelayar Ringkas VS Code boleh memaparkannya (mod dashboardOpen: "editor" OmniCopilot). Permukaan API (/api, /v1, /v1beta, /a2a, /healthz, alias peringkat akar) tetap mengekalkan pengepala yang ketat dalam kedua-dua keadaan. Hanya vscode diiktiraf — 1/true tidak mendayakannya. Masa binaan: bina semula selepas mengubahnya (docker build --build-arg DASHBOARD_ALLOW_EMBED=vscode untuk imej; menetapkannya pada pemasangan prabina tidak memberikan kesan). |
API_PORT |
(tidak ditetapkan) | src/lib/runtime/ports.ts |
Apabila ditetapkan, menyediakan API proksi /v1/* pada port berasingan ini. |
API_HOST |
0.0.0.0 |
src/lib/runtime/ports.ts |
Alamat pengikatan untuk port API. |
DASHBOARD_PORT |
(tidak ditetapkan) | src/lib/runtime/ports.ts |
Apabila ditetapkan, menyediakan UI Papan Pemuka pada port berasingan ini. |
OMNI_MAX_CONCURRENT_CONNECTIONS |
0 (dinyahdayakan) |
src/sse/utils/backpressure.ts |
Mengehadkan sambungan sembang aktif serentak; permintaan yang melebihi had menerima 503 dengan Retry-After. Integer positif mendayakan perlindungan; tidak ditetapkan/0 menyahdayakannya. |
OMNIROUTE_INSTANCE_ID |
(tidak ditetapkan) | src/shared/resilience/peerRouting.ts |
ID yang stabil dan unik untuk get laluan ini apabila merangkaikan tika OmniRoute. Mendayakan semakan gelung rakan setara masuk. Aksara yang dibenarkan: huruf, digit, ., _, :, dan -; maksimum 64 aksara. |
OMNIROUTE_PEER_URLS |
(tidak ditetapkan) | src/shared/resilience/peerRouting.ts, open-sse/executors/base.ts |
URL asas OmniRoute yang dipisahkan koma dan boleh menerima X-OmniRoute-Peer-Trace. Hanya URL huluan yang dibenarkan secara eksplisit menerima metadata rakan setara; semua penyedia lain tidak diubah. |
OMNIROUTE_PEER_MAX_HOPS |
4 |
src/shared/resilience/peerRouting.ts |
Bilangan maksimum tika OmniRoute yang telah dilawati sebelum ini dan diterima pada permintaan berantai (1-32). Tika yang berulang atau belanjawan yang telah habis akan mengembalikan HTTP 508 Loop Detected. |
PROD_DASHBOARD_PORT |
20130 |
docker-compose.prod.yml |
Port yang diterbitkan pada bahagian hos untuk Papan Pemuka dalam mod pengeluaran Docker. |
PROD_API_PORT |
20131 |
docker-compose.prod.yml |
Port yang diterbitkan pada bahagian hos untuk API dalam mod pengeluaran Docker. |
OMNIROUTE_PORT |
(tidak ditetapkan) | src/lib/runtime/ports.ts |
Diutamakan berbanding PORT apabila dijalankan dalam Electron atau pembalut lain. |
LIVE_WS_PORT |
20129 |
src/server/ws/liveServer.ts |
Port untuk pelayan pemantauan langsung WebSocket masa nyata. |
LIVE_WS_HOST |
127.0.0.1 |
src/server/ws/liveServer.ts |
Alamat pengikatan untuk pelayan WebSocket langsung. Tetapkan kepada 0.0.0.0 untuk mendedahkannya pada LAN (konfigurasikan juga LIVE_WS_ALLOWED_ORIGINS). |
LIVE_WS_ALLOWED_ORIGINS |
(tidak ditetapkan) | src/server/ws/liveServer.ts |
Asalan tambahan yang dipisahkan koma dan dibenarkan untuk membuka WebSocket langsung. Asalan papan pemuka gelung balik telah dibenarkan secara lalai. |
LIVE_WS_ALLOWED_HOSTS |
(tidak ditetapkan) | src/server/ws/liveServerAllowList.ts |
Nama hos tambahan yang dipisahkan koma dan dibenarkan untuk asalan WebSocket langsung. Tidak seperti LIVE_WS_ALLOWED_ORIGINS (URL asalan penuh), ini hanya memadankan bahagian hos — berguna untuk persediaan LAN/Tailscale. |
NEXT_PUBLIC_LIVE_WS_PUBLIC_URL |
(tidak ditetapkan) | src/hooks/useLiveDashboard.ts |
URL awam untuk WebSocket papan pemuka langsung (bahagian pelayar). Tetapkan apabila pelayan WS diletakkan di belakang proksi songsang atau Cloudflare Tunnel (cth. wss://ws.my-ai.com/live-ws); pelayar akan bersambung ke sana dan bukannya ws://hostname:20132. Bahagian nama laluan turut digunakan sebagai laluan peningkatan WebSocket (lalai: /live-ws). |
OMNIROUTE_ENABLE_LIVE_WS |
true |
src/server/ws/liveServer.ts dan scripts/start-ws-server.mjs |
Tetapkan kepada 0 atau false untuk menyahdayakan pelayan WebSocket masa nyata (didayakan secara lalai, terikat pada gelung balik). Togol CI/abah-abah yang menyahdayakan skrip pembantu WebSocket langsung kendiri. |
RELAY_IP_PER_MINUTE |
30 |
src/app/api/v1/relay/chat/completions/route.ts |
Had kadar geganti bagi setiap (token, IP), permintaan/minit. Dalam memori, bagi setiap tika. 0 atau nilai negatif menyahdayakan get dimensi IP (had DB bagi setiap token masih terpakai). |
NODE_ENV |
production |
Teras Next.js | Mengawal tahap perincian log, caching, pendedahan butiran ralat dan pengoptimuman Next.js. |
OMNIROUTE_USE_TURBOPACK |
1 (Turbopack — lalai kod) |
package.json / Next.js 16 |
Turbopack ialah pembundel lalai untuk npm run dev dan npm run build (binaan 2-3× lebih pantas, berdasarkan penanda aras). Tetapkan kepada 0 untuk kembali menggunakan webpack pada Windows, apabila menghadapi ketidakserasian pengikatan natif / keserasian pembundel, atau pada mesin dengan RAM terhad — binaan pengeluaran Turbopack pada siri versi Next.js ini (16.2.x) diketahui mencapai penggunaan memori puncak yang jauh lebih tinggi berbanding webpack untuk graf modul yang besar (pembaikan penyingkiran memori Turbopack dalam Next 16.3 masih belum stabil); penggunaan memori puncak bagi pilihan sandaran webpack jauh lebih rendah. Lihat #6409. |
OMNIROUTE_SKIP_DB_HEALTHCHECK |
(tidak ditetapkan) | src/lib/db/core.ts / src/lib/db/healthCheck.ts |
Tetapkan kepada 1 untuk melangkau pemeriksaan kesihatan integriti SQLite semasa permulaan. Berguna untuk permulaan yang lebih pantas pada pangkalan data besar. |
NOTIFY_SOCKET |
(tidak ditetapkan) | systemd (protokol sd_notify) | Ditetapkan oleh systemd apabila proses berjalan di bawah unit perkhidmatan dengan penyepaduan sd_notify; OmniRoute membacanya (lihat OMNIROUTE_DISABLE_SD_NOTIFY) untuk menghantar pemberitahuan READY/WATCHDOG. Jangan sekali-kali ditetapkan oleh pengguna. |
OMNIROUTE_DISABLE_SD_NOTIFY |
(tidak ditetapkan) | scripts/dev/systemd-notify.mjs |
Tetapkan kepada 1 untuk menyahdayakan sd_notify systemd (Type=notify / WatchdogSec=) walaupun berjalan di bawah unit systemd. Pemberitahu tidak melakukan apa-apa di luar systemd dalam apa jua keadaan. |
CREDENTIAL_HEALTH_CHECK_INTERVAL |
300000 |
open-sse/config/constants.ts / src/lib/credentialHealth/scheduler.ts |
Selang (ms) bagi penjadual pemeriksaan kesihatan bukti kelayakan latar belakang. Minimum: 10000 (10s). |
CREDENTIAL_HEALTH_CACHE_TTL |
300000 |
open-sse/config/constants.ts / src/lib/credentialHealth/cache.ts |
TTL (ms) bagi status kesihatan bukti kelayakan yang dicache. |
OMNIROUTE_DISABLE_CREDENTIAL_HEALTH_CHECK |
false |
src/lib/credentialHealth/scheduler.ts |
Tetapkan kepada 1 atau true untuk menyahdayakan pengujian berkala sambungan penyedia di latar belakang. Penyedia carian (SEARCH_VALIDATOR_CONFIGS dalam src/lib/providers/validation/searchProviders.ts, contohnya tavily-search) sentiasa dikecualikan daripada imbasan — "pengesahan" mereka ialah pertanyaan huluan sebenar yang dikenakan bayaran, maka pemeriksaan kesihatan tidak pernah dilakukan mengikut pemasa (#9970). |
HOST |
0.0.0.0 |
scripts/dev/run-next.mjs |
Alamat pengikatan bagi pelayan dev/start Next.js. Mengatasi nilai lalai 0.0.0.0 apabila ditetapkan. |
HOSTNAME |
127.0.0.1 |
scripts/dev/run-next-playwright.mjs |
Alamat pengikatan yang digunakan oleh pelaksana Playwright semasa melancarkan Next.js. Lalai kepada 127.0.0.1 untuk ujian hermetik. Jangan gunakan untuk omniroute serve — sebaliknya, gunakan OMNIROUTE_SERVER_HOST (shell POSIX menetapkan HOSTNAME secara automatik kepada nama mesin; .env tidak boleh mengatasinya). |
OMNIROUTE_SERVER_HOST |
0.0.0.0 |
bin/cli/commands/serve.mjs |
Alamat pengikatan untuk omniroute serve. Mengelakkan pertembungan dengan pemboleh ubah shell POSIX HOSTNAME (sentiasa ditetapkan kepada nama mesin oleh bash/zsh). Kembali kepada 0.0.0.0 apabila tidak ditetapkan. (#6194) |
Mod Port
┌─────────────────────────── Port Tunggal (lalai) ───────────────────────────┐
│ PORT=20128 │
│ → Papan Pemuka: http://localhost:20128 │
│ → API: http://localhost:20128/v1/chat/completions │
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────── Port Berasingan ─────────────────────────────────┐
│ DASHBOARD_PORT=20128 │
│ API_PORT=20129 │
│ API_HOST=0.0.0.0 │
│ → Papan Pemuka: http://localhost:20128 │
│ → API: http://0.0.0.0:20129/v1/chat/completions │
│ Kegunaan: Dedahkan API kepada LAN sambil mengehadkan Papan Pemuka kepada │
│ localhost. │
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────── Docker Pengeluaran ──────────────────────────────┐
│ PROD_DASHBOARD_PORT=443 PROD_API_PORT=8443 │
│ → Memetakan port bekas kepada port hos dalam docker-compose.prod.yml. │
└─────────────────────────────────────────────────────────────────────────────┘
4. Keselamatan & Pengesahan
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
MACHINE_ID_SALT |
endpoint-proxy-salt |
src/lib/auth |
Salt yang digabungkan dengan pengecam perkakasan untuk menghasilkan cap jari mesin. Ubah bagi setiap pelaksanaan untuk pengasingan. |
OMNIROUTE_CLI_SALT |
(tidak ditetapkan = salt rawak bagi setiap pemasangan yang dikekalkan di <DATA_DIR>/cli-token-salt.json) |
src/lib/machineToken.ts |
Salt HMAC untuk menerbitkan token pengesahan CLI setempat. Menetapkan nilai ini akan menggilirkan semua token CLI pada mesin dan sentiasa diutamakan berbanding salt yang dikekalkan. Lihat docs/security/CLI_TOKEN.md. |
AUTH_COOKIE_SECURE |
false |
src/lib/auth |
Menetapkan bendera Secure pada kuki sesi. Mestilah true apabila dijalankan di belakang HTTPS. |
REQUIRE_API_KEY |
false |
Perisian tengah API | Apabila true, semua permintaan proksi /v1/* mesti menyertakan kunci API yang sah. |
ALLOW_API_KEY_REVEAL |
false |
src/shared/constants/featureFlagDefinitions.ts |
Membenarkan nilai penuh kunci API didedahkan dalam UI Papan Pemuka. Boleh dikonfigurasikan daripada Bendera Ciri Papan Pemuka; risiko keselamatan pada tika yang dikongsi. |
NO_LOG_API_KEY_IDS |
(kosong) | src/lib/compliance/index.ts |
ID kunci API dipisahkan koma yang memintas pengelogan permintaan (pematuhan GDPR). |
DEFAULT_RATE_LIMIT_PER_DAY |
(tidak ditetapkan = tanpa had) | src/shared/utils/apiKeyPolicy.ts |
Belanjawan permintaan harian sandaran yang digunakan pada kunci API yang lajur rate_limitsnya bernilai null. Tidak ditetapkan atau kosong: tiada had tersirat (#2289, #11017). 0 adalah sama (tanpa had). Integer positif N mendayakan N/hari, 5N/minggu, 20N/bulan. Nilai bukan kosong yang tidak sah akan kembali kepada tetingkap legasi 1000/hari, 5000/minggu, 20000/bulan. |
MAX_BODY_SIZE_BYTES |
10485760 (10 MB) |
src/shared/middleware/bodySizeGuard.ts |
Saiz maksimum badan permintaan yang dibenarkan. Menolak muatan yang melebihi had ini. |
OMNIROUTE_CHAT_LARGE_BODY_BYTES |
262144 (256 KB) |
src/shared/middleware/chatBodyAdmission.ts |
Badan permintaan sebenar yang sama dengan atau melebihi ambang ini mengambil pajakan kemasukan kelas berat setempat proses yang atomik sebelum penghuraian JSON (laluan BYTE, termasuk POST /v1/responses). Pelepasan ruang lebihan sihat #10437 yang sama seperti bagi struktur berat; masih dihadkan oleh OMNIROUTE_CHAT_MAX_INFLIGHT_BYTES / #10110 supaya #7849 tidak berulang. |
OMNIROUTE_CHAT_HARD_MAX_BODY_BYTES |
52428800 (50 MB) |
src/shared/middleware/chatBodyAdmission.ts |
Had mutlak laluan sembang yang dikuatkuasakan berdasarkan bait yang dibaca semasa pengingesan terhad, termasuk permintaan dengan Content-Length yang tiada, tidak sah atau tidak jujur; lebihan menerima 413. |
OMNIROUTE_CHAT_MAX_HEAVY_IN_FLIGHT |
(tidak ditetapkan — tiada had bilangan permintaan) | src/shared/middleware/chatBodyAdmission.ts |
#503-fanout: had BILANGAN permintaan legasi ini kini berkuat kuasa hanya apabila ditetapkan secara eksplisit. Jika tidak ditetapkan (lalai), penerimaan sembang berwajaran berat sebaliknya dikawal oleh OMNIROUTE_CHAT_MAX_INFLIGHT_BYTES — belanjawan BAIT yang diterbitkan secara automatik dan ditentukan saiznya daripada had memori sebenar proses dalam satu proses (satu heap V8). Dua /v1/responses bertindih dengan ~750k token akan menggugurkan heap ~12 Gi (#7849) — amaran belanjawan memori, bukannya had maksimum keras produk sebanyak 2. Proses yang sihat (heap di bawah nisbah pelepasan) BOLEH menerima lebih banyak /v1/responses panjang yang serentak melalui OMNIROUTE_CHAT_ADMISSION_HEALTHY_HEADROOM. Puluhan klien SSE panjang (40–50) bergantung pada heap + OMNIROUTE_CHAT_MAX_INFLIGHT_BYTES / #10110, bukannya “maksimum 2”. Menaikkan nilai ini secara membuta tuli untuk “menggunakan hos” akan memperkenalkan semula #7849. Gandakan heap dengan N DATA_DIR bebas (#11024); jangan sekali-kali gunakan replicas>1 pada satu fail SQLite. |
OMNIROUTE_CHAT_MAX_INFLIGHT_BYTES |
(diterbitkan secara automatik) | src/shared/middleware/admissionBudget.ts |
#503-fanout: penggantian untuk belanjawan bait pengingesan yang diterbitkan secara automatik (25% daripada had memori V8/cgroup yang lebih ketat, dibahagikan dengan penguatan sementara 8x). Nilai terbitan dan eksplisit dihadkan kepada 8 MiB–2 GiB. Isi yang lebih besar daripada belanjawan berkesan akan gagal serta-merta dengan 413 body_exceeds_budget; persaingan antara isi yang secara individu boleh dilayan kekal boleh dicuba semula dengan 503. 40–50 klien SSE panjang yang serentak bergantung pada belanjawan ini + heap, bukannya “maksimum 2” yang keras. Semak chatAdmission.maxInflightBytes / budgetSource / pressureSeverity di /api/monitoring/health sebelum melakukan penalaan. |
OMNIROUTE_CHAT_ADMISSION_HEAP_SHED_RATIO |
0.75 |
src/shared/middleware/chatBodyAdmission.ts |
Nisbah pelepasan tekanan heap (heapUsed / heap_size_limit) untuk penerimaan berwajaran berat BYTE dan STRUCTURE (#10183, #10268, #10437). Permintaan berwajaran berat serentak yang melebihi OMNIROUTE_CHAT_MAX_HEAVY_IN_FLIGHT hanya dilepaskan dengan 503 yang boleh dicuba semula apabila heap JUGA berada pada atau melebihi nisbah ini; pada heap yang sihat, permintaan itu diterima melalui ruang tambahan sihat. |
OMNIROUTE_CHAT_ADMISSION_HEALTHY_HEADROOM |
OMNIROUTE_CHAT_MAX_HEAVY_IN_FLIGHT (lalai 1) |
src/shared/middleware/chatBodyAdmission.ts |
Kapasiti tambahan terhad untuk laluan pantas heap sihat (#10437) pada kedua-dua STRUCTURE dan BYTE (admitChatRequest, termasuk isi ≥ OMNIROUTE_CHAT_LARGE_BODY_BYTES). Tanpa had ini, setiap permintaan sibuk tetapi dengan heap sihat akan memintas kawalan penerimaan tanpa had maksimum. Setelah bilangan pajakan serentak sebanyak ini aktif melalui laluan heap sihat, permintaan sibuk seterusnya akan beralih kepada laluan tunggu terhad/pelepasan yang SAMA seperti yang digunakan semasa tekanan heap sebenar. 0 menyahdayakan pintasan sepenuhnya. |
OMNIROUTE_CHAT_HEAVY_MESSAGE_COUNT |
200 |
src/shared/middleware/chatBodyAdmission.ts |
Bilangan mesej yang mengklasifikasikan permintaan sembang sebagai berwajaran berat walaupun isi permintaannya di bawah ambang bait. |
OMNIROUTE_CHAT_HEAVY_TOOL_COUNT |
64 |
src/shared/middleware/chatBodyAdmission.ts |
Bilangan alat yang mengklasifikasikan permintaan sembang sebagai berwajaran berat walaupun isi permintaannya di bawah ambang bait. |
OMNIROUTE_CHAT_HEAVY_ESTIMATED_TOKENS |
32000 |
src/shared/middleware/chatBodyAdmission.ts |
Anggaran token konservatif berdasarkan saiz rentetan yang mengklasifikasikan permintaan sebagai berwajaran berat; ini ialah proksi kos penerimaan, bukannya pentokenan pengebilan penyedia. |
OMNIROUTE_CHAT_HARD_MAX_MESSAGES |
0 (dinyahdayakan) |
src/shared/middleware/chatBodyAdmission.ts |
Had sejarah sembang pilihan yang perlu didayakan secara eksplisit. Dinyahdayakan secara lalai: bilangan mesej ialah dasar pengerahan, bukannya sifat sejagat sesuatu permintaan, dan pengehadan di sini menolak perbualan dengan 413 muktamad sebelum saluran pemampatan boleh menjadikannya boleh dilayan. Pertumbuhan heap dihadkan oleh OMNIROUTE_CHAT_MAX_HEAVY_IN_FLIGHT dan pelepasan tekanan heap. Tetapkan nilai positif pada pengerahan dengan kekangan memori yang memerlukan had keras; lebihan kemudiannya menerima 413 berstruktur yang memerlukan pemadatan. |
OMNIROUTE_MAX_NONSTREAMING_RESPONSE_BYTES |
67108864 (64 MB) |
open-sse/handlers/chatCore/nonStreamingResponseBody.ts |
Had keras bagi respons huluan bukan penstriman yang ditimbal sepenuhnya ke dalam memori. Selepas had ini, pembaca huluan dibatalkan dan permintaan gagal dengan segera, dan bukannya terus mengembangkan rentetan tanpa had sehingga heap kehabisan ruang. |
OMNIROUTE_FORWARDING_HEADER_BUDGET_BYTES |
768 |
open-sse/handlers/chatCore/responseHeaders.ts |
Bait wayar maksimum yang dimajukan daripada pengepala respons huluan. Apabila belanjawan dilebihi, pengepala berkeutamaan lebih rendah (cth., x-codex-*, x-oai-request-id) digugurkan untuk kekal dalam had pengepala proksi songsang yang lazim. Tetapkan nilai yang lebih tinggi untuk memajukan lebih banyak metadata huluan dengan kos saiz pengepala respons yang lebih besar. |
CORS_ORIGIN |
(tidak ditetapkan) | src/server/cors/origins.ts |
Senarai dibenarkan CORS asal tunggal legasi. Utamakan CORS_ALLOWED_ORIGINS untuk pelaksanaan baharu. CORS hanya untuk klien API pelayar rentas asal; operasi tulis papan pemuka yang disahkan menggunakan permintaan asal sama serta perlindungan CSRF terikat sesi. |
CORS_ALLOWED_ORIGINS |
(tidak ditetapkan) | src/server/cors/origins.ts |
Senarai dibenarkan CORS yang dipisahkan dengan koma. Tiada kad bebas dihantar melainkan CORS_ALLOW_ALL=true dikonfigurasikan secara eksplisit. |
CORS_ALLOW_ALL |
false |
src/server/cors/origins.ts |
Pilihan kecemasan untuk pembangunan sahaja bagi menggemakan sebarang Origin pelayar. Jangan dayakan pada pelaksanaan dikongsi atau pengeluaran. |
OUTBOUND_SSRF_GUARD_ENABLED |
true |
src/shared/network/outboundUrlGuard.ts |
Sekat panggilan penyedia yang menyasarkan julat IP peribadi/gelung balik/pautan setempat. Nyahdayakan hanya dalam persekitaran ujian terpencil. |
OMNIROUTE_ALLOW_PRIVATE_PROVIDER_URLS |
false |
src/shared/network/outboundUrlGuard.ts |
Benarkan URL penyedia yang menghala ke rangkaian peribadi/setempat (localhost, 192.168.x.x, 10.x.x.x, dan sebagainya). DIPERLUKAN untuk penyedia yang dihoskan sendiri (LM Studio, Ollama, vLLM, Llamafile, Triton, SearXNG). Apabila false, papan pemuka menolak pengesahan URL setempat. |
OMNIROUTE_ALLOW_LOCAL_PROVIDER_URLS |
true |
src/shared/network/outboundUrlGuard.ts |
Benarkan penambahan/pengesahan penyedia pada alamat setempat/peribadi (127.0.0.1, localhost, LAN, julat peribadi) — terhad kepada laluan pengesahan penyedia. Lalai true (mengutamakan setempat); tetapkan false untuk menguatkuasakan sekatan ketat kepada alamat awam sahaja. Titik akhir metadata awan (169.254.169.254, metadata.google.internal) kekal disekat tanpa mengira tetapan. (#5066) |
AUDIO_REMOTE_PROVIDER_NODES |
false |
src/app/api/v1/_shared/audioProviderNodes.ts |
Benarkan laluan /v1/audio/* (transkripsi, pertuturan, terjemahan) menggunakan nod penyedia serasi OpenAI yang dihoskan di luar localhost. Dimatikan secara lalai — penghalaan audio ke hos jauh mengubah identiti trafik keluar dan mestilah keputusan eksplisit pengendali. Nod gelung balik/peribadi (localhost, 127.0.0.1, 172.16-31.x) sentiasa dibenarkan dan tidak terjejas. (#3963) |
OMNIROUTE_OIDC_DISABLE_PASSWORD_LOGIN |
false |
src/app/api/auth/login/route.ts |
Apabila OIDC didayakan, nyahdayakan log masuk kata laluan supaya pengguna hanya boleh mengesahkan identiti melalui Daftar Masuk Tunggal OIDC. Alias ringkas OIDC_DISABLE_PASSWORD_LOGIN turut diterima; Bendera Ciri Papan Pemuka dengan kekunci yang sama diberi keutamaan. (#10889) |
OIDC_DISABLE_PASSWORD_LOGIN |
false |
src/app/api/auth/login/route.ts |
Alias ringkas bagi OMNIROUTE_OIDC_DISABLE_PASSWORD_LOGIN (#10889). |
Senarai Semak Pengukuhan
# Keselamatan minimum untuk pengeluaran:
AUTH_COOKIE_SECURE=true # Memerlukan HTTPS
REQUIRE_API_KEY=true # Sahkan semua panggilan proksi
ALLOW_API_KEY_REVEAL=false # Jangan sekali-kali dedahkan kekunci dalam UI
CORS_ALLOWED_ORIGINS=https://your.domain.com
MAX_BODY_SIZE_BYTES=5242880 # Had 5 MB
5. Sanitasi Input & Perlindungan PII
OmniRoute menyediakan pertahanan dua lapisan: pengimbasan suntikan pada bahagian permintaan dan penyingkiran PII pada bahagian respons.
⚠️ Batasan: Langkah perlindungan ini merupakan pengesanan heuristik usaha terbaik, bukannya tembok api suntikan gesaan atau sistem DLP PII yang lengkap. Ia boleh menghasilkan positif palsu (gesaan persona/RPG yang tidak berbahaya ditandai) dan negatif palsu (leetspeak, penjarakan, corak bukan bahasa Inggeris). Langkah ini sahaja tidak mencukupi untuk pematuhan. Laraskan mod dan uji dengan trafik anda sebelum bergantung padanya.
Bahagian Permintaan: Perlindungan Suntikan Gesaan
| Pemboleh ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
INPUT_SANITIZER_ENABLED |
true |
src/middleware/promptInjectionGuard.ts |
Dayakan pengimbasan mesej masuk untuk mengesan corak suntikan gesaan. |
INPUT_SANITIZER_MODE |
warn |
src/middleware/promptInjectionGuard.ts |
Dasar suntikan: warn = log sahaja, block = tolak permintaan dengan 400. redact legasi tidak menyingkirkan teks suntikan; gunakan PII_REDACTION_ENABLED untuk penulisan semula PII permintaan. |
INJECTION_GUARD_MODE |
(tidak ditetapkan) | src/middleware/promptInjectionGuard.ts |
Alias legasi untuk INPUT_SANITIZER_MODE — tingkah laku yang sama. |
INPUT_SANITIZER_BLOCK_THRESHOLD |
high |
src/shared/utils/injectionSeverity.ts |
Tahap keterukan minimum yang ditolak oleh MODE=block: high (lalai), medium, atau low. Corak sederhana hanya diperhatikan melainkan ambang diturunkan. |
INJECTION_GUARD_BLOCK_THRESHOLD |
(tidak ditetapkan) | src/shared/utils/injectionSeverity.ts |
Alias legasi untuk INPUT_SANITIZER_BLOCK_THRESHOLD — tingkah laku yang sama. |
PII_REDACTION_ENABLED |
false |
src/lib/guardrails/piiMasker.ts |
Apabila true, samarkan PII dalam permintaan masuk (tidak bergantung pada mod suntikan). |
CREDENTIAL_REDACTION_ENABLED |
false |
src/lib/guardrails/credentialMasker.ts |
Samarkan corak kunci API / token rahsia yang diketahui umum daripada muatan permintaan/respons. Penyertaan pilihan; mencerminkan PII_REDACTION_ENABLED. |
Bahagian Respons: Sanitasi PII
| Pemboleh ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
PII_RESPONSE_SANITIZATION |
false |
src/lib/piiSanitizer.ts |
Imbas respons LLM untuk mengesan PII yang bocor sebelum dikembalikan kepada klien. |
PII_RESPONSE_SANITIZATION_MODE |
redact |
src/lib/piiSanitizer.ts |
redact = samarkan PII, warn = log sahaja, block = gugurkan keseluruhan respons. |
Sanitasi Konteks Laluan Bertoken VS Code
| Pemboleh ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_VSCODE_SANITIZE_CONTEXT |
1 |
src/app/api/v1/vscode/contextSanitizer.ts |
Menyingkirkan konteks penyunting aktif tersirat (editorContext, activeEditor, currentFile, selection, openTabs…) daripada permintaan /v1/vscode/[token]/* dan menyamarkan kandungan fail sensitif yang dilampirkan secara eksplisit. Selamat secara lalai; tetapkan kepada 0 untuk menyahdayakannya. |
Senario
| Senario | Konfigurasi |
|---|---|
| Pematuhan perusahaan | INPUT_SANITIZER_ENABLED=true, INPUT_SANITIZER_MODE=block, PII_REDACTION_ENABLED=true, PII_RESPONSE_SANITIZATION=true (suntikan disekat + penyamaran PII permintaan/respons; mod tidak saling bergantung) |
| Pemantauan sahaja | INPUT_SANITIZER_ENABLED=true, INPUT_SANITIZER_MODE=warn — merekodkan log tetapi tidak pernah menyekat |
| Penggunaan peribadi | Biarkan semuanya dinyahdayakan — sifar overhed |
6. Dasar Alat & Penghalaan
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
TOOL_POLICY_MODE |
disabled |
src/lib/toolPolicy.ts |
Mengawal akses alat/pemanggilan fungsi LLM. allowlist = hanya alat yang disenaraikan, denylist = semua kecuali yang disenaraikan, disabled = tiada sekatan. |
OMNIROUTE_PAYLOAD_RULES_PATH |
./config/payloadRules.json |
open-sse/services/payloadRules.ts |
Laluan ke fail JSON peraturan manipulasi muatan (pelarasan huluan mengikut model/protokol). |
OMNIROUTE_PAYLOAD_RULES_RELOAD_MS |
5000 |
open-sse/services/payloadRules.ts |
Selang muat semula (ms) bagi pemuatan semula panas fail peraturan muatan. Minimum 1000. |
OMNIROUTE_PREFER_CLAUDE_CODE_FOR_UNPREFIXED_CLAUDE_MODELS |
false |
open-sse/services/model.ts |
Pilihan ikut serta: halakan ID model claude-* tanpa awalan daripada klien Claude Code melalui akaun OAuth Claude Code dan bukannya mewajibkan awalan penyedia. Awalan penyedia yang dinyatakan secara eksplisit tetap diutamakan. Turut boleh dikonfigurasikan melalui togol papan pemuka pada halaman penyedia Claude. |
COMBO_CONCURRENCY_PER_MODEL |
3 |
open-sse/services/comboConfig.ts |
Had keserentakan bagi setiap model untuk kombo round-robin (#9100). Semafor kombo round-robin sebelum ini dihadkan secara tetap kepada 3 permintaan serentak bagi setiap model tanpa pilihan untuk mengatasinya, menyebabkan trafik dengan keserentakan lebih tinggi disirikan di belakang had tersebut. Disahkan kepada >= 1, dihadkan kepada <= 32. |
DISABLE_CONTEXT_WINDOW_CHECKS |
false |
open-sse/handlers/chatCore.ts |
Pilihan ikut serta berbahaya yang melangkau pemeriksaan tempatan tetingkap konteks/token input maksimum OmniRoute untuk permintaan terus kepada satu model. Penyedia huluan masih menguatkuasakan had sebenar mereka; pemampatan gesaan dan had token output model itu sendiri kekal aktif. Keutamaan berkesan ialah penggantian DB Feature Flags > pemboleh ubah persekitaran > lalai; mula semula tidak diperlukan. |
OMNIROUTE_DISABLE_CONVERSATION_TRACKING |
(tidak ditetapkan) | open-sse/services/conversationTracker.ts |
Tetapkan kepada 1 untuk menghentikan pengumpulan sejarah perbualan. resolveConversationId() mengembalikan hasil yang tidak dijejaki sebelum ia membaca SQLite atau menghuraikan sejarah mesej, dan ID sesi yang dibekalkan oleh klien turut diliputi. Pengendalian sesi penghalaan tidak berubah dan rekod sedia ada tidak dipadamkan. Untuk penggunaan yang tidak menggunakan paparan perbualan papan pemuka dan mahu menghentikan jadual giliran daripada terus bertambah. |
7. URL & Penyegerakan Awan
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
BASE_URL |
http://localhost:20128 |
src/lib/cloudSync.ts |
URL sebelah pelayan untuk tugas penyegerakan dalaman memanggil /api/sync/cloud. Kekalkan ini sebagai URL gelung balik/bekas walaupun aplikasi diproksikan secara awam. |
CLOUD_URL |
(kosong) | src/lib/cloudSync.ts |
URL titik akhir geganti awan (ciri premium). |
CLOUD_SYNC_TIMEOUT_MS |
12000 |
src/lib/cloudSync.ts |
Had masa HTTP untuk permintaan penyegerakan awan. |
OMNIROUTE_BUILD_PROFILE |
full |
Konfigurasi binaan Webpack | Profil masa binaan (tetapkan kepada minimal untuk mengecualikan modul istimewa secara fizikal daripada berkas). |
OMNIROUTE_STANDALONE_DIR |
output kendiri .build/ | scripts/build/colocate-standalone.mjs |
Penggantian masa binaan untuk direktori output kendiri yang digunakan oleh langkah penempatan bersama selepas binaan. Bukan tetapan masa jalan. |
OMNIROUTE_CLOUD_SYNC_SECRET |
(kosong) | src/lib/cloudSync.ts |
Rahsia dikongsi yang digunakan untuk mengesahkan tandatangan HMAC-SHA256 bagi respons Penyegerakan Awan. |
OMNIROUTE_CLOUD_SYNC_SECRETS |
false |
src/lib/cloudSync.ts |
Tetapkan kepada true untuk membenarkan titik akhir Penyegerakan Awan menulis ganti kelayakan setempat. Lalai ialah false. |
OMNIROUTE_CLOUD_SYNC_ENFORCE_SIGNATURE |
false |
src/lib/cloudSync.ts |
Tetapkan kepada true untuk menolak respons Penyegerakan Awan tanpa tandatangan apabila tiada rahsia setempat dikonfigurasikan (#13679). Tandatangan yang tersedia sentiasa disahkan — dan sentiasa ditolak apabila OMNIROUTE_CLOUD_SYNC_SECRET tidak ditetapkan — tanpa mengira bendera ini. Lalai berubah kepada dikuatkuasakan dalam v3.9. |
OMNIROUTE_ZED_IMPORT_LEGACY_ONE_STEP |
false |
src/app/api/providers/zed/import/route.ts |
Tetapkan kepada true untuk kembali kepada tingkah laku satu langkah "import segala-galanya" v3.8.5 tanpa pengesahan pengguna. |
NEXT_PUBLIC_BASE_URL |
http://localhost:20128 |
OAuth, Papan Pemuka, penyegerakan | URL menghadap awam untuk redirect_uri OAuth, pautan Papan Pemuka dan URL awam yang dijana. Tetapkan ini kepada URL awam yang stabil apabila panggil balik OAuth atau pautan pelayar yang dijana perlu menggunakan hos proksi songsang berkanun. |
NEXT_PUBLIC_CLOUD_URL |
(kosong) | Sebelah klien | Cerminan sebelah klien bagi CLOUD_URL. |
NEXT_PUBLIC_APP_URL |
(tidak ditetapkan) | src/shared/services/cloudSyncScheduler.ts |
Sandaran legasi untuk NEXT_PUBLIC_BASE_URL. |
OMNIROUTE_PUBLIC_BASE_URL |
(tidak ditetapkan) | Penyelesai asal awam, URL imej | Asal OmniRoute yang menghadap pelayar dengan keutamaan tertinggi, digunakan untuk penjanaan URL awam dan pengesahan asal pelayar bukan papan pemuka. Tetapkan ini apabila OpenWebUI atau geganti lain mencapai OmniRoute melalui URL dalaman tetapi pelayar pengguna perlu mendapatkan media yang dijana daripada LAN, terowong atau asal awam. Jangan sertakan /v1. |
OMNIROUTE_PROVIDER_MANIFEST_URL |
(tidak ditetapkan) | open-sse/config/providerPluginManifestUrl.ts |
URL mutlak manifes pemalam penyedia yang diiklankan kepada klien sidecar. Apabila tidak ditetapkan, OmniRoute memperoleh /api/v1/provider-plugin-manifest daripada asal permintaan atau HOST/PORT. |
OMNIROUTE_PUBLIC_PROTOCOL |
http |
open-sse/config/providerPluginManifestUrl.ts |
Protokol yang digunakan apabila memperoleh URL manifes pemalam penyedia daripada HOST/PORT tanpa asal permintaan. Tetapkan kepada https di belakang proksi awam yang menamatkan TLS apabila OMNIROUTE_PROVIDER_MANIFEST_URL tidak ditetapkan secara eksplisit. |
OMNIROUTE_TRUST_PROXY |
(tidak ditetapkan) | src/server/origin/publicOrigin.ts |
Mod kepercayaan pilihan untuk pengepala asal awam yang dimajukan. Tidak ditetapkan = jangan percayai Forwarded / X-Forwarded-* untuk keputusan keselamatan. true / loopback mempercayai hos/protokol yang dimajukan hanya daripada proksi gelung balik bercap token. private / lan turut mempercayai rakan proksi LAN peribadi. Utamakan NEXT_PUBLIC_BASE_URL yang eksplisit dalam pengeluaran. |
KIE_CALLBACK_URL |
(tidak ditetapkan) | open-sse/utils/kieTask.ts |
URL panggil balik awam untuk tugas kie.ai tak segerak. Penggantian dengan keutamaan tertinggi sebelum OMNIROUTE_KIE_CALLBACK_URL dan OMNIROUTE_PUBLIC_URL. |
OMNIROUTE_KIE_CALLBACK_URL |
(tidak ditetapkan) | open-sse/utils/kieTask.ts |
Ejaan alternatif bagi KIE_CALLBACK_URL. Digunakan sebagai sandaran apabila pemboleh ubah utama tidak ditetapkan. |
OMNIROUTE_PUBLIC_URL |
(tidak ditetapkan) | open-sse/utils/kieTask.ts |
Asal awam yang digunakan untuk membentuk URL panggil balik tak segerak. Sandaran berkeutamaan terendah untuk panggil balik kie.ai; turut digunakan sebagai URL awam generik untuk geganti lain. |
OMNIROUTE_CROF_USAGE_URL |
https://crof.ai/usage_api/ |
open-sse/services/usage.ts |
Titik akhir carian kuota CrofAI yang digunakan oleh halaman Penggunaan. Gantikan untuk geganti / lekapan ujian. |
OMNIROUTE_OPENCODE_QUOTA_URL |
https://opencode.ai/zen/go/v1/usage |
open-sse/services/opencodeQuotaFetcher.ts |
Titik akhir penggunaan rasmi OpenCode Go yang disahkan dengan kunci API dan digunakan oleh halaman Penggunaan. Gantikan untuk geganti / lekapan ujian. |
OPENCODE_SYNTHESIZE_CLI_HEADERS |
true |
open-sse/executors/opencode.ts |
Sintesis pengepala identiti OpenCode CLI (User-Agent, x-opencode-client/project, UUID permintaan/sesi) pada permintaan huluan opencode-go/zen yang tidak dihantar oleh klien supaya Cloudflare pada trafik keluar VPS menerimanya (#6210/#5997). Didayakan secara lalai sejak #10571; nyahaktifkan dengan false/0/no/off. |
OPENCODE_USER_AGENT |
opencode |
open-sse/executors/opencode.ts |
User-Agent lalai yang digunakan apabila OPENCODE_SYNTHESIZE_CLI_HEADERS diaktifkan dan tiada penggantian <PROVIDER>_USER_AGENT bagi setiap penyedia ditetapkan. Hanya digunakan pada pelaksana opencode. |
OPENCODE_CLIENT |
desktop |
open-sse/executors/opencode.ts |
Nilai untuk pengepala x-opencode-client yang disintesis apabila OPENCODE_SYNTHESIZE_CLI_HEADERS diaktifkan. |
OPENCODE_PROJECT |
global |
open-sse/executors/opencode.ts |
Nilai untuk pengepala x-opencode-project yang disintesis apabila OPENCODE_SYNTHESIZE_CLI_HEADERS diaktifkan. |
OMNIROUTE_OLLAMA_CLOUD_USAGE_URL |
https://ollama.com/settings |
open-sse/services/usage.ts |
URL tetapan Ollama Cloud yang digunakan untuk mengikis data kuota. Tindih untuk geganti / lekapan ujian. |
OLLAMA_USAGE_COOKIE |
(tidak ditetapkan) | open-sse/services/usage.ts |
Kuki __Secure-session Ollama Cloud yang digunakan untuk mengikis data kuota daripada halaman tetapan. Sensitif; utamakan medan Papan Pemuka bagi setiap sambungan apabila berbilang akaun dikonfigurasikan. |
OLLAMA_CLOUD_USAGE_COOKIE |
(tidak ditetapkan) | open-sse/services/usage.ts |
Pemboleh ubah persekitaran alternatif bagi kuki __Secure-session Ollama Cloud. Sensitif; utamakan medan Papan Pemuka bagi setiap sambungan apabila berbilang akaun dikonfigurasikan. |
OMNIROUTE_OLLAMA_USAGE_COOKIE |
(tidak ditetapkan) | open-sse/services/usage.ts |
Pemboleh ubah persekitaran alternatif bagi kuki __Secure-session Ollama Cloud yang digunakan sebelum alias yang lebih pendek. Sensitif; utamakan medan Papan Pemuka bagi setiap sambungan apabila berbilang akaun dikonfigurasikan. |
OMNIROUTE_CODEWHISPERER_BASE_URL |
https://codewhisperer.us-east-1.amazonaws.com |
open-sse/services/usage.ts |
Titik akhir had penggunaan CodeWhisperer (AWS Kiro). Tindih untuk geganti / lekapan ujian. |
Important
Apabila melaksanakan penggunaan di belakang proksi songsang (nginx, Caddy), tetapkan
NEXT_PUBLIC_BASE_URLkepada URL awam stabil anda (cth.,https://omniroute.example.com) apabila panggil balik OAuth atau pautan awam yang dijana perlu menggunakan nama hos tersebut. Tanpa tetapan ini, panggil balik OAuth boleh gagal kerana redirect_uri tidak sepadan dan pautan awam yang dijana boleh menghala ke asalan bekas dalaman.Kekalkan
BASE_URLsebagai URL gelung balik/bekas dalaman untuk tugas pelayan-ke-pelayan. Jangan gunakanOriginpelayar atau nama hos awam untuk pengambilan kendiri dalaman yang membawa kelayakan.Penulisan papan pemuka yang disahkan tidak memerlukan URL asas awam statik: papan pemuka menghantar permintaan tidak selamat daripada asalan yang sama dengan token CSRF yang terikat pada sesi. OmniRoute masih memusatkan pengesahan asalan awam untuk penyepaduan pelayar bukan papan pemuka: pemboleh ubah persekitaran URL awam yang dinyatakan secara eksplisit dipercayai terlebih dahulu; pengepala mentah
Forwarded/X-Forwarded-*diabaikan melainkanOMNIROUTE_TRUST_PROXYdidayakan dan rakan proksi terdekat ditandakan dengan token sebagai dipercayai. Jangan gunakan tetapan CORS untuk membetulkan permintaan papan pemuka daripada asalan yang sama; CORS hanya untuk klien pelayar rentas asalan.
8. Proksi Keluar
Halakan panggilan penyedia LLM huluan melalui proksi HTTP atau SOCKS5 untuk kawalan trafik keluar, penghalaan geo, atau penyamaran IP.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
ENABLE_SOCKS5_PROXY |
true |
open-sse/executors |
Dayakan ejen proksi SOCKS5 untuk panggilan huluan. Nyahaktifkan dengan false. |
NEXT_PUBLIC_ENABLE_SOCKS5_PROXY |
true |
Sisi klien | Kesedaran sisi klien tentang ketersediaan SOCKS5. |
PROXY_SKIP_RECENTLY_FAILED |
false |
src/shared/utils/featureFlags.ts |
Bendera ciri yang perlu didayakan secara pilihan (lihat FEATURE_FLAGS.md; penggantian DB papan pemuka diutamakan). Kumpulan proksi dan penggiliran mengikut akaun berhenti menyediakan semula ahli yang baru sahaja gagal (prob TCP ditolak, atau 429 melaluinya) untuk tempoh yang berganda pada setiap kegagalan berulang, sehingga had maksimum. true (atau 1, yes) mendayakannya. |
HTTP_PROXY |
(tidak ditetapkan) | Standard Node.js | Proksi HTTP untuk panggilan huluan. |
HTTPS_PROXY |
(tidak ditetapkan) | Standard Node.js | Proksi HTTPS untuk panggilan huluan. |
ALL_PROXY |
(tidak ditetapkan) | Standard Node.js | Proksi universal (menyokong socks5://). |
OMNIROUTE_PROXY_ECHO_URL |
(tidak ditetapkan) | src/lib/proxyEchoTarget.ts |
Menetapkan sasaran gema-IP yang digunakan oleh prob trafik keluar proksi kepada satu URL. Jika tidak ditetapkan, prob mencuba api64.ipify.org kemudian api4.ipify.org supaya terowong IPv4 sahaja tidak dilaporkan sebagai tidak berfungsi (#9694). |
NO_PROXY |
(tidak ditetapkan) | Standard Node.js | Nama hos/IP dipisahkan koma untuk memintas proksi. |
OMNIROUTE_PROXY_DISPATCHER_CONNECTIONS |
32 |
open-sse/utils/proxyDispatcher.ts |
Bilangan maksimum soket serentak bagi setiap penghantar proksi HTTP/SOCKS yang dicache. Strim SSE berjangka panjang seperti Codex /v1/responses memerlukan lebih daripada satu sambungan apabila beberapa permintaan berkongsi proksi peringkat akaun yang sama. Nilai melebihi 256 dihadkan. |
SOCKS_HANDSHAKE_TIMEOUT_MS |
10000 |
open-sse/utils/socksConnectorWithFamily.ts |
Tamat masa jabat tangan (sambungan) SOCKS5 dalam ms. Tingkatkannya apabila satu hos get laluan kediaman menerima keserentakan tinggi (cth. 100 permintaan serentak) — jabat tangan sebenar boleh melebihi 10s apabila kumpulan tepu walaupun proksi boleh dicapai, yang jika tidak akan dipaparkan secara palsu sebagai [Proxy Fast-Fail] Proxy unreachable. Dihadkan pada 120000. |
PROXY_FAIL_OPEN |
false |
src/sse/handlers/chatHelpers.ts |
Apabila false (lalai), permintaan yang proksi ditetapkan kepadanya gagal diselesaikan akan ditolak (gagal-tertutup) dan bukannya kembali kepada sambungan langsung — ini menghalang kebocoran IP sebenar. Tetapkan true untuk memulihkan pilihan kembali DIRECT legasi. |
ENABLE_TLS_FINGERPRINT |
false |
open-sse/executors |
Samarkan cap jari TLS menggunakan wreq-js (meniru Chrome 124). Mengatasi sekatan JA3/JA4. |
TLS_FINGERPRINT_PROVIDERS |
(tidak ditetapkan) | open-sse/utils/proxyFetch.ts |
Senarai dibenarkan penyedia yang dipisahkan koma untuk penghalaan TLS berproksi baharu (open-sse/utils/proxyFetch.ts). TLS langsung mengekalkan tingkah laku legasinya apabila tidak ditetapkan; hanya penyedia ini dihalakan melalui jambatan cap jari Chrome-124. |
OMNIROUTE_TURNSTILE_IGNORE_TLS_ERRORS |
false |
open-sse/services/claudeTurnstileSolver.ts |
Benarkan konteks pelayar Playwright Claude Turnstile mengabaikan ralat sijil HTTPS. |
Senario
| Senario | Konfigurasi |
|---|---|
| SOCKS5 melalui terowong SSH | ALL_PROXY=socks5://127.0.0.1:7890, ENABLE_SOCKS5_PROXY=true |
| Proksi HTTP korporat | HTTP_PROXY=http://proxy.corp.com:3128, HTTPS_PROXY=http://proxy.corp.com:3128, NO_PROXY=localhost,internal.corp.com |
| Anti-cap jari | ENABLE_TLS_FINGERPRINT=true — memerlukan wreq-js (disertakan) |
| Egres terkawal / tiada akses langsung | Biarkan PROXY_FAIL_OPEN=false (lalai). Permintaan gagal sepenuhnya apabila proksi tidak tersedia dan bukannya terbocor melalui sambungan langsung. |
| Legasi / pembangunan — benarkan sandaran langsung | PROXY_FAIL_OPEN=true. Memulihkan tingkah laku sebelum pengerasan: sambungan langsung digunakan apabila resolusi proksi gagal. |
Nota (pintasan pengesahan NVIDIA — #3226): Titik akhir pengesahan kunci API NVIDIA tergantung apabila dihalakan melalui pengambilan global yang ditampal proksi/TLS (penghantar undici → 504).
src/lib/providers/validation.ts::directHttpsRequest()sengaja memintas tampalan proksi untuk satu panggilan pengesahan tersebut menggunakansafeOutboundFetch({ bypassProxyPatch: true }). Ini ialah pengecualian berskop yang didokumenkan — ia tidak menjejaskan egres sembang/penggunaan. Pintasan ini dikunci kepada skop olehtests/unit/proxy-bypass-scope-guard-3226.test.ts.
9. Integrasi Alat CLI
Mengawal cara OmniRoute menemui dan melancarkan sidecar CLI (Claude Code, Codex, dll.).
| Pemboleh ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
CLI_MODE |
auto |
src/shared/services/cliRuntime.ts |
auto = cari dalam PATH sistem; manual = gunakan laluan yang dinyatakan secara eksplisit sahaja. |
CLI_EXTRA_PATHS |
(tidak ditetapkan) | src/shared/services/cliRuntime.ts |
Entri PATH tambahan untuk penemuan perduaan CLI (dipisahkan dengan titik bertindih). |
CLI_CONFIG_HOME |
(tidak ditetapkan) | src/shared/services/cliRuntime.ts |
Gantikan direktori utama untuk membaca konfigurasi CLI (~/.claude, ~/.codex). Mestilah mutlak dan berada dalam direktori utama proses — atau, dalam bekas, laluan yang dipasang secara bind (begitulah /host-home berfungsi). Apa-apa yang lain akan kembali menggunakan direktori utama. |
CLI_ALLOW_CONFIG_WRITES |
true |
src/shared/services/cliRuntime.ts |
Benarkan OmniRoute menulis fail konfigurasi CLI (penyegaran token, data sesi). Tetapkan kepada false untuk menyebabkan setiap penulisan konfigurasi CLI gagal dengan ralat "penulisan dinyahdayakan" yang jelas. |
CLI_CLAUDE_BIN |
claude |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI Claude. |
CLI_CODEX_BIN |
codex |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI Codex. |
CLI_DROID_BIN |
droid |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI Droid. |
CLI_OPENCLAW_BIN |
openclaw |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI OpenClaw. |
CLI_CURSOR_BIN |
agent, kemudian cursor |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan ejen Cursor. Tanpanya, pengesanan mencuba agent terlebih dahulu dan kembali menggunakan cursor jika gagal. |
CLI_CLINE_BIN |
cline |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI Cline. |
CLI_5DIVE_BIN |
5dive |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI 5dive. |
CLI_5DIVE_STATE_DIR |
/var/lib/5dive |
src/shared/services/cliRuntime.ts |
Direktori keadaan sistem 5dive (profil pengesahan milik root); mencerminkan nilai lalai STATE_DIR 5dive sendiri. |
CLI_CONTINUE_BIN |
cn |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI Continue. |
CLI_QODER_BIN |
qodercli |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI Qoder. |
CLI_QWEN_BIN |
qwen |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI Qwen Code. |
CLI_AIDER_BIN |
aider |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI Aider. |
CLI_GOOSE_BIN |
goose |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI Goose. |
CLI_GEMINI_BIN |
gemini |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI Google Gemini — untuk pengesanan/pemeriksaan kesihatan pada bahagian pelayan sahaja; omniroute run gemini menyelesaikan perduaan gemini daripada PATH sistem. |
CLI_KILO_BIN |
kilocode |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI Kilo Code. |
CLI_OPENCODE_BIN |
opencode |
src/shared/services/cliRuntime.ts |
Laluan tersuai kepada perduaan CLI OpenCode. |
CLI_HERMES_BIN |
hermes |
src/shared/services/cliRuntime.ts |
Laluan tersuai ke binari Hermes. Dikongsi oleh kedua-dua entri katalog (hermes dan hermes-agent). |
CLI_FORGE_BIN |
forge |
src/shared/services/cliRuntime.ts |
Laluan tersuai ke binari CLI ForgeCode. |
CLI_JCODE_BIN |
jcode |
src/shared/services/cliRuntime.ts |
Laluan tersuai ke binari CLI jcode. |
CLI_DEEPSEEK_TUI_BIN |
deepseek-tui |
src/shared/services/cliRuntime.ts |
Laluan tersuai ke binari TUI DeepSeek. |
CLI_CODEWHALE_BIN |
codewhale |
src/shared/services/cliRuntime.ts |
Laluan tersuai ke binari CLI CodeWhale. |
CLI_SMELT_BIN |
smelt |
src/shared/services/cliRuntime.ts |
Laluan tersuai ke binari CLI Smelt. |
CLI_PI_BIN |
pi |
src/shared/services/cliRuntime.ts |
Laluan tersuai ke binari Pi (pi-coding-agent). |
CLI_CRUSH_BIN |
crush |
src/shared/services/cliRuntime.ts |
Laluan tersuai ke binari CLI Crush. |
CLI_OMP_BIN |
omp |
src/shared/services/cliRuntime.ts |
Laluan tersuai ke binari ejen Oh My Pi (omp). |
CLI_LETTA_BIN |
letta |
src/shared/services/cliRuntime.ts |
Laluan tersuai ke binari CLI Letta. |
CLI_PRIME_AGENT_BIN |
prime-agent |
src/shared/services/cliRuntime.ts |
Laluan tersuai ke binari Prime Agent (Prime Intellect). |
CLI_WINDSURF_BIN |
(tiada) | src/shared/services/cliRuntime.ts |
Laluan tersuai ke binari Windsurf. Windsurf disertakan tanpa perintah lalai — pengesanan binari kekal dinyahdayakan sehingga ini ditetapkan. |
CLI_DEVIN_BIN |
devin |
open-sse/executors/devin-cli.ts |
Laluan tersuai ke binari CLI Devin (v3.8.0). Digunakan oleh pelaksana Windsurf/Devin. |
DEVIN_DESKTOP_VERSION |
3.6.27 |
open-sse/executors/devin-desktop.ts |
ide_version Devin Desktop. Nilai penggantian mesti menggunakan format x.y.z; nilai tidak sah akan kembali kepada nilai lalai yang disahkan. |
DEVIN_DESKTOP_EXTENSION_VERSION |
1.48.2 |
open-sse/executors/devin-desktop.ts |
extension_version Codeium/pelayan bahasa yang digabungkan, berbeza daripada ide_version Desktop. Nilai penggantian mesti menggunakan x.y.z; nilai tidak sah akan menggunakan nilai lalai yang digabungkan. |
CLI_DEVIN_AGENTIC_BIN |
devin |
open-sse/executors/devin-cli-agentic.ts |
Penggantian CLI Devin khusus untuk titian agentik. Pelaksana hanya menerima ACP stdio setempat sebagai huluan. |
DEVIN_AGENTIC_HOME |
(diperlukan) | open-sse/executors/devin-cli-agentic.ts |
Direktori utama terpencil mutlak untuk subproses Devin agentik; laluan titian yang diterima ialah /home/bridge dan laluan .sandbox setempat tugas (pada Windows, C:\...\.sandbox\...). |
DEVIN_AGENTIC_ACP_TIMEOUT_MS |
120000 |
open-sse/executors/devin-cli-agentic.ts |
Tempoh maksimum bagi satu pusingan ACP Devin sebelum titian menamatkan proses anak dan mengembalikan tamat masa secara eksplisit. |
DEVIN_BRIDGE_MODEL |
devin-cli-agentic/swe-1-7 |
docker/devin-bridge/compose.yml |
Alias model Claude Code utama untuk titian terpencil. Abah-abah langsung menggantikan contoh tersebut dengan model yang dikembalikan oleh akaun Devin semasa. |
DEVIN_BRIDGE_SONNET_MODEL |
DEVIN_BRIDGE_MODEL |
docker/devin-bridge/compose.yml |
Alias titian terpencil yang digunakan apabila Claude Code meminta lalai Sonnetnya. |
DEVIN_BRIDGE_OPUS_MODEL |
DEVIN_BRIDGE_MODEL |
docker/devin-bridge/compose.yml |
Alias titian terpencil yang digunakan apabila Claude Code meminta lalai Opusnya. |
DEVIN_BRIDGE_HAIKU_MODEL |
DEVIN_BRIDGE_MODEL |
docker/devin-bridge/compose.yml |
Alias titian terpencil yang digunakan apabila Claude Code meminta lalai Haikunya. |
DEVIN_BRIDGE_SUBAGENT_MODEL |
DEVIN_BRIDGE_MODEL |
docker/devin-bridge/compose.yml |
Alias titian terpencil yang digunakan untuk subejen Claude Code. |
DEVIN_SEAT_API_URL |
https://server.codeium.com |
open-sse/services/usage/devinCli.ts |
Penggantian pilihan untuk API pengurusan tempat Codeium yang digunakan oleh kuota Devin CLI (GetUserStatus). |
AUGGIE_BIN |
auggie |
open-sse/executors/auggie.ts |
Penggantian laluan mutlak untuk perduaan CLI Augment (Auggie) yang digunakan oleh penyedia auggie setempat. Jika tidak tersedia, menggunakan CLI_AUGGIE_BIN, kemudian carian PATH. |
CLI_AUGGIE_BIN |
auggie |
open-sse/executors/auggie.ts |
Penggantian alias untuk laluan perduaan CLI Augment (Auggie) (disemak selepas AUGGIE_BIN). |
ZCODE_BIN |
zcode |
open-sse/executors/zcode.ts |
Perduaan yang digunakan untuk klien stdio penyedia zcode setempat. Jika tidak tersedia, menggunakan zcode dalam PATH. |
ZCODE_ARGS |
— | open-sse/executors/zcode.ts |
Tatasusunan JSON (≤16 rentetan) bagi argumen tambahan yang dihantar kepada perduaan zcode apabila dilancarkan melalui cliTools. |
ZCODE_CWD |
process.cwd() |
open-sse/executors/zcode.ts |
Direktori kerja untuk subproses pelayan aplikasi ZCode. |
ZCODE_PROVIDER_ID |
builtin:zai-coding-plan |
open-sse/executors/zcode.ts |
Penggantian untuk ID penyedia yang dihantar kepada pelayan aplikasi. |
ZCODE_SERVER_RUNTIME_ROOT |
~/.zcode/server |
open-sse/executors/zcode.ts |
Akar masa jalan pelayan aplikasi ZCode (tempat node dan zcode-server.cjs yang disertakan berada). |
ZCODE_SERVER_NODE |
<runtimeRoot>/node |
open-sse/executors/zcode.ts |
Boleh laku Node yang digunakan untuk mengehoskan pelayan aplikasi ZCode. |
ZCODE_SERVER_ENTRY |
<runtimeRoot>/zcode-server.cjs |
open-sse/executors/zcode.ts |
Skrip entri pelayan aplikasi yang digunakan untuk mengehoskan pelayan ZCode. |
ZCODE_STARTUP_TIMEOUT_MS |
10000 |
open-sse/executors/zcode.ts |
Had masa permulaan (ms) sebelum pelancaran pelayan aplikasi ZCode dianggap gagal. |
ZCODE_RPC_TIMEOUT_MS |
30000 |
open-sse/executors/zcode.ts |
Had masa RPC bagi setiap permintaan (ms) untuk panggilan pelayan aplikasi ZCode. |
ZCODE_TURN_TIMEOUT_MS |
120000 |
open-sse/executors/zcode.ts |
Tempoh maksimum (ms) bagi satu giliran ZCode sebelum penyelia menamatkannya kerana melebihi had masa. |
ZCODE_POLL_INTERVAL_MS |
250 |
open-sse/executors/zcode.ts |
Selang tinjauan (ms) untuk penyelesaian giliran ZCode. |
HERMES_HOME |
~/.hermes |
src/lib/cli-helper/config-generator/hermesHome.ts |
Direktori utama Hermes Agent tempat OmniRoute membaca/menulis konfigurasi Hermes CLI. Sepadan dengan pemboleh ubah persekitaran yang ditetapkan oleh pemasang Hermes PowerShell pada Windows (%LOCALAPPDATA%\hermes). |
Penyegerakan Automatik Profil CLI
Bendera ciri ini adalah pilihan dan dilumpuhkan secara lalai. Bendera ini juga boleh ditogol daripada papan pemuka CLI Code.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_AUTO_SYNC_CODEX_PROFILES |
false |
src/shared/constants/featureFlagDefinitions.ts |
Selepas penyegerakan model penyedia, menulis semula fail profil ~/.codex/*.config.toml secara automatik daripada katalog semasa. Memerlukan CLI_ALLOW_CONFIG_WRITES; tidak pernah mengubah konfigurasi Codex aktif/lalai, pengesahan, tetapan Codex-lb atau pilihan penyedia. |
OMNIROUTE_AUTO_SYNC_CLAUDE_PROFILES |
false |
src/shared/constants/featureFlagDefinitions.ts |
Selepas penyegerakan model penyedia, menulis semula fail profil Claude Code ~/.claude/profiles/<name>/settings.json secara automatik daripada katalog semasa. Memerlukan CLI_ALLOW_CONFIG_WRITES; tidak pernah mengubah konfigurasi Claude aktif/lalai, pengesahan atau pilihan penyedia. |
Contoh Docker
# Lekapkan perduaan hos ke dalam bekas dan beritahu OmniRoute lokasi perduaan tersebut:
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 hanya berkuat kuasa apabila laluan tersebut benar-benar dipasang ikat dari
hos — pasangkannya bersama pelekap seperti ~/.codex:/host-home/.codex:rw (lihat profil
host dalam docker-compose.yml). Laluan yang bukan berada di dalam direktori utama
pengguna kontena mahupun merupakan pelekap ikat akan diabaikan, kerana penulisan ke situ akan
dibuang apabila kontena dicipta semula.
Imej berjalan sebagai USER node, jadi /root yang tidak dilekapkan bukan penggantian
yang sah.
| Pemboleh ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_CONTAINER |
(automatik) | src/shared/utils/containerEnv.ts |
Paksa pengesanan kontena dihidupkan (1/true) atau dimatikan (0/false). Hanya diperlukan pada masa jalan yang tidak dikesan oleh pengesanan automatik. |
OMNIROUTE_ALLOW_CONTAINER_CONFIG_WRITE |
false |
src/shared/services/cliRuntime.ts |
Benarkan penulisan konfigurasi alat CLI ke laluan kontena yang tidak dilekapkan. Pilihan CLI yang setara ialah --allow-container-write. |
Pembantu Binari CLI (omniroute)
Pemboleh ubah ini melaraskan tingkah laku binari CLI omniroute itu sendiri (bukan pengesanan
sidecar di atas).
| Pemboleh ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_LANG |
(sistem) | bin/cli/i18n.mjs |
Paksa bahasa output CLI. Tempatan BCP-47 (cth. en, pt-BR). Mengatasi pemboleh ubah persekitaran tempatan sistem (LC_ALL, LC_MESSAGES). |
OMNIROUTE_SHOW_LOG |
(tidak ditetapkan) | bin/cli/runtime/processSupervisor.mjs |
Tetapkan kepada 1 untuk memajukan stdout/stderr pelayan ke terminal dalam mod diselia. Setara dengan bendera --log pada omniroute serve. |
OMNIROUTE_CLI_TOKEN |
(tidak ditetapkan) | bin/cli/api.mjs |
Token pengesahan mesin yang disuntik sebagai pengepala x-omniroute-cli-token. Dijana secara automatik dalam tugasan 8.12. |
OMNIROUTE_HTTP_TIMEOUT_MS |
30000 |
bin/cli/api.mjs |
Tamat masa HTTP bagi setiap percubaan (ms) untuk permintaan CLI → pelayan. |
OMNIROUTE_READY_TIMEOUT_MS |
60000 |
bin/cli/utils/pid.mjs |
Tempoh maksimum (ms) CLI menunggu titik akhir kesihatan pelayan sebelum memaparkan amaran tamat masa. Berguna untuk permulaan sejuk yang perlahan (cth. Windows). Juga boleh ditetapkan melalui --ready-timeout. |
OMNIROUTE_VERBOSE |
0 |
bin/cli/api.mjs |
Tetapkan kepada 1 untuk memaparkan diagnostik percubaan semula/undur masa ke stderr semasa perintah CLI. |
OMNIROUTE_PLUGIN_PATH |
(tidak ditetapkan) | bin/cli/plugins.mjs |
Direktori tersuai untuk penemuan pemalam CLI (pakej omniroute-cmd-*). Lalai kepada ~/.omniroute/plugins/ apabila tidak ditetapkan. CLI sahaja — ia tidak pernah sampai kepada pengimbas pemalam sisi pelayan, yang diarahkan oleh OMNIROUTE_PLUGINS_DIR (bahagian 2). |
10. Ejen Dalaman & Integrasi MCP
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_BASE_URL |
pengesanan automatik | open-sse/mcp-server/server.ts |
URL eksplisit untuk alat MCP/A2A mencapai OmniRoute. Mengatasi pengesanan automatik localhost. |
OMNIROUTE_API_KEY |
(tidak ditetapkan) | Modul MCP/A2A | Kunci API untuk panggilan alat MCP dalaman dan kemahiran A2A. |
OMNIROUTE_API_KEY_ID |
(tidak ditetapkan) | open-sse/mcp-server/audit.ts |
ID kunci untuk atribusi log audit MCP. |
ROUTER_API_KEY |
(tidak ditetapkan) | Legasi | Alias legasi untuk OMNIROUTE_API_KEY. |
OMNIROUTE_A2A_HISTORY_RETENTION_DAYS |
30 |
src/lib/a2a/taskManager.ts |
Bilangan hari sejarah tugas A2A disimpan dalam pangkalan data setempat sebelum pembersihan harian memadamkan sesuatu baris. Jika tidak ditetapkan, bukan angka, atau <= 0, nilai kembali kepada 30. |
OMNIROUTE_A2A_MEMORY_HITS |
1 |
src/lib/a2a/taskExecution.ts |
Suis henti untuk ciri kebolehcerapan capaian memori A2A. Tetapkan kepada 0 untuk melangkau sepenuhnya carian ingatan semula bagi sesuatu tugas; sebarang nilai lain (termasuk tidak ditetapkan) mengekalkannya didayakan. |
OMNIROUTE_ISSUE_AGENT_ENABLED |
false |
src/app/api/issue-agent/runs/route.ts |
Mendayakan titik akhir triage direkodkan Issue Agent luar talian/setempat. Biarkan dinyahdayakan melainkan anda menjalankan aliran kerja triage direkodkan setempat secara eksplisit. |
OMNIROUTE_ISSUE_AGENT_TIMEOUT_MS |
(tidak ditetapkan) | src/lib/issueAgent/execution.ts |
Tamat masa (ms) untuk satu pelaksanaan triage direkodkan Issue Agent. Dihadkan kepada maksimum dalaman; kembali kepada nilai lalai terbina dalam apabila tidak ditetapkan atau tidak sah. |
OMNIROUTE_CONTEXT |
(konteks aktif) | bin/cli/program.mjs, bin/cli/api.mjs |
Konteks/profil mod jauh CLI untuk perintah omniroute; mengatasi konteks aktif dalam stor konteks setempat. Bersamaan dengan --context <name>. |
OMNIROUTE_CONTEXT_KEYCHAIN_DISABLED |
0 |
bin/cli/contexts.mjs |
Nyahdayakan bahagian belakang rantai kunci OS keytar pilihan untuk kelayakan konteks CLI. Apabila didayakan, kelayakan kekal dalam mod config.json 0600 dan CLI mengeluarkan amaran penggunaan sandaran sekali sahaja; bertujuan untuk operasi tanpa paparan/kontena yang disengajakan. |
OMNIROUTE_MCP_ENFORCE_SCOPES |
true |
open-sse/mcp-server/server.ts |
Menguatkuasakan kawalan akses berasaskan skop pada panggilan alat MCP. |
OMNIROUTE_MCP_SCOPES |
(semua) | open-sse/mcp-server/server.ts |
Skop dipisahkan koma: admin, combos, health, models, routing, budget, metrics, pricing, memory, skills. |
OMNIROUTE_MCP_COMPRESS_DESCRIPTIONS |
false |
open-sse/mcp-server/descriptionCompressor.ts |
Mampatkan penerangan alat MCP sebelum menyerialisasikan manifes. Nilai yang mendayakan: 1, true, on. |
OMNIROUTE_MCP_DESCRIPTION_COMPRESSION |
rtk |
open-sse/mcp-server/descriptionCompressor.ts |
Algoritma/profil pemampatan. Nilai yang menyahdayakan: 0, false, off. |
OMNIROUTE_MCP_FETCH_TIMEOUT_MS |
10000 |
open-sse/mcp-server/fetchTimeout.ts |
Belanjawan pembatalan (ms) untuk bacaan pengurusan dalaman pelayan MCP (kesihatan, daya tahan, gabungan, kuota, penggunaan). |
OMNIROUTE_MCP_UPSTREAM_TIMEOUT_MS |
60000 |
open-sse/mcp-server/fetchTimeout.ts |
Had masa henti (ms) untuk lompatan MCP yang menunggu penyedia (route_request, web_search, web_fetch). |
OMNIROUTE_CORPUS_CACHE_SIZE |
5 |
src/lib/localCorpus/configured.ts |
Bilangan maksimum tika indeks korpus tempatan yang dicache dalam memori (LRU, satu bagi setiap direktori akar yang diindeks). Dihadkan kepada minimum 1. |
MODEL_SYNC_INTERVAL_HOURS |
24 |
src/shared/services/modelSyncScheduler.ts |
Selang penyegerakan katalog model dalam jam. |
PROVIDER_LIMITS_SYNC_INTERVAL_MINUTES |
70 |
src/lib/usage/providerLimits.ts |
Selang tinjauan had kadar dan kuota penyedia. |
PROVIDER_LIMITS_SYNC_SPACING_MS |
1500 |
src/lib/usage/providerLimits.ts |
Jeda (ms) antara pengambilan kuota OAuth berturut-turut dalam penyegerakan pukal; sambungan OAuth diambil satu demi satu untuk mengelakkan lonjakan permintaan ke huluan. 0 memilih keluar (serentak). |
OMNIROUTE_QUOTA_FETCH_MIN_INTERVAL_MS |
250 |
open-sse/services/quotaFetchThrottle.ts |
Selang minimum (ms) antara pengambilan kuota huluan berturut-turut pada laluan prapenerbangan/pemantauan bagi setiap permintaan; menjarakkan panggilan rangkaian serentak supaya banyak akaun pada satu IP tidak menyebabkan lonjakan permintaan ke huluan. Disepadukan ke dalam pengambil kuota Codex (/wham/usage), DeepSeek, Bailian (kedua-dua tapak pengambilan), OpenCode dan Crof (#6009, #6911). Laluan penghantaran generik usage.ts::getUsageForProvider (github/glm/minimax/nanogpt/xai/dll.) belum diliputi — dijejak secara berasingan. Padanan cache tidak terjejas. 0 menyahdayakan; dihadkan kepada 0..5000. |
PROVIDER_LIMITS_POST_USAGE_REFRESH_DELAY_MS |
5000 |
src/lib/usage/providerLimits.ts |
Kelewatan (ms) sebelum menyegarkan had penyedia selepas peristiwa penggunaan sebenar, bagi memberi masa kepada API kuota huluan untuk merekodkan penggunaan. |
OMNIROUTE_LOGIN_BROWSER_PATH |
auto-detect | open-sse/services/adobeFireflyBrowserLogin.ts |
Laluan mutlak ke fail boleh laku Chrome atau Edge sistem yang digunakan untuk log masuk Adobe Firefly secara interaktif dan pembaharuan luar skrin. |
ADOBE_FIREFLY_BROWSER_REFRESH |
enabled | open-sse/services/adobeFireflySession.ts |
Memastikan keadaan IMS dan risiko pelayar kekal terkini melalui sesi Chrome CDP mengikut skop akaun. Tetapkan kepada 0 untuk menyahdayakan pembaharuan pelayar. |
ADOBE_FIREFLY_SESSION_DISK |
enabled | open-sse/services/adobeFireflySession.ts |
Mengekalkan sesi Adobe yang telah dibaiki di bawah DATA_DIR merentasi mula semula proses. Tetapkan kepada 0 untuk menyimpan sesi dalam memori sahaja. |
ADOBE_FIREFLY_MIN_SUBMIT_GAP_MS |
12000 |
open-sse/services/adobeFireflySession.ts |
Jarak minimum dalam milisaat antara penyerahan penjanaan Adobe Firefly; 0 menyahdayakan penjarakan. |
ADOBE_FIREFLY_BATCH_EXTRA_GAP_MS |
15000 |
open-sse/services/adobeFireflySession.ts |
Tempoh senyap tambahan dalam milisaat selepas setiap penyerahan Adobe ketiga yang berjaya. |
ADOBE_FIREFLY_SUBMIT_BASE_DELAY_MS |
8000 |
open-sse/services/adobeFireflyClient.ts |
Tempoh undur asas dalam milisaat selepas respons sementara Adobe 408; digabungkan dengan penjarakan penyerahan merentasi paling banyak lima percubaan. |
OMNIROUTE_DISABLE_BACKGROUND_SERVICES |
false |
src/instrumentation-node.ts |
Nyahdayakan semua perkhidmatan latar belakang (penyegerakan, penetapan harga, penyegaran model). Berguna untuk CI/ujian. |
OMNIROUTE_ENABLE_RUNTIME_BACKGROUND_TASKS |
(tidak ditetapkan) | src/lib/config/runtimeSettings.ts |
Paksa tugas latar belakang diaktifkan apabila pengesanan ujian automatik berlaku. Tetapkan 1 untuk mengatasi heuristik ujian. |
OMNIROUTE_BUDGET_RESET_JOB_INTERVAL_MS |
600000 |
src/lib/jobs/budgetResetJob.ts |
Kekerapan semakan tetapan semula belanjawan (ms). Had bawah 10000. |
OMNIROUTE_CONNECTION_RECOVERY_INTERVAL_MS |
60000 |
src/lib/quota/connectionRecovery.ts |
Kekerapan pemulihan proaktif tempoh bertenang sambungan (ms): mengesahkan semula sambungan yang nilai sementara rate_limited_until telah berlalu, di luar laluan kritikal permintaan. Minimum 5000. |
OMNIROUTE_DISABLE_CONNECTION_RECOVERY |
false |
src/lib/quota/connectionRecovery.ts |
Lumpuhkan penjadual pemulihan proaktif tempoh bertenang sambungan (pemulihan malas dalam getProviderCredentials masih terpakai). |
OMNIROUTE_REASONING_CACHE_CLEANUP_INTERVAL_MS |
1800000 |
src/lib/jobs/reasoningCacheCleanupJob.ts |
Kekerapan pembersihan cache penaakulan (ms). Minimum 60000. |
OMNIROUTE_REASONING_MIN_BUDGET |
tidak ditetapkan (dilumpuhkan) | open-sse/services/reasoningTokenBuffer.ts |
Had minimum ikut serta untuk belanjawan output model pemikiran: max_tokens pemanggil dalam [256, floor) dinaikkan kepada had minimum (dihadkan oleh had output model). Tidak ditetapkan = belanjawan klien tidak pernah diperbesar (#9507). |
OMNIROUTE_LOG_EXPORT_CRON |
0 * * * * |
src/lib/jobs/logExportJob.ts |
Ungkapan cron (UTC) untuk tugas eksport log panggilan yang mengosongkan setiap destinasi eksport log yang didayakan. |
OMNIROUTE_CONFIG_HOT_RELOAD_MS |
5000 |
src/lib/config/hotReload.ts |
Selang pengundian (ms) untuk muat semula panas konfigurasi. Nilai kurang daripada 1000 ditolak. |
OMNIROUTE_DISABLE_REDIS_AUTH_CACHE |
(didayakan) | src/lib/db/apiKeys.ts |
Tetapkan kepada 1 untuk memintas cache pengesahan kunci API berasaskan Redis (memaksa bacaan DB). |
OMNIROUTE_RTK_TRUST_PROJECT_FILTERS |
0 |
open-sse/services/compression/engines/rtk/filterLoader.ts |
Percayai peraturan penapis projek RTK yang diurus pengguna tanpa semakan tandatangan yang ketat. |
OMNIROUTE_LITE_MAX_TOOL_LENGTH |
2000 |
open-sse/services/compression/lite.ts |
Had aksara untuk pemangkasan proaktif hasil alat Lite apabila lite.maxToolLength tidak ditetapkan. Julat 256–1000000. Tetapan papan pemuka mengatasi persekitaran ini. |
OMNI_COMPRESSION_WORKERS |
2 |
open-sse/services/compression/compressionWorkerPool.ts |
Bilangan maksimum pekerja RTK/Caveman segerak yang berjalan serentak; tugas berlebihan menunggu mengikut FIFO. |
OMNI_COMPRESSION_WORKER_TIMEOUT_MS |
120000 |
open-sse/services/compression/compressionWorkerPool.ts |
Tamat masa setiap tugas dalam milisaat. Pekerja yang tamat masa ditamatkan dan permintaan diteruskan tanpa perubahan apabila gagal. |
OMNI_COMPRESSION_WORKER_IDLE_MS |
60000 |
open-sse/services/compression/compressionWorkerPool.ts |
Jangka hayat melahu dalam milisaat sebelum pekerja pemampatan yang tidak digunakan ditamatkan. |
COMPRESSION_PIPELINE_BREAKER_ENABLED |
false |
open-sse/services/compression/pipelineEngineBreaker.ts |
Suis induk pemutus litar setiap enjin untuk saluran bertindan T02. Ikut serta (dimatikan secara lalai) — apabila dihidupkan, enjin yang berulang kali mencetuskan ralat merentas permintaan akan dilangkau (terus beroperasi apabila gagal) sepanjang tempoh bertenang; dimatikan = tingkah laku legasi yang seiras bait demi bait. |
COMPRESSION_PIPELINE_BREAKER_THRESHOLD |
3 |
open-sse/services/compression/pipelineEngineBreaker.ts |
Bilangan kegagalan berturut-turut merentas permintaan sebelum pemutus litar enjin dibuka. |
COMPRESSION_PIPELINE_BREAKER_COOLDOWN_MS |
30000 |
open-sse/services/compression/pipelineEngineBreaker.ts |
Tempoh dalam milisaat enjin yang pemutus litarnya terbuka terus dilangkau sebelum siasatan separa terbuka. |
COMPRESSION_CCR_RETRIEVAL_RAMP_FACTOR |
2 |
open-sse/services/compression/engines/ccr/index.ts |
Peningkatan maklum balas pengambilan T08/H8 CCR: setiap pengambilan terdahulu bagi blok yang disimpan menaikkan minChars efektifnya secara linear (kandungan yang kerap diambil dimampatkan dengan lebih sedikit; >=3 pengambilan = tidak pernah dimampatkan). 1 melumpuhkan peningkatan tersebut (langkauan binari pada ambang sahaja). |
COMPRESSION_CCR_DURABLE_STORE |
true |
open-sse/services/compression/engines/ccr/index.ts |
Storan blok tahan lama CCR (#9061). Menyokong storan dalam memori dengan SQLite supaya blok kekal tersedia selepas penyingkiran LRU, tamat tempoh TTL, mula semula, atau pengambilan yang tiba pada tika lain. Tetapkan kepada false untuk menyimpan blok dalam memori sahaja. Blok melebihi 512KB dan masa jalan awan kekal dalam memori sahaja tanpa mengira tetapan ini. |
COMPRESSION_PREFIX_FREEZE_ENABLED |
false |
open-sse/services/compression/prefixFreeze.ts |
Suis utama pembekuan awalan berdasarkan penggunaan yang diperhatikan bagi T08/H5. Ikut serta (dimatikan secara lalai) — apabila dihidupkan, gesaan sistem yang diperhatikan >= ambang akan dianggap sebagai awalan stabil yang boleh dicache dan dikekalkan daripada pemampatan walaupun bagi penyedia yang tidak dikesan oleh heuristik cache statik (pembekuan hanya mengekalkan, tidak pernah mengubah). |
COMPRESSION_PREFIX_FREEZE_THRESHOLD |
3 |
open-sse/services/compression/prefixFreeze.ts |
Bilangan pemerhatian terhadap gesaan sistem sebelum ia dianggap sebagai awalan stabil yang dibekukan. |
OMNIROUTE_BOOTSTRAPPED |
false |
src/app/(dashboard)/dashboard/page.tsx |
Ditetapkan kepada true oleh skrip bootstrap selepas persediaan awal. Mengawal keterlihatan bestari persediaan. |
OMNIROUTE_ALLOW_BODY_PROJECT_OVERRIDE |
0 |
open-sse/executors/antigravity.ts |
Jalan keluar kecemasan: benarkan isi permintaan mengatasi medan projek Antigravity. |
ANTIGRAVITY_CREDITS |
off |
open-sse/services/antigravityCredits.ts |
Dasar kredit Google One AI: off tidak pernah menyuntik kredit, retry menyuntik sekali selepas ralat kuota 429 yang layak, dan always menyuntik pada permintaan pertama. |
ANTIGRAVITY_ALLOW_SIGNATURE_BYPASS |
0 |
open-sse/translator/request/openai-to-gemini.ts |
Benarkan penterjemah permintaan Antigravity melangkau pengesahan ketat tandatangan permintaan CLI apabila perkhidmatan huluan menolak tandatangan sebenar (mod nyahpepijat/CLI lapuk). Nilai bukan sifar mendayakan pintasan tersebut. |
AGY_TOKEN_FILE |
~/.gemini/antigravity-cli/antigravity-oauth-token |
src/app/api/providers/agy-auth/apply-local/route.ts |
Atasi laluan fail token CLI Antigravity (agy) untuk import log masuk setempat yang dikesan secara automatik. |
Jambatan CLI OAuth (Dalaman)
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_SERVER |
kesan automatik | src/lib/oauth/config/index.ts |
URL pelayan untuk jambatan pengesahan CLI↔OmniRoute. |
OMNIROUTE_TOKEN |
(tidak ditetapkan) | src/lib/oauth/config/index.ts |
Token pengesahan untuk jambatan CLI. |
OMNIROUTE_USER_ID |
cli |
src/lib/oauth/config/index.ts |
ID pengguna untuk sesi jambatan CLI. |
SERVER_URL |
(tidak ditetapkan) | src/lib/oauth/config/index.ts |
Alias legasi untuk OMNIROUTE_SERVER. |
CLI_TOKEN |
(tidak ditetapkan) | src/lib/oauth/config/index.ts |
Alias legasi untuk OMNIROUTE_TOKEN. |
CLI_USER_ID |
(tidak ditetapkan) | src/lib/oauth/config/index.ts |
Alias legasi untuk OMNIROUTE_USER_ID. |
11. Bukti Kelayakan Penyedia OAuth
Bukti kelayakan terbina dalam untuk pembangunan localhost. Untuk penggunaan jauh, daftarkan bukti kelayakan anda sendiri dalam konsol pembangun setiap penyedia.
| Pemboleh Ubah | Penyedia | Nota |
|---|---|---|
CLAUDE_OAUTH_CLIENT_ID |
Claude Code (Anthropic) | Klien awam — tiada rahsia diperlukan. |
CLAUDE_CODE_REDIRECT_URI |
Claude Code | Mengatasi URI ubah hala. Lalai: https://platform.claude.com/oauth/code/callback |
CODEX_OAUTH_CLIENT_ID |
Codex / OpenAI | Klien awam. |
GEMINI_OAUTH_CLIENT_ID |
Gemini (Google) | Memerlukan _SECRET yang sepadan. |
GEMINI_OAUTH_CLIENT_SECRET |
Gemini (Google) | — |
KIMI_CODING_OAUTH_CLIENT_ID |
Kimi Coding (Moonshot) | Klien awam. |
ANTIGRAVITY_OAUTH_CLIENT_ID |
Antigravity (Google) | Memerlukan _SECRET yang sepadan. |
ANTIGRAVITY_OAUTH_CLIENT_SECRET |
Antigravity (Google) | — |
GITHUB_OAUTH_CLIENT_ID |
GitHub Copilot | Klien awam. |
GHE_COPILOT_OAUTH_CLIENT_ID |
GHE Copilot | Pengatas pilihan untuk ID klien OAuth GitHub Enterprise Copilot. Kembali kepada nilai lalai awam GITHUB_OAUTH_CLIENT_ID jika tidak ditetapkan. |
WINDSURF_API_KEY |
Windsurf / Devin (v3.8) | Sandaran kunci API yang digunakan oleh open-sse/executors/devin-cli.ts apabila tiada bukti kelayakan bagi setiap sambungan tersedia. Pilihan. |
CLI_DEVIN_BIN |
Devin CLI (v3.8) | Laluan tersuai ke perduaan Devin CLI (devin). Diselesaikan oleh open-sse/executors/devin-cli.ts. |
GITLAB_DUO_OAUTH_CLIENT_ID |
GitLab Duo (v3.8) | ID klien OAuth untuk GitLab Duo. Daftarkan aplikasi di https://gitlab.com/-/profile/applications dengan URI ubah hala <NEXT_PUBLIC_BASE_URL>/callback dan skop api, read_user, openid, profile, email. Kembali kepada GITLAB_OAUTH_CLIENT_ID. |
GITLAB_DUO_OAUTH_CLIENT_SECRET |
GitLab Duo (v3.8) | Rahsia klien OAuth untuk GitLab Duo. Pilihan — aliran PKCE tidak memerlukan rahsia. Kembali kepada GITLAB_OAUTH_CLIENT_SECRET. |
GITLAB_DUO_BASE_URL |
GitLab Duo (v3.8) | Mengatasi URL asas GitLab (GitLab dihoskan sendiri). Lalai kepada https://gitlab.com. Kembali kepada GITLAB_BASE_URL. |
GITLAB_BASE_URL |
GitLab Duo (v3.8) | Sandaran legasi untuk GITLAB_DUO_BASE_URL. Digunakan apabila varian _DUO_ tidak ditetapkan. |
GITLAB_OAUTH_CLIENT_ID |
GitLab Duo (v3.8) | Sandaran legasi untuk GITLAB_DUO_OAUTH_CLIENT_ID yang digunakan oleh src/lib/oauth/constants/oauth.ts. |
GITLAB_OAUTH_CLIENT_SECRET |
GitLab Duo (v3.8) | Sandaran legasi untuk GITLAB_DUO_OAUTH_CLIENT_SECRET yang digunakan oleh src/lib/oauth/constants/oauth.ts. |
QODER_OAUTH_CLIENT_SECRET |
Qoder | — |
QODER_OAUTH_AUTHORIZE_URL |
Qoder | Tetapkan untuk mendayakan OAuth Qoder. |
QODER_OAUTH_TOKEN_URL |
Qoder | — |
QODER_OAUTH_USERINFO_URL |
Qoder | — |
QODER_OAUTH_CLIENT_ID |
Qoder | — |
QODER_PERSONAL_ACCESS_TOKEN |
Qoder | Sandaran kunci API langsung (memintas OAuth). |
QODER_CLI_WORKSPACE |
Qoder | ID ruang kerja untuk CLI Qoder. |
OMNIROUTE_QODER_WORKSPACE |
Qoder | Alias untuk QODER_CLI_WORKSPACE. |
QODER_CLI_CONFIG_DIR |
Qoder | Gantikan direktori konfigurasi CLI Qoder (sesi PAT terpencil, mengelakkan log masuk pelayar daripada ditulis ganti). |
BLACKBOX_WEB_VALIDATED_TOKEN |
Blackbox Web | Token tk bahagian hadapan untuk dihantar sebagai validated pada /api/chat. Diperlukan apabila Blackbox menguatkuasakan pemadanan token; jika tidak, OmniRoute menggunakan UUID rawak sebagai sandaran. Lihat isu #2252. |
VISION_BRIDGE_BASE_URL |
Pengadang Vision Bridge | URL asas yang serasi dengan OpenAI untuk panggilan vision-bridge bukan Anthropic. Lalai kepada env URL OpenAI legasi atau api.openai.com. Halakan kepada gelung kendiri /v1 OmniRoute atau mana-mana titik akhir yang serasi dengan OpenAI (Gemini OpenAI-compat, OpenRouter). Isu #2232. Apabila URL ialah /v1 OmniRoute sendiri, subpermintaan penerangan menghantar x-omniroute-admission-bypass: internal dan mengesahkan dengan kelayakan gelung kendiri yang telah ditentukan (sk_omniroute sentinel dalam mod setempat, atau OMNIROUTE_API_KEY / ROUTER_API_KEY — #1350) supaya penggunaan REQUIRE_API_KEY=true berfungsi. |
VISION_BRIDGE_API_KEY |
Pengadang Vision Bridge | Kunci API untuk URL di atas. Mengatasi pemboleh ubah env OpenAI / Google bagi setiap penyedia untuk panggilan vision-bridge bukan Anthropic. Model Anthropic mengekalkan laluan kunci Anthropic khususnya. Isu #2232. |
Warning
- Pergi ke Google Cloud Console → Credentials
- Cipta ID Klien OAuth 2.0 (jenis: "Aplikasi web")
- Tambahkan URL pelayan anda sebagai URI ubah hala yang dibenarkan
- Gantikan nilai kelayakan dalam
.env.
12. Penggantian User-Agent Penyedia
Gantikan pengepala User-Agent yang dihantar kepada setiap penyedia huluan. Nilai ini ditentukan secara dinamik semasa masa jalan oleh kelas asas pelaksana:
process.env[`${PROVIDER_ID}_USER_AGENT`]
Sumber:
open-sse/executors/base.ts→buildHeaders()
| Pemboleh Ubah | Nilai Lalai | Masa untuk Dikemas Kini | |
|---|---|---|---|
CLAUDE_USER_AGENT |
claude-cli/2.1.258 (external, cli) |
Apabila Anthropic mengeluarkan versi CLI baharu | |
CLAUDE_DISABLE_TOOL_NAME_CLOAK |
false |
executors/base.ts + executors/cliproxyapi.ts |
Tetapkan kepada 1/true untuk memajukan nama alat abah pihak ketiga secara verbatim kepada Anthropic pada kedua-dua laluan yang terikat dengan Anthropic (OAuth asli dan CLIProxyAPI). Secara lalai, pelaksana secara deterministik memberikan alias kepada nama alat bukan Claude Code (pemetaan kanonik Claude Code apabila tersedia, atau PascalCase jika tiada) dan mengembalikannya pada respons melalui _toolNameMap, supaya abah dengan alat snake_case tidak ditolak kerana dicap sebagai klien pihak ketiga. Untuk penyahpepijatan sahaja. |
CODEX_USER_AGENT |
codex-cli/0.142.0 (Windows 10.0.26200; x64) |
Apabila OpenAI mengemas kini Codex CLI | |
CODEX_CLIENT_VERSION |
0.131.0 |
Gantikan versi klien Codex secara berasingan daripada rentetan UA penuh | |
CLAUDE_CODE_CLIENT_VERSION |
2.1.258 |
Gantikan versi Claude Code yang diiklankan secara berasingan daripada CLAUDE_USER_AGENT. Anthropic mengehadkan sesetengah model berdasarkan nilai ini (#12417). |
|
GITHUB_COPILOT_CLI_VERSION |
1.0.81-6 |
Gantikan versi Copilot CLI yang diiklankan secara berasingan daripada GITHUB_USER_AGENT |
|
GITHUB_USER_AGENT |
GitHubCopilotChat/0.54.0 |
Apabila GitHub Copilot Chat dikemas kini | |
ANTIGRAVITY_USER_AGENT |
antigravity/2.0.1 darwin/arm64 |
Apabila Antigravity IDE dikemas kini | |
KIRO_USER_AGENT |
AWS-SDK-JS/3.0.0 kiro-ide/1.0.0 |
Apabila Kiro IDE dikemas kini | |
KIRO_OAUTH_CLIENT_ID |
kiro-cli |
Gantikan clientId kod peranti sosial Kiro (ID awam) |
|
KIRO_VERIFY_FULL_CRC |
false |
Ikut serta: pengesahan CRC mesej penuh bagi setiap bingkai pada strim peristiwa Kiro (nyahpepijat strim yang rosak) | |
QODER_USER_AGENT |
Qoder-Cli |
Apabila Qoder CLI dikemas kini | |
CURSOR_USER_AGENT |
Cursor/3.3 |
Apabila Cursor dikemas kini |
Tip
Anda boleh menambahkan penggantian User-Agent untuk mana-mana penyedia menggunakan corak
{PROVIDER_ID}_USER_AGENT. Pelaksana membina nama pemboleh ubah persekitaran secara dinamik.
13. Keserasian Cap Jari CLI
Apabila didayakan, OmniRoute menyusun semula pengepala HTTP dan medan isi JSON agar sepadan dengan tandatangan tepat alat CLI rasmi. Ini mengurangkan risiko akaun ditandai sambil mengekalkan IP proksi anda.
Sumber: open-sse/config/cliFingerprints.ts, open-sse/executors/base.ts
Mengikut Penyedia
| Pemboleh Ubah | Pengaktifan | Kesan |
|---|---|---|
CLI_COMPAT_CODEX |
=1 |
Meniru tandatangan permintaan Codex CLI |
CLI_COMPAT_CLAUDE |
=1 |
Meniru tandatangan permintaan Claude Code |
CLI_COMPAT_GITHUB |
=1 |
Meniru tandatangan permintaan GitHub Copilot |
CLI_COMPAT_ANTIGRAVITY |
=1 |
Meniru tandatangan permintaan Antigravity |
CLI_COMPAT_CURSOR |
=1 |
Meniru tandatangan permintaan Cursor |
CLI_COMPAT_KIMI_CODING |
=1 |
Meniru tandatangan permintaan Kimi Coding |
CLI_COMPAT_KILOCODE |
=1 |
Meniru tandatangan permintaan Kilo Code |
CLI_COMPAT_CLINE |
=1 |
Meniru tandatangan permintaan Cline |
Global
| Pemboleh Ubah | Pengaktifan | Kesan |
|---|---|---|
CLI_COMPAT_ALL |
=1 |
Dayakan keserasian cap jari untuk semua penyedia secara serentak. |
Penggantian identiti Kimi Coding CLI
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
KIMI_CLI_VERSION |
1.36.0 |
src/lib/oauth/providers/kimi-coding.ts |
Gantikan versi Kimi CLI yang dihantar semasa panggilan OAuth/API. |
KIMI_CODING_DEVICE_ID |
(lalai yang dirakam) | src/lib/oauth/providers/kimi-coding.ts |
Gantikan ID peranti Kimi yang dirakam dan digunakan dalam pengepala klien. |
Note
Ciri ini berfungsi bersama penggantian User-Agent (§12). Sistem cap jari mengendalikan susunan pengepala dan susunan medan isi, manakala penggantian User-Agent mengendalikan rentetan UA tertentu. Kedua-duanya boleh didayakan secara berasingan.
14. Penyedia Kunci API
Kunci API untuk penyedia yang menggunakan pengesahan langsung. Persediaan pilihan: Dashboard → Providers → Add API Key.
Penetapan melalui pemboleh ubah persekitaran ialah alternatif untuk penggunaan Docker atau tanpa paparan.
Corak yang dikenal pasti: {PROVIDER_ID}_API_KEY
| Pemboleh Ubah | Penyedia |
|---|---|
DEEPSEEK_API_KEY |
DeepSeek |
NVIDIA_API_KEY |
NVIDIA NIM |
JINA_AI_API_KEY |
Jina AI (Foundation API + sandaran Reader) |
JINA_API_KEY |
Jina AI (alias untuk JINA_AI_API_KEY) |
GEMINI_API_KEY |
Gemini (Google AI Studio) pembenaman + sandaran sembang |
GOOGLE_API_KEY |
Gemini (alias untuk GEMINI_API_KEY) |
Note
Entri
${PROVIDER}_API_KEYstatik untuk Groq, xAI, Mistral, Perplexity, Together AI, Fireworks, Cerebras, Cohere, Nebius dan Qianfan telah dialih keluar dalam v3.8.0 kerana masa jalan tidak lagi membacanya — penyedia tersebut bergantung sepenuhnya pada Dashboard /data/provider-credentials.json/ pangkalan data yang disulitkan. Lihat bahagian Audit: Pemboleh Ubah yang Dialih Keluar / Tidak Digunakan di bahagian bawah dokumen ini untuk laluan migrasi.
Tip
Kunci yang ditetapkan melalui Dashboard disimpan dalam bentuk tersulit dalam SQLite dan diberi keutamaan berbanding pemboleh ubah persekitaran.
Jina: Pembenaman, susun semula, pengelasan dan segmentasi
jina-ai/…, sertajina-search, tidak mengenakan caj pada kunci persekitaran kluster apabila sambungan dashboardjina-ai(ataujina-readeryang dikongsi) tersedia —getProviderCredentialsmengisi yang pertama dahulu.JINA_AI_API_KEY/JINA_API_KEYhanya digunakan apabila tiada kunci dashboard yang boleh digunakan. Log panggilan mengaitkan sandaran persekitaran sebagaiconnection_id=env:JINA_AI_API_KEY. Kad Reader (jina-reader,r.jina.ai) tidak pernah menyediakan/v1/embeddingsatau/v1/rerank.Gemini:
gemini/gemini-embedding-2(aliasgoogle/gemini-embedding-2) menggunakan sambungan dashboardgeminiterlebih dahulu.GEMINI_API_KEY/GOOGLE_API_KEYhanya digunakan apabila tiada kunci dashboard yang boleh digunakan. Log panggilan mengaitkan sandaran persekitaran sebagaiconnection_id=env:GEMINI_API_KEY. Trafik multimodal asli menggunakanx-goog-api-keyterhadap:embedContent/:batchEmbedContents— N iteminputOpenAI menghasilkan N vektor.
15. Tetapan Tamat Masa
Semua nilai adalah dalam milisaat. Penyelesaian berpusat dalam src/shared/utils/runtimeTimeouts.ts.
Hierarki Tamat Masa
REQUEST_TIMEOUT_MS (gantian global)
├─→ FETCH_TIMEOUT_MS (panggilan penyedia huluan, lalai: 600000)
│ ├─→ FETCH_HEADERS_TIMEOUT_MS (mewarisi daripada FETCH_TIMEOUT_MS)
│ ├─→ FETCH_BODY_TIMEOUT_MS (mewarisi daripada FETCH_TIMEOUT_MS)
│ ├─→ TLS_CLIENT_TIMEOUT_MS (mewarisi daripada FETCH_TIMEOUT_MS)
│ │ └── TLS_FIRST_BYTE_WATCHDOG_MS (bebas, lalai: 10000)
│ ├── RESPONSES_FIRST_BYTE_TIMEOUT_MS (bebas, lalai: 15000)
│ ├── FETCH_CONNECT_TIMEOUT_MS (bebas, lalai: 30000)
│ └── FETCH_KEEPALIVE_TIMEOUT_MS (bebas, lalai: 4000)
├─→ STREAM_IDLE_TIMEOUT_MS (mewarisi daripada REQUEST_TIMEOUT_MS, lalai: 600000)
├─→ STREAM_ACTIVE_TIMEOUT_MS (bebas, lalai: 1260000; 0 menyahdayakan)
├─→ STREAM_READINESS_TIMEOUT_MS (mewarisi daripada REQUEST_TIMEOUT_MS, lalai: 80000)
├─→ STREAM_READINESS_MAX_TIMEOUT_MS (mengehadkan pelanjutan kesediaan adaptif, lalai: 180000)
└─→ API_BRIDGE_PROXY_TIMEOUT_MS (mewarisi daripada REQUEST_TIMEOUT_MS, lalai: 30000)
├─→ API_BRIDGE_SERVER_REQUEST_TIMEOUT_MS (diterbitkan, lalai: 300000)
├── API_BRIDGE_SERVER_HEADERS_TIMEOUT_MS (lalai: 60000)
├── API_BRIDGE_SERVER_KEEPALIVE_TIMEOUT_MS (lalai: 5000)
└── API_BRIDGE_SERVER_SOCKET_TIMEOUT_MS (lalai: 0 = dinyahdayakan)
| Pemboleh ubah | Lalai | Penerangan |
|---|---|---|
REQUEST_TIMEOUT_MS |
(tidak ditetapkan) | Pintasan global — mengatasi nilai lalai bagi FETCH_TIMEOUT_MS dan STREAM_IDLE_TIMEOUT_MS. |
FETCH_TIMEOUT_MS |
600000 |
Had masa keseluruhan permintaan HTTP untuk panggilan kepada penyedia huluan. |
STREAM_IDLE_TIMEOUT_MS |
600000 |
Tempoh senyap maksimum antara bait mentah huluan sebelum dibatalkan. Model pemikiran lanjutan jarang berhenti seketika selama >90s. |
STREAM_ACTIVE_TIMEOUT_MS |
1260000 |
Jangka hayat aktif maksimum keseluruhan bagi strim SSE; tidak pernah ditetapkan semula apabila menerima bait huluan dan tidak bergantung pada REQUEST_TIMEOUT_MS. Diperoleh daripada timeoutMs per model terbesar dalam daftaran (1200000, Codex) ditambah margin 60000, supaya model yang dibenarkan menggunakan belanjawan penuhnya tidak dihentikan ketika sedang menjana jawapan. Tetapkan kepada 0 untuk menyahdayakan. |
OMNIROUTE_SSE_COMMENTS |
(dinyahdayakan) | Sama ada OmniRoute boleh mengeluarkan baris komen SSE : (contohnya degupan jantung : keepalive dan treler metadata x-omniroute-*). Dinyahdayakan secara lalai (#10524) kerana klien serasi OpenAI yang ketat menggunakan JSON.parse pada setiap baris SSE dan gagal apabila menemui komen :; degupan jantung data: tidak terjejas. Tetapkan on/true/1/yes untuk mengikut serta semula. Digunakan oleh open-sse/utils/sseHeartbeat.ts. |
STREAM_READINESS_TIMEOUT_MS |
80000 |
Tempoh untuk menerima peristiwa SSE bukan ping yang pertama. Mewarisi REQUEST_TIMEOUT_MS apabila ditetapkan. |
STREAM_READINESS_MAX_TIMEOUT_MS |
180000 |
Tetingkap kesediaan adaptif maksimum bagi peristiwa pertama untuk permintaan penstriman yang besar, banyak menggunakan alat, atau memerlukan penaakulan tinggi. |
OMNIROUTE_AGENT_GOAL_POLICY_ENABLED |
true |
Suis pematian untuk heuristik /goal. Tetapkan false/0/off untuk menyahdayakan pengesanan sepenuhnya — had masa kesediaan dan pemulihan strim tidak akan ditingkatkan oleh isi permintaan/pengepala, sekali gus mengurangkan penguatan had masa yang dikawal oleh klien. |
OMNIROUTE_AGENT_GOAL_READINESS_MAX_TIMEOUT_MS |
600000 |
Tetingkap kesediaan maksimum bagi peristiwa pertama untuk pelaksanaan ejen /goal yang dikesan atau permintaan yang dipaksa menggunakan x-omniroute-agent-goal. |
OMNIROUTE_AGENT_GOAL_STREAM_RECOVERY |
true |
Dayakan pemulihan strim awal secara automatik untuk pelaksanaan ejen /goal yang dikesan. Tetapkan false/0/off untuk menyahdayakan pilihan ikut serta khusus matlamat. Ini hanya boleh MENAMBAH pemulihan di samping nilai lalai pengendali — ia tidak pernah mengatasi pilihan untuk tidak menyertai yang ditetapkan secara eksplisit melalui tetapan STREAM_RECOVERY_ENABLED/DB. |
OMNIROUTE_CODEX_DROP_NONSTANDARD_EVENTS |
true |
Singkirkan peristiwa SSE codex.* bukan standard (contohnya codex.rate_limits) yang menyebabkan responses.stream() dalam OpenAI SDK gagal dengan ralat 502. HIDUP secara lalai (#11014). Tetapkan 0/false/no/off untuk memajukannya. |
OMNIROUTE_CODEX_APPSERVER_WS |
(tidak ditetapkan) | Pengangkutan pelayan aplikasi Codex yang memerlukan pilihan ikut serta. Titik akhir WebSocket (ws:///wss://) bagi sespan codex app-server setempat. Apabila ditetapkan bersama token, permintaan Codex dihalakan melalui JSON-RPC kepada sespan dan bukannya API Respons HTTP. Turut boleh ditetapkan bagi setiap sambungan melalui providerSpecificData.codexAppServerUrl. Digunakan oleh open-sse/executors/codex/appServerConfig.ts. |
OMNIROUTE_CODEX_APPSERVER_WS_TOKEN |
(tidak ditetapkan) | Token keupayaan/pembawa sebaris yang dikemukakan kepada pelayan aplikasi. Nilai ganti bagi setiap sambungan: providerSpecificData.codexAppServerToken. |
OMNIROUTE_CODEX_APPSERVER_WS_TOKEN_FILE |
(tidak ditetapkan) | Laluan ke fail yang mengandungi token keupayaan pelayan aplikasi (daripada codex app-server --ws-token-file). Digunakan apabila OMNIROUTE_CODEX_APPSERVER_WS_TOKEN tidak ditetapkan. Nilai ganti bagi setiap sambungan: providerSpecificData.codexAppServerTokenFile. |
OMNIROUTE_CODEX_APPSERVER_CWD |
/tmp |
Direktori kerja tempat giliran pelayan aplikasi dijalankan. Nilai ganti bagi setiap sambungan: providerSpecificData.codexAppServerCwd. |
OMNIROUTE_CODEX_APPSERVER_APPROVAL |
(tidak ditetapkan) | Dasar kelulusan yang dihantar kepada giliran pelayan aplikasi (contohnya never, on-request). Nilai ganti bagi setiap sambungan: providerSpecificData.codexAppServerApprovalPolicy. |
OMNIROUTE_CODEX_APPSERVER_SANDBOX |
(tidak ditetapkan) | Dasar kotak pasir yang dihantar kepada giliran pelayan aplikasi (contohnya read-only, workspace-write, danger-full-access). Apabila tidak ditetapkan, pelaksana menggunakan workspace-write secara lalai (diperkukuh; sebelum ini danger-full-access). Nilai ganti bagi setiap sambungan: providerSpecificData.codexAppServerSandbox. |
OMNIROUTE_CODEX_APPSERVER_AUTO_APPROVE |
false |
Luluskan secara automatik gesaan kelulusan pelayan aplikasi itu sendiri (pelaksanaan perintah/fail/kebenaran pada hos). Dimatikan secara lalai — gesaan ditolak secara automatik; panggilan alat rangka kerja tidak terjejas (panggilan tersebut melalui laluan terus item/tool/call yang berasingan). Menerima true/1/yes. Nilai ganti bagi setiap sambungan: providerSpecificData.codexAppServerAutoApprove. |
FETCH_HEADERS_TIMEOUT_MS |
= FETCH_TIMEOUT_MS |
Tempoh untuk menerima pengepala respons. |
OMNIROUTE_DIRECT_HEADERS_TIMEOUT_MS |
30000 (30s) |
Masa menunggu maksimum untuk respons bermula (ms) bagi setiap percubaan langsung tanpa proksi. Apabila tamat masa, percubaan akan dibuat semula sekali menggunakan soket baharu; tetapkan 0 untuk menyahdayakan had dan mengekalkan tingkah laku sebelumnya. |
FETCH_BODY_TIMEOUT_MS |
= FETCH_TIMEOUT_MS |
Masa untuk menerima keseluruhan isi respons. |
FETCH_CONNECT_TIMEOUT_MS |
30000 |
Tamat masa untuk mewujudkan sambungan TCP. |
FETCH_KEEPALIVE_TIMEOUT_MS |
4000 |
Tamat masa melahu soket keep-alive. |
TLS_CLIENT_TIMEOUT_MS |
= FETCH_TIMEOUT_MS |
Tamat masa proksi cap jari TLS (wreq-js). |
TLS_FIRST_BYTE_WATCHDOG_MS |
10000 |
Mengehadkan masa hingga bait pertama khususnya pada isi pengangkutan cap jari TLS wreq-js; TLS_CLIENT_TIMEOUT_MS sahaja tidak dapat mengesan isi yang tersekat kerana ia diselesaikan sebaik sahaja pengepala tiba (#12656). Apabila tamat masa, pembaca wreq dibatalkan dan kembali menggunakan penghantar langsung/proksi; 0 menyahdayakan pemantau. |
RESPONSES_FIRST_BYTE_TIMEOUT_MS |
15000 |
Hanya untuk pelaksana OpenCode, dan hanya semasa bendera ciri OPENCODE_RESPONSES_STALL_ROTATION dihidupkan (dimatikan secara lalai): mengehadkan masa menunggu bait pertama isi bagi balasan Responses yang distrim selepas pengepalanya (#13484). Strim Responses dibuka dengan response.created, jadi ketiadaan data selepas tempoh ini dianggap tersekat: akaun diberi tempoh bertenang dan permintaan dialihkan ke akaun seterusnya sekali; keadaan tersekat kali kedua akan gagal serta-merta. 0 menyahdayakan perlindungan walaupun bendera dihidupkan. |
API_BRIDGE_PROXY_TIMEOUT_MS |
30000 |
Tamat masa lompatan proksi untuk permintaan jambatan /v1. |
FIRECRAWL_BASE_URL |
https://api.firecrawl.dev |
Halakan pelaksana pengambilan web Firecrawl ke tika yang dihoskan sendiri (kunci API adalah pilihan di luar awan). |
FIRECRAWL_TIMEOUT_MS |
30000 |
Tamat masa bagi setiap permintaan untuk pelaksana pengambilan web Firecrawl. |
API_BRIDGE_SERVER_REQUEST_TIMEOUT_MS |
300000 |
Tamat masa keseluruhan permintaan pelayan untuk jambatan. |
API_BRIDGE_SERVER_HEADERS_TIMEOUT_MS |
60000 |
Masa untuk menghantar pengepala respons melalui jambatan. |
API_BRIDGE_SERVER_KEEPALIVE_TIMEOUT_MS |
5000 |
Tamat masa melahu keep-alive jambatan. |
API_BRIDGE_SERVER_SOCKET_TIMEOUT_MS |
0 |
Tamat masa soket mentah (0 = dinyahdayakan). |
SHUTDOWN_TIMEOUT_MS |
30000 |
Tempoh tangguh apabila menerima SIGTERM/SIGINT sebelum keluar secara paksa. |
OMNIROUTE_DEFAULT_FETCH_TIMEOUT_MS |
120000 |
Nilai sandaran yang digunakan oleh src/shared/utils/fetchTimeout.ts apabila FETCH_TIMEOUT_MS tidak ditetapkan. |
OMNIROUTE_PROVIDER_PROBE_TIMEOUT_MS |
8000 |
Tamat masa (ms) untuk pratetap validationRead dan modelsProbe dalam src/shared/network/safeOutboundFetch.ts. Tingkatkan nilai untuk titik akhir yang perlahan (Cerebras, Cloudflare AI, Groq) bagi mengelakkan pertukaran berulang antara aktif/ralat dalam papan pemuka. Kembali kepada 8000ms untuk nilai tidak sah (<1000) atau bukan angka. |
OMNIROUTE_RELAY_FETCH_TIMEOUT_MS |
25000 |
Tamat masa pengambilan khusus geganti dalam open-sse/utils/proxyFetch.ts (#9158). Geganti yang tergantung mesti gagal sebelum tamat masa klien/ejen (~30s) supaya pemanggil melihat kegagalan khusus geganti dan bukannya tamat masa huluan generik. Dihadkan kepada 29000 supaya ia sentiasa dicetuskan terlebih dahulu. |
OMNIROUTE_RETRY_BACKOFF_MS |
10 |
Jeda cuba semula dikongsi untuk laluan cuba semula sekali langsung/geganti/proksi dalam open-sse/utils/proxyFetch.ts (#9158). 0 = cuba semula serta-merta. |
OMNIROUTE_CLAUDE_TLS_TIMEOUT_MS |
60000 |
Tamat masa permintaan wreq-js natif (claudeTlsClient.ts). |
OMNIROUTE_CLAUDE_TLS_GRACE_MS |
10000 |
Tempoh tangguh tarikh akhir mutlak JS yang ditambahkan di atas tamat masa natif. |
OMNIROUTE_PPLX_TLS_TIMEOUT_MS |
30000 |
Tamat masa permintaan wreq-js natif (perplexityTlsClient.ts). |
OMNIROUTE_PPLX_TLS_GRACE_MS |
10000 |
Tempoh tangguh tarikh akhir mutlak JS yang ditambahkan di atas tamat masa natif. |
OMNIROUTE_PPLX_SEARCH_HINT |
0 (dimatikan) |
Menambahkan "Anda mempunyai carian web terbina dalam. Jawab soalan secara langsung menggunakan hasil carian." pada mesej sistem pemanggil (perplexity-web/protocol.ts). Dimatikan secara lalai — Perplexity tetap menjalankan carian, dan ayat tersebut terpapar dalam balasan sebagai ulasan meta untuk klien pengekodan. Tetapkan 1/true/yes/on untuk memulihkannya. |
OMNIROUTE_GROK_TLS_TIMEOUT_MS |
60000 |
Tamat masa permintaan wreq-js natif (grokTlsClient.ts). |
OMNIROUTE_GROK_TLS_GRACE_MS |
10000 |
Tempoh ihsan tenggat mutlak JS yang ditambahkan pada tamat masa natif. |
OMNIROUTE_NOTION_TLS_TIMEOUT_MS |
30000 |
Tamat masa permintaan wreq-js natif (notionTlsClient.ts); notion-web meningkatkannya bagi setiap permintaan kepada 180000 untuk penjanaan yang panjang. |
OMNIROUTE_NOTION_TLS_GRACE_MS |
10000 |
Tempoh ihsan tenggat mutlak JS yang ditambahkan pada tamat masa natif. |
OMNIROUTE_BROWSER_POOL |
on |
Kumpulan pelayar Playwright dikongsi untuk sembang kuki web yang disokong pelayar (browserPool.ts); tetapkan off untuk menyahdayakannya. |
OBSCURA_BIN |
auto-detect |
Laluan ke perduaan obscura yang digunakan sebagai enjin utama oleh kumpulan pelayar dan pelaksana Cloudflare Playground (open-sse/services/obscura.ts); dikesan secara automatik daripada PATH sistem apabila tidak ditetapkan. |
OBSCURA_CDP_ENDPOINT |
(tidak ditetapkan) | Halakan ke Obscura yang sudah berjalan (http://host:port) dan bukannya memulakan satu proses baharu; modul tersebut tidak memiliki proses itu (open-sse/services/obscura.ts). |
OBSCURA_PORT |
port bebas rawak |
Port eksplisit untuk obscura serve yang dimulakan; port bebas dipilih secara automatik apabila tidak ditetapkan (open-sse/services/obscura.ts). |
WEB_COOKIE_USE_BROWSER |
0 |
Sertakan permintaan sembang kuki web dalam laluan yang disokong pelayar (browserBackedChat.ts); 1 untuk mendayakannya. |
KIMI_WEB_BASE_URL |
https://www.kimi.ai |
URL asas untuk pelaksana Kimi Web (Connect-RPC kimi.ai antarabangsa) (kimi-web.ts); ubah hanya untuk titik akhir cermin/proksi. |
KIMI_WEB_CHAT_URL |
<KIMI_WEB_BASE_URL>/apiv2/kimi.gateway.chat.v1.ChatService/Chat |
Titik akhir sembang penuh untuk pelaksana Kimi Web (kimi-web.ts). |
OMNIROUTE_LOGIN_BROWSER_PATH |
(dikesan secara automatik) | Laluan ke boleh laku Chrome/Edge sistem untuk log masuk pelayar interaktif Adobe Firefly (adobeFireflyBrowserLogin.ts); mengatasi pengesanan automatik bagi setiap OS. |
OMNIROUTE_STANDALONE_DIR |
output kendiri .build/ | Penggantian masa binaan bagi direktori output kendiri yang digunakan oleh langkah penempatan bersama pascabinaan (scripts/build/colocate-standalone.mjs); untuk alat binaan, bukan masa jalan. |
Percubaan sasaran kombo mewarisi tamat masa permintaan huluan yang telah ditentukan (FETCH_TIMEOUT_MS, atau
REQUEST_TIMEOUT_MS apabila ia membekalkan nilai lalai pengambilan). Tetapkan targetTimeoutMs dalam kombo,
lalai kombo atau penggantian penyedia hanya untuk mempercepat sandaran kombo; nilai yang melebihi
tamat masa huluan semasa dihadkan kepada tamat masa huluan.
comboTimeoutMs ialah belanjawan masa dinding berasingan untuk keseluruhan kombo merentas sasaran failover.
Biarkannya tidak ditetapkan atau 0 untuk mengekalkan lelaran tanpa had (penghenti hang 10 minit
COMBO_LOOP_SAFETY_TIMEOUT_MS masih terpakai). Nilai positif menggantikan
jaring keselamatan tersebut untuk kombo. Pastikan comboTimeoutMs lebih panjang daripada targetTimeoutMs supaya failover
masih mempunyai masa selepas sasaran pertama yang perlahan.
Ambang Pemutus Litar
Penalaan pemutus litar peringkat penyedia. Nilai lalai mencerminkan nilai berskala yang digunakan sejak v3.6 untuk lebih 500 sambungan.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_CIRCUIT_BREAKER_OAUTH_THRESHOLD |
8 |
open-sse/config/constants.ts |
Ambang kegagalan berturut-turut bagi penyedia OAuth sebelum pemutus litar tercetus. |
OMNIROUTE_CIRCUIT_BREAKER_OAUTH_RESET_MS |
60000 |
open-sse/config/constants.ts |
Tempoh penetapan semula (ms) bagi pemutus litar penyedia OAuth. |
OMNIROUTE_CIRCUIT_BREAKER_API_KEY_THRESHOLD |
12 |
open-sse/config/constants.ts |
Ambang kegagalan berturut-turut bagi penyedia kunci API. |
OMNIROUTE_CIRCUIT_BREAKER_API_KEY_RESET_MS |
30000 |
open-sse/config/constants.ts |
Tempoh penetapan semula (ms) bagi pemutus litar penyedia kunci API. |
OMNIROUTE_CIRCUIT_BREAKER_LOCAL_THRESHOLD |
2 |
open-sse/config/constants.ts |
Ambang kegagalan berturut-turut bagi penyedia setempat (Ollama, LM Studio, ...). |
OMNIROUTE_CIRCUIT_BREAKER_LOCAL_RESET_MS |
15000 |
open-sse/config/constants.ts |
Tempoh penetapan semula (ms) bagi pemutus litar penyedia setempat. |
OMNIROUTE_PROVIDER_BREAKER_OAUTH_FAILURE_THRESHOLD |
10 |
open-sse/config/constants.ts |
Pemutus litar peringkat penyedia: bilangan kegagalan dalam tempoh tersebut sebelum keseluruhan penyedia OAuth memasuki tempoh bertenang. |
OMNIROUTE_PROVIDER_BREAKER_OAUTH_FAILURE_WINDOW_MS |
900000 |
open-sse/config/constants.ts |
Pemutus litar peringkat penyedia: tempoh pengiraan kegagalan bergulir (ms) bagi penyedia OAuth. |
OMNIROUTE_PROVIDER_BREAKER_OAUTH_COOLDOWN_MS |
300000 |
open-sse/config/constants.ts |
Pemutus litar peringkat penyedia: tempoh bertenang (ms) setelah ambang penyedia OAuth dicapai. |
OMNIROUTE_PROVIDER_BREAKER_OAUTH_DEGRADATION_THRESHOLD |
5 |
open-sse/config/constants.ts |
Penyedia OAuth memasuki keadaan DEGRADED apabila mencapai bilangan kegagalan ini. |
OMNIROUTE_PROVIDER_BREAKER_OAUTH_MAX_BACKOFF_MULTIPLIER |
8 |
open-sse/config/constants.ts |
Pengganda maksimum peningkatan resetTimeout bagi penyedia OAuth. |
OMNIROUTE_PROVIDER_BREAKER_OAUTH_BACKOFF_ESCALATION_COUNT |
2 |
open-sse/config/constants.ts |
Penyedia OAuth meningkatkan sela tunggu selepas bilangan kitaran terbuka ini. |
OMNIROUTE_PROVIDER_BREAKER_API_KEY_FAILURE_THRESHOLD |
15 |
open-sse/config/constants.ts |
Pemutus litar peringkat penyedia: bilangan kegagalan dalam tempoh tersebut sebelum keseluruhan penyedia kunci API memasuki tempoh bertenang. |
OMNIROUTE_PROVIDER_BREAKER_API_KEY_FAILURE_WINDOW_MS |
1800000 |
open-sse/config/constants.ts |
Pemutus litar peringkat penyedia: tempoh pengiraan kegagalan bergulir (ms) bagi penyedia kunci API. |
OMNIROUTE_PROVIDER_BREAKER_API_KEY_COOLDOWN_MS |
600000 |
open-sse/config/constants.ts |
Pemutus litar peringkat penyedia: tempoh bertenang (ms) setelah ambang penyedia kunci API dicapai. |
OMNIROUTE_PROVIDER_BREAKER_API_KEY_DEGRADATION_THRESHOLD |
7 |
open-sse/config/constants.ts |
Penyedia kunci API memasuki keadaan DEGRADED apabila mencapai bilangan kegagalan ini. |
OMNIROUTE_PROVIDER_BREAKER_API_KEY_MAX_BACKOFF_MULTIPLIER |
4 |
open-sse/config/constants.ts |
Pengganda maksimum peningkatan resetTimeout bagi penyedia kunci API. |
OMNIROUTE_PROVIDER_BREAKER_API_KEY_BACKOFF_ESCALATION_COUNT |
3 |
open-sse/config/constants.ts |
Penyedia kunci API meningkatkan sela tunggu selepas bilangan kitaran terbuka ini. |
OMNIROUTE_PROVIDER_BREAKER_LOCAL_FAILURE_THRESHOLD |
2 |
open-sse/config/constants.ts |
Pemutus litar peringkat penyedia: bilangan kegagalan sebelum keseluruhan penyedia setempat memasuki tempoh bertenang. |
OMNIROUTE_PROVIDER_BREAKER_LOCAL_FAILURE_WINDOW_MS |
300000 |
open-sse/config/constants.ts |
Pemutus litar peringkat penyedia: tempoh pengiraan kegagalan bergulir (ms) bagi penyedia setempat. |
OMNIROUTE_PROVIDER_BREAKER_LOCAL_COOLDOWN_MS |
60000 |
open-sse/config/constants.ts |
Pemutus litar peringkat penyedia: tempoh bertenang (ms) setelah ambang penyedia setempat dicapai. |
PIN_DROP_BACKOFF_LEVEL |
2 |
open-sse/services/combo.ts |
Kedalaman sela tunggu yang menyebabkan penyedia pin cache konteks dianggap tidak sihat secara berterusan dan pin tersebut digugurkan untuk pengambilalihan. |
PIN_DROP_GRACE_MS |
20000 |
open-sse/services/combo.ts |
Tempoh antiturun naik (ms) yang membenarkan tempoh bertenang sementara yang singkat sebelum menggugurkan pin cache konteks. |
Senario
| Senario | Konfigurasi |
|---|---|
| Penjanaan kod jangka panjang | REQUEST_TIMEOUT_MS=900000 (15 min) |
| Had jumlah tempoh hayat strim | STREAM_ACTIVE_TIMEOUT_MS=1260000 (21 min) |
| Gagal pantas untuk API pengeluaran | API_BRIDGE_PROXY_TIMEOUT_MS=10000 |
| Model penaakulan lanjutan | STREAM_IDLE_TIMEOUT_MS=300000 (5 min antara ketulan) |
16. Pengelogan
Sistem pengelogan menulis ke stdout dan fail log berputar. Semua konfigurasi dibaca oleh src/lib/logEnv.ts.
| Pemboleh ubah | Lalai | Penerangan |
|---|---|---|
APP_LOG_LEVEL |
info |
Tahap log minimum: debug, info, warn, error. |
APP_LOG_FORMAT |
text |
Format output: text (boleh dibaca manusia) atau json (berstruktur). |
APP_LOG_TO_FILE |
true |
Tulis log ke fail di samping stdout. |
APP_LOG_FILE_PATH |
logs/application/app.log |
Laluan fail log (relatif kepada akar projek atau DATA_DIR). |
APP_LOG_MAX_FILE_SIZE |
50M |
Saiz fail maksimum sebelum putaran. Menerima: 50M, 1G, 512K, atau bait biasa. |
APP_LOG_RETENTION_DAYS |
7 |
Bilangan hari untuk menyimpan fail log aplikasi yang telah diputar. |
APP_LOG_MAX_FILES |
20 |
Bilangan maksimum sandaran fail log berputar. |
CALL_LOG_RETENTION_DAYS |
7 |
Bilangan hari untuk menyimpan entri log permintaan/panggilan dalam pangkalan data. |
CALL_LOG_MAX_ENTRIES |
10000 |
Bilangan maksimum entri log panggilan dalam penimbal dalam memori. |
CALL_LOGS_TABLE_MAX_ROWS |
100000 |
Bilangan maksimum baris dalam jadual SQLite call_logs sebelum pemangkasan. |
ENABLE_REQUEST_LOGS |
(tidak ditetapkan) | Paksa pengelogan permintaan terperinci dihidupkan atau dimatikan, mengatasi tetapan papan pemuka. |
MAX_PENDING_REQUEST_AGE_MS |
3600000 (1 jam) |
Usia maksimum bagi entri log permintaan aktif tanpa induk sebelum pembersihan dalam memori. |
CALL_LOG_PIPELINE_CAPTURE_STREAM_CHUNKS |
false |
Simpan cebisan strim dalam artifak saluran paip apabila call_log_pipeline_enabled=true. Pilihan ikut serta (true) — dimatikan secara lalai untuk menjimatkan ruang cakera. |
CALL_LOG_PIPELINE_MAX_SIZE_KB |
512 |
Saiz maksimum artifak log panggilan saluran paip dalam KB apabila call_log_pipeline_enabled=true. |
PROXY_LOGS_TABLE_MAX_ROWS |
100000 |
Bilangan maksimum baris dalam jadual SQLite proxy_logs sebelum pemangkasan. |
PROXY_LOG_INCLUDE_IPS |
false |
Sertakan IP klien/keluar dan awalan akaun dalam log konsol [ProxyEgress]. Rekod log proksi papan pemuka/pangkalan data mengekalkan butiran penuh. |
APP_LOG_ROTATION_CHECK_INTERVAL_MS |
60000 (1 min) |
Kekerapan src/lib/logRotation.ts menyemak semula saiz fail log aktif. |
CHAT_LOG_TEXT_LIMIT |
65536 |
Panjang rentetan maksimum yang dikekalkan dalam artifak log sembang (lalai 64 KB). |
CHAT_LOG_ARRAY_TAIL_ITEMS |
128 |
Bilangan item tatasusunan yang dikekalkan dari penghujung apabila memendekkan muatan log sembang. |
CHAT_LOG_MAX_DEPTH |
6 |
Kedalaman sarang maksimum sebelum muatan log sembang dipendekkan. |
CHAT_LOG_MAX_OBJECT_KEYS |
80 |
Bilangan maksimum kunci objek yang dikekalkan dalam muatan log sembang (0 = tanpa had). |
CHAT_LOG_MAX_BODY_KB |
1024 |
Saiz keseluruhan isi permintaan/respons (KB) sebelum digantikan dengan ringkasan ringkas dan bukannya klon penuh. Naikkan nilai ini jika perbualan berasaskan ejen yang panjang memaparkan ruang letak dan bukannya mesej sebenar pada papan pemuka. |
CHAT_DEBUG_FILE |
false |
Apabila benar, serializeArtifactForStorage melangkau pemendekan berdasarkan saiz. Untuk nyahpepijat sahaja. |
17. Pengoptimuman Memori
| Pemboleh ubah | Lalai | Penerangan |
|---|---|---|
OMNIROUTE_MEMORY_MB |
auto (perkakasan fizikal); 1024 dalam imej Docker |
Had tindanan V8 (MB) yang disyorkan untuk Docker kendiri. Apabila tidak ditetapkan, nilainya ditentukur secara dinamik (~35% daripada RAM sistem, dihadkan kepada [512, 4096]); 512 hanyalah nilai minimum apabila jumlah memori tidak dapat dibaca. Pada run-standalone.mjs (Docker CMD), nilai eksplisit ditambahkan sebagai --max-old-space-size dan mengatasi bendera tindanan NODE_OPTIONS yang bercanggah (bendera terakhir V8). omniroute serve masih mengutamakan tindanan NODE_OPTIONS yang sedia ada (#5238). Jangan tetapkan kedua-duanya kepada nombor yang berbeza — proses akan merekodkan amaran yang menyatakan kedua-dua nilai dan nilai yang diguna pakai. Imej Docker rasmi sentiasa menetapkan 1024, jadi penentukuran tidak pernah dijalankan di situ. /v1/responses untuk agen pengekodan memerlukan 8192–12288 serta ruang tambahan cgroup — lihat Panduan Docker — RAM masa jalan. |
PROMPT_CACHE_MAX_SIZE |
50 |
Bilangan maksimum entri gesaan sistem yang dicache. |
PROMPT_CACHE_MAX_BYTES |
2097152 (2 MB) |
Saiz jumlah maksimum cache gesaan. |
PROMPT_CACHE_TTL_MS |
300000 (5 min) |
TTL entri cache gesaan. |
SEMANTIC_CACHE_MAX_SIZE |
100 |
Bilangan maksimum respons temperature=0 yang dicache. |
SEMANTIC_CACHE_MAX_BYTES |
4194304 (4 MB) |
Saiz jumlah maksimum cache semantik. |
SEMANTIC_CACHE_TTL_MS |
1800000 (30 min) |
TTL entri cache semantik. |
OMNIROUTE_CORPUS_CACHE_SIZE |
5 |
Akar korpus setempat yang mengekalkan indeks aktif dalam memori secara serentak (src/lib/localCorpus/configured.ts). LRU: apabila mencapai had, indeks akar yang paling lama tidak digunakan akan disingkirkan dan dibina semula pada pertanyaan seterusnya. Dihadkan kepada nilai minimum 1; nilai bukan angka akan kembali kepada nilai lalai. |
STREAM_HISTORY_MAX |
50 |
Bilangan maksimum peristiwa strim terkini dalam penimbal paparan langsung Papan Pemuka. |
CONTEXT_LENGTH_DEFAULT |
128000 |
Panjang konteks maksimum sandaran global untuk model tanpa konfigurasi eksplisit. |
USAGE_TOKEN_BUFFER |
100 |
Ruang tambahan token yang diperuntukkan semasa menjejak kuota penggunaan. |
Pemampatan
| Pemboleh ubah | Lalai | Penerangan |
|---|---|---|
OMNIROUTE_RTK_TRUST_PROJECT_FILTERS |
tidak ditetapkan | Percayai .rtk/filters.json projek tanpa cincangan .rtk/trust.json. Gunakan hanya dalam pembangunan setempat yang terkawal. |
Enjin Memori (pelan 21)
Kos gelung peristiwa bagi memori, kemahiran dan penyegaran token (#10349)
OmniRoute ialah satu proses Node. Pengekstrakan/pengambilan semula memori, penyuntikan kemahiran dan penyegaran token penyedia dijalankan pada gelung peristiwa yang sama seperti GET /healthz dan papan pemuka. Semua itu bukan utas pekerja.
| Kerja | Kod | Lalai | Kawalan pengendali |
|---|---|---|---|
| Pengekstrakan / pemerolehan semula memori | src/lib/memory/ |
memoryEnabled papan pemuka (dihidupkan secara lalai) | Matikan Tetapan → Memori. Tiada suis henti env berasingan selain daripada melumpuhkan ciri tersebut dalam tetapan. |
| Suntikan kemahiran | src/lib/skills/injection.ts |
skillsEnabled papan pemuka (dihidupkan secara lalai) | Matikan Tetapan → Memori/Kemahiran (skillsEnabled). Tombol kawalan sandbox di bawah hanya mengehadkan pelaksanaan selepas suntikan dihidupkan. |
| Penyegaran token | src/sse/services/tokenRefresh.ts |
Dihidupkan untuk penyedia OAuth/web yang disambungkan | Putuskan sambungan penyedia atau biarkan token kekal sah; pada masa ini tiada env TOKEN_REFRESH=0. |
Jika /healthz perlahan pada mesin yang tidak sibuk, lumpuhkan memori + kemahiran terlebih dahulu, kemudian semak beban katalog/pemampatan (#10303, #9685). Ciri-ciri ini memberi laluan pada titik await, tetapi masih bersaing untuk satu utas.
Tombol kawalan lapisan pembenaman, stor vektor dan penarafan semula untuk subsistem memori berterusan (src/lib/memory/).
| Pemboleh ubah | Lalai | Penerangan |
|---|---|---|
MEMORY_EMBEDDING_CACHE_TTL_MS |
300000 (5 min) |
TTL untuk cache pembenaman dalam memori (bagi setiap tandatangan sumber/model/dim). |
MEMORY_EMBEDDING_CACHE_MAX |
1000 |
Bilangan maksimum entri LRU yang dikekalkan dalam cache pembenaman. |
MEMORY_TRANSFORMERS_MODEL |
Xenova/all-MiniLM-L6-v2 |
Id repo HF untuk saluran MiniLM setempat @huggingface/transformers yang perlu diikut serta (~23 MB int8, ~400 MB RAM). |
MEMORY_STATIC_MODEL |
minishlab/potion-base-8M |
Id repo HF untuk pembenam jadual carian potion/Model2Vec statik. Dimuat turun secara malas ke dalam direktori cache. |
MEMORY_STATIC_CACHE_DIR |
<DATA_DIR>/embeddings |
Direktori yang digunakan untuk menyimpan cache fail model potion statik. Secara lalai berada di bawah DATA_DIR apabila tidak ditetapkan. |
HF_HUB_ENDPOINT |
https://huggingface.co |
Gantikan URL asas Hugging Face Hub yang digunakan oleh staticPotion.ts (cth. titik akhir cermin untuk persediaan terasing daripada rangkaian). |
MEMORY_VEC_TOP_K |
20 |
Top-K lalai yang digunakan oleh carian vektor daya kasar sqlite-vec dalam src/lib/memory/vectorStore.ts. |
MEMORY_RRF_K |
60 |
Pemalar Reciprocal Rank Fusion k untuk pemerolehan hibrid FTS5 + vektor (resipi sqlite-vec). |
VECTOR_STORE_DISABLE_VEC |
false |
Titik sambungan ujian/diagnostik dalam getVectorStore() (src/lib/memory/vectorStore.ts): apabila true, memaksa stor vektor menjadi null (mensimulasikan persekitaran awan/WASM tanpa sqlite-vec), lalu menurunkan taraf pemerolehan memori kepada carian kata kunci FTS5. Biarkan tidak ditetapkan dalam pengeluaran. |
NOTION_API_KEY |
(tidak ditetapkan) | Kunci API untuk bahagian belakang Notion (digunakan oleh pratetap bahagian belakang yang diketahui dalam genericBackend.ts). |
NOTION_API_URL |
https://api.notion.com/v1 |
URL asas untuk API Notion (boleh digantikan untuk alternatif Notion yang dihos sendiri). |
OBSIDIAN_API_KEY |
(tidak ditetapkan) | Kunci API untuk bahagian belakang Obsidian Vault (digunakan oleh pratetap bahagian belakang yang diketahui dalam genericBackend.ts). |
OBSIDIAN_API_URL |
http://localhost:27123 |
URL asas untuk API Obsidian Vault (boleh digantikan untuk vault jauh). |
MEMORY_TYPED_DECAY_ENABLED |
false |
Suis induk pereputan memori berjenis TV6. Perlu diikut serta (dimatikan secara lalai) — sapuan tersebut memadamkan memori yang telah mereput. Apabila dimatikan, access_count/last_accessed_at hanyalah telemetri dan tiada apa-apa yang akan dipadamkan. |
MEMORY_TYPED_DECAY_EPISODIC_DAYS |
30 |
TTL (hari) yang selepasnya memori episodic yang tidak digunakan akan mereput. 0 turut menjadikan episodik kebal. Jenis tahan lama (factual/procedural/semantic) sentiasa kebal. Jam pereputan diasaskan semula pada last_accessed_at. |
MEMORY_TYPED_DECAY_ACCESS_IMMUNITY |
3 |
Memori yang disuntik sebanyak >= kali ini menjadi kebal terhadap pereputan tanpa mengira jenis. 0 melumpuhkan kekebalan akses. |
MEMORY_TYPED_DECAY_SWEEP_INTERVAL |
0 (dilumpuhkan) |
Selang (saat) untuk sapuan pereputan berkala pilihan dalam src/lib/memory/typedDecay.ts. 0/tidak ditetapkan = tiada sapuan berkala. Perlu diikut serta dua kali: turut memerlukan MEMORY_TYPED_DECAY_ENABLED=true. |
OMNIROUTE_STRICT_SYSTEM_PROVIDERS |
(tidak ditetapkan) | Id penyedia dipisahkan koma (tidak sensitif huruf besar/kecil) yang menerima mesej system hanya pada indeks 0 (src/lib/memory/injection.ts). Bagi penyedia ini, penyisipan memori di tengah tatasusunan yang selamat untuk cache adalah tidak selamat dalam perbualan berbilang giliran, maka memori digabungkan/ditambahkan di hadapan sebagai mesej sistem pertama. Secara lalai hanya xiaomi-mimo/mimo; lanjutkan untuk titik akhir serasi OpenAI yang dihos sendiri (cth. Qwen3.5+/3.6) dengan templat sembang yang menguatkuasakan kekangan mesej sistem tunggal di hadapan yang sama. |
Contoh Docker RAM Rendah
128 hanya untuk papan pemuka. Ejen pengekodan pada timbunan ini mengalami FATAL ERROR semasa /v1/responses yang panjang. Jangan gunakan contoh ini sebagai get laluan 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. Penyegerakan Harga
Penyegerakan automatik data harga model daripada sumber luaran.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
PRICING_SYNC_ENABLED |
false |
src/lib/pricingSync.ts |
Penyegerakan harga berkala secara ikut serta. |
PRICING_SYNC_INTERVAL |
86400 (24j) |
src/lib/pricingSync.ts |
Selang penyegerakan dalam saat. |
PRICING_SYNC_SOURCES |
litellm |
src/lib/pricingSync.ts |
Sumber data yang dipisahkan dengan koma. |
Penyegerakan ELO Arena
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
ARENA_ELO_SYNC_ENABLED |
true |
src/shared/constants/featureFlagDefinitions.ts |
Penyegerakan ELO berkala papan pendahulu Arena AI, boleh dikonfigurasikan melalui Bendera Ciri Papan Pemuka atau menggunakan false untuk tidak menyertainya. |
MODELS_CATALOG_PREFIX_MODE |
dual |
src/shared/constants/featureFlagDefinitions.ts, src/app/api/v1/models/catalog.ts |
Bentuk awalan yang digunakan untuk id model dalam GET /v1/models. dual mengiklankan kedua-dua awalan alias pendek dan awalan penyedia kanonik untuk setiap model (keserasian ke belakang — kira-kira menggandakan katalog); alias menghasilkan satu id bagi setiap model; canonical hanya menghasilkan awalan id penyedia penuh (penyedia yang aliasnya sudah merupakan id kanonik mengekalkan satu entri sahaja). Klien boleh mengatasi tetapan ini bagi setiap permintaan dengan ?prefix=alias. Lihat API_REFERENCE. |
ARENA_ELO_SYNC_INTERVAL |
86400 (24j) |
src/lib/arenaEloSync.ts |
Selang penyegerakan dalam saat. |
Penyedia Playground PromptQL (Tidak Rasmi/Eksperimen)
Jambatan sesi GraphQL kejuruteraan terbalik untuk prompt.ql.app (src/shared/constants/providers/web-cookie.ts). Semuanya pilihan — nilai lalai menghala ke titik akhir playground awam; timpa hanya untuk penggunaan PromptQL yang dihoskan sendiri/alternatif.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
PROMPTQL_GRAPHQL_ENDPOINT |
https://data.prompt.ql.app/promptql/playground-v2-hge/v1/graphql |
open-sse/executors/promptql.ts |
Titik akhir GraphQL yang digunakan untuk operasi sembang/sesi. |
PROMPTQL_CREDITS_ENDPOINT |
https://data.pro.ql.app/v1/graphql |
open-sse/executors/promptql.ts, open-sse/services/usage/promptql.ts |
Titik akhir GraphQL yang digunakan untuk menanyakan baki/penggunaan kredit. |
PROMPTQL_TOKEN_REFRESH_URL |
https://auth.pro.ql.app/ddn/project/token |
open-sse/executors/promptql.ts |
Titik akhir yang digunakan untuk percubaan terbaik menyegarkan semula token. |
PROMPTQL_POLL_TIMEOUT_MS |
180000 |
open-sse/executors/promptql.ts |
Masa maksimum (ms) untuk meninjau thread_events sebelum tamat masa. |
Penyedia Web HyperAgent (Tidak Rasmi/Eksperimen)
Jambatan sesi kejuruteraan songsang untuk hyperagent.com (src/shared/constants/providers/web-cookie.ts). Pilihan — lalai menghala ke titik akhir pengebilan/penggunaan awam; ubah hanya untuk penggunaan HyperAgent hos kendiri/alternatif.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
HYPERAGENT_USAGE_URL |
https://hyperagent.com/api/settings/billing/usage |
open-sse/services/usage/hyperagent.ts |
Titik akhir yang digunakan untuk mendapatkan blok kredit pengebilan/penggunaan. |
Kuota Penggunaan Kilo Code
Semakan baki USD peribadi dan penggunaan Kilo Pass untuk penyedia Kilo Code. Pilihan — lalai menghala ke API Kilo awam; ubah hanya untuk geganti/lekapan ujian. Pengesahan menggunakan token akses OAuth sedia ada bagi sambungan tersebut.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
KILO_API_URL |
https://api.kilo.ai |
open-sse/services/usage/kilocode.ts |
URL asas yang digunakan untuk mendapatkan baki Kilo Code peribadi dan penggunaan Kilo Pass. |
Penyedia Web Adobe Firefly (Tidak Rasmi/Eksperimen)
Penyegaran sesi dipacu pelayar untuk penyedia web Adobe Firefly
(open-sse/services/adobeFireflyBrowserLogin.ts, open-sse/services/adobeFireflySession.ts,
open-sse/services/adobeFireflyClient.ts). Pilihan — semua lalai ditala untuk pemasangan
desktop biasa.
Dialih keluar dalam #9255. Masa jalan Chrome lama yang dilampirkan melalui CDP (adobeFireflyChromeRuntime.ts) telah digantikan dengan perkhidmatan log masuk pelayar Playwright dan tetapannya tidak lagi wujud. Pemboleh ubah ADOBE_FIREFLY_CHROME_ CDP_PORT / VISIBLE / HEADED / PING / FORCE_RESTART, serta ADOBE_FIREFLY_LOGIN_WAIT_MS dan ADOBE_FIREFLY_FORTER_WAIT_MS, tidak dibaca di mana-mana dalam pangkalan kod — menetapkannya tidak memberikan sebarang kesan.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
ADOBE_FIREFLY_CHROME_HEADLESS |
0 |
open-sse/services/adobeFireflyBrowserLogin.ts |
Tetapkan kepada 1 untuk Chrome tanpa kepala sebenar (diketahui rosak untuk penjanaan; penyahpepijatan sahaja). |
ADOBE_FIREFLY_BROWSER_REFRESH |
1 |
open-sse/services/adobeFireflySession.ts |
Pilihan ikut serta/keluar pemanasan pelayar proaktif. 0 menyahdayakan pemanasan proaktif (pemulihan 408 di pertengahan kelompok masih digunakan). |
ADOBE_FIREFLY_SESSION_DISK |
1 |
open-sse/services/adobeFireflySession.ts |
Tetapkan kepada 0 untuk menyahdayakan penyimpanan berterusan sesi Adobe Firefly pada cakera. |
ADOBE_FIREFLY_MIN_SUBMIT_GAP_MS |
(tidak ditetapkan) | open-sse/services/adobeFireflySession.ts |
Selang minimum (ms) yang dikuatkuasakan antara penyerahan berturut-turut, mengatasi lalai terbina dalam. |
ADOBE_FIREFLY_BATCH_EXTRA_GAP_MS |
(tidak ditetapkan) | open-sse/services/adobeFireflySession.ts |
Selang tambahan (ms) yang ditambah selepas kelompok berjaya, mengatasi lalai terbina dalam. |
ADOBE_FIREFLY_SUBMIT_BASE_DELAY_MS |
(tidak ditetapkan) | open-sse/services/adobeFireflyClient.ts |
Kelewatan asas (ms) sebelum menyerahkan permintaan penjanaan, mengatasi lalai terbina dalam. |
19. Penyegerakan Model (Pembangunan)
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
MODELS_DEV_SYNC_ENABLED |
(tidak ditetapkan) | src/lib/modelsDevSync.ts |
Pengatasan mutlak untuk penyegerakan harga models.dev. Tidak ditetapkan = patuhi Tetapan > AI (modelsDevSyncEnabled). 0/false/off/no mengatasi DB dan melangkau kedua-dua penyegerakan berkala serta imbasan SQL/JSON getModelsDevPricing() (pemulihan apabila papan pemuka tersekat pada gelung peristiwa yang sama). 1/true/on/yes memaksa penyegerakan diaktifkan. Penyimpanan/pengosongan harga masih memanggil backupDbFile("pre-write"), yang tidak melakukan apa-apa di bawah pendikitan 60 minit atau DISABLE_SQLITE_AUTO_BACKUP. |
MODELS_DEV_SYNC_INTERVAL |
86400 (24j) |
src/lib/modelsDevSync.ts |
Selang penyegerakan katalog model semasa pembangunan dalam saat. |
CONTEXT_WINDOW_RECONCILE_INTERVAL |
86400 (24j) |
src/lib/contextWindowResolver.ts |
Selang (saat) untuk penyelaras tetingkap konteks pembetulan kendiri (5004): menetapkan tetingkap yang diisytiharkan penyedia daripada penemuan /models sebagai pengatasan auto:discovery apabila ia berbeza daripada katalog. Tetapkan kepada 0 untuk menyahdayakan. Menggunakan semula data yang telah disegerakkan (tiada pengambilan baharu); tidak pernah menulis ganti pengatasan manual. |
20. Tetapan Khusus Penyedia
| Pemboleh ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OPENROUTER_CATALOG_TTL_MS |
86400000 (24j) |
src/lib/catalog/openrouterCatalog.ts |
TTL cache katalog model OpenRouter. |
MODEL_CATALOG_INCLUDE_NAMES |
true |
src/shared/constants/featureFlagDefinitions.ts |
Sertakan medan name yang mesra paparan dalam respons /v1/models. Nyahdayakan untuk klien yang hanya menjangkakan ID. |
CATALOG_BUILD_TIMEOUT_MS |
8000 (8s) |
src/app/api/v1/models/catalogCache.ts |
Had menunggu laluan sejuk untuk pembinaan semula katalog GET /v1/models yang digabungkan (#12627). Apabila tamat masa, respons 200 terakhir yang baik akan disampaikan jika ada. |
OMNIROUTE_SYNCED_CATALOG_STALE_AFTER_MS |
2592000000 (30 hari) |
src/lib/db/models/activeSyncedCatalog.ts |
Tempoh selepas senarai model tersegerak bagi sesuatu sambungan tidak lagi dianggap berwibawa untuk penghalaan dan beralih kepada pendaftaran jika gagal (#12849). Baris yang tidak pernah mempunyai cap masa dianggap lapuk. |
NANOBANANA_POLL_TIMEOUT_MS |
120000 |
open-sse/handlers/imageGeneration.ts |
Tempoh menunggu maksimum untuk tugas penjanaan imej NanoBanana. |
NANOBANANA_POLL_INTERVAL_MS |
2500 |
open-sse/handlers/imageGeneration.ts |
Kekerapan peninjauan tugas NanoBanana. |
ADOBE_FIREFLY_SUBMIT_BASE_DELAY_MS |
8000 |
open-sse/services/adobeFireflyUpscale.ts |
Kelewatan asas untuk undur eksponen percubaan semula penyerahan peningkatan skala Adobe Firefly. |
AWS_REGION |
(tidak ditetapkan) | src/lib/providers/validation.ts, open-sse/handlers/audioSpeech.ts |
Rantau yang digunakan untuk membina titik akhir AWS Bedrock (Kiro, audio). |
AWS_DEFAULT_REGION |
(tidak ditetapkan) | src/lib/providers/validation.ts, open-sse/handlers/audioSpeech.ts |
Nilai sandaran apabila AWS_REGION tidak ditetapkan. |
CLOUDFLARE_ACCOUNT_ID |
(tidak ditetapkan) | open-sse/executors/cloudflare-ai.ts |
ID akaun untuk Cloudflare Workers AI. |
CLOUDFLARE_PLAYGROUND_CHROME_PATH |
(tidak ditetapkan) | open-sse/executors/cloudflare-playground.ts |
Laluan penuh binari Chrome desktop untuk pelaksana Cloudflare AI Playground, digunakan apabila semakan cap jari tanpa kepala menyekat Chromium terbina dalam Playwright. |
CLOUDFLARE_API_BASE |
https://api.cloudflare.com/client/v4 |
src/app/api/settings/proxy/cloudflare-deploy/route.ts |
Gantikan asas API REST Cloudflare yang digunakan oleh pelaksana geganti Workers kumpulan proksi (#4640 / 9router#1360). |
NEXT_PUBLIC_CLOUDFLARE_RELAY_DEFAULT_PROJECT |
omniroute-relay |
src/app/(dashboard)/dashboard/settings/components/proxy/CloudflareRelayModal.tsx |
Nama projek worker lalai yang dicadangkan dalam modal "Gunakan Geganti" kumpulan proksi. |
NEXT_PUBLIC_CLOUDFLARE_RELAY_ENABLED |
true |
src/app/(dashboard)/dashboard/settings/components/proxy/ProxyPoolTab.tsx |
Tetapkan kepada false untuk menyembunyikan pilihan geganti Cloudflare Workers daripada tab Kumpulan Proksi. |
CLOUDFLARED_BIN |
pengesanan automatik | src/lib/cloudflaredTunnel.ts |
Laluan tersuai kepada binari cloudflared. |
CLOUDFLARED_PROTOCOL |
http2 |
src/lib/cloudflaredTunnel.ts |
Protokol pengangkutan terowong: http2 (lalai), quic, atau auto. |
CLOUDFLARED_CONFIG |
(tidak ditetapkan) | src/lib/cloudflaredTunnel.ts |
Laluan kepada config.yml cloudflared yang diurus secara setempat (dengan tunnel:, credentials-file:, ingress:). Apabila ditetapkan, OmniRoute menjalankan tunnel --config <path> run (terowong bernama) dan bukannya terowong pantas sementara. |
CLOUDFLARED_HOSTNAME |
(daripada ingress konfigurasi) | src/lib/cloudflaredTunnel.ts |
Gantian untuk nama hos awam terowong bernama (cth. ai.example.com), yang dilaporkan sebagai publicUrl/apiUrl. Apabila tidak ditetapkan, ia dibaca daripada nama hos ingress pertama dalam konfigurasi. |
DENO_DEPLOY_API_BASE |
https://api.deno.com/v2 |
src/app/api/settings/proxy/deno-deploy/route.ts |
Gantikan asas REST API Deno Deploy yang digunakan oleh pengatur kedudukan geganti kumpulan proksi (#4643 / 9router#1437). |
NEXT_PUBLIC_DENO_RELAY_DEFAULT_PROJECT |
omniroute-deno-relay |
src/app/(dashboard)/dashboard/settings/components/proxy/DenoRelayModal.tsx |
Nama aplikasi Deno Deploy lalai yang dicadangkan dalam modal "Deploy Relay" kumpulan proksi. |
NEXT_PUBLIC_DENO_RELAY_ENABLED |
true |
src/app/(dashboard)/dashboard/settings/components/proxy/ProxyPoolTab.tsx |
Tetapkan kepada false untuk menyembunyikan pilihan geganti Deno Deploy daripada tab Kumpulan Proksi. |
SEARCH_CACHE_TTL_MS |
300000 (5 minit) |
open-sse/services/searchCache.ts |
TTL untuk pencachean respons API carian (Perplexity, Brave, dll.). |
ENABLE_CC_COMPATIBLE_PROVIDER |
false |
src/shared/utils/featureFlags.ts |
Paparkan UI penyedia serasi CC yang eksperimental untuk geganti Claude Code sahaja. |
NINEROUTER_HOST |
127.0.0.1 |
open-sse/executors/ninerouter.ts |
Gantikan hos tempat tika 9router terbenam mendengar. |
NINEROUTER_PORT |
20130 |
open-sse/executors/ninerouter.ts |
Gantikan port tempat tika 9router terbenam mendengar. |
EMBED_WS_PROXY_HOST |
127.0.0.1 |
src/lib/services/embedWsProxy.ts |
Hos pengikatan untuk proksi WebSocket perkhidmatan terbenam (gelung balik sahaja secara lalai). |
EMBED_WS_PROXY_PORT |
20131 |
src/lib/services/embedWsProxy.ts |
Port untuk pelayan proksi WebSocket perkhidmatan terbenam. |
CLIPROXYAPI_HOST |
127.0.0.1 |
open-sse/executors/cliproxyapi.ts |
Hos jambatan CLIProxyAPI (penyepaduan legasi). |
CLIPROXYAPI_PORT |
5544 |
open-sse/executors/cliproxyapi.ts |
Port jambatan CLIProxyAPI. |
CLIPROXYAPI_API_KEY |
(kosong) | open-sse/handlers/chatCore/cliproxyapiCredentials.ts |
Kunci sandaran bidang data apabila tetapan cliproxyapi_api_key tiada. |
CLIPROXYAPI_MANAGEMENT_KEY |
(kosong) | src/lib/services/cliproxyAccountHealth.ts |
Kunci pengurusan untuk pembacaan kesihatan akaun daripada tika CLIProxyAPI yang diurus secara luaran. |
CLIPROXYAPI_CONFIG_DIR |
~/.cli-proxy-api |
src/lib/versionManager/processManager.ts |
Direktori konfigurasi CLIProxyAPI. |
CLIPROXY_BIND_HOST |
127.0.0.1 |
docker-compose.yml |
Antara muka hos tempat docker-compose menerbitkan sidecar cliproxyapi (#12578). Volum datanya menyimpan kelayakan OAuth/API penyedia dan imej yang dipinkan tidak mempunyai penggantian api-keys bidang data berasaskan env (hanya config.yaml yang dilekapkan), jadi 0.0.0.0 mendedahkan perkhidmatan yang mengandungi kelayakan kepada seluruh LAN. |
MUX_SERVICE_PORT |
8322 |
src/lib/services/bootstrap.ts |
Gantikan port tempat daemon pengorkestraan ejen Mux (coder/mux) terbenam mendengar (sentiasa 127.0.0.1). |
DARIO_HOST |
127.0.0.1 |
open-sse/executors/dario.ts |
Hos pengikatan/sambungan perkhidmatan terbenam Dario (gelung balik sahaja secara lalai). |
DARIO_PORT |
3456 |
open-sse/executors/dario.ts |
Port perkhidmatan terbenam Dario. |
DARIO_HOST |
127.0.0.1 |
open-sse/executors/dario.ts |
Hos pengikatan/sambungan perkhidmatan terbenam Dario (gelung balik sahaja secara lalai). |
DARIO_PORT |
3456 |
open-sse/executors/dario.ts |
Port perkhidmatan terbenam Dario. |
LOCAL_HOSTNAMES |
(kosong) | open-sse/config/providerRegistry.ts |
Nama hos tambahan yang dipisahkan dengan koma dan dianggap sebagai "setempat" (nama perkhidmatan Docker, dsb.). |
ENABLE_CC_COMPATIBLE_PROVIDER hanya untuk geganti pihak ketiga yang menerima klien Claude Code
secara eksklusif. OmniRoute menulis semula permintaan supaya geganti tersebut menerimanya. Jika anda hanya mahu menggunakan
Claude Code CLI, atau anda tidak pasti tentang geganti ini, biarkan ciri ini dinyahdayakan dan tambahkan penyedia biasa
yang serasi dengan Anthropic.
21. Kesihatan Proksi
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
PROXY_FAST_FAIL_TIMEOUT_MS |
2000 |
src/lib/proxyHealth.ts |
Tamat masa pemeriksaan kesihatan gagal pantas. |
PROXY_LATENCY_WINDOW_HOURS |
3 |
src/lib/db/proxies.ts |
Tetingkap masa (jam) untuk mengira kependaman purata proksi calon dalam strategi kumpulan yang dioptimumkan untuk kependaman. |
PROXY_HEALTH_CACHE_TTL_MS |
30000 |
src/lib/proxyHealth.ts |
TTL cache hasil pemeriksaan kesihatan. |
PROXY_HEALTH_UNHEALTHY_CACHE_TTL_MS |
2000 |
src/lib/proxyHealth.ts |
TTL cache untuk siasatan kesihatan proksi yang gagal. Pastikan nilai ini lebih pendek daripada PROXY_HEALTH_CACHE_TTL_MS supaya tamat masa proksi sementara di bawah konkurensi tinggi dicuba semula dengan cepat tanpa menyahdayakan mekanisme gagal pantas bagi proksi yang benar-benar tidak berfungsi. |
PROXY_HEALTH_ENABLED |
true |
src/lib/proxyHealth/scheduler.ts |
Tetapkan kepada false untuk menyahdayakan penjadual kesihatan proksi latar belakang yang menyiasat proksi berdaftar secara berkala. |
PROXY_HEALTH_INTERVAL_MS |
600000 |
src/lib/proxyHealth/scheduler.ts |
Selang sapuan penjadual kesihatan latar belakang dalam ms (minimum 60000). |
PROXY_HEALTH_TEST_URL |
https://httpbin.org/ip |
src/lib/proxyHealth/probeTarget.ts |
Sasaran siasatan kebolehcapaian yang digunakan oleh penjadual dan titik akhir /api/settings/proxies/auto-test. Tetapkannya kepada URL dalaman/dihoskan sendiri untuk mengelakkan penggunaan nilai lalai awam. |
PROXY_HEALTH_TEST_CONCURRENCY |
10 |
src/lib/proxyHealth/probeTarget.ts |
Bilangan siasatan yang dimulakan serentak bagi setiap kelompok, dikongsi oleh penjadual dan titik akhir /api/settings/proxies/auto-test. Dibundarkan ke bawah dengan nilai minimum 1 dan dihadkan kepada 50. |
PROXY_HEALTH_TEST_STAGGER_MS |
100 |
src/lib/proxyHealth/probeTarget.ts |
Lengahan dalam ms antara pelepasan dua siasatan dalam sesuatu kelompok. Tanpanya, seluruh kelompok dilepaskan pada masa yang sama dan IP keluar yang dikongsi boleh mencetuskan pengehadan kadar pada sasaran. Tetapkan kepada 0 untuk melumpuhkan penjarakan; dihadkan kepada 5000. |
PROXY_HEALTH_USE_PROVIDER_TARGET |
true |
src/lib/proxyHealth/providerProbeTarget.ts |
Tetapkan "false" untuk berhenti menyiasat hos sebenar penyedia yang ditetapkan kepada proksi (GET /models, tanpa kunci API) dan sebaliknya sentiasa menggunakan PROXY_HEALTH_TEST_URL. |
PROXY_HEALTH_AUTO_DEACTIVATE |
false |
src/lib/proxyHealth/statusPolicy.ts |
Apabila false (lalai), siasatan kebolehcapaian automatik (penjadual + butang "Uji Semua" /api/settings/proxies/auto-test) adalah baca sahaja dan tidak pernah menulis status proksi — hanya pengendali menetapkan aktif/tidak aktif, supaya siasatan yang tidak stabil tidak menyebabkan proksi yang ditetapkan terkandas (#6246). Tetapkan true untuk memulihkan tingkah laku uji-dan-tetap yang lama. |
PROXY_POOL_EGRESS_OBSERVATION |
false |
src/shared/utils/featureFlags.ts |
Bendera ciri ikut serta (lihat FEATURE_FLAGS.md; penggantian DB papan pemuka diberi keutamaan). true (atau 1, yes) memaparkan pemerhatian keluar kelompok baca sahaja di bawah kelompok proksi dalam papan pemuka (IP keluar yang berbeza, sambungan dan bilangan terbanyak yang dilihat di belakang satu IP sepanjang 24 jam lalu, daripada log proksi). Tidak pernah digunakan untuk penghalaan. |
PROXY_AUTO_REMOVE |
false |
src/lib/proxyHealth/scheduler.ts |
Tetapkan true untuk membolehkan penjadual mengalih keluar proksi secara automatik selepas kegagalan berturut-turut yang berulang. |
PROXY_AUTO_REMOVE_AFTER |
3 |
src/lib/proxyHealth/scheduler.ts |
Bilangan kegagalan berturut-turut sebelum penjadual mengalih keluar proksi secara automatik (apabila PROXY_AUTO_REMOVE=true). |
PROXY_AUTO_DISABLE |
false |
src/lib/proxyHealth/scheduler.ts |
Tetapkan kepada true untuk membolehkan penjadual menyahdayakan proksi secara lembut (status dead, tidak pernah dipadamkan) selepas kegagalan berturut-turut yang berulang, dan bukannya mengalih keluarnya. Alternatif tanpa pemusnahan kepada PROXY_AUTO_REMOVE: proksi dikeluarkan daripada penyelesaian kumpulan/putaran serta-merta (penapis status hidup yang digunakan oleh penyelesaian kumpulan skop sudah mengecualikannya) dan diaktifkan semula secara automatik sebaik sahaja ia kembali melepasi pemeriksaan. Berkongsi ambang PROXY_AUTO_REMOVE_AFTER. Jika kedua-dua bendera ialah true, PROXY_AUTO_REMOVE diutamakan. |
OMNIROUTE_CONTROL_PLANE_PROXY_DIRECT_FALLBACK |
false |
src/shared/constants/featureFlagDefinitions.ts |
Benarkan aliran pengesahan OAuth dan penyedia memintas proksi yang ditetapkan serta menyambung secara langsung apabila prapemeriksaan kebolehcapaian proksi gagal. Keutamaan yang berkuat kuasa ialah penggantian DB Bendera Ciri > pemboleh ubah persekitaran > lalai. |
RATE_LIMIT_MAX_WAIT_MS |
30000 (30s) |
open-sse/services/rateLimitManager.ts |
Masa maksimum untuk menunggu respons 429 sebelum permintaan digagalkan. |
RATE_LIMIT_EXECUTION_MAX_WAIT_MS |
600000 (10 min) |
open-sse/services/rateLimitManager.ts |
Had maksimum tempoh permintaan yang diterima boleh kekal dalam pelaksanaan sebelum tempahan had kadarnya tamat tempoh — dipisahkan daripada peruntukan masa menunggu baris gilir supaya permulaan pengambilan yang perlahan pada get laluan bukan tokokan tidak tamat masa (#12027). |
RATE_LIMIT_MAX_QUEUE_DEPTH |
0 (dinyahdayakan) |
open-sse/services/rateLimitManager.ts |
Had penerimaan baris gilir: tolak dengan respons 429 queue_full apabila bilangan permintaan yang sedang beratur telah mencapai nilai ini. 0 = tanpa had (lalai). |
RATE_LIMIT_AUTO_ENABLE |
(tidak ditetapkan) | open-sse/services/rateLimitManager.ts |
Paksa jaringan keselamatan had kadar didayakan atau dinyahdayakan secara automatik tanpa mengambil kira tetapan Papan Pemuka yang disimpan. Menerima true/1/on untuk memaksa pengaktifan, false/0/off untuk memaksa penyahaktifan. |
PROVIDER_COOLDOWN_ENABLED |
(tidak ditetapkan → dimatikan) | open-sse/services/providerCooldownTracker.ts |
Penjejakan tempoh bertenang penyedia/sambungan global merentas permintaan yang perlu dipilih untuk digunakan. DIMATIKAN secara lalai (bertindih dengan Tempoh Bertenang Sambungan / Pemutus Litar Penyedia). Menerima true/1/on untuk mendayakan. |
PROVIDER_COOLDOWN_MIN_MS |
5000 |
open-sse/services/providerCooldownTracker.ts |
Tempoh bertenang minimum (ms) sebelum penyedia/sambungan yang gagal dicuba semula. Diskalakan secara eksponen mengikut kegagalan berturut-turut. Hanya digunakan apabila PROVIDER_COOLDOWN_ENABLED. |
PROVIDER_COOLDOWN_MAX_MS |
300000 (5 min) |
open-sse/services/providerCooldownTracker.ts |
Had tempoh bertenang maksimum (ms) sebelum penyedia/sambungan yang gagal dicuba semula tanpa mengira keadaan. Hanya digunakan apabila PROVIDER_COOLDOWN_ENABLED. |
STREAM_RECOVERY_ENABLED |
(tidak ditetapkan → dimatikan) | src/lib/resilience/settings.ts (nilai awal) → open-sse/services/streamRecovery.ts (logik) |
Apa: pemulihan telus bagi strim huluan yang terpotong (port free-claude-code). Menahan tetingkap SSE pembukaan sehingga STREAM_RECOVERY.HOLDBACK_MS (750 ms) supaya pemotongan pra-komit — yang berlaku sebelum sebarang bait sampai kepada klien — dibuka semula dan dicuba semula secara tidak kelihatan. Bila perlu didayakan: huluan yang tidak stabil/kerap terpotong kepada 0 bait pada permulaan strim; biarkan DIMATIKAN jika anda tidak mampu menerima tambahan masa sehingga 750 ms untuk token pertama pada setiap strim. Menerima true/1/on. Menetapkan nilai awal bagi tetapan Daya Tahan yang disimpan; tetapan Papan Pemuka akan diutamakan selepas ditetapkan. |
STREAM_RECOVERY_MIDSTREAM_ENABLED |
(tidak ditetapkan → dimatikan) | src/lib/resilience/settings.ts (nilai awal) → open-sse/services/streamRecovery.ts (logik) |
Apa: penerusan pertengahan strim (Fasa 4.4) — selepas pemotongan pasca-komit (bait telah sampai kepada klien), buat permintaan semula dengan teks separa sebagai praisi pembantu dan cantumkan akhiran yang hilang. Hanya untuk strim teks biasa yang serasi dengan OpenAI; tidak akan dicetuskan apabila panggilan alat sedang berlangsung. Bila perlu didayakan: penjanaan panjang yang terpotong di pertengahan jawapan dan anda menerima bahagian akhir yang dipulihkan tiba dalam satu kelompok dan bukannya token demi token. Tidak bergantung pada STREAM_RECOVERY_ENABLED (profil risiko yang berbeza). Menerima true/1/on. |
STREAM_THROUGHPUT_WATCHDOG_ENABLED |
(tidak ditetapkan → dimatikan) | src/lib/resilience/settings.ts → open-sse/services/throughputWatchdog.ts |
Pemantau output berguna bagi strim aktif yang perlu didayakan secara pilihan. Mengesan strim yang terus menghantar ketulan tetapi kekal di bawah kadar output pembantu yang dikonfigurasikan; denyutan jantung, peristiwa penggunaan, delta kosong serta fasa alat/penaakulan tidak dianggap sebagai kemajuan. Berasingan daripada tamat masa melahu dan tarikh akhir mutlak. |
STREAM_THROUGHPUT_WATCHDOG_WARMUP_MS |
30000 |
src/lib/resilience/settings/normalize.ts |
Tempoh ihsan sebelum penilaian daya pemprosesan, dihadkan kepada 0–600000 ms. |
STREAM_THROUGHPUT_WATCHDOG_WINDOW_MS |
30000 |
src/lib/resilience/settings/normalize.ts |
Tetingkap output berguna bergulir, dihadkan kepada 1000–600000 ms; satu tetingkap lengkap diperlukan sebelum dihentikan. |
STREAM_THROUGHPUT_WATCHDOG_MIN_BYTES_PER_SECOND |
4 |
src/lib/resilience/settings/normalize.ts |
Kadar bait minimum output pembantu UTF-8 (proksi token konservatif), dihadkan kepada 1–1000000. |
STREAM_THROUGHPUT_WATCHDOG_MIN_USEFUL_BYTES |
1 |
src/lib/resilience/settings/normalize.ts |
Sampel output berguna bukan sifar minimum yang dianggap boleh diukur, dihadkan kepada 1–1000000 bait. |
HEALTHCHECK_STAGGER_MS |
3000 |
src/lib/tokenHealthCheck.ts |
Selang berperingkat (ms) antara semakan kesihatan token penyedia semasa permulaan. |
HEALTHCHECK_JITTER_MIN_MS |
500 |
src/lib/tokenHealthCheck.ts |
Jiter rawak minimum (ms) yang ditambahkan di atas HEALTHCHECK_STAGGER_MS antara semakan kesihatan token penyedia untuk mengelakkan ledakan (Isu #1220). |
HEALTHCHECK_JITTER_MAX_MS |
5000 |
src/lib/tokenHealthCheck.ts |
Jiter rawak maksimum (ms) yang ditambahkan di atas HEALTHCHECK_STAGGER_MS antara semakan kesihatan token penyedia untuk mengelakkan ledakan (Isu #1220). |
HEALTHCHECK_BATCH_SIZE |
20 |
src/lib/tokenHealthCheck.ts |
Saiz kelompok semakan serentak untuk imbasan pemeriksaan kesihatan token semasa permulaan; nilai yang lebih besar menyemak lebih banyak sambungan secara selari, manakala nilai yang lebih kecil mengurangkan beban mendadak (Isu #7875, regresi bagi #7719). |
REQUEST_RETRY |
2 |
src/sse/services/cooldownAwareRetry.ts |
Bilangan percubaan semula automatik bagi respons tempoh bertenang pada skop model sebelum mengembalikan ralat kepada klien. |
MAX_RETRY_INTERVAL_SEC |
30 |
src/sse/services/cooldownAwareRetry.ts |
Selang masa tunggu balik maksimum (saat) antara percubaan semula semasa tempoh bertenang. Dihadkan oleh nilai ini tanpa mengira Retry-After daripada huluan. |
HEADROOM_URL |
http://localhost:8787 |
src/lib/headroom/detect.ts |
URL proksi penjimat token Headroom. Kitaran hayat papan pemuka (api/headroom/*) memulakan CLI headroom-ai setempat pada antara muka gelung balik secara lalai; ubah hanya untuk menghala ke proksi sidecar Docker luaran. |
Pemalar penalaan pemulihan strim
Tingkah laku penahanan pemulihan ditala melalui pemalar berkod keras dalam
open-sse/config/constants.ts (STREAM_RECOVERY), yang ditunjukkan di sini sebagai rujukan —
mengubahnya memerlukan pengeditan kod, bukan pemboleh ubah persekitaran:
STREAM_RECOVERY.HOLDBACK_MS = 750— tempoh tetingkap SSE pembukaan ditahan supaya pemotongan awal boleh dicuba semula sebelum sebarang bait diserahkan kepada klien.STREAM_RECOVERY.BUFFER_MAX_BYTES = 65536— had keras bagi tetingkap yang ditahan; serahkan (kosongkan penimbal + laluan terus) sebaik sahaja bait sebanyak ini terkumpul, tanpa mengira pemasa.STREAM_RECOVERY.EARLY_RETRY_MAX = 4— bilangan maksimum pembukaan semula telus bagi strim huluan selagi penahanan masih belum diserahkan.
Had kadar tetingkap gelangsar bagi setiap penyedia (tiada pemboleh ubah persekitaran): sandaran had kadar tetingkap gelangsar bagi setiap penyedia yang diport daripada FCC wujud dalam kod (
open-sse/services/providerDefaultRateLimit.ts, disambungkan melaluiopen-sse/services/rateLimitManager.ts) tetapi disertakan dengan peta lalai kosong dan pada masa ini tiada pemboleh ubah persekitaran pengendali — ia hanya didayakan melalui cangkuk ujian / pengeditan kod. Ia sengaja tidak disenaraikan dalam jadual di atas. Pengehad geganti bagi setiap(token, IP)yang sememangnya mempunyai tetapan ialahRELAY_IP_PER_MINUTE(§3 Rangkaian & Port).
22. Penyahpepijatan
Caution
Pemboleh ubah ini menghasilkan output terperinci dan mungkin membocorkan data sensitif. Jangan sekali-kali dayakan dalam persekitaran produksi.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
CURSOR_DEBUG |
(tidak ditetapkan) | open-sse/executors/cursor.ts |
Tetapkan kepada 1 untuk mendayakan log pelaksana Cursor yang terperinci (ketulan SSE yang dinyahkod dan sebagainya). |
CURSOR_STREAM_DEBUG |
(tidak ditetapkan) | open-sse/executors/cursor.ts |
Alias serasi ke belakang bagi CURSOR_DEBUG. |
CURSOR_DUMP_FILE |
(tidak ditetapkan) | open-sse/executors/cursor.ts |
Laluan fail pilihan yang menerima ketulan mentah Cursor yang dinyahkod apabila CURSOR_DEBUG=1. |
CURSOR_STREAM_TIMEOUT_MS |
300000 |
open-sse/executors/cursor.ts |
Tamat masa melahu strim (ms) untuk pelaksana Cursor. |
CURSOR_KV_GRACE_MS |
2000 |
open-sse/executors/cursor.ts |
Tempoh kelonggaran (ms) selepas penamat lembut composer kv_after_text apabila bait masih dibufer — memberikan masa kepada panggilan alat exec_mcp di penghujung untuk melengkapkan bingkainya. |
CURSOR_TOOL_DIRECTIVE |
didayakan (!== "0") |
open-sse/executors/cursor.ts |
Arahan komit alat yang memastikan composer-2.5 mengeluarkan panggilan alat dengan andal. Tetapkan kepada 0 untuk menyahdayakan. |
OMNIROUTE_SYSTEM_INSTRUCTION_APPEND |
(tidak ditetapkan) | open-sse/translator/request/claude-to-openai.ts, open-sse/translator/response/openai-to-claude.ts |
Teks gesaan sistem yang ditentukan oleh pengendali, ditambahkan pada mesej sistem SELEPAS terjemahan (suntikan pascaterjemahan), lalu mencapai laluan codex/Responses dan /v1/messages. Turut digunakan sebagai awalan arahan yang dibuang daripada blok mukadimah sistem yang digemakan. Biarkan tidak ditetapkan untuk menyahdayakan. |
CURSOR_IMAGE_FETCH_TIMEOUT_MS |
15000 |
open-sse/utils/cursorImages.ts |
Tamat masa pengambilan bagi setiap imej (ms) untuk input penglihatan image_url jauh. |
CURSOR_STATE_DB_PATH |
(diperiksa) | open-sse/utils/cursorVersionDetector.ts |
Mengatasi carian pangkalan data keadaan Cursor IDE yang digunakan untuk pengesanan versi IDE. |
CURSOR_AGENT_CLI_VERSION |
(kesan / tetapkan) | open-sse/utils/cursorAgentCliVersion.ts |
ID binaan Agent CLI (YYYY.MM.DD-<hash>) untuk x-cursor-client-version: cli-… pada Agent Run. |
CURSOR_AGENT_BIN |
(tidak ditetapkan) | open-sse/handlers/imageGeneration/providers/cursorAgentImage.ts |
Laluan ke perduaan Cursor Agent yang digunakan untuk penjanaan imej. Jika tidak ditetapkan, pengendali menggunakan providerSpecificData.agentBin, kemudian PATH. |
CURSOR_IMG_TIMEOUT_MS |
210000 |
open-sse/handlers/imageGeneration/providers/cursorAgentImage.ts |
Masa jam dinding bagi setiap imej (ms) untuk tugas imej Cursor Agent. |
CURSOR_IMG_MAX_CONCURRENT |
2 |
open-sse/handlers/imageGeneration/providers/cursorAgentImage.ts |
Had keserentakan tempat duduk dikongsi untuk tugas imej Cursor. |
CURSOR_IMG_MODEL |
permintaan / auto |
open-sse/handlers/imageGeneration/providers/cursorAgentImage.ts |
Mengatasi --model Cursor CLI untuk tugas imej. |
UC_IMAGE_POLL_INTERVAL_MS |
2000 |
open-sse/handlers/imageGeneration/providers/ucImage.ts |
Kekerapan peninjauan hasil penjanaan imej UC (uncensored.com) (ms). |
UC_IMAGE_POLL_TIMEOUT_MS |
60000 |
open-sse/handlers/imageGeneration/providers/ucImage.ts |
Masa jam dinding peninjauan hasil penjanaan imej UC (ms). |
UC_VIDEO_POLL_INTERVAL_MS |
3000 |
open-sse/handlers/videoGeneration/providers/ucVideo.ts |
Kekerapan peninjauan hasil penjanaan video UC (uncensored.com) (ms). |
UC_VIDEO_POLL_TIMEOUT_MS |
300000 |
open-sse/handlers/videoGeneration/providers/ucVideo.ts |
Masa jam dinding peninjauan hasil penjanaan video UC (ms). |
CURSOR_DATA_DIR |
(diperiksa) | open-sse/utils/cursorAgentCliVersion.ts |
Mengatasi direktori data Cursor Agent CLI (…/versions/<id>); pemboleh ubah yang sama digunakan oleh ejen rasmi. |
CURSOR_TOKEN |
(tidak ditetapkan) | scripts/ad-hoc/cursor-tap.cjs |
Token pembawa Cursor langsung yang digunakan oleh alat pembangun. |
OMNIROUTE_LOG_REQUEST_SHAPE |
dinyahdayakan (ikut serta melalui "1") |
src/app/api/v1/chat/completions/route.ts |
Log penanda jenis/panjang kandungan untuk muatan sembang yang besar apabila "1" ditetapkan. Dimatikan secara lalai untuk mengurangkan hingar log. |
DEBUG_RESPONSES_SSE_TO_JSON |
(tidak ditetapkan) | open-sse/handlers/responseTranslator.ts |
Tetapkan kepada true untuk merekodkan butiran terjemahan SSE→JSON Responses API. |
DEBUG_CLAUDE_NONSTREAM |
(tidak ditetapkan) | open-sse/handlers/responseTranslator.ts |
Tetapkan kepada true untuk mendedahkan ketulan textContent kosong dalam laluan terjemahan respons Claude (penyahpepijatan sahaja). |
NEXT_PUBLIC_OMNIROUTE_E2E_MODE |
(tidak ditetapkan) | abah-abah ujian E2E | Tetapkan kepada true untuk mendayakan mod ujian E2E (pengesahan dilonggarkan, cangkuk ujian). |
23. Integrasi GitHub
Benarkan pengguna melaporkan isu secara langsung daripada Dashboard.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
GITHUB_ISSUES_REPO |
(tidak ditetapkan) | src/app/api/v1/issues/report/route.ts |
Repositori dalam format owner/repo. |
GITHUB_ISSUES_TOKEN |
(tidak ditetapkan) | src/app/api/v1/issues/report/route.ts |
Token Akses Peribadi GitHub dengan skop issues:write. |
GITHUB_TOKEN |
(tidak ditetapkan) | pembantu pengelasan isu / ejen awan | Token akses GitHub generik yang digunakan sebagai pilihan sandaran untuk GITHUB_ISSUES_TOKEN dan digunakan oleh pembantu ejen awan dalam src/lib/cloudAgent/*. |
Senario Penggunaan
Untuk panduan SRE bahagian belakang geganti (tingkah laku ts/bifrost/auto, penempatan 9router berbanding CLIProxyAPI, dan strategi sandaran daya pemprosesan tinggi), lihat Strategi Bahagian Belakang Geganti.
Pembangunan Setempat Minimum
JWT_SECRET=$(openssl rand -base64 48)
API_KEY_SECRET=$(openssl rand -hex 32)
INITIAL_PASSWORD=dev123
PORT=20128
NODE_ENV=development
Pengeluaran 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
Persekitaran Terasing / 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 dengan Proksi Songsang (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. Kotak Pasir Kemahiran (v3.8.0+)
Had dan kawalan keselamatan yang digunakan apabila rangka kerja Kemahiran (src/lib/skills/) melaksanakan automasi takrifan pengguna dalam persekitaran kotak pasir.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
SKILLS_SANDBOX_TIMEOUT_MS |
10000 (10 s) |
src/lib/skills/builtins.ts |
Tamat masa jam dinding bagi setiap pelaksanaan untuk kod kemahiran dalam kotak pasir. Had mutlak; apa-apa yang mengambil masa lebih lama akan dihentikan. |
SKILLS_EXECUTION_TIMEOUT_MS |
(kembali kepada SKILLS_SANDBOX_TIMEOUT_MS) |
src/lib/skills/ |
Tamat masa orkestrasi kemahiran peringkat tinggi. Tetapkan lebih tinggi daripada SKILLS_SANDBOX_TIMEOUT_MS untuk membenarkan aliran kerja berbilang langkah. |
SKILLS_MAX_FILE_BYTES |
1048576 (1 MB) |
src/lib/skills/builtins.ts |
Bilangan bait maksimum yang boleh dibaca oleh sesuatu kemahiran daripada mana-mana satu fail dalam kotak pasir. |
SKILLS_MAX_HTTP_RESPONSE_BYTES |
256000 (250 KB) |
src/lib/skills/builtins.ts |
Bilangan bait maksimum yang ditangkap daripada mana-mana satu respons HTTP dalam sesuatu kemahiran. |
SKILLS_MAX_SANDBOX_OUTPUT_CHARS |
100000 |
src/lib/skills/builtins.ts |
Had mutlak bagi aksara stdout/stderr yang dikembalikan daripada panggilan kotak pasir. |
SKILLS_SANDBOX_NETWORK_ENABLED |
false |
src/lib/skills/builtins.ts |
Tetapkan 1/true untuk membenarkan rangkaian keluar dari dalam kotak pasir. Secara lalai, ia diasingkan demi keselamatan. |
SKILLS_ALLOWED_SANDBOX_IMAGES |
(kosong) | src/lib/skills/builtins.ts |
Senarai imej bekas yang dibenarkan untuk pelaksanaan kotak pasir, dipisahkan dengan koma. Kosong bermaksud lalai terbina dalam sahaja. |
SKILLS_SANDBOX_DOCKER_IMAGE |
(lalai terbina dalam) | src/lib/skills/ |
Imej bekas yang digunakan semasa menghasilkan kotak pasir berasaskan Docker. Gantikan untuk menetapkan imej asas tersuai yang diperkukuh. |
SKILLS_SANDBOX_RUNTIME |
auto |
src/lib/skills/sandbox.ts, src/lib/skills/containerProvider.ts |
Masa jalan bekas untuk pengotakpasiran kemahiran: auto | docker | apple | wsl | orbstack | podman. auto memilih masa jalan terpasang yang terbaik bagi setiap OS hos (Apple Container/OrbStack pada macOS, WSL Container pada Windows, Podman pada Linux), dengan Docker sebagai sandaran. |
Caution
Mendayakan
SKILLS_SANDBOX_NETWORK_ENABLED=truemembuka laluan trafik keluar daripada kod kemahiran sewenang-wenangnya. Gandingkan denganOUTBOUND_SSRF_GUARD_ENABLED=truedan dasarCORS_ORIGIN/proksi yang ketat dalam pelaksanaan dikongsi.
25. Kuota Penyedia, Terowong, Sandaran & Lain-lain Masa Jalan
Titik akhir kuota penyedia, terowong rangkaian (Tailscale, Ngrok, proksi nyahpepijat MITM), kumpulan egress 1Proxy, sandaran pangkalan data dan penggantian kecil bagi setiap ciri yang dirujuk oleh lapisan pelaksana atau skrip.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
REDIS_URL |
redis://localhost:6379 |
src/shared/utils/rateLimiter.ts |
Rentetan sambungan Redis untuk bahagian belakang pengehad kadar. |
ALIBABA_CODING_PLAN_HOST |
(hos pengeluaran) | open-sse/services/bailianQuotaFetcher.ts |
Gantikan hos yang digunakan untuk mendapatkan kuota pelan pengekodan Alibaba Bailian. |
ALIBABA_CODING_PLAN_QUOTA_URL |
diperoleh daripada hos | open-sse/services/bailianQuotaFetcher.ts |
Penggantian URL kuota penuh untuk Alibaba Bailian. |
QWEN_CLOUD_COOKIE |
(tidak ditetapkan) | open-sse/services/qwenTokenPlanQuotaFetcher.ts |
Kuki sesi konsol untuk get laluan kuota Pelan Token peribadi Qwen Cloud / Model Studio (kunci API inferens tidak boleh membacanya). Salin keseluruhan pengepala permintaan Cookie — yang mengandungi login_qwencloud_ticket — daripada mana-mana panggilan api.json kepada cs-data.qwencloud.com di home.qwencloud.com › Billing › Subscription (F12 › Network). Sensitif dan terikat pada sesi; utamakan medan Papan Pemuka qwenCloudCookie bagi setiap sambungan. |
QWEN_CLOUD_SEC_TOKEN |
(tidak ditetapkan) | open-sse/services/qwenTokenPlanQuotaFetcher.ts |
Penggantian manual sec_token untuk get laluan konsol Pelan Token. Sensitif; apabila tidak ditetapkan, pengambil mendapatkannya daripada HTML papan pemuka menggunakan kuki. |
QWEN_TOKEN_PLAN_HOST |
https://cs-data.qwencloud.com |
open-sse/services/qwenTokenPlanQuotaFetcher.ts |
Penggantian hos get laluan untuk pengambil kuota Pelan Token peribadi (cth. bailian-singapore-cs.alibabacloud.com untuk konsol Model Studio). |
QWEN_TOKEN_PLAN_DASHBOARD_URL |
https://home.qwencloud.com/ |
open-sse/services/qwenTokenPlanQuotaFetcher.ts |
URL papan pemuka yang digunakan untuk mendapatkan sec_token daripada HTML selepas log masuk. |
ALIBABA_FREE_TIER_VISION_FE_PATH |
/costing-balance/free-quota-image-video |
open-sse/services/alibabaFreeTierQuotaFetcher.ts |
Penggantian laluan bahagian hadapan konsol untuk mendapatkan kuota penglihatan/media peringkat percuma Alibaba Model Studio. |
ALIBABA_FREE_TIER_MULTIMODAL_FE_PATH |
/costing-balance/free-quota-multimodal |
open-sse/services/alibabaFreeTierQuotaFetcher.ts |
Penggantian laluan bahagian hadapan konsol untuk mendapatkan kuota multimodal peringkat percuma Alibaba Model Studio. |
ALIBABA_FREE_TIER_AUDIO_FE_PATH |
/costing-balance/free-quota-audio |
open-sse/services/alibabaFreeTierQuotaFetcher.ts |
Penggantian laluan bahagian hadapan konsol untuk mendapatkan kuota audio peringkat percuma Alibaba Model Studio. |
ALIBABA_FREE_TIER_ALLOWLIST_PATH |
(tidak ditetapkan) | open-sse/services/alibabaFreeTierAllowlist.ts |
Laluan pilihan kepada fail JSON setempat yang menggantikan senarai dibenarkan terbina dalam bagi model teks peringkat percuma Alibaba. Jika tidak tersedia, menggunakan $DATA_DIR/alibaba-free-tier-allowlist.json, kemudian config/alibaba-free-tier-allowlist.json. |
CONTEXT_RESERVE_TOKENS |
1024 |
open-sse/services/contextManager.ts |
Token yang diperuntukkan bagi output pelengkapan semasa mengira belanjawan gesaan. |
CONTEXT_KEEP_LATEST_IMAGES |
2 |
open-sse/services/contextManager.ts |
Bilangan imej sebaris terbaharu yang perlu dikekalkan apabila memangkas imej lama agar muat dalam tetingkap konteks (#8560). |
MODEL_ALIAS_COMPAT_ENABLED |
didayakan | open-sse/services/model.ts |
Togol lapisan keserasian alias model legasi yang digunakan oleh klien lama. |
OMNIROUTE_EMERGENCY_FALLBACK |
didayakan | open-sse/services/emergencyFallback.ts |
Tetapkan kepada false (atau 0) untuk menyahdayakan sandaran kecemasan apabila belanjawan habis, yang menghalakan semula permintaan yang gagal kepada model percuma nvidia/openai/gpt-oss-120b. Keutamaan berkesan ialah penggantian DB Bendera Ciri > pemboleh ubah persekitaran > lalai; jika tidak tersedia, perkhidmatan kembali menggunakan nilai mentah pemboleh ubah persekitaran. |
COMMAND_CODE_CALLBACK_PORT |
(tidak ditetapkan) | src/app/api/providers/command-code/auth/shared.ts |
Port setempat yang digunakan untuk panggil balik gaya OAuth daripada pembantu CLI Command Code. |
COMMAND_CODE_VERSION |
0.33.2 |
open-sse/executors/commandCode.ts |
Nilai yang dihantar sebagai pengepala x-command-code-version kepada perkhidmatan huluan Command Code. Gantikan untuk menaik taraf versi CLI. |
COMMANDCODE_API_URL |
https://api.commandcode.ai |
open-sse/services/usage/command-code.ts |
URL asas bagi perkhidmatan huluan penggunaan/kuota Command Code yang digunakan oleh telemetri pengambil kuota telefon pintar. Gantikan untuk API Command Code yang dihoskan sendiri/alternatif. |
MITM_LOCAL_PORT |
443 |
src/mitm/server.cjs |
Port pengikatan setempat untuk proksi nyahpepijat MITM. |
MITM_DISABLE_TLS_VERIFY |
0 |
src/mitm/server.cjs |
Tetapkan kepada 1 untuk menyahdayakan pengesahan TLS huluan (pembangunan sahaja). |
MITM_IDLE_TIMEOUT_MS |
60000 |
src/mitm/socketTimeouts.ts, src/mitm/server.cjs |
Tamat masa soket melahu (ms) untuk sambungan yang diproksikan; soket yang terus melahu selepas tempoh ini akan ditamatkan untuk mengelakkan kebocoran terowong separa terbuka. |
MITM_VERBOSE |
1 |
src/mitm/server.cjs, src/mitm/_internal/bypass.cjs |
Tahap perincian log keputusan penghalaan: 0 menyenyapkan log, manakala nilai yang lebih tinggi merekodkan lebih banyak keputusan pintasan/penghalaan. |
MITM_ROOT_CA_ENABLED |
false |
src/mitm/manager.ts |
Tetapkan kepada true untuk memilih menyertai model sijil CA akar + sijil daun per hos (#6684). Pemasangan baharu mendapatkannya secara automatik; pemasangan dengan sijil daun legasi dipercayai yang sedia ada akan mengekalkan sijil SAN tetap legasi melainkan memilih untuk menyertai. |
MITM_CERT_MODE |
legacy |
src/mitm/manager.ts, src/mitm/server.cjs |
Ditetapkan OLEH pengurus MITM untuk proses proksi yang dicetuskan (root-ca | legacy) — mencerminkan keputusan migrasi sijil; tidak dimaksudkan untuk ditetapkan secara manual. |
OMNIROUTE_NO_SUDO |
0 |
src/mitm/systemCommands.ts |
Tetapkan kepada 1 (benar) untuk membuang sudo di hadapan arahan kepercayaan sijil MITM — bagi penggunaan tanpa root / ruang nama pengguna apabila pengendali mempercayai CA secara manual (misalnya melalui mekanisme sijil CA tambahan Node). |
SKIP_ANTIGRAVITY_DNS |
(tidak ditetapkan) | src/mitm/dns/provision.ts |
Tetapkan kepada true untuk melangkau sepenuhnya penyediaan entri DNS /etc/hosts bagi nama hos proksi Antigravity — untuk bekas yang tidak mempunyai akses sudo/root. |
OMNIROUTE_SKIP_DNS_WRITE |
(tidak ditetapkan) | src/mitm/dns/dnsConfig.ts |
Tetapkan kepada 1 untuk melangkau penulisan ke fail hos semasa menambah/mengalih keluar entri DNS — untuk persekitaran ujian berkotak pasir atau baca sahaja. |
OMNIROUTE_SKIP_SYSTEM_TRUST |
0 |
src/mitm/cert/install.ts, src/mitm/tproxy/caTrust.ts |
Perlindungan untuk ujian/CI sahaja: tetapkan kepada 1 untuk menjadikan pemasangan/nyahpasang kepercayaan sijil sebagai operasi tanpa kesan supaya suit tidak pernah mengubah suai stor kepercayaan OS. Ditetapkan secara automatik oleh persediaan ujian dan aliran kerja CI. |
CHANGELOG_BASE_REF |
(auto) | scripts/check/check-changelog-integrity.mjs |
Rujukan asas eksplisit untuk get anti-pemadaman CHANGELOG (lalai kepada cabang asas PR dalam CI, atau release/v* tertinggi). |
FREE_PROXY_AUTO_SYNC_ENABLED |
false |
src/lib/freeProxyProviders/scheduler.ts |
Tetapkan kepada true untuk mendayakan penjadual penyegerakan automatik kumpulan proksi percuma di latar belakang. Penyertaan secara pilihan, dilumpuhkan secara lalai. |
FREE_PROXY_AUTO_SYNC_INTERVAL_MS |
1800000 |
src/lib/freeProxyProviders/scheduler.ts |
Selang penyegerakan automatik dalam milisaat (lalai 30 minit). |
FREE_PROXY_1PROXY_ENABLED |
true |
src/lib/freeProxyProviders/oneproxy.ts |
Dayakan sumber proksi percuma 1proxy. Tetapkan kepada false untuk melumpuhkannya. |
FREE_PROXY_1PROXY_API_URL |
(lihat oneproxy.ts) | src/lib/freeProxyProviders/oneproxy.ts |
Penggantian URL API 1proxy. |
FREE_PROXY_1PROXY_MAX |
500 |
src/lib/freeProxyProviders/oneproxy.ts |
Bilangan maksimum proksi yang diambil bagi setiap penyegerakan daripada 1proxy. |
FREE_PROXY_1PROXY_MIN_QUALITY |
50 |
src/lib/freeProxyProviders/oneproxy.ts |
Ambang skor kualiti minimum untuk import 1proxy. |
FREE_PROXY_PROXIFLY_ENABLED |
true |
src/lib/freeProxyProviders/proxifly.ts |
Dayakan sumber proksi percuma Proxifly. Tetapkan kepada false untuk melumpuhkannya. |
FREE_PROXY_PROXIFLY_QUANTITY |
100 |
src/lib/freeProxyProviders/proxifly.ts |
Bilangan proksi untuk diambil bagi setiap penyegerakan Proxifly. |
FREE_PROXY_PROXIFLY_ANONYMITY |
elite |
src/lib/freeProxyProviders/proxifly.ts |
Penapis tahap ketanpanamaan untuk Proxifly (elite, anonymous, transparent). |
FREE_PROXY_IPLOCATE_ENABLED |
false |
src/lib/freeProxyProviders/iplocate.ts |
Dayakan sumber proksi percuma IPLocate. Pilihan ikut serta sahaja. |
FREE_PROXY_IPLOCATE_BASE_URL |
https://raw.githubusercontent.com/iplocate/free-proxy-list/main/protocols |
src/lib/freeProxyProviders/iplocate.ts |
Gantian URL asas senarai proksi IPLocate. |
FREE_PROXY_WEBSHARE_ENABLED |
true |
src/lib/freeProxyProviders/webshare.ts |
Dayakan sumber kumpulan proksi Webshare. Tetapkan kepada false untuk melumpuhkannya; FREE_PROXY_WEBSHARE_API_KEY juga perlu ditetapkan. |
FREE_PROXY_WEBSHARE_API_KEY |
(tiada) | src/lib/freeProxyProviders/webshare.ts |
Token API akaun Webshare (Authorization: Token <key>). Diperlukan — penyedia kekal dilumpuhkan tanpanya. |
FREE_PROXY_WEBSHARE_API_URL |
https://proxy.webshare.io/api/v2/proxy/list/ |
src/lib/freeProxyProviders/webshare.ts |
Gantian URL API senarai proksi Webshare. |
FREE_PROXY_WEBSHARE_MAX |
500 |
src/lib/freeProxyProviders/webshare.ts |
Bilangan maksimum proksi yang diimport bagi setiap penyegerakan Webshare. |
NEXT_PUBLIC_VERCEL_RELAY_ENABLED |
true |
src/app/(dashboard)/…/ProxyPoolTab.tsx |
Tunjukkan/sembunyikan butang Deploy Vercel Relay dalam tab Proxy Pool. |
VERCEL_API_BASE |
https://api.vercel.com |
src/app/api/settings/proxy/vercel-deploy/route.ts |
Gantian URL asas API Vercel (untuk pengujian). |
NEXT_PUBLIC_VERCEL_RELAY_DEFAULT_PROJECT |
omniroute-relay |
src/app/(dashboard)/…/VercelRelayModal.tsx |
Nama projek lalai yang dipraisi dalam modal penggunaan Vercel Relay. |
TAILSCALE_BIN |
(dikesan secara automatik) | src/lib/tailscaleTunnel.ts |
Laluan eksplisit ke perduaan tailscale. |
TAILSCALED_BIN |
(auto-kesan) | src/lib/tailscaleTunnel.ts |
Laluan eksplisit kepada perduaan daemon tailscaled. |
TAILSCALE_AUTHKEY |
(tidak ditetapkan) | src/lib/tailscaleTunnel.ts |
Kunci pengesahan Tailscale prakongsi untuk tailscale up tanpa interaksi / tanpa paparan (diberikan melalui --auth-key=). Apabila tidak ditetapkan, log masuk akan kembali menggunakan URL pengesahan pelayar interaktif. |
NGROK_AUTHTOKEN |
(tidak ditetapkan) | src/lib/ngrokTunnel.ts |
Mengesahkan terowong ngrok keluar. |
DB_BACKUP_MAX_FILES |
20 |
src/lib/db/backup.ts |
Bilangan maksimum fail sandaran SQLite yang dikekalkan oleh pembersihan sandaran manual/berjadual. Syot kilat migrasi dialamatkan berdasarkan kandungan dan digunakan semula untuk keadaan DB yang serupa; syot kilat tersebut tidak dipangkas dalam tetingkap migrasi serentak. Mengatasi nilai yang disimpan daripada Tetapan → Pengekalan sandaran pangkalan data. |
DB_BACKUP_RETENTION_DAYS |
0 |
src/lib/db/backup.ts |
Umur maksimum (hari) yang dikekalkan oleh pembersihan sandaran manual/berjadual. 0 menyahdayakan pemangkasan berdasarkan umur. Syot kilat migrasi tidak dipangkas dalam tetingkap migrasi serentak. Mengatasi nilai yang disimpan daripada Tetapan → Pengekalan sandaran pangkalan data. |
OMNIROUTE_BACKUP_SCHEDULE_JOB_INTERVAL_MS |
30000 |
src/lib/jobs/backupScheduleJob.ts |
Selang detik (ms) bagi tugas sisi pelayan yang melaksanakan backup-schedule.json. Nilai ini mesti kekal jauh di bawah kegranularan cron 1 minit; nilai di bawah 5000 atau yang tidak dapat dihuraikan akan kembali kepada 30000. |
CONTAINER_HOST |
docker |
scripts/check-permissions.sh |
Petunjuk masa jalan bekas untuk pemeriksaan kebenaran titik masuk. Tetapkan kepada podman untuk sebarang topologi Podman. Oleh sebab bekas tidak dapat menentukan sama ada enjin itu setempat atau dicapai melalui Podman Machine, amaran tersebut kekal neutral terhadap topologi dan merujuk kepada contrib/podman/README.md. |
QUOTA_STORE_DRIVER |
sqlite |
src/lib/quota/storeFactory.ts |
Bahagian belakang stor penggunaan perkongsian kuota: sqlite (lalai) atau redis. |
QUOTA_STORE_REDIS_URL |
(tidak ditetapkan) | src/lib/quota/storeFactory.ts |
Rentetan sambungan Redis yang digunakan apabila QUOTA_STORE_DRIVER=redis (cth. redis://localhost:6379). |
QUOTA_SATURATION_THRESHOLD |
0.5 |
src/lib/quota/enforce.ts |
Nisbah ketepuan kumpulan (0..1); apabila mencapai/melebihinya, kumpulan memasuki mod ketat (tiada peminjaman). |
QUOTA_SOFT_DEPRIORITIZE_FACTOR |
0.7 |
open-sse/services/combo.ts |
Pengganda skor (0..1) yang digunakan pada sasaran apabila dasar kuota lembut menurunkan keutamaannya. |
STATUS_SOFT_DEPRIORITIZE_FACTOR |
0.5 |
open-sse/services/combo/autoStrategy.ts |
Pengganda skor (0..1) yang digunakan pada penyedia yang telah kehabisan sumber (credits_exhausted/rate_limited) dalam pemarkahan auto-kombo apabila ambang kuota prapenerbangan DIMATIKAN (#4540). |
QUOTA_CONSUMPTION_RETENTION_DAYS |
14 |
src/lib/db/quotaConsumption.ts |
Tempoh pengekalan (hari) untuk bekas quota_consumption sebelum GC (gcQuotaConsumption). |
QUOTA_PREFLIGHT_CUTOFF_ENABLED |
false |
src/lib/resilience/settings.ts |
Pilihan ikut serta (DIMATIKAN secara lalai): mendayakan ambang kuota keras penghalaan automatik yang menggugurkan calon berkuota rendah sebelum pemarkahan. |
OMNIROUTE_AUTO_FREE_FALLBACK_TO_FULL_POOL |
false |
open-sse/services/autoCombo/virtualFactory.ts |
Pilihan ikut serta (DIMATIKAN secara lalai): apabila penapis auto/<category>:<tier> tidak sepadan dengan mana-mana calon yang tersambung, pulihkan tingkah laku lama dengan kembali kepada kumpulan penuh (tanpa penapisan), dan bukannya mengembalikan kumpulan kosong. Tetapan lalai DIMATIKAN menjadikan :free bermaksud "peringkat percuma sahaja". |
OMNIROUTE_CHAOS_MAX_PANEL |
5 |
open-sse/services/autoCombo/virtualFactory.ts |
Had saiz panel (diapit pada 1–10) untuk varian siaran auto/*:chaos — satu permintaan disebarkan kepada tidak lebih daripada bilangan model daripada pelbagai penyedia ini. |
OMNIROUTE_CHAOS_MIN_PANEL |
(lalai enjin) | open-sse/services/autoCombo/virtualFactory.ts |
Penalaan saiz panel minimum yang dimajukan kepada pengendali siaran chaos; jika tidak ditetapkan, nilai lalai enjin dikekalkan. |
OMNIROUTE_CHAOS_PANEL_TIMEOUT_MS |
(lalai enjin) | open-sse/services/autoCombo/virtualFactory.ts |
Tamat masa mutlak (ms) untuk keseluruhan penyebaran panel chaos; jika tidak ditetapkan, nilai lalai enjin dikekalkan. |
GROK_AUTH_PATH |
~/.grok/auth.json |
open-sse/services/grokQuotaFetcher.ts |
Laluan ke auth.json Grok CLI yang digunakan untuk mendapatkan kuota mingguan grok-web; ubah suai untuk ujian atau pemasangan CLI bukan standard. |
AGENTBRIDGE_UPSTREAM_CA_CERT |
(tidak ditetapkan) | src/mitm/manager.ts |
Sijil CA tambahan (PEM) yang dipercayai untuk sambungan TLS huluan AgentBridge. |
INSPECTOR_BUFFER_SIZE |
1000 |
src/mitm/inspector/buffer.ts |
Bilangan maksimum permintaan yang ditangkap dan disimpan dalam penimbal gelang Pemeriksa Trafik. |
INSPECTOR_MAX_BODY_KB |
1024 |
src/mitm/inspector/buffer.ts |
Saiz maksimum kandungan permintaan/respons yang ditangkap (KB) sebelum dipenggal. |
INSPECTOR_HTTP_PROXY_PORT |
8080 |
src/mitm/inspector/httpProxyServer.ts |
Port setempat untuk proksi HTTP Pemeriksa Trafik. |
INSPECTOR_HTTP_PROXY_AUTOSTART |
false |
src/mitm/inspector/httpProxyServer.ts |
Mulakan proksi HTTP pemeriksa secara automatik semasa but. |
INSPECTOR_TLS_INTERCEPT |
false |
src/lib/inspector/captureState.ts |
Dayakan pemintasan TLS (MITM) untuk trafik HTTPS yang ditangkap. |
INSPECTOR_LLM_HOSTS_EXTRA |
(tidak ditetapkan) | src/lib/inspector/captureState.ts |
Nama hos tambahan (dipisahkan dengan koma) yang dianggap sebagai titik akhir LLM untuk tangkapan. |
INSPECTOR_MASK_SECRETS |
true |
src/mitm/inspector/buffer.ts |
Samarkan rahsia (pengepala pengesahan / kunci API) dalam trafik yang ditangkap. |
INSPECTOR_SYSTEM_PROXY_GUARD_MINUTES |
30 |
src/app/api/tools/traffic-inspector/capture-modes/system-proxy/route.ts |
Bilangan minit sebelum pelindung proksi sistem mengembalikan tetapan proksi OS secara automatik. |
INSPECTOR_INTERNAL_INGEST_TOKEN |
(automatik) | src/app/api/tools/traffic-inspector/internal/ingest/route.ts |
Token yang mengesahkan pengingesan tangkapan dalaman ke dalam pemeriksa. |
PLAYGROUND_COMPARE_MAX_COLUMNS |
4 |
src/app/(dashboard)/dashboard/playground/ |
Bilangan maksimum lajur sebelah-menyebelah dalam mod perbandingan Playground. |
PLAYGROUND_IMPROVE_PROMPT_DEFAULT_MODEL |
(tidak ditetapkan) | src/app/(dashboard)/dashboard/playground/ |
Model lalai untuk tindakan 'perbaik gesaan' Playground (kembali menggunakan model aktif apabila tidak ditetapkan). |
BIFROST_ENABLED |
1 |
src/app/api/v1/relay/chat/completions/bifrost/route.ts |
Suis utama untuk mematikan proksi sidecar Bifrost. Apabila ditetapkan kepada 0, laluan mengembalikan 503 dengan pengepala X-Bifrost-Killswitch dan pengendali dialihkan ke laluan TS. Gunakan untuk menyahdayakan sidecar tanpa melaksanakan semula pengerahan (insiden penghala tahap 1, penggiliran kunci). |
BIFROST_BASE_URL |
(tidak ditetapkan) | src/app/api/v1/relay/chat/completions/bifrost/route.ts |
Apabila ditetapkan, laluan proksi sidecar Bifrost memajukan trafik /v1/chat/completions ke get laluan Go ini dan bukannya pengendali geganti TS. Tidak ditetapkan → 503 dengan sandaran. Garis miring di hujung dibuang. |
BIFROST_PORT |
8080 |
src/lib/services/bootstrap.ts |
Port yang digunakan oleh perkhidmatan terbenam Bifrost yang diselia (127.0.0.1:<port>) apabila OmniRoute mengurus kitaran hayat sidecar Bifrost. Lalai kepada 8080. |
BIFROST_API_KEY |
(tidak ditetapkan) | src/app/api/v1/relay/chat/completions/bifrost/route.ts |
Kunci API untuk get laluan Bifrost (dihantar sebagai Authorization: Bearer ...). Jika tidak ditetapkan, laluan menjangkakan permintaan membawa kunci API OmniRoute yang sah; kunci ini hanya untuk pengesahan di sisi get laluan. |
BIFROST_STREAMING_ENABLED |
true |
src/app/api/v1/relay/chat/completions/bifrost/route.ts |
Apabila benar, laluan sidecar Bifrost menstrim respons kembali melalui SSE menerusi get laluan dan bukannya pelaksana penstriman TS. Tetapkan kepada 0 untuk memaksa respons JSON tanpa penstriman melalui get laluan. |
BIFROST_TIMEOUT_MS |
30000 |
src/app/api/v1/relay/chat/completions/bifrost/route.ts |
Tempoh tamat setiap permintaan apabila diproksikan ke get laluan Bifrost (ms). Apabila tamat tempoh, laluan mengembalikan laluan geganti TS melalui pengepala X-Bifrost-Fallback. |
OMNIROUTE_BIFROST_KEY |
(tidak ditetapkan) | src/app/api/v1/relay/chat/completions/bifrost/route.ts |
Alias untuk BIFROST_API_KEY (digunakan oleh skrip yang membaca persekitaran melalui OMNIROUTE_*). BIFROST_API_KEY diberi keutamaan apabila kedua-duanya ditetapkan. |
OMNIROUTE_RELAY_BACKEND |
ts / auto |
src/app/api/v1/relay/chat/completions/routingBackend.ts |
Bahagian belakang geganti untuk /api/v1/relay/chat/completions: ts | bifrost | auto. ts = geganti TypeScript (lalai apabila Bifrost tidak dikonfigurasikan); auto memilih Bifrost apabila BIFROST_BASE_URL ditetapkan dan BIFROST_ENABLED ≠ 0, dengan sandaran TS automatik jika sidecar tidak dapat dicapai; bifrost memaksa penggunaan Bifrost (ketat, tanpa sandaran). Pengesahan/pengehadan kadar/pelindung suntikan/senarai dibenarkan sentiasa dijalankan dalam laluan Next terlebih dahulu. Respons mengandungi X-Routing-Backend / X-Routing-Fallback / X-Routing-Fallback-Reason. |
RELAY_ROUTING_BACKEND |
(tidak ditetapkan) | src/app/api/v1/relay/chat/completions/routingBackend.ts |
Alias yang diterima untuk OMNIROUTE_RELAY_BACKEND (nilai ts | bifrost | auto yang sama). OMNIROUTE_RELAY_BACKEND diberi keutamaan apabila kedua-duanya ditetapkan. |
OMNIROUTE_BIFROST_FAILURE_COOLDOWN_MS |
5000 |
src/app/api/v1/relay/chat/completions/bifrostCooldown.ts |
Tempoh bertenang (ms) selepas lompatan sidecar Bifrost gagal dalam mod auto sebelum geganti mencuba semula sidecar; ia menghala terus ke laluan TS sepanjang tempoh bertenang, kemudian menguji semula. 0 menyahdayakannya. Hanya terpakai apabila OMNIROUTE_RELAY_BACKEND=auto. |
OMNIROUTE_TLS_CERT |
(tidak ditetapkan) | bin/cli/commands/serve.mjs |
Laluan ke sijil TLS PEM untuk menyediakan omniroute serve melalui HTTPS (bersamaan dengan --tls-cert). Mesti digandingkan dengan OMNIROUTE_TLS_KEY; pelayan kendiri kemudiannya menamatkan TLS pada pendengar yang sama (wss:// terus berfungsi tanpa perubahan). Tidak ditetapkan → HTTP biasa. Memberikan hanya satu daripada sijil/kunci, atau laluan yang tidak boleh dibaca, akan merekodkan amaran dan kekal menggunakan HTTP. |
OMNIROUTE_TLS_KEY |
(tidak ditetapkan) | bin/cli/commands/serve.mjs |
Laluan ke kunci persendirian TLS PEM untuk HTTPS omniroute serve (bersamaan dengan --tls-key). Mesti digandingkan dengan OMNIROUTE_TLS_CERT. Lihat OMNIROUTE_TLS_CERT. |
OMNIROUTE_LOCAL_ENDPOINTS_ENABLED |
0 |
src/lib/security/localEndpoints.ts |
Suis utama untuk laluan /api/local/*. Apabila tidak ditetapkan atau 0, semua laluan /api/local/* mengembalikan 503 dalam persekitaran pengeluaran. Mesti bernilai 1 dalam penggunaan bukan gelung balik untuk mendayakan pelancar Redis dan pemula perkhidmatan setempat 1 klik yang serupa. Perlindungan berlapis bersama pengelasan pengawal laluan isLocalOnlyPath() (LOCAL_ONLY_API_PREFIXES dalam src/server/authz/routeGuard.ts). |
OMNIROUTE_LOCAL_ENDPOINTS_TOKEN |
(tidak ditetapkan) | src/lib/security/localEndpoints.ts |
Token pembawa untuk pemanggil /api/local/* yang tidak berada pada gelung balik (cth. aplikasi desktop). Apabila ditetapkan, permintaan daripada IP bukan gelung balik mesti membawa Authorization: Bearer <token>. Diperlukan apabila OMNIROUTE_LOCAL_ENDPOINTS_ENABLED=1 dalam penggunaan bukan gelung balik. |
OMNIROUTE_REDIS_CONTAINER_NAME |
omniroute-redis |
bin/cli/commands/redis.mjs |
Nama bekas untuk pelancar Redis 1 klik (omniroute redis up). Digunakan oleh CLI dan GUI RedisLauncherPanel. |
OMNIROUTE_REDIS_HOST_PORT |
6379 |
bin/cli/commands/redis.mjs |
Port hos untuk pelancar Redis 1 klik. Tukar jika hos sudah menggunakan 6379. Port dalaman bekas kekal 6379. |
OMNIROUTE_REDIS_BIND_HOST |
127.0.0.1 |
bin/cli/commands/redis.mjs |
Antara muka hos tempat pelancar Redis 1 klik menerbitkan perkhidmatan. Pelancar memulakan Redis TANPA kata laluan, maka pengikatan kepada 0.0.0.0 memberikan setiap hos dalam LAN anda akses kepada Redis tanpa pengesahan — luaskan pengikatan ini hanya jika anda turut menetapkan sendiri kata laluan pada tika tersebut. |
REDIS_BIND_HOST |
127.0.0.1 |
docker-compose.yml |
Antara muka hos tempat docker-compose menerbitkan sidecar Redis (#9286). Redis compose berjalan tanpa requirepass; bekas aplikasi mencapainya melalui rangkaian compose (redis:6379) — port yang diterbitkan hanya wujud untuk perkakasan sisi hos. 0.0.0.0 mendedahkan Redis tanpa pengesahan kepada seluruh LAN. |
REDIS_PORT |
6379 |
docker-compose.yml |
Port hos untuk sidecar Redis compose. |
APP_BIND_HOST |
127.0.0.1 |
docker-compose.yml, docker-compose.prod.yml |
Antara muka hos tempat docker-compose menerbitkan port papan pemuka/API/live-WS aplikasi itu sendiri (#12568). Dengan REQUIRE_API_KEY=false disertakan sebagai nilai lalai .env.example, 0.0.0.0 mendedahkan proksi LLM /v1 tanpa nama kepada seluruh LAN/WAN — hanya perluaskan akses selepas REQUIRE_API_KEY=true atau apabila proksi songsang di hadapan menguatkuasakan pengesahannya sendiri. |
QDRANT_BIND_HOST |
127.0.0.1 |
docker-compose.yml |
Antara muka hos tempat docker-compose menerbitkan sidecar memori Qdrant (#12578). Rasional pendedahan LAN yang sama seperti REDIS_BIND_HOST. |
BIFROST_BIND_HOST |
127.0.0.1 |
docker-compose.yml |
Antara muka hos tempat docker-compose menerbitkan sidecar penghala Bifrost (#12578). Rasional pendedahan LAN yang sama seperti REDIS_BIND_HOST. |
REDIS_KEY_PREFIX |
omniroute: |
src/shared/utils/rateLimiter.ts |
Awalan ruang nama yang digunakan pada setiap kunci Redis OmniRoute (pengehad kadar, cache pengesahan, stor kuota, pemutus litar pemanasan). Menghalang perlanggaran kunci apabila tika Redis dikongsi dengan aplikasi lain (#11042). |
OMNIROUTE_INTERNAL_SERVICE_TOKEN |
(tidak ditetapkan — mekanisme dinyahdayakan) | src/lib/api/internalServiceAuth.ts |
Rahsia dikongsi untuk lompatan REST dalaman yang mengekalkan identiti (#9260): komponen OmniRoute yang memanggil laluan OmniRoute setempat lain menghantarnya sebagai x-omniroute-internal-service-token supaya identiti pemanggil asal dikekalkan. Dibandingkan menggunakan timingSafeEqual. |
OMNIROUTE_INTERNAL_SERVICE_TOKEN_FILE |
(tidak ditetapkan) | src/lib/api/internalServiceAuth.ts |
Varian fail rahsia bagi token perkhidmatan dalaman: laluan ke fail yang kandungannya selepas ruang kosong dibuang ialah token tersebut. Hanya dirujuk apabila pemboleh ubah sebaris tidak ditetapkan. |
OPENROUTER_PROVIDER_STATS_ENABLED |
true |
src/lib/catalog/openrouterProviderStats.ts |
Perkayakan senarai penyedia papan pemuka dengan statistik kedudukan mingguan OpenRouter (#9324). Dihidupkan secara lalai; tetapkan false untuk melangkau pengambilan latar belakang sepenuhnya (tidak menyekat, tidak pernah membawa maut). |
OPENROUTER_PROVIDER_STATS_TTL_MS |
86400000 (24j) |
src/lib/catalog/openrouterProviderStats.ts |
TTL cache untuk syot kilat statistik penyedia OpenRouter, dalam milisaat. |
OMNIROUTE_REDIS_IMAGE |
redis:7-alpine |
bin/cli/commands/redis.mjs |
Imej Redis yang digunakan oleh pelancar Redis 1 klik. Gantikan dengan redis:8-alpine atau cermin pendaftaran peribadi mengikut keperluan. |
QDRANT_HOST |
qdrant |
(profil kluster ikut serta) | Nama hos sidecar Qdrant apabila --profile memory aktif. Nilai lalai menghala ke nama perkhidmatan qdrant dalam rangkaian; gantikan untuk pengerahan luaran. Hanya digunakan apabila qdrantEnabled ialah true dalam kod (src/lib/memory/vectorStore.ts:108). |
QDRANT_PORT |
6333 |
(profil kluster ikut serta) | Port REST bagi sidecar Qdrant. |
QDRANT_GRPC_PORT |
6334 |
(profil kluster ikut serta) | Port gRPC bagi sidecar Qdrant. Digunakan oleh pustaka klien yang mengutamakan gRPC berbanding REST untuk operasi penstriman. |
QDRANT_API_KEY |
(tidak ditetapkan) | (profil kluster ikut serta) | Kunci API pilihan untuk Qdrant Cloud atau tika setempat yang disahkan. Kosong → tiada pengepala api-key dihantar. |
QDRANT_COLLECTION |
omniroute-memory |
(profil kluster ikut serta) | Nama koleksi untuk pembenaman memori perbualan OmniRoute. Dicipta pada pelaksanaan pertama dengan dimensi QDRANT_VECTOR_SIZE. |
QDRANT_EMBEDDING_MODEL |
text-embedding-3-small |
(profil kluster ikut serta) | Nama model pembenaman lalai yang direkodkan dalam metadata koleksi Qdrant. Pembenaman sebenar dijana oleh mana-mana penyedia yang dirujuk oleh medan embeddingModel dalam tetapan OmniRoute. |
QDRANT_VECTOR_SIZE |
1536 |
(profil kluster ikut serta) | Dimensi vektor pembenaman. Mesti sepadan dengan model yang anda gunakan untuk pembenaman (text-embedding-3-small → 1536; ada-002 → 1536; nomic-embed-text → 768). |
QDRANT_HNSW_EF_CONSTRUCT |
128 |
(profil kluster ikut serta) | Ketepatan semasa pembinaan indeks HNSW. Lebih tinggi = pembinaan lebih perlahan, carian lebih pantas. |
OMNIROUTE_ROTATION_ENABLED |
true |
open-sse/services/rotationConfig.ts |
Suis induk untuk penggiliran akaun yang boleh dikonfigurasikan oleh pengendali. Apabila false, tiada kelas OMNIROUTE_ROTATE_* di bawah mencetuskan penggunaan akaun sandaran (keadaan induk dimatikan turut menyekat kelas 429/500/502 yang didayakan secara lalai). Membolehkan antara muka hadapan penyeliaan (contohnya aplikasi desktop VibeProxy) mencerminkan peraturan penggilirannya sendiri kepada enjin penggunaan akaun sandaran bahagian belakang. |
OMNIROUTE_ROTATION_RATE_LIMIT_RESET_SECONDS |
0 |
open-sse/services/rotationConfig.ts |
Tempoh bertenang (saat) yang dikenakan pada akaun yang dihadkan kadar apabila perkhidmatan huluan tidak memberikan petunjuk tetapan semula yang jelas. 0 = gunakan tempoh bertenang lalai enjin dan bukannya penggantian tetap. |
OMNIROUTE_ROTATION_DISABLE_TAG_WITHOUT_RESET |
true |
open-sse/services/rotationConfig.ts |
Cerminan keutamaan antara muka hadapan "jangan tandai sebagai dihadkan kadar tanpa masa tetapan semula". |
OMNIROUTE_ROTATE_ON_429 |
true |
open-sse/services/rotationConfig.ts |
Mendayakan sandaran mengikut status untuk ralat 429. Apabila false (dan OMNIROUTE_ROTATION_ENABLED=true), 429 tidak lagi mencetuskan penggiliran akaun dan sebaliknya dikembalikan kepada klien. |
OMNIROUTE_ROTATE_429_THRESHOLD |
1 |
open-sse/services/rotationConfig.ts |
Bilangan ralat 429 dalam tempoh OMNIROUTE_ROTATE_429_WINDOW_SECONDS yang diperlukan sebelum akaun digilirkan. 1 (lalai) menggilirkan akaun serta-merta, mengekalkan tingkah laku terdahulu. |
OMNIROUTE_ROTATE_429_WINDOW_SECONDS |
120 |
open-sse/services/rotationConfig.ts |
Tetingkap bergerak (dalam saat) untuk mengira ralat 429 bagi mencapai OMNIROUTE_ROTATE_429_THRESHOLD. |
OMNIROUTE_ROTATE_ON_500 |
true |
open-sse/services/rotationConfig.ts |
Mendayakan sandaran mengikut status untuk ralat pelayan 5xx (tidak termasuk 502, yang mempunyai kelas tersendiri). Apabila false, ralat ini tidak lagi mencetuskan penggiliran akaun. |
OMNIROUTE_ROTATE_500_THRESHOLD |
1 |
open-sse/services/rotationConfig.ts |
Bilangan ralat 5xx dalam tempoh OMNIROUTE_ROTATE_500_WINDOW_SECONDS yang diperlukan sebelum akaun digilirkan. 1 (lalai) menggilirkan akaun serta-merta. |
OMNIROUTE_ROTATE_500_WINDOW_SECONDS |
120 |
open-sse/services/rotationConfig.ts |
Tetingkap bergerak (dalam saat) untuk mengira ralat 5xx bagi mencapai OMNIROUTE_ROTATE_500_THRESHOLD. |
OMNIROUTE_ROTATE_ON_502 |
true |
open-sse/services/rotationConfig.ts |
Mendayakan sandaran mengikut status untuk ralat 502 (get laluan buruk). Apabila false, ralat 502 tidak lagi mencetuskan penggiliran akaun. |
OMNIROUTE_ROTATE_502_THRESHOLD |
1 |
open-sse/services/rotationConfig.ts |
Bilangan ralat 502 dalam tempoh OMNIROUTE_ROTATE_502_WINDOW_SECONDS yang diperlukan sebelum akaun digilirkan. 1 (lalai) menggilirkan akaun serta-merta. |
OMNIROUTE_ROTATE_502_WINDOW_SECONDS |
120 |
open-sse/services/rotationConfig.ts |
Tetingkap bergerak (dalam saat) untuk mengira ralat 502 bagi mencapai OMNIROUTE_ROTATE_502_THRESHOLD. |
OMNIROUTE_ROTATE_ON_400 |
false |
open-sse/services/rotationConfig.ts |
Ikut serta (DIMATIKAN secara lalai): apabila true, 400 biasa (permintaan tidak sah) turut mencetuskan penggiliran akaun. Ini hanya bersifat tambahan — ia tidak pernah menyekat tingkah laku sedia ada enjin, iaitu 400 yang mengandungi teks had kadar/kuota masih beralih kepada akaun lain tanpa mengira bendera ini. |
OMNIROUTE_ROTATE_400_THRESHOLD |
1 |
open-sse/services/rotationConfig.ts |
Bilangan ralat 400 dalam tempoh OMNIROUTE_ROTATE_400_WINDOW_SECONDS yang diperlukan sebelum akaun digilirkan (hanya dirujuk apabila OMNIROUTE_ROTATE_ON_400=true). |
OMNIROUTE_ROTATE_400_WINDOW_SECONDS |
120 |
open-sse/services/rotationConfig.ts |
Tetingkap gelongsor (saat) untuk mengira ralat 400 terhadap OMNIROUTE_ROTATE_400_THRESHOLD. |
Penjadual Pemanasan Claude
Pemanasan dipacu cron untuk sambungan OAuth Anthropic yang telah memilih untuk menyertainya, supaya tetingkap had kadar 5 jam dibuka melalui permintaan terjadual yang ringkas dan bukannya oleh permintaan sebenar yang pertama (#8848). Penjadual dinyahaktifkan melainkan OMNIROUTE_WARMUP_ENABLED bernilai benar dan sambungan ditandakan dalam settings.claudeWarmup.connections; senarai sambungan yang kosong bermakna tiada apa-apa yang dipanaskan walaupun pemboleh ubah persekitaran diaktifkan.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_WARMUP_ENABLED |
(tidak ditetapkan → dinyahaktifkan) | src/lib/warmupScheduler.ts |
Suis utama untuk penjadual pemanasan. Menerima 1/true/yes/on (tidak peka huruf besar-kecil, ruang kosong dibuang). Sebarang nilai lain, atau jika tidak ditetapkan, akan membiarkan penjadual dinyahaktifkan. |
OMNIROUTE_WARMUP_CRON |
0 7 * * * |
src/lib/warmupScheduler.ts |
Ungkapan cron lima medan untuk detik pemanasan, dinilai dalam America/Los_Angeles (zon waktu tetapan semula Anthropic) tanpa mengira jam hos. |
OMNIROUTE_WARMUP_CONCURRENCY |
3 |
src/lib/warmupScheduler.ts |
Bilangan sambungan yang dipanaskan secara selari bagi setiap detik. Dihadkan kepada 1-10; nilai bukan angka kembali kepada 3. |
OMNIROUTE_WARMUP_MODEL |
claude-3-5-haiku-20241022 |
src/lib/warmupScheduler.ts |
Model yang digunakan untuk permintaan pemanasan. Ubah hanya jika lalai tidak tersedia dalam pelan anda; pilih model termurah yang masih boleh membuka tetingkap tersebut. |
Sesi VNC Log Masuk Pelayar & Alias Direktori Data
Chromium+VNC dalam bekas yang digunakan untuk mendapatkan bukti kelayakan log masuk pelayar secara interaktif (/api/vnc-session), serta alias legasi DATA_DIR. Semuanya pilihan — nilai lalai VNC menyasarkan imej terbina dalam omniroute-vnc-chromium:local dan hanya diubah untuk imej bekas tersuai, port, atau pelarasan kitar hayat.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_VNC_IMAGE |
omniroute-vnc-chromium:local |
src/lib/vncSession/manifest.ts |
Tag imej Docker untuk bekas log masuk Chromium+VNC. Bina docker/vnc-browser/chromium atau tetapkannya kepada imej tersuai. |
OMNIROUTE_DOCKER_BIN |
docker |
src/lib/vncSession/manifest.ts |
Binari masa jalan bekas yang digunakan untuk melancarkan bekas VNC (contohnya, tetapkan kepada podman). |
OMNIROUTE_VNC_CONTAINER_VNC_PORT |
3000 |
src/lib/vncSession/manifest.ts |
Port VNC/noVNC yang didedahkan di dalam bekas. |
OMNIROUTE_VNC_CONTAINER_CDP_PORT |
9223 |
src/lib/vncSession/manifest.ts |
Port Chrome DevTools Protocol di dalam bekas. |
OMNIROUTE_VNC_CONTAINER_PROFILE_DIR |
/config |
src/lib/vncSession/manifest.ts |
Laluan direktori profil Chromium di dalam bekas. |
OMNIROUTE_VNC_PROFILE_DIR |
$HOME/.omniroute/browser-login-profiles |
src/lib/vncSession/manifest.ts |
Direktori hos yang menyimpan profil log masuk pelayar yang dikekalkan. |
OMNIROUTE_VNC_IDLE_MS |
600000 (10 minit) |
src/lib/vncSession/manifest.ts |
Tempoh tamat melahu (ms) sebelum sesi VNC yang tidak aktif ditamatkan. |
OMNIROUTE_VNC_MAX_MS |
1800000 (30 minit) |
src/lib/vncSession/manifest.ts |
Had mutlak (ms) bagi jangka hayat satu sesi VNC. |
OMNIROUTE_VNC_MAX_SESSIONS |
4 |
src/lib/vncSession/manifest.ts |
Bilangan maksimum sesi VNC serentak. |
OMNIROUTE_VNC_READY_MS |
45000 |
src/lib/vncSession/manifest.ts |
Tempoh tamat (ms) untuk menunggu pelayar dalam bekas menjadi sedia CDP. |
OMNIROUTE_VNC_HARVEST_MS |
20000 |
src/lib/vncSession/manifest.ts |
Tempoh tamat (ms) untuk mendapatkan sesi/kuki yang ditangkap selepas log masuk selesai. |
OMNIROUTE_VNC_CHROMIUM_ARGS |
--remote-debugging-port=9222 --no-first-run --no-default-browser-check |
src/lib/vncSession/manifest.ts |
Bendera baris perintah tambahan yang dihantar kepada Chromium dalam bekas. |
OMNIROUTE_VNC_NETWORK |
omniroute-vnc-browser-login |
src/lib/vncSession/manifest.ts |
Rangkaian Docker khusus yang disertai oleh bekas log masuk VNC (#12571), bukannya jambatan lalai, supaya bekas setara tidak dapat mencapai port jambatan CDP-nya. |
VIBEPROXY_DATA_DIR |
(tidak ditetapkan) | open-sse/services/notionThreadSessions.ts |
Alias legasi untuk DATA_DIR, diperiksa hanya selepas kedua-dua DATA_DIR dan OMNIROUTE_DATA_DIR tidak ditetapkan. Menentukan lokasi cache sesi urutan web Notion (<dir>/notion-web-thread-sessions.json). |
26. Ujian & Peralatan E2E
Digunakan oleh scripts/dev/run-next-playwright.mjs, scripts/dev/smoke-electron-packaged.mjs,
scripts/dev/run-ecosystem-tests.mjs, dan scripts/build/uninstall.mjs. Biarkan setiap
nilai di bawah tidak ditetapkan dalam penggunaan produksi.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_E2E_BOOTSTRAP_MODE |
auth |
scripts/dev/run-next-playwright.mjs |
Mod pemula E2E (auth, fresh, reuse) untuk pelaksana Playwright. |
OMNIROUTE_E2E_PASSWORD |
kembali kepada INITIAL_PASSWORD |
scripts/dev/run-next-playwright.mjs |
Kata laluan pentadbir yang disuntik ke dalam persekitaran Playwright. |
OMNIROUTE_DISABLE_LOCAL_HEALTHCHECK |
true |
scripts/dev/run-next-playwright.mjs |
Lumpuhkan tinjauan semakan kesihatan setempat semasa pelaksanaan Playwright. |
OMNIROUTE_DISABLE_TOKEN_HEALTHCHECK |
true |
scripts/dev/run-next-playwright.mjs |
Lumpuhkan gelung semakan kesihatan token OAuth semasa ujian. |
OMNIROUTE_HEALTHCHECK_SKIP_PROVIDERS |
(tidak ditetapkan) | src/lib/tokenHealthCheck.ts |
Penyedia dipisahkan koma yang dikecualikan daripada proses imbasan penyegaran token proaktif (cth. codex,openai). Alternatif bersasar kepada tindakan melumpuhkan semakan kesihatan sepenuhnya — penyedia TTL pendek terus disegarkan manakala penyedia lata kekal reaktif sahaja. |
OMNIROUTE_HIDE_HEALTHCHECK_LOGS |
true |
scripts/dev/run-next-playwright.mjs |
Senyapkan hingar semakan kesihatan dalam stdout Playwright. |
OMNIROUTE_PLAYWRIGHT_SKIP_BUILD |
0 |
scripts/dev/run-next-playwright.mjs |
Langkau binaan produksi Next.js sebelum Playwright bermula (pengoptimuman CI). |
OMNIROUTE_SKIP_UNINSTALL_HOOK |
0 |
scripts/build/uninstall.mjs |
Langkau cangkuk nyahpasang OmniRoute (digunakan oleh CI untuk mengekalkan node_modules). |
ECOSYSTEM_SERVER_WAIT_MS |
180000 |
scripts/dev/run-ecosystem-tests.mjs |
Masa menunggu (ms) untuk pelayan menjadi sihat sebelum menjalankan ujian ekosistem/protokol. |
ELECTRON_SMOKE_URL |
http://127.0.0.1:20128/login |
scripts/dev/smoke-electron-packaged.mjs |
URL yang dijangka oleh peralatan ujian asap Electron untuk disediakan oleh aplikasi berpakej. |
ELECTRON_SMOKE_TIMEOUT_MS |
45000 |
scripts/dev/smoke-electron-packaged.mjs |
Jumlah tamat masa (ms) sebelum peralatan ujian asap berhenti mencuba. |
ELECTRON_SMOKE_SETTLE_MS |
2000 |
scripts/dev/smoke-electron-packaged.mjs |
Tempoh penstabilan (ms) selepas halaman dimuatkan. |
ELECTRON_SMOKE_APP_EXECUTABLE |
(automatik) | scripts/dev/smoke-electron-packaged.mjs |
Laluan eksplisit ke fail boleh laku Electron yang dipakejkan. |
ELECTRON_SMOKE_DATA_DIR |
(tmpdir) | scripts/dev/smoke-electron-packaged.mjs |
Direktori data untuk pelaksanaan ujian asap Electron. |
ELECTRON_SMOKE_KEEP_DATA |
0 |
scripts/dev/smoke-electron-packaged.mjs |
Tetapkan kepada 1 untuk mengekalkan direktori data ujian asap selepas pelaksanaan. |
ELECTRON_SMOKE_STREAM_LOGS |
0 |
scripts/dev/smoke-electron-packaged.mjs |
Tetapkan kepada 1 untuk menstrim log Electron ke stdout semasa pelaksanaan. |
ELECTRON_SMOKE_COLD_RESTART |
0 |
scripts/dev/smoke-electron-packaged.mjs |
#7592: lancarkan semula menggunakan direktori data yang sama dan pastikan pelancaran kedua memilih pemacu SQLite natif. |
CLI_DEVIN_BIN |
(carian PATH) | open-sse/executors/devin-cli.ts |
Mengatasi laluan perduaan Devin CLI. |
Saluran terjemahan dokumentasi
Digunakan oleh scripts/i18n/run-translation.mjs (perintah npm run i18n:run).
Kelima-lima pemboleh ubah tidak ditetapkan secara lalai — tetapkannya dalam .env hanya pada mesin
yang sepatutnya boleh menjalankan penterjemah dokumentasi.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_TRANSLATION_API_URL |
(tidak ditetapkan) | scripts/i18n/run-translation.mjs |
URL asas yang serasi dengan OpenAI untuk bahagian belakang terjemahan. |
OMNIROUTE_TRANSLATION_API_KEY |
(tidak ditetapkan) | scripts/i18n/run-translation.mjs |
Token pembawa untuk bahagian belakang terjemahan (tidak pernah dilog). |
OMNIROUTE_TRANSLATION_MODEL |
(tidak ditetapkan) | scripts/i18n/run-translation.mjs |
ID model, cth. gpt-4o-mini atau cx/gpt-5.4-mini. |
OMNIROUTE_TRANSLATION_TIMEOUT_MS |
60000 |
scripts/i18n/run-translation.mjs |
Had masa bagi setiap permintaan dalam milisaat. |
OMNIROUTE_TRANSLATION_CONCURRENCY |
4 |
scripts/i18n/run-translation.mjs |
Permintaan terjemahan selari semasa memproses berbilang fail / penempatan setempat. |
27. Suapan Radar (Pengehosan Sendiri)
Tambahan pilihan yang dikawal oleh bendera ciri RADAR_ENABLED (dimatikan secara lalai — bendera ciri
yang ditogol melalui Tetapan/DB, bukan pemboleh ubah persekitaran; lihat
docs/frameworks/RADAR.md).
Empat pemboleh ubah pertama di bawah ialah penggantian pilihan untuk suapan yang dihoskan sendiri atau dicabang serta
aliran kunci penyokong. Yang kelima, RADAR_ADMIN_URL, ialah pautan berasingan tanpa nilai lalai ke panel
operasi peribadi pemilik. Lihat docs/frameworks/RADAR.md untuk dokumentasi
modul penuh dan
urutan pengaktifan hujung ke hujung serta persediaan berpandu.
Pembaca pengumuman umum Laman Utama/Log Perubahan tidak dikonfigurasikan melalui pemboleh ubah
persekitaran dan tidak bergantung pada bendera ciri RADAR_ENABLED. Ia membaca URL news.json
repositori awam yang diisytiharkan dalam src/shared/utils/releaseNotes.ts menggunakan
GET sahaja; ID penolakan kekal dalam storan setempat pelayar.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
RADAR_FEED_URL |
https://radar.omniroute.online |
src/lib/radar/{sync,referralsSync,offersSync,intelSync}.ts |
URL asas yang dikongsi oleh suapan katalog, rujukan, tawaran penyokong dan Intel yang ditandatangani secara berasingan. Gantikan untuk menghalakannya ke perkhidmatan yang dihoskan sendiri atau dicabang. |
RADAR_FEED_PUBKEY |
(kunci lalai yang disematkan) | src/lib/radar/pinnedKeys.ts |
Kunci awam Ed25519 (SPKI DER base64 atau PEM) yang digunakan untuk mengesahkan tandatangan suapan daripada suapan tersuai. |
RADAR_CONTRIBUTOR_CLAIM_URL |
https://radar.omniroute.online/auth/github |
src/lib/radar/links.ts |
URL yang dibuka oleh butang papan pemuka "Saya seorang penyumbang" (aliran tuntutan kunci penyokong GitHub OAuth). |
RADAR_SUPPORTER_PLANS_URL |
https://radar.omniroute.online/planos |
src/lib/radar/links.ts |
URL yang dibuka oleh butang papan pemuka "Sokong projek" (halaman pembayaran/pelan). |
RADAR_ADMIN_URL |
(tidak ditetapkan) | src/lib/radar/links.ts |
Pautan panel operasi peribadi untuk pemilik sahaja. HTTPS diperlukan kecuali bagi pemajuan SSH gelung balik HTTP; nilai yang tidak ditetapkan atau tidak sah tidak menghasilkan item navigasi. |
Audit: Pemboleh Ubah yang Dialih Keluar / Tidak Digunakan
Pemboleh ubah berikut muncul dalam versi terdahulu .env.example tetapi tidak mempunyai rujukan masa jalan dalam pangkalan kod semasa. Pemboleh ubah tersebut telah dialih keluar:
| Pemboleh Ubah | Sebab |
|---|---|
STORAGE_DRIVER=sqlite |
Tidak pernah dibaca oleh mana-mana fail sumber. SQLite ialah satu-satunya pemacu yang disokong — tiada pemilihan diperlukan. |
INSTANCE_NAME=omniroute |
Terdapat dalam dokumentasi/templat env lama tetapi tidak digunakan semasa masa jalan. Mungkin kembali dalam ciri berbilang tika pada masa hadapan. |
SQLITE_MAX_SIZE_MB=2048 |
Tidak dirujuk dalam kod sumber. Saiz pangkalan data tidak dihadkan secara buatan. |
SQLITE_CLEAN_LEGACY_FILES=true |
Tidak dirujuk dalam kod sumber. Pembersihan legasi berkemungkinan telah dialih keluar. |
CLI_ROO_BIN |
Tidak didaftarkan dalam src/shared/services/cliRuntime.ts. |
CLI_KIMI_CODING_BIN |
Tidak didaftarkan dalam src/shared/services/cliRuntime.ts (Kimi Coding menggunakan OAuth, bukan binari CLI). |
IFLOW_OAUTH_CLIENT_ID / IFLOW_OAUTH_CLIENT_SECRET |
Tidak dirujuk di mana-mana dalam kod sumber. |
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 |
Dialih keluar dalam v3.8.0. Masa jalan tidak lagi membaca pemboleh ubah env ini — bukti kelayakan diperoleh daripada Papan Pemuka / data/provider-credentials.json / DB disulitkan. |
CURSOR_PROTOBUF_DEBUG |
Dialih keluar dalam v3.8.0. Pelaksana Cursor menggunakan CURSOR_DEBUG / CURSOR_STREAM_DEBUG (lihat §22). |
CLI_COMPAT_KIRO |
Dialih keluar dalam v3.8.0. Kiro berada dalam CLI_COMPAT_OMITTED_PROVIDER_IDS — togolnya tidak memberikan sebarang kesan. |
QIANFAN_API_KEY |
Dialih keluar bersama-sama stub kunci API penyedia lain yang tidak digunakan dalam v3.8.0. |
Pembetulan Nilai Lalai
| Pemboleh Ubah | Nilai .env.example Lama |
Lalai Kod Sebenar | Dibetulkan |
|---|---|---|---|
APP_LOG_RETENTION_DAYS |
90 |
7 |
✅ Nilai yang mengelirukan dialih keluar; 7 didokumentasikan sebagai nilai lalai |
CALL_LOG_RETENTION_DAYS |
90 |
7 |
✅ Nilai yang mengelirukan dialih keluar; 7 didokumentasikan sebagai nilai lalai |
Penjanaan semula konfigurasi OpenCode (alat ad hoc)
Digunakan oleh scripts/ad-hoc/regen-opencode-config.ts untuk menjana semula opencode.json
dengan nilai limit.context dan limit.output yang tepat, yang diambil daripada tika
OmniRoute yang sedang berjalan. Tiada satu pun daripada ini diperlukan untuk operasi biasa — skrip ini
hanyalah alat pembangun.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_URL |
http://localhost:20128 |
scripts/ad-hoc/regen-opencode-config.ts |
URL asas bagi tika OmniRoute yang akan ditanya untuk /v1/models. |
OMNIROUTE_KEY |
(tidak ditetapkan) | scripts/ad-hoc/regen-opencode-config.ts |
Kunci API untuk mengesahkan identiti terhadap titik akhir OmniRoute /v1/models. Menggunakan OPENCODE_API_KEY jika tidak ditetapkan. |
OPENCODE_API_KEY |
(tidak ditetapkan) | scripts/ad-hoc/regen-opencode-config.ts |
Kunci API gaya OpenCode (sk-...) yang ditulis ke dalam opencode.json yang dijana semula. Menggunakan OMNIROUTE_KEY jika tidak ditetapkan. |
Abah-abah penilaian luar talian pemampatan (alatan ad hoc)
Digunakan oleh scripts/compression-eval/index.ts, CLI penilaian pemampatan luar talian.
Tidak diperlukan untuk operasi biasa — untuk alatan pembangun sahaja.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_EVAL_CREDENTIALS |
{} (kosong) |
scripts/compression-eval/index.ts |
Bukti kelayakan JSON yang dibekalkan oleh pengendali untuk penyedia yang diuji oleh CLI penilaian pemampatan luar talian (dihurai dengan JSON.parse). Biarkan tidak ditetapkan untuk percubaan kering. |
Sesi Pelayar VNC
Digunakan oleh src/lib/vncSession/manifest.ts untuk mengkonfigurasi sesi Chromium tanpa kepala berasaskan Docker bagi penyedia automasi pelayar. Semuanya pilihan — nilai lalai ditunjukkan di bawah.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_DOCKER_BIN |
docker |
src/lib/vncSession/manifest.ts |
Laluan ke perduaan Docker yang digunakan untuk mewujudkan bekas VNC. |
OMNIROUTE_VNC_IMAGE |
omniroute-vnc-chromium:local |
src/lib/vncSession/manifest.ts |
Imej Docker untuk bekas VNC Chromium. |
OMNIROUTE_VNC_CHROMIUM_ARGS |
(bendera terbina dalam) | src/lib/vncSession/manifest.ts |
Argumen CLI Chromium tambahan yang dihantar kepada pelayar di dalam bekas. |
OMNIROUTE_VNC_CONTAINER_VNC_PORT |
3000 |
src/lib/vncSession/manifest.ts |
Port VNC di dalam bekas. |
OMNIROUTE_VNC_CONTAINER_CDP_PORT |
9223 |
src/lib/vncSession/manifest.ts |
Port Chrome DevTools Protocol di dalam bekas. |
OMNIROUTE_VNC_CONTAINER_PROFILE_DIR |
/config |
src/lib/vncSession/manifest.ts |
Direktori profil di dalam bekas. |
OMNIROUTE_VNC_PROFILE_DIR |
(tidak ditetapkan) | src/lib/vncSession/manifest.ts |
Direktori pada hos untuk profil pelayar berterusan. |
OMNIROUTE_VNC_IDLE_MS |
600000 |
src/lib/vncSession/manifest.ts |
Tempoh tamat melahu (ms) sebelum sesi VNC dikutip. |
OMNIROUTE_VNC_MAX_MS |
1800000 |
src/lib/vncSession/manifest.ts |
Tempoh sesi maksimum (ms). |
OMNIROUTE_VNC_MAX_SESSIONS |
4 |
src/lib/vncSession/manifest.ts |
Bilangan maksimum sesi VNC serentak. |
OMNIROUTE_VNC_READY_MS |
45000 |
src/lib/vncSession/manifest.ts |
Tempoh tamat kesediaan pelayar (ms). |
OMNIROUTE_VNC_HARVEST_MS |
20000 |
src/lib/vncSession/manifest.ts |
Tempoh tamat pengutipan/pembersihan (ms). |
OMNIROUTE_VNC_NETWORK |
omniroute-vnc-browser-login |
src/lib/vncSession/manifest.ts |
Rangkaian Docker khusus yang disertai oleh bekas (#12571), di luar jambatan lalai. |
VIBEPROXY_DATA_DIR |
(tidak ditetapkan) | open-sse/services/notionThreadSessions.ts |
Direktori untuk pengekalan sesi urutan Notion. |
Pengesahan perkhidmatan dalaman
| Pemboleh Ubah | Lalai | Penerangan |
|---|---|---|
OMNIROUTE_INTERNAL_SERVICE_TOKEN |
– | Token sebaris untuk pengesahan perkhidmatan-ke-perkhidmatan satah pengurusan. |
OMNIROUTE_INTERNAL_SERVICE_TOKEN_FILE |
– | Laluan ke fail yang mengandungi token perkhidmatan dalaman (diutamakan dalam bekas; mengatasi pemboleh ubah sebaris). |
Statistik penyedia OpenRouter
| Pemboleh Ubah | Lalai | Penerangan |
|---|---|---|
OPENROUTER_PROVIDER_STATS_ENABLED |
true |
Tetapkan kepada false untuk melangkau pengambilan statistik setiap penyedia OpenRouter bagi pengayaan katalog. |
OPENROUTER_PROVIDER_STATS_TTL_MS |
3600000 |
TTL cache (ms) untuk statistik penyedia OpenRouter yang diambil. |
Pengikatan Redis terbenam
| Pemboleh Ubah | Lalai | Penerangan |
|---|---|---|
REDIS_BIND_HOST |
127.0.0.1 |
Alamat pengikatan untuk perkhidmatan Redis terbenam. |
REDIS_PORT |
6379 |
Port untuk perkhidmatan Redis terbenam. |
OMNIROUTE_REDIS_BIND_HOST |
– | Penggantian khusus OmniRoute untuk alamat pengikatan Redis terbenam. |
24. Penambahan keluaran v3.8.50
Tetapan ini diperkenalkan selepas petikan kontrak persekitaran sebelumnya.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_CHAT_ADMISSION_QUEUE_MS |
2000 |
src/shared/middleware/chatBodyAdmission.ts |
Tempoh menunggu maksimum untuk slot penerimaan sembang berkapasiti tinggi sebelum menerima 503 yang boleh dicuba semula; tempoh menunggu singkat yang terhad menyusun letusan permintaan ejen secara bersiri dan bukannya memberikan 503 serta-merta. 0 memulihkan penolakan serta-merta. |
OMNIROUTE_CHAT_ADMISSION_MAX_QUEUED_BYTES |
4194304 (4 MB) |
src/shared/middleware/chatBodyAdmission.ts |
Bajet bait dalam baris gilir untuk menunggu penerimaan: mengehadkan jumlah bait isi yang dibufer dan ditahan pada seluruh proses supaya penantian tidak meningkatkan penggunaan heap (#4380). Penantian yang melebihi bajet menerima 503 yang boleh dicuba semula dengan serta-merta. |
OMNIROUTE_CHAT_VIRTUAL_TTL_MS |
60000 (60 s) |
src/shared/middleware/chatBodyAdmission.ts |
Tiada operasi dan tidak digunakan lagi sejak #10110: laluan penerimaan bagi setiap sesi telah dialih keluar dan digantikan dengan satu bajet seluruh proses. Diterima untuk keserasian konfigurasi; diabaikan. |
OMNIROUTE_CHAT_VIRTUAL_MAX_SESSIONS |
64 |
src/shared/middleware/chatBodyAdmission.ts |
Tiada operasi dan tidak digunakan lagi sejak #10110: laluan penerimaan bagi setiap sesi telah dialih keluar dan digantikan dengan satu bajet seluruh proses. Diterima untuk keserasian konfigurasi; diabaikan. |
OMNIROUTE_CHAT_VIRTUAL_LANES |
0 (dimatikan) |
open-sse/services/admission/runtime.ts |
Laluan penerimaan maya masa jalan adaptif (#9654): suis utama bagi pagar adaptif setiap penyewa (sistem 2). Berbeza daripada pemboleh ubah laluan setiap sambungan yang tidak digunakan lagi di atas (TTL_MS / MAX_SESSIONS, tiada operasi sejak #10110). Bendera ciri papan pemuka dengan nama yang sama; pemboleh ubah persekitaran mengatasi penggantian papan pemuka; memerlukan mula semula. |
OMNIROUTE_RUNNOW_TIMEOUT_MS |
30000 |
src/app/api/jobs/[id]/run-now/route.ts |
Mengehadkan tempoh panggilan jalankan-sekarang menunggu tugas yang sedang berjalan sebelum memulakan pelaksanaan dalam baris gilir. |
ADOBE_FIREFLY_BROWSER_REFRESH |
didayakan | open-sse/services/adobeFireflySession.ts |
Memastikan keadaan IMS dan risiko pelayar sentiasa terkini melalui sesi Chrome CDP yang diskopkan kepada akaun; tetapkan 0 untuk menyahdayakannya. |
ADOBE_FIREFLY_SESSION_DISK |
didayakan | open-sse/services/adobeFireflySession.ts |
Menyimpan sesi Adobe yang telah dibaiki di bawah DATA_DIR; tetapkan 0 untuk keadaan dalam memori sahaja. |
ADOBE_FIREFLY_MIN_SUBMIT_GAP_MS |
12000 |
open-sse/services/adobeFireflySession.ts |
Jarak minimum antara penyerahan penjanaan Adobe Firefly. |
ADOBE_FIREFLY_BATCH_EXTRA_GAP_MS |
15000 |
open-sse/services/adobeFireflySession.ts |
Tempoh lengang tambahan selepas setiap penyerahan Adobe ketiga yang berjaya. |
ADOBE_FIREFLY_CHROME_HEADLESS |
0 |
open-sse/services/adobeFireflyBrowserLogin.ts |
Mod tanpa kepala sebenar untuk penyahpepijatan sahaja; Adobe colligo lazimnya menolak sesi risiko yang terhasil. |
CHROME_PATH |
pengesanan automatik | open-sse/executors/cloudflare-playground.ts, open-sse/executors/chatgpt-web-codex.ts |
Boleh laku Chrome mutlak pilihan yang digunakan oleh pelaksana dipacu pelayar apabila pengesanan automatik platform tidak mencukupi. |
TELEGRAM_BOT_TOKEN |
(tidak ditetapkan) | src/lib/telegram/config.ts |
Token BotFather yang mendayakan webhook masuk dan menandatangani initData Mini App. |
TELEGRAM_WEBHOOK_SECRET |
(tidak ditetapkan) | src/lib/telegram/config.ts |
Rahsia dikongsi yang didaftarkan melalui setWebhook dan disahkan terhadap pengepala X-Telegram-Bot-Api-Secret-Token pada setiap penghantaran webhook. Diperlukan untuk laluan webhook; jika tidak ditetapkan, penghantaran webhook ditolak dengan 503. |
TELEGRAM_DEFAULT_MODEL |
auto/chat |
src/lib/telegram/chatProxy.ts |
Model yang digunakan untuk balasan sembang Telegram. |
TELEGRAM_BOT_API_BASE |
https://api.telegram.org |
src/lib/telegram/config.ts |
Penggantian URL asas Bot API untuk proksi atau pelayan Bot API yang dihoskan sendiri. |
TELEGRAM_WEBHOOK_TIMEOUT_MS |
60000 |
src/lib/telegram/config.ts |
Had masa dalam milisaat untuk panggilan Bot API keluar. |
OMNIROUTE_OPTIONAL_PACK_TAR |
1 (didayakan) |
scripts/build/optionalPackStaging.mjs |
Tetapkan 0 untuk melangkau penghasilan tarball .tar.gz ketika menyediakan pek ML/pelayar pilihan bagi pepohon kendiri Electron (direktori pek dan optional-packs.index.json masih dihasilkan). Digunakan oleh aliran kerja keluaran desktop untuk mengurangkan saiz muat naik artifak. |
ChatGPT Web (Codex)
Tetapan lalai global untuk pelayar tanpa kepala dan terowong alat keluar. Nilai Connection yang ditetapkan dalam papan pemuka diberi keutamaan.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
CHATGPT_WEB_CODEX_CHROME_PATH |
(dikesan secara automatik) | open-sse/executors/chatgpt-web-codex.ts |
Laluan Chrome/Chromium eksplisit untuk pengendalian npm, systemd dan PM2. |
CHROME_PATH |
(dikesan secara automatik) | open-sse/executors/chatgpt-web-codex.ts |
Sandaran bersama untuk laluan Chrome/Chromium eksplisit. |
CHATGPT_WEB_CODEX_CDP_URL |
(tidak ditetapkan) | open-sse/executors/chatgpt-web-codex.ts |
Titik akhir CDP dalaman; Docker menggunakan sidecar pada port 9223. |
CDP_PROXY_TOKEN |
(tidak ditetapkan) | docker/chatgpt-web-codex-browser/cdp-proxy.mjs |
Jika ditetapkan, setiap permintaan kepada sidecar proksi CDP mesti menyertakan nilai ini dalam pengepala X-Omni-Cdp-Token (#13679). Tanpa nilai, proksi akan memajukan permintaan tanpa pengesahan — dalam keadaan ini, hanya pengasingan rangkaian bagi rangkaian Compose chatgpt-web-codex-net yang memberikan perlindungan. Jana dengan openssl rand -hex 32. |
CHATGPT_WEB_CODEX_TUNNEL_ID |
(tidak ditetapkan) | open-sse/executors/chatgpt-web-codex.ts |
ID terowong OpenAI global untuk pusingan alat Codex setempat. |
CHATGPT_WEB_CODEX_RUNTIME_KEY |
(tidak ditetapkan) | open-sse/executors/chatgpt-web-codex.ts |
Kunci masa jalan terowong global; jangan sekali-kali paparkannya dalam log. |
CHATGPT_WEB_CODEX_CONNECTOR_NAME |
OmniRoute Codex v2 |
open-sse/executors/chatgpt-web-codex.ts |
Nama tepat bagi penyambung tersuai ChatGPT yang baru dicipta untuk jambatan MCP. |
CODEX_CHATGPT_WEB_HOME |
<DATA_DIR>/chatgpt-web-codex |
open-sse/vendor/codex-chatgpt-web/config.ts |
Direktori khusus untuk keadaan pelayar, broker dan terowong. |
CODEX_CHATGPT_WEB_BROWSER_DIAGNOSTICS |
0 |
open-sse/vendor/codex-chatgpt-web/adapters/chatgpt-web/browser-worker.ts |
Apabila 1, imej diagnostik pelayar dirakam pada setiap titik semak. |
CODEX_CHATGPT_WEB_LAUNCHER |
(tidak ditetapkan) | open-sse/vendor/codex-chatgpt-web/config.ts |
Laluan mutlak pilihan kepada binari pelancar kekal. |
CODEX_CHATGPT_WEB_BUN |
(dikesan secara automatik) | open-sse/vendor/codex-chatgpt-web/config.ts |
Laluan mutlak pilihan kepada binari masa jalan Bun. |
CODEX_WEB_GPT_BUN |
(tidak ditetapkan) | open-sse/vendor/codex-chatgpt-web/config.ts |
Sandaran legasi untuk CODEX_CHATGPT_WEB_BUN; persediaan baharu menggunakan nama kanonik. |
OmniConductor Bridge
Pengguna SSE berjangka panjang yang mencerminkan tugasan hab OmniConductor ke dalam A2A TaskManager setempat (src/lib/conductor/). Ikut serta — jambatan hanya bermula apabila CONDUCTOR_HUB_URL ditetapkan. Bahagian pelayan sahaja: token hab tidak boleh sampai ke pelayar.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
CONDUCTOR_HUB_URL |
(kosong) | src/lib/conductor/boot.ts |
URL asas hab OmniConductor (cth. http://127.0.0.1:7910). Tidak ditetapkan = jambatan dinyahdayakan. |
CONDUCTOR_HUB_TOKEN |
(kosong) | src/lib/conductor/boot.ts |
Bukti kelayakan hab untuk suapan SSE — keluarkan rakan setara berjenis spokesperson pada hab (POST /v1/peers, pentadbir). |
CONDUCTOR_ORCHESTRATOR_TOKEN |
(kosong) | src/lib/conductor/hubProxy.ts |
Bukti kelayakan untuk pengagihan tugasan A2A→hab masuk (POST /v1/tasks); menggunakan CONDUCTOR_HUB_TOKEN jika tidak ditetapkan. |
CONDUCTOR_SPOKESPERSON_URL |
http://127.0.0.1:7920 |
src/lib/conductor/faroProxy.ts |
URL asas perkhidmatan jurucakap (Faro) di belakang proksi sembang papan pemuka (/api/conductor/ask). |
Penjadualan peka kuota
Digunakan oleh open-sse/services/combo.ts dan src/lib/quota/quotaScheduler.ts untuk semakan bajet token prapermintaan. Ikut serta — tingkah laku penghalaan lalai tidak berubah apabila tidak ditetapkan.
| Pemboleh Ubah | Lalai | Fail Sumber | Penerangan |
|---|---|---|---|
OMNIROUTE_QUOTA_AWARE_ROUTING |
0 |
open-sse/services/combo.ts |
Apabila 1, langkau sambungan yang bajet token setiap tetingkapnya (rateLimitOverrides.tpm, jadual provider_quota_state) tidak dapat menampung anggaran kos permintaan sebelum penghantaran. Teruskan apabila gagal jika tiada bajet dikonfigurasikan. |