cli-providers — Claude Code skill for provider management
Manage OmniRoute provider connections from the CLI: inspect the catalog, test connections, rotate keys, and view metrics. Useful when provider setup is part of your terminal workflow.
npx skills add cheaper-inference/OmniRoute --skill cli-providers -a claude-codeWhat cli-providers does
The skill guides an agent through OmniRoute commands for browsing the provider catalog and listing configured connections. It covers testing one connection or all active connections, viewing provider metrics, and validating local configuration without contacting an upstream service. Validation does not test whether a provider is reachable.
The omniroute CLI is required. providers rotate changes a connection key; its flags can take a new key or an environment variable, run a dry run, or skip the test. The separate keys commands manage OmniRoute API keys issued through API Manager, not provider credentials.
The skill also documents OAuth commands and provider nodes for attaching multiple accounts. The source text ends during its routing-combos section, so this description covers only the commands shown there.
What it helps with
- find a provider in the OmniRoute catalog
- test a configured connection by ID or name
- validate local provider settings without an HTTP request
- rotate a connection key using an environment variable
- inspect metrics for a provider connection
Example prompts for the agent
- Search the OmniRoute provider catalog for `openai` and show the available matches.
- Test the configured provider connection `my-provider` and return JSON output.
- Validate the local provider configuration without contacting an upstream service.
How to install cli-providers
1Skills CLI (Vercel)
npx skills add cheaper-inference/OmniRoute --skill cli-providers -a claude-code2Manually: put the files in place
~/.claude/skills/cli-providers/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/cli-providers/
1Skills CLI (Vercel)
npx skills add cheaper-inference/OmniRoute --skill cli-providers -a codex2Manually: put the files in place
.agents/skills/cli-providers/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add cheaper-inference/OmniRoute --skill cli-providers -a cursor2Manually: put the files in place
.cursor/skills/cli-providers/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install cheaper-inference/OmniRoute cli-providers2Manually: put the files in place
.github/skills/cli-providers/SKILL.md1Skills CLI (Vercel)
npx skills add cheaper-inference/OmniRoute --skill cli-providers -a gemini-cli2Platform CLI
gemini skills install https://github.com/cheaper-inference/OmniRoute --path skills/cli-providersManually: put the files in place
.devin/skills/cli-providers/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add cheaper-inference/OmniRoute --skill cli-providers -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set34
The whole set →Similar
Questions about cli-providers
How do I install cli-providers in Claude Code?
Run npx skills add cheaper-inference/OmniRoute --skill cli-providers -a claude-code. The skill is available at ~/.claude/skills/cli-providers/SKILL.md.
What does cli-providers do?
It guides provider management through the OmniRoute CLI: browse available providers, inspect and test connections, rotate keys, and view metrics.
How does `providers validate` differ from `providers test`?
providers validate checks local configuration without contacting an upstream service. providers test <idOrName> tests a configured connection.
Source text
SKILL.md · MIT
--- name: cli-providers description: "Manage provider connections from the CLI: list available/configured providers, add, test, test-all, validate, rotate API keys, and view per-provider metrics." --- <!-- generated by src/lib/agentSkills/generator.ts; manual edits will be overwritten --> ## Overview Manage provider connections from the CLI: list available/configured providers, add, test, test-all, validate, rotate API keys, and view per-provider metrics. ## Quick install ```bash npm install -g omniroute # or: npx omniroute omniroute --version ``` ## Subcommands ### `provider-cmd provider [subcommand]` Manage provider connections (use **Example:** ```bash omniroute provider-cmd provider [subcommand] ``` ### `providers` **Example:** ```bash omniroute providers ``` ### `providers available` Show available providers in the OmniRoute catalog **Flags:** - `--json` - `--search <query>` - `-q, --q <query>` - `--category <category>` **Example:** ```bash omniroute providers available ``` ### `providers list` List configured provider connections **Flags:** - `--json` **Example:** ```bash omniroute providers list ``` ### `providers test <idOrName>` Test a configured provider connection **Flags:** - `--json` **Example:** ```bash omniroute providers test <idOrName> ``` ### `providers test-all` Test all active provider connections **Flags:** - `--json` **Example:** ```bash omniroute providers test-all ``` ### `providers validate` Validate local provider configuration without calling upstream **Flags:** - `--json` **Example:** ```bash omniroute providers validate ``` ### `providers rotate <idOrName>` **Flags:** - `--new-key <key>` - `--from-env <VAR>` - `--oauth` - `--yes` - `--skip-test` - `--dry-run` **Example:** ```bash omniroute providers rotate <idOrName> ``` ### `providers status` **Flags:** - `--provider <name>` - `--json` **Example:** ```bash omniroute providers status ``` ### `providers metrics` **Flags:** - `--provider <id>` - `--connection-id <id>` - `--period <p>` - `--metric <m>` - `--sort-by <field>` - `--limit <n>` - `--watch` - `--compare <list>` **Example:** ```bash omniroute providers metrics ``` ### `providers metric <connectionId> <metric>` **Flags:** - `--period <p>` **Example:** ```bash omniroute providers metric <connectionId> <metric> ``` ### `test-provider test [provider] [model]` **Flags:** - `--all-providers` - `--json` - `--latency` - `--repeat <n>` - `--compare <models>` - `--save <path>` **Example:** ```bash omniroute test-provider test [provider] [model] ``` <!-- skill:custom-start --> <!-- Migrated from skills/omniroute-cli-providers/SKILL.md (preserved curated content) --> # OmniRoute — CLI Providers & Keys Requires the `omniroute` CLI. See [CLI entry-point skill](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/cli-serve/SKILL.md) for install + global flags. ## Provider catalog (available providers) ```bash omniroute providers available # Full OmniRoute provider catalog omniroute providers available --search openai # Filter by id, name, alias omniroute providers available --category api-key # Filter by category omniroute providers available --json # Machine-readable JSON ``` Categories: `api-key`, `oauth`, `free`, `local`, `combo`. ## Configured provider connections ```bash omniroute providers list # Connections in your DB omniroute providers list --json ``` ## Testing connections ```bash omniroute providers test <id|name> # Test one configured connection omniroute providers test-all # Test every active connection (TUI progress) omniroute providers validate # Local-only structural validation (no HTTP) ``` `test-all` opens an interactive TUI that shows live pass/fail per connection. Use `--json` to get a machine-readable result: ```bash omniroute providers test-all --json ``` ## API key management (OmniRoute keys) These manage the OmniRoute API keys issued under **API Manager** — not provider credentials. ```bash omniroute keys list # List all OmniRoute API keys omniroute keys add <provider> [apiKey] # Add an API key for a provider omniroute keys remove <provider> # Remove an API key omniroute keys regenerate <id> # Regenerate (rotate) a key omniroute keys revoke <id> # Revoke a key (disables it) omniroute keys reveal <id> # Show the full key value omniroute keys usage <id> # Show usage stats for a key omniroute keys rotate <id> # Rotate + revoke old key atomically omniroute keys expiration list # List key expiration times ``` ### Key policies ```bash omniroute keys policy show <id> # Show rate-limit / permission policy omniroute keys policy set <id> \ --rate-limit 100 \ --rate-window minute \ --permissions chat,models # Set policy on a key ``` ## Models ```bash omniroute models # List all models (all providers) omniroute models openai # Filter by provider omniroute models --search gpt # Search by name omniroute models --json # JSON output ``` ## OAuth providers ```bash omniroute oauth list # List OAuth-configured providers omniroute oauth login <provider> # Start browser-based OAuth flow omniroute oauth logout <provider> # Revoke OAuth token omniroute oauth status <provider> # Show token state + expiry omniroute oauth refresh <provider> # Force token refresh ``` For OAuth providers (Gemini, Windsurf, Antigravity, etc.) the `login` command opens the OmniRoute dashboard OAuth flow in your browser. ## Provider nodes (multi-account routing) Provider nodes let you attach multiple API keys / accounts to one logical provider for round-robin or failover. ```bash omniroute nodes list <provider> # List nodes for a provider omniroute nodes add <provider> --api-key <key> # Add a node omniroute nodes remove <provider> <nodeId> # Remove a node omniroute nodes test <provider> <nodeId> # Test one node ``` ## Routing combos (CLI) Create and manage routing combos from the terminal: ```bash omniroute combo list # List all combos omniroute combo create <name> \ --strategy priority \ --targets anthropic/claude-opus-4-7,openai/gpt-4o # Create combo omniroute combo switch <name> # Activate a combo as default omniroute combo delete <name> # Delete a combo omniroute combo suggest --task "code review" # Ask OmniRoute to recommend a combo ``` For the full REST API for combos see [omni-combos-routing skill](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omni-combos-routing/SKILL.md). ## Quota & usage ```bash omniroute quota # Provider quota usage + reset times omniroute usage # Request + token usage summary omniroute cost # Cost breakdown (by provider/model) ``` ## Compression (CLI) ```bash omniroute compression status # Current compression mode + savings stats omniroute compression set --mode rtk # Enable RTK compression omniroute compression set --mode stacked # Enable stacked (RTK + Caveman) omniroute compression set --mode off # Disable compression omniroute compression preview --mode rtk --text "..." # Preview savings for sample text ``` ## Health ```bash omniroute health # Detailed health: circuit breakers, cache, memory ``` ## Errors - `providers test <id>` fails with 401 → API key stored for that provider is wrong; use `keys remove` + `keys add` to reset it - `oauth login` opens but doesn't complete → the OAuth token endpoint may be firewalled; use API key auth instead - `combo create` fails with `strategy unknown` → use one of: `priority`, `weighted`, `round-robin`, `fill-first`, `least-used`, `cost-optimized`, `auto`, `random`, `strict-random`, `p2c`, `reset-aware`, `lkgp`, `context-optimized`, `context-relay` <!-- skill:custom-end -->
© cheaper-inference · MIT · cheaper-inference/OmniRoute