コンテンツにスキップ
OmniRoute source

CLI Tools — OmniRoute (日本語)

CLIコード / CLIエージェント(消費フロー):
Claude / Codex / OpenCode / Cline / KiloCode / Continue / Hermes Agent / Goose / ...
│
▼ (すべてOmniRouteを指す)
http://YOUR_SERVER:20128/v1
│
▼ (OmniRouteが適切なプロバイダーにルーティング)
Anthropic / OpenAI / Gemini / DeepSeek / Groq / Mistral / ...
ACPエージェント(逆生成フロー):
クライアントリクエスト → OmniRoute → stdio/ACPを介してCLIを生成 → レスポンス

利点:

  • すべてのツールを管理するための1つのAPIキー
  • ダッシュボード内のすべてのCLIにわたるコスト追跡
  • すべてのツールを再構成せずにモデル切り替え
  • ローカルおよびリモートサーバー(VPS、Docker、Akamai、Cloudflare Tunnel)で動作

各ツールの設定を手動で記述する必要はありません。OmniRouteは、サポートされているCLIごとにsetup-*コマンドを提供しており、実行中のOmniRoute(ローカルまたはリモート)からライブモデルカタログを読み取り、ツールの設定をマシンに書き込みます。

ターミナルウィンドウ
omniroute setup-codex omniroute setup-claude omniroute setup-opencode
omniroute setup-cline omniroute setup-kilo omniroute setup-continue
omniroute setup-cursor omniroute setup-roo omniroute setup-crush
omniroute setup-goose omniroute setup-qwen omniroute setup-aider
omniroute setup-5dive

それぞれ、--remote <url> --api-key <key>(リモートOmniRouteに対してローカルツールを設定)、--dry-run(書き込みなしでプレビュー)、および--portを受け入れます。モデルの自動検出機能がないツール(Cline, Kilo, Roo, Goose, Aider, Qwen, 5dive)は、--model <id>(および非対話型実行の場合は--yes)を受け入れます。setup-5diveは、$HOME以下に書き込まない唯一のレシピです。これは、フリートホストにroot所有の認証プロファイルを書き込むことで5diveエージェントフリートを設定するため、sudoを介して再実行され、独自のリモートモードはありません。適切な環境が注入され、設定が一切書き込まれないCLIを起動するには、汎用的なomniroute run <target>ランチャー(claude, codex, aider, goose, opencode, qwen, gemini — ターゲットとエイリアスはbin/cli/cli-manifest.mjsから取得されます)を使用します。レガシーなツールごとのランチャーomniroute launch(Claude Code)とomniroute launch-codex(Codex)も引き続き利用可能です。Gemini CLIは起動専用です。omniroute runのターゲットですが、setup-*/configureレシピはありません。

完全なリファレンス: 各コマンドが何を書き込むか、すべてのフラグ、ローカルとリモートの違い、そしてどのツールが/v1サフィックスを必要とするかを示すマスターテーブルは、**CLI Integrations**にあります。

OmniRouteコンテナ内で実行されるsetup-*コマンドは、コンテナ自身のホームディレクトリに書き込みますが、これはホストCLIからは読み取られず、コンテナとともに消滅します。OmniRouteはこれを検出し、書き込みを行う代わりに指示とともにコード2で終了します。サポートされている2つの進め方があります。ホストにCLIをインストールしてコンテナにomniroute connectするか、設定ディレクトリをバインドマウントしてCLI_CONFIG_HOME(composeのhostプロファイル)を設定します。すべてのsetup-*コマンド、さらにomniroute configureとomniroute config setは、コンテナ自身のCLIを設定することが意図されている場合に--allow-container-writeを受け入れます。OMNIROUTE_ALLOW_CONTAINER_CONFIG_WRITE=trueはサーバーに対しても同様の動作をします。Dockerガイド → ホストCLIツールの設定を参照してください。

ダッシュボードの適用エンドポイント(POST /api/cli-tools/apply)も同じガードを適用します。コンテナ内で、ホストからバインドマウントされていないターゲットへの書き込みは、containerEphemeralTarget: trueという安全なエラーテキストと、ホストレシピを持つツール(claude, codex, opencode, cline, kilo, continue)の場合には、代わりにホストで実行するhostSetupCommand(例: omniroute setup-opencode)を伴って**422**を返します。何も書き込まれません。dryRun: trueはコンテナモードでも機能し続け、ディスクに触れることなく編集されたプレビューとターゲットパスを返します。プレビューの内容は、コピーまたはインポートするための資格情報を含む設定ではありません。ホスト上で元のツール/ベースURL/APIキー/モデル入力を使用して適用するか、示されたホスト側のセットアップコマンドを使用してください。プレビューヘッダーとリクエスト契約については、CLI設定のセキュリティを参照してください。この動作は意図的なものであり、tests/unit/api/cli-tools/apply-container-guard.test.tsによって回帰テストで保護されています。ガードを削除して422を「修正」しないでください。


統一カタログは src/shared/constants/cliTools.ts に CLI_TOOLS: Record<string, CliCatalogEntry> として存在します。

各エントリには以下のフィールドがあります(src/shared/schemas/cliCatalog.ts で定義されています):

フィールド 型 説明
category "code" | "agent" ツールが表示されるページ
vendor string ツールの出所(“Anthropic”, “OSS (P. Gauthier)”)
acpSpawnable boolean ACPエージェントとしても使用可能(バッジ表示)
baseUrlSupport "full" | "partial" | "none" カスタムエンドポイントのサポートレベル。"none" = MITMバックログ
configType "env" | "custom" | "guide" | "custom-builder" | "mitm" 設定メカニズム
id, name, color, description, docsUrl 標準 コア表示フィールド

baseUrlSupport: "none" のエントリは ダッシュボードページに表示されません — それらはプラン11のMITMバックログに登録されています(_tasks/features-v3.8.6/refactorpages/_orchestration/_plan11-mitm-backlog.md を参照)。

機能ティア(カタログ化 × 検出可能 × 設定可能 × 起動可能)

Section titled “機能ティア(カタログ化 × 検出可能 × 設定可能 × 起動可能)”

すべてのカタログ化されたツールが検出可能、設定可能、または起動可能であるわけではありません。各ティアには1つの宣言ソースがあり、ドリフトテストがそれらを整合させます:

ティア 意味 宣言場所
カタログ化 ダッシュボードカタログに表示される(名前、ベンダー、ドキュメント、設定タイプ) src/shared/constants/cliTools.ts (CLI_TOOLS)
検出可能 バイナリ/設定の検出、ヘルスチェック、設定パス src/shared/services/cliRuntime.ts (CLI_TOOLS ランタイムカタログ)
設定可能 omniroute configure &lt;cli&gt; によってサポートされる(セットアップレシピが存在) bin/cli/cli-manifest.mjs (configure: true)
起動可能 omniroute run &lt;target&gt; によってサポートされる(env/argsの注入が定義されている) bin/cli/cli-manifest.mjs (run: true)

bin/cli/cli-manifest.mjs はCLIコマンドの標準実行可能マニフェストであり、run、configure およびシェル補完ジェネレーターはすべてそのターゲットリスト、エイリアス解決(例えば kilocode/kilo-code/kilo_cli → kilo)および --model フラグの配線をそこから派生させます。ドリフトガード tests/unit/cli/cli-manifest-drift.test.ts は、マニフェスト、ランタイムカタログ、UIカタログ、およびすべてのコンシューマサーフェスが同期していることを確認します — 1つのサーフェスに追加されたターゲットが他のサーフェスにない場合、スイートは静かにドリフトするのではなく失敗します。

1. CLIコードのカタログ (26ツール)

Section titled “1. CLIコードのカタログ (26ツール)”

/dashboard/cli-codeに表示されるすべてのツール。baseUrlSupport: noneを持つものは、カスタムベースURLではなく、MITMまたは手動ガイドを介して接続されます。

id name vendor baseUrlSupport configType acpSpawnable
claude Claude Code Anthropic full env true
codex OpenAI Codex CLI OpenAI full custom true
zcode ZCode (GLM Coding Plan) Z.ai none custom false
cline Cline OSS (ex-Claude Dev) full custom true
kilo Kilo Code Kilo-Org full custom false
roo Roo Code Roo (OSS) full guide false
continue Continue continue.dev full guide false
aider Aider OSS (P. Gauthier) full guide true
forge ForgeCode Antinomy HQ full custom true
jcode jcode 1jehuang (OSS) full custom false
deepseek-tui DeepSeek TUI Hunter Bown (OSS) full custom false
codewhale CodeWhale Hmbown (OSS) full custom false
opencode OpenCode Anomaly (ex-SST) full guide true
droid Factory Droid Factory AI partial guide false
copilot GitHub Copilot CLI GitHub/MS full custom false
cursor-cli Cursor CLI Anysphere partial guide true
smelt Smelt leonardcser (OSS) full custom false
pi Pi (pi-coding-agent) M. Zechner (OSS) full custom false
grok-build Grok Build xAI full custom false
crush Crush OSS (Charm) full custom false
qwen Qwen Code Alibaba full guide true
cursor Cursor Anysphere none guide false
antigravity Antigravity Google none mitm false
hermes Hermes Nous Research none guide false
kiro Kiro AI Amazon none mitm false
custom Custom CLI — full custom-builder false

baseUrlSupport: "partial"を持つツールは、ダッシュボードカードに「⚠ ベースURL一部対応」というバッジを表示します。

Section titled “baseUrlSupport: "partial"を持つツールは、ダッシュボードカードに「⚠ ベースURL一部対応」というバッジを表示します。”

2. CLIエージェントカタログ(10ツール)

Section titled “2. CLIエージェントカタログ(10ツール)”

/dashboard/cli-agents に表示される自律型エージェント:

id 名前 ベンダー baseUrl対応 acp起動可能
hermes-agent Hermes Agent Nous Research 完全 false
openclaw OpenClaw OSS (P. Steinberger) 完全 true
goose Goose Block / Linux Foundation 完全 true
interpreter Open Interpreter OSS 完全 true
warp Warp AI Warp Inc. 部分的 true
agent-deck Agent Deck asheshgoplani (OSS) 完全 false
omp Oh My Pi OSS 完全 true
letta Letta CLI Letta 完全 false
prime-agent Prime Agent Prime Intellect (OSS) 完全 false
5dive 5dive OSS (5dive-ai) 完全 false

3. ACPエージェント (/dashboard/acp-agents)

Section titled “3. ACPエージェント (/dashboard/acp-agents)”

このページ(/dashboard/agentsから名前変更)は、OmniRouteがスパーンできるCLIを表示します。これらはバックエンド実行エンジンとしてstdio/ACPプロトコルを介して使用されます。カタログはsrc/lib/acp/registry.tsで別途管理されており、CLI_TOOLSとは異なります。


4. MITMバックログ(ダッシュボードには表示されません)

Section titled “4. MITMバックログ(ダッシュボードには表示されません)”

以下のCLIは、ネイティブにカスタムベースURLをサポートしておらず、CLIコードやCLIエージェントページにはリストされていません。これらはプラン11でのMITMインターセプションの候補です:

CLI 理由
windsurf BYOKは特定のClaudeモデルと企業のURL/tokenに限定される
amp クローズドエコシステム(Sourcegraph)
amazon-q / kiro-cli AWS SSO認証、カスタムURLなし
cowork Anthropic Desktop、構成可能なエンドポイントなし

完全なクロスリファレンスについては、_tasks/features-v3.8.6/refactorpages/_orchestration/_plan11-mitm-backlog.mdを参照してください。


すべてのツール検出は、単一のエンドポイントを介して集約されます:

GET /api/cli-tools/all-statuses

  • 認証: requireCliToolsAuth(request)(他の/api/cli-tools/ルートと同じ)
  • 戻り値: Record<toolId, ToolBatchStatus>(型: src/shared/types/cliBatchStatus.ts)
  • 戦略: すべてのツールに対してPromise.all、ツールごとに5秒のタイムアウト
  • キャッシュ: 設定ファイルmtimeによってインデックス付けされたメモリ内LRU。mtimeが変更されるとキャッシュが無効化されます。サーバー再起動時にリセットされます。

ツールごとのレスポンス形状:

interface ToolBatchStatus {
detection: {
installed: boolean;
runnable: boolean;
version?: string;
command?: string;
commandPath?: string;
reason?: string;
};
config: {
status: "configured" | "not_configured" | "not_installed" | "unknown" | "other";
endpoint?: string | null;
lastConfiguredAt?: string | null;
};
error?: string; // サニタイズ済み、スタックトレースなし
}

6. 新しいツールの設定ハンドラー

Section titled “6. 新しいツールの設定ハンドラー”

configType: "custom" の新しいツールには、専用の設定APIルートがあります:

ルート ツール
POST /api/cli-tools/forge-settings ForgeCode (.forge.toml)
POST /api/cli-tools/jcode-settings jcode (–base-url フラグ)
POST /api/cli-tools/deepseek-tui-settings DeepSeek TUI (OPENAI_BASE_URL, legacy)
POST /api/cli-tools/codewhale-settings CodeWhale (OPENAI_BASE_URL, primary + legacy ~/.deepseek sync)
POST /api/cli-tools/smelt-settings Smelt
POST /api/cli-tools/pi-settings Pi コーディングエージェント
POST /api/cli-tools/grok-build-settings Grok Build (~/.grok/config.toml, [model.omniroute])
POST /api/cli-tools/qwen-settings Qwen Code (~/.qwen/settings.json + 専用の .env キー)

すべてのルートは、エラー応答に sanitizeErrorMessage() を使用します(ハードルール #12)。


7. ダッシュボードページのアーキテクチャ

Section titled “7. ダッシュボードページのアーキテクチャ”
  • src/app/(dashboard)/dashboard/cli-code/page.tsx — サーバーコンポーネント
  • src/app/(dashboard)/dashboard/cli-code/CliCodePageClient.tsx — クライアントグリッド
  • src/app/(dashboard)/dashboard/cli-code/[id]/page.tsx — ツール詳細ページ
  • src/app/(dashboard)/dashboard/cli-code/components/ — 12の専門ツールカード + ToolDetailClient.tsx

CLI エージェント (/dashboard/cli-agents)

Section titled “CLI エージェント (/dashboard/cli-agents)”
  • src/app/(dashboard)/dashboard/cli-agents/page.tsx — サーバーコンポーネント
  • src/app/(dashboard)/dashboard/cli-agents/CliAgentsPageClient.tsx — クライアントグリッド
  • src/app/(dashboard)/dashboard/cli-agents/[id]/page.tsx — ToolDetailClient を再利用

ACP エージェント (/dashboard/acp-agents)

Section titled “ACP エージェント (/dashboard/acp-agents)”
  • src/app/(dashboard)/dashboard/acp-agents/page.tsx — サーバーコンポーネント(agents/ から移動)

共有 UI コンポーネント (src/shared/components/cli/)

Section titled “共有 UI コンポーネント (src/shared/components/cli/)”
ファイル 目的
CliToolCard.tsx スマートステータスカード(検出 + 設定 + エンドポイント)
CliConceptCard.tsx ページごとの概念説明カード
CliComparisonCard.tsx CLI タイプ間の三列比較
BaseUrlSelect.tsx エンドポイントドロップダウン(ローカル/クラウド/カスタム)
ApiKeySelect.tsx API キーセレクター
ManualConfigModal.tsx コピー可能な設定スニペットモーダル
ファイル 目的
useToolBatchStatuses.ts /api/cli-tools/all-statuses を取得し、読み込み/リフレッシュ状態を管理

プラン14 F9で追加された新しい名前空間:

名前空間 目的
cliCommon 共有文字列(カードラベル、概念/比較テキスト、詳細ページラベル)
cliCode CLIコードのページ文字列
cliAgents CLIエージェントのページ文字列
acpAgents ACPエージェントのページ文字列

完全なPT-BRおよびENの翻訳が提供されています。39の他のロケールは、src/i18n/request.tsでの名前空間レベルのマージを介して自動的にENにフォールバックします。


ステップ1 — OmniRoute APIキーを取得する

Section titled “ステップ1 — OmniRoute APIキーを取得する”
  1. /dashboard/api-managerを開く → APIキーを作成
  2. 名前を付ける(例:cli-tools)とすべての権限を選択
  3. キーをコピーする — 以下のすべてのCLIで必要になります

あなたのキーは次のようになります: sk-xxxxxxxxxxxxxxxx-xxxxxxxxx


ステップ2 — CLIツールをインストールする

Section titled “ステップ2 — CLIツールをインストールする”

すべてのnpmベースのツールはNode.js 22.22.2+または24.xを必要とします:

ターミナルウィンドウ
# Claude Code (Anthropic)
npm install -g @anthropic-ai/claude-code
# OpenAI Codex
npm install -g @openai/codex
# OpenCode
npm install -g opencode-ai
# Cline
npm install -g cline
# KiloCode
npm install -g kilocode
# Qwen Code
npm install -g @qwen-code/qwen-code
# Google Gemini CLI (launchable via `omniroute run gemini` → /v1beta surface)
npm install -g @google/gemini-cli
# Aider
pip install aider-chat
# Smelt
cargo install smelt # Rustベース
# Pi coding agent
# インストールについては https://github.com/zechnerj/pi-coding-agent を参照
# jcode
# インストールについては https://github.com/1jehuang/jcode を参照

ステップ3 — ダッシュボードから設定する

Section titled “ステップ3 — ダッシュボードから設定する”
  1. http://localhost:20128/dashboard/cli-codeに移動
  2. グリッドでツールを見つける
  3. カードをクリックしてツールの詳細ページを開く
  4. APIキーとベースURLを選択
  5. 設定を適用をクリックするか、手動設定スニペットをコピーする

ステップ4 — グローバル環境変数を設定する

Section titled “ステップ4 — グローバル環境変数を設定する”
ターミナルウィンドウ
# OmniRouteユニバーサルエンドポイント
export OPENAI_BASE_URL="http://localhost:20128/v1"
export OPENAI_API_KEY="sk-your-omniroute-key"
export ANTHROPIC_BASE_URL="http://localhost:20128"
export ANTHROPIC_AUTH_TOKEN="sk-your-omniroute-key"
# Gemini CLIはROOTでGOOGLE_GEMINI_BASE_URLを読み取ります(そのSDKは/v1beta/...を自動的に追加します)
export GOOGLE_GEMINI_BASE_URL="http://localhost:20128"
export GEMINI_API_KEY="sk-your-omniroute-key"

リモートサーバーの場合、localhost:20128をサーバーのIPまたはドメインに置き換えてください、 例:http://&lt;your-server-ip&gt;:20128。


ステップ4 — 各ツールを設定する

Section titled “ステップ4 — 各ツールを設定する”
ターミナルウィンドウ
# ~/.claude/settings.jsonを作成:
mkdir -p ~/.claude && cat > ~/.claude/settings.json << EOF
{
"env": {
"ANTHROPIC_BASE_URL": "http://localhost:20128",
"ANTHROPIC_AUTH_TOKEN": "sk-your-omniroute-key"
}
}
EOF

Claude Codeには統一されたAnthropicゲートウェイのルートを使用します。ここに/v1を追加しないでください。

テスト: claude "say hello"


モダンCodex (v0.137+)は~/.codex/config.tomlのみを読み取ります — 古い config.yamlはレガシーnpm CLIに属し、静かに無視されます。API キーはOMNIROUTE_API_KEY環境変数(env_key)に保持され、ファイル内には決して含まれません:

ターミナルウィンドウ
mkdir -p ~/.codex && cat > ~/.codex/config.toml << EOF
model_provider = "omniroute"
[model_providers.omniroute]
name = "OmniRoute"
base_url = "http://localhost:20128/v1"
env_key = "OMNIROUTE_API_KEY"
requires_openai_auth = false
EOF
export OMNIROUTE_API_KEY="sk-your-omniroute-key"

完全なリファレンス(プロファイル、wire_api、コンテキストウィンドウ): CODEX-CLI-CONFIGURATION.md。

テスト: codex "what is 2+2?"


ターミナルウィンドウ
mkdir -p ~/.config/opencode && cat > ~/.config/opencode/opencode.json << EOF
{
"\$schema": "https://opencode.ai/config.json",
"provider": {
"omniroute": {
"npm": "@ai-sdk/openai-compatible",
"name": "OmniRoute",
"options": {
"baseURL": "http://localhost:20128/v1",
"apiKey": "sk-your-omniroute-key"
},
"models": {
"claude-sonnet-4-5": { "name": "claude-sonnet-4-5" },
"claude-sonnet-4-5-thinking": { "name": "claude-sonnet-4-5-thinking" },
"gemini-3-flash": { "name": "gemini-3-flash" }
}
}
}
}
EOF

テスト: opencode

opencode run "your prompt" --model omniroute/claude-sonnet-4-5-thinking --variant highを使用して 思考バリアントを送信します。


CLIモード:

ターミナルウィンドウ
mkdir -p ~/.cline/data && cat > ~/.cline/data/globalState.json << EOF
{
"apiProvider": "openai",
"openAiBaseUrl": "http://localhost:20128/v1",
"openAiApiKey": "sk-your-omniroute-key"
}
EOF

VS Codeモード: Cline拡張設定 → APIプロバイダー:OpenAI Compatible → ベースURL:http://localhost:20128/v1

またはOmniRouteダッシュボードを使用 → CLIツール → Cline → 設定を適用。


CLIモード:

ターミナルウィンドウ
kilocode --api-base http://localhost:20128/v1 --api-key sk-your-omniroute-key

VS Code設定:

{
"kilo-code.openAiBaseUrl": "http://localhost:20128/v1",
"kilo-code.apiKey": "sk-your-omniroute-key"
}

またはOmniRouteダッシュボードを使用 → CLIツール → KiloCode → 設定を適用。


~/.continue/config.yamlを編集:

models:
- name: OmniRoute
provider: openai
model: auto
apiBase: http://localhost:20128/v1
apiKey: sk-your-omniroute-key
default: true

編集後にVS Codeを再起動します。


VS Code Insiders (chatLanguageModels.json)

Section titled “VS Code Insiders (chatLanguageModels.json)”

VS Code Insidersがカスタムエンドポイントモデルに設定されていて、カスタムヘッダーフィールドなしでOmniRouteを機能させたい場合に使用します。

推奨される場所:

  • Linux: ~/.config/Code - Insiders/User/chatLanguageModels.json
  • Windows: %APPDATA%/Code - Insiders/User/chatLanguageModels.json

トークン化されたOmniRouteエイリアスを使用した例:

[
{
"vendor": "customendpoint",
"id": "auto",
"name": "OmniRoute Auto",
"family": "gpt-4",
"version": "1.0.0",
"url": "http://localhost:20128/api/v1/vscode/sk-your-omniroute-key/chat/completions",
"modelsUrl": "http://localhost:20128/api/v1/vscode/sk-your-omniroute-key/models",
"requestFormat": "openai-chat-completions",
"contextWindow": 256000,
"maxOutputTokens": 32768,
"auth": {
"type": "none"
}
}
]

注意:

  • sk-your-omniroute-keyをOmniRouteで作成したAPIキーに置き換えてください。
  • urlフィールドは/api/v1/vscode/{token}/chat/completionsを指す必要があります。
  • modelsUrlフィールドは/api/v1/vscode/{token}/modelsを指す必要があります。
  • クライアントがカスタムヘッダーをサポートしている場合は、通常の/v1 + Bearerヘッダーフローを優先してください。
  • URLに埋め込まれたトークンは互換性のためのフォールバックであり、エディタのログやプロキシ履歴に表示されることがあります。

ターミナルウィンドウ
# AWS/Kiroアカウントにログイン:
kiro-cli login
# CLIは独自の認証を使用します — Kiro CLI自体のバックエンドとしてOmniRouteは必要ありません。
# 他のツールのためにOmniRouteと一緒にkiro-cliを使用します。
kiro-cli status

Kiro IDEデスクトップアプリの場合、OmniRouteが提供するMITMエンドポイントを使用します /dashboard/cli-tools → Kiroの下で。

omniroute バイナリは、サーバーのライフサイクル、セットアップ、診断、プロバイダー管理用のコマンドを提供します。エントリーポイント: bin/omniroute.mjs。

ターミナルウィンドウ
omniroute # サーバーを起動(デフォルトポートは 20128)
omniroute setup # 対話形式のセットアップウィザード
omniroute doctor # 設定、DB、ポート、ランタイムを確認
omniroute providers list # 設定済みのプロバイダー接続
omniroute providers test-all # すべてのアクティブな接続をテスト
omniroute reset-password # 管理者パスワードをリセット
omniroute logs # リクエストログをストリーミング
omniroute health # 詳細なヘルス情報(ブレーカー、キャッシュ、メモリ)
omniroute --version # バージョンを表示
omniroute --help # すべてのコマンドを表示
ターミナルウィンドウ
omniroute setup # 対話形式のセットアップウィザード
omniroute setup --non-interactive # CI/自動化モード(環境変数とフラグを読み取り)
omniroute setup --password '&lt;value&gt;' # 管理者パスワードを直接設定
omniroute setup --add-provider \
--provider openai \
--api-key '&lt;value&gt;' \
--test-provider # プロバイダーの追加とテストを一度に実行

非対話形式のセットアップで認識される環境変数:

変数 用途
OMNIROUTE_API_KEY プロバイダーの API キー(Commander の .env() により --api-key にバインド)
DATA_DIR OmniRoute のデータディレクトリを上書き

その他の非対話形式の入力はすべて、環境変数ではなくフラグとして渡します: --password、--provider、--provider-name、--provider-base-url、--default-model (上記の omniroute setup オプションを参照)。

ターミナルウィンドウ
omniroute doctor # 設定、DB、ポート、ランタイム、メモリ、稼働状態を確認
omniroute doctor --json # 機械可読な JSON
omniroute doctor --no-liveness # HTTP ヘルスプローブをスキップ
omniroute doctor --host 0.0.0.0 # 稼働状態確認用ホストを上書き
omniroute doctor --liveness-url &lt;url&gt; # ヘルスエンドポイントの完全な URL を上書き

doctor は次のチェックを実行します: Config、Database、Storage/encryption、 Port availability、Node runtime、Native binary(better-sqlite3)、 Memory、Server liveness。いずれかのチェックが fail の場合、ゼロ以外の終了コードで終了します。

ターミナルウィンドウ
omniroute providers available # OmniRoute プロバイダーカタログ
omniroute providers available --search openai # id/名前/エイリアス/カテゴリーでカタログを絞り込み
omniroute providers available --category api-key # カテゴリー(api-key、oauth、free など)で絞り込み
omniroute providers available --json # 機械可読な JSON
omniroute providers list # 設定済みのプロバイダー接続
omniroute providers list --json
omniroute providers test <id|name> # 設定済みの接続を 1 件テスト
omniroute providers test-all # すべてのアクティブな接続をテスト
omniroute providers validate # ローカルのみの構造検証
omniroute providers add &lt;provider&gt; --credential-env PROVIDER_KEY
omniroute providers import ./providers.json --dry-run --json
omniroute providers auth &lt;provider&gt; # 既存の OAuth フロー
omniroute providers edit <id|name> --default-model &lt;model&gt;
omniroute providers remove <id|name> --yes

providers add/import/auth/edit/remove は API 優先であるため、 アクティブなローカルまたはリモートコンテキストに対して動作します。認証情報の入力には --credential-stdin または --credential-env を使用してください。--dry-run --json は、 秘匿化された有無と形式のみを報告します。providers available は OmniRoute カタログを読み取ります。 providers list/test/test-all/validate は従来のローカル SQLite の動作を維持し、 サーバーが実行中である必要はありません。

ターミナルウィンドウ
omniroute reset-password # 管理者パスワードをリセット(別名: omniroute-reset-password)
omniroute reset-encrypted-columns # 暗号化された認証情報のリセットに関する警告とドライランを表示
omniroute reset-encrypted-columns --force # SQLite 内の暗号化された認証情報を実際に null に設定

認証情報のエクスポート(⚠ 取り扱い注意)

Section titled “認証情報のエクスポート(⚠ 取り扱い注意)”
ターミナルウィンドウ
omniroute auth export # 警告と確認ゲートを表示 — DB にはアクセスしない
omniroute auth export --force # すべての接続の復号済み認証情報を JSON として stdout にエクスポート
omniroute auth export --force --id &lt;id&gt; # 一致する接続のみをエクスポート
omniroute auth export --force --format env # OMNIROUTE_<PROVIDER>_<FIELD>=&lt;value&gt; 形式の行を出力
omniroute auth export --force --out creds.json # ファイルに書き込み(0600 権限で作成)

auth export はローカル専用(SQLite を直接読み取り、HTTP ルートは使用しない)であり、意図的に 平文の apiKey/accessToken/refreshToken/idToken 値を表示または書き込みます。これは機能であり、 バグではありません。--force が指定されない限り、データベースからは何も読み取られず、何も復号されません。平文が出力される前には、 必ず stderr に警告バナーが表示されます。STORAGE_ENCRYPTION_KEY が設定されている必要があります。 フィールドの復号に失敗した場合(古いキー、破損した暗号文)は、エクスポート全体を中止したり、 基礎となるエラーを漏えいしたりする代わりに、&lt;field&gt;DecryptFailed: true として報告されます。

特に記載がない限り、これらは OmniRoute サーバーが実行中であることを前提とします:

ターミナルウィンドウ
omniroute status # 包括的なランタイムステータス
omniroute logs # リクエストログをストリーミング(--json、--search、--follow)
omniroute config list # 設定済みのCLIツールを表示
omniroute provider list # 利用可能なプロバイダーを一覧表示(providers listのエイリアス)
omniroute provider add # OmniRouteをツールのプロバイダーとして登録
omniroute keys add | list | remove # APIキーを管理
omniroute models [provider] # モデルを一覧表示(--json、--search)
omniroute combo list | switch | create | delete
omniroute backup # 設定とDBのスナップショットを作成
omniroute restore # 以前のスナップショットから復元
omniroute health # 詳細な稼働状態(ブレーカー、キャッシュ、メモリ)
omniroute quota # プロバイダーのクォータ使用状況
omniroute cache # キャッシュの状態
omniroute cache clear # セマンティックキャッシュとシグネチャキャッシュをクリア
omniroute mcp status | restart # MCPサーバーの状態確認/再起動
omniroute a2a status | card # A2Aサーバーの状態/エージェントカード
omniroute tunnel list | create | stop # トンネルを管理(cloudflare/tailscale/ngrok)
omniroute env show | get &lt;k&gt; | set &lt;k&gt; &lt;v&gt; # 環境変数を確認/設定(一時的)
omniroute test # プロバイダー接続のスモークテスト
omniroute update # 更新を確認
omniroute completion # シェル補完を生成
フラグ 説明
--no-open 起動時にブラウザーを自動で開かない
--port &lt;n&gt; APIポートを上書き(デフォルトは20128)
--mcp stdio経由でMCPサーバーとして実行(IDE向け)
--non-interactive CIモード(プロンプトなし。環境変数/フラグから読み込み)
--json 機械可読なJSON出力(doctor、providersなど)
--help, -h コマンド固有のヘルプを表示
--version, -v インストール済みのバージョンを表示

エンドポイント 説明 使用目的
/v1/chat/completions 標準チャット(すべてのプロバイダー) すべての最新ツール
/v1/responses レスポンスAPI(OpenAI形式) Codex、エージェントワークフロー
/v1/completions レガシーテキスト補完 prompt:を使用する古いツール
/v1/embeddings テキスト埋め込み RAG、検索
/v1/images/generations 画像生成 GPT-Image、Fluxなど
/v1/audio/speech テキストから音声へ ElevenLabs、OpenAI TTS
/v1/audio/transcriptions 音声からテキストへ Deepgram、AssemblyAI

貼り付け可能なトークン化されたOmniRoute URLの例:

トークン例: sk-a3ab3c080beaee3a-69f4a4-070d71af
標準OpenAIベース: http://localhost:20128/v1
VS Codeモデル: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/models
VS Codeチャット: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/chat/completions
VS Codeレスポンス: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/responses
Ollamaタグ: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/api/tags
Ollamaチャット: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/api/chat

エラー 原因 修正
Connection refused OmniRouteが実行されていない omniroute serve
401 Unauthorized APIキーが間違っている /dashboard/api-managerで確認
No combo configured アクティブなルーティングコンボがない /dashboard/combosで設定
CLIが「not installed」と表示される バイナリがPATHにない which &lt;command&gt;で確認
インストール後にダッシュボードが「not detected」と表示される キャッシュが古い ダッシュボードで「⟳ 検出を更新」をクリック
古いリンク /dashboard/cli-tools v3.8.6以前のブックマーク /dashboard/cli-codeに自動リダイレクト(308)
古いリンク /dashboard/agents v3.8.6以前のブックマーク /dashboard/acp-agentsに自動リダイレクト(308)

OmniRoute ソースコード (a58000c7685f)

HagiCode

HagiCode は構造化ワークフロー、マルチエージェント実行、Hero Dungeon ビューを備えたエージェント型コーディングワークスペースです。

よりスマートで速く、楽しいエージェント型ワークフローで、使いやすいソフトウェアを形にします。

HagiCode ライトテーマのメイン画面
  • Smart構造化ワークフローは意図をアイデアから変更のリリースまで実行可能な道筋にします。
  • Efficientマルチエージェントのワークフローで調査、実装、レビューを並行して進めます。
  • FunHero Dungeon により長時間のコーディングを視覚的で協力的な体験にします。
HagiCode を見る