# Conflicts: # README.md # config/quality/file-size-baseline.json # docs/diagrams/comparison-table.svg # docs/diagrams/free-tier-budget.svg # docs/diagrams/readme-hero.svg # docs/i18n/am/llm.txt # docs/i18n/ar/llm.txt # docs/i18n/az/llm.txt # docs/i18n/bg/llm.txt # docs/i18n/bn/llm.txt # docs/i18n/cs/llm.txt # docs/i18n/da/llm.txt # docs/i18n/de/llm.txt # docs/i18n/el/llm.txt # docs/i18n/es/llm.txt # docs/i18n/et/llm.txt # docs/i18n/fa/llm.txt # docs/i18n/fi/llm.txt # docs/i18n/fr/llm.txt # docs/i18n/ga/llm.txt # docs/i18n/gu/llm.txt # docs/i18n/ha/llm.txt # docs/i18n/he/llm.txt # docs/i18n/hi/llm.txt # docs/i18n/hr/llm.txt # docs/i18n/hu/llm.txt # docs/i18n/hy/llm.txt # docs/i18n/id/llm.txt # docs/i18n/ig/llm.txt # docs/i18n/it/llm.txt # docs/i18n/ja/llm.txt # docs/i18n/ka/llm.txt # docs/i18n/km/llm.txt # docs/i18n/kn/llm.txt # docs/i18n/ko/llm.txt # docs/i18n/lt/llm.txt # docs/i18n/lv/llm.txt # docs/i18n/ml/llm.txt # docs/i18n/mr/llm.txt # docs/i18n/ms/llm.txt # docs/i18n/mt/llm.txt # docs/i18n/my/llm.txt # docs/i18n/ne/llm.txt # docs/i18n/nl/llm.txt # docs/i18n/no/llm.txt # docs/i18n/or/llm.txt # docs/i18n/pa/llm.txt # docs/i18n/phi/llm.txt # docs/i18n/pl/llm.txt # docs/i18n/pt-BR/llm.txt # docs/i18n/pt/llm.txt # docs/i18n/ro/llm.txt # docs/i18n/ru/llm.txt # docs/i18n/si/llm.txt # docs/i18n/sk/llm.txt # docs/i18n/sl/llm.txt # docs/i18n/sr/llm.txt # docs/i18n/sv/llm.txt # docs/i18n/sw/llm.txt # docs/i18n/ta/llm.txt # docs/i18n/te/llm.txt # docs/i18n/th/llm.txt # docs/i18n/tr/llm.txt # docs/i18n/uk-UA/llm.txt # docs/i18n/ur/llm.txt # docs/i18n/uz/llm.txt # docs/i18n/vi/llm.txt # docs/i18n/yo/llm.txt # docs/i18n/zh-CN/llm.txt # docs/i18n/zh-TW/llm.txt # docs/reference/PROVIDER_REFERENCE.md # docs/screenshots/free-tier-budget-card.svg
README (한국어)
🌐 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 · 🇱🇹 lt · 🇱🇻 lv · 🇮🇳 ml · 🇮🇳 mr · 🇲🇾 ms · 🇲🇹 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
💰 월 ~14억 7천만 개의 무료 토큰
무료 티어를 수동으로 조합하는 일은 고통스럽습니다. 수십 개의 SDK, 수십 가지 속도 제한, 그리고 실제로 얼마나 사용할 수 있는지조차 알기 어렵습니다. OmniRoute는 34개의 반복 풀 키에 걸친 452개의 무료 티어 항목을 카탈로그화하며, 공개된 월간 예산이 양수인 16개 풀과 모델별 Groq 한도 5개를 기준으로 공유 풀의 중복을 제거해 대표 토큰 수치를 계산합니다. 지역 신원 확인을 거쳐야만 사용할 수 있는 할당량(현재: ModelScope)은 별도로 표시되며, 지역 신원 확인 뒤 제공되는 약 600만 개 이상의 토큰은 대표 수치에 절대 합산되지 않습니다. 결과는 대시보드(
/dashboard/free-tiers)에서 계속 확인할 수 있습니다.
실시간
/dashboard/free-tiers페이지의 애니메이션 요약입니다. 전체 방법론(풀 중복 제거, 크레딧 티어, 공급자 약관): docs/reference/FREE_TIERS.md.이 수치는 2주마다 실제 카탈로그를 기준으로 재검증되며 양방향으로 변동됩니다. 공급자가 무료 티어를 종료하면 수치가 내려가고, 새로운 무료 티어가 추가되면 올라갑니다. 저희는 낙관적인 최댓값을 반올림해 제시하지 않고, 카탈로그가 실제로 계산한 결과만 공개합니다.
⭐ OMNIROUTE가 비용을 절약하고 작업을 더 쉽게 만드는 데 도움이 되었다면 저장소에 Star를 눌러주세요.
💬 커뮤니티에 참여하세요
👋 유지관리자를 팔로우하고 새로운 공급자, 릴리스 및 팁을 가장 먼저 받아보세요:
질문, 공급자 관련 팁, 로드맵 및 지원 → Discord · Telegram · WhatsApp 🌍 글로벌 / 🇧🇷 브라질 / 포털
📈 게이트웨이는 계속 성장합니다
| v3.8.49 | v3.8.50 | v3.8.51+ |
|
|---|---|---|---|
| 🌐 제공업체 | 290 | 352 | 추가 예정 |
| 🧠 고유 채팅 모델 ID | 1185 | 1312 | — |
| 🖼️ 모달리티 브리지 | — | 🆕 비전 + 오디오 + 비디오 | — |
| 📡 Radar 무료 카탈로그 | — | 🆕 선택 사용 | — |
| ⚖️ 할당량 인식 스케줄링 | — | 🆕 Quota-Share | — |
| 📊 할당량 텔레메트리 | — | 🆕 실시간 | — |
→ 로드맵 — v3.9.0 LTS를 향해 나아가는 중
🧩 사용 가능
| 🚀 시작 | 🚀 빠른 시작 | 📦 설치 | 🆓 설정 불필요 |
| 💡 알아보기 | 💥 약속 | 🤔 OmniRoute를 선택하는 이유 | 🏆 차별점 |
| ⚙️ 기능 | 🎯 콤보 | 🌐 제공업체 | 🔌 CLI & MCP |
| 🗜️ 압축 | 🖥️ 실행 환경 | 🔒 비공개 | |
| 👀 살펴보기 | 🎬 실제 작동 모습 | ✨ 새로운 기능 | 🤖 호환 CLI |
| 💚 지원 | 💚 지원 / 후원 | 💬 커뮤니티 | 💖 후원자 |
| 📦 프로젝트 | 🛠️ 기술 스택 | 📖 문서 | 👥 기여자 |
🆓 설치하는 즉시 작동합니다 — 키도, 설정도 필요 없습니다
# 새로 설치한 상태에서 자격 증명 없이도 `auto`는 이미 작동합니다:
curl http://localhost:20128/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model":"auto","messages":[{"role":"user","content":"Hello!"}]}'
특정 무료 백엔드를 선호하시나요? oc/…(OpenCode Free)를 직접 호출하세요. 그런 다음 auto로 전환하여 OmniRoute가 선택하도록 하세요.
📦 Python, Node.js, PHP 및 cURL용 복사하여 붙여넣을 수 있는 빠른 시작 스크립트 → examples/quickstart/
💥 약속
🤔 왜 OmniRoute인가요?
🤝 오픈 소스 친구들의 후원
오픈 소스 친구로 함께하고 싶으신가요? 이들은 오픈 소스를 후원하고 OmniRoute가 계속 발전하도록 돕는 기업들입니다. 또한 저희는 이들이 제공하는 모든 지원이 어디에 사용되는지 공개적으로 밝힙니다. 문의: diegosouza.pw@outlook.com
|
Kimi Moonshot AI |
이 프로젝트를 후원해 주신 창립 오픈 소스 친구 Kimi (Moonshot AI)에 감사드립니다! Kimi는 오픈 웨이트 K2 및 K3 모델 제품군을 개발한 AI 연구소입니다. Kimi K3는 폐쇄형 모델보다 훨씬 저렴한 가격으로 1M 토큰 컨텍스트 창, 네이티브 비전, 프런티어급 코딩 성능을 제공하며 Claude Code, Codex 및 OmniRoute가 지원하는 모든 코딩 도구에서 별도 설정 없이 바로 작동합니다.
Kimi의 지원으로 가능한 것: Kimi의 API 크레딧은 OmniRoute의 AI 검증 릴리스 파이프라인, 즉 모든 풀 리퀘스트가 배포되기 전에 검토하는 Kimi K3 기반 병합 검증 단계와 일상적인 기능 개발을 지원합니다. 최고 수준의 Kimi 지원은 두 경로 모두에서 제공됩니다. 직접 사용하는 Kimi API( kimi-k3)와 Kimi Code 코딩 플랜(OAuth 및 API 키)입니다. OmniRoute는 Kimi의 지원 프로그램에 참여한 최초의 브라질 오픈 소스 프로젝트이기도 합니다. 15% 추가 크레딧과 함께 Kimi API 키 받기 →
|
|
Cheaper Inference cheaperinference.com |
이 프로젝트를 후원해 주신 OmniRoute 오픈 소스 친구 Cheaper Inference에 감사드립니다! Cheaper Inference는 Claude, GPT-5.x, Gemini, Kimi K3, GLM, DeepSeek, Grok, MiniMax 등 42개의 프런티어 모델을 하나의 OpenAI 호환 엔드포인트를 통해 재판매하는 비용 순위 기반 게이트웨이입니다. 모델 개발사의 정가를 절대 초과하지 않으면서 각 요청을 이용 가능한 가장 저렴한 제공업체로 라우팅합니다.
OmniRoute의 최고 수준 지원: Chat Completions, 네이티브 /v1/responses 엔드포인트, 비전, 도구 호출 및 3개의 이미지 모델(grok-imagine, nano-banana-pro, nano-banana-2, cheaperinference/<model>로 이용 가능)을 지원합니다. API 키 받기 →
|
aff=omniroute 태그가 지정된 링크는 파트너 링크입니다. 추가 비용 없이 프로젝트 후원에 기여합니다.
🎟️ 제휴 프로모션 — 저희가 후원하지 않는 제공업체의 무료 가입 쿠폰(클릭하여 펼치기)
이 섹션은 추천/쿠폰 코드만을 위한 공간입니다. 후원 파트너십은 위의 🤝 오픈 소스 친구들의 후원 섹션에 있습니다. OmniRoute는 여기에 나열된 제공업체와 후원 또는 파트너십 관계가 없습니다. 누구나 사용할 수 있는 공개 쿠폰입니다.
|
AgentRouter agentrouter.org |
AgentRouter — 제휴 가입 · 가입 시 $100 무료 크레딧(무료 서버이므로 지연 시간이 더 길 수 있습니다. 프로덕션보다는 테스트에 적합합니다). v3.8.50부터 OmniRoute에서 최고 수준으로 지원합니다. Chat Completions, Anthropic 호환 통신 형식 및 OpenAI 호환 경로를 지원합니다. 이용 가능한 모델에는 claude-opus-4-8, claude-opus-5, gpt-5.6-sol 등이 있습니다. $100 받기 →
⚠️ 제휴 링크 — OmniRoute는 이 제공업체와 후원 또는 파트너십 관계가 없습니다. |
OmniRoute 사용자에게 도움이 되는 넉넉한 무료 가입 쿠폰을 제공하는 다른 제공업체를 알고 계신가요? 이슈를 열어 주시면 여기에 추가하겠습니다.
🎯 콤보 — 핵심 기능
콤보는 OmniRoute가 자동으로 라우팅하는 모델 체인입니다. 할당량이 소진되거나, 제공업체에 장애가 발생하거나, 비용이 급증하면 콤보가 다음으로 적합한 정상 모델로 전환할 수 있습니다. 🛡️
⚡ 설정 불필요 — auto만 사용하세요
콤보를 생성할 필요가 없습니다. 모델을 auto(또는 변형 중 하나)로 설정하면 OmniRoute가 연결된 제공업체를 바탕으로 실시간 점수가 적용되는 가상 콤보를 구성합니다.
| 모델 ID | 최적화 대상 |
|---|---|
auto | 🎯 균형 잡힌 기본값(LKGP — 마지막으로 정상 작동한 제공업체를 계속 사용) |
auto/coding | 🧑💻 코드 생성 시 품질을 우선하는 가중치 |
auto/fast | ⚡ 지연 시간이 가장 짧은 대상을 우선 |
auto/cheap | 💰 토큰당 비용이 가장 저렴한 대상을 우선 |
auto/offline | 🔋 할당량/속도 제한의 여유가 가장 큰 대상을 우선 |
auto/smart | 🔭 품질 우선 + 더 나은 모델을 찾기 위한 10% 탐색 |
auto/lkgp | 📌 마지막으로 정상 작동한 제공업체를 명시적으로 계속 사용 |
auto/chaos | 🧪 복원력 테스트(카오스 엔지니어링)를 위한 장애 주입 가중치 |
🔀 또는 직접 구성하세요 — 19가지 라우팅 전략
19가지 전략 모두를 콤보 단계별로 자유롭게 조합할 수 있습니다.
| # | 전략 | 기능 |
|---|---|---|
| 1 | priority |
첫 대상을 우선하는 순차 목록 — 각 대상을 모두 소진한 후 다음 대상으로 이동 🥇 |
| 2 | fill-first |
각 대상의 할당량을 완전히 채운 후 다음 대상으로 이동 |
| 3 | weighted |
대상별 가중치에 따른 가중 무작위 선택 |
| 4 | round-robin |
대상을 순서대로 순환 |
| 5 | p2c |
2개 선택 방식의 무작위 부하 분산 |
| 6 | least-used |
현재 부하가 가장 낮은 대상을 선택 |
| 7 | random |
균등 무작위 선택(중복 제거) |
| 8 | strict-random |
반복 항목을 중복 제거하지 않고 무작위로 선택 🎲 |
| 9 | cost-optimized |
실시간 카탈로그 가격을 기준으로 요청당 비용($) 최소화 💸 |
| 10 | headroom |
남은 할당량이 가장 많은 대상을 선택 |
| 11 | reset-window |
할당량 기간이 가장 빨리 초기화되는 대상을 우선 |
| 12 | reset-aware |
할당량 초기화 시간을 기준으로 순위 지정 — 짧은 기간을 우선 📊 |
| 13 | context-relay |
긴 대화를 위해 대상 간에 컨텍스트를 전달 🧠 |
| 14 | context-optimized |
현재 컨텍스트 크기에 가장 적합한 대상을 선택 |
| 15 | cache-optimized |
재사용 가능한 각 프롬프트 접두사를 동일한 계정에 고정 — 프롬프트 캐시 적중률 극대화 🎯 |
| 16 | lkgp |
마지막 정상 경로(Last-Known-Good Path) — 마지막으로 성공한 제공업체에 고정한 후 규칙에 따라 대체 경로 사용 |
| 17 | auto |
모든 연결을 대상으로 16가지 요소를 실시간으로 평가 🤖 |
| 18 | fusion |
모델 패널에 요청을 분산하고 심사 모델이 하나의 답변으로 종합 🧬 |
| 19 | pipeline |
단계를 연결 — 각 대상의 출력이 다음 대상의 입력으로 전달됨 🔗 |
Auto-Combo 엔진은 모든 후보를 16가지 요소(상태, 할당량, 비용, 지연 시간, 작업 적합성, 품질, 세션 가용성 등)로 평가합니다. 자세한 내용은 docs/routing/AUTO-COMBO.md를 참조하세요.
🧱 복원력이 기본으로 제공됩니다(서로 독립적인 3개 계층)
🏆 OmniRoute만의 차별점
📊 전체 방법론 및 기능별 세부 비교: 9router, OpenRouter, CLIProxyAPI 및 LiteLLM → docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md
💚 OmniRoute 후원하기
OmniRoute는 MIT 라이선스로 공개적으로 유지·관리됩니다. 시간이나 비용을 절약하는 데 도움이 되었다면, 독립성을 유지할 수 있도록 자신에게 맞는 방법으로 후원해 주세요. 후원은 라우팅 우선순위에 절대 영향을 주지 않습니다. 후원으로 얻는 것은 노출이지 순위가 아닙니다.
| ⭐ 저장소에 별표 표시 | 무료 — 인지도를 높이는 데 실질적으로 도움이 됩니다 | OmniRoute에 별표 표시 |
| 🐙 GitHub Sponsors | 일회성 또는 월간 후원 · 플랫폼 수수료 없음 | github.com/sponsors/diegosouzapw |
| ☕ Ko-fi | 빠른 일회성 후원, 후원자는 가입 불필요 | ko-fi.com/diegosouzapw |
| 🧋 Buy Me a Coffee | 소소하고 편안한 방식의 후원 | buymeacoffee.com/diegosouzapw |
| 🖐 Liberapay | 정기 후원 · 비영리 · 오픈 소스 | liberapay.com/diegosouzapw |
| 🇧🇷 PIX (브라질) | 즉시 송금, 수수료 없음 | 키 및 QR은 아래 참조 |
| ₿ 암호화폐 | BTC · ETH · USDT-TRC20 · USDC-Solana | 주소는 아래 참조 |
🇧🇷 PIX — 즉시 송금, 수수료 없음 (브라질)
키 (무작위): 5d865059-bc44-483a-962d-43ceb80126eb
Pix 복사 및 붙여넣기:
00020101021126580014br.gov.bcb.pix01365d865059-bc44-483a-962d-43ceb80126eb5204000053039865802BR5922OMNIROUTE CONTRIBUICAO6006BRASIL62070503***630475DD
₿ 암호화폐 — BTC · ETH · USDT-TRC20 · USDC-Solana (클릭하여 펼치기)
| ₿ BTC | Bitcoin (SegWit) | bc1qh00smz004sy85wyl28v77tenkt3ckl6eaep7fd |
| Ξ ETH | Ethereum (ERC20) | 0x64Cf6B68A6Ff34288e89172950a2d00102337a84 |
| ₮ USDT | Tron (TRC20) | TKAF41JpuQrHbKTnsQa9svJE2T192Hvsc2 |
| $ USDC | Solana | 2emNNZzVVWQc3FQ2wk9M6qXUQmW8AKdjjL174fXR28Tu |
⚠️ 각 코인은 표시된 네트워크에서만 전송하세요. 잘못된 네트워크로 전송하면 자금을 잃을 수 있습니다.
🐛 버그를 발견했거나 의견이 있으신가요? 토론을 시작해 주세요.
개발자 참고 사항: 이 프로젝트는 개발 편의를 위해 npm 설치 또는 설치 후 과정에서 로컬 .env 파일을 생성할 수 있습니다. 이 파일은 의도적으로 .gitignore를 통해 무시되며(.gitignore 참조), 절대로 커밋해서는 안 됩니다. 실수로 커밋한 경우 노출된 모든 비밀 정보를 교체하고 기록에서 해당 파일을 제거하세요. 로컬 환경 파일 및 비밀 정보 관리 지침은 docs/DEVELOPER-ENVIRONMENT.md를 참조하세요.
📡 OmniRoute Radar
문서에 명시된 중복 풀 제거 카탈로그를 기준으로, 무료 티어의 주요 수치는 여전히 월 ~1.47B 토큰입니다. 별도로 제공되는 한시적 공급자 가입 크레딧을 활용하면 첫 달에는 ~2.07B까지 늘어날 수 있습니다. Radar는 OmniRoute 릴리스 사이에 더 최신의 무료 모델 가용성 정보를 원하는 사용자를 위한 선택적 서명 카탈로그 오버레이입니다. 커뮤니티 카탈로그와 기존의 모든 무료 기능은 계속 무료로 제공됩니다.
후원자는 실시간 카탈로그와 추가 공급자 기회를 받을 수 있습니다. 별도로 변동 가능한 한도는 공급자 가용성에 따라 최대 월 약 3B 토큰입니다. 이 한도는 보장되지 않습니다. 공급자는 언제든지 할당량, 자격 요건, 모델 또는 지역을 변경할 수 있습니다.
Radar는 옵트인 방식이며 GET 전용입니다. OmniRoute 클라이언트는 프롬프트, 트래픽, 공급자 구성, 사용량 원격 측정 데이터 또는 로컬 공지 숨김 상태를 업로드하지 않습니다. 자격 요건과 현재 카탈로그에 대한 자세한 내용은 **radar.omniroute.online/planos**에서 확인하세요.
✨ 새로운 기능
v3.8.20 → v3.8.50의 최근 주요 변경 사항입니다. 전체 변경 이력은
CHANGELOG.md에서 확인할 수 있습니다.
- 🎛️ OmniConductor — 에이전트 플릿으로의 인바운드 A2A 위임, Agent Card의 Conductor 스킬, Faro 푸시투토크 음성 채팅이 포함된 대시보드 패널을 제공합니다. → A2A 서버
- 🛂 적응형 요청 수용 및 과부하 보호 — 무거운 채팅 요청은 503 오류를 반환하는 대신 대기열에 들어가며, 연결별 원자적 RPM 롤링 리스를 사용합니다. → 복원력 가이드
- 🗂️ 표준
/v1/models순서 — 공급자별로 연속된 단일 블록을 구성하고(콤보는 맨 앞에 고정), 모든 카탈로그 소스에서 안정적인 순서를 유지합니다. → API 레퍼런스 - 🗜️ 압축 강화 — 기본 활성화된 인플레이션 가드, DE / FR / JA + 중국어(wényán)용 Caveman 팩, Gradle 및 .NET용 RTK 필터를 제공합니다. → 압축
- 💸 정직한 정액제 비용 — 구독/코딩 플랜 공급자는 비용 분석에서 $0으로 표시되며, 예산, 할당량 및 라우팅에서는 계속 추정치를 사용합니다. → API 레퍼런스
- ⚖️ Quota-Share 라우팅 — 공유 계정의 할당량을 풀링된 키에 공정하게 분배하며, 유휴 할당분을 빌려주는 작업 보존 방식을 사용합니다. → 복원력 가이드
- 🤖 단일 명령 CLI/에이전트 설정 — 등록된
setup-*명령 13개를 제공하며,omniroute run은 7개 CLI(Claude Code, Codex, Aider, Goose, OpenCode, Qwen Code, Gemini CLI)를 실행합니다.omniroute configure는 대화형 공급자+모델 선택기와 컨텍스트별 즐겨찾기를 통해 10개 대상을 지원합니다. → CLI 통합 - 🛰️ 원격 모드 — 범위가 지정된 토큰(
connect/contexts/tokens)으로 원격 OmniRoute를 제어하고, VPS 설치를 위한antigravityOAuth 도우미를 사용할 수 있습니다. → 원격 모드 - 🧭 더 스마트한 자동 라우팅 —
auto/<category>:<tier>콤보, Fusion(모델 패널 + 판정 모델), 작업 인식 라우팅, 요청별 모델/모드/USD 예산 재정의를 제공합니다. → Auto-Combo - 🗜️ 플러그형 압축 — 조합 가능한 엔진 12개와 Compression Studios를 제공합니다. LLMLingua-2, 2단계 Ultra, omniglyph, 단계별 충실도 게이트, GCF v3.2, 드래그 재정렬 편집기가 포함됩니다. → 압축
- 🕵️ 투명한 MITM 복호화(TPROXY) — SNI별 CA와 신뢰 저장소 설치 프로그램을 사용해 프록시 환경 변수를 무시하는 CLI의 트래픽을 캡처합니다. → MITM/TPROXY
- 💸 전 영역 비용 텔레메트리 — 모든 엔드포인트에서
X-OmniRoute-*비용/사용량 헤더, 캐시 HIT 절감액 헤더, 키별 USD 지출 할당량을 제공합니다. → API 레퍼런스 - 🧠 사용자가 제어하는 메모리 — 기본적으로 비활성화되며, 선택적으로 int8 벡터 양자화와 유형별 감쇠를 사용할 수 있고, 요청별
x-omniroute-no-memory를 지원합니다. → 메모리 - 🛡️ 보안 — 모든 LLM 경로에 프롬프트 인젝션 가드(레드팀 제품군)를 적용하고, 선택형 자격 증명 마스킹 가드레일(양방향에서 유출된 API 키/비밀 정보를 삭제), 무료 DuckDuckGo 최후 수단 웹 검색, 대시보드용 선택적 OIDC 로그인 게이트를 제공합니다(비밀번호 로그인은 항상 사용할 수 있습니다). → 가드레일
- 🖼️ 신규 엔드포인트 —
/v1/ocr(Mistral OCR)과/v1/audio/translations(Whisper 스타일)가 미디어 기능을 완성합니다. → API 레퍼런스 - 🎨 이미지/비디오/오디오 생성 — 미디어를 위한 단일 API로 xAI Grok Imagine 및 Novita AI 비디오, ComfyUI, Magnific, Adobe Firefly, Segmind와 ElevenLabs 같은 음성 공급자를 지원합니다. → API 레퍼런스
- 🌍 배포 및 운영 — 리버스 프록시
basePath, 브라우저 언어 자동 감지, 키별 기기 추적, 루트 권한 없는 MITM 신뢰 설정, zh-TW 현지화를 제공합니다. → 환경 - 🤝 더 많은 공급자 및 에이전트 — 클라우드 에이전트(Codex Cloud, Cursor, Devin, Jules), 브라우저 + OAuth 로그인을 지원하는 Grok Build(xAI), 일급 Ollama 카드, Claude Opus 5 및 Sonnet 5, Kimi 공식 파트너십(Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI 등을 포함하며, 새롭게 개편된 352개 공급자 카탈로그를 제공합니다. → 공급자
- 📡 투명한 라우팅 — 모든 응답에 요청을 처리한 전략/공급자/지연 시간을 나타내는
X-OmniRoute-Decision헤더가 포함됩니다. 새로운cache-optimized콤보 전략과 Auto-CombocacheAffinity요소는 반복 요청을 캐시된 접두사를 보유한 연결로 다시 라우팅하며, 읽기 전용/v1/auto-combo/{channel}/candidates엔드포인트는auto/*채널의 실시간 후보 풀을 노출합니다. → Auto-Combo - ⚡ 로컬 성능 및 인프라 — 원클릭 로컬 Redis, Cloudflare Workers / Deno Deploy 릴레이 배포 도구, 감독형 임베디드 서비스인 Bifrost 및 Mux를 제공합니다. → 임베디드 서비스
- 🧩 그 밖의 포함 기능 — 플러그인 프레임워크 + 마켓플레이스, Omni/Agent/GitHub 스킬 프레임워크, Obsidian 볼트 통합(22개 MCP 도구), OpenAI 호환 Batch 및 Files API, 시맨틱 응답 캐시, 리더보드를 포함한 게이미피케이션, ACP 에이전트 검색(내장 에이전트 15개), BigQuery로의 예약 로그 내보내기,
auto/chaos장애 주입, Telegram 봇 브리지, 앱 내 버전 관리자, LMArena-ELO 무료 공급자 순위를 제공합니다. → 문서
🤖 호환 가능한 CLI 및 코딩 에이전트
하나의 설정 —
http://localhost:20128/v1— 만으로 모든 AI IDE 또는 CLI를 무료 및 저비용 모델에서 실행할 수 있습니다.
Claude Code |
Codex CLI |
Cline |
Kilo Code |
Zoo Code |
Continue |
Aider |
ForgeCode |
jcode |
DeepSeek TUI |
CodeWhale |
OpenCode |
Factory Droid |
Copilot CLI |
Cursor CLI |
Smelt |
Pi |
Grok Build |
Hermes Agent |
OpenClaw |
Goose |
Open Interpreter |
Warp AI |
Agent Deck |
📖 36개 도구 전체(26개 CLI Code + 10개 CLI Agent)의 도구별 설정 → docs/reference/CLI-TOOLS.md · 🧩 OpenCode 플러그인 → @omniroute/opencode-provider
단 하나의 명령으로 OmniRoute를 통해 지원되는 모든 CLI를 실행하세요 — 설정 파일을 작성하지 않으며, 자격 증명은 프로세스별로 주입되고 Qwen/Gemini에는 일회용 격리 홈이 제공됩니다:
omniroute run claude --model openai/gpt-5.4 # Claude Code
omniroute run codex --model glm/glm-5.2 # OpenAI Codex CLI
omniroute run aider --model glm/glm-5.2 -- --message "reply OK"
omniroute run goose --model glm/glm-5.2
omniroute run opencode --model glm/glm-5.2 -- run "reply OK"
omniroute run qwen --model glm/glm-5.2 -- -p "reply OK"
omniroute run gemini --model glm/glm-5.2 -- --skip-trust -p "reply OK"
# 또는 provider+model을 대화형으로 선택하고 도구 자체의 설정을 작성합니다:
omniroute configure codex # 다음도 지원: claude opencode qwen aider goose gemini cline continue kilo
모든 명령은 활성 원격 컨텍스트(omniroute connect <host>)를 따르며, --dry-run은
실행하지 않고 정확한 환경 변수/인수를 미리 보여주고, --api-key-env NAME은 셸 기록에
비밀 정보가 남지 않도록 합니다. → CLI 통합
🌐 352개 AI 제공업체 — 152개는 카탈로그에 무료로 표시됨
정식 채팅, 미디어, 검색, 로컬, 클라우드 에이전트 및 시스템 컬렉션 전반에 걸쳐 352개의 등록된 제공업체가 있으며, 이 중 152개에는 검색용
hasFree: true메타데이터가 지정되어 있습니다. 채팅 모델 레지스트리는 229개 제공업체 / 2,554개의 고유한 제공업체-모델 쌍 / 1,283개의 원시 모델 ID를 포함하며, 별도의 무료 예산 카탈로그에는 443개의 모델별 행, 34개의 반복 제공 풀, 53개의 반복 제공/키 불필요 영구 무료 제공업체가 있습니다. 이는 의도적으로 서로 다른 분모를 사용합니다. 정의와 풀 중복 제거 계산 방식은 제공업체 레퍼런스 및 무료 티어에서 확인할 수 있습니다.
🏢 모든 주요 연구소 — 하나의 엔드포인트로
OpenAI |
Anthropic |
Gemini |
xAI Grok |
DeepSeek |
Mistral |
Qwen |
Meta Llama |
Groq |
NVIDIA |
MiniMax |
Cohere |
Perplexity |
HuggingFace |
Together |
Fireworks |
Cloudflare |
Baidu |
…그 외 330개 이상 — 모든 아이콘은 대시보드의 제공업체 카탈로그에서 실시간으로 불러옵니다. 📖 제공업체 레퍼런스
🆓 영구 무료 — $0, 카드 불필요
📖 전체 기계 판독 가능 카탈로그 → docs/reference/PROVIDER_REFERENCE.md
🖥️ OmniRoute 실행 환경 — 어디서나
같은 앱, 내 컴퓨터, 내 규칙. 전역 npm 설치부터 Termux를 통한 휴대폰 실행까지.
| 플랫폼 | 설치 | 주요 특징 |
|---|---|---|
| 📦 npm (전역) | npm install -g omniroute | 명령어 하나로 모든 OS에서 실행 |
| 🐳 Docker | docker run … diegosouzapw/omniroute | 멀티 아키텍처 AMD64 + ARM64 |
| 🖥️ 데스크톱 (Electron) | npm run electron:build | 네이티브 창 + 시스템 트레이 — Windows / macOS / Linux |
| 🎩 메뉴 막대 (OmniRouteTray) | brew install --cask zoispag/tap/omniroute-tray | 서버 감독 및 자동 업데이트 — macOS |
| 💪 ARM | 네이티브 arm64 | Raspberry Pi, ARM 서버, Apple Silicon |
| 📱 Android (Termux) | pkg install nodejs && npx -y omniroute | 휴대폰에서 루트 권한 없이 24시간 연중무휴 실행 |
| 📲 PWA | "홈 화면에 추가" | 전체 화면, 오프라인, 브라우저에서 설치 가능 |
| 🧩 OpenCode 플러그인 | @omniroute/opencode-provider | 네이티브 OpenCode 통합 |
| 🤖 VS Code Copilot Chat | OmniCopilot 확장 프로그램 설치 | 네이티브 Copilot Chat 선택기에 모든 OmniRoute 모델 표시 — stable 및 Insiders |
| 🛠️ 소스에서 설치 | npm install && npm run dev | 직접 수정하고 기여 가능 |
📖 Docker 가이드 · 데스크톱 · 메뉴 막대 트레이 · Termux · PWA · OpenCode
🧩 신규: VS Code 네이티브 Copilot Chat에서 OmniRoute 사용
새로운 사이드바도, 새로운 채팅 UI도 필요 없습니다. OmniRoute가 제공하는 모든 모델이 이미 사용 중인 Copilot Chat 모델 선택기에 바로 표시됩니다. VS Code 1.122부터는 GitHub 로그인이나 Copilot 구독 없이도 공급자 모델을 사용할 수 있으며, 에이전트 모드, 도구 호출, 비전을 모두 무료로 이용할 수 있습니다.
OmniCopilot 확장 프로그램을 설치하고 OmniRoute 서버를
가리키도록 설정한 다음(기본값: localhost:20128), Copilot Chat → 모델 선택기
→ 모델 관리… → OmniRoute를 차례로 여세요.
| 스토어 | 링크 | 호환 대상 |
|---|---|---|
| 🧩 VS Code Marketplace | 설치 → | VS Code — stable 및 Insiders |
| 🔓 Open VSX Registry | 설치 → | Cursor, Windsurf, VSCodium, Theia, code-server, Gitpod, Antigravity, Kiro… |
편집기 내에서 확장 프로그램 보기를 열고 **"OmniRoute"**를 검색한 다음 설치를 클릭하세요. 두 스토어 모두 동일한 방식으로 작동합니다. 소스, 이슈 및 게시 실행 지침서는 diegosouzapw/OmniCopilot에서 확인할 수 있습니다.
📖 VS Code Copilot Chat 가이드 — 설정, 선택기에 표시되는 항목, 탭 내 대시보드, 문제 해결
🎩 신규: OmniRouteTray — 메뉴 막대에 상주하는 게이트웨이
omniroute serve는 항상 실행 중일 때 가장 잘 작동합니다. **OmniRouteTray**는 이를 한 번 설정하면 신경 쓸 필요 없는 macOS용 메뉴 막대 앱으로 바꿔 줍니다. 서버를 시작하고, 재부팅 후에도 계속 실행되도록 유지하며, 제자리에서 업데이트하고, 한 번의 클릭으로 실시간 토큰 예산을 확인할 수 있게 해 줍니다. 터미널 창을 계속 열어 둘 필요도,npm install -g omniroute설치를 일일이 관리할 필요도 없습니다.
Tauri v2로 제작되었으며(반올림 오차만큼 작은 Rust 코어), 자체적으로
서명된 Node 24 런타임을 포함하고 앱 전용 OmniRoute 설치를 관리하므로 전역 node/bun과
충돌하지 않습니다. 기존 ~/.omniroute/ 설정과 데이터베이스를 공유하므로 이미 사용 중인
동일한 OmniRoute에 모자만 씌운 셈입니다. 🎩
| 기능 | 작동 방식 |
|---|---|
| 🟢 서버 감독 | omniroute serve를 실행하고, 이미 실행 중인 인스턴스가 있으면 중복 실행하지 않고 해당 인스턴스를 사용합니다 |
| 📊 실시간 사용량을 한눈에 확인 | 공급자 할당량 막대, 초기화 카운트다운이 포함된 Claude 세션/주간 한도, 30일 비용 내역 |
| 🔄 제자리에서 자동 업데이트 | 단계적 설치, 원자적 교체, 실패 시 롤백 — 항상 최신 릴리스 유지 |
| 🚀 로그인 시 시작 | 선택적으로 로그인 시 실행 가능하며, 트레이에만 표시되고 Dock 아이콘은 없습니다 |
| 🩺 진단 및 로그 | 한 번의 클릭으로 진단 실행 및 서버 로그 확인 |
brew install --cask zoispag/tap/omniroute-tray
다운로드를 선호하시나요? 릴리스에서 최신 .dmg를 받으세요. 소스, 이슈 및 빌드
문서는 zoispag/omniroute-tray에서 확인할 수 있습니다.
💛 @zoispag의 커뮤니티 프로젝트이며, 공식 OmniRoute 릴리스가 아닙니다.
🔒 비공개 및 로컬 우선
🔌 완전한 CLI + A2A 및 MCP
서버를 넘어 OmniRoute는 80개 이상의 명령어를 갖춘 완전한 명령줄 조종석이며, AI 에이전트가 스스로 이를 제어할 수 있도록 개방형 에이전트 프로토콜도 제공합니다.
⌨️ 진정한 CLI (start만 제공하는 것이 아님)
omniroute # 게이트웨이 + 대시보드 실행(포트 20128)
omniroute chat # 대화형 TUI 채팅 클라이언트(슬래시: /model /combo /skill /memory)
omniroute setup # 안내형 최초 실행 마법사
omniroute doctor # 제공업체, 포트, 네이티브 종속성 진단
🛰️ 원격 모드 — 여기서 CLI를 실행하고 VPS에서 OmniRoute 실행
서버에서 OmniRoute를 사용하시나요? 동일한 CLI로 노트북에서 제어할 수 있습니다. 범위가 지정된 액세스 토큰으로 한 번 로그인하면 이후 모든 명령이 원격 서버를 대상으로 실행됩니다.
omniroute connect 192.168.0.15 # 비밀번호 → 범위 지정 토큰, 컨텍스트로 저장됨
omniroute models list # ← 원격 서버에서 실행됨
omniroute configure codex # ← 원격 모델을 선택하고 로컬 Codex 프로필 작성
omniroute tokens create --name ci --scope read # 다른 컴퓨터용으로 범위가 더 제한된 토큰 발급
omniroute contexts use default # ← 로컬 서버로 다시 전환
토큰의 범위는 read / write / admin으로 지정되며, 프로세스를 생성하는 라우트는 루프백 전용으로 유지됩니다.
📖 원격 모드
🤝 에이전트 연결 — OmniRoute 자체를 제어합니다
MCP, A2A, REST API, 웹훅 또는 원격 CLI를 통해 OmniRoute를 노출하면, 역량을 갖춘 모든 에이전트(또는 자체 코드)가 라우팅, 제공업체, 콤보, 캐시, 압축, 메모리 등 전체 게이트웨이를 자율적으로 제어할 수 있습니다. 아래 HTTP 엔드포인트는 http://localhost:20128에서 제공됩니다.
| 인터페이스 | 엔드포인트 / 명령어 | 용도 |
|---|---|---|
| 🧰 MCP (stdio) | omniroute --mcp | Claude Desktop, Cursor 또는 모든 MCP 클라이언트에 연결 |
| 🌊 MCP (HTTP) | /api/mcp/stream | 원격 MCP — 110개 도구, 33개 범위(적용은 선택 사항), 전체 감사 추적 |
| 📡 MCP (SSE) | /api/mcp/sse | 스트리밍 MCP 전송 |
| 🤝 A2A | /.well-known/agent.json | 에이전트 간 통신, JSON-RPC 2.0 + SSE, 6개 스킬 |
| 🌐 REST API | /v1/* | OpenAI 호환 — 채팅, 임베딩, 이미지, 오디오, OCR |
| 🔔 웹훅 | /api/webhooks | 요청 / 할당량 이벤트를 Slack, Discord, Telegram 또는 임의의 URL로 푸시 |
| 🛰️ 원격 CLI | omniroute connect | 범위가 지정된 액세스 토큰으로 원격 인스턴스 제어 |
# MCP를 통해 Claude Code에 전체 OmniRoute 도구 세트 제공:
claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream
🗜️ 토큰 15–95% 절약 — 자동으로
📖 작동 방식 — 파이프라인, 아키텍처 및 절감 계산
기본 스택 조합은 RTK → Caveman 순서로 실행됩니다. 두 엔진이 동일한 도구/컨텍스트 페이로드에 적용되면 절감 효과가 복리로 누적됩니다.
combined = 1 − (1 − RTK) × (1 − Caveman_input)
average = 1 − (1 − 0.80) × (1 − 0.46) = 89.2%
range = 78.4 – 94.6%
코드 블록, URL, JSON 및 구조화된 데이터는 보존 엔진에 의해 항상 보호됩니다.
적은 토큰으로 충분한데 왜 많은 토큰을 사용할까요? 모든 요청은 클라이언트 변경 없이 OmniRoute의 압축 파이프라인을 투명하게 통과합니다. 이제 이 파이프라인은 순서대로 실행되고 라우팅 조합별로 자유롭게 구성할 수 있는 12개의 조합 가능한 엔진 스택입니다. RTK, Caveman (⭐ 90K+), LLMLingua-2, Troglodita (PT-BR)의 아이디어를 기반으로 합니다.
🧱 12개 엔진 스택
엔진은 파이프라인 순서대로 실행되며, 각 조합에서 개별적으로 활성화/비활성화하고 구성할 수 있습니다.
| # | 엔진 | 기능 |
|---|---|---|
| 1 | Session-Dedup | 여러 턴에서 반복되는 콘텐츠 제거(콘텐츠 주소 지정 방식, 턴 간 적용) |
| 2 | CCR | 대용량 블록을 검색 마커 뒤에 보관하고 필요할 때 가져옴 |
| 3 | Lite | 공백 + 이미지 URL 정리(지연 시간이 짧은 기준 모드) |
| 4 | RTK | 스마트 도구 결과 필터링, 중복 제거 및 잘라내기(명령어 인식) |
| 5 | Responses Tool Output | 셸/패치/검색/빌드 출력에 대한 무손실 우선 JSON + 범위가 제한된 진단 압축(Responses API) |
| 6 | Headroom | 벤더링된 GCF 코덱을 통한 JSON 배열의 무손실 표 형식 압축(~30%) |
| 7 | Relevance | 마지막 사용자 쿼리를 기준으로 문장을 추출해 점수화 |
| 8 | Caveman | 규칙 기반 산문 압축(출력에서 ~65–75%) |
| 9 | Aggressive | 요약 + 이전 턴의 점진적 노후화 |
| 10 | LLMLingua-2 | MobileBERT ONNX를 통한 ML 의미론적 가지치기 — 코드 안전, 비동기 |
| 11 | Ultra | 선택적 소형 모델(SLM) 계층을 사용한 휴리스틱 토큰 가지치기 |
| 12 | OmniGlyph | Anthropic 직접 연결에서 측정된 Claude Fable 5를 위한 실험적 이미지 기반 컨텍스트 인코딩. GPT 5.6 트랜스포머는 공급자 확인증이 제공될 때까지 실패 시 차단 상태로 유지됩니다. 4가지 압축 프로필(기본값인 공격적, 균형, 코딩 안전, 패스스루) 제공(가장 공격적이며 명시적으로 활성화해야 함) |
코드 블록, URL 및 구조화된 데이터는 바이트 단위로 완벽하게 항상 보존됩니다. 원클릭 프리셋으로 엔진을 조합할 수 있습니다.
| 모드 | 절감률 | 권장 용도 |
|---|---|---|
| 🪶 Lite | ~15% | 항상 활성화할 수 있는 안전한 기본값 |
| 🪨 Standard (Caveman) | ~30% | 일상적인 코딩 |
| ⚡ Aggressive | ~50% | 도구 사용이 많은 장시간 세션 |
| 🔥 Ultra | ~75% | 최대 절감 |
| 🧰 RTK | 60–90% | 셸/테스트/빌드/git 출력 |
| 🔗 Stacked (RTK → Caveman) | 78–95% | 혼합 프롬프트 + 도구 로그 |
실제 예시 — Standard 모드:
이전(69토큰): "React 컴포넌트가 다시 렌더링되는 이유는 렌더링 주기마다 새로운 객체 참조를 생성하고 있기 때문일 가능성이 높습니다. 인라인 객체를 prop으로 전달하면 React의 얕은 비교가 매번 이를 다른 객체로 인식하여 다시 렌더링됩니다. useMemo를 사용해 객체를 메모이제이션하는 것이 좋습니다."
이후(19토큰): "렌더링마다 새 객체 참조 생성. 인라인 객체 prop = 새 참조 = 재렌더링. useMemo로 감싸세요."
동일한 답변. 토큰 72% 감소. 정확도 손실 없음. ✅
PT-BR 예시 — Troglodita 모드:
이전(42토큰): "문제는 렌더링 주기마다 새로운 객체 참조가 생성되어 컴포넌트가 다시 렌더링된다는 것입니다.
useMemo를 사용하는 것이 좋습니다."이후(12토큰): "재렌더링: 매 주기 새 참조 생성(인라인 객체 재생성).
useMemo사용."동일한 답변. 토큰은 약 70% 감소. 기술적 정확성은 그대로. ✅
🎚️ 엔진을 넘어서 — 출력 스타일, 적응형 다이얼 및 요청별 제어
위의 12개 엔진은 입력을 줄입니다. 세 가지 추가 계층은 어떻게, 언제, 그리고 무엇이 출력되는지를 조정합니다.
- 🪄 출력 스타일 (출력 축 조정) — 결정론적이고 캐시에 안전한 응답 형태 지정 지침을 주입합니다. 여러 스타일을 조합할 수 있으며, 각 스타일은
lite/full/ultra강도를 지원합니다. 스타일 추가는 레지스트리에 한 줄만 등록하면 됩니다.- 간결한 문체 — 군더더기 / 관사 / 유보적 표현을 제거하되 기술적 내용은 정확하게 유지합니다.
- 코드 최소화 — "게으른 시니어 개발자"식 YAGNI: 작동하는 최소한의 변경만 적용하고, 요청하지 않은 뼈대 코드는 만들지 않습니다.
- Ponytail(게으른 시니어 개발자) — YAGNI 단계를 따라 근본 원인을 해결하고, 작동하는 최소한의 diff만 만듭니다.
- ADHD가 있어요(행동 우선) — 다음 행동을 먼저 제시하고, 단계에 번호를 매기며, 구체적인 다음 단계 하나만 제공하고, 서문은 생략합니다.
- 간결한 CJK(文言) — 고전 중국어 기반의 극도로 간결한 스타일입니다(
zh로케일에서만 활성화).
- 🎯 적응형 컨텍스트 예산 (다이얼) — 하나의 켜기/끄기 토큰 임계값 대신, 모델의 컨텍스트 창에 맞추는 데 필요한 수준까지만 가장 저렴하고 정보 손실이 적은 엔진을 단계적으로 적용합니다. 정책:
reserve-output(기본값, 모델 인식) ·percentage·absolute. 모드:floor(크기 적합 보장) ·replace-autotrigger(명시적 선택 우선) ·off(레거시 임계값). - 🎛️ 압축 결정 위치 (우선순위, 높음 → 낮음) — 요청별
x-omniroute-compression헤더 › 라우팅 조합 재정의 › 활성화된 명명 프로필 › 적응형 / 자동 트리거 › 패널 기본값 › 끄기. 적용된 계획은X-OmniRoute-Compression: <mode>; source=<source>응답 헤더로 반환됩니다.
토큰 임계값을 기준으로 자동 트리거하거나, 적응형 다이얼을 켜거나, 명명 프로필을 고정하거나, 요청별로 일회성 설정을 지정하거나, 라우팅 조합별로 파이프라인을 할당할 수 있습니다. 워크로드에 맞는 방식을 선택하세요. 선택적으로 사용할 수 있는 오프라인 평가 하네스(npm run eval:compression)는 변경 사항을 배포하기 전에 고정된 코퍼스를 기준으로 충실도와 절감 효과를 평가합니다.
📖 COMPRESSION_GUIDE.md · RTK_COMPRESSION.md · COMPRESSION_ENGINES.md
⚡ 빠른 시작
1) 설치 및 실행
npm install -g omniroute
omniroute
💡
npm warn ERESOLVE또는 peer-dep 경고가 표시되나요? 무시해도 됩니다.
대시보드: http://localhost:20128 · API: http://localhost:20128/v1.
2) 무료 제공업체 연결(가입 불필요)
대시보드 → 제공업체 → Kiro AI(무료 Claude, 계정당 월 약 50크레딧) 또는 OpenCode Free(인증 불필요) 연결 → 완료.
3) 코딩 도구 연결
기본 URL: http://localhost:20128/v1
API 키: [대시보드 → 엔드포인트에서 복사]
모델: auto (설정 없는 스마트 라우팅 — 또는 임의의 제공업체/모델)
4) 작동 여부 확인
curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY"
연결된 모델 목록이 표시되어야 합니다. 🎉 이것으로 끝입니다. 코딩을 시작하면 OmniRoute가 자동으로 라우팅하고 필요할 때 대체 경로를 사용합니다.
클라이언트가 사용자 지정 헤더를 전송할 수 없는 경우 OmniRoute는 토큰이 포함된 호환성 별칭도 제공합니다.
OpenAI 카탈로그: http://localhost:20128/vscode/YOUR_KEY/
OpenAI 모델: http://localhost:20128/vscode/YOUR_KEY/models
OpenAI 채팅: http://localhost:20128/vscode/YOUR_KEY/chat/completions
OpenAI 응답: http://localhost:20128/vscode/YOUR_KEY/responses
Ollama 채팅: http://localhost:20128/vscode/YOUR_KEY/api/chat
Ollama 태그: http://localhost:20128/vscode/YOUR_KEY/api/tags
Authorization: Bearer ...를 첨부할 수 없는 클라이언트에서만 이 주소를 사용하세요. 헤더 인증이 여전히 권장되는 방식입니다.
📦 더 많은 설치 방법 — Docker, 소스, pnpm, Arch
🐳 Docker
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \
-p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest
:latest는 게시된 안정 SemVer 중 가장 높은 버전을 따릅니다. git main을 추적하지 않습니다. GitOps에서는 :X.Y.Z로 버전을 고정하세요. Docker 릴리스 채널을 참조하세요. 이미지에는 **OMNIROUTE_MEMORY_MB=1024**가 고정 설정되어 있습니다. 대시보드와 가벼운 채팅에는 충분합니다. 코딩 에이전트(Claude Code, Codex, Grok 등에서 보내는 POST /v1/responses)에는 훨씬 더 큰 V8 힙이 필요하며, 긴 컨텍스트 두 개가 겹치면 약 12 GiB에서 프로세스에 FATAL ERROR가 발생합니다. 네이티브 버퍼는 V8 외부에 있으므로 컨테이너 크기를 힙보다 크게 설정하세요.
| 워크로드 | 힙 (-e OMNIROUTE_MEMORY_MB) |
컨테이너 (--memory) |
|---|---|---|
| 대시보드 / 가벼운 채팅 | 1024 (이미지 기본값) |
≥2 g |
| 코딩 에이전트 하나 | 8192 |
≥10 g |
동시 실행되는 긴 /v1/responses 두 개 |
10240–12288 |
≥12–16 g |
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \
-e OMNIROUTE_MEMORY_MB=8192 --memory=10g \
-p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest
전체 표: Docker 가이드 — 런타임 RAM.
사전 릴리스 Docker 채널:
diegosouzapw/omniroute:next및diegosouzapw/omniroute:next-web은 현재 기본release/v*브랜치를 따릅니다. 이러한 가변 태그는 릴리스되지 않은 수정 사항을 테스트하는 용도로만 제공되며 프로덕션 환경에서는 지원되지 않습니다. 자세한 내용은 Docker 릴리스 채널을 참조하세요.
🥟 Bun
Bun 런타임 감지를 통해 표준 bun install 및 전역 설치(bun install -g omniroute)를 지원합니다.
- 내장
bun:sqlite: OmniRoute는 Bun에서 실행될 때 Bun의 내장bun:sqlite드라이버를 사용하며, Node.js에서는better-sqlite3또는sql.js로 대체됩니다. - 개발 환경에서 자동 Webpack 번들러 선택: 개발(
bun run dev) 시 Bun을 자동으로 감지하고 네이티브 V8 바인딩 비호환성을 방지하기 위해 Turbopack을 비활성화하고 Webpack을 사용합니다. 프로덕션 빌드(bun run build)는 Node와 마찬가지로OMNIROUTE_USE_TURBOPACK을 정확히 따릅니다. 기본값은 Turbopack이며, Webpack으로 빌드하려면OMNIROUTE_USE_TURBOPACK=0을 사용합니다(Dockerfile.bun에서는 이를--build-arg로 노출합니다). - 전용 Bun Dockerfile: 네이티브 Bun 프로덕션 배포를 위한 다단계
Dockerfile.bun입니다(docker build -f Dockerfile.bun -t omniroute:bun .).
# Bun으로 설치 및 실행
bun install
bun run dev
🛠️ 소스에서 설치
cp .env.example .env && npm install
PORT=20128 npm run dev
📦 pnpm
pnpm add -g omniroute@latest --allow-build=better-sqlite3 --allow-build=@swc/core && omniroute
🐧 Arch Linux (AUR)
yay -S omniroute-bin && systemctl --user enable --now omniroute.service
🔧 Nix (Flake)
# Nix flakes 사용
nix develop
npm run dev
# 또는 devbox 사용
devbox run npm run dev
📖 Docker 가이드 — Compose 프로필, Caddy HTTPS, Cloudflare 터널.
🦭 Podman
# 1. 바인드 마운트할 데이터 디렉터리 준비
mkdir -p data
# 2. Linux + 로컬 루트리스 Podman에서만 실행(원격 Podman Machine 클라이언트에서는 절대 실행하지 마세요):
podman unshare chown 1000:1000 ./data
# 3. 런타임 힌트를 설정하고 로컬 Compose 이미지를 빌드한 후 시작
echo "CONTAINER_HOST=podman" >> .env
podman compose --profile base up -d --build
macOS 또는 Windows에서 Podman은 원격 Podman Machine을 사용합니다. podman unshare를 건너뛰고
토폴로지별 데이터 디렉터리 지침을 따르세요.
📖 Podman 가이드 — Compose 빌드, Podman Machine 및 Linux/systemd Quadlet 설정.
⚡ 더 빠르고 가벼운 설치(네이티브 빌드 건너뛰기)
네이티브 SQLite 엔진(better-sqlite3)은 선택적 의존성이므로 전역
설치가 소스 컴파일로 인해 중단되는 일은 없습니다. 플랫폼/Node에 맞는 사전 빌드 바이너리가 있으면
이를 사용하고, 그렇지 않으면 순수 JS 엔진(Node 22 이상에서는 node:sqlite, 그 외에는 번들된
sql.js WASM)으로 투명하게 대체되므로 빌드 도구가 필요하지 않습니다.
설치 후 네이티브 워밍업을 완전히 건너뛰려면(CI, 헤드리스 또는 느린 머신):
OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # CI=1도 이를 건너뜁니다
가장 빠른 설치를 위해서는 pnpm을 권장합니다(콘텐츠 주소 지정 저장소 + 하드 링크 — 위 내용 참조).
대시보드가 없는 헤드리스 런타임에는 위의 Docker base 프로필이나
Termux 가이드를 사용하세요. CLI와 웹 대시보드는 동일한 프로세스가
하나의 포트에서 제공하므로 현재 별도의 CLI 전용 패키지는 없습니다.
🎬 OmniRoute 실행 모습
📹 동영상 가이드
2026-08-24 기준 대시보드 스냅샷 · 원본 카탈로그: YT 809 | TT 137 | IG 124 · 최신성(일): YT 1 | TT 21 | IG 22
전체 순위(중복 제거된 정규 URL, v > 0, 도달 범위 순):
| #1 | #2 | #3 | #4 | #5 |
|---|---|---|---|---|
| nick_saraev — Instagram — 3,042,474 | theopenstack — Instagram — 692,419 | milesreevesai — TikTok — 620,400 | Vaibhav Sisinty — YouTube — 391,109 | buildwithai.club — Instagram — 347,652 |
| #6 | #7 | #8 | #9 | #10 |
|---|---|---|---|---|
| nivedan.ai — Instagram — 331,973 | vaibhavsisinty — Instagram — 263,744 | Nick Automates — YouTube Shorts — 218,174 | theroshankrishna — Instagram — 186,786 | midudev — TikTok — 177,800 |
2026-08-24 기준 정규 지표: 고유 동영상 1.029개 · 확인된 조회수 11.132.922회 (v > 0) · 네트워크별 채널/프로필 639개. 원본 대시보드에는 1.070개의 행이 있으며, Instagram 중복 항목 41개는 정규 URL을 기준으로 정규화하여 각 동영상에서 가장 높은 조회수를 유지했습니다.
🎬 OmniRoute에 관한 동영상을 만드셨나요? 링크와 함께 이슈 또는 토론을 등록해 주세요. 여기에 소개해 드리겠습니다.
📧 커뮤니티 및 도움말
필요한 모든 것을 한곳에서 이용하세요. 관리자를 팔로우하고, 커뮤니티와 대화하거나, 이슈를 등록할 수 있습니다.
| 채널 | 위치 / 방법 |
|---|---|
| 💼 LinkedIn — 관리자 팔로우 | linkedin.com/in/diegosouzapw |
| 🐙 GitHub — 릴리스 및 팁 확인 | @diegosouzapw |
| 💬 Discord | discord.gg/U47eFqAXCn |
| ✈️ Telegram | t.me/omnirouteOficial |
| 🟢 WhatsApp — 🌍 글로벌 | 그룹에 참여하기 |
| 🟢 WhatsApp — 🇧🇷 브라질 | 그룹에 참여하기 |
| 🌍 웹사이트 | omniroute.online |
| 🌍 🌍StHub OmniRoute 커뮤니티(무료) | StHub 포털 |
| 📦 소스 코드 | github.com/diegosouzapw/OmniRoute |
| 🐛 버그 신고 | 이슈 등록 — npm run system-info 출력 첨부 |
| 🤝 기여하기 | CONTRIBUTING.md · 브랜치 및 릴리스 모델 · good first issue 선택 |
| 💚 프로젝트 후원 | 후원 방법 ↑ · GitHub Sponsors |
🛠️ 기술 스택
| 계층 | 기술 |
|---|---|
| 런타임 | Node.js 22.x / 24.x LTS — >=22.22.2 <23 || >=24.0.0 <27 |
| 언어 | TypeScript 6.0 — src/ 및 open-sse/ 전체에 걸쳐 100% TypeScript 사용(v2.0부터 핵심 코드에 any 없음) |
| 프레임워크 | Next.js 16 + React 19 + Tailwind CSS 4 |
| 데이터베이스 | better-sqlite3 (SQLite, WAL 저널링) + LowDB (레거시 JSON) — 도메인 모듈 122개, 마이그레이션 176개 |
| 메모리 | SQLite FTS5 전문 검색 + int8 양자화 벡터 임베딩, 유형화된 감쇠 |
| 스키마 | Zod 4 — MCP 도구 입출력 검증 + API 계약 |
| 프로토콜 | MCP (stdio / HTTP / SSE) + A2A v0.3 (JSON-RPC 2.0 + SSE) |
| 스트리밍 | 서버 전송 이벤트(SSE) + WebSocket 브리지(/v1/ws) |
| 압축 | 12개 엔진 파이프라인 — RTK, Caveman, LLMLingua-2 (MobileBERT ONNX), GCF, OmniGlyph |
| 인증 및 보안 | OAuth 2.0 (PKCE) + JWT + API 키 + MCP 범위 지정 인증 · 저장 데이터 AES-256-GCM 암호화 · DOMPurify |
| 스텔스 | wreq-js — JA3 / JA4 TLS 지문 가장, 3단계 프록시 |
| 복원력 | 회로 차단기, 지수 백오프, 동시 요청 폭주 방지, 자동 조합 자가 복구 |
| 로깅 | pino — 요청 컨텍스트가 포함된 구조화된 JSON 로그 |
| 테스트 | Node.js 테스트 러너 + Vitest — 추적되는 5,100개 이상의 테스트 파일에 39,000개 이상의 정적 테스트 선언(단위, 통합, E2E, 보안, 생태계) |
| 플랫폼 | 데스크톱(Electron) · Android (Termux) · PWA (모든 브라우저) |
| CI/CD | GitHub Actions — 릴리스 시 npm 자동 게시 + Docker Hub 배포 |
| 링크 | 웹사이트 · npm · Docker Hub |
📖 문서
📘 시작하기
| 문서 | 설명 |
|---|---|
| 사용자 가이드 | 제공자, 콤보, CLI 통합, 배포 |
| 설정 가이드 | 전체 설치 방법, CLI 도구 구성, 프로토콜 설정, 타임아웃 조정 |
| CLI 도구 가이드 | Claude Code, Codex, Cursor, Cline, OpenClaw, Kilo, Copilot의 도구별 설정 |
| 원격 모드 | 범위가 지정된 액세스 토큰을 사용해 노트북 CLI에서 원격 OmniRoute(VPS) 제어 |
| Claude Code 구성 | launch 및 모델별 프로필을 사용해 Claude Code를 OmniRoute(로컬/원격)에 연결 |
| 빠른 시작 | 3단계: 설치 → 연결 → 구성 |
🔧 운영 및 배포
| 문서 | 설명 |
|---|---|
| Docker 가이드 | Docker 실행, Compose 프로필, Caddy HTTPS, 터널, 이미지 태그 |
| Podman 가이드 | Quadlet systemd 통합, podman-compose, SELinux |
| VM 배포 | 전체 가이드: VM + nginx + Cloudflare 설정 |
| Fly.io 배포 | 영구 스토리지를 사용하여 Fly.io에 배포 |
| Termux 가이드 | Termux를 통해 Android에서 OmniRoute 실행 |
| PWA 가이드 | 프로그레시브 웹 앱 설치, 캐싱, 아키텍처 |
| 제거 가이드 | 모든 설치 방법에 대한 완전한 제거 |
| 환경 구성 | 전체 .env 변수 및 참조 |
🧠 기능 및 아키텍처
| 문서 | 설명 |
|---|---|
| 아키텍처 | 시스템 아키텍처, 데이터 흐름 및 내부 구조 |
| 압축 가이드 | 7가지 옵션 파이프라인: 끄기 / 경량 / 표준 / 공격적 / 울트라 / RTK / 스택형 |
| RTK 압축 | 명령 출력 압축, 필터, 신뢰, 검증, 원시 출력 복구 |
| 압축 엔진 | Caveman, RTK, 스택형 파이프라인, 대시보드/API/MCP 인터페이스 |
| 압축 규칙 형식 | Caveman 및 RTK 필터용 JSON 규칙 팩 스키마 |
| 압축 언어 팩 | 언어 감지 및 Caveman 규칙 팩 작성 |
| 복원력 가이드 | 회로 차단기, 재사용 대기시간, 큐, 동시 요청 폭주 방지, TLS 스푸핑 |
| 자동 콤보 엔진 | 16개 요소 기반 점수 산정, 모드 팩, 자가 복구 |
| 프록시 가이드 | 3단계 프록시 시스템, 1proxy 마켓플레이스, 레지스트리 CRUD |
| 무료 등급 | 통합 디렉터리: 문서화된 반복 풀 34개 / 카탈로그에 등록된 무료 등급 항목 452개 |
| 기능 갤러리 | 스크린샷을 포함한 시각적 대시보드 둘러보기 |
| 코드베이스 문서 | 초보자 친화적인 코드베이스 둘러보기 |
🤖 프로토콜 및 API
| 문서 | 설명 |
|---|---|
| API 참조 | 예제가 포함된 모든 엔드포인트 |
| OpenAPI 명세 | OpenAPI 3.0 명세 |
| MCP 서버 | 110개의 MCP 도구, IDE 구성, Python/TS/Go 클라이언트 |
| MCP 서버 가이드 | MCP 설치, 전송 방식 및 도구 참조 |
| A2A 서버 | JSON-RPC 2.0 프로토콜, 기술, 스트리밍, 작업 관리 |
| A2A 서버 가이드 | A2A 에이전트 카드, 작업, 기술 및 스트리밍 |
📋 프로젝트 및 품질
| 문서 | 설명 |
|---|---|
| 기여하기 | 개발 환경 설정 및 지침 |
| 브랜치 및 릴리스 모델 | PR의 대상 브랜치(release/*)와 main 및 태그의 의미 |
| 변경 로그 | 버전별 전체 릴리스 기록 |
| 보안 정책 | 취약점 보고 및 보안 관행 |
| i18n 가이드 | 42개 언어 지원, 번역 워크플로, RTL |
| 릴리스 체크리스트 | 릴리스 전 검증 단계 |
| 커버리지 계획 | 추적 중인 5,100개 이상의 테스트 파일에 걸친 39,000개 이상의 정적 테스트 선언에 대한 테스트 커버리지 전략 |
⭐ 주요 기여자
OmniRoute는 열정적인 오픈 소스 커뮤니티에 의해 만들어집니다. 아래 기여자들은 프로젝트의 품질, 안정성 및 도달 범위에 직접적인 영향을 미치는 탁월한 기여를 해주셨습니다. 감사합니다.
병합된 풀 리퀘스트 기준 외부 기여자
| 순위 | 기여자 | 병합된 PR | 변경된 줄 수(약) |
|---|---|---|---|
| 1 | backryun | 190 | 227,977 |
| 2 | oyi77 | 180 | 407,678 |
| 3 | rdself | 145 | 80,663 |
| 4 | JxnLexn | 128 | 387,049 |
| 5 | KooshaPari | 101 | 125,747 |
| 6 | herjarsa | 88 | 230,872 |
| 7 | RaviTharuma | 79 | 55,106 |
| 8 | maxmad64bis | 69 | 394,715 |
| 9 | artickc | 59 | 33,260 |
| 10 | HouMinXi | 51 | 47,334 |
| 10 | chirag127 | 51 | 5,153 |
| 12 | xz-dev | 50 | 245,976 |
| 13 | hartmark | 47 | 52,185 |
| 14 | rqzbeh | 39 | 143,181 |
| 15 | dhaern | 34 | 19,559 |
| 16 | Dingding-leo | 33 | 1,986 |
| 17 | NomenAK | 32 | 13,854 |
| 18 | MumuTW | 30 | 16,953 |
| 19 | benzntech | 29 | 11,641 |
| 20 | pacocartones | 24 | 9,331 |
| 20 | Prudhvivuda | 24 | 6,312 |
2026-08-24 05:26:03 UTC까지의 병합 내역을 포함하여 현재 release/v3.8.50의 최신 커밋 dafb4ae808을 기준으로 집계가 고정되었습니다. 페이지네이션된 GitHub GraphQL 전수 조사에는 병합된 PR 5,911개가 포함되어 있으며, 저장소 소유자가 생성한 PR은 2,707개, Dependabot이 생성한 PR은 179개, 서로 다른 기여자 535명이 생성한 외부 PR은 3,025개입니다. “변경된 줄 수”는 GitHub의 추가 줄 수와 삭제 줄 수를 합산한 값이며 생성된 파일, 잠금 파일, 카탈로그, 번역 및 문서를 포함합니다. 이는 변경량을 나타내며 작성된 LOC가 아닙니다. 순위 경계에서 동률인 기여자는 모두 포함됩니다.
GitHub에 귀속된 커밋
|
backryun 🥇 GitHub 기준 커밋 220개 |
Paijo 🥈 GitHub 기준 커밋 219개 |
Randi 🥉 GitHub 기준 커밋 108개 |
Ravi Tharuma 🏅 GitHub 기준 커밋 81개 |
Chris 🏅 GitHub 기준 커밋 70개 |
Markus Hartung 🏅 GitHub 기준 커밋 69개 · 공동 6위 |
|
Dizzle 🏅 GitHub 기준 커밋 69개 · 공동 6위 |
Jan Leon 🏅 GitHub 기준 커밋 64개 |
zenobit 🏅 GitHub 기준 커밋 62개 |
Bob.Hou 🏅 GitHub 기준 커밋 51개 · 공동 10위 |
Xiangzhe 🏅 GitHub 기준 커밋 51개 · 공동 10위 |
2026-08-24 06:14:31 UTC에 재확인: 기본 브랜치 release/v3.8.50에 대해 저장소 Contributors API가 보고한 GitHub 기준 커밋입니다. API는 525개의 ID(사용자 415명, 봇 2개, 익명 108명)를 반환했으며, 이 표에서는 메인테이너, 봇, 익명 ID를 제외하고 공동 순위는 유지했습니다. 이 순위는 위의 병합된 PR 순위 및 아래의 639명 규모 Git 메타데이터 집계와는 별개입니다.
🙏 이러한 기여자들이 제공한 기능, 버그 수정 및 인프라 개선은 OmniRoute를 안정적이고 풍부한 기능을 갖춘 프로젝트로 만드는 핵심 요소입니다. 모든 풀 리퀘스트, 모든 테스트 케이스, 모든 i18n 번역 파일이 중요합니다. 오픈 소스는 이들과 같은 사람들이 만들어 갑니다.
💖 스폰서
자비로 OmniRoute를 후원해 주시는 분들께 진심으로 감사드립니다. 모든 후원은 프로젝트가 무료로 독립성을 유지하며 계속 발전하는 데 큰 힘이 됩니다.
![]() Andrew 💛 현재 월간 스폰서 |
![]() Vlad I 💛 현재 월간 스폰서 |
![]() Paco Cartones 💛 현재 일회성 스폰서 |
![]() Prof. Igor Morais 💛 이전 일회성 후원자 |
![]() longtao 💛 이전 일회성 후원자 |
… 그리고 비공개로 후원하기를 원하시는 다른 분들께도 감사드립니다 💛
공개 GitHub Sponsors 목록은 2026-08-24에 다시 확인되었습니다. GitHub의 activeOnly 상태에 따라 위의 현재 후원자 표시가 결정됩니다. 이전에 공개된 일회성 후원자에게도 계속 감사를 표하며, 비공개 스폰서는 익명으로 유지됩니다.
💖 스폰서가 되어 주세요 → — 모든 후원금은 OmniRoute가 무료로 독립성을 유지하는 데 도움이 됩니다.
👥 600명 이상의 기여자
2026-08-24에 고정 기준 ac02c5b42f에서 감사하고 라이브 release/v3.8.50의 최신 커밋 dafb4ae808에서 다시 확인한 결과: 정규화된 인간 Git ID 639개 — 이 중 407개는 커밋 작성자(메인테이너 포함)로 나타나며, 232개는 명시적인 Co-authored-by 트레일러에만 나타납니다. 이 집계에서는 GitHub noreply 핸들을 정규화하고, 봇/에이전트/서비스/자리표시자 ID 26개를 제외하며, 표시 이름이 같다는 이유만으로 일반 이메일 주소를 병합하지 않습니다.
기여 방법
- 저장소를 포크합니다
main이 아닌 활성release/vX.Y.Z최신 커밋에서 브랜치를 생성합니다 — 브랜치 및 릴리스 모델을 참조하세요- 기능 브랜치를 생성합니다(
git checkout -b feat/amazing-feature) - 변경 사항을 커밋합니다(
git commit -m 'feat: add amazing feature') - 브랜치에 푸시합니다(
git push origin feat/amazing-feature) - base = 해당
release/vX.Y.Z브랜치로 Pull Request를 생성합니다
자세한 지침은 CONTRIBUTING.md를 참조하세요.
새 버전 릴리스
# 릴리스 생성 — npm publish는 자동으로 실행됩니다
VERSION=x.y.z
gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes
📊 스타
🙏 감사의 말
OmniRoute는 거인들의 어깨 위에 서 있습니다. **9router**의 포크이자 Go 프로젝트 **CLIProxyAPI**의 TypeScript 포팅으로 시작했으며, 이후 아래의 각 하위 시스템은 먼저 길을 개척한 오픈 소스 프로젝트에서 영감을 받았습니다. 이들 각각은 OmniRoute의 구체적인 부분을 만드는 데 영향을 주었습니다. 이 모든 프로젝트에 감사드립니다. 🙏
⭐ 스타 수는 2026년 8월 24일 GitHub의 REST API를 통해 확인했습니다. 이 프로젝트들에 스타를 눌러 주세요. 수치는 해당 날짜를 기준으로 한 정확한 스냅샷이며, 시간이 지나면 자연스럽게 변경됩니다.
🧬 계보 및 게이트웨이
| 프로젝트 | ⭐ | OmniRoute에 영감을 준 방식 |
|---|---|---|
| 9router | 26,161 | 이 포크의 기반이 된 원본 프로젝트로, 여기서는 멀티모달 API를 추가하고 TypeScript로 완전히 재작성했습니다. |
| CLIProxyAPI | 48,497 | 이 JavaScript / TypeScript 포트에 영감을 준 Go 구현입니다. |
| LiteLLM | 57,100 | 공개 가격 데이터 세트가 비용 추적 동기화에 사용되고, 제공자 정규화 모델이 라우팅 설계에 참고된 AI 게이트웨이입니다. |
| codex-chatgpt-web | 1,410 | 브라우저 세션, 응답 프레이밍, 사용량 및 웹 검색 어댑터를 포함하여, 벤더링된 ChatGPT Web → Codex Responses 브리지에 맞게 조정된 MIT 소스입니다. |
| free-claude-code | 48,112 | 스트림 복구, 비사고 별칭, 대체 웹 검색, 슬라이딩 윈도 제한, 로그 민감 정보 제거 및 강화된 런처 흐름으로 이식된 패턴입니다. |
| composer-api | 322 | 네이티브 Cursor 실행기에 맞게 조정된 Cursor Composer의 도구 선택, 출력 제약 및 도구 커밋 패턴입니다. |
| codex-multi-auth | 457 | Codex OAuth 재인증으로 이식된 신규 로그인 및 리프레시 토큰 순환 패턴입니다. |
| opencode-anthropic-auth | 510 | Claude Code 호환 변환 기본값과 결제 헤더 동작을 OmniRoute의 구성 기반 브리지에 일반화했습니다. |
| grok2api-merged | 2 | 이 프로젝트의 Grok 모델 매핑, 가짜 TypeError Statsig 생성기, 요청 및 기기 기본값, NDJSON 응답 프로세서가 OmniRoute의 Grok Web 실행기에 실질적으로 적용되었습니다. |
| TQZHR/grok2api | 705 | grok2api-merged의 주요 전이적 코드 출처로, 해당 모델, 헤더, 페이로드, Statsig 및 프로세서 구현은 Grok Web 계보에 보존되어 있습니다. |
| chenyme/grok2api | 7,520 | TQZHR 및 grok2api-merged를 거쳐 전승된 Grok 페이로드 및 기기 기본값, Statsig 생성기, result.response 프로세서의 기반이 되는 MIT 소스입니다. |
| grok2api-pro | 27 | grok2api-merged가 프록시 풀 계층의 출처로 명시한 전이적 소스입니다. OmniRoute는 해당 계보 고지를 유지하지만 범위가 제한된 Grok Web 실행기에 프록시 풀을 이식했다고 주장하지는 않습니다. |
| GrokProxy | 50 | 쿠키 인증 방식의 Grok 프록시와 result.response.token 스트리밍 패턴이 OmniRoute의 Grok Web 전송 계층에 참고되었습니다. |
| GrokBridge | 5 | 초기 Grok Web 구현에서 이 프로젝트의 HTTP/브라우저 업스트림 설계를 참고했습니다. 직접 HTTP 경로는 GrokProxy에서 파생되었으므로 독립적으로 코드를 이식했다고 주장하지 않습니다. |
| grok-web-api | 14 | 이 프로젝트의 Rust ChatOptions 및 응답 봉투 스키마가 OmniRoute의 TypeScript Grok 요청 및 스트리밍 응답 타입 설계에 참고되었습니다. |
🗜️ 컨텍스트 및 토큰 압축 — 엔진
| 프로젝트 | ⭐ | OmniRoute에 영감을 준 방식 |
|---|---|---|
| Caveman | 100,538 | 화제가 된 "많은 토큰 왜 쓰나 적은 토큰으로 되는데" 프로젝트 — 원시인 말투 철학은 당사의 표준 압축 모드와 30개 이상의 군더더기 제거/축약 규칙의 기반이 되었습니다. |
| RTK – Rust Token Killer | 77,185 | 고성능 명령 출력 압축 — 당사의 RTK 엔진, JSON 필터 DSL, 원시 출력 복구 및 RTK → Caveman 다단계 파이프라인에 영감을 주었습니다. |
| headroom | 67,310 | 가역적 컨텍스트 압축(SmartCrusher) — 당사의 headroom 엔진과 ccr 검색 마커 패턴에 영감을 주었습니다. |
| LLMLingua | 6,598 | 프롬프트 압축 연구(LLMLingua / LLMLingua-2) — 당사의 비동기식, 코드 안전성 보장, 장애 시 개방형 llmlingua 엔진에 영감을 주었습니다. |
| llmlingua-2-js | 31 | 당사의 LLMLingua 엔진에서 워커 스레드 백엔드로 사용하는 JS/ONNX 포트(MobileBERT / XLM-RoBERTa)입니다. |
| Troglodita | 40 | 브라질 포르투갈어 토큰 압축 — 브라질 포르투갈어 문법에 맞춰 조정된 동어 반복 축소 및 군더더기 제거 기능을 갖춘 당사의 pt-BR 언어 팩을 구동합니다. |
| ponytail | 108,957 | 화제가 된 "게으른 시니어 개발자" YAGNI 코더 스킬 — 당사의 less-code 출력 스타일에 영감을 주었습니다. 이는 작동하는 최소 변경으로 유도하여 _생성되는_ 코드를 줄이는 방식으로, Caveman의 간결한 산문과 출력 측면에서 짝을 이룹니다. |
| i-have-adhd | 23,526 | 행동 우선의 ADHD 친화적 응답 스타일을 5개 언어에 걸친 OmniRoute의 간결한 출력 스타일로 적용했습니다. |
🧩 압축 형식, 토큰 연구 및 코드 인식 도구
| 프로젝트 | ⭐ | OmniRoute에 영감을 준 방식 |
|---|---|---|
| TOON | 25,233 | 토큰 지향 객체 표기법 — 열 기반의 헤더 및 행 모델이 당사의 표 형식 압축 단계를 형성했습니다. |
| GCF – Graph Compact Format | 41 | 간결한 그래프 형식과 범용 프로필 설계는 OmniRoute의 표 형식 압축 및 Headroom 코덱 형식에 영향을 주었습니다. |
| gcf-typescript | 4 | Headroom 범용 프로필 코덱으로 직접 벤더링하고 확장한 MIT TypeScript 구현입니다. |
| token-optimizer-mcp | 494 | Brotli/SQLite 캐시 + 세션별 컨텍스트 델타 — 당사의 session-dedup 엔진에 영감을 주었습니다. |
| token-savior | 1,122 | Bash 출력 압축 + MCP 프로필 — 당사의 압축 중단 원칙과 MCP 도구 매니페스트 축소에 영감을 주었습니다. |
| token-saver | 138 | 실패를 고려한 중단 기능을 갖춘 파일 유형별 콘텐츠 인식 출력 압축 — 당사의 유형별 디스패치와 최소 이득 미달 시 건너뛰기 방식을 검증했습니다. |
| token-optimizer | 1,951 | "유령 토큰을 찾아라" — 오프로딩 + 복구 가능한 핸들 패턴이 당사의 CCR 오프로딩 구상에 영향을 주었습니다. |
| TokenMizer | 28 | 당사의 세션 중복 제거 설계에 영향을 준 세션 그래프 + 턴 간 줄 중복 제거 청사진입니다. |
| OmniCompress | 3 | Rust 열 기반 JSON + 콘텐츠 주소 기반 검색 + 메시지 간 중복 제거 — 당사의 headroom/ccr/session-dedup 엔진 설계와 캐시 안정성을 보장하는 "압축된 형태는 위치에 독립적이다"라는 불변 조건을 검증했습니다. |
| mcp-compressor | 113 | MCP 도구 스키마/설명 압축 — 당사의 MCP 도구 매니페스트 카디널리티 축소에 영향을 주었습니다. |
| RepoMapper | 197 | Aider 스타일 저장소 맵 순위 지정 — 당사의 저장소 맵 / 검색 순위 지정 탐색에 영향을 주었습니다. |
| quiet-shell-mcp | 4 | MCP를 통한 선언적 셸 출력 축소 — 당사의 선언적 bash 출력 압축을 검증했습니다. |
| ts-morph | 6,162 | TypeScript Compiler API 도구 키트 — 문자열, 템플릿 및 정규식 리터럴을 보존하는 당사의 파서 기반 주석 제거 기능에 영감을 주었습니다. |
🧠 메모리 및 RAG
| 프로젝트 | ⭐ | OmniRoute에 영감을 준 방식 |
|---|---|---|
| Mem0 | 63,902 | 범용 메모리 계층 — 프록시를 쓰기/읽기 경계로 사용하는 모델이 당사의 메모리 아키텍처를 형성했습니다. |
| Letta (MemGPT) | 24,382 | 계층형 메모리를 갖춘 상태 유지형 에이전트 — 당사의 Context Control & Recovery (CCR) 계층형 모델에 영감을 주었습니다. |
| WFGY | 1,781 | 반복적으로 발생하는 16가지 RAG/LLM 실패 모드에 대한 ProblemMap 분류 체계 — 당사의 문제 해결 가이드에서 사용하는 공통 용어 체계입니다. |
🛰️ 트래픽 검사, MITM 및 투명 프록시
| 프로젝트 | ⭐ | OmniRoute에 영감을 준 방식 |
|---|---|---|
| llm-interceptor | 66 | 코딩 어시스턴트 ↔ LLM 트래픽의 MITM 가로채기/분석은 초기 Traffic Inspector 요구사항 수립에 참고가 되었습니다. 이전에 파생된 네 가지 모듈인 SSE 병합, 대화 정규화, 비밀 정보 마스킹 및 헤더 정리는 공개 프로토콜 표준에 기반한 독립적인 클린룸 구현으로 대체되었습니다. 두 개의 호스트 패스스루 표면(passthrough.ts 및 _internal/bypass.cjs)은 독립적으로 분류된 OmniRoute 내부 구현으로 유지되며, 해당 대체 작업의 일부로 재작성되지 않았습니다. |
| ProxyBridge | 5,995 | 프로세스별 투명 프록시 라우팅 — 당사의 충돌 안전 MITM 해제, 소켓 유휴 시간 초과, /proc 프로세스 귀속 및 TPROXY 캡처에 영감을 주었습니다. |
📚 모델 데이터, 관측 가능성 및 UI
| 프로젝트 | ⭐ | OmniRoute에 영감을 준 방식 |
|---|---|---|
| models.dev | 6,555 | AI 모델 사양, 가격 및 기능에 대한 공개 데이터베이스 — 당사의 모델 카탈로그에 네이티브로 동기화됩니다. |
| React Flow / xyflow | 38,108 | 당사의 실시간 Compression Studio 및 Combo/Routing Studio를 구동하는 노드 기반 그래프 라이브러리입니다. |
| LangGraph | 40,314 | LangGraph Studio의 실시간 워크플로 그래프 시각화는 당사 Studios의 실시간 캐스케이드 보기에 영감을 주었습니다. |
| Langfuse | 33,592 | 트레이스 → 스팬 → 생성으로 이어지는 관측 가능성 모델은 당사의 Compression Studio 워터폴을 형성했습니다. |
| Kiali | 3,631 | Istio 서비스 메시 관측 가능성 — Routing/Combo Studio의 회로 차단기 배지 및 오류 에지 시각화에 영감을 주었습니다. |
| lobe-icons | 2,428 | 당사 대시보드 전반에서 공급자 아이콘을 렌더링하는 AI/LLM 브랜드 로고입니다. |
| flag-icons | 12,354 | README 언어 선택기에 사용되는 MIT 라이선스 SVG 국기를 제공합니다. |
🛡️ 보안
| 프로젝트 | ⭐ | OmniRoute에 영감을 준 방식 |
|---|---|---|
| awesome-secure-defaults | 721 | 당사의 보안 선택(Helmet.js, DOMPurify, ssrf-req-filter, safe-regex, Google Tink)에 지침을 제공하는 기본적으로 안전한 라이브러리의 엄선된 목록입니다. |
🧭 보완 도구
| 프로젝트 | ⭐ | OmniRoute에 영감을 준 방식 |
|---|---|---|
| ClawRouter | 6,564 | 요청 중복 제거, 비상용 무비용 폴백, 플러그형 Auto-Combo 전략 및 다국어 의도 분류에 영감을 주었습니다. |
| Antigravity-Manager | 30,652 | 계정 인식 모델 재매핑, 실행 파일 경로 검증 및 요금제 레이블 동작은 OmniRoute의 Antigravity 런타임에 참고가 되었습니다. |
| vscode-antigravity-cockpit | 4,817 | 간결한 할당량 초기화 카운트다운 형식은 OmniRoute의 해당 공급자 한도 표시에 영감을 주었습니다. |
| AionUi | 32,230 | ACP 통합은 OmniRoute의 설치된 CLI 에이전트 자동 감지에 영감을 주었습니다. |
| CodexBar | 20,507 | Grok Build 할당량 표면을 식별했으며, 이후 OmniRoute가 실제 와이어 형식을 독립적으로 검증하고 수정했습니다. |
📄 라이선스
MIT 라이선스 - 자세한 내용은 LICENSE를 참조하세요.
⬆ 맨 위로 돌아가기 · 오픈 소스 AI 커뮤니티를 위해 ❤️를 담아 만들었습니다.
OmniRoute v3.8.51 · Node ≥22.22.2 · MIT 라이선스 · omniroute.online





