The translated CLI docs predated the relay-like CLI work: every locale still shipped the legacy Codex `config.yaml` quickstart (dropped from the English source when the generator moved to TOML), none mentioned the `omniroute run` launcher or the Gemini target, and CLI-INTEGRATIONS.md existed only in Polish. Regenerated through the project pipeline (npm run i18n:run) for the two guides the CLI effort changed: - docs/i18n/*/docs/reference/CLI-TOOLS.md — 42 locales updated; the obsolete YAML quickstart is gone from all of them (the remaining config.yaml mentions mirror the English legacy note and Continue's own config) - docs/i18n/*/docs/guides/CLI-INTEGRATIONS.md — 42 locales, 41 of them new files ENVIRONMENT.md is deliberately not included: at ~26 chunks per locale it exceeds the pipeline's 60s per-chunk timeout and fails after retries. It needs a raised OMNIROUTE_TRANSLATION_TIMEOUT_MS, which is a separate maintenance run. Verified: check:docs-all exits 0, doc-links reports no broken internal links, and spot-checks confirm technical identifiers, front-matter and language bars survive translation intact.
41 KiB
CLI-TOOLS (Filipino)
🌐 Languages: 🇺🇸 English · 🇸🇦 ar · 🇦🇿 az · 🇧🇬 bg · 🇧🇩 bn · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇪🇸 es · 🇮🇷 fa · 🇫🇮 fi · 🇫🇷 fr · 🇮🇳 gu · 🇮🇱 he · 🇮🇳 hi · 🇭🇺 hu · 🇮🇩 id · 🇮🇩 in · 🇮🇹 it · 🇯🇵 ja · 🇰🇷 ko · 🇮🇳 mr · 🇲🇾 ms · 🇳🇱 nl · 🇳🇴 no · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇸🇰 sk · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇻🇳 vi · 🇨🇳 zh-CN · 🇹🇼 zh-TW
title: "CLI Tools — OmniRoute" version: 3.8.50 lastUpdated: 2026-08-18
CLI Tools — OmniRoute
Huling na-update: 2026-08-18
Ang OmniRoute ay nag-iintegrate sa tatlong kategorya ng mga CLI tool na nakakalat sa tatlong nakalaang pahina ng dashboard:
| Pahina | Ruta | Konsepto | Bilang |
|---|---|---|---|
| CLI Code's | /dashboard/cli-code |
Mga tool sa pag-coding na itinuturo mo sa OmniRoute (Client → CLI → OmniRoute → Provider) | 26 |
| CLI Agents | /dashboard/cli-agents |
Mga autonomous agent na itinuturo mo sa OmniRoute (parehong daloy, mas malawak na saklaw) | 8 |
| ACP Agents | /dashboard/acp-agents |
Mga CLI na nilikha ng OmniRoute bilang backend sa pamamagitan ng stdio/ACP (baligtad na daloy) | tingnan ang rehistro |
Ang mga legacy na ruta ay nagre-redirect sa pamamagitan ng 308: /dashboard/cli-tools → /dashboard/cli-code, /dashboard/agents → /dashboard/acp-agents.
Paano Ito Gumagana
CLI Code's / CLI Agents (daloy ng pagkonsumo):
Claude / Codex / OpenCode / Cline / KiloCode / Continue / Hermes Agent / Goose / ...
│
▼ (lahat ay itinuturo sa OmniRoute)
http://YOUR_SERVER:20128/v1
│
▼ (ang OmniRoute ay nagruruta sa tamang provider)
Anthropic / OpenAI / Gemini / DeepSeek / Groq / Mistral / ...
ACP Agents (baligtad na daloy ng paglikha):
Client request → OmniRoute → naglilikha ng CLI sa pamamagitan ng stdio/ACP → tugon
Mga Benepisyo:
- Isang API key upang pamahalaan ang lahat ng tool
- Pagsubaybay sa gastos sa lahat ng CLI sa dashboard
- Paglipat ng modelo nang hindi nire-reconfigure ang bawat tool
- Gumagana nang lokal at sa mga remote server (VPS, Docker, Akamai, Cloudflare Tunnel)
Auto-configure gamit ang setup-*
Hindi mo kailangang isulat ang config ng bawat tool nang mano-mano. Ang OmniRoute ay nagdadala ng setup-*
command para sa bawat suportadong CLI na nagbabasa ng live model catalog mula sa isang tumatakbong
OmniRoute (lokal o remote) at sumusulat ng sariling config ng tool sa iyong makina:
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
Bawat isa ay tumatanggap ng --remote <url> --api-key <key> (i-configure ang lokal na tool laban sa
remote OmniRoute), --dry-run (preview nang hindi sumusulat), at --port. Ang mga tool
na walang model auto-discovery (Cline, Kilo, Roo, Goose, Aider, Qwen) ay tumatanggap
ng --model <id> (at --yes para sa non-interactive na mga run). Upang ilunsad ang isang CLI na may
tamang env na injected at walang config na naisulat, gamitin ang generic
omniroute run <target> launcher (claude, codex, aider, goose, opencode, qwen,
gemini — ang mga target at alias ay nagmumula sa bin/cli/cli-manifest.mjs); ang legacy
na per-tool launchers omniroute launch (Claude Code) at omniroute launch-codex
(Codex) ay nananatiling available. Ang Gemini CLI ay launch-only: ito ay isang omniroute run
target ngunit walang setup-*/configure recipe.
Buong sanggunian: ang master table — kung ano ang isinusulat ng bawat command, bawat flag, lokal vs remote, at kung aling mga tool ang nangangailangan ng
/v1suffix — ay matatagpuan sa CLI Integrations.
Pagtakbo ng mga ito sa loob ng isang container
Ang isang setup-* command na isinagawa sa loob ng OmniRoute container ay sumusulat sa
sariling home ng container, na walang host CLI na nagbabasa at nawawala kasama ng
container. Nakikita ito ng OmniRoute at lumalabas ng 2 na may mga tagubilin sa halip na
sumulat. Dalawang suportadong paraan pasulong — i-install ang CLI sa host at
omniroute connect sa container, o i-bind-mount ang mga config dir at itakda ang
CLI_CONFIG_HOME (ang compose host profile). Bawat setup-* command, kasama ang
omniroute configure at omniroute config set, ay tumatanggap ng
--allow-container-write kapag ang pag-configure ng sariling CLIs ng container ang talagang
nasa isip mo; OMNIROUTE_ALLOW_CONTAINER_CONFIG_WRITE=true ay ginagawa ang parehong bagay para
sa server. Tingnan ang
Docker Guide → Pag-configure ng host CLI tools.
Ang apply endpoint ng dashboard (POST /api/cli-tools/apply) ay nagpapatupad ng
parehong guard: sa isang container, ang isang write na ang target ay hindi bind-mounted mula sa
host ay sumasagot ng 422 na may containerEphemeralTarget: true, ang ligtas na error
text at — para sa mga tool na may host recipe (claude, codex, opencode, cline,
kilo, continue) — isang hostSetupCommand (hal. omniroute setup-opencode) na patakbuhin
sa host sa halip; walang naisusulat. Ang dryRun: true ay patuloy na gumagana sa container
mode at nagbabalik ng nabuo na nilalaman + target path nang hindi humahawak sa disk, kaya
maari mong i-preview mula sa dashboard at ilapat sa host. Ang pag-uugaling ito ay
sinadya at naka-regress-guarded ng
tests/unit/api/cli-tools/apply-container-guard.test.ts — huwag kailanman "ayusin" ang 422
sa pamamagitan ng pagtanggal ng guard.
Pinagmulan ng Katotohanan
Ang pinagsamang katalogo ay matatagpuan sa src/shared/constants/cliTools.ts bilang CLI_TOOLS: Record<string, CliCatalogEntry>.
Bawat entry ay may mga field na ito (itinakda sa src/shared/schemas/cliCatalog.ts):
| Field | Type | Paglalarawan |
|---|---|---|
category |
"code" | "agent" |
Aling pahina lumalabas ang tool |
vendor |
string |
Pinagmulan ng tool ("Anthropic", "OSS (P. Gauthier)") |
acpSpawnable |
boolean |
Maaari ring gamitin bilang ACP Agent (ipinapakitang badge) |
baseUrlSupport |
"full" | "partial" | "none" |
Antas ng suporta sa custom endpoint. "none" = MITM backlog |
configType |
"env" | "custom" | "guide" | "custom-builder" | "mitm" |
Mekanismo ng pagsasaayos |
id, name, color, description, docsUrl |
standard | Pangunahing mga field ng pagpapakita |
Ang mga entry na may baseUrlSupport: "none" ay hindi ipinapakita sa mga pahina ng dashboard — sila ay nakarehistro sa MITM backlog para sa plan 11 (tingnan ang _tasks/features-v3.8.6/refactorpages/_orchestration/_plan11-mitm-backlog.md).
Antas ng Kakayahan (naka-katalogo × nadetect × na-configure × nailunsad)
Hindi lahat ng naka-katalogong tool ay nadetect, na-configure o nailunsad. Bawat antas ay may isang nagdedeklarang pinagmulan, at isang drift test ang nagpapanatili sa kanilang pagkakasunod-sunod:
| Antas | Kahulugan | Naka-deklara sa |
|---|---|---|
| Naka-katalogo | Lumalabas sa katalogo ng dashboard (pangalan, vendor, docs, uri ng config) | src/shared/constants/cliTools.ts (CLI_TOOLS) |
| Nadetect | Binary/config detection, health checks, config paths | src/shared/services/cliRuntime.ts (CLI_TOOLS runtime catalog) |
| Na-configure | Suportado ng omniroute configure <cli> (umiiral ang setup recipe) |
bin/cli/cli-manifest.mjs (configure: true) |
| Nailunsad | Suportado ng omniroute run <target> (naka-define ang env/args injection) |
bin/cli/cli-manifest.mjs (run: true) |
Ang bin/cli/cli-manifest.mjs ay ang canonical executable manifest para sa mga CLI command
surfaces: run, configure at ang shell-completion generators ay lahat ay nagmula sa kanilang
target lists, alias resolution (halimbawa kilocode/kilo-code/kilo_cli → kilo)
at --model flag wiring mula dito. Ang drift guard
tests/unit/cli/cli-manifest-drift.test.ts ay nagsasaad na ang manifest, ang runtime
catalog, ang UI catalog at bawat consumer surface ay nananatiling naka-sync — ang isang target na idinagdag sa
isang surface nang walang iba ay nabibigo ang suite sa halip na tahimik na mag-drift.
1. Katalogo ng CLI Code (26 na tool)
Lahat ng tool na lumalabas sa /dashboard/cli-code. Ang mga may baseUrlSupport: none ay nakakabit sa pamamagitan ng MITM o isang manwal na gabay sa halip na isang pasadyang base URL:
| id | pangalan | 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 | none | mitm | false | |
| hermes | Hermes | Nous Research | none | guide | false |
| kiro | Kiro AI | Amazon | none | mitm | false |
| custom | Custom CLI | — | full | custom-builder | false |
Ang mga tool na may baseUrlSupport: "partial" ay nagpapakita ng badge na "⚠ Base URL parcial" sa dashboard card.
2. Katalogo ng CLI Agents (8 tools)
Mga autonomous agents na makikita sa /dashboard/cli-agents:
| id | pangalan | vendor | baseUrlSupport | acpSpawnable |
|---|---|---|---|---|
| hermes-agent | Hermes Agent | Nous Research | full | false |
| openclaw | OpenClaw | OSS (P. Steinberger) | full | true |
| goose | Goose | Block / Linux Foundation | full | true |
| interpreter | Open Interpreter | OSS | full | true |
| warp | Warp AI | Warp Inc. | partial | true |
| agent-deck | Agent Deck | asheshgoplani (OSS) | full | false |
| omp | Oh My Pi | OSS | full | true |
| letta | Letta CLI | Letta | full | false |
3. ACP Agents (/dashboard/acp-agents)
Ang pahinang ito (na pinalitan mula sa /dashboard/agents) ay nagpapakita ng mga CLI na maaaring i-spawn ng OmniRoute bilang mga backend execution engines sa pamamagitan ng stdio/ACP protocol. Ang katalogo ay pinapanatili nang hiwalay sa src/lib/acp/registry.ts at hindi ito kapareho ng CLI_TOOLS.
4. MITM Backlog (hindi ipinapakita sa dashboard)
Ang mga sumusunod na CLI ay hindi sumusuporta sa custom base URL nang katutubo at hindi nakalista sa mga pahina ng CLI Code o CLI Agents. Sila ay mga kandidato para sa MITM interception sa plan 11:
| CLI | Dahilan |
|---|---|
| windsurf | BYOK limitado sa mga napiling modelo ng Claude + corporate URL/token |
| amp | Closed ecosystem (Sourcegraph) |
| amazon-q / kiro-cli | AWS SSO auth, walang custom URL |
| cowork | Anthropic Desktop, walang configurable endpoint |
Tingnan ang _tasks/features-v3.8.6/refactorpages/_orchestration/_plan11-mitm-backlog.md para sa buong cross-reference.
5. Batch Detection API
Ang lahat ng tool detection ay pinagsama-sama sa pamamagitan ng isang endpoint:
GET /api/cli-tools/all-statuses
- Auth:
requireCliToolsAuth(request)(pareho sa iba pang/api/cli-tools/routes) - Nagbabalik:
Record<toolId, ToolBatchStatus>(uri:src/shared/types/cliBatchStatus.ts) - Estratehiya:
Promise.allsa lahat ng tools, 5s timeout bawat tool - Cache: in-memory LRU na naka-index sa config file
mtime. Ang cache ay nawawalan ng bisa kapag nagbago ang mtime. I-reset sa server restart.
Hugis ng tugon bawat tool:
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; // sanitized, walang stack traces
}
6. Mga Tagapangasiwa ng Mga Setting para sa Mga Bagong Tool
Ang mga bagong tool na may configType: "custom" ay may mga nakalaang ruta ng API para sa mga setting:
| Ruta | Tool |
|---|---|
POST /api/cli-tools/forge-settings |
ForgeCode (.forge.toml) |
POST /api/cli-tools/jcode-settings |
jcode (--base-url flag) |
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 coding agent |
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 + dedicated .env key) |
Lahat ng ruta ay gumagamit ng sanitizeErrorMessage() para sa mga tugon ng error (Hard Rule #12).
7. Arkitektura ng Mga Pahina ng Dashboard
CLI Code's (/dashboard/cli-code)
src/app/(dashboard)/dashboard/cli-code/page.tsx— server componentsrc/app/(dashboard)/dashboard/cli-code/CliCodePageClient.tsx— client gridsrc/app/(dashboard)/dashboard/cli-code/[id]/page.tsx— tool detail pagesrc/app/(dashboard)/dashboard/cli-code/components/— 12 specialized tool cards +ToolDetailClient.tsx
CLI Agents (/dashboard/cli-agents)
src/app/(dashboard)/dashboard/cli-agents/page.tsx— server componentsrc/app/(dashboard)/dashboard/cli-agents/CliAgentsPageClient.tsx— client gridsrc/app/(dashboard)/dashboard/cli-agents/[id]/page.tsx— muling ginagamit angToolDetailClient
ACP Agents (/dashboard/acp-agents)
src/app/(dashboard)/dashboard/acp-agents/page.tsx— server component (inilipat mula saagents/)
Mga Shared UI Components (src/shared/components/cli/)
| File | Layunin |
|---|---|
CliToolCard.tsx |
Smart status card (detection + config + endpoint) |
CliConceptCard.tsx |
Per-page concept explanation card |
CliComparisonCard.tsx |
Tatlong-column comparison sa mga uri ng CLI |
BaseUrlSelect.tsx |
Endpoint dropdown (Local/Cloud/Custom) |
ApiKeySelect.tsx |
API key selector |
ManualConfigModal.tsx |
Copiable config snippet modal |
Shared Hook (src/shared/hooks/cli/)
| File | Layunin |
|---|---|
useToolBatchStatuses.ts |
Kinukuha ang /api/cli-tools/all-statuses, namamahala ng loading/refresh state |
8. i18n
Mga bagong namespace na idinagdag sa plano 14 F9:
| Namespace | Layunin |
|---|---|
cliCommon |
Mga shared na string (mga label ng card, mga teksto ng konsepto/paghahambing, mga label ng detail page) |
cliCode |
Mga string ng pahina ng CLI Code |
cliAgents |
Mga string ng pahina ng CLI Agents |
acpAgents |
Mga string ng pahina ng ACP Agents |
Buong PT-BR at EN na pagsasalin ay ibinigay. 39 iba pang mga locale ay awtomatikong bumabalik sa EN sa pamamagitan ng namespace-level merge sa src/i18n/request.ts.
9. Mabilis na Simula
Hakbang 1 — Kumuha ng OmniRoute API Key
- Buksan ang
/dashboard/api-manager→ Lumikha ng API Key - Bigyan ito ng pangalan (hal.
cli-tools) at piliin ang lahat ng pahintulot - Kopyahin ang key — kakailanganin mo ito para sa bawat CLI sa ibaba
Ang iyong key ay mukhang:
sk-xxxxxxxxxxxxxxxx-xxxxxxxxx
Hakbang 2 — I-install ang CLI Tools
Lahat ng npm-based na tools ay nangangailangan ng Node.js 22.22.2+ o 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 (maaaring ilunsad sa pamamagitan ng `omniroute run gemini` → /v1beta surface)
npm install -g @google/gemini-cli
# Aider
pip install aider-chat
# Smelt
cargo install smelt # Batay sa Rust
# Pi coding agent
# tingnan ang https://github.com/zechnerj/pi-coding-agent para sa pag-install
# jcode
# tingnan ang https://github.com/1jehuang/jcode para sa pag-install
Hakbang 3 — I-configure sa pamamagitan ng Dashboard
- Pumunta sa
http://localhost:20128/dashboard/cli-code - Hanapin ang iyong tool sa grid
- I-click ang card upang buksan ang pahina ng detalye ng tool
- Piliin ang iyong API key at base URL
- I-click ang Ilapat ang Config o kopyahin ang manual config snippet
Hakbang 4 — Itakda ang Global Environment Variables
# OmniRoute Universal Endpoint
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"
# Binabasa ng Gemini CLI ang GOOGLE_GEMINI_BASE_URL sa ROOT (ang SDK nito ay nagdadagdag ng /v1beta/... mismo)
export GOOGLE_GEMINI_BASE_URL="http://localhost:20128"
export GEMINI_API_KEY="sk-your-omniroute-key"
Para sa isang remote server palitan ang
localhost:20128ng IP o domain ng server, hal.http://<your-server-ip>:20128.
Hakbang 4 — I-configure ang Bawat Tool
Claude Code
# Lumikha ng ~/.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
Gamitin ang pinagsamang root ng Anthropic gateway para sa Claude Code. Huwag magdagdag ng /v1 dito.
Subukan: claude "say hello"
OpenAI Codex
Ang Modern Codex (v0.137+) ay nagbabasa lamang ng ~/.codex/config.toml — ang luma
config.yaml ay pag-aari ng legacy npm CLI at tahimik na pinapabayaan. Ang API
key ay nananatili sa OMNIROUTE_API_KEY environment variable (env_key), hindi kailanman
sa loob ng file:
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"
Buong sanggunian (mga profile, wire_api, mga context window): CODEX-CLI-CONFIGURATION.md.
Subukan: codex "what is 2+2?"
OpenCode
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
Subukan: opencode
Gamitin ang
opencode run "your prompt" --model omniroute/claude-sonnet-4-5-thinking --variant highupang magpadala ng mga thinking variants.
Cline (CLI o VS Code)
CLI mode:
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 mode:
Mga setting ng Cline extension → API Provider: OpenAI Compatible → Base URL: http://localhost:20128/v1
O gamitin ang OmniRoute dashboard → CLI Tools → Cline → Ilapat ang Config.
KiloCode (CLI o VS Code)
CLI mode:
kilocode --api-base http://localhost:20128/v1 --api-key sk-your-omniroute-key
Mga setting ng VS Code:
{
"kilo-code.openAiBaseUrl": "http://localhost:20128/v1",
"kilo-code.apiKey": "sk-your-omniroute-key"
}
O gamitin ang OmniRoute dashboard → CLI Tools → KiloCode → Ilapat ang Config.
Continue (VS Code Extension)
I-edit ang ~/.continue/config.yaml:
models:
- name: OmniRoute
provider: openai
model: auto
apiBase: http://localhost:20128/v1
apiKey: sk-your-omniroute-key
default: true
I-restart ang VS Code pagkatapos mag-edit.
VS Code Insiders (chatLanguageModels.json)
Gamitin ito kapag ang VS Code Insiders ay naka-configure para sa mga custom endpoint models at nais mong gumana ang OmniRoute nang walang custom header field.
Inirerekomendang lokasyon:
- Linux:
~/.config/Code - Insiders/User/chatLanguageModels.json - Windows:
%APPDATA%/Code - Insiders/User/chatLanguageModels.json
Halimbawa gamit ang tokenized OmniRoute alias:
[
{
"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"
}
}
]
Mga Tala:
- Palitan ang
sk-your-omniroute-keyng isang API key na nilikha sa OmniRoute. - Ang
urlfield ay dapat tumuro sa/api/v1/vscode/{token}/chat/completions. - Ang
modelsUrlfield ay dapat tumuro sa/api/v1/vscode/{token}/models. - Mas mainam ang normal na
/v1+ Bearer header flow kapag sinusuportahan ng client ang mga custom headers. - Ang mga URL-embedded na token ay isang compatibility fallback at maaaring lumitaw sa mga log ng editor o proxy history.
Kiro CLI (Amazon)
# Mag-login sa iyong AWS/Kiro account:
kiro-cli login
# Ang CLI ay gumagamit ng sarili nitong auth — hindi kinakailangan ang OmniRoute bilang backend para sa Kiro CLI mismo.
# Gamitin ang kiro-cli kasama ang OmniRoute para sa iba pang mga tool.
kiro-cli status
Para sa Kiro IDE desktop app, gamitin ang MITM endpoint na inilabas ng OmniRoute
sa ilalim ng /dashboard/cli-tools → Kiro.
10. Internal OmniRoute CLI
Ang omniroute binary ay nagbibigay ng mga utos para sa lifecycle ng server, setup, diagnostics, at pamamahala ng provider. Entry point: bin/omniroute.mjs.
omniroute # Simulan ang server (default port 20128)
omniroute setup # Interactive setup wizard
omniroute doctor # Suriin ang config, DB, ports, runtime
omniroute providers list # Nakakonfigurang koneksyon ng provider
omniroute providers test-all # Subukan ang bawat aktibong koneksyon
omniroute reset-password # I-reset ang admin password
omniroute logs # I-stream ang mga request logs
omniroute health # Detalyadong kalusugan (breakers, cache, memory)
omniroute --version # I-print ang bersyon
omniroute --help # Ipakita ang lahat ng utos
Setup & Initialization
omniroute setup # Interactive setup wizard
omniroute setup --non-interactive # CI/automation mode (nagbabasa ng env vars + flags)
omniroute setup --password '<value>' # Itakda ang admin password nang direkta
omniroute setup --add-provider \
--provider openai \
--api-key '<value>' \
--test-provider # Magdagdag at subukan ang provider sa isang pagkakataon
Mga kinikilalang environment variable para sa non-interactive setup:
| Var | Layunin |
|---|---|
OMNIROUTE_API_KEY |
Provider API key (nakabind sa --api-key sa pamamagitan ng Commander .env()) |
DATA_DIR |
Palitan ang OmniRoute data directory |
Lahat ng iba pang non-interactive inputs ay ipinapasa bilang flags, hindi mga environment variable:
--password, --provider, --provider-name, --provider-base-url, --default-model
(tingnan ang mga opsyon ng omniroute setup sa itaas).
Diagnostics
omniroute doctor # Suriin ang config, DB, ports, runtime, memory, liveness
omniroute doctor --json # Machine-readable JSON
omniroute doctor --no-liveness # Laktawan ang HTTP health probe
omniroute doctor --host 0.0.0.0 # Palitan ang liveness host
omniroute doctor --liveness-url <url> # Buong health endpoint URL override
Ang doctor ay nagsasagawa ng mga pagsusuri: Config, Database, Storage/encryption,
Port availability, Node runtime, Native binary (better-sqlite3),
Memory, at Server liveness. Ito ay lalabas na non-zero kung ang anumang pagsusuri ay fail.
Provider Management
omniroute providers available # Catalog ng OmniRoute provider
omniroute providers available --search openai # I-filter ang catalog ayon sa id/name/alias/category
omniroute providers available --category api-key # I-filter ayon sa kategorya (api-key, oauth, free, ...)
omniroute providers available --json # Machine-readable JSON
omniroute providers list # Nakakonfigurang koneksyon ng provider
omniroute providers list --json
omniroute providers test <id|name> # Subukan ang isang nakakonfigurang koneksyon
omniroute providers test-all # Subukan ang bawat aktibong koneksyon
omniroute providers validate # Local-only structural validation
omniroute providers add <provider> --credential-env PROVIDER_KEY
omniroute providers import ./providers.json --dry-run --json
omniroute providers auth <provider> # Umiiral na OAuth flow
omniroute providers edit <id|name> --default-model <model>
omniroute providers remove <id|name> --yes
providers add/import/auth/edit/remove ay API-first at samakatuwid ay gumagana laban
sa aktibong lokal o remote na konteksto. Ang input ng credential ay dapat gumamit ng
--credential-stdin o --credential-env; --dry-run --json ay nag-uulat lamang ng
redacted presence/shape. Ang providers available ay nagbabasa ng catalog ng OmniRoute;
providers list/test/test-all/validate ay nagpapanatili ng kanilang lokal na SQLite na pag-uugali at
hindi nangangailangan ng server na tumatakbo.
Recovery & Reset
omniroute reset-password # I-reset ang admin password (din: omniroute-reset-password)
omniroute reset-encrypted-columns # Ipakita ang babala + dry-run para sa reset ng encrypted credential
omniroute reset-encrypted-columns --force # Talagang i-null out ang encrypted credentials sa SQLite
Credential Export (⚠ hawakan nang maingat)
omniroute auth export # Ipakita ang babala + confirmation gate — walang DB access
omniroute auth export --force # I-export ang LAHAT ng DECRYPTED credentials ng koneksyon sa stdout bilang JSON
omniroute auth export --force --id <id> # I-export lamang ang tumutugmang koneksyon
omniroute auth export --force --format env # Maglabas ng OMNIROUTE_<PROVIDER>_<FIELD>=<value> na mga linya
omniroute auth export --force --out creds.json # Isulat sa isang file (nilikha na may 0600 permissions)
Ang auth export ay local-only (direktang pagbabasa ng SQLite, walang HTTP route) at sinadyang nagpi-print/nagsusulat ng
plaintext apiKey/accessToken/refreshToken/idToken na mga halaga — iyon ang tampok, hindi isang
bug. Walang nababasa mula sa database, at walang nade-decrypt, nang walang --force. Isang stderr
warning banner ang palaging nagpi-print bago lumabas ang anumang plaintext. Nangangailangan ng STORAGE_ENCRYPTION_KEY na
itakda. Ang isang field na nabigong ma-decrypt (stale key, corrupt ciphertext) ay iniulat bilang
<field>DecryptFailed: true sa halip na itigil ang buong export o mag-leak ng underlying error.
Iba pang subcommands
Ang mga ito ay nag-aassume ng tumatakbong OmniRoute server, maliban kung nakasaad na iba:
omniroute status # Komprehensibong runtime status
omniroute logs # I-stream ang mga request logs (--json, --search, --follow)
omniroute config show # Ipakita ang kasalukuyang configuration
omniroute provider list # Ilista ang mga available na provider (alias ng providers list)
omniroute provider add # Irehistro ang OmniRoute bilang provider sa isang tool
omniroute keys add | list | remove # Pamahalaan ang API keys
omniroute models [provider] # Ilista ang mga modelo (--json, --search)
omniroute combo list | switch | create | delete
omniroute backup # Snapshot config + DB
omniroute restore # Ibalik mula sa nakaraang snapshot
omniroute health # Detalyadong kalusugan (breakers, cache, memory)
omniroute quota # Paggamit ng provider quota
omniroute cache # Katayuan ng cache
omniroute cache clear # I-clear ang semantic + signature caches
omniroute mcp status | restart # Katayuan ng MCP server / restart
omniroute a2a status | card # Katayuan ng A2A server / agent card
omniroute tunnel list | create | stop # Pamahalaan ang mga tunnel (cloudflare/tailscale/ngrok)
omniroute env show | get <k> | set <k> <v> # Suriin / itakda ang mga env vars (temporary)
omniroute test # Provider connectivity smoke test
omniroute update # Suriin ang mga update
omniroute completion # Lumikha ng shell completion
Karaniwang flags
| Flag | Paglalarawan |
|---|---|
--no-open |
Huwag awtomatikong buksan ang browser sa pagsisimula |
--port <n> |
Palitan ang API port (default 20128) |
--mcp |
Tumakbo bilang MCP server sa pamamagitan ng stdio (para sa IDEs) |
--non-interactive |
CI mode (walang prompts; nagbabasa mula sa env/flags) |
--json |
Machine-readable JSON output (doctor, providers, atbp.) |
--help, -h |
Ipakita ang command-specific help |
--version, -v |
I-print ang naka-install na bersyon |
Mga Magagamit na API Endpoint
| Endpoint | Paglalarawan | Gamit Para |
|---|---|---|
/v1/chat/completions |
Karaniwang chat (lahat ng provider) | Lahat ng modernong tool |
/v1/responses |
Responses API (OpenAI format) | Codex, agentic workflows |
/v1/completions |
Legacy text completions | Mas lumang tool na gumagamit ng prompt: |
/v1/embeddings |
Text embeddings | RAG, search |
/v1/images/generations |
Paglikha ng imahe | GPT-Image, Flux, atbp. |
/v1/audio/speech |
Text-to-speech | ElevenLabs, OpenAI TTS |
/v1/audio/transcriptions |
Speech-to-text | Deepgram, AssemblyAI |
Mga halimbawa na handang i-paste na may tokenized na OmniRoute URL:
Token example: sk-a3ab3c080beaee3a-69f4a4-070d71af
Karaniwang OpenAI base: http://localhost:20128/v1
VS Code models: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/models
VS Code chat: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/chat/completions
VS Code responses: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/responses
Ollama tags: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/api/tags
Ollama chat: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/api/chat
Pagsusuri ng Problema
| Error | Sanhi | Ayos |
|---|---|---|
Connection refused |
Hindi tumatakbo ang OmniRoute | omniroute serve |
401 Unauthorized |
Mali ang API key | Suriin sa /dashboard/api-manager |
No combo configured |
Walang aktibong routing combo | I-set up sa /dashboard/combos |
| CLI shows "not installed" | Binary hindi nasa PATH | Suriin ang which <command> |
| Dashboard shows "not detected" after install | Cache stale | I-click ang "⟳ Refresh detection" sa dashboard |
Lumang link /dashboard/cli-tools |
Pre-v3.8.6 bookmark | Auto-redirected sa /dashboard/cli-code (308) |
Lumang link /dashboard/agents |
Pre-v3.8.6 bookmark | Auto-redirected sa /dashboard/acp-agents (308) |