OmniRoute Dashboard # ๐Ÿš€ OmniRoute โ€” Gerbang AI Gratis ### Jangan pernah berhenti membuat kode. Perutean cerdas ke **model AI GRATIS & berbiaya rendah** dengan fallback otomatis. _Proksi API universal Anda โ€” satu titik akhir, 36+ penyedia, tanpa waktu henti._ **Penyelesaian Obrolan โ€ข Penyematan โ€ข Pembuatan Gambar โ€ข Audio โ€ข Pemeringkatan Ulang โ€ข 100% TypeScript** --- ### ๐Ÿค– Penyedia AI gratis untuk agen coding favorit Anda _Hubungkan alat IDE atau CLI apa pun yang didukung AI melalui OmniRoute โ€” gerbang API gratis untuk pengkodean tanpa batas._
OpenClaw
OpenClaw

โญ 205K
NanoBot
NanoBot

โญ 20.9K
PicoClaw
PicoClaw

โญ 14.6K
ZeroClaw
ZeroClaw

โญ 9.9K
IronClaw
IronClaw

โญ 2.1K
OpenCode
OpenCode

โญ 106K
Codex CLI
Codex CLI

โญ 60.8K
Claude Code
Claude Code

โญ 67.3K
Gemini CLI
Gemini CLI

โญ 94.7K
Kilo Code
Kilo Code

โญ 15.5K
๐Ÿ“ก Semua agen terhubung melalui http://localhost:20128/v1 atau http://cloud.omniroute.online/v1 โ€” satu konfigurasi, model tak terbatas, dan kuota --- [![npm version](https://img.shields.io/npm/v/omniroute?color=cb3837&logo=npm)](https://www.npmjs.com/package/omniroute) [![Docker Hub](https://img.shields.io/docker/v/diegosouzapw/omniroute?label=Docker%20Hub&logo=docker&color=2496ED)](https://hub.docker.com/r/diegosouzapw/omniroute) [![License](https://img.shields.io/github/license/diegosouzapw/OmniRoute)](https://github.com/diegosouzapw/OmniRoute/blob/main/LICENSE) [![Website](https://img.shields.io/badge/Website-omniroute.online-blue?logo=google-chrome&logoColor=white)](https://omniroute.online) [![WhatsApp](https://img.shields.io/badge/WhatsApp-Community-25D366?logo=whatsapp&logoColor=white)](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) [๐ŸŒ Website](https://omniroute.online) โ€ข [๐Ÿš€ Quick Start](#-quick-start) โ€ข [๐Ÿ’ก Features](#-key-features) โ€ข [๐Ÿ“– Docs](#-documentation) โ€ข [๐Ÿ’ฐ Pricing](#-pricing-at-a-glance) โ€ข [๐Ÿ’ฌ WhatsApp](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) ๐ŸŒ **Available in:** ๐Ÿ‡บ๐Ÿ‡ธ [English](README.md) | ๐Ÿ‡ง๐Ÿ‡ท [Portuguรชs (Brasil)](README.pt-BR.md) | ๐Ÿ‡ช๐Ÿ‡ธ [Espaรฑol](README.es.md) | ๐Ÿ‡ซ๐Ÿ‡ท [Franรงais](README.fr.md) | ๐Ÿ‡ฎ๐Ÿ‡น [Italiano](README.it.md) | ๐Ÿ‡ท๐Ÿ‡บ [ะ ัƒััะบะธะน](README.ru.md) | ๐Ÿ‡จ๐Ÿ‡ณ [ไธญๆ–‡ (็ฎ€ไฝ“)](README.zh-CN.md) | ๐Ÿ‡ฉ๐Ÿ‡ช [Deutsch](README.de.md) | ๐Ÿ‡ฎ๐Ÿ‡ณ [เคนเคฟเคจเฅเคฆเฅ€](README.in.md) | ๐Ÿ‡น๐Ÿ‡ญ [เน„เธ—เธข](README.th.md) | ๐Ÿ‡บ๐Ÿ‡ฆ [ะฃะบั€ะฐั—ะฝััŒะบะฐ](README.uk-UA.md) | ๐Ÿ‡ธ๐Ÿ‡ฆ [ุงู„ุนุฑุจูŠุฉ](README.ar.md) | ๐Ÿ‡ฏ๐Ÿ‡ต [ๆ—ฅๆœฌ่ชž](README.ja.md) | ๐Ÿ‡ป๐Ÿ‡ณ [Tiแบฟng Viแป‡t](README.vi.md) | ๐Ÿ‡ง๐Ÿ‡ฌ [ะ‘ัŠะปะณะฐั€ัะบะธ](README.bg.md) | ๐Ÿ‡ฉ๐Ÿ‡ฐ [Dansk](README.da.md) | ๐Ÿ‡ซ๐Ÿ‡ฎ [Suomi](README.fi.md) | ๐Ÿ‡ฎ๐Ÿ‡ฑ [ืขื‘ืจื™ืช](README.he.md) | ๐Ÿ‡ญ๐Ÿ‡บ [Magyar](README.hu.md) | ๐Ÿ‡ฎ๐Ÿ‡ฉ [Bahasa Indonesia](README.id.md) | ๐Ÿ‡ฐ๐Ÿ‡ท [ํ•œ๊ตญ์–ด](README.ko.md) | ๐Ÿ‡ฒ๐Ÿ‡พ [Bahasa Melayu](README.ms.md) | ๐Ÿ‡ณ๐Ÿ‡ฑ [Nederlands](README.nl.md) | ๐Ÿ‡ณ๐Ÿ‡ด [Norsk](README.no.md) | ๐Ÿ‡ต๐Ÿ‡น [Portuguรชs (Portugal)](README.pt.md) | ๐Ÿ‡ท๐Ÿ‡ด [Romรขnฤƒ](README.ro.md) | ๐Ÿ‡ต๐Ÿ‡ฑ [Polski](README.pl.md) | ๐Ÿ‡ธ๐Ÿ‡ฐ [Slovenฤina](README.sk.md) | ๐Ÿ‡ธ๐Ÿ‡ช [Svenska](README.sv.md) | ๐Ÿ‡ต๐Ÿ‡ญ [Filipino](README.phi.md)
--- ## ๐Ÿค” Mengapa OmniRoute? **Berhenti membuang-buang uang dan mencapai batas:** - Kuota berlangganan habis tanpa terpakai setiap bulannya - Batas kecepatan menghentikan Anda di tengah coding - API mahal ($20-50/bulan per penyedia) - Peralihan antar penyedia secara manual **OmniRoute memecahkan masalah ini:** - โœ… **Maksimalkan langganan** - Lacak kuota, gunakan setiap bit sebelum menyetel ulang - โœ… **Pengembalian otomatis** - Berlangganan โ†’ Kunci API โ†’ Murah โ†’ Gratis, tanpa downtime - โœ… **Multi-akun** - Round-robin antar akun per penyedia - โœ… **Universal** - Bekerja dengan Claude Code, Codex, Gemini CLI, Cursor, Cline, OpenClaw, alat CLI apa pun --- ## ๐Ÿ”„ Cara Kerjanya ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ Your CLI โ”‚ (Claude Code, Codex, Gemini CLI, OpenClaw, Cursor, Cline...) โ”‚ Tool โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ http://localhost:20128/v1 โ†“ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ OmniRoute (Smart Router) โ”‚ โ”‚ โ€ข Format translation (OpenAI โ†” Claude) โ”‚ โ”‚ โ€ข Quota tracking + Embeddings + Images โ”‚ โ”‚ โ€ข Auto token refresh โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”œโ”€โ†’ [Tier 1: SUBSCRIPTION] Claude Code, Codex, Gemini CLI โ”‚ โ†“ quota exhausted โ”œโ”€โ†’ [Tier 2: API KEY] DeepSeek, Groq, xAI, Mistral, NVIDIA NIM, etc. โ”‚ โ†“ budget limit โ”œโ”€โ†’ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M) โ”‚ โ†“ budget limit โ””โ”€โ†’ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited) Result: Never stop coding, minimal cost ``` --- ## ๐ŸŽฏ What OmniRoute Solves โ€” 16 Real Pain Points > **Every developer using AI tools faces these problems daily.** OmniRoute was built to solve them all โ€” from cost overruns to regional blocks, from broken OAuth flows to zero observability.
๐Ÿ’ธ 1. "I pay for an expensive subscription but still get interrupted by limits" Developers pay $20โ€“200/month for Claude Pro, Codex Pro, or GitHub Copilot. Even paying, quota has a ceiling โ€” 5h of usage, weekly limits, or per-minute rate limits. Mid-coding session, the provider stops responding and the developer loses flow and productivity. **How OmniRoute solves it:** - **Smart 4-Tier Fallback** โ€” If subscription quota runs out, automatically redirects to API Key โ†’ Cheap โ†’ Free with zero manual intervention - **Real-Time Quota Tracking** โ€” Shows token consumption in real-time with reset countdown (5h, daily, weekly) - **Multi-Account Support** โ€” Multiple accounts per provider with auto round-robin โ€” when one runs out, switches to the next - **Custom Combos** โ€” Customizable fallback chains with 6 balancing strategies (fill-first, round-robin, P2C, random, least-used, cost-optimized) - **Codex Business Quotas** โ€” Business/Team workspace quota monitoring directly in the dashboard
๐Ÿ”Œ 2. "I need to use multiple providers but each has a different API" OpenAI uses one format, Claude (Anthropic) uses another, Gemini yet another. If a dev wants to test models from different providers or fallback between them, they need to reconfigure SDKs, change endpoints, deal with incompatible formats. Custom providers (FriendLI, NIM) have non-standard model endpoints. **How OmniRoute solves it:** - **Unified Endpoint** โ€” A single `http://localhost:20128/v1` serves as proxy for all 36+ providers - **Format Translation** โ€” Automatic and transparent: OpenAI โ†” Claude โ†” Gemini โ†” Responses API - **Response Sanitization** โ€” Strips non-standard fields (`x_groq`, `usage_breakdown`, `service_tier`) that break OpenAI SDK v1.83+ - **Role Normalization** โ€” Converts `developer` โ†’ `system` for non-OpenAI providers; `system` โ†’ `user` for GLM/ERNIE - **Think Tag Extraction** โ€” Extracts `` blocks from models like DeepSeek R1 into standardized `reasoning_content` - **Structured Output for Gemini** โ€” `json_schema` โ†’ `responseMimeType`/`responseSchema` automatic conversion - **`stream` defaults to `false`** โ€” Aligns with OpenAI spec, avoiding unexpected SSE in Python/Rust/Go SDKs
๐ŸŒ 3. "My AI provider blocks my region/country" Providers like OpenAI/Codex block access from certain geographic regions. Users get errors like `unsupported_country_region_territory` during OAuth and API connections. This is especially frustrating for developers from developing countries. **How OmniRoute solves it:** - **3-Level Proxy Config** โ€” Configurable proxy at 3 levels: global (all traffic), per-provider (one provider only), and per-connection/key - **Color-Coded Proxy Badges** โ€” Visual indicators: ๐ŸŸข global proxy, ๐ŸŸก provider proxy, ๐Ÿ”ต connection proxy, always showing the IP - **OAuth Token Exchange Through Proxy** โ€” OAuth flow also goes through the proxy, solving `unsupported_country_region_territory` - **Connection Tests via Proxy** โ€” Connection tests use the configured proxy (no more direct bypass) - **SOCKS5 Support** โ€” Full SOCKS5 proxy support for outbound routing - **TLS Fingerprint Spoofing** โ€” Browser-like TLS fingerprint via `wreq-js` to bypass bot detection
๐Ÿ†“ 4. "I want to use AI for coding but I have no money" Not everyone can pay $20โ€“200/month for AI subscriptions. Students, devs from emerging countries, hobbyists, and freelancers need access to quality models at zero cost. **How OmniRoute solves it:** - **Free Tier Providers Built-in** โ€” Native support for 100% free providers: iFlow (8 unlimited models), Qwen (3 unlimited models), Kiro (Claude for free), Gemini CLI (180K/month free) - **Free-Only Combos** โ€” Chain `gc/gemini-3-flash โ†’ if/kimi-k2-thinking โ†’ qw/qwen3-coder-plus` = $0/month with zero downtime - **NVIDIA NIM Free Credits** โ€” 1000 free credits integrated - **Cost Optimized Strategy** โ€” Routing strategy that automatically chooses the cheapest available provider
๐Ÿ”’ 5. "I need to protect my AI gateway from unauthorized access" When exposing an AI gateway to the network (LAN, VPS, Docker), anyone with the address can consume the developer's tokens/quota. Without protection, APIs are vulnerable to misuse, prompt injection, and abuse. **How OmniRoute solves it:** - **API Key Management** โ€” Generation, rotation, and scoping per provider with a dedicated `/dashboard/api-manager` page - **Model-Level Permissions** โ€” Restrict API keys to specific models (`openai/*`, wildcard patterns), with Allow All/Restrict toggle - **API Endpoint Protection** โ€” Require a key for `/v1/models` and block specific providers from the listing - **Auth Guard + CSRF Protection** โ€” All dashboard routes protected with `withAuth` middleware + CSRF tokens - **Rate Limiter** โ€” Per-IP rate limiting with configurable windows - **IP Filtering** โ€” Allowlist/blocklist for access control - **Prompt Injection Guard** โ€” Sanitization against malicious prompt patterns - **AES-256-GCM Encryption** โ€” Credentials encrypted at rest
๐Ÿ›‘ 6. "My provider went down and I lost my coding flow" AI providers can become unstable, return 5xx errors, or hit temporary rate limits. If a dev depends on a single provider, they're interrupted. Without circuit breakers, repeated retries can crash the application. **How OmniRoute solves it:** - **Circuit Breaker per-provider** โ€” Auto-open/close with configurable thresholds and cooldown (Closed/Open/Half-Open) - **Exponential Backoff** โ€” Progressive retry delays - **Anti-Thundering Herd** โ€” Mutex + semaphore protection against concurrent retry storms - **Combo Fallback Chains** โ€” If the primary provider fails, automatically falls through the chain with no intervention - **Combo Circuit Breaker** โ€” Auto-disables failing providers within a combo chain - **Health Dashboard** โ€” Uptime monitoring, circuit breaker states, lockouts, cache stats, p50/p95/p99 latency
๐Ÿ”ง 7. "Configuring each AI tool is tedious and repetitive" Developers use Cursor, Claude Code, Codex CLI, OpenClaw, Gemini CLI, Kilo Code... Each tool needs a different config (API endpoint, key, model). Reconfiguring when switching providers or models is a waste of time. **How OmniRoute solves it:** - **CLI Tools Dashboard** โ€” Dedicated page with one-click setup for Claude Code, Codex CLI, OpenClaw, Kilo Code, Antigravity, Cline - **GitHub Copilot Config Generator** โ€” Generates `chatLanguageModels.json` for VS Code with bulk model selection - **Onboarding Wizard** โ€” Guided 4-step setup for first-time users - **One endpoint, all models** โ€” Configure `http://localhost:20128/v1` once, access 36+ providers
๐Ÿ”‘ 8. "Managing OAuth tokens from multiple providers is hell" Claude Code, Codex, Gemini CLI, Copilot โ€” all use OAuth 2.0 with expiring tokens. Developers need to re-authenticate constantly, deal with `client_secret is missing`, `redirect_uri_mismatch`, and failures on remote servers. OAuth on LAN/VPS is particularly problematic. **How OmniRoute solves it:** - **Auto Token Refresh** โ€” OAuth tokens refresh in background before expiration - **OAuth 2.0 (PKCE) Built-in** โ€” Automatic flow for Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow - **Multi-Account OAuth** โ€” Multiple accounts per provider via JWT/ID token extraction - **OAuth LAN/Remote Fix** โ€” Private IP detection for `redirect_uri` + manual URL mode for remote servers - **OAuth Behind Nginx** โ€” Uses `window.location.origin` for reverse proxy compatibility - **Remote OAuth Guide** โ€” Step-by-step guide for Google Cloud credentials on VPS/Docker
๐Ÿ“Š 9. "I don't know how much I'm spending or where" Developers use multiple paid providers but have no unified view of spending. Each provider has its own billing dashboard, but there's no consolidated view. Unexpected costs can pile up. **How OmniRoute solves it:** - **Cost Analytics Dashboard** โ€” Per-token cost tracking and budget management per provider - **Budget Limits per Tier** โ€” Spending ceiling per tier that triggers automatic fallback - **Per-Model Pricing Configuration** โ€” Configurable prices per model - **Usage Statistics Per API Key** โ€” Request count and last-used timestamp per key - **Analytics Dashboard** โ€” Stat cards, model usage chart, provider table with success rates and latency
๐Ÿ› 10. "I can't diagnose errors and problems in AI calls" When a call fails, the dev doesn't know if it was a rate limit, expired token, wrong format, or provider error. Fragmented logs across different terminals. Without observability, debugging is trial-and-error. **How OmniRoute solves it:** - **Unified Logs Dashboard** โ€” 4 tabs: Request Logs, Proxy Logs, Audit Logs, Console - **Console Log Viewer** โ€” Real-time terminal-style viewer with color-coded levels, auto-scroll, search, filter - **SQLite Proxy Logs** โ€” Persistent logs that survive server restarts - **Translator Playground** โ€” 4 debugging modes: Playground (format translation), Chat Tester (round-trip), Test Bench (batch), Live Monitor (real-time) - **Request Telemetry** โ€” p50/p95/p99 latency + X-Request-Id tracing - **File-Based Logging with Rotation** โ€” Console interceptor captures everything to JSON log with size-based rotation
๐Ÿ—๏ธ 11. "Deploying and maintaining the gateway is complex" Installing, configuring, and maintaining an AI proxy across different environments (local, VPS, Docker, cloud) is labor-intensive. Problems like hardcoded paths, `EACCES` on directories, port conflicts, and cross-platform builds add friction. **How OmniRoute solves it:** - **npm global install** โ€” `npm install -g omniroute && omniroute` โ€” done - **Docker Multi-Platform** โ€” AMD64 + ARM64 native (Apple Silicon, AWS Graviton, Raspberry Pi) - **Docker Compose Profiles** โ€” `base` (no CLI tools) and `cli` (with Claude Code, Codex, OpenClaw) - **Electron Desktop App** โ€” Native app for Windows/macOS/Linux with system tray, auto-start, offline mode - **Split-Port Mode** โ€” API and Dashboard on separate ports for advanced scenarios (reverse proxy, container networking) - **Cloud Sync** โ€” Config synchronization across devices via Cloudflare Workers - **DB Backups** โ€” Automatic backup, restore, export and import of all settings
๐ŸŒ 12. "The interface is English-only and my team doesn't speak English" Teams in non-English-speaking countries, especially in Latin America, Asia, and Europe, struggle with English-only interfaces. Language barriers reduce adoption and increase configuration errors. **How OmniRoute solves it:** - **Dashboard i18n โ€” 30 Languages** โ€” All 500+ keys translated including Arabic, Bulgarian, Danish, German, Spanish, Finnish, French, Hebrew, Hindi, Hungarian, Indonesian, Italian, Japanese, Korean, Malay, Dutch, Norwegian, Polish, Portuguese (PT/BR), Romanian, Russian, Slovak, Swedish, Thai, Ukrainian, Vietnamese, Chinese, Filipino, English - **RTL Support** โ€” Right-to-left support for Arabic and Hebrew - **Multi-Language READMEs** โ€” 30 complete documentation translations - **Language Selector** โ€” Globe icon in header for real-time switching
๐Ÿ”„ 13. "I need more than chat โ€” I need embeddings, images, audio" AI isn't just chat completion. Devs need to generate images, transcribe audio, create embeddings for RAG, rerank documents, and moderate content. Each API has a different endpoint and format. **How OmniRoute solves it:** - **Embeddings** โ€” `/v1/embeddings` with 6 providers and 9+ models - **Image Generation** โ€” `/v1/images/generations` with 4 providers and 9+ models - **Audio Transcription** โ€” `/v1/audio/transcriptions` โ€” Whisper-compatible - **Text-to-Speech** โ€” `/v1/audio/speech` โ€” Multi-provider audio synthesis - **Moderations** โ€” `/v1/moderations` โ€” Content safety checks - **Reranking** โ€” `/v1/rerank` โ€” Document relevance reranking - **Responses API** โ€” Full `/v1/responses` support for Codex
๐Ÿงช 14. "I have no way to test and compare quality across models" Developers want to know which model is best for their use case โ€” code, translation, reasoning โ€” but comparing manually is slow. No integrated eval tools exist. **How OmniRoute solves it:** - **LLM Evaluations** โ€” Golden set testing with 10 pre-loaded cases covering greetings, math, geography, code generation, JSON compliance, translation, markdown, safety refusal - **4 Match Strategies** โ€” `exact`, `contains`, `regex`, `custom` (JS function) - **Translator Playground Test Bench** โ€” Batch testing with multiple inputs and expected outputs, cross-provider comparison - **Chat Tester** โ€” Full round-trip with visual response rendering - **Live Monitor** โ€” Real-time stream of all requests flowing through the proxy
๐Ÿ“ˆ 15. "I need to scale without losing performance" As request volume grows, without caching the same questions generate duplicate costs. Without idempotency, duplicate requests waste processing. Per-provider rate limits must be respected. **How OmniRoute solves it:** - **Semantic Cache** โ€” Two-tier cache (signature + semantic) reduces cost and latency - **Request Idempotency** โ€” 5s deduplication window for identical requests - **Rate Limit Detection** โ€” Per-provider RPM, min gap, and max concurrent tracking - **Editable Rate Limits** โ€” Configurable defaults in Settings โ†’ Resilience with persistence - **API Key Validation Cache** โ€” 3-tier cache for production performance - **Health Dashboard with Telemetry** โ€” p50/p95/p99 latency, cache stats, uptime
๐Ÿค– 16. "I want to control model behavior globally" Developers who want all responses in a specific language, with a specific tone, or want to limit reasoning tokens. Configuring this in every tool/request is impractical. **How OmniRoute solves it:** - **System Prompt Injection** โ€” Global prompt applied to all requests - **Thinking Budget Validation** โ€” Reasoning token allocation control per request (passthrough, auto, custom, adaptive) - **6 Routing Strategies** โ€” Global strategies that determine how requests are distributed - **Wildcard Router** โ€” `provider/*` patterns route dynamically to any provider - **Combo Enable/Disable Toggle** โ€” Toggle combos directly from the dashboard - **Provider Toggle** โ€” Enable/disable all connections for a provider with one click - **Blocked Providers** โ€” Exclude specific providers from `/v1/models` listing
## โšก Mulai Cepat **1. Instal secara global:** ```bash npm install -g omniroute omniroute ``` ๐ŸŽ‰ Dasbor terbuka di `http://localhost:20128` | Perintah | Deskripsi | | ----------------------- | --------------------------------- | | `omniroute` | Mulai server (port default 20128) | | `omniroute --port 3000` | Gunakan port khusus | | `omniroute --no-open` | Jangan buka otomatis browser | | `omniroute --help` | Tampilkan bantuan | **2. Hubungkan penyedia GRATIS:** Dasbor โ†’ Penyedia โ†’ Hubungkan **Kode Claude** atau **Antigravitasi** โ†’ Login OAuth โ†’ Selesai! **3. Gunakan di alat CLI Anda:** ``` Claude Code/Codex/Gemini CLI/OpenClaw/Cursor/Cline Settings: Endpoint: http://localhost:20128/v1 API Key: [copy from dashboard] Model: if/kimi-k2-thinking ``` **Selesai!** Mulai coding dengan model AI GRATIS. **Alternatif โ€” dijalankan dari sumber:** ```bash cp .env.example .env npm install PORT=20128 NEXT_PUBLIC_BASE_URL=http://localhost:20128 npm run dev ``` --- ## ๐Ÿณ buruh pelabuhan OmniRoute tersedia sebagai image Docker publik di [Docker Hub](https://hub.docker.com/r/diegosouzapw/omniroute). **Lari cepat:** ```bash docker run -d \ --name omniroute \ --restart unless-stopped \ -p 20128:20128 \ -v omniroute-data:/app/data \ diegosouzapw/omniroute:latest ``` **Dengan file lingkungan:** ```bash # Copy and edit .env first cp .env.example .env docker run -d \ --name omniroute \ --restart unless-stopped \ --env-file .env \ -p 20128:20128 \ -v omniroute-data:/app/data \ diegosouzapw/omniroute:latest ``` **Menggunakan Docker Tulis:** ```bash # Base profile (no CLI tools) docker compose --profile base up -d # CLI profile (Claude Code, Codex, OpenClaw built-in) docker compose --profile cli up -d ``` | Gambar | Tandai | Ukuran | Deskripsi | | ------------------------ | -------- | ------- | -------------------- | | `diegosouzapw/omniroute` | `latest` | ~250 MB | Rilis stabil terbaru | | `diegosouzapw/omniroute` | `1.0.3` | ~250 MB | Versi saat ini | --- --- ## ๐Ÿ–ฅ๏ธ Desktop App โ€” Offline & Always-On > ๐Ÿ†• **NEW!** OmniRoute is now available as a **native desktop application** for Windows, macOS, and Linux. - ๐Ÿ–ฅ๏ธ **Native Window** โ€” Dedicated app window with system tray integration - ๐Ÿ”„ **Auto-Start** โ€” Launch OmniRoute on system login - ๐Ÿ”” **Native Notifications** โ€” Get alerts for quota exhaustion or provider issues - โšก **One-Click Install** โ€” NSIS (Windows), DMG (macOS), AppImage (Linux) - ๐ŸŒ **Offline Mode** โ€” Works fully offline with bundled server ```bash npm run electron:dev # Development mode npm run electron:build # Current platform npm run electron:build:win # Windows (.exe) npm run electron:build:mac # macOS (.dmg) npm run electron:build:linux # Linux (.AppImage) ``` ๐Ÿ“– Full documentation: [`electron/README.md`](electron/README.md) --- ## ๐Ÿ’ฐ Sekilas tentang Harga | Tingkat | Penyedia | Biaya | Reset Kuota | Terbaik Untuk | | ------------------- | ----------------- | ------------------------- | ------------------------- | --------------------------- | | **๐Ÿ’ณ BERLANGGANAN** | Kode Claude (Pro) | $20/bln | 5 jam + mingguan | Sudah berlangganan | | | Kodeks (Plus/Pro) | $20-200/bln | 5 jam + mingguan | Pengguna OpenAI | | | CLI Gemini | **GRATIS** | 180K/bln + 1K/hari | Setiap orang! | | | Kopilot GitHub | $10-19/bln | Bulanan | Pengguna GitHub | | **๐Ÿ”‘ KUNCI API** | NVIDIA NIM | **GRATIS** (1000 sks) | Satu kali | Pengujian tingkat gratis | | | Pencarian Dalam | Bayar per penggunaan | Tidak ada | Harga/kualitas terbaik | | | Bagus | Tingkat gratis + berbayar | Tarif terbatas | Inferensi ultra-cepat | | | xAI (Grok) | Bayar per penggunaan | Tidak ada | Model Grok | | | Mistral | Tingkat gratis + berbayar | Tarif terbatas | AI Eropa | | | BukaRouter | Bayar per penggunaan | Tidak ada | 100+ model | | **๐Ÿ’ฐ MURAH** | GLM-4.7 | $0,6/1 juta | Setiap hari pukul 10 pagi | Cadangan anggaran | | | MiniMax M2.1 | $0,2/1 juta | 5 jam bergulir | Pilihan termurah | | | Kimi K2 | $9/bln tetap | 10 juta token/bln | Biaya yang dapat diprediksi | | **๐Ÿ†“ GRATIS** | iFlow | $0 | Tidak terbatas | 8 model gratis | | | Qwen | $0 | Tidak terbatas | 3 model gratis | | | Kiro | $0 | Tidak terbatas | Claude gratis | **๐Ÿ’ก Kiat Pro:** Mulai dengan Gemini CLI (gratis 180 ribu/bulan) + kombo iFlow (gratis tanpa batas) = โ€‹โ€‹biaya $0! --- ## ๐Ÿ’ก Fitur Utama ### ๐Ÿง  Perutean & Kecerdasan Inti | Fitur | Apa Fungsinya | | ------------------------------------ | ---------------------------------------------------------------------------------- | | ๐ŸŽฏ **Pengembalian 4 Tingkat Cerdas** | Rute otomatis: Berlangganan โ†’ Kunci API โ†’ Murah โ†’ Gratis | | ๐Ÿ“Š **Pelacakan Kuota Waktu Nyata** | Jumlah token langsung + setel ulang hitungan mundur per penyedia | | ๐Ÿ”„ **Terjemahan Format** | OpenAI โ†” Claude โ†” Gemini โ†” Kursor โ†” Kiro mulus + sanitasi respons | | ๐Ÿ‘ฅ **Dukungan Multi-Akun** | Banyak akun per penyedia dengan pilihan cerdas | | ๐Ÿ”„ **Penyegaran Token Otomatis** | Token OAuth disegarkan secara otomatis dengan coba lagi | | ๐ŸŽจ **Kombo Khusus** | 6 strategi: isi dulu, round-robin, p2c, acak, paling jarang digunakan, hemat biaya | | ๐Ÿงฉ **Model Khusus** | Tambahkan ID model apa pun ke penyedia mana pun | | ๐ŸŒ **Router Wildcard** | Rutekan pola `provider/*` ke penyedia mana pun secara dinamis | | ๐Ÿง  **Memikirkan Anggaran** | Mode passthrough, otomatis, kustom, dan adaptif untuk model penalaran | | ๐Ÿ”€ **Model Aliases** | Auto-forward deprecated model IDs to current replacements (built-in + custom) | | โšก **Background Degradation** | Auto-route background tasks (titles, summaries) to cheaper models | | ๐Ÿ’ฌ **Injeksi Perintah Sistem** | Perintah sistem global diterapkan di semua permintaan | | ๐Ÿ“„ **API Respons** | Dukungan penuh OpenAI Responses API (`/v1/responses`) untuk Codex | ### ๐ŸŽต API Multi-Modal | Fitur | Apa Fungsinya | | -------------------------- | ------------------------------------------------------ | | ๐Ÿ–ผ๏ธ **Pembuatan Gambar** | `/v1/images/generations` โ€” 4 penyedia, 9+ model | | ๐Ÿ“ **Sematan** | `/v1/embeddings` โ€” 6 penyedia, 9+ model | | ๐ŸŽค **Transkripsi Audio** | `/v1/audio/transcriptions` โ€” Kompatibel dengan bisikan | | ๐Ÿ”Š **Teks-ke-Ucapan** | `/v1/audio/speech` โ€” Sintesis audio multi-penyedia | | ๐Ÿ›ก๏ธ **Moderasi** | `/v1/moderations` โ€” Pemeriksaan keamanan konten | | ๐Ÿ”€ **Pemeringkatan Ulang** | `/v1/rerank` โ€” Pemeringkatan ulang relevansi dokumen | ### ๐Ÿ›ก๏ธ Ketahanan & Keamanan | Fitur | Apa Fungsinya | | ------------------------------------ | ------------------------------------------------------------------------------------------ | | ๐Ÿ”Œ **Pemutus Arus** | Buka/tutup otomatis per penyedia dengan ambang batas yang dapat dikonfigurasi | | ๐Ÿ›ก๏ธ **Kawanan Anti Guntur** | Batas kecepatan mutex + semaphore untuk penyedia kunci API | | ๐Ÿง  **Cache Semantik** | Cache dua tingkat (tanda tangan + semantik) mengurangi biaya & latensi | | โšก **Minta Idempotensi** | Jendela dedup 5 detik untuk permintaan duplikat | | ๐Ÿ”’ **Spoofing Sidik Jari TLS** | Lewati deteksi bot berbasis TLS melalui wreq-js | | ๐ŸŒ **Pemfilteran IP** | Daftar yang diizinkan/daftar blokir untuk kontrol akses API | | ๐Ÿ“Š **Batas Tarif yang Dapat Diedit** | RPM yang dapat dikonfigurasi, celah minimum, dan maks secara bersamaan pada tingkat sistem | | ๐Ÿ’พ **Rate Limit Persistence** | Learned limits survive restarts via SQLite with 60s debounce + 24h staleness | | ๐Ÿ”„ **Token Refresh Resilience** | Per-provider circuit breaker (5 failsโ†’30min) + 30s timeout per attempt | | ๐Ÿ›ก **Perlindungan Titik Akhir API** | Gerbang autentikasi + pemblokiran penyedia untuk titik akhir `/models` | | ๐Ÿ”’ **Visibilitas Proksi** | Lencana berkode warna: ๐ŸŸข global, ๐ŸŸก penyedia, ๐Ÿ”ต per koneksi dengan tampilan IP | | ๐ŸŒ **Konfigurasi Proksi 3 Tingkat** | Konfigurasikan proxy di tingkat global, per penyedia, atau per koneksi | ### ๐Ÿ“Š Observabilitas & Analisis | Fitur | Apa Fungsinya | | ---------------------------- | ------------------------------------------------------------------------------- | | ๐Ÿ“ **Permintaan Pencatatan** | Mode debug dengan log permintaan/respons lengkap | | ๐Ÿ’พ **Log Proksi SQLite** | Log proksi persisten bertahan saat server dimulai ulang | | ๐Ÿ“Š **Dasbor Analitik** | Didukung grafik ulang: kartu stat, bagan penggunaan model, tabel penyedia | | ๐Ÿ“ˆ **Pelacakan Kemajuan** | Ikut serta dalam acara kemajuan SSE untuk streaming | | ๐Ÿงช **Evaluasi LLM** | Pengujian set emas dengan 4 strategi pertandingan | | ๐Ÿ” **Permintaan Telemetri** | agregasi latensi p50/p95/p99 + penelusuran X-Request-Id | | ๐Ÿ“‹ **Dasbor Log** | Halaman 4 tab terpadu: Log Permintaan, Log Proksi, Log Audit, Konsol | | ๐Ÿ–ฅ๏ธ **Penampil Log Konsol** | Penampil gaya terminal real-time dengan filter level, pencarian, gulir otomatis | | ๐Ÿ“‘ **Logging Berbasis File** | Pencegat konsol menangkap semua output ke file log JSON dengan rotasi | | ๐Ÿฅ **Dasbor Kesehatan** | Waktu aktif sistem, status pemutus sirkuit, penguncian, statistik cache | | ๐Ÿ’ฐ **Pelacakan Biaya** | Manajemen anggaran + konfigurasi harga per model | ### โ˜๏ธ Penerapan & Sinkronisasi | Fitur | Apa Fungsinya | | ---------------------------- | ---------------------------------------------------------------------------- | | ๐Ÿ’พ **Sinkronisasi Cloud** | Sinkronkan konfigurasi antar perangkat melalui Cloudflare Workers | | ๐ŸŒ **Terapkan Di Mana Saja** | Localhost, VPS, Docker, Pekerja Cloudflare | | ๐Ÿ”‘ **Manajemen Kunci API** | Menghasilkan, memutar, dan mencakup kunci API per penyedia | | ๐Ÿง™ **Wizard Orientasi** | Penyiapan terpandu 4 langkah untuk pengguna pertama kali | | ๐Ÿ”ง **Dasbor Alat CLI** | Konfigurasikan sekali klik Claude, Codex, Cline, OpenClaw, Kilo, Antigravity | | ๐Ÿ”„ **Cadangan DB** | Pencadangan, pemulihan, ekspor & impor otomatis untuk semua pengaturan | | ๐ŸŒ **Internasionalisasi** | I18n lengkap dengan next-intl โ€” Dukungan Inggris + Portugis (Brasil) | | ๐ŸŒ **Pemilih Bahasa** | Ikon bola dunia di header untuk peralihan bahasa secara real-time (๐Ÿ‡ฎ๐Ÿ‡ฉ/๐Ÿ‡ง๐Ÿ‡ท) | | ๐Ÿ“‚ **Direktori Data Khusus** | `DATA_DIR` env var untuk mengganti jalur penyimpanan `~/.omniroute` default |
๐Ÿ“– Detail Fitur ### ๐ŸŽฏ Penggantian 4 Tingkat yang Cerdas Buat kombo dengan fallback otomatis: ``` Combo: "my-coding-stack" 1. cc/claude-opus-4-6 (your subscription) 2. nvidia/llama-3.3-70b (free NVIDIA API) 3. glm/glm-4.7 (cheap backup, $0.6/1M) 4. if/kimi-k2-thinking (free fallback) โ†’ Auto switches when quota runs out or errors occur ``` ### ๐Ÿ“Š Pelacakan Kuota Waktu Nyata - Konsumsi token per penyedia - Atur ulang hitungan mundur (5 jam, harian, mingguan) - Estimasi biaya untuk tingkatan berbayar - Laporan pengeluaran bulanan ### ๐Ÿ”„ Format Terjemahan Terjemahan mulus antar format: - **OpenAI** โ†” **Claude** โ†” **Gemini** โ†” **Respon OpenAI** - Alat CLI Anda mengirimkan format OpenAI โ†’ OmniRoute menerjemahkan โ†’ Penyedia menerima format asli - Bekerja dengan alat apa pun yang mendukung titik akhir OpenAI khusus - **Sanitasi respons** โ€” Menghapus kolom non-standar untuk kompatibilitas OpenAI SDK yang ketat - **Normalisasi peran** โ€” `developer` โ†’ `system` untuk non-OpenAI; `system` โ†’ `user` untuk model GLM/ERNIE - **Think tag ekstraksi** โ€” `` blok โ†’ `reasoning_content` untuk model berpikir - **Keluaran terstruktur** โ€” `json_schema` โ†’ `responseMimeType`/`responseSchema` Gemini ### ๐Ÿ‘ฅ Dukungan Multi-Akun - Tambahkan beberapa akun per penyedia - Perutean otomatis round-robin atau berbasis prioritas - Penggantian ke akun berikutnya ketika ada yang mencapai kuota ### ๐Ÿ”„ Penyegaran Token Otomatis - Token OAuth secara otomatis disegarkan sebelum masa berlakunya habis - Tidak diperlukan otentikasi ulang manual - Pengalaman mulus di semua penyedia ### ๐ŸŽจ Kombo Khusus - Buat kombinasi model tanpa batas - 6 strategi: isi pertama, round-robin, kekuatan dua pilihan, acak, paling jarang digunakan, hemat biaya - Bagikan kombo di seluruh perangkat dengan Cloud Sync ### ๐Ÿฅ Dasbor Kesehatan - Status sistem (waktu aktif, versi, penggunaan memori) - Status pemutus sirkuit per penyedia (Tertutup/Terbuka/Setengah Terbuka) - Status batas tarif dan penguncian aktif - Statistik cache tanda tangan - Telemetri latensi (p50/p95/p99) + cache cepat - Atur ulang status kesehatan dengan satu klik ### ๐Ÿ”ง Taman Bermain Penerjemah OmniRoute menyertakan Taman Bermain Penerjemah bawaan yang canggih dengan **4 mode** untuk melakukan debug, menguji, dan memantau terjemahan API: | Modus | Deskripsi | | ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **๐Ÿ’ป Taman bermain** | Terjemahan format langsung โ€” tempelkan isi permintaan API apa pun dan langsung lihat bagaimana OmniRoute menerjemahkannya antar format penyedia (OpenAI โ†” Claude โ†” Gemini โ†” Responses API). Termasuk contoh templat dan deteksi otomatis format. | | **๐Ÿ’ฌ Penguji Obrolan** | Kirim permintaan obrolan nyata melalui OmniRoute dan lihat perjalanan pulang pergi selengkapnya: masukan Anda, permintaan yang diterjemahkan, respons penyedia, dan respons yang diterjemahkan kembali. Sangat berharga untuk memvalidasi perutean kombo. | | **๐Ÿงช Bangku Tes** | Mode pengujian batch โ€” tentukan beberapa kasus pengujian dengan masukan berbeda dan keluaran yang diharapkan, jalankan semuanya sekaligus, dan bandingkan hasilnya di seluruh penyedia dan model. | | **๐Ÿ“ฑ Monitor Langsung** | Pemantauan permintaan waktu nyata โ€” perhatikan permintaan masuk saat mengalir melalui OmniRoute, lihat terjemahan format yang terjadi secara langsung, dan identifikasi masalah secara instan. | **Akses:** Dasbor โ†’ Penerjemah (bilah samping) ### ๐Ÿ’พ Sinkronisasi Awan - Sinkronisasi penyedia, kombo, dan pengaturan di seluruh perangkat - Sinkronisasi latar belakang otomatis - Penyimpanan terenkripsi yang aman
--- ## ๐ŸŽฏ Kasus Penggunaan ### Kasus 1: "Saya berlangganan Claude Pro" **Masalah:** Kuota habis tanpa terpakai, batas kecepatan selama coding berat ``` Combo: "maximize-claude" 1. cc/claude-opus-4-6 (use subscription fully) 2. glm/glm-4.7 (cheap backup when quota out) 3. if/kimi-k2-thinking (free emergency fallback) Monthly cost: $20 (subscription) + ~$5 (backup) = $25 total vs. $20 + hitting limits = frustration ``` ### Kasus 2: "Saya ingin tanpa biaya" **Masalah:** Tidak mampu berlangganan, memerlukan pengkodean AI yang andal ``` Combo: "free-forever" 1. gc/gemini-3-flash (180K free/month) 2. if/kimi-k2-thinking (unlimited free) 3. qw/qwen3-coder-plus (unlimited free) Monthly cost: $0 Quality: Production-ready models ``` ### Kasus 3: "Saya memerlukan pengkodean 24/7, tanpa gangguan" **Masalah:** Tenggat waktu, tidak mampu membayar downtime ``` Combo: "always-on" 1. cc/claude-opus-4-6 (best quality) 2. cx/gpt-5.2-codex (second subscription) 3. glm/glm-4.7 (cheap, resets daily) 4. minimax/MiniMax-M2.1 (cheapest, 5h reset) 5. if/kimi-k2-thinking (free unlimited) Result: 5 layers of fallback = zero downtime ``` ### Kasus 4: "Saya ingin AI GRATIS di OpenClaw" **Masalah:** Membutuhkan asisten AI dalam aplikasi perpesanan, sepenuhnya gratis ``` Combo: "openclaw-free" 1. if/glm-4.7 (unlimited free) 2. if/minimax-m2.1 (unlimited free) 3. if/kimi-k2-thinking (unlimited free) Monthly cost: $0 Access via: WhatsApp, Telegram, Slack, Discord, iMessage, Signal... ``` --- ## ๐Ÿ“– Panduan Pengaturan
๐Ÿ’ณ Penyedia Langganan ### Kode Claude (Pro/Maks) ```bash Dashboard โ†’ Providers โ†’ Connect Claude Code โ†’ OAuth login โ†’ Auto token refresh โ†’ 5-hour + weekly quota tracking Models: cc/claude-opus-4-6 cc/claude-sonnet-4-5-20250929 cc/claude-haiku-4-5-20251001 ``` **Kiat Pro:** Gunakan Opus untuk tugas kompleks, Soneta untuk kecepatan. OmniRoute melacak kuota per model! ### Kodeks OpenAI (Plus/Pro) ```bash Dashboard โ†’ Providers โ†’ Connect Codex โ†’ OAuth login (port 1455) โ†’ 5-hour + weekly reset Models: cx/gpt-5.2-codex cx/gpt-5.1-codex-max ``` ### Gemini CLI (GRATIS 180K/bulan!) ```bash Dashboard โ†’ Providers โ†’ Connect Gemini CLI โ†’ Google OAuth โ†’ 180K completions/month + 1K/day Models: gc/gemini-3-flash-preview gc/gemini-2.5-pro ``` **Nilai Terbaik:** Tingkat gratis yang sangat besar! Gunakan ini sebelum tingkatan berbayar. ### Kopilot GitHub ```bash Dashboard โ†’ Providers โ†’ Connect GitHub โ†’ OAuth via GitHub โ†’ Monthly reset (1st of month) Models: gh/gpt-5 gh/claude-4.5-sonnet gh/gemini-3-pro ```
๐Ÿ”‘ Penyedia Kunci API ### NVIDIA NIM (GRATIS 1000 kredit!) 1. Daftar: [build.nvidia.com](https://build.nvidia.com) 2. Dapatkan kunci API gratis (termasuk 1000 kredit inferensi) 3. Dasbor โ†’ Tambah Penyedia โ†’ NVIDIA NIM: - Kunci API: `nvapi-your-key` **Model:** `nvidia/llama-3.3-70b-instruct`, `nvidia/mistral-7b-instruct`, dan 50+ lainnya **Kiat Pro:** API yang kompatibel dengan OpenAI โ€” bekerja secara lancar dengan terjemahan format OmniRoute! ### Pencarian Dalam 1. Daftar: [platform.deepseek.com](https://platform.deepseek.com) 2. Dapatkan kunci API 3. Dasbor โ†’ Tambah Penyedia โ†’ DeepSeek **Model:** `deepseek/deepseek-chat`, `deepseek/deepseek-coder` ### Groq (Tersedia Tingkat Gratis!) 1. Daftar: [console.groq.com](https://console.groq.com) 2. Dapatkan kunci API (termasuk tingkat gratis) 3. Dasbor โ†’ Tambah Penyedia โ†’ Groq **Model:** `groq/llama-3.3-70b`, `groq/mixtral-8x7b` **Kiat Pro:** Inferensi ultra-cepat โ€” terbaik untuk pengkodean waktu nyata! ### OpenRouter (100+ Model) 1. Daftar: [openrouter.ai](https://openrouter.ai) 2. Dapatkan kunci API 3. Dasbor โ†’ Tambah Penyedia โ†’ OpenRouter **Model:** Akses 100+ model dari semua penyedia utama melalui satu kunci API.
๐Ÿ’ฐ Penyedia Murah (Cadangan) ### GLM-4.7 (Reset harian, $0,6/1 juta) 1. Daftar: [Zhipu AI](https://open.bigmodel.cn/) 2. Dapatkan kunci API dari Coding Plan 3. Dasbor โ†’ Tambahkan Kunci API: - Penyedia: `glm` - Kunci API: `your-key` **Gunakan:** `glm/glm-4.7` **Tips Pro:** Paket Coding menawarkan 3ร— kuota dengan biaya 1/7! Reset setiap hari pukul 10.00. ### MiniMax M2.1 (reset 5 jam, $0,20/1 juta) 1. Daftar: [MiniMax](https://www.minimax.io/) 2. Dapatkan kunci API 3. Dasbor โ†’ Tambahkan Kunci API **Gunakan:** `minimax/MiniMax-M2.1` **Kiat Pro:** Opsi termurah untuk konteks panjang (1 juta token)! ### Kimi K2 ($9/bulan tetap) 1. Berlangganan: [Moonshot AI](https://platform.moonshot.ai/) 2. Dapatkan kunci API 3. Dasbor โ†’ Tambahkan Kunci API **Gunakan:** `kimi/kimi-latest` **Kiat Pro:** Memperbaiki $9/bulan untuk 10 juta token = biaya efektif $0,90/1 juta!
๐Ÿ†“ Penyedia GRATIS (Cadangan Darurat) ### iFlow (8 model GRATIS) ```bash Dashboard โ†’ Connect iFlow โ†’ iFlow OAuth login โ†’ Unlimited usage Models: if/kimi-k2-thinking if/qwen3-coder-plus if/glm-4.7 if/minimax-m2 if/deepseek-r1 ``` ### Qwen (3 model GRATIS) ```bash Dashboard โ†’ Connect Qwen โ†’ Device code authorization โ†’ Unlimited usage Models: qw/qwen3-coder-plus qw/qwen3-coder-flash ``` ### Kiro (Claude GRATIS) ```bash Dashboard โ†’ Connect Kiro โ†’ AWS Builder ID or Google/GitHub โ†’ Unlimited usage Models: kr/claude-sonnet-4.5 kr/claude-haiku-4.5 ```
๐ŸŽจ Buat Kombo ### Contoh 1: Maksimalkan Langganan โ†’ Cadangan Murah ``` Dashboard โ†’ Combos โ†’ Create New Name: premium-coding Models: 1. cc/claude-opus-4-6 (Subscription primary) 2. glm/glm-4.7 (Cheap backup, $0.6/1M) 3. minimax/MiniMax-M2.1 (Cheapest fallback, $0.20/1M) Use in CLI: premium-coding ``` ### Contoh 2: Gratis Saja (Tanpa Biaya) ``` Name: free-combo Models: 1. gc/gemini-3-flash-preview (180K free/month) 2. if/kimi-k2-thinking (unlimited) 3. qw/qwen3-coder-plus (unlimited) Cost: $0 forever! ```
๐Ÿ”ง Integrasi CLI ### IDE Kursor ``` Settings โ†’ Models โ†’ Advanced: OpenAI API Base URL: http://localhost:20128/v1 OpenAI API Key: [from OmniRoute dashboard] Model: cc/claude-opus-4-6 ``` ### Kode Claude Gunakan halaman **Alat CLI** di dasbor untuk konfigurasi sekali klik, atau edit `~/.claude/settings.json` secara manual. ### Kodeks CLI ```bash export OPENAI_BASE_URL="http://localhost:20128" export OPENAI_API_KEY="your-omniroute-api-key" codex "your prompt" ``` ### Buka Cakar **Opsi 1 โ€” Dasbor (disarankan):** ``` Dashboard โ†’ CLI Tools โ†’ OpenClaw โ†’ Select Model โ†’ Apply ``` **Opsi 2 โ€” Panduan:** Sunting `~/.openclaw/openclaw.json`: ```json { "models": { "providers": { "omniroute": { "baseUrl": "http://127.0.0.1:20128/v1", "apiKey": "sk_omniroute", "api": "openai-completions" } } } } ``` > **Catatan:** OpenClaw hanya berfungsi dengan OmniRoute lokal. Gunakan `127.0.0.1` alih-alih `localhost` untuk menghindari masalah resolusi IPv6. ### Cline / Lanjutkan / RooCode ``` Settings โ†’ API Configuration: Provider: OpenAI Compatible Base URL: http://localhost:20128/v1 API Key: [from OmniRoute dashboard] Model: if/kimi-k2-thinking ```
--- ## ๐Ÿงช Evaluasi (Eval) OmniRoute menyertakan kerangka evaluasi bawaan untuk menguji kualitas respons LLM terhadap rangkaian emas. Akses melalui **Analytics โ†’ Evals** di dasbor. ### Set Emas Bawaan "OmniRoute Golden Set" yang dimuat sebelumnya berisi 10 kasus uji yang meliputi: - Salam, matematika, geografi, pembuatan kode - Kepatuhan format JSON, terjemahan, penurunan harga - Penolakan keamanan (konten berbahaya), penghitungan, logika boolean ### Strategi Evaluasi | Strategi | Deskripsi | Contoh | | ---------- | ------------------------------------------------------------ | -------------------------------- | | `exact` | Output harus sama persis | `"4"` | | `contains` | Output harus berisi substring (tidak peka huruf besar-kecil) | `"Paris"` | | `regex` | Output harus sesuai dengan pola regex | `"1.*2.*3"` | | `custom` | Fungsi JS khusus mengembalikan benar/salah | `(output) => output.length > 10` | --- ## ๐Ÿ› Pemecahan masalah
Klik untuk memperluas panduan pemecahan masalah **"Model bahasa tidak memberikan pesan"** - Kuota penyedia habis โ†’ Periksa dashboard pelacak kuota - Solusi: Gunakan combo fallback atau beralih ke tier yang lebih murah **Pembatasan tarif** - Kuota berlangganan habis โ†’ Penggantian ke GLM/MiniMax - Tambahkan kombo: `cc/claude-opus-4-6 โ†’ glm/glm-4.7 โ†’ if/kimi-k2-thinking` **Token OAuth kedaluwarsa** - Disegarkan secara otomatis oleh OmniRoute - Jika masalah terus berlanjut: Dasbor โ†’ Penyedia โ†’ Sambungkan kembali **Biaya tinggi** - Periksa statistik penggunaan di Dashboard โ†’ Biaya - Ganti model utama ke GLM/MiniMax - Gunakan tingkat gratis (Gemini CLI, iFlow) untuk tugas-tugas yang tidak penting **Dasbor terbuka pada port yang salah** - Tetapkan `PORT=20128` dan `NEXT_PUBLIC_BASE_URL=http://localhost:20128` **Kesalahan sinkronisasi cloud** - Verifikasi `BASE_URL` poin ke instance Anda yang sedang berjalan - Verifikasi `CLOUD_URL` poin ke titik akhir cloud yang Anda harapkan - Jaga agar nilai `NEXT_PUBLIC_*` selaras dengan nilai sisi server **Login pertama tidak berfungsi** - Periksa `INITIAL_PASSWORD` di `.env` - Jika tidak disetel, kata sandi cadangan adalah `123456` **Tidak ada log permintaan** - Tetapkan `ENABLE_REQUEST_LOGS=true` di `.env` **Tes koneksi menunjukkan "Tidak Valid" untuk penyedia yang kompatibel dengan OpenAI** - Banyak penyedia tidak mengekspos titik akhir `/models` - OmniRoute v1.0.6+ menyertakan validasi fallback melalui penyelesaian obrolan - Pastikan URL dasar menyertakan akhiran `/v1` ### ๐Ÿ” OAuth em Servidor Remoto (Pengaturan OAuth Jarak Jauh) > **โš ๏ธ PENTING bagi pengguna dengan OmniRoute pada VPS/Docker/server jarak jauh** ### Mengapa OAuth melakukan Antigravity / Gemini CLI gagal dalam layanan jarak jauh? Pembuktiannya **Antigravitasi** dan **Gemini CLI** digunakan **Google OAuth 2.0** untuk autentikasi. Google meminta agar `redirect_uri` menggunakan OAuth yang terus berubah, jadi **exatamente** adalah URI yang sudah ada sebelumnya di Google Cloud Console yang dapat diterapkan. Karena kredensial OAuth yang diberikan pada OmniRoute adalah kadastrada **apenas untuk `localhost`**. Ketika Anda mengakses OmniRoute dari server jarak jauh (misal: `https://omniroute.meuservidor.com`), atau Google meminta autenticaรงรฃo com: ``` Error 400: redirect_uri_mismatch ``` ### Solusi: Konfigurasikan akun OAuth Anda Anda perlu membuat **ID Klien OAuth 2.0** di Google Cloud Console dengan URI di server Anda. #### Lewati dulu **1. Mengakses Google Cloud Console** Abra: [https://console.cloud.google.com/apis/credentials](https://console.cloud.google.com/apis/credentials) **2. Inilah ID Klien OAuth 2.0 yang baru** - Klik pada **"+ Buat Kredensial"** โ†’ **"ID klien OAuth"** - Tip aplikasi: **"Aplikasi web"** - Nama: nama escolha qualquer (misal: `OmniRoute Remote`) **3. Tambahan sebagai URI Pengalihan Resmi** Selain itu **"URI pengalihan resmi"**, tambahan: ``` https://seu-servidor.com/callback ``` > Pengganti `seu-servidor.com` pelo domรญnio atau IP ke server Anda (termasuk port yang diperlukan, misal: `http://45.33.32.156:20128/callback`). **4. Salep dan salin sebagai kredensial** Kemudian, Google menampilkan **ID Klien** dan **Rahasia Klien**. **5. Konfigurasikan sebagai variรกveis de ambiente** Di `.env` (atau berbagai lingkungan di Docker): ```bash # Para Antigravity: ANTIGRAVITY_OAUTH_CLIENT_ID=seu-client-id.apps.googleusercontent.com ANTIGRAVITY_OAUTH_CLIENT_SECRET=GOCSPX-seu-secret # Para Gemini CLI: GEMINI_OAUTH_CLIENT_ID=seu-client-id.apps.googleusercontent.com GEMINI_OAUTH_CLIENT_SECRET=GOCSPX-seu-secret GEMINI_CLI_OAUTH_CLIENT_SECRET=GOCSPX-seu-secret ``` **6. Memulai kembali OmniRoute** ```bash # Se usando npm: npm run dev # Se usando Docker: docker restart omniroute ``` **7. Mari kita sambungkan lagi** Dasbor โ†’ Penyedia โ†’ Antigravitasi (atau Gemini CLI) โ†’ OAuth Sekarang o Google dialihkan langsung ke `https://seu-servidor.com/callback` dan autentikasi berfungsi. --- ### Solusi sementara (sem configurar credenciais prรณprias) Jika Anda tidak ingin membuat kredensial pribadi sekarang, Anda mungkin dapat menggunakan fluks **panduan URL**: 1. O OmniRoute membuka URL autoriza dari Google 2. Setelah Anda autorizar, Google mengarahkan pengalihan ke `localhost` (yang gagal pada server jarak jauh) 3. **Salin URL lengkap** dari bilah akhir browser Anda (meskipun halaman tidak dimuat) 4. Gunakan URL ini karena tidak ada modal koneksi ke OmniRoute 5. Klik pada **"Hubungkan"** > Solusi ini berfungsi karena kode otorisasi pada URL valid secara independen untuk mengarahkan ulang ke akun atau tidak.
--- ## ๐Ÿ› ๏ธ Tumpukan Teknologi - **Runtime**: Node.js 18โ€“22 LTS (โš ๏ธ Node.js 24+ **tidak didukung** โ€” `better-sqlite3` biner asli tidak kompatibel) - **Bahasa**: TypeScript 5.9 โ€” **100% TypeScript** di `src/` dan `open-sse/` (v1.0.6) - **Kerangka Kerja**: Next.js 16 + React 19 + Tailwind CSS 4 - **Database**: LowDB (JSON) + SQLite (status domain + log proksi) - **Streaming**: Peristiwa Terkirim Server (SSE) - **Auth**: OAuth 2.0 (PKCE) + JWT + Kunci API - **Pengujian**: pelari pengujian Node.js (368+ pengujian unit) - **CI/CD**: Tindakan GitHub (publikasi npm otomatis + Docker Hub saat dirilis) - **Situs Web**: [omniroute.online](https://omniroute.online) - **Paket**: [npmjs.com/package/omniroute](https://www.npmjs.com/package/omniroute) - **Pekerja Pelabuhan**: [hub.docker.com/r/diegosouzapw/omniroute](https://hub.docker.com/r/diegosouzapw/omniroute) - **Ketahanan**: Pemutus sirkuit, kemunduran eksponensial, kawanan anti-guntur, spoofing TLS --- ## ๐Ÿ“– Dokumentasi | Dokumen | Deskripsi | | -------------------------------------------- | --------------------------------------------------- | | [User Guide](docs/USER_GUIDE.md) | Penyedia, kombo, integrasi CLI, penerapan | | [API Reference](docs/API_REFERENCE.md) | Semua titik akhir dengan contoh | | [Troubleshooting](docs/TROUBLESHOOTING.md) | Masalah umum dan solusinya | | [Architecture](docs/ARCHITECTURE.md) | Arsitektur sistem dan internal | | [Contributing](CONTRIBUTING.md) | Pengaturan dan pedoman pengembangan | | [OpenAPI Spec](docs/openapi.yaml) | Spesifikasi OpenAPI 3.0 | | [Security Policy](SECURITY.md) | Pelaporan kerentanan dan praktik keamanan | | [VM Deployment](docs/VM_DEPLOYMENT_GUIDE.md) | Panduan lengkap: VM + nginx + Pengaturan Cloudflare | | [Features Gallery](docs/FEATURES.md) | Tur dasbor visual dengan tangkapan layar | ### ๐Ÿ“ธ Pratinjau Dasbor
Klik untuk melihat tangkapan layar dasbor | Halaman | Tangkapan layar | | ------------------ | ------------------------------------------------- | | **Penyedia** | ![Providers](docs/screenshots/01-providers.png) | | **Kombo** | ![Combos](docs/screenshots/02-combos.png) | | **Analitik** | ![Analytics](docs/screenshots/03-analytics.png) | | **Kesehatan** | ![Health](docs/screenshots/04-health.png) | | **Penerjemah** | ![Translator](docs/screenshots/05-translator.png) | | **Pengaturan** | ![Settings](docs/screenshots/06-settings.png) | | **Alat CLI** | ![CLI Tools](docs/screenshots/07-cli-tools.png) | | **Log Penggunaan** | ![Usage](docs/screenshots/08-usage.png) | | **Titik Akhir** | ![Endpoint](docs/screenshots/09-endpoint.png) |
--- ## ๐Ÿ—บ๏ธ Peta Jalan OmniRoute memiliki **210+ fitur yang direncanakan** di berbagai fase pengembangan. Berikut adalah bidang-bidang utamanya: | Kategori | Fitur yang Direncanakan | Sorotan | | ---------------------------- | ----------------------- | --------------------------------------------------------------------------------------------------- | | ๐Ÿง  **Perutean & Kecerdasan** | 25+ | Perutean latensi terendah, perutean berbasis tag, preflight kuota, pemilihan akun P2C | | ๐Ÿ”’ **Keamanan & Kepatuhan** | 20+ | Pengerasan SSRF, penyelubungan kredensial, batas tarif per titik akhir, pelingkupan kunci manajemen | | ๐Ÿ“Š **Kemampuan Observasi** | 15+ | Integrasi OpenTelemetry, pemantauan kuota waktu nyata, pelacakan biaya per model | | ๐Ÿ”„ **Integrasi Penyedia** | 20+ | Registri model dinamis, cooldown penyedia, Codex multi-akun, penguraian kuota Salinan | | โšก **Kinerja** | 15+ | Lapisan cache ganda, cache cepat, cache respons, streaming keepalive, API batch | | ๐ŸŒ **Ekosistem** | 10+ | WebSocket API, konfigurasi hot-reload, penyimpanan konfigurasi terdistribusi, mode komersial | ### ๐Ÿ”œ Segera Hadir - ๐Ÿ”— **Integrasi OpenCode** โ€” Dukungan penyedia asli untuk IDE pengkodean AI OpenCode - ๐Ÿ”— **Integrasi TRAE** โ€” Dukungan penuh untuk kerangka pengembangan AI TRAE - ๐Ÿ“ฆ **Batch API** โ€” Pemrosesan batch asinkron untuk permintaan massal - ๐ŸŽฏ **Perutean Berbasis Tag** โ€” Merutekan permintaan berdasarkan tag dan metadata khusus - ๐Ÿ’ฐ **Strategi Biaya Terendah** โ€” Secara otomatis memilih penyedia termurah yang tersedia > ๐Ÿ“ Spesifikasi fitur lengkap tersedia di [link](docs/new-features/) (217 spesifikasi detail) --- ## ๐Ÿ“ง Dukungan > ๐Ÿ’ฌ **Bergabunglah dengan komunitas kami!** [WhatsApp Group](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) โ€” Dapatkan bantuan, berbagi kiat, dan dapatkan informasi terbaru. - **Situs Web**: [omniroute.online](https://omniroute.online) - **GitHub**: [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute) - **Masalah**: [github.com/diegosouzapw/OmniRoute/issues](https://github.com/diegosouzapw/OmniRoute/issues) - **WhatsApp**: [Community Group](https://chat.whatsapp.com/JI7cDQ1GyaiDHhVBpLxf8b?mode=gi_t) - **Proyek Asli**: [9router by decolua](https://github.com/decolua/9router) --- ## ๐Ÿ‘ฅ Kontributor [![Contributors](https://contrib.rocks/image?repo=diegosouzapw/OmniRoute&max=100&columns=20&anon=1)](https://github.com/diegosouzapw/OmniRoute/graphs/contributors) ### Cara Berkontribusi 1. Cabangkan repositori 2. Buat cabang fitur Anda (`git checkout -b feature/amazing-feature`) 3. Komit perubahan Anda (`git commit -m 'Add amazing feature'`) 4. Dorong ke cabang (`git push origin feature/amazing-feature`) 5. Buka Permintaan Tarik Lihat [CONTRIBUTING.md](CONTRIBUTING.md) untuk panduan detailnya. ### Merilis Versi Baru ```bash # Create a release โ€” npm publish happens automatically gh release create v1.0.6 --title "v1.0.6" --generate-notes ``` --- ## ๐Ÿ“Š Sejarah Bintang Star History Chart --- ## ๐Ÿ™ Ucapan Terima Kasih Terima kasih khusus kepada **[9router](https://github.com/decolua/9router)** oleh **[decolua](https://github.com/decolua)** โ€” proyek asli yang menginspirasi fork ini. OmniRoute dibangun di atas fondasi luar biasa tersebut dengan fitur tambahan, API multi-modal, dan penulisan ulang TypeScript lengkap. Terima kasih khusus kepada **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** โ€” implementasi Go asli yang menginspirasi port JavaScript ini. --- ## ๐Ÿ“„ Lisensi Lisensi MIT - lihat [LICENSE](LICENSE) untuk detailnya. ---
Dibangun dengan โค๏ธ untuk pengembang yang membuat kode 24/7
omniroute.online