# README (日本語)
🌐 **Languages:** 🇺🇸 [English](../../../README.md) · 🇪🇹 [am](../am/README.md) · 🇸🇦 [ar](../ar/README.md) · 🇦🇿 [az](../az/README.md) · 🇧🇬 [bg](../bg/README.md) · 🇧🇩 [bn](../bn/README.md) · 🇧🇦 [bs](../bs/README.md) · 🇨🇿 [cs](../cs/README.md) · 🇩🇰 [da](../da/README.md) · 🇩🇪 [de](../de/README.md) · 🇬🇷 [el](../el/README.md) · 🇪🇸 [es](../es/README.md) · 🇪🇪 [et](../et/README.md) · 🇮🇷 [fa](../fa/README.md) · 🇫🇮 [fi](../fi/README.md) · 🇫🇷 [fr](../fr/README.md) · 🇮🇪 [ga](../ga/README.md) · 🇮🇳 [gu](../gu/README.md) · 🇳🇬 [ha](../ha/README.md) · 🇮🇱 [he](../he/README.md) · 🇮🇳 [hi](../hi/README.md) · 🇭🇷 [hr](../hr/README.md) · 🇭🇺 [hu](../hu/README.md) · 🇦🇲 [hy](../hy/README.md) · 🇮🇩 [id](../id/README.md) · 🇳🇬 [ig](../ig/README.md) · 🇮🇹 [it](../it/README.md) · 🇬🇪 [ka](../ka/README.md) · 🇰🇭 [km](../km/README.md) · 🇮🇳 [kn](../kn/README.md) · 🇰🇷 [ko](../ko/README.md) · 🇱🇹 [lt](../lt/README.md) · 🇱🇻 [lv](../lv/README.md) · 🇮🇳 [ml](../ml/README.md) · 🇮🇳 [mr](../mr/README.md) · 🇲🇾 [ms](../ms/README.md) · 🇲🇹 [mt](../mt/README.md) · 🇲🇲 [my](../my/README.md) · 🇳🇵 [ne](../ne/README.md) · 🇳🇱 [nl](../nl/README.md) · 🇳🇴 [no](../no/README.md) · 🇮🇳 [or](../or/README.md) · 🇮🇳 [pa](../pa/README.md) · 🇵🇭 [phi](../phi/README.md) · 🇵🇱 [pl](../pl/README.md) · 🇵🇹 [pt](../pt/README.md) · 🇧🇷 [pt-BR](../pt-BR/README.md) · 🇷🇴 [ro](../ro/README.md) · 🇷🇺 [ru](../ru/README.md) · 🇱🇰 [si](../si/README.md) · 🇸🇰 [sk](../sk/README.md) · 🇸🇮 [sl](../sl/README.md) · 🇷🇸 [sr](../sr/README.md) · 🇸🇪 [sv](../sv/README.md) · 🇰🇪 [sw](../sw/README.md) · 🇮🇳 [ta](../ta/README.md) · 🇮🇳 [te](../te/README.md) · 🇹🇭 [th](../th/README.md) · 🇹🇷 [tr](../tr/README.md) · 🇺🇦 [uk-UA](../uk-UA/README.md) · 🇵🇰 [ur](../ur/README.md) · 🇺🇿 [uz](../uz/README.md) · 🇻🇳 [vi](../vi/README.md) · 🇳🇬 [yo](../yo/README.md) · 🇨🇳 [zh-CN](../zh-CN/README.md) · 🇹🇼 [zh-TW](../zh-TW/README.md)
---
# 🚀 OmniRoute — 無料のAIゲートウェイ
## 💰 サードパーティの無料枠全体で月あたり約16.2億トークン
> **プロバイダーアカウントはご自身で用意してください。** これは、それぞれ個別に利用資格のあるサードパーティ無料枠を合算した推定値であり、OmniRoute からのトークン付与ではありません。登録し、必要な場合は認証情報を取得し、利用可能なプロバイダーを接続してください。各プロバイダーが独自の上限、可用性、利用規約を管理しています。
>
> 無料枠を手作業で積み上げるのは苦痛です — 何十もの SDK、何十ものレート制限、そして実際にどれだけ使えるのか分からないからです。OmniRoute は **34 の継続的なプールキーにまたがる 467 件の無料枠エントリ** をカタログ化し、トークンの見出し値を **公開された正の月間バジェットを持つ 17 のプールに、5 つのモデル別 Groq 上限を加えたもの** から計算します。共有プールは重複排除されます。地域の本人確認後にのみ開放されるクォータ(現在: ModelScope)は別枠で表示され、地域本人確認の背後に約600万トークンが追加されますが、見出し値には決して合算されません。結果はダッシュボード(`/dashboard/free-tiers`)で常に確認できます。
> ライブの `/dashboard/free-tiers` ページのアニメーション概要。完全な方法論(プールの重複排除、クレジット階層、プロバイダー規約): **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)**。
>
> これらの数値は 2 週間ごとにライブカタログに対して再監査され、**上下に変動します** — プロバイダーが無料枠を終了すれば数値は下がり、新しいプロバイダーが加われば上がります。私たちはカタログが実際に計算した値を公開し、切り上げた最良ケースを掲載することはありません。
⭐ OMNIROUTE がお金の節約や作業の効率化に役立ったなら、リポジトリにスターを付けてください。
[](https://github.com/diegosouzapw/OmniRoute)

[](https://www.star-history.com/diegosouzapw/omniroute)
[](https://olud.ai/project/diegosouzapw-omniroute.html)
### 💬 コミュニティに参加
**👋 メンテナーをフォロー — 新しいプロバイダー、リリース、ヒントをいち早く入手:**
[](https://www.linkedin.com/in/diegosouzapw/)
[](https://github.com/diegosouzapw)
[](https://discord.gg/U47eFqAXCn)
[](https://t.me/omnirouteOficial)
[](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4)
[](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4)
[](https://omniroute.online)
**質問、プロバイダーのヒント、ロードマップ、サポート → [Discord](https://discord.gg/U47eFqAXCn) · [Telegram](https://t.me/omnirouteOficial) · WhatsApp [🌍 グローバル](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) / [🇧🇷 ブラジル](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) / [ポータル](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK)**
## 📈 ゲートウェイは成長を続ける
| | v3.8.50 | **v3.8.51** | `v3.8.53+` |
| ------------------------------- | :-------------------------------: | :---------: | :-------------------: |
| 🌐 プロバイダー | 352 | **358** | 375 |
| 🧠 ユニークなチャットモデル ID | 1320 | **1374** | 1475 |
| 🖼️ モダリティブリッジ | 🆕 ビジョン + オーディオ + ビデオ | ✓ | ✓ |
| 📡 Radar 無料カタログ | 🆕 オプトイン | ✓ | ✓ |
| ⚖️ クォータ対応スケジューリング | 🆕 Quota-Share | ✓ | ✓ |
| 📊 クォータテレメトリー | 🆕 ライブ | ✓ | ✓ |
| 🧰 ヘッドレスモード | — | — | 🆕 `serve --headless` |
| 🛤️ LTS レールインフラ | — | — | 🆕 リリースチャネル |
| 🔎 モデルディスカバリー API | — | — | 🆕 `/v1/models/query` |
**→ [ロードマップ](ROADMAP.md) — `v3.9.0 LTS` へレールを走らせる**
## 🧩 利用可能
[](https://www.npmjs.com/package/omniroute)

[](https://hub.docker.com/r/diegosouzapw/omniroute)
[](LICENSE)


## 🆓 インストールしてプロバイダーを接続し、1つのエンドポイント経由でルーティング
```bash
# プロバイダーを接続したら、Dashboard → EndpointsからOmniRouteキーをコピーします:
curl http://localhost:20128/v1/chat/completions \
-H "Authorization: Bearer YOUR_OMNIROUTE_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"auto","messages":[{"role":"user","content":"Hello!"}]}'
```
`auto`には対象となるルートが必要です。新規インストール直後は、対象となるキーレスターゲットが存在しない場合があり、キーレスプロバイダーがサードパーティークライアントを拒否することもあります。Kiroを含む`tos: avoid`とマークされたプロバイダーは、デフォルトで自動ルーティングから除外されます。アカウントを接続しても、この設定は上書きされません。プロバイダーを選択する前に、[無料枠ガイド](docs/getting-started/FREE-TIERS-GUIDE.md)を参照してください。
📦 **Python、Node.js、PHP、cURL**向けのコピー&ペースト可能なクイックスタートスクリプト → [`examples/quickstart/`](examples/quickstart/)
# 💥 お約束
# 🤔 OmniRouteを選ぶ理由
## 🤝 オープンソースフレンドによるサポート
> **オープンソースフレンドとして参加しませんか?** これらの企業はオープンソースを支援し、OmniRouteの活動を継続するのに役立っています。そして、私たちは彼らが提供するすべてのトークンがどこに使われるかを公にしています。ご連絡ください: [diegosouza.pw@outlook.com](mailto: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は、42のフロンティアモデル(Claude、GPT-5.x、Gemini、Kimi K3、GLM、DeepSeek、Grok、MiniMax)を1つのOpenAI互換エンドポイントの背後で再販する、コストランク付けされたゲートウェイです。各リクエストを最も安価な適格プロバイダーにルーティングし、モデルメーカーの定価を超える料金を請求することはありません。
OmniRouteでのファーストクラスサポート: チャット補完、ネイティブの/v1/responsesエンドポイント、ビジョン、ツール呼び出し、および3つの画像モデル(grok-imagine、nano-banana-pro、nano-banana-2、cheaperinference/<model>としてアクセス可能)。APIキーを入手 →
|
aff=omnirouteタグ付きのリンクはパートナーリンクです。これらは追加費用なしでプロジェクトに資金を提供します。
🎟️ アフィリエイトプロモーション — スポンサーではないプロバイダーからの無料登録クーポン(クリックで展開)
このセクションは紹介/クーポンコードのみを対象としています。スポンサーシップパートナーシップは上記の🤝 オープンソースフレンドによるサポートに記載されています。OmniRouteはここに記載されているプロバイダーとのスポンサーシップやパートナーシップは一切ありません。これらは誰でも利用できる公開クーポンです。
AgentRouter agentrouter.org
|
AgentRouter — アフィリエイト登録 · 登録時に$100の無料クレジット(無料サーバー、レイテンシが高くなる可能性があります — 本番環境ではなくテストに最適)。OmniRouteではv3.8.50以降、チャット補完、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/subscription | 🎟️ すでに料金を支払っているサブスクリプションのクォータのみを使用 — フェイルクローズ方式で、課金対象のフォールバックは一切なし(ガイド) |
auto/thrifty | 🪜 まずプランのクォータを使用し、その後は最も安い従量課金オプションへ1段ずつ移行 — リセット後はプランに復帰(ガイド) |
auto/offline | 🔋 クォータ/レート制限の余裕が最も大きいものを優先 |
auto/smart | 🔭 品質優先+より優れたモデルを発見するための10%の探索 |
auto/lkgp | 📌 最後に正常だったプロバイダーを明示的に継続使用 |
auto/chaos | 🧪 複数モデルのパネル(プロバイダーごとに1つ、デフォルトでは5つ)へ並列にファンアウトし、1つの回答を返す。パネル内のモデルごとにアップストリーム呼び出しを1回実行するものであり、フォールトインジェクションではありません |
##
### 🔀 または独自に構築 — 20種類のルーティング戦略
**20種類**すべての戦略を、コンボのステップごとに自由に組み合わせられます。
| # |
戦略 |
動作 |
| 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 |
quota-weighted |
クォータを使い切ったアカウントを除外し、残りのクォータ÷処理中の負荷に比例して選択 — 既存の会話は固定を維持 ⚖️ |
| 12 |
reset-window |
クォータの期間が最も早くリセットされるターゲットを優先 |
| 13 |
reset-aware |
クォータのリセット時刻で順位付け — 短い期間を優先 📊 |
| 14 |
context-relay |
長い会話でターゲット間のコンテキストを引き継ぐ 🧠 |
| 15 |
context-optimized |
現在のコンテキストサイズに最適なターゲットを選択 |
| 16 |
cache-optimized |
再利用可能な各プロンプト接頭辞を同じアカウントに固定 — プロンプトキャッシュのヒット率を最大化 🎯 |
| 17 |
lkgp |
Last-Known-Good Path — 最後に成功したプロバイダーに固定し、その後ルールにフォールバック |
| 18 |
auto |
すべての接続を対象とした16要素のリアルタイムスコアリング 🤖 |
| 19 |
fusion |
複数モデルのパネルへファンアウトし、ジャッジが1つの回答に統合 🧬 |
| 20 |
pipeline |
ステップを連結 — 各ターゲットの出力を次のターゲットへ渡す 🔗 |
Auto-Combo エンジンは、すべての候補を **16 の要因**(ヘルス、クォータ、コスト、レイテンシ、タスク適合性、品質、セッション可用性など)で評価します — 詳細は [`docs/routing/AUTO-COMBO.md`](docs/routing/AUTO-COMBO.md) を参照してください。
##
### 🧱 レジリエンスを標準搭載(独立した 3 層)
📖 [Auto-Combo エンジン](docs/routing/AUTO-COMBO.md) · [レジリエンスガイド](docs/architecture/RESILIENCE_GUIDE.md)
## 🏆 OmniRoute が選ばれる理由
📊 評価方法の全文および9router、OpenRouter、CLIProxyAPI、LiteLLMとの機能別比較の詳細 → [`docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md`](docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md)
## 💚 OmniRoute を支援する
OmniRoute は MIT ライセンスで公開され、オープンに保守されています。時間や費用の節約に役立った場合は、独立性を維持するために、ご自分に合った方法でご支援ください。スポンサーシップがルーティングの優先順位に影響することはありません。得られるのは可視性であり、順位ではありません。
**🇧🇷 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 |
⚠️ 各コインは、表示されているネットワークでのみ送金してください。誤ったネットワークで送金すると、資金を失う可能性があります。
🐛 バグを見つけた場合やフィードバックがある場合は、[Discussion](https://github.com/diegosouzapw/OmniRoute/discussions) を作成してください。
開発者向け注記: このプロジェクトでは、開発者の利便性のため、npm install/postinstall の実行中にローカルの .env ファイルが生成される場合があります。このファイルは意図的に .gitignore 経由で無視されており(.gitignore を参照)、決してコミットしてはなりません。誤ってコミットした場合は、露出したシークレットをすべてローテーションし、履歴からそのファイルを削除してください。ローカル環境ファイルとシークレットの管理方法については、docs/DEVELOPER-ENVIRONMENT.md を参照してください。
## 📡 OmniRoute Radar
無料枠の主な目安は、上記のドキュメント化されたプール重複排除済みカタログに基づき、引き続き**月間約1.62Bトークン**です。プロバイダーの一時的なサインアップクレジットにより、初月は別途**約2.22B**まで増える可能性があります。Radarは、OmniRouteのリリース間でも無料モデルの提供状況をより最新の状態で把握したい方のための、署名付きカタログオーバーレイです。利用は任意であり、コミュニティカタログおよび既存のすべての無料機能は、引き続き無料です。
サポーターは、ライブカタログと追加のプロバイダー利用機会を受け取ることができます。この枠は独立して変動し、プロバイダーの提供状況に応じて、上限は**最大で月間約3Bトークン**です。この上限は保証されるものではありません。プロバイダーは、割り当て量、利用資格、モデル、または対象地域をいつでも変更できます。
Radarはオプトイン方式で、GETリクエストのみを使用します。OmniRouteクライアントが、プロンプト、トラフィック、プロバイダー設定、使用状況テレメトリ、またはローカルのお知らせ非表示状態をアップロードすることはありません。利用資格と現在のカタログについては、**[radar.omniroute.online/planos](https://radar.omniroute.online/planos)**をご覧ください。
## ✨ 新機能
> **v3.8.20 → v3.8.53** の最近のハイライト。完全な履歴は [`CHANGELOG.md`](CHANGELOG.md) にあります。
- **⚖️ `quota-weighted` ルーティング** — 20 番目のコンボ戦略は、枯渇したアカウントをスキップし、残りのアカウントの中から残りクォータ ÷ 実行中負荷に比例して選択します。既存の会話は固定されたままです。→ [Auto-Combo](docs/routing/AUTO-COMBO.md)
- **🧰 ヘッドレスモード** — `omniroute serve --headless`(または `OMNIROUTE_HEADLESS=1`)は `/v1/*` プロキシエンジンのみを実行し、ダッシュボードおよびダッシュボード専用のサブシステムはオフになります。→ [Headless Mode](docs/guides/HEADLESS.md)
- **🔎 モデルディスカバリ** — `/v1/models` は機能、コンテキスト、種類、テキストでフィルタリングでき、`POST /v1/models/query` は同じキーごとの可視性で短く決定論的な候補リストを返します。→ [API Reference](docs/reference/API_REFERENCE.md)
- **🔑 キーごとのルーティング制御** — `forcedModel` で API キーを 1 つのモデルまたはコンボに固定し、キーのモデルとコンボをアトミックに追加・削除できます(`/api/keys/{id}/access`)。→ [API Reference](docs/reference/API_REFERENCE.md) · [OpenAPI](docs/openapi.yaml)
- **🛡️ より細かい PII 制御** — タイプごとの選択、最大 20 個の検証済みカスタムマスキングパターン、タイプごとの検出カウンター。マスキング自体はオプトインのままです。→ [Guardrails](docs/security/GUARDRAILS.md)
- **🌍 67 言語** — ダッシュボード、ドキュメントミラー、CLI。`npm run i18n:add-locale` を使えば 1 つのコマンドで全箇所に言語を追加できます。→ [i18n Guide](docs/guides/I18N.md)
- **🎛️ OmniConductor** — インバウンドの A2A 委任をエージェントフリートへ、Agent Card 上の Conductor スキル、Faro のプッシュトゥトーク音声チャット付きダッシュボードパネル。→ [A2A Server](docs/frameworks/A2A-SERVER.md)
- **🛂 適応型アドミッション & 過負荷保護** — 重量級のチャットリクエストは 503 を返す代わりにキューに入り、接続ごとのアトミックな RPM ローリングリースを備えます。→ [Resilience Guide](docs/architecture/RESILIENCE_GUIDE.md)
- **🗂️ 正規化された `/v1/models` の順序** — プロバイダーごとに 1 つの連続したプロバイダーグループブロック(コンボは先頭に固定)で、あらゆるカタログソースにわたって安定しています。→ [API Reference](docs/reference/API_REFERENCE.md)
- **🗜️ 圧縮の強化** — デフォルトで有効なインフレガード、DE / FR / JA + 中国語(文言)向けの Caveman パック、Gradle & .NET 向けの RTK フィルター。→ [Compression](docs/compression/COMPRESSION_ENGINES.md)
- **💸 誠実な定額コスト** — サブスクリプション / コーディングプランのプロバイダーはコスト分析で **$0** と表示されます。予算、クォータ、ルーティングは引き続き見積もります。→ [API Reference](docs/reference/API_REFERENCE.md)
- **⚖️ クォータ共有ルーティング** — 共有アカウントのクォータをプールされたキー間で公平に分割し、ワークコンサビング方式でアイドルスライスを貸し出します。→ [Resilience Guide](docs/architecture/RESILIENCE_GUIDE.md)
- **🤖 ワンコマンドの CLI/エージェントセットアップ** — 15 個の登録済み `setup-*` コマンド。`omniroute run` は 7 つの CLI(Claude Code、Codex、Aider、Goose、OpenCode、Qwen Code、Gemini CLI)を起動し、`omniroute configure` はインタラクティブなプロバイダー+モデルピッカーとコンテキストごとのお気に入りを備えた 11 個のターゲットをサポートします。→ [CLI Integrations](docs/guides/CLI-INTEGRATIONS.md)
- **🛰️ リモートモード** — スコープ付きトークン(`connect` / `contexts` / `tokens`)でリモートの OmniRoute を操作し、VPS インストール向けの `antigravity` OAuth ヘルパーも用意。→ [Remote Mode](docs/guides/REMOTE-MODE.md)
- **🧭 より賢い自動ルーティング** — `auto/:` コンボ、**Fusion**(モデルパネル + ジャッジ)、タスク認識ルーティング、リクエストごとのモデル / モード / USD 予算の上書き。→ [Auto-Combo](docs/routing/AUTO-COMBO.md)
- **🗜️ プラグ可能な圧縮** — 12 個の組み合わせ可能なエンジン + Compression Studios:LLMLingua-2、2 段階 Ultra、omniglyph、ステップごとのフィデリティゲート、GCF v3.2、ドラッグ並べ替えエディター。→ [Compression](docs/compression/COMPRESSION_ENGINES.md)
- **🕵️ 透過的な MITM 復号(TPROXY)** — プロキシ環境変数を無視する CLI を捕捉し、SNI ごとの CA + トラストストアインストーラーを提供。→ [MITM/TPROXY](docs/security/MITM-TPROXY-DECRYPT.md)
- **💸 あらゆる場所でのコストテレメトリ** — すべてのエンドポイントに `X-OmniRoute-*` コスト/使用量ヘッダー、キャッシュ HIT の節約ヘッダー、キーごとの USD 支出クォータ。→ [API Reference](docs/reference/API_REFERENCE.md)
- **🧠 制御可能なメモリ** — デフォルトはオフ、オプトインの int8 ベクトル量子化 + 型付き減衰、リクエストごとの `x-omniroute-no-memory`。→ [Memory](docs/frameworks/MEMORY.md)
- **🛡️ セキュリティ** — すべての LLM ルートにプロンプトインジェクションガード(レッドチームスイート)、オプトインのクレデンシャルマスキングガードレール(双方向で漏洩した API キー/シークレットを伏字化)、無料の DuckDuckGo 最終手段ウェブ検索、ダッシュボード向けのオプションの OIDC ログインゲート(パスワードログインは常に利用可能)。→ [Guardrails](docs/security/GUARDRAILS.md)
- **🖼️ 新しいエンドポイント** — `/v1/ocr`(Mistral OCR)と `/v1/audio/translations`(Whisper スタイル)がメディア機能を締めくくります。→ [API Reference](docs/reference/API_REFERENCE.md)
- **🎨 画像 / 動画 / 音声生成** — メディア向けの単一 API:xAI Grok Imagine & Novita AI 動画、ComfyUI、Magnific、Adobe Firefly、Segmind、ElevenLabs などの音声プロバイダー。→ [API Reference](docs/reference/API_REFERENCE.md)
- **🌍 デプロイ & 運用** — リバースプロキシ `basePath`、ブラウザ言語の自動検出、キーごとのデバイス追跡、root 不要の MITM トラスト、zh-TW ローカライズ。→ [Environment](docs/reference/ENVIRONMENT.md)
- **🤝 さらなるプロバイダー & エージェント** — クラウドエージェント(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… そして刷新された **375 プロバイダーカタログ**。→ [Providers](docs/reference/PROVIDER_REFERENCE.md)
- **📡 ルーティングの透明性** — すべてのレスポンスには、それを処理した戦略/プロバイダー/レイテンシを示す `X-OmniRoute-Decision` ヘッダーが付与され、新しい `cache-optimized` コンボ戦略 + Auto-Combo の `cacheAffinity` ファクターが、キャッシュされたプレフィックスを保持する接続へ繰り返しリクエストをルーティングします。また、読み取り専用の `/v1/auto-combo/{channel}/candidates` エンドポイントが `auto/*` チャネルのライブ候補プールを公開します。→ [Auto-Combo](docs/routing/AUTO-COMBO.md)
- **⚡ ローカルパフォーマンス&インフラ** — ワンクリックのローカル Redis、Cloudflare Workers / Deno Deploy リレーデプロイヤー、監視付き組み込みサービスとしての Bifrost & Mux。 → [組み込みサービス](docs/frameworks/EMBEDDED-SERVICES.md)
- **🧩 その他の搭載機能** — プラグインフレームワーク+マーケットプレイス、Omni/Agent/GitHub スキルフレームワーク、Obsidian vault 連携(22 個の MCP ツール)、OpenAI 互換の Batch & Files API、セマンティックレスポンスキャッシュ、リーダーボード付きゲーミフィケーション、ACP エージェントディスカバリ(15 個の組み込みエージェント)、BigQuery へのスケジュール済みログエクスポート、`auto/chaos` 並列マルチモデルファンアウト、Telegram ボットブリッジ、アプリ内バージョンマネージャー、LMArena-ELO による無料プロバイダーランキング。 → [ドキュメント](docs/README.md)
## 🤖 対応CLI & コーディングエージェント
> 設定は1つだけ — `http://localhost:20128/v1` — これで**あらゆる**AI IDEやCLIを、無料または低コストのモデルで実行できます。
+ 以下にも対応 · Agent Deck · Kiro · Command Code · Antigravity · Windsurf · AMP · あらゆるOpenAI互換ツール
📖 全37ツール(27個のCLIコードツール + 10個のCLIエージェント)のツール別セットアップ → [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) · 🧩 OpenCodeプラグイン → [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)
**サポートされている任意のCLIを、1つのコマンドでOmniRoute経由で起動** — 設定ファイルは書き込まず、
認証情報はプロセスごとに注入され、Qwen/Geminiには使い捨ての隔離されたホームが割り当てられます:
```bash
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"
# または、プロバイダーとモデルを対話形式で選択し、ツール独自の設定を書き込みます:
omniroute configure codex # 次も利用可能:claude opencode qwen aider goose gemini cline continue kilo 5dive
```
すべてのコマンドは、アクティブなリモートコンテキスト(`omniroute connect `)に従います。`--dry-run`では、
実行せずに正確な環境変数と引数をプレビューでき、`--api-key-env NAME`を使用するとシークレットを
シェル履歴に残さずに済みます。→ [CLI統合](docs/guides/CLI-INTEGRATIONS.md)
## 🌐 375のAIプロバイダー — 153がカタログ上で無料指定
> **375の登録プロバイダー**が、標準のチャット、メディア、検索、ローカル、クラウドエージェント、システムの各コレクションにまたがって存在し、そのうち**153が`hasFree: true`というディスカバリーメタデータを持っています**。チャットモデルレジストリは**239プロバイダー / 3,059の個別プロバイダー-モデルペア / 1,475の生モデルID**をカバーしています。一方、別体系の無料枠カタログには**467のモデル別行**、**34の繰り返しプール**、**51の繰り返し/キー不要の永久無料プロバイダー**があります。これらは設計上異なる分母です。定義とプール重複排除後の計算については、[プロバイダーリファレンス](docs/reference/PROVIDER_REFERENCE.md)と[無料枠](docs/reference/FREE_TIERS.md)を参照してください。
## 🖥️ OmniRoute の実行環境 — どこでも
> 同じアプリを、あなたのマシンで、あなたのルールに従って。グローバル npm インストールから、Termux を介した **あなたのスマートフォン** まで。
| プラットフォーム | インストール | 特長 |
| 📦 npm(グローバル) | npm install -g omniroute | 1つのコマンドで、あらゆる 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 | スマートフォン上で年中無休で動作、root 不要 |
| 📲 PWA | 「ホーム画面に追加」 | 全画面表示、オフライン対応、ブラウザからインストール可能 |
| 🧩 OpenCode プラグイン | @omniroute/opencode-provider | OpenCode ネイティブ統合 |
| 🤖 VS Code Copilot Chat | OmniCopilot 拡張機能をインストール | OmniRoute のすべてのモデルをネイティブ Copilot Chat ピッカーで利用可能 — 安定版と Insiders に対応 |
| 🛠️ ソースから | npm install && npm run dev | カスタマイズやコントリビューションに |
📖 [Docker ガイド](docs/guides/DOCKER_GUIDE.md) · [デスクトップ](electron/README.md) · [メニューバートレイ](https://github.com/zoispag/omniroute-tray) · [Termux](docs/guides/TERMUX_GUIDE.md) · [PWA](docs/guides/PWA_GUIDE.md) · [OpenCode](docs/frameworks/OPENCODE.md)
### 🧩 新機能:VS Code のネイティブ Copilot Chat 内で OmniRoute を利用
> 新しいサイドバーも、新しいチャット UI も不要です。OmniRoute が提供するすべてのモデルが、
> **使い慣れた Copilot Chat のモデルピッカー**に直接表示されます。VS Code 1.122 以降では、プロバイダーモデルを
> GitHub へのサインインや Copilot サブスクリプションなしで利用できます。エージェントモード、ツール呼び出し、ビジョン機能も
> 無料です。
**[OmniCopilot](https://github.com/diegosouzapw/OmniCopilot)** 拡張機能をインストールし、OmniRoute サーバー(デフォルトは `localhost:20128`)を
指定してから、Copilot Chat → モデルピッカー
→ **モデルの管理…** → **OmniRoute** を開きます。
| ストア | リンク | 対応環境 |
| 🧩 VS Code Marketplace | インストール → | VS Code — 安定版と Insiders |
| 🔓 Open VSX Registry | インストール → | Cursor、Windsurf、VSCodium、Theia、code-server、Gitpod、Antigravity、Kiro… |
エディター内から行う場合:**拡張機能**ビューを開き、**「OmniRoute」**を検索して、**インストール**をクリックします
— どちらのストアでも同じように動作します。ソース、Issue、公開手順書は
[diegosouzapw/OmniCopilot](https://github.com/diegosouzapw/OmniCopilot) にあります。
📖 [VS Code Copilot Chat ガイド](docs/guides/VSCODE-COPILOT.md) — セットアップ、ピッカーの表示内容、タブ内ダッシュボード、トラブルシューティング
### 🎩 新機能:OmniRouteTray — メニューバーに常駐する、あなた専用のゲートウェイ
> `omniroute serve` は常時稼働させるのが最適です。**[OmniRouteTray](https://github.com/zoispag/omniroute-tray)** は、
> それを一度設定すれば後は任せられる macOS 用メニューバーアプリに変えます。サーバーを起動して稼働状態を維持し、
> 再起動後も自動で復帰させ、その場で更新を行い、使用中のトークン予算をワンクリックで確認できます。**ターミナルウィンドウを
> 開いたままにする必要も、`npm install -g omniroute` の面倒を見る必要もありません。**
[Tauri v2](https://v2.tauri.app/)(誤差と言えるほど小さな Rust コア)で構築されており、
署名済みの Node 24 ランタイムを同梱し、アプリ専用の OmniRoute インストールを管理するため、グローバルの
`node`/`bun` と競合することはありません。**既存の `~/.omniroute/` 設定とデータベースを共有**するため、
いつも実行しているものと同じ OmniRoute に、帽子をかぶせただけです。🎩
| 機能 | 仕組み |
| 🟢 サーバーを監視 | omniroute serve を起動し、すでに実行中のインスタンスがある場合は、重複して起動せずにそれを引き継ぎます |
| 📊 使用状況をひと目で確認 | プロバイダーのクォータバー、リセットまでのカウントダウン付き Claude セッション/週間上限、30日間のコスト内訳 |
| 🔄 その場で自動更新 | 段階的インストール、アトミックな切り替え、失敗時のロールバックにより、常に最新リリースを維持 |
| 🚀 ログイン時に起動 | 任意でログイン時に起動可能。トレイのみに常駐し、Dock アイコンは表示されません |
| 🩺 診断とログ | ワンクリックで診断を実行し、サーバーログにアクセス |
```sh
brew install --cask zoispag/tap/omniroute-tray
```
ダウンロードをご希望ですか?最新の.dmgは
Releasesから入手できます。ソースコード、Issue、ビルド
ドキュメントはzoispag/omniroute-trayにあります。
💛 @zoispagによるコミュニティプロジェクトです。OmniRouteの公式リリースではありません。
## 🔒 プライベート&ローカルファースト
📖 [認可](docs/architecture/AUTHZ_GUIDE.md) · [ガードレール](docs/security/GUARDRAILS.md) · [コンプライアンス](docs/security/COMPLIANCE.md)
## 🔌 完全な CLI + A2A & MCP
> サーバーだけではありません。OmniRoute は **80 以上のコマンド**を備えた**本格的なコマンドライン・コックピット**であり、オープンなエージェントプロトコルにより、AI エージェントが**自律的に**操作できます。
### ⌨️ 本格的な CLI(単なる `start` ではありません)
```bash
omniroute # ゲートウェイ + ダッシュボードを起動(ポート 20128)
omniroute chat # 対話型 TUI チャットクライアント(スラッシュコマンド: /model /combo /skill /memory)
omniroute setup # ガイド付き初回セットアップウィザード
omniroute doctor # プロバイダー、ポート、ネイティブ依存関係を診断
```
### 🛰️ リモートモード — CLI はここで、OmniRoute は VPS 上で実行
OmniRoute をサーバー上で運用していますか?**同じ CLI** を使ってノート PC から操作できます。スコープ付きアクセストークンで一度ログインすれば、
以降のすべてのコマンドはリモートを対象に実行されます。
```bash
omniroute connect 192.168.0.15 # パスワード → スコープ付きトークン。コンテキストとして保存
omniroute models # ← リモートサーバーに対して実行
omniroute configure codex # ← リモートモデルを選択し、ローカルの Codex プロファイルに書き込み
omniroute tokens create --name ci --scope read # 他のマシン向けに、より限定的なトークンを発行
omniroute contexts use default # ← ローカルサーバーに切り替え
```
トークンのスコープは `read` / `write` / `admin`。プロセスを起動するルートはループバックからのみアクセスできます。
📖 [リモートモード](docs/guides/REMOTE-MODE.md)
### 🤝 エージェントを接続すれば、OmniRoute 自体を操作できます
**MCP**、**A2A**、**REST API**、**webhooks**、または**リモート 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 |
| 🔔 Webhooks | /api/webhooks | リクエスト / クォータイベントを Slack、Discord、Telegram、または任意の URL にプッシュ |
| 🛰️ リモート CLI | omniroute connect | スコープ付きアクセストークンを使用してリモートインスタンスを操作 |
```bash
# MCP 経由で Claude Code に OmniRoute の全ツールセットを提供:
claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream
```
📖 [MCP サーバー](docs/frameworks/MCP-SERVER.md) · [A2A サーバー](docs/frameworks/A2A-SERVER.md) · [エージェントプロトコル](docs/frameworks/AGENT_PROTOCOLS_GUIDE.md)
## 🗜️ トークンを15〜95%削減 — 自動で
### 📖 仕組み — パイプライン、アーキテクチャ、削減率の計算
デフォルトのスタック組み合わせは `RTK → Caveman` を実行します。両方が同じツール/コンテキストのペイロードに作用する場合、削減率は複合します:
```txt
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](https://github.com/rtk-ai/rtk)、[Caveman](https://github.com/JuliusBrussee/caveman)(⭐ 90K+)、[LLMLingua-2](https://github.com/microsoft/LLMLingua)、[Troglodita](https://github.com/leninejunior/troglodita)(PT-BR)のアイデアを基にしています。
### 🧱 12エンジンのスタック
エンジンはパイプラインの順序で実行され、それぞれを個別に有効化・設定でき、組み合わせごとに構成できます:
| # | エンジン | 機能 |
| 1 | Session-Dedup | ターンをまたいで繰り返されるコンテンツを削除(コンテンツアドレス方式、クロスターン) |
| 2 | CCR | 大きなブロックを取得マーカーの背後にアーカイブし、オンデマンドで取得 |
| 3 | Lite | 空白 + 画像URLのトリミング(低レイテンシのベースライン) |
| 4 | RTK | スマートなツール結果のフィルタリング、重複排除、切り詰め(コマンド対応) |
| 5 | Responses Tool Output | shell/patch/search/buildの出力に対する、ロスレス優先の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のtransformersはプロバイダのレシート待ちのためfail-closedのまま。4つの圧縮プロファイル(デフォルトはaggressive、balanced、coding-safe、passthrough)(最もアグレッシブ、オプトイン) |
コードブロック、URL、構造化データは**常に**バイト単位で完全に保持されます。**ワンクリックプリセット**でエンジンを組み合わせられます:
| モード | 削減率 | 最適な用途 |
| 🪶 Lite | ~15% | 常時オンで安全なデフォルト |
| 🪨 Standard (Caveman) | ~30% | 日常のコーディング |
| ⚡ Aggressive | ~50% | ツールを多用する長時間セッション |
| 🔥 Ultra | ~75% | 最大の削減 |
| 🧰 RTK | 60–90% | shell/test/build/gitの出力 |
| 🔗 Stacked (RTK → Caveman) | 78–95% | 混在したプロンプト + ツールログ |
**実際の例 — スタンダードモード:**
> **変更前(69トークン):** _「Reactコンポーネントが再レンダリングされる理由は、おそらくレンダリングサイクルごとに新しいオブジェクト参照を作成しているためです。インラインオブジェクトをプロップとして渡すと、Reactの浅い比較では毎回異なるオブジェクトと見なされ、再レンダリングが発生します。オブジェクトをメモ化するにはuseMemoの使用をおすすめします。」_
>
> **変更後(19トークン):** _「レンダリングごとに新しいオブジェクト参照。インラインオブジェクトプロップ = 新しい参照 = 再レンダリング。useMemoでラップする。」_
>
> **同じ答え。トークンは72%削減。精度の低下はゼロ。** ✅
**PT-BRの例 — [Troglodita](https://github.com/leninejunior/troglodita) モード:**
> **変更前 (42 トークン):** _"問題は、レンダリングサイクルごとに新しいオブジェクト参照が生成されるため、コンポーネントが再レンダリングされていることです。useMemo を使うことをお勧めします。"_
>
> **変更後 (12 トークン):** _"再レンダリング: サイクルごとに新しい参照(インラインオブジェクトが再生成)。`useMemo` を使用。"_
>
> **同じ回答。トークン約70%削減。技術的な正確性は維持。** ✅
### 🎚️ エンジンの先へ — 出力スタイル、アダプティブダイヤル、リクエスト単位の制御
上記の12のエンジンは**入力**を削減します。さらに3つのレイヤーが**どのように**、**いつ**、そして**何が出力されるか**を形作ります:
- **🪄 出力スタイル** _(出力軸の制御)_ — 決定論的でキャッシュに安全な応答整形指示を注入します。組み合わせ可能で、それぞれ `lite` / `full` / `ultra` の強度を持ちます。スタイルの追加はレジストリへの1行追加で済みます:
- **簡潔な文章** — 冗長な表現 / 冠詞 / 曖昧な表現を削除し、技術的な内容は正確に保ちます。
- **コードを減らす** — 「怠惰なシニア開発者」的 YAGNI: 動作する最小の変更、要求されていない足場作りはしない。
- **ポニーテール(怠惰なシニア開発者)** — YAGNI のはしごを登り、根本原因を修正し、動作する最小の差分にする。
- **ADHD があります(アクション優先)** — 次のアクションを先頭に、手順は番号付き、具体的な次の一手を1つ、前置きなし。
- **簡潔な CJK(文言)** — 漢文調の超簡潔スタイル(ロケールが `zh` に限定)。
- **🎯 アダプティブ・コンテキストバジェット** _(ダイヤル)_ — 単一のオン/オフのトークンしきい値ではなく、**モデルのコンテキストウィンドウに収める**ために必要な分だけ、最も安価で最も損失の少ないエンジンを段階的に適用します。ポリシー: `reserve-output`(デフォルト、モデル対応)· `percentage` · `absolute`。モード: `floor`(収まることを保証)· `replace-autotrigger`(明示的な選択を優先)· `off`(従来のしきい値)。
- **🎛️ 圧縮が決定される場所** _(優先順位、高 → 低)_ — リクエスト単位の `x-omniroute-compression` ヘッダー › ルーティングコンボのオーバーライド › アクティブな名前付きプロファイル › アダプティブ / 自動トリガー › パネルのデフォルト › オフ。適用されたプランは `X-OmniRoute-Compression: ; source=` レスポンスヘッダーで返されます。
トークンしきい値による自動トリガー、アダプティブダイヤルの有効化、名前付きプロファイルの固定、リクエスト単位の一回限りの設定、ルーティングコンボごとのパイプライン割り当て — ワークロードに合うものを選べます。オプトインのオフライン **eval harness**(`npm run eval:compression`)は、変更を昇格する前に、固定コーパス上で忠実度と削減量をスコアリングします。
📖 [`COMPRESSION_GUIDE.md`](docs/compression/COMPRESSION_GUIDE.md) · [`RTK_COMPRESSION.md`](docs/compression/RTK_COMPRESSION.md) · [`COMPRESSION_ENGINES.md`](docs/compression/COMPRESSION_ENGINES.md)
# ⚡ クイックスタート
**1) インストールして実行**
```bash
npm install -g omniroute
omniroute
```
> 💡 `npm warn ERESOLVE` や peer-dep の警告が出ますか?[それらは無害です](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated)。
> **npm 11 以降を使用していますか?** npm はパッケージのライフサイクルスクリプトが許可されていない場合、それをブロックすることがあります。OmniRoute の `postinstall`(`node scripts/build/postinstall.mjs`)は、ネイティブランタイムファイルを準備するために必要です。グローバルにインストールする際は、npm の警告で示されたパッケージを許可してください。OmniRoute 3.8.53 で報告されたパッケージセットは次のとおりです:
>
> ```bash
> npm install -g --allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild omniroute
> ```
>
> この許可リストを今後のグローバルインストールで再利用するには、一度設定してから通常どおりインストールします:
>
> ```bash
> npm config set allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild --location=user
> npm install -g omniroute
> ```
>
> 依存関係のリストはリリース間で変わる可能性があります。npm が異なるリストを報告した場合は、その警告のパッケージ名を使用してください。パッケージを許可すると、そのインストールスクリプトの実行が許可されます。
> **Gemini Web や他の Web クッキープロバイダーを使用していますか?** npm パッケージには
> Playwright は含まれますが、その Chromium バイナリは含まれません。最初の
> Web プロバイダーリクエストを行う前に、
> [Playwright Chromium のセットアップ](docs/guides/TROUBLESHOOTING.md#gemini-web-and-playwright-chromium)
> の注記を参照してください。
ダッシュボードは `http://localhost:20128`、API は `http://localhost:20128/v1` です。
**2) 自身のアカウントで対象プロバイダーに接続**
ダッシュボード → **Providers** → 現在の利用規約とクォータがユースケースに合うプロバイダーを選択 → API キーを追加するかアカウントフローを完了します。無料枠ではサインアップ、承認、または支払い方法が必要な場合があります。[Free Tiers Guide](docs/getting-started/FREE-TIERS-GUIDE.md) を確認してください。キーなしでの利用可否は保証されず、`tos: avoid` とマークされたプロバイダーはデフォルトで `auto` から除外されます。
**3) コーディングツールを向ける**
```txt
Base URL: http://localhost:20128/v1
API Key: [copy from Dashboard → Endpoints]
Model: auto (適格な接続の中からルーティング — または provider/model を選択)
```
**4) 動作を確認**
```bash
curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY"
```
接続済みのモデルが一覧表示されるはずです。🎉 以上です — コーディングを始めれば、OmniRoute が自動ルーティングとフォールバックを行います。
クライアントがカスタムヘッダーを送信できない場合、OmniRoute はトークン化された互換エイリアスも提供します:
```txt
OpenAI catalog: http://localhost:20128/vscode/YOUR_KEY/
OpenAI models: http://localhost:20128/vscode/YOUR_KEY/models
OpenAI chat: http://localhost:20128/vscode/YOUR_KEY/chat/completions
OpenAI responses: http://localhost:20128/vscode/YOUR_KEY/responses
Ollama chat: http://localhost:20128/vscode/YOUR_KEY/api/chat
Ollama tags: http://localhost:20128/vscode/YOUR_KEY/api/tags
```
これらは `Authorization: Bearer ...` を付与できないクライアントにのみ使用してください。ヘッダー認証が引き続き推奨される方法です。
## 📦 その他のインストール方法 — Docker、ソース、pnpm、Arch
**🐳 Docker**
```bash
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 リリースチャンネル](docs/guides/DOCKER_GUIDE.md#release-channels)を参照してください。このイメージでは **`OMNIROUTE_MEMORY_MB=1024`** に固定されています。これはダッシュボードと軽量なチャットには十分です。**コーディングエージェント**(Claude Code、Codex、Grok などからの `POST /v1/responses`)には、はるかに大きな V8 ヒープが必要です。そうでない場合、2 つの長いコンテキストが重複すると約 12 GiB でプロセスが `FATAL ERROR` になります。ネイティブバッファは V8 の外部に配置されるため、コンテナのサイズはヒープより大きく設定してください。
| ワークロード | ヒープ(`-e OMNIROUTE_MEMORY_MB`) | コンテナ(`--memory`) |
| ------------------------------------------ | ---------------------------------- | ---------------------- |
| ダッシュボード/軽量なチャット | `1024`(イメージのデフォルト) | ≥2 g |
| 1 つのコーディングエージェント | `8192` | ≥10 g |
| 2 つの長時間実行される同時 `/v1/responses` | `10240`–`12288` | ≥12–16 g |
```bash
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](docs/guides/DOCKER_GUIDE.md#runtime-ram-for-coding-agents)。
> **プレリリース Docker チャンネル:** `diegosouzapw/omniroute:next` と
> `diegosouzapw/omniroute:next-web` は、現在のデフォルトの `release/v*`
> ブランチを追跡します。これらの可変タグは、未リリースの修正をテストする目的にのみ使用するものであり、
> **本番環境ではサポートされません**。詳しくは
> [Docker リリースチャンネル](docs/guides/DOCKER_GUIDE.md#release-channels)を参照してください。
**🥟 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 を使用し、`OMNIROUTE_USE_TURBOPACK=0` を指定すると Webpack でビルドします(`Dockerfile.bun` では `--build-arg` として公開されています)。
- **専用の Bun Dockerfile**:ネイティブ Bun 本番デプロイ用のマルチステージ `Dockerfile.bun`(`docker build -f Dockerfile.bun -t omniroute:bun .`)。
```bash
# Bun でインストールして実行
bun install
bun run dev
```
**🛠️ ソースから**
```bash
cp .env.example .env && npm install
PORT=20128 npm run dev
```
**📦 pnpm**
```bash
pnpm add -g omniroute@latest --allow-build=better-sqlite3 --allow-build=@swc/core && omniroute
```
**🐧 Arch Linux(AUR)**
```bash
yay -S omniroute-bin && systemctl --user enable --now omniroute.service
```
**🔧 Nix(Flake)**
```bash
# Nix flakes を使用
nix develop
npm run dev
# または devbox を使用
devbox run npm run dev
```
📖 [Docker ガイド](docs/guides/DOCKER_GUIDE.md) — Compose プロファイル、Caddy HTTPS、Cloudflare トンネル。
**🦭 Podman**
```bash
# 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` を省略し、
[トポロジー別のデータディレクトリに関するガイダンス](contrib/podman/README.md#data-directory-permissions-by-topology)に従ってください。
📖 [Podman ガイド](contrib/podman/README.md) — Compose ビルド、Podman Machine、および
Linux/systemd Quadlet のセットアップ。
**⚡ より高速/軽量なインストール(ネイティブビルドを省略)**
ネイティブ SQLite エンジン(`better-sqlite3`)は**オプション**の依存関係であるため、グローバル
インストールがソースからのコンパイルでブロックされることはありません。プラットフォーム/Node に適合する
ビルド済みバイナリがある場合はそれを使用し、ない場合は透過的に純粋な JS エンジン
(Node 22+ では `node:sqlite`、それ以外では同梱の `sql.js` WASM)にフォールバックします。ビルドツールは不要です。
インストール後のネイティブウォームアップを完全に省略するには(CI、ヘッドレス環境、または低速なマシン):
```bash
OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # CI=1 でも省略されます
```
最速でインストールするには、**pnpm**(コンテンツアドレス方式のストア + ハードリンク — 上記参照)を推奨します。
ダッシュボードを使用しないヘッドレスランタイムには、Docker の `base` プロファイル(上記)または
[Termux ガイド](docs/guides/TERMUX_GUIDE.md)を使用してください。CLI と Web ダッシュボードは同じプロセスから
1 つのポートで提供されるため、現時点では CLI 専用パッケージはありません。
# 🎬 OmniRoute の動作デモ
## 📹 動画ガイド
2026-10-18 時点のダッシュボードのスナップショット · 未加工カタログ: YT 1.352 | TT 334 | IG 290 · 鮮度(日数): YT 5 | TT 48 | IG 49
🎬 #1 — Instagram
nick_saraev — 3,042,474 回視聴
|
🎬 #2 — Instagram
nnapier7 — 1,454,535 回視聴
|
🎬 #3 — YouTube
Amidia AI & Tech — 794,974 回視聴
|
🎬 #4 — Instagram
theopenstack — 692,419 回視聴
|
🎬 #5 — TikTok
migue.baena — 685,788 回視聴
|
**総合ランキング(重複を除外した正規 URL、`v > 0`、リーチの多い順):**
| #1 | #2 | #3 | #4 | #5 |
| -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| [nick_saraev — Instagram](https://www.instagram.com/reel/Da8ZthUPK98/) — **3,042,474** | [nnapier7 — Instagram](https://www.instagram.com/reel/Dbp7wv_CIO0/) — **1,454,535** | [Amidia AI & Tech — YouTube](https://www.youtube.com/watch?v=NJ0TQ-pyMDY) — **794,974** | [theopenstack — Instagram](https://www.instagram.com/reel/DaSs65mMrHk/) — **692,419** | [migue.baena — TikTok](https://www.tiktok.com/@migue.baena/video/7670919268216622358) — **685,788** |
| #6 | #7 | #8 | #9 | #10 |
| ------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
| [milesreevesai — TikTok](https://www.tiktok.com/@milesreevesai/video/7667980059189366019) — **620,400** | [nikothetech — TikTok](https://www.tiktok.com/@nikothetech/video/7671890769665477918) — **610,803** | [Vaibhav Sisinty — YouTube](https://www.youtube.com/watch?v=QucgvbO5gsM) — **509,281** | [buildwithai.club — Instagram](https://www.instagram.com/reel/DbIt9AjK7-U/) — **347,652** | [nivedan.ai — Instagram](https://www.instagram.com/reel/DbIrCksJiqq/) — **331,973** |
2026-10-18 時点の正規指標: **1.976 件のユニーク動画** · **20.220.289 回の既知の視聴数**(`v > 0`)· **ネットワーク別のチャンネル/プロフィール数 1.210 件**。未加工のダッシュボードには 1.976 行(YouTube 1.352 = 長尺動画 740 + Shorts 612 · TikTok 334 · Instagram 290)が含まれています。正規 URL による正規化後、重複は残っておらず、動画ごとに最大の視聴回数が保持されています。YouTube のデータ収集は 2026-10-13 以降停止しており(14/10~18/10 に API クォータを使い切ったため)、TikTok/Instagram は 2026-09-02 以降停止しています(収集クレジットがないため)。76 件の動画には、まだ視聴回数がありません。
> 🎬 **OmniRoute についての動画を作成しましたか?** リンクを添えて [issue](https://github.com/diegosouzapw/OmniRoute/issues/new) または [discussion](https://github.com/diegosouzapw/OmniRoute/discussions) を作成してください。こちらで紹介します。
# 📧 コミュニティとヘルプ
> すべてを一か所にまとめています — メンテナーをフォローしたり、コミュニティとチャットしたり、issue を作成したりできます。
| チャンネル | 場所 / 方法 |
| ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| 💼 **LinkedIn** — メンテナーをフォロー | [linkedin.com/in/diegosouzapw](https://www.linkedin.com/in/diegosouzapw/) |
| 🐙 **GitHub** — リリース情報やヒントをフォロー | [@diegosouzapw](https://github.com/diegosouzapw) |
| 💬 **Discord** | [discord.gg/U47eFqAXCn](https://discord.gg/U47eFqAXCn) |
| ✈️ **Telegram** | [t.me/omnirouteOficial](https://t.me/omnirouteOficial) |
| 🟢 **WhatsApp — 🌍 グローバル** | [グループに参加](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) |
| 🟢 **WhatsApp — 🇧🇷 ブラジル** | [グループに参加](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) |
| 🌍 **ウェブサイト** | [omniroute.online](https://omniroute.online) |
| 🌍 **🌍StHub OmniRoute コミュニティ(無料)** | [StHubポータル](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK) |
| 📦 **ソースコード** | [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute) |
| 🐛 **バグを報告** | [Issueを作成](https://github.com/diegosouzapw/OmniRoute/issues) — `npm run system-info` の出力を添付してください |
| 🤝 **コントリビュート** | [CONTRIBUTING.md](CONTRIBUTING.md) · [ブランチおよびリリースモデル](docs/ops/BRANCHING_MODEL.md) · `good first issue` を選択 |
| 💚 **プロジェクトを支援** | [支援方法 ↑](#-support-omniroute) · [GitHub Sponsors](https://github.com/sponsors/diegosouzapw) |
---
## 🛠️ 技術スタック
| レイヤー | 技術 |
| ランタイム | 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レガシー)— 147個のドメインモジュール、209個のマイグレーション |
| メモリ | SQLite FTS5 全文検索 + int8量子化ベクトル埋め込み、型付き減衰 |
| スキーマ | Zod 4 — MCPツールのI/O検証 + APIコントラクト |
| プロトコル | MCP(stdio / HTTP / SSE)+ A2A v0.3(JSON-RPC 2.0 + SSE) |
| ストリーミング | Server-Sent Events(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段階プロキシ |
| 耐障害性 | サーキットブレーカー、指数バックオフ、サンダリングハード対策、auto-comboの自己修復 |
| ログ | pino — リクエストコンテキスト付きの構造化JSONログ |
| テスト | Node.jsテストランナー + Vitest — 7,800以上の追跡テストファイルにわたる56,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 のツール別セットアップ |
| リモートモード | スコープ付きアクセストークンを使用して、ノート PC の CLI からリモート OmniRoute(VPS)を操作 |
| Claude Code 設定 | launch とモデル別プロファイルを使用して、Claude Code を OmniRoute(ローカル/リモート)に接続 |
| クイックスタート | 3 ステップ:インストール → 接続 → 設定 |
### 🔧 運用とデプロイ
### 🧠 機能とアーキテクチャ
| ドキュメント | 説明 |
| アーキテクチャ | システムアーキテクチャ、データフロー、内部構造 |
| 圧縮ガイド | 7 オプションのパイプライン:オフ/軽量/標準/強力/超強力/RTK/スタック |
| RTK 圧縮 | コマンド出力の圧縮、フィルター、信頼、検証、生出力の復元 |
| 圧縮エンジン | Caveman、RTK、スタックパイプライン、ダッシュボード/API/MCP インターフェース |
| 圧縮ルール形式 | Caveman および RTK フィルター用の JSON ルールパックスキーマ |
| 圧縮言語パック | 言語検出と Caveman ルールパックの作成 |
| 耐障害性ガイド | サーキットブレーカー、クールダウン、キュー、サンダリングハード対策、TLS スプーフィング |
| 自動コンボエンジン | 16 要素のスコアリング、モードパック、自己修復 |
| プロキシガイド | 3 レベルのプロキシシステム、1proxy マーケットプレイス、レジストリ CRUD |
| 無料枠 | 統合ディレクトリ:文書化された 34 の定期プール/カタログ化された 467 件の無料枠エントリ |
| 機能ギャラリー | スクリーンショットで見るダッシュボードツアー |
| コードベースドキュメント | 初心者向けのコードベース解説 |
### 🤖 プロトコルと API
### 📋 プロジェクトと品質
# ⭐ トップコントリビューター
> OmniRoute は、情熱的なオープンソースコミュニティによって形作られています。以下の方々は、プロジェクトの品質、安定性、普及に直接影響を与える多大な貢献をされています。**ありがとうございます。**
### マージされたプルリクエスト数による外部コントリビューター
| 順位 | コントリビューター | マージ済み PR 数 | 変更行数(概算) |
| 1 | maxmad64bis | 371 | 25,326,561 |
| 2 | HouMinXi | 269 | 13,456,272 |
| 3 | backryun | 210 | 270,562 |
| 4 | oyi77 | 190 | 411,243 |
| 5 | pacocartones | 174 | 78,276 |
| 6 | JxnLexn | 151 | 3,562,936 |
| 6 | KooshaPari | 151 | 5,972,314 |
| 8 | rdself | 145 | 80,663 |
| 9 | RaviTharuma | 123 | 500,065 |
| 10 | herjarsa | 88 | 230,872 |
| 11 | hartmark | 84 | 2,849,554 |
| 12 | jonlwheat2-gif | 67 | 68,548 |
| 13 | artickc | 62 | 43,502 |
| 14 | chirag127 | 52 | 6,661 |
| 15 | xz-dev | 50 | 245,976 |
| 16 | xiaoyaner0201 | 47 | 33,626 |
| 17 | woodsonl | 46 | 809,391 |
| 18 | rqzbeh | 44 | 147,896 |
| 19 | QuangBlue | 43 | 13,112 |
| 20 | MumuTW | 40 | 26,093 |
集計は 2026-10-18 15:09:09 UTC に、稼働中の release/v3.8.52 の先端 656f01cb43 を使用して実施しました。ページネーションされた GitHub GraphQL の集計には、マージ済み PR が 9,191 件含まれています。その内訳は、リポジトリ所有者によるものが 3,834 件、Dependabot によるものが 229 件、その他のボット/アプリによるものが 6 件、そして異なる 835 名のコントリビューターによる外部 PR が 5,122 件です。「変更行数」は GitHub の追加行数と削除行数の合計であり、生成ファイル、ロックファイル、カタログ、翻訳、ドキュメントを含みます。これは変更量であり、作成されたソースコード行数ではありません。49 件の PR では、GitHub 上の差分が 500,000 行を超えています(たとえば #13399 は単一のプロバイダー追加ですが、変更ファイル数は 2,347 と表示されます)。このため、上記の一部の合計値が大きく膨らんでいます。同数の場合は同順位です。
### GitHub によって帰属されたコミット
2026-10-18 14:44:45 UTC に再確認: デフォルトブランチ release/v3.8.52 について、リポジトリの Contributors API が報告した GitHub 帰属コミット。API は 849 の ID(ユーザー 429、ボット 2、匿名 418)を返しました。この表はメンテナー、ボット、匿名の ID を除外し、同率の順位は保持しています。上記のマージ済み PR ランキングとも、下記の Git メタデータ調査とも異なるものです。
> 🙏 これらのコントリビューターによる機能、バグ修正、インフラストラクチャの改善は、OmniRoute を信頼性が高く機能豊富なものにするための**中核的な部分**です。すべてのプルリクエスト、すべてのテストケース、すべての i18n 翻訳ファイルが重要です。オープンソースは、彼らのような人々によって築かれています。
---
## 💖 スポンサー
私費で OmniRoute を支援してくださっている皆さまに、心より感謝いたします。皆さまからのご支援の一つひとつが、このプロジェクトを無料かつ独立した形で継続し、前進させる力になっています。
…そして、匿名を希望されるその他の皆さまにも感謝いたします 💛
公開されている GitHub Sponsors の情報は、GitHub Sponsors GraphQL API を通じて 2026-10-18 に再検証済みです。合計 14 件のうち、公開スポンサーシップは 11 件(現在 6 件、過去 5 件)です。上記の現在のスポンサー区分は、GitHub の isActive ステータスに基づいています。過去に公開で単発支援してくださった方々も引き続き感謝の対象として掲載し、非公開スポンサーの方々は匿名のままとしています。Ko-fi、Buy Me a Coffee、Liberapay、PIX、および暗号資産による寄付は、公開スポンサー記録がないため掲載していません。
💖 スポンサーになる → — 皆さまからのご支援の一つひとつが、OmniRoute を無料かつ独立したプロジェクトとして維持する力になります。
## 👥 900人以上のコントリビューター
[](https://github.com/diegosouzapw/OmniRoute/graphs/contributors)
2026-10-18に、稼働中のrelease/v3.8.52の先端ad160ab2d1(6,826コミット)を監査:正規化された人間のGit IDは993件 — 707件はコミット作成者(メンテナーを含む)として確認され、286件は明示的なCo-authored-byトレーラーにのみ記載されています。この集計では.mailmapを適用し、メールアドレスを大文字・小文字を区別せずに比較し、数値形式と通常形式のGitHub noreplyアドレスは同じハンドルを表している場合にのみ統合しています。また、26件のボット/エージェント/サービス/プレースホルダーIDを除外し、表示名が一致するという理由だけで通常のメールアドレスを統合することはありません。2026-08-24の監査では639件と公表されましたが、この監査のベースであるac02c5b42fに対して同じ手法を再実行すると619件となるため、この増加は手法を緩和した結果ではなく、新しいコントリビューターによるものです。
### コントリビューション方法
1. リポジトリをフォークします
2. `main`ではなく、**アクティブな**`release/vX.Y.Z`の先端からブランチを作成します — [ブランチおよびリリースモデル](docs/ops/BRANCHING_MODEL.md)を参照してください
3. 機能ブランチを作成します(`git checkout -b feat/amazing-feature`)
4. 変更をコミットします(`git commit -m 'feat: add amazing feature'`)
5. ブランチにプッシュします(`git push origin feat/amazing-feature`)
6. **ベース = その`release/vX.Y.Z`ブランチ**としてPull Requestを作成します
詳細なガイドラインについては、[CONTRIBUTING.md](CONTRIBUTING.md)を参照してください。
### 新しいバージョンのリリース
```bash
# リリースを作成 — npm publishは自動的に実行されます
VERSION=x.y.z
gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes
```
## 📊 スター
## 🌍 StarMapper
## 🙏 謝辞
OmniRoute は巨人たちの肩の上に立っています。**[9router](https://github.com/decolua/9router)** のフォーク、および Go プロジェクト **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** の TypeScript 移植版として始まり、その後、以下の各サブシステムは、先駆けとなったオープンソースプロジェクトから着想を得てきました。それぞれが OmniRoute の具体的な一部分を形作っています。ここに、すべてのプロジェクトへの感謝を表します。🙏
> ⭐ スター数は 2026 年 10 月 18 日に GitHub の REST API で確認済みです。ぜひ、これらのプロジェクトにスターを付けてください。数値は特定日時点の正確なスナップショットであり、今後当然変動します。
### 🧬 系譜とゲートウェイ
| プロジェクト | ⭐ | OmniRoute が受けた影響 |
| 9router | 31,004 | このフォークの基盤となった元のプロジェクトです。ここでは、マルチモーダル API の追加と TypeScript による全面的な書き換えを行っています。 |
| CLIProxyAPI | 55,591 | この JavaScript / TypeScript 移植版の着想源となった Go 実装です。 |
| LiteLLM | 61,482 | 公開料金データセットをコスト追跡の同期に利用し、プロバイダー正規化モデルをルーティング設計の参考にした AI ゲートウェイです。 |
| codex-chatgpt-web | 14,526 | ブラウザーセッション、レスポンスフレーミング、使用量、ウェブ検索の各アダプターを含む、同梱の ChatGPT Web → Codex Responses ブリッジに適応した MIT ライセンスのソースです。 |
| free-claude-code | 61,430 | ストリーム復旧、思考なしエイリアス、フォールバック用ウェブ検索、スライディングウィンドウ制限、ログの秘匿化、強化されたランチャーフローへ移植したパターンです。 |
| composer-api | 346 | Cursor Composer のツール選択、出力制約、ツール確定のパターンを、ネイティブ Cursor エグゼキューターに適応しました。 |
| codex-multi-auth | 553 | 新規ログインとリフレッシュトークンのローテーションパターンを、Codex OAuth の再認証に移植しました。 |
| opencode-anthropic-auth | 558 | Claude Code 互換の変換デフォルト設定と課金ヘッダーの動作を一般化し、OmniRoute の設定駆動型ブリッジに取り入れました。 |
| grok2api-merged | 2 | Grok のモデルマッピング、偽 TypeError を用いる Statsig ジェネレーター、リクエストとデバイスのデフォルト設定、NDJSON レスポンスプロセッサーを、OmniRoute の Grok Web エグゼキューターに実質的に適応しました。 |
| TQZHR/grok2api | 706 | grok2api-merged の背後にある主要な推移的コードソースです。そのモデル、ヘッダー、ペイロード、Statsig、プロセッサーの実装は、Grok Web の系譜に受け継がれています。 |
| chenyme/grok2api | 7,819 | TQZHR と grok2api-merged を通じて引き継がれた、Grok のペイロードとデバイスのデフォルト設定、Statsig ジェネレーター、result.response プロセッサーの基盤となる MIT ライセンスのソースです。 |
| grok2api-pro | 27 | grok2api-merged がプロキシプール層の出典として明記している推移的ソースです。OmniRoute はその系譜に関する表記を維持していますが、範囲を限定した Grok Web エグゼキューターにプロキシプールを移植したとは主張していません。 |
| GrokProxy | 51 | Cookie 認証を使用する Grok プロキシと result.response.token ストリーミングパターンは、OmniRoute の Grok Web トランスポート設計の参考になりました。 |
| GrokBridge | 5 | 元の Grok Web 実装では、その HTTP/ブラウザーによるアップストリーム設計を参照しました。直接 HTTP パスは GrokProxy に由来するため、独立したコード移植とは主張していません。 |
### 🗜️ コンテキストとトークンの圧縮 — エンジン
| プロジェクト | ⭐ | OmniRouteへの影響 |
| Caveman | 113,396 | 「少ないトークンで足りるのに、なぜ多くのトークンを使うのか」という話題のプロジェクト — その原始人風の表現哲学が、標準圧縮モードと30以上のフィラー削除/凝縮ルールの基盤になっています。 |
| RTK – Rust Token Killer | 83,835 | 高性能なコマンド出力圧縮 — RTKエンジン、JSONフィルターDSL、生出力の復元、そしてRTK → Cavemanの多段パイプラインに着想を与えました。 |
| headroom | 75,741 | 可逆的なコンテキスト圧縮(SmartCrusher)— headroomエンジンとccr取得マーカーパターンに着想を与えました。 |
| LLMLingua | 6,757 | プロンプト圧縮の研究(LLMLingua / LLMLingua-2)— 非同期でコードセーフかつフェイルオープンなllmlinguaエンジンに着想を与えました。 |
| llmlingua-2-js | 32 | LLMLinguaエンジンのワーカースレッド用バックエンドとして使用される、JS/ONNX移植版(MobileBERT / XLM-RoBERTa)です。 |
| Troglodita | 50 | ブラジルポルトガル語のトークン圧縮 — ブラジルポルトガル語の文法に合わせて調整された冗語表現の削減とフィラー除去により、pt-BR言語パックを支えています。 |
| ponytail | 166,731 | 話題の「怠惰なシニア開発者」向けYAGNIコーダースキル — less-code出力スタイルに着想を与えました。これは、動作する最小限の変更へと導くことで_生成される_コードを削減する仕組みです(簡潔な文章を生み出すCavemanに対し、出力軸で対を成します)。 |
| i-have-adhd | 57,628 | 行動を優先するADHDフレンドリーな応答スタイルを、5言語に対応したOmniRouteの簡潔な出力スタイルへ取り入れました。 |
### 🧩 コンパクト形式、トークン研究、コード認識ツール
| プロジェクト | ⭐ | OmniRouteへの影響 |
| TOON | 25,509 | トークン指向オブジェクト表記法 — 列指向のヘッダー+行モデルが、表形式圧縮ステージの設計に影響を与えました。 |
| GCF – Graph Compact Format | 59 | そのコンパクトなグラフ形式と汎用プロファイル設計が、OmniRouteの表形式圧縮とHeadroomコーデック形式に影響を与えました。 |
| gcf-typescript | 4 | Headroomの汎用プロファイルコーデックとして直接ベンダー化し、拡張したMITライセンスのTypeScript実装です。 |
| token-optimizer-mcp | 551 | Brotli/SQLiteキャッシュ+セッション単位のコンテキスト差分 — session-dedupエンジンに着想を与えました。 |
| token-savior | 1,182 | Bash出力の圧縮+MCPプロファイル — 圧縮中止の規律とMCPツールマニフェストの削減に着想を与えました。 |
| token-saver | 154 | 失敗を考慮した中止処理を備える、コンテンツ認識型のファイル形式別出力圧縮 — 形式別ディスパッチと、利得が最小基準を下回る場合のスキップ方針を裏付けました。 |
| token-optimizer | 2,595 | 「ゴーストトークンを見つける」— そのオフロード+復元可能なハンドルのパターンが、CCRオフロードの構想に影響を与えました。 |
| TokenMizer | 33 | セッショングラフ+ターンをまたぐ行重複排除の設計案が、session-dedupの設計に影響を与えました。 |
| OmniCompress | 3 | Rustによる列指向JSON+コンテンツアドレス指定取得+メッセージ間重複排除 — headroom/ccr/session-dedupエンジンの設計と、キャッシュの安定性を保つ「圧縮形式は位置に依存しない」という不変条件を裏付けました。 |
| mcp-compressor | 133 | MCPツールのスキーマ/説明の圧縮 — MCPツールマニフェストのカーディナリティ削減に影響を与えました。 |
| RepoMapper | 217 | Aider形式のリポジトリマップランキング — リポジトリマップ/検索ランキングの検討に影響を与えました。 |
| quiet-shell-mcp | 4 | MCPを介した宣言的なシェル出力削減 — 宣言的なbash出力圧縮の妥当性を裏付けました。 |
| ts-morph | 6,205 | TypeScript Compiler APIツールキット — 文字列、テンプレート、正規表現リテラルを保持する、パーサーベースのコメント除去に着想を与えました。 |
### 🧠 メモリとRAG
| プロジェクト | ⭐ | OmniRoute への影響 |
| Mem0 | 67,385 | 汎用メモリレイヤー — その書き込み/読み取り境界としてのプロキシモデルが、私たちのメモリアーキテクチャの形成に影響を与えました。 |
| Letta (MemGPT) | 25,179 | 階層化メモリを備えたステートフルエージェント — 私たちの Context Control & Recovery (CCR) 階層モデルに着想を与えました。 |
| WFGY | 1,800 | 繰り返し発生する16種類の RAG/LLM 障害モードを分類した ProblemMap — 私たちのトラブルシューティングガイドで使用する共通語彙となっています。 |
### 🛰️ トラフィック検査、MITM、透過プロキシ
| プロジェクト | ⭐ | OmniRoute への影響 |
| llm-interceptor | 79 | コーディングアシスタント ↔ LLM 間のトラフィックに対する MITM 傍受/分析が、初期の Traffic Inspector 要件策定に影響を与えました。以前に派生していた4つのモジュール — SSE 統合、会話の正規化、シークレットのマスキング、ヘッダーのサニタイズ — は、公開プロトコル標準に基づく独立したクリーンルーム実装に置き換えられました。2つのホストパススルー領域(passthrough.ts および _internal/bypass.cjs)は、独立して分類された OmniRoute 内部実装のままです。これらは、その置き換えの一環として書き直されたものではありません。 |
| ProxyBridge | 6,814 | プロセス単位の透過プロキシルーティング — クラッシュセーフな MITM 終了処理、ソケットのアイドルタイムアウト、/proc によるプロセス帰属判定、TPROXY キャプチャに着想を与えました。 |
### 📚 モデルデータ、オブザーバビリティ、UI
| プロジェクト | ⭐ | OmniRoute への影響 |
| models.dev | 7,286 | AI モデルの仕様、料金、機能に関するオープンデータベース — 私たちのモデルカタログにネイティブで同期されます。 |
| React Flow / xyflow | 38,705 | リアルタイムの Compression Studio と Combo/Routing Studio を支える、ノードベースのグラフライブラリです。 |
| LangGraph | 43,443 | LangGraph Studio のライブワークフローグラフ可視化が、私たちの各 Studio におけるリアルタイムのカスケードビューに着想を与えました。 |
| Langfuse | 35,990 | そのトレース → スパン → 生成というオブザーバビリティモデルが、私たちの Compression Studio のウォーターフォール表示の形成に影響を与えました。 |
| Kiali | 3,645 | Istio サービスメッシュのオブザーバビリティ — Routing/Combo Studio におけるサーキットブレーカーバッジとエラーエッジのビジュアル表現に着想を与えました。 |
| lobe-icons | 2,615 | ダッシュボード全体でプロバイダーアイコンを表示するための AI/LLM ブランドロゴです。 |
| flag-icons | 12,473 | README の言語セレクターで使用される、MIT ライセンスの SVG 国旗を提供します。 |
### 🛡️ セキュリティ
| プロジェクト | ⭐ | OmniRoute への影響 |
| awesome-secure-defaults | 722 | デフォルトで安全なライブラリを厳選したリストであり、私たちのセキュリティ上の選択(Helmet.js、DOMPurify、ssrf-req-filter、safe-regex、Google Tink)の指針となっています。 |
### 🧭 補完ツール
| プロジェクト | ⭐ | OmniRoute への影響 |
| ClawRouter | 6,628 | リクエストの重複排除、緊急時のゼロコストフォールバック、プラガブルな Auto-Combo 戦略、多言語の意図分類に着想を与えました。 |
| Antigravity-Manager | 32,333 | アカウントを考慮したモデルの再マッピング、実行可能ファイルパスの検証、プランラベルの動作が、OmniRoute の Antigravity ランタイムに影響を与えました。 |
| vscode-antigravity-cockpit | 4,850 | そのコンパクトなクォータリセットのカウントダウン形式が、OmniRoute における対応するプロバイダー制限表示に着想を与えました。 |
| AionUi | 33,611 | その ACP 統合が、インストール済み CLI エージェントを OmniRoute が自動検出する仕組みに着想を与えました。 |
| CodexBar | 22,616 | Grok Build のクォータ取得先を特定しました。その後、OmniRoute は実際の通信形式を独立して検証し、修正しました。 |
## 📄 ライセンス
MITライセンス - 詳細は[LICENSE](LICENSE)をご覧ください。
---
**[⬆ トップに戻る](#-omniroute)** · オープンソースAIコミュニティのために❤️を込めて構築。
OmniRoute v3.8.53 · Node ≥22.22.2 · MITライセンス · omniroute.online