cli-serve について
cli-serveは、OmniRouteサーバーの起動、停止、管理を行うCLIスキルです。セットアップ、診断、バックアップ、トンネル、設定の操作も扱います。
主な機能
- 01サーバーの起動、停止、再起動
- 02ポート、デーモンモード、復旧の設定
- 03セットアップとヘルス診断
- 04設定とデータベースのバックアップ・復元
- 05自動起動と公開トンネルの管理
- 06設定とライブログの確認
活用シーン
- 01OmniRouteインスタンスの再起動や停止
- 02CIやDockerでのOmniRouteの構成
- 03デプロイ前のサーバー状態の確認
- 04サーバー復元前のバックアップ作成
MCP 対応
CLIのstdioトランスポートオプションを使い、OmniRouteをMCPサーバーとして起動できます。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ cheaper-inference/ omniroute --skill cli-serveインストール後、Claude Code で/cli-serveを入力して読み込まれたか確認します。
詳細
概要
CLI から OmniRoute サーバーを起動、停止、再起動できます。デーモンモード、ポート設定、自動復旧、システムトレイとの連携、ダッシュボードを開くショートカットを管理できます。
クイックインストール
npm install -g omniroute # or: npx omniroute
omniroute --version
サブコマンド
dashboard
フラグ:
--url--port <port>--tui
例:
omniroute dashboard
restart
フラグ:
--port <port>
例:
omniroute restart
serve
フラグ:
--port <port>--no-open--daemon--log--no-recovery--max-restarts <n>--headless--tray--no-tray--ready-timeout <ms>--tls-cert <path>--tls-key <path>
例:
omniroute serve
stop
フラグ:
--port <port>
例:
omniroute stop
セットアップ
omniroute バイナリには OmniRoute サーバーが同梱されています。サーバーランチャーであると同時に、39 個のグループにわたる 250 以上のコマンドを備えた本格的な管理 CLI です。
インストール
npm install -g omniroute # npm registry
# or: use the binary bundled with the desktop app
Node.js ≥22.22.2 または ≥24 が必要です。
確認方法:
omniroute --version # prints installed version
omniroute --help # full command tree
接続
サーバーと通信するすべての CLI コマンドは、次の 2 つの値を読み取ります。
| ソース | 変数/フラグ |
|---|---|
| ベース URL | OMNIROUTE_BASE_URL または --base-url |
| API キー | OMNIROUTE_API_KEY または --api-key |
デフォルトのベース URL:http://localhost:20128
export OMNIROUTE_BASE_URL="http://localhost:20128"
export OMNIROUTE_API_KEY="sk-..." # from Dashboard → API Manager
リモートサーバーの場合:
export OMNIROUTE_BASE_URL="https://your-server.com"
グローバルフラグ
| フラグ | 説明 |
|---|---|
--base-url <url> | この実行で使用するサーバー URL を上書きします |
--api-key <key> | この実行で使用する API キーを上書きします |
--output <format> | 出力形式:table(デフォルト)、json、jsonl、csv |
--json | --output json の省略形 |
--non-interactive | プロンプトを無効にします — CI/シェルスクリプト用 |
--no-open | 起動時にブラウザーを自動で開きません |
--port <n> | デフォルトのポート 20128 を上書きします |
--help, -h | 現在のコマンドのヘルプを表示します |
--version, -v | インストール済みのバージョンを表示します |
出力形式
一覧表示コマンドはすべて --output に対応しています。
omniroute combo list # human-readable table
omniroute combo list --output json # JSON array
omniroute combo list --output jsonl # one JSON object per line
omniroute combo list --output csv # CSV with header row
クイックスタート:サーバーの単発起動とプロバイダーのセットアップ
# 1. Start server
omniroute
# 2. (First run) interactive setup wizard
omniroute setup
# 3. Verify everything is healthy
omniroute doctor
CLI 機能スキル
エラー
Connection refused→ サーバーが起動していません。omnirouteまたはomniroute serveを実行してください401 Unauthorized→ API キーが間違っているか、設定されていませんcommand not found: omniroute→ PATH に含まれていません。npm root -gを確認するか、再インストールしてくださいdoctorが SQLite に互換性がないと報告する → アプリのディレクトリでnpm rebuild better-sqlite3を実行してください
管理ライフサイクル
omniroute CLI が必要です。上記のインストールおよびグローバルフラグのセクションを参照してください。
サーバーのライフサイクル
omniroute # Start server (default port 20128)
omniroute serve # Explicit alias
omniroute --port 3000 # Override port
omniroute --no-open # Don't auto-open browser
omniroute --mcp # Start as MCP server (stdio transport)
omniroute stop # Stop the running server
omniroute restart # Restart the server
omniroute dashboard # Open dashboard in browser
omniroute open # Alias for dashboard
omniroute status # Runtime status (uptime, requests, providers)
セットアップとプロビジョニング
対話型ウィザード
omniroute setup # Step-by-step interactive setup
非対話型(CI / Docker)
omniroute setup --non-interactive \
--password 'admin-password' \
--add-provider \
--provider openai \
--api-key 'sk-...' \
--test-provider
非対話型のセットアップに使用する環境変数:
| 変数 | 用途 |
|---|---|
OMNIROUTE_SETUP_PASSWORD | 管理者パスワード(8文字以上) |
OMNIROUTE_PROVIDER | プロバイダー ID(例:openai、anthropic) |
OMNIROUTE_PROVIDER_NAME | 接続の表示名 |
OMNIROUTE_PROVIDER_BASE_URL | 任意の OpenAI 互換ベース URL の上書き |
OMNIROUTE_API_KEY | プロバイダー API キー |
OMNIROUTE_DEFAULT_MODEL | 任意のデフォルトモデル |
DATA_DIR | OmniRoute のデータディレクトリの上書き |
診断
omniroute doctor # Full health check
omniroute doctor --json # Machine-readable JSON
omniroute doctor --no-liveness # Skip HTTP health probe
omniroute doctor --host 0.0.0.0 # Override liveness host
omniroute doctor --liveness-url <url> # Full URL override
実行されるチェック:設定、データベース、ストレージ/暗号化、ポート、Node ランタイム、ネイティブバイナリ(better-sqlite3)、メモリ、サーバーの稼働状況。
いずれかのチェックに失敗すると、終了コードはゼロ以外になります。CI で便利です:
omniroute doctor --json | jq '.checks[] | select(.status=="fail")'
バックアップと復元
omniroute backup # Snapshot config + SQLite DB to ~/.omniroute/backups/
omniroute restore # Restore from a previous snapshot (interactive picker)
自動起動(システムトレイ/スタートアップ)
omniroute autostart enable # Register OmniRoute as a system startup item
omniroute autostart disable # Remove startup registration
omniroute autostart status # Show current autostart state
Linux では、systemd ユーザーサービス(~/.config/systemd/user/omniroute.service)を作成し、グラフィカルログインなしで再起動後にサービスを起動できるよう linger を有効にします。デスクトップセッションでは、--tray を指定した XDG 自動起動エントリも追加します。macOS では LaunchAgent plist、Windows ではレジストリのスタートアップエントリを作成します。
トンネル(公開 URL)
安全なトンネル経由で、ローカルの OmniRoute インスタンスを公開します:
omniroute tunnel list # List active tunnels
omniroute tunnel create cloudflare # Start a Cloudflare Tunnel (free)
omniroute tunnel create tailscale # Start a Tailscale funnel
omniroute tunnel create ngrok # Start an ngrok tunnel
omniroute tunnel stop <id> # Stop a running tunnel
トンネル URL が表示され、リモートマシンで OMNIROUTE_BASE_URL として使用できます。
設定と環境
omniroute config show # Display current effective configuration
omniroute env show # List all OmniRoute environment variables
omniroute env get <KEY> # Get a single env var value
omniroute env set <KEY> <value> # Set an env var (temporary — until restart)
復旧
omniroute reset-password # Reset the admin password interactively
omniroute reset-encrypted-columns # Dry-run: show encrypted credential columns
omniroute reset-encrypted-columns --force # Null out encrypted credentials in SQLite
STORAGE_ENCRYPTION_KEY を紛失し、すべてのプロバイダー API キーを再入力する必要がある場合に限り、reset-encrypted-columns --force を使用してください。
ログ
omniroute logs # Stream live request logs
omniroute logs --json # JSON log entries
omniroute logs --search <term> # Filter by term
omniroute logs --follow # Tail mode (keep streaming)
更新
omniroute update # Check for a newer version and prompt to update
エラー
doctorにSTORAGE_ENCRYPTION_KEY missingと表示される →.envにキーを設定するか、reset-encrypted-columns --forceを実行して認証情報を消去し、再入力しますdoctorがネイティブバイナリの失敗を報告する → OmniRoute アプリのディレクトリでnpm rebuild better-sqlite3を実行しますtunnel create cloudflareがハングする →cloudflaredがインストールされていることを確認します:brew install cloudflare/cloudflare/cloudflared