From f4571094c26cb90904933269b2bc359af22b3462 Mon Sep 17 00:00:00 2001 From: diegosouzapw Date: Wed, 27 May 2026 23:50:13 -0300 Subject: [PATCH] feat(skills): generate 42 SKILL.md (22 API + 20 CLI) + prune 18 omniroute-* orphans --- skills/cli-a2a/SKILL.md | 142 +++++++++ skills/cli-backup-sync/SKILL.md | 367 ++++++++++++++++++++++ skills/cli-batches/SKILL.md | 183 +++++++++++ skills/cli-chat/SKILL.md | 78 +++++ skills/cli-compression/SKILL.md | 157 ++++++++++ skills/cli-contexts/SKILL.md | 382 +++++++++++++++++++++++ skills/cli-cost-usage/SKILL.md | 252 ++++++++++++++++ skills/cli-eval/SKILL.md | 148 ++++++++- skills/cli-health/SKILL.md | 88 ++++++ skills/cli-keys/SKILL.md | 226 ++++++++++++++ skills/cli-mcp/SKILL.md | 150 +++++++++ skills/cli-models/SKILL.md | 31 ++ skills/cli-plugins-skills/SKILL.md | 385 ++++++++++++++++++++++++ skills/cli-policy-audit/SKILL.md | 244 +++++++++++++++ skills/cli-providers/SKILL.md | 185 +++++++++++- skills/cli-resilience/SKILL.md | 158 ++++++++++ skills/cli-routing/SKILL.md | 91 ++++++ skills/cli-serve/SKILL.md | 69 ++++- skills/cli-setup/SKILL.md | 261 ++++++++++++++++ skills/cli-tunnel/SKILL.md | 106 +++++++ skills/omni-agents-a2a/SKILL.md | 18 +- skills/omni-api-keys/SKILL.md | 48 +++ skills/omni-auth/SKILL.md | 39 ++- skills/omni-budget/SKILL.md | 39 +++ skills/omni-cache/SKILL.md | 57 ++++ skills/omni-cli-tools/SKILL.md | 320 ++++++++++++++++++++ skills/omni-combos-routing/SKILL.md | 110 ++++++- skills/omni-compression/SKILL.md | 46 ++- skills/omni-context-rtk/SKILL.md | 68 +++++ skills/omni-db-backups/SKILL.md | 20 ++ skills/omni-inference/SKILL.md | 211 ++++++++++++- skills/omni-mcp/SKILL.md | 18 +- skills/omni-models/SKILL.md | 59 ++++ skills/omni-providers/SKILL.md | 179 +++++++++++ skills/omni-proxies/SKILL.md | 20 ++ skills/omni-resilience/SKILL.md | 28 +- skills/omni-settings/SKILL.md | 222 ++++++++++++++ skills/omni-sync-cloud/SKILL.md | 98 ++++++ skills/omni-tunnels/SKILL.md | 20 ++ skills/omni-usage-logs/SKILL.md | 115 +++++++ skills/omni-version-manager/SKILL.md | 221 ++++++++++++++ skills/omni-webhooks/SKILL.md | 20 ++ skills/omniroute-a2a/SKILL.md | 71 ----- skills/omniroute-chat/SKILL.md | 68 ----- skills/omniroute-cli-admin/SKILL.md | 145 --------- skills/omniroute-cli-cloud/SKILL.md | 120 -------- skills/omniroute-cli-eval/SKILL.md | 113 ------- skills/omniroute-cli-providers/SKILL.md | 145 --------- skills/omniroute-cli/SKILL.md | 104 ------- skills/omniroute-compression/SKILL.md | 131 -------- skills/omniroute-embeddings/SKILL.md | 45 --- skills/omniroute-image/SKILL.md | 45 --- skills/omniroute-mcp/SKILL.md | 71 ----- skills/omniroute-monitoring/SKILL.md | 114 ------- skills/omniroute-routing/SKILL.md | 129 -------- skills/omniroute-stt/SKILL.md | 42 --- skills/omniroute-tts/SKILL.md | 45 --- skills/omniroute-web-fetch/SKILL.md | 47 --- skills/omniroute-web-search/SKILL.md | 49 --- skills/omniroute/SKILL.md | 76 ----- 60 files changed, 5669 insertions(+), 1570 deletions(-) create mode 100644 skills/cli-a2a/SKILL.md create mode 100644 skills/cli-backup-sync/SKILL.md create mode 100644 skills/cli-batches/SKILL.md create mode 100644 skills/cli-chat/SKILL.md create mode 100644 skills/cli-compression/SKILL.md create mode 100644 skills/cli-contexts/SKILL.md create mode 100644 skills/cli-cost-usage/SKILL.md create mode 100644 skills/cli-health/SKILL.md create mode 100644 skills/cli-keys/SKILL.md create mode 100644 skills/cli-mcp/SKILL.md create mode 100644 skills/cli-models/SKILL.md create mode 100644 skills/cli-plugins-skills/SKILL.md create mode 100644 skills/cli-policy-audit/SKILL.md create mode 100644 skills/cli-resilience/SKILL.md create mode 100644 skills/cli-routing/SKILL.md create mode 100644 skills/cli-setup/SKILL.md create mode 100644 skills/cli-tunnel/SKILL.md create mode 100644 skills/omni-api-keys/SKILL.md create mode 100644 skills/omni-budget/SKILL.md create mode 100644 skills/omni-cache/SKILL.md create mode 100644 skills/omni-cli-tools/SKILL.md create mode 100644 skills/omni-context-rtk/SKILL.md create mode 100644 skills/omni-db-backups/SKILL.md create mode 100644 skills/omni-models/SKILL.md create mode 100644 skills/omni-providers/SKILL.md create mode 100644 skills/omni-proxies/SKILL.md create mode 100644 skills/omni-settings/SKILL.md create mode 100644 skills/omni-sync-cloud/SKILL.md create mode 100644 skills/omni-tunnels/SKILL.md create mode 100644 skills/omni-usage-logs/SKILL.md create mode 100644 skills/omni-version-manager/SKILL.md create mode 100644 skills/omni-webhooks/SKILL.md delete mode 100644 skills/omniroute-a2a/SKILL.md delete mode 100644 skills/omniroute-chat/SKILL.md delete mode 100644 skills/omniroute-cli-admin/SKILL.md delete mode 100644 skills/omniroute-cli-cloud/SKILL.md delete mode 100644 skills/omniroute-cli-eval/SKILL.md delete mode 100644 skills/omniroute-cli-providers/SKILL.md delete mode 100644 skills/omniroute-cli/SKILL.md delete mode 100644 skills/omniroute-compression/SKILL.md delete mode 100644 skills/omniroute-embeddings/SKILL.md delete mode 100644 skills/omniroute-image/SKILL.md delete mode 100644 skills/omniroute-mcp/SKILL.md delete mode 100644 skills/omniroute-monitoring/SKILL.md delete mode 100644 skills/omniroute-routing/SKILL.md delete mode 100644 skills/omniroute-stt/SKILL.md delete mode 100644 skills/omniroute-tts/SKILL.md delete mode 100644 skills/omniroute-web-fetch/SKILL.md delete mode 100644 skills/omniroute-web-search/SKILL.md delete mode 100644 skills/omniroute/SKILL.md diff --git a/skills/cli-a2a/SKILL.md b/skills/cli-a2a/SKILL.md new file mode 100644 index 0000000000..8d236b2276 --- /dev/null +++ b/skills/cli-a2a/SKILL.md @@ -0,0 +1,142 @@ +--- +name: cli-a2a +description: Interact with the OmniRoute A2A server from the CLI. Send tasks, inspect skill execution history, and test the JSON-RPC 2.0 agent-to-agent protocol interactively. +--- + + +## Visão geral + +Interact with the OmniRoute A2A server from the CLI. Send tasks, inspect skill execution history, and test the JSON-RPC 2.0 agent-to-agent protocol interactively. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `a2a` + +Agent-to-Agent (A2A) server + +**Exemplo:** + +```bash +omniroute a2a +``` + +### `a2a status` + +Show A2A server status + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute a2a status +``` + +### `a2a card` + +Print the Agent Card JSON + +**Exemplo:** + +```bash +omniroute a2a card +``` + +### `a2a skills` + +**Exemplo:** + +```bash +omniroute a2a skills +``` + +### `a2a invoke ` + +**Flags:** + +- `--input ` +- `--input-file ` +- `--wait` +- `--timeout ` + +**Exemplo:** + +```bash +omniroute a2a invoke +``` + +### `a2a tasks` + +**Exemplo:** + +```bash +omniroute a2a tasks +``` + +### `a2a list` + +**Flags:** + +- `--status ` +- `--skill ` +- `--limit ` +- `--since ` + +**Exemplo:** + +```bash +omniroute a2a list +``` + +### `a2a get ` + +**Exemplo:** + +```bash +omniroute a2a get +``` + +### `a2a cancel ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute a2a cancel +``` + +### `a2a watch ` + +**Exemplo:** + +```bash +omniroute a2a watch +``` + +### `a2a stream ` + +**Exemplo:** + +```bash +omniroute a2a stream +``` + +### `a2a logs ` + +**Exemplo:** + +```bash +omniroute a2a logs +``` diff --git a/skills/cli-backup-sync/SKILL.md b/skills/cli-backup-sync/SKILL.md new file mode 100644 index 0000000000..ef1de7c4e6 --- /dev/null +++ b/skills/cli-backup-sync/SKILL.md @@ -0,0 +1,367 @@ +--- +name: cli-backup-sync +description: Backup and restore OmniRoute data from the CLI. Trigger incremental snapshots, sync to cloud storage, manage backup schedules, and restore from archive files. +--- + + +## Visão geral + +Backup and restore OmniRoute data from the CLI. Trigger incremental snapshots, sync to cloud storage, manage backup schedules, and restore from archive files. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `backup` + +**Exemplo:** + +```bash +omniroute backup +``` + +### `backup create` + +**Flags:** + +- `--name ` +- `--cloud` +- `--encrypt` +- `--key-file ` +- `--exclude ` +- `--retention ` + +**Exemplo:** + +```bash +omniroute backup create +``` + +### `backup auto` + +**Exemplo:** + +```bash +omniroute backup auto +``` + +### `backup enable` + +**Flags:** + +- `--cron ` +- `--cloud` +- `--encrypt` +- `--retention ` + +**Exemplo:** + +```bash +omniroute backup enable +``` + +### `backup disable` + +**Exemplo:** + +```bash +omniroute backup disable +``` + +### `backup status` + +**Flags:** + +- `--name ` +- `--cloud` +- `--encrypt` +- `--key-file ` +- `--exclude ` +- `--retention ` + +**Exemplo:** + +```bash +omniroute backup status +``` + +### `backup restore [backupId]` + +**Flags:** + +- `--list` +- `--yes` + +**Exemplo:** + +```bash +omniroute backup restore [backupId] +``` + +### `task` + +**Exemplo:** + +```bash +omniroute task +``` + +### `cloud create` + +**Flags:** + +- `--title ` +- `--prompt

` +- `--prompt-file ` +- `--repo ` +- `--branch ` +- `--metadata ` + +**Exemplo:** + +```bash +omniroute cloud create +``` + +### `cloud list` + +**Flags:** + +- `--status ` +- `--limit ` + +**Exemplo:** + +```bash +omniroute cloud list +``` + +### `cloud get ` + +**Exemplo:** + +```bash +omniroute cloud get +``` + +### `cloud status ` + +**Exemplo:** + +```bash +omniroute cloud status +``` + +### `cloud cancel ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute cloud cancel +``` + +### `cloud approve ` + +**Exemplo:** + +```bash +omniroute cloud approve +``` + +### `cloud message ` + +**Exemplo:** + +```bash +omniroute cloud message +``` + +### `cloud sources ` + +**Exemplo:** + +```bash +omniroute cloud sources +``` + +### `cloud cloud` + +**Exemplo:** + +```bash +omniroute cloud cloud +``` + +### `cloud agents` + +**Exemplo:** + +```bash +omniroute cloud agents +``` + +### `cloud auth` + +**Flags:** + +- `--no-browser` +- `--timeout ` + +**Exemplo:** + +```bash +omniroute cloud auth +``` + +### `sync` + +**Exemplo:** + +```bash +omniroute sync +``` + +### `sync push` + +**Flags:** + +- `--target ` +- `--bundle ` +- `--dry-run` + +**Exemplo:** + +```bash +omniroute sync push +``` + +### `sync pull` + +**Flags:** + +- `--source ` +- `--merge` +- `--replace` +- `--dry-run` + +**Exemplo:** + +```bash +omniroute sync pull +``` + +### `sync diff` + +**Flags:** + +- `--source ` +- `--target ` + +**Exemplo:** + +```bash +omniroute sync diff +``` + +### `sync bundle ` + +**Flags:** + +- `--include ` + +**Exemplo:** + +```bash +omniroute sync bundle +``` + +### `sync import ` + +**Flags:** + +- `--dry-run` + +**Exemplo:** + +```bash +omniroute sync import +``` + +### `sync initialize` + +**Flags:** + +- `--from-cloud` + +**Exemplo:** + +```bash +omniroute sync initialize +``` + +### `sync tokens` + +**Exemplo:** + +```bash +omniroute sync tokens +``` + +### `sync list` + +**Exemplo:** + +```bash +omniroute sync list +``` + +### `sync create` + +**Flags:** + +- `--name ` +- `--scope ` +- `--ttl ` + +**Exemplo:** + +```bash +omniroute sync create +``` + +### `sync revoke ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute sync revoke +``` + +### `sync status` + +**Exemplo:** + +```bash +omniroute sync status +``` + +### `sync resolve` + +**Exemplo:** + +```bash +omniroute sync resolve +``` diff --git a/skills/cli-batches/SKILL.md b/skills/cli-batches/SKILL.md new file mode 100644 index 0000000000..1f61eef8c0 --- /dev/null +++ b/skills/cli-batches/SKILL.md @@ -0,0 +1,183 @@ +--- +name: cli-batches +description: Submit and monitor batch inference jobs from the CLI. Upload and manage files for batch processing, retrieve results, and integrate batch pipelines with CI/CD workflows. +--- + + +## Visão geral + +Submit and monitor batch inference jobs from the CLI. Upload and manage files for batch processing, retrieve results, and integrate batch pipelines with CI/CD workflows. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `batches` + +**Exemplo:** + +```bash +omniroute batches +``` + +### `batches list` + +**Flags:** + +- `--status ` +- `--limit ` + +**Exemplo:** + +```bash +omniroute batches list +``` + +### `batches get ` + +**Exemplo:** + +```bash +omniroute batches get +``` + +### `batches create` + +**Flags:** + +- `--endpoint ` +- `--completion-window ` +- `--metadata ` + +**Exemplo:** + +```bash +omniroute batches create +``` + +### `batches submit` + +**Flags:** + +- `--endpoint ` +- `--wait` + +**Exemplo:** + +```bash +omniroute batches submit +``` + +### `batches cancel ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute batches cancel +``` + +### `batches wait ` + +**Flags:** + +- `--timeout ` + +**Exemplo:** + +```bash +omniroute batches wait +``` + +### `batches output ` + +**Flags:** + +- `--out ` + +**Exemplo:** + +```bash +omniroute batches output +``` + +### `batches errors ` + +**Flags:** + +- `--out ` + +**Exemplo:** + +```bash +omniroute batches errors +``` + +### `files` + +**Exemplo:** + +```bash +omniroute files +``` + +### `files list` + +**Flags:** + +- `--purpose

` +- `--limit ` + +**Exemplo:** + +```bash +omniroute files list +``` + +### `files get ` + +**Exemplo:** + +```bash +omniroute files get +``` + +### `files upload ` + +**Exemplo:** + +```bash +omniroute files upload +``` + +### `files content ` + +**Flags:** + +- `--out ` + +**Exemplo:** + +```bash +omniroute files content +``` + +### `files delete ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute files delete +``` diff --git a/skills/cli-chat/SKILL.md b/skills/cli-chat/SKILL.md new file mode 100644 index 0000000000..f07510b2e5 --- /dev/null +++ b/skills/cli-chat/SKILL.md @@ -0,0 +1,78 @@ +--- +name: cli-chat +description: Send chat completions, stream responses, and start an interactive REPL session from the CLI. Supports all OmniRoute providers, combo routing, and system prompt configuration. +--- + + +## Visão geral + +Send chat completions, stream responses, and start an interactive REPL session from the CLI. Supports all OmniRoute providers, combo routing, and system prompt configuration. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `chat [prompt]` + +**Flags:** + +- `--file ` +- `--stdin` +- `-s, --system ` +- `-m, --model ` +- `--max-tokens ` +- `--temperature ` +- `--top-p

` +- `--reasoning-effort ` +- `--thinking-budget ` +- `--combo ` +- `--responses-api` +- `--stream` +- `--no-history` + +**Exemplo:** + +```bash +omniroute chat [prompt] +``` + +### `repl` + +**Flags:** + +- `-m, --model ` +- `--combo ` +- `-s, --system ` +- `--resume ` + +**Exemplo:** + +```bash +omniroute repl +``` + +### `stream [prompt]` + +**Flags:** + +- `--file ` +- `--stdin` +- `-m, --model ` +- `-s, --system ` +- `--combo ` +- `--max-tokens ` +- `--responses-api` +- `--raw` +- `--debug` +- `--save ` + +**Exemplo:** + +```bash +omniroute stream [prompt] +``` diff --git a/skills/cli-compression/SKILL.md b/skills/cli-compression/SKILL.md new file mode 100644 index 0000000000..6bb0c33db0 --- /dev/null +++ b/skills/cli-compression/SKILL.md @@ -0,0 +1,157 @@ +--- +name: cli-compression +description: Configure and test prompt compression from the CLI. Manage RTK filters, Caveman rules, stacked compression modes, and preview compression output with real prompts. +--- + + +## Visão geral + +Configure and test prompt compression from the CLI. Manage RTK filters, Caveman rules, stacked compression modes, and preview compression output with real prompts. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `compression` + +**Exemplo:** + +```bash +omniroute compression +``` + +### `compression status` + +**Exemplo:** + +```bash +omniroute compression status +``` + +### `compression configure` + +**Flags:** + +- `--engine ` +- `--caveman-aggressiveness ` +- `--rtk-budget ` +- `--language-pack

` + +**Exemplo:** + +```bash +omniroute compression configure +``` + +### `compression engine` + +**Exemplo:** + +```bash +omniroute compression engine +``` + +### `compression set ` + +**Exemplo:** + +```bash +omniroute compression set +``` + +### `compression get` + +**Exemplo:** + +```bash +omniroute compression get +``` + +### `compression combos` + +**Exemplo:** + +```bash +omniroute compression combos +``` + +### `compression list` + +**Exemplo:** + +```bash +omniroute compression list +``` + +### `compression stats` + +**Flags:** + +- `--period

` + +**Exemplo:** + +```bash +omniroute compression stats +``` + +### `compression rules` + +**Exemplo:** + +```bash +omniroute compression rules +``` + +### `compression list` + +**Exemplo:** + +```bash +omniroute compression list +``` + +### `compression add` + +**Flags:** + +- `--replacement ` + +**Exemplo:** + +```bash +omniroute compression add +``` + +### `compression remove ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute compression remove +``` + +### `compression language-packs` + +**Exemplo:** + +```bash +omniroute compression language-packs +``` + +### `compression preview` + +**Exemplo:** + +```bash +omniroute compression preview +``` diff --git a/skills/cli-contexts/SKILL.md b/skills/cli-contexts/SKILL.md new file mode 100644 index 0000000000..b4a79b4177 --- /dev/null +++ b/skills/cli-contexts/SKILL.md @@ -0,0 +1,382 @@ +--- +name: cli-contexts +description: Manage context engineering configurations, RTK filter sets, and conversation sessions from the CLI. Apply context-relay settings and inspect active context pipelines. +--- + + +## Visão geral + +Manage context engineering configurations, RTK filter sets, and conversation sessions from the CLI. Apply context-relay settings and inspect active context pipelines. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `context-eng` + +**Exemplo:** + +```bash +omniroute context-eng +``` + +### `context-eng analytics` + +**Flags:** + +- `--period

` + +**Exemplo:** + +```bash +omniroute context-eng analytics +``` + +### `context-eng caveman` + +**Exemplo:** + +```bash +omniroute context-eng caveman +``` + +### `context-eng config` + +**Exemplo:** + +```bash +omniroute context-eng config +``` + +### `context-eng show` + +**Exemplo:** + +```bash +omniroute context-eng show +``` + +### `context-eng set` + +**Flags:** + +- `--aggressiveness ` +- `--max-shrink-pct ` +- `--preserve-tags ` + +**Exemplo:** + +```bash +omniroute context-eng set +``` + +### `context-eng rtk` + +**Exemplo:** + +```bash +omniroute context-eng rtk +``` + +### `context-eng config` + +**Exemplo:** + +```bash +omniroute context-eng config +``` + +### `context-eng show` + +**Exemplo:** + +```bash +omniroute context-eng show +``` + +### `context-eng set` + +**Flags:** + +- `--token-budget ` +- `--reserve-pct ` + +**Exemplo:** + +```bash +omniroute context-eng set +``` + +### `context-eng filters` + +**Exemplo:** + +```bash +omniroute context-eng filters +``` + +### `context-eng list` + +**Exemplo:** + +```bash +omniroute context-eng list +``` + +### `context-eng add` + +**Flags:** + +- `--priority ` +- `--action ` + +**Exemplo:** + +```bash +omniroute context-eng add +``` + +### `context-eng remove ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute context-eng remove +``` + +### `context-eng test` + +**Exemplo:** + +```bash +omniroute context-eng test +``` + +### `context-eng raw-output ` + +**Exemplo:** + +```bash +omniroute context-eng raw-output +``` + +### `context-eng combos` + +**Exemplo:** + +```bash +omniroute context-eng combos +``` + +### `context-eng list` + +**Exemplo:** + +```bash +omniroute context-eng list +``` + +### `context-eng get ` + +**Exemplo:** + +```bash +omniroute context-eng get +``` + +### `context-eng assignments ` + +**Exemplo:** + +```bash +omniroute context-eng assignments +``` + +### `contexts` + +**Exemplo:** + +```bash +omniroute contexts +``` + +### `contexts list` + +List all contexts + +**Exemplo:** + +```bash +omniroute contexts list +``` + +### `contexts add ` + +Add a new context + +**Flags:** + +- `--api-key ` +- `--api-key-stdin` +- `--description ` + +**Exemplo:** + +```bash +omniroute contexts add +``` + +### `contexts use ` + +Switch active context + +**Exemplo:** + +```bash +omniroute contexts use +``` + +### `contexts current` + +Show current active context name + +**Exemplo:** + +```bash +omniroute contexts current +``` + +### `contexts show ` + +Show context details + +**Exemplo:** + +```bash +omniroute contexts show +``` + +### `contexts remove ` + +Remove a context + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute contexts remove +``` + +### `contexts rename ` + +Rename a context + +**Exemplo:** + +```bash +omniroute contexts rename +``` + +### `contexts export` + +Export contexts to JSON + +**Flags:** + +- `--out ` +- `--no-secrets` + +**Exemplo:** + +```bash +omniroute contexts export +``` + +### `contexts import ` + +Import contexts from a JSON file + +**Flags:** + +- `--merge` + +**Exemplo:** + +```bash +omniroute contexts import +``` + +### `sessions` + +**Exemplo:** + +```bash +omniroute sessions +``` + +### `sessions list` + +**Flags:** + +- `--user ` +- `--kind ` +- `--active` +- `--limit ` + +**Exemplo:** + +```bash +omniroute sessions list +``` + +### `sessions show ` + +**Exemplo:** + +```bash +omniroute sessions show +``` + +### `sessions expire ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute sessions expire +``` + +### `sessions expire-all` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute sessions expire-all +``` + +### `sessions current` + +**Exemplo:** + +```bash +omniroute sessions current +``` diff --git a/skills/cli-cost-usage/SKILL.md b/skills/cli-cost-usage/SKILL.md new file mode 100644 index 0000000000..fa6af67910 --- /dev/null +++ b/skills/cli-cost-usage/SKILL.md @@ -0,0 +1,252 @@ +--- +name: cli-cost-usage +description: View cost breakdowns, token usage, and call logs from the CLI. Filter by provider, model, or date range. Export usage reports and inspect per-connection spending. +--- + + +## Visão geral + +View cost breakdowns, token usage, and call logs from the CLI. Filter by provider, model, or date range. Export usage reports and inspect per-connection spending. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `cost` + +**Flags:** + +- `--period ` +- `--since ` +- `--until ` +- `--group-by ` +- `--api-key ` +- `--limit ` + +**Exemplo:** + +```bash +omniroute cost +``` + +### `pricing` + +**Exemplo:** + +```bash +omniroute pricing +``` + +### `pricing sync` + +**Flags:** + +- `--provider

` +- `--force` + +**Exemplo:** + +```bash +omniroute pricing sync +``` + +### `pricing list` + +**Flags:** + +- `--provider

` +- `--model ` +- `--limit ` + +**Exemplo:** + +```bash +omniroute pricing list +``` + +### `pricing get ` + +**Exemplo:** + +```bash +omniroute pricing get +``` + +### `pricing defaults` + +**Exemplo:** + +```bash +omniroute pricing defaults +``` + +### `pricing show` + +**Exemplo:** + +```bash +omniroute pricing show +``` + +### `pricing set` + +**Flags:** + +- `--input

` +- `--output

` +- `--cache-read

` +- `--cache-write

` + +**Exemplo:** + +```bash +omniroute pricing set +``` + +### `pricing diff` + +**Flags:** + +- `--model ` + +**Exemplo:** + +```bash +omniroute pricing diff +``` + +### `usage` + +**Exemplo:** + +```bash +omniroute usage +``` + +### `usage analytics` + +**Flags:** + +- `--period ` +- `--provider ` + +**Exemplo:** + +```bash +omniroute usage analytics +``` + +### `usage budget` + +**Exemplo:** + +```bash +omniroute usage budget +``` + +### `usage list` + +**Exemplo:** + +```bash +omniroute usage list +``` + +### `usage get [scope]` + +**Exemplo:** + +```bash +omniroute usage get [scope] +``` + +### `usage set ` + +**Flags:** + +- `--scope ` +- `--period

` + +**Exemplo:** + +```bash +omniroute usage set +``` + +### `usage reset [scope]` + +**Exemplo:** + +```bash +omniroute usage reset [scope] +``` + +### `usage quota` + +**Flags:** + +- `--provider ` +- `--check` + +**Exemplo:** + +```bash +omniroute usage quota +``` + +### `usage logs` + +**Flags:** + +- `--limit ` +- `--search ` +- `--since ` +- `--follow` +- `--api-key ` + +**Exemplo:** + +```bash +omniroute usage logs +``` + +### `usage utilization` + +**Flags:** + +- `--api-key ` + +**Exemplo:** + +```bash +omniroute usage utilization +``` + +### `usage history` + +**Flags:** + +- `--limit ` + +**Exemplo:** + +```bash +omniroute usage history +``` + +### `usage proxy-logs` + +**Flags:** + +- `--limit ` + +**Exemplo:** + +```bash +omniroute usage proxy-logs +``` diff --git a/skills/cli-eval/SKILL.md b/skills/cli-eval/SKILL.md index 769deff4be..1810f057e4 100644 --- a/skills/cli-eval/SKILL.md +++ b/skills/cli-eval/SKILL.md @@ -1,7 +1,153 @@ --- name: cli-eval -description: Run and manage OmniRoute eval suites from the CLI — create suites, run benchmarks, watch live results, view scorecards, and compare model performance. +description: Create and run evaluation suites, watch live benchmark progress, view scorecards, compare model performance, and integrate eval runs with CI workflows from the CLI. --- + + +## Visão geral + +Create and run evaluation suites, watch live benchmark progress, view scorecards, compare model performance, and integrate eval runs with CI workflows from the CLI. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `eval` + +**Exemplo:** + +```bash +omniroute eval +``` + +### `eval suites` + +**Exemplo:** + +```bash +omniroute eval suites +``` + +### `eval list` + +**Exemplo:** + +```bash +omniroute eval list +``` + +### `eval get ` + +**Exemplo:** + +```bash +omniroute eval get +``` + +### `eval create` + +**Flags:** + +- `--file ` + +**Exemplo:** + +```bash +omniroute eval create +``` + +### `eval run ` + +**Flags:** + +- `-m, --model ` +- `--combo ` +- `--concurrency ` +- `--tag ` +- `--watch` + +**Exemplo:** + +```bash +omniroute eval run +``` + +### `eval list` + +**Flags:** + +- `--suite ` +- `--status ` +- `--since ` +- `--limit ` + +**Exemplo:** + +```bash +omniroute eval list +``` + +### `eval get ` + +**Exemplo:** + +```bash +omniroute eval get +``` + +### `eval results ` + +**Flags:** + +- `--failed` + +**Exemplo:** + +```bash +omniroute eval results +``` + +### `eval cancel ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute eval cancel +``` + +### `eval scorecard ` + +**Exemplo:** + +```bash +omniroute eval scorecard +``` + +### `simulate [prompt]` + +**Flags:** + +- `--file ` +- `-m, --model ` +- `--combo ` +- `--reasoning-effort ` +- `--thinking-budget ` +- `--explain` + +**Exemplo:** + +```bash +omniroute simulate [prompt] +``` diff --git a/skills/cli-health/SKILL.md b/skills/cli-health/SKILL.md new file mode 100644 index 0000000000..8547f1fa1d --- /dev/null +++ b/skills/cli-health/SKILL.md @@ -0,0 +1,88 @@ +--- +name: cli-health +description: Check server health, component status, and live metrics from the CLI. Run `health`, `health components`, and `health watch` for a real-time dashboard of circuit breakers and provider status. +--- + + +## Visão geral + +Check server health, component status, and live metrics from the CLI. Run `health`, `health components`, and `health watch` for a real-time dashboard of circuit breakers and provider status. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `doctor` + +**Flags:** + +- `--no-liveness` +- `--host ` +- `--liveness-url ` + +**Exemplo:** + +```bash +omniroute doctor +``` + +### `health` + +**Flags:** + +- `-v, --verbose` +- `--json` +- `--alerts-only` + +**Exemplo:** + +```bash +omniroute health +``` + +### `health components` + +List health components and their status + +**Flags:** + +- `--alerts-only` + +**Exemplo:** + +```bash +omniroute health components +``` + +### `health watch` + +Live dashboard — refresh every N seconds + +**Flags:** + +- `--interval ` + +**Exemplo:** + +```bash +omniroute health watch +``` + +### `status` + +Show OmniRoute status dashboard + +**Flags:** + +- `-v, --verbose` + +**Exemplo:** + +```bash +omniroute status +``` diff --git a/skills/cli-keys/SKILL.md b/skills/cli-keys/SKILL.md new file mode 100644 index 0000000000..e7ce0b99b6 --- /dev/null +++ b/skills/cli-keys/SKILL.md @@ -0,0 +1,226 @@ +--- +name: cli-keys +description: Create, list, rotate, and revoke OmniRoute API keys from the CLI. Manage OAuth flows for provider authentication and inspect key scopes and expiration. +--- + + +## Visão geral + +Create, list, rotate, and revoke OmniRoute API keys from the CLI. Manage OAuth flows for provider authentication and inspect key scopes and expiration. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `keys` + +**Exemplo:** + +```bash +omniroute keys +``` + +### `keys add [apiKey]` + +**Flags:** + +- `--stdin` + +**Exemplo:** + +```bash +omniroute keys add [apiKey] +``` + +### `keys list` + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute keys list +``` + +### `keys remove ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute keys remove +``` + +### `keys regenerate ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute keys regenerate +``` + +### `keys revoke ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute keys revoke +``` + +### `keys reveal ` + +**Exemplo:** + +```bash +omniroute keys reveal +``` + +### `keys usage ` + +**Flags:** + +- `--limit ` + +**Exemplo:** + +```bash +omniroute keys usage +``` + +### `keys policy` + +**Exemplo:** + +```bash +omniroute keys policy +``` + +### `keys show ` + +**Exemplo:** + +```bash +omniroute keys show +``` + +### `keys set ` + +**Flags:** + +- `--rate-limit ` +- `--max-cost ` +- `--allowed-models ` + +**Exemplo:** + +```bash +omniroute keys set +``` + +### `keys expiration` + +**Exemplo:** + +```bash +omniroute keys expiration +``` + +### `keys list` + +**Flags:** + +- `--days ` +- `--json` + +**Exemplo:** + +```bash +omniroute keys list +``` + +### `keys rotate ` + +**Flags:** + +- `--grace-period ` +- `--yes` + +**Exemplo:** + +```bash +omniroute keys rotate +``` + +### `oauth` + +**Exemplo:** + +```bash +omniroute oauth +``` + +### `oauth providers` + +**Exemplo:** + +```bash +omniroute oauth providers +``` + +### `oauth start` + +**Flags:** + +- `--no-browser` +- `--import-from-system` +- `--social ` +- `--timeout ` + +**Exemplo:** + +```bash +omniroute oauth start +``` + +### `oauth status` + +**Flags:** + +- `--provider ` + +**Exemplo:** + +```bash +omniroute oauth status +``` + +### `oauth revoke` + +**Flags:** + +- `--connection-id ` +- `--yes` + +**Exemplo:** + +```bash +omniroute oauth revoke +``` diff --git a/skills/cli-mcp/SKILL.md b/skills/cli-mcp/SKILL.md new file mode 100644 index 0000000000..1ebd7acd6d --- /dev/null +++ b/skills/cli-mcp/SKILL.md @@ -0,0 +1,150 @@ +--- +name: cli-mcp +description: Inspect the MCP server status, list registered tools and scopes, run tool invocations, and manage MCP audit logs from the CLI. +--- + + +## Visão geral + +Inspect the MCP server status, list registered tools and scopes, run tool invocations, and manage MCP audit logs from the CLI. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `mcp` + +**Exemplo:** + +```bash +omniroute mcp +``` + +### `mcp status` + +Show MCP server status + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute mcp status +``` + +### `mcp restart` + +Restart the MCP server + +**Exemplo:** + +```bash +omniroute mcp restart +``` + +### `mcp call [argsJson]` + +**Flags:** + +- `--args ` +- `--args-file ` +- `--stream` +- `--scope ` + +**Exemplo:** + +```bash +omniroute mcp call [argsJson] +``` + +### `mcp scopes` + +**Flags:** + +- `--tool ` + +**Exemplo:** + +```bash +omniroute mcp scopes +``` + +### `mcp tools` + +**Exemplo:** + +```bash +omniroute mcp tools +``` + +### `mcp list` + +**Flags:** + +- `--scope ` + +**Exemplo:** + +```bash +omniroute mcp list +``` + +### `mcp info ` + +**Exemplo:** + +```bash +omniroute mcp info +``` + +### `mcp schema ` + +**Flags:** + +- `--io ` + +**Exemplo:** + +```bash +omniroute mcp schema +``` + +### `mcp audit` + +**Exemplo:** + +```bash +omniroute mcp audit +``` + +### `mcp tail` + +**Flags:** + +- `--follow` +- `--limit ` + +**Exemplo:** + +```bash +omniroute mcp tail +``` + +### `mcp stats` + +**Flags:** + +- `--period

` + +**Exemplo:** + +```bash +omniroute mcp stats +``` diff --git a/skills/cli-models/SKILL.md b/skills/cli-models/SKILL.md new file mode 100644 index 0000000000..51341fcd8f --- /dev/null +++ b/skills/cli-models/SKILL.md @@ -0,0 +1,31 @@ +--- +name: cli-models +description: Query available AI models, list model aliases, and browse the full model catalog from the CLI. Filter by provider, search by capability, and resolve model name variants. +--- + + +## Visão geral + +Query available AI models, list model aliases, and browse the full model catalog from the CLI. Filter by provider, search by capability, and resolve model name variants. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `models [provider]` + +**Flags:** + +- `--search ` +- `--json` + +**Exemplo:** + +```bash +omniroute models [provider] +``` diff --git a/skills/cli-plugins-skills/SKILL.md b/skills/cli-plugins-skills/SKILL.md new file mode 100644 index 0000000000..890d87513f --- /dev/null +++ b/skills/cli-plugins-skills/SKILL.md @@ -0,0 +1,385 @@ +--- +name: cli-plugins-skills +description: Manage Omni Skills (list, install, test, remove), plugins (create, configure), and persistent memory (search, add, clear) from the CLI. +--- + + +## Visão geral + +Manage Omni Skills (list, install, test, remove), plugins (create, configure), and persistent memory (search, add, clear) from the CLI. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `memory` + +**Exemplo:** + +```bash +omniroute memory +``` + +### `memory search ` + +**Flags:** + +- `--type ` +- `--limit ` +- `--api-key ` +- `--token-budget ` + +**Exemplo:** + +```bash +omniroute memory search +``` + +### `memory add` + +**Flags:** + +- `--content ` +- `--file ` +- `--type ` +- `--metadata ` +- `--api-key ` + +**Exemplo:** + +```bash +omniroute memory add +``` + +### `memory clear` + +**Flags:** + +- `--type ` +- `--older-than ` +- `--api-key ` +- `--yes` + +**Exemplo:** + +```bash +omniroute memory clear +``` + +### `memory list` + +**Flags:** + +- `--type ` +- `--limit ` +- `--api-key ` + +**Exemplo:** + +```bash +omniroute memory list +``` + +### `memory get ` + +**Exemplo:** + +```bash +omniroute memory get +``` + +### `memory delete ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute memory delete +``` + +### `memory health` + +**Exemplo:** + +```bash +omniroute memory health +``` + +### `PLUGIN_NAME` + +**Exemplo:** + +```bash +omniroute PLUGIN_NAME +``` + +### `plugin plugin` + +**Exemplo:** + +```bash +omniroute plugin plugin +``` + +### `plugin list` + +**Exemplo:** + +```bash +omniroute plugin list +``` + +### `plugin install ` + +**Flags:** + +- `-y, --yes` + +**Exemplo:** + +```bash +omniroute plugin install +``` + +### `plugin remove ` + +**Flags:** + +- `-y, --yes` + +**Exemplo:** + +```bash +omniroute plugin remove +``` + +### `plugin info ` + +**Exemplo:** + +```bash +omniroute plugin info +``` + +### `plugin search [query]` + +**Exemplo:** + +```bash +omniroute plugin search [query] +``` + +### `plugin update [name]` + +**Exemplo:** + +```bash +omniroute plugin update [name] +``` + +### `plugin scaffold ` + +**Exemplo:** + +```bash +omniroute plugin scaffold +``` + +### `marketplace` + +**Exemplo:** + +```bash +omniroute marketplace +``` + +### `skills search [query]` + +**Flags:** + +- `--category ` +- `--tag ` +- `--limit ` +- `--sort ` + +**Exemplo:** + +```bash +omniroute skills search [query] +``` + +### `skills info ` + +**Exemplo:** + +```bash +omniroute skills info +``` + +### `skills install ` + +**Flags:** + +- `--version ` +- `--enable` +- `--yes` + +**Exemplo:** + +```bash +omniroute skills install +``` + +### `skills categories` + +**Exemplo:** + +```bash +omniroute skills categories +``` + +### `skills featured` + +**Exemplo:** + +```bash +omniroute skills featured +``` + +### `skills skills` + +**Exemplo:** + +```bash +omniroute skills skills +``` + +### `skills list` + +**Flags:** + +- `--type ` +- `--enabled` +- `--disabled` +- `--api-key ` + +**Exemplo:** + +```bash +omniroute skills list +``` + +### `skills get ` + +**Exemplo:** + +```bash +omniroute skills get +``` + +### `skills install` + +**Flags:** + +- `--from-file ` +- `--from-url ` +- `--type ` +- `--enable` + +**Exemplo:** + +```bash +omniroute skills install +``` + +### `skills enable ` + +**Exemplo:** + +```bash +omniroute skills enable +``` + +### `skills disable ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute skills disable +``` + +### `skills delete ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute skills delete +``` + +### `skills execute ` + +**Flags:** + +- `--input ` +- `--input-file ` +- `--timeout ` + +**Exemplo:** + +```bash +omniroute skills execute +``` + +### `skills executions` + +**Flags:** + +- `--skill ` +- `--limit ` +- `--status ` + +**Exemplo:** + +```bash +omniroute skills executions +``` + +### `skills skillssh` + +**Exemplo:** + +```bash +omniroute skills skillssh +``` + +### `skills list` + +**Exemplo:** + +```bash +omniroute skills list +``` + +### `skills install ` + +**Exemplo:** + +```bash +omniroute skills install +``` diff --git a/skills/cli-policy-audit/SKILL.md b/skills/cli-policy-audit/SKILL.md new file mode 100644 index 0000000000..f0c846c8fd --- /dev/null +++ b/skills/cli-policy-audit/SKILL.md @@ -0,0 +1,244 @@ +--- +name: cli-policy-audit +description: Inspect audit logs, manage access policies, view telemetry data, and review request history from the CLI. Filter by event type, user, or time range for compliance workflows. +--- + + +## Visão geral + +Inspect audit logs, manage access policies, view telemetry data, and review request history from the CLI. Filter by event type, user, or time range for compliance workflows. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `audit` + +**Exemplo:** + +```bash +omniroute audit +``` + +### `audit tail` + +**Flags:** + +- `--source ` +- `--follow` +- `--limit ` + +**Exemplo:** + +```bash +omniroute audit tail +``` + +### `audit search ` + +**Flags:** + +- `--source ` +- `--since ` +- `--until ` +- `--limit ` +- `--actor ` +- `--action ` + +**Exemplo:** + +```bash +omniroute audit search +``` + +### `audit export ` + +**Flags:** + +- `--source ` +- `--format ` +- `--since ` +- `--until ` + +**Exemplo:** + +```bash +omniroute audit export +``` + +### `audit stats` + +**Flags:** + +- `--source ` +- `--period

` + +**Exemplo:** + +```bash +omniroute audit stats +``` + +### `audit get ` + +**Flags:** + +- `--source ` + +**Exemplo:** + +```bash +omniroute audit get +``` + +### `logs` + +**Flags:** + +- `--follow` +- `--filter ` +- `--lines ` +- `--timeout ` +- `--base-url ` +- `--request-id ` +- `--api-key ` +- `--combo ` +- `--status ` +- `--duration-min ` +- `--duration-max ` +- `--export ` + +**Exemplo:** + +```bash +omniroute logs +``` + +### `policy` + +**Exemplo:** + +```bash +omniroute policy +``` + +### `policy list` + +**Flags:** + +- `--kind ` +- `--scope ` + +**Exemplo:** + +```bash +omniroute policy list +``` + +### `policy get ` + +**Exemplo:** + +```bash +omniroute policy get +``` + +### `policy create` + +**Exemplo:** + +```bash +omniroute policy create +``` + +### `policy update ` + +**Exemplo:** + +```bash +omniroute policy update +``` + +### `policy delete ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute policy delete +``` + +### `policy evaluate` + +**Flags:** + +- `--resource ` +- `--context ` + +**Exemplo:** + +```bash +omniroute policy evaluate +``` + +### `policy export ` + +**Exemplo:** + +```bash +omniroute policy export +``` + +### `policy import ` + +**Flags:** + +- `--overwrite` + +**Exemplo:** + +```bash +omniroute policy import +``` + +### `telemetry` + +**Exemplo:** + +```bash +omniroute telemetry +``` + +### `telemetry summary` + +**Flags:** + +- `--period

` +- `--compare-to

` + +**Exemplo:** + +```bash +omniroute telemetry summary +``` + +### `telemetry export` + +**Flags:** + +- `--out ` +- `--period

` + +**Exemplo:** + +```bash +omniroute telemetry export +``` diff --git a/skills/cli-providers/SKILL.md b/skills/cli-providers/SKILL.md index c89747b23e..01a066c0a4 100644 --- a/skills/cli-providers/SKILL.md +++ b/skills/cli-providers/SKILL.md @@ -1,7 +1,190 @@ --- name: cli-providers -description: Manage OmniRoute provider connections, API keys, and routing combos via CLI — add/list/test/remove providers, rotate keys, run OAuth flows, list models, and create/switch combos. +description: "Manage provider connections from the CLI: list available/configured providers, add, test, test-all, validate, rotate API keys, and view per-provider metrics." --- + + +## Visão geral + +Manage provider connections from the CLI: list available/configured providers, add, test, test-all, validate, rotate API keys, and view per-provider metrics. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `provider-cmd provider [subcommand]` + +Manage provider connections (use + +**Exemplo:** + +```bash +omniroute provider-cmd provider [subcommand] +``` + +### `providers` + +**Exemplo:** + +```bash +omniroute providers +``` + +### `providers available` + +Show available providers in the OmniRoute catalog + +**Flags:** + +- `--json` +- `--search ` +- `-q, --q ` +- `--category ` + +**Exemplo:** + +```bash +omniroute providers available +``` + +### `providers list` + +List configured provider connections + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute providers list +``` + +### `providers test ` + +Test a configured provider connection + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute providers test +``` + +### `providers test-all` + +Test all active provider connections + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute providers test-all +``` + +### `providers validate` + +Validate local provider configuration without calling upstream + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute providers validate +``` + +### `providers rotate ` + +**Flags:** + +- `--new-key ` +- `--from-env ` +- `--oauth` +- `--yes` +- `--skip-test` +- `--dry-run` + +**Exemplo:** + +```bash +omniroute providers rotate +``` + +### `providers status` + +**Flags:** + +- `--provider ` +- `--json` + +**Exemplo:** + +```bash +omniroute providers status +``` + +### `providers metrics` + +**Flags:** + +- `--provider ` +- `--connection-id ` +- `--period

` +- `--metric ` +- `--sort-by ` +- `--limit ` +- `--watch` +- `--compare ` + +**Exemplo:** + +```bash +omniroute providers metrics +``` + +### `providers metric ` + +**Flags:** + +- `--period

` + +**Exemplo:** + +```bash +omniroute providers metric +``` + +### `test-provider test [provider] [model]` + +**Flags:** + +- `--all-providers` +- `--json` +- `--latency` +- `--repeat ` +- `--compare ` +- `--save ` + +**Exemplo:** + +```bash +omniroute test-provider test [provider] [model] +``` diff --git a/skills/cli-resilience/SKILL.md b/skills/cli-resilience/SKILL.md new file mode 100644 index 0000000000..9b32137aad --- /dev/null +++ b/skills/cli-resilience/SKILL.md @@ -0,0 +1,158 @@ +--- +name: cli-resilience +description: Inspect and manage circuit-breaker states, connection cooldowns, quota limits, and backoff levels from the CLI. Reset stuck providers and configure resilience thresholds. +--- + + +## Visão geral + +Inspect and manage circuit-breaker states, connection cooldowns, quota limits, and backoff levels from the CLI. Reset stuck providers and configure resilience thresholds. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `quota` + +**Flags:** + +- `--provider ` +- `--json` + +**Exemplo:** + +```bash +omniroute quota +``` + +### `resilience` + +**Exemplo:** + +```bash +omniroute resilience +``` + +### `resilience status` + +**Flags:** + +- `--provider

` + +**Exemplo:** + +```bash +omniroute resilience status +``` + +### `resilience breakers` + +**Flags:** + +- `--provider

` + +**Exemplo:** + +```bash +omniroute resilience breakers +``` + +### `resilience cooldowns` + +**Flags:** + +- `--provider

` +- `--connection-id ` + +**Exemplo:** + +```bash +omniroute resilience cooldowns +``` + +### `resilience lockouts` + +**Flags:** + +- `--provider

` +- `--model ` + +**Exemplo:** + +```bash +omniroute resilience lockouts +``` + +### `resilience reset` + +**Flags:** + +- `--connection-id ` +- `--model ` +- `--all-cooldowns` +- `--yes` + +**Exemplo:** + +```bash +omniroute resilience reset +``` + +### `resilience profile` + +**Exemplo:** + +```bash +omniroute resilience profile +``` + +### `resilience show` + +**Exemplo:** + +```bash +omniroute resilience show +``` + +### `resilience set` + +**Exemplo:** + +```bash +omniroute resilience set +``` + +### `resilience config` + +**Exemplo:** + +```bash +omniroute resilience config +``` + +### `resilience show` + +**Exemplo:** + +```bash +omniroute resilience show +``` + +### `resilience set` + +**Flags:** + +- `--threshold ` +- `--reset-timeout ` +- `--base-cooldown ` + +**Exemplo:** + +```bash +omniroute resilience set +``` diff --git a/skills/cli-routing/SKILL.md b/skills/cli-routing/SKILL.md new file mode 100644 index 0000000000..539c15e0e5 --- /dev/null +++ b/skills/cli-routing/SKILL.md @@ -0,0 +1,91 @@ +--- +name: cli-routing +description: Create, list, update, and delete routing combos from the CLI. Test routing strategies, inspect combo metrics, and configure fallback chains interactively. +--- + + +## Visão geral + +Create, list, update, and delete routing combos from the CLI. Test routing strategies, inspect combo metrics, and configure fallback chains interactively. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `suggest` + +**Flags:** + +- `--max-cost ` +- `--max-latency-ms ` +- `--weights ` +- `--top ` +- `--explain` +- `--switch` + +**Exemplo:** + +```bash +omniroute suggest +``` + +### `combo combo` + +**Exemplo:** + +```bash +omniroute combo combo +``` + +### `combo list` + +List configured routing combos + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute combo list +``` + +### `combo switch ` + +Activate a routing combo + +**Exemplo:** + +```bash +omniroute combo switch +``` + +### `combo create ` + +Create a new routing combo + +**Exemplo:** + +```bash +omniroute combo create +``` + +### `combo delete ` + +Delete a routing combo + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute combo delete +``` diff --git a/skills/cli-serve/SKILL.md b/skills/cli-serve/SKILL.md index ec638366d0..0b2648ccdc 100644 --- a/skills/cli-serve/SKILL.md +++ b/skills/cli-serve/SKILL.md @@ -1,7 +1,74 @@ --- name: cli-serve -description: OmniRoute CLI entry point and server admin — install, global flags, output formats, server lifecycle (start/stop/restart), setup wizard, diagnostics, backup/restore, autostart, tunnels, and CI/Docker provisioning. +description: Start, stop, and restart the OmniRoute server from the CLI. Manage daemon mode, port configuration, auto-recovery, system tray integration, and the dashboard open shortcut. --- + + +## Visão geral + +Start, stop, and restart the OmniRoute server from the CLI. Manage daemon mode, port configuration, auto-recovery, system tray integration, and the dashboard open shortcut. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `dashboard` + +**Flags:** + +- `--url` +- `--port ` +- `--tui` + +**Exemplo:** + +```bash +omniroute dashboard +``` + +### `restart` + +**Flags:** + +- `--port ` + +**Exemplo:** + +```bash +omniroute restart +``` + +### `serve` + +**Flags:** + +- `--port ` +- `--no-open` +- `--daemon` +- `--log` +- `--no-recovery` +- `--max-restarts ` +- `--tray` +- `--no-tray` + +**Exemplo:** + +```bash +omniroute serve +``` + +### `stop` + +**Exemplo:** + +```bash +omniroute stop +``` diff --git a/skills/cli-setup/SKILL.md b/skills/cli-setup/SKILL.md new file mode 100644 index 0000000000..3b97ca26d3 --- /dev/null +++ b/skills/cli-setup/SKILL.md @@ -0,0 +1,261 @@ +--- +name: cli-setup +description: Run initial setup, configure global CLI settings, manage environment variables, check for updates, and configure autostart via the CLI setup and config commands. +--- + + +## Visão geral + +Run initial setup, configure global CLI settings, manage environment variables, check for updates, and configure autostart via the CLI setup and config commands. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `autostart` + +**Exemplo:** + +```bash +omniroute autostart +``` + +### `autostart enable` + +**Exemplo:** + +```bash +omniroute autostart enable +``` + +### `autostart disable` + +**Exemplo:** + +```bash +omniroute autostart disable +``` + +### `autostart status` + +**Exemplo:** + +```bash +omniroute autostart status +``` + +### `config` + +Show or update CLI tool configuration + +**Exemplo:** + +```bash +omniroute config +``` + +### `config list` + +List all CLI tools and config status + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute config list +``` + +### `config get ` + +Show current config for a tool + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute config get +``` + +### `config set ` + +Write config for a tool + +**Flags:** + +- `--model ` +- `--non-interactive` +- `--yes` + +**Exemplo:** + +```bash +omniroute config set +``` + +### `config validate ` + +Validate config format without writing + +**Flags:** + +- `--model ` +- `--json` + +**Exemplo:** + +```bash +omniroute config validate +``` + +### `config opencode` + +Generate OpenCode config (alias for + +**Flags:** + +- `--model ` +- `--non-interactive` +- `--yes` + +**Exemplo:** + +```bash +omniroute config opencode +``` + +### `config lang` + +**Exemplo:** + +```bash +omniroute config lang +``` + +### `config get` + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute config get +``` + +### `config set ` + +**Flags:** + +- `--force` + +**Exemplo:** + +```bash +omniroute config set +``` + +### `config list` + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute config list +``` + +### `env` + +Show and manage environment variables + +**Exemplo:** + +```bash +omniroute env +``` + +### `env show` + +Show current environment variables + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute env show +``` + +### `env get ` + +Get a single environment variable + +**Exemplo:** + +```bash +omniroute env get +``` + +### `env set ` + +Set an environment variable (current session only) + +**Exemplo:** + +```bash +omniroute env set +``` + +### `setup` + +**Flags:** + +- `--password ` +- `--add-provider` +- `--provider ` +- `--provider-name ` +- `--api-key ` +- `--default-model ` +- `--provider-base-url ` +- `--test-provider` +- `--non-interactive` +- `--list` + +**Exemplo:** + +```bash +omniroute setup +``` + +### `update` + +**Flags:** + +- `--check` +- `--apply` +- `--changelog` +- `--dry-run` +- `--no-backup` +- `--yes` + +**Exemplo:** + +```bash +omniroute update +``` diff --git a/skills/cli-tunnel/SKILL.md b/skills/cli-tunnel/SKILL.md new file mode 100644 index 0000000000..04f87bcf3a --- /dev/null +++ b/skills/cli-tunnel/SKILL.md @@ -0,0 +1,106 @@ +--- +name: cli-tunnel +description: Start and stop tunnel connections (ngrok, Cloudflare, custom) from the CLI. Inspect active tunnel URLs, configure authentication, and test external reachability. +--- + + +## Visão geral + +Start and stop tunnel connections (ngrok, Cloudflare, custom) from the CLI. Inspect active tunnel URLs, configure authentication, and test external reachability. + +## Instalação rápida + +```bash +npm install -g omniroute # or: npx omniroute +omniroute --version +``` + +## Subcomandos + +### `tunnel` + +**Exemplo:** + +```bash +omniroute tunnel +``` + +### `tunnel list` + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute tunnel list +``` + +### `tunnel create [type]` + +**Exemplo:** + +```bash +omniroute tunnel create [type] +``` + +### `tunnel stop ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute tunnel stop +``` + +### `tunnel status ` + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute tunnel status +``` + +### `tunnel logs ` + +**Flags:** + +- `--tail ` + +**Exemplo:** + +```bash +omniroute tunnel logs +``` + +### `tunnel info ` + +**Flags:** + +- `--json` + +**Exemplo:** + +```bash +omniroute tunnel info +``` + +### `tunnel rotate ` + +**Flags:** + +- `--yes` + +**Exemplo:** + +```bash +omniroute tunnel rotate +``` diff --git a/skills/omni-agents-a2a/SKILL.md b/skills/omni-agents-a2a/SKILL.md index 135edb3022..fcaf7cbceb 100644 --- a/skills/omni-agents-a2a/SKILL.md +++ b/skills/omni-agents-a2a/SKILL.md @@ -1,7 +1,23 @@ --- name: omni-agents-a2a -description: OmniRoute exposes an A2A (Agent-to-Agent) JSON-RPC 2.0 server with 5 skills (smart-routing, quota-management, provider-discovery, cost-analysis, health-report). Use when the user wants OmniRoute to act as an agent peer in an A2A network or multi-agent pipeline. +description: "Interact with OmniRoute via JSON-RPC 2.0 agent-to-agent protocol. 6 built-in A2A skills: smart-routing, quota-management, provider-discovery, cost-analysis, health-report, list-capabilities." --- + + +## Visão geral + +Interact with OmniRoute via JSON-RPC 2.0 agent-to-agent protocol. 6 built-in A2A skills: smart-routing, quota-management, provider-discovery, cost-analysis, health-report, list-capabilities. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +_No endpoints mapped for this area yet._ +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-api-keys/SKILL.md b/skills/omni-api-keys/SKILL.md new file mode 100644 index 0000000000..be7d1fde47 --- /dev/null +++ b/skills/omni-api-keys/SKILL.md @@ -0,0 +1,48 @@ +--- +name: omni-api-keys +description: Create, list, rotate, and revoke OmniRoute API keys. Control per-key scopes, spending limits, and expiration. Keys gate access to all proxy and management endpoints. +--- + + +## Visão geral + +Create, list, rotate, and revoke OmniRoute API keys. Control per-key scopes, spending limits, and expiration. Keys gate access to all proxy and management endpoints. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### GET /api/keys + +List API keys + +```bash +curl https://localhost:20128/api/keys \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/keys + +Create API key + +```bash +curl -X POST https://localhost:20128/api/keys \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### DELETE /api/keys/{id} + +Delete API key + +```bash +curl -X DELETE https://localhost:20128/api/keys/{id} \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-auth/SKILL.md b/skills/omni-auth/SKILL.md index 03666cd04c..aa45e0662e 100644 --- a/skills/omni-auth/SKILL.md +++ b/skills/omni-auth/SKILL.md @@ -1,7 +1,44 @@ --- name: omni-auth -description: Entry point for OmniRoute — local/remote AI gateway with OpenAI-compatible REST for chat, image, TTS, STT, embeddings, web search, web fetch, MCP, A2A. Setup, index of capability skills, and differentiators. +description: Manage API key authentication and session tokens. Start here to authenticate requests via Bearer token, obtain session cookies, and configure login requirements for the OmniRoute API. --- + + +## Visão geral + +Manage API key authentication and session tokens. Start here to authenticate requests via Bearer token, obtain session cookies, and configure login requirements for the OmniRoute API. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### POST /api/auth/login + +Authenticate user + +```bash +curl -X POST https://localhost:20128/api/auth/login \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/auth/logout + +Log out + +```bash +curl -X POST https://localhost:20128/api/auth/logout \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-budget/SKILL.md b/skills/omni-budget/SKILL.md new file mode 100644 index 0000000000..945bfa37bb --- /dev/null +++ b/skills/omni-budget/SKILL.md @@ -0,0 +1,39 @@ +--- +name: omni-budget +description: Configure spending limits, token quotas, and rate-limit policies per API key or globally. Inspect current consumption and enforce cost controls across providers. +--- + + +## Visão geral + +Configure spending limits, token quotas, and rate-limit policies per API key or globally. Inspect current consumption and enforce cost controls across providers. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### GET /api/rate-limit + +Get rate limit configuration + +```bash +curl https://localhost:20128/api/rate-limit \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/rate-limit + +Update rate limit configuration + +```bash +curl -X POST https://localhost:20128/api/rate-limit \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-cache/SKILL.md b/skills/omni-cache/SKILL.md new file mode 100644 index 0000000000..9db152b6cc --- /dev/null +++ b/skills/omni-cache/SKILL.md @@ -0,0 +1,57 @@ +--- +name: omni-cache +description: Manage the LLM response cache. View cache statistics, clear entries, configure TTL policies, and control semantic-similarity caching thresholds. +--- + + +## Visão geral + +Manage the LLM response cache. View cache statistics, clear entries, configure TTL policies, and control semantic-similarity caching thresholds. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### GET /api/cache + +Get cache statistics + +```bash +curl https://localhost:20128/api/cache \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### DELETE /api/cache + +Clear all caches + +```bash +curl -X DELETE https://localhost:20128/api/cache \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/cache/stats + +Get detailed cache statistics + +Returns detailed statistics for all cache layers. + +```bash +curl https://localhost:20128/api/cache/stats \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### DELETE /api/cache/stats + +Clear cache statistics + +```bash +curl -X DELETE https://localhost:20128/api/cache/stats \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-cli-tools/SKILL.md b/skills/omni-cli-tools/SKILL.md new file mode 100644 index 0000000000..a69e88c699 --- /dev/null +++ b/skills/omni-cli-tools/SKILL.md @@ -0,0 +1,320 @@ +--- +name: omni-cli-tools +description: "Manage CLI tool integrations exposed via the API. List, configure, and invoke CLI tool plugins that extend OmniRoute's automation surface." +--- + + +## Visão geral + +Manage CLI tool integrations exposed via the API. List, configure, and invoke CLI tool plugins that extend OmniRoute's automation surface. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### GET /api/cli-tools/backups + +List CLI tool backups + +```bash +curl https://localhost:20128/api/cli-tools/backups \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/cli-tools/backups + +Create CLI tool backup + +```bash +curl -X POST https://localhost:20128/api/cli-tools/backups \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/cli-tools/runtime/{toolId} + +Get runtime status for a CLI tool + +```bash +curl https://localhost:20128/api/cli-tools/runtime/{toolId} \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/cli-tools/guide-settings/{toolId} + +Get guide settings for a tool + +```bash +curl https://localhost:20128/api/cli-tools/guide-settings/{toolId} \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/cli-tools/antigravity-mitm + +Get Antigravity MITM proxy settings + +```bash +curl https://localhost:20128/api/cli-tools/antigravity-mitm \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/cli-tools/antigravity-mitm + +Update Antigravity MITM proxy settings + +```bash +curl -X POST https://localhost:20128/api/cli-tools/antigravity-mitm \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### DELETE /api/cli-tools/antigravity-mitm + +Reset Antigravity MITM proxy settings + +```bash +curl -X DELETE https://localhost:20128/api/cli-tools/antigravity-mitm \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/cli-tools/antigravity-mitm/alias + +Get Antigravity MITM alias configuration + +```bash +curl https://localhost:20128/api/cli-tools/antigravity-mitm/alias \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### PUT /api/cli-tools/antigravity-mitm/alias + +Update Antigravity MITM alias configuration + +```bash +curl -X PUT https://localhost:20128/api/cli-tools/antigravity-mitm/alias \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/cli-tools/claude-settings + +Get Claude CLI settings + +```bash +curl https://localhost:20128/api/cli-tools/claude-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/cli-tools/claude-settings + +Apply Claude CLI settings + +```bash +curl -X POST https://localhost:20128/api/cli-tools/claude-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### DELETE /api/cli-tools/claude-settings + +Reset Claude CLI settings + +```bash +curl -X DELETE https://localhost:20128/api/cli-tools/claude-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/cli-tools/cline-settings + +Get Cline CLI settings + +```bash +curl https://localhost:20128/api/cli-tools/cline-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/cli-tools/cline-settings + +Apply Cline CLI settings + +```bash +curl -X POST https://localhost:20128/api/cli-tools/cline-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### DELETE /api/cli-tools/cline-settings + +Reset Cline CLI settings + +```bash +curl -X DELETE https://localhost:20128/api/cli-tools/cline-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/cli-tools/codex-profiles + +Get Codex profiles + +```bash +curl https://localhost:20128/api/cli-tools/codex-profiles \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/cli-tools/codex-profiles + +Create Codex profile + +```bash +curl -X POST https://localhost:20128/api/cli-tools/codex-profiles \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### PUT /api/cli-tools/codex-profiles + +Update Codex profile + +```bash +curl -X PUT https://localhost:20128/api/cli-tools/codex-profiles \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### DELETE /api/cli-tools/codex-profiles + +Delete Codex profile + +```bash +curl -X DELETE https://localhost:20128/api/cli-tools/codex-profiles \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/cli-tools/codex-settings + +Get Codex CLI settings + +```bash +curl https://localhost:20128/api/cli-tools/codex-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/cli-tools/codex-settings + +Apply Codex CLI settings + +```bash +curl -X POST https://localhost:20128/api/cli-tools/codex-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### DELETE /api/cli-tools/codex-settings + +Reset Codex CLI settings + +```bash +curl -X DELETE https://localhost:20128/api/cli-tools/codex-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/cli-tools/droid-settings + +Get Droid CLI settings + +```bash +curl https://localhost:20128/api/cli-tools/droid-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/cli-tools/droid-settings + +Apply Droid CLI settings + +```bash +curl -X POST https://localhost:20128/api/cli-tools/droid-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### DELETE /api/cli-tools/droid-settings + +Reset Droid CLI settings + +```bash +curl -X DELETE https://localhost:20128/api/cli-tools/droid-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/cli-tools/kilo-settings + +Get Kilo CLI settings + +```bash +curl https://localhost:20128/api/cli-tools/kilo-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/cli-tools/kilo-settings + +Apply Kilo CLI settings + +```bash +curl -X POST https://localhost:20128/api/cli-tools/kilo-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### DELETE /api/cli-tools/kilo-settings + +Reset Kilo CLI settings + +```bash +curl -X DELETE https://localhost:20128/api/cli-tools/kilo-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/cli-tools/openclaw-settings + +Get OpenClaw CLI settings + +```bash +curl https://localhost:20128/api/cli-tools/openclaw-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/cli-tools/openclaw-settings + +Apply OpenClaw CLI settings + +```bash +curl -X POST https://localhost:20128/api/cli-tools/openclaw-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### DELETE /api/cli-tools/openclaw-settings + +Reset OpenClaw CLI settings + +```bash +curl -X DELETE https://localhost:20128/api/cli-tools/openclaw-settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-combos-routing/SKILL.md b/skills/omni-combos-routing/SKILL.md index a9033a672c..07f14606bd 100644 --- a/skills/omni-combos-routing/SKILL.md +++ b/skills/omni-combos-routing/SKILL.md @@ -1,7 +1,115 @@ --- name: omni-combos-routing -description: Create and configure OmniRoute routing combos, choose from 14 strategies (priority, weighted, auto, round-robin, cost-optimized, etc.), activate Auto-combo 9-factor scoring, and set up fallback chains. +description: Create and manage routing combos with 14 strategies (priority, weighted, round-robin, Auto-combo, etc.). Configure fallback chains, test routing outcomes, and retrieve combo metrics. --- + + +## Visão geral + +Create and manage routing combos with 14 strategies (priority, weighted, round-robin, Auto-combo, etc.). Configure fallback chains, test routing outcomes, and retrieve combo metrics. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### GET /api/combos + +List routing combos + +```bash +curl https://localhost:20128/api/combos \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/combos + +Create routing combo + +```bash +curl -X POST https://localhost:20128/api/combos \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### PATCH /api/combos/{id} + +Update combo + +```bash +curl -X PATCH https://localhost:20128/api/combos/{id} \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### DELETE /api/combos/{id} + +Delete combo + +```bash +curl -X DELETE https://localhost:20128/api/combos/{id} \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/combos/metrics + +Get combo metrics + +```bash +curl https://localhost:20128/api/combos/metrics \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/combos/test + +Test a combo configuration + +```bash +curl -X POST https://localhost:20128/api/combos/test \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/fallback/chains + +List fallback chains + +Returns all registered fallback chains for model routing. + +```bash +curl https://localhost:20128/api/fallback/chains \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/fallback/chains + +Create fallback chain + +Registers a fallback routing chain for a model. + +```bash +curl -X POST https://localhost:20128/api/fallback/chains \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### DELETE /api/fallback/chains + +Delete fallback chain + +```bash +curl -X DELETE https://localhost:20128/api/fallback/chains \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-compression/SKILL.md b/skills/omni-compression/SKILL.md index ce80c4a920..50d53420ef 100644 --- a/skills/omni-compression/SKILL.md +++ b/skills/omni-compression/SKILL.md @@ -1,7 +1,51 @@ --- name: omni-compression -description: Configure OmniRoute token compression to save 60-90% of context tokens. Covers RTK (command/tool output), Caveman (prose), stacked mode (both), and the MCP accessibility-tree filter (browser snapshots). +description: Configure RTK (command output), Caveman (prose), and stacked compression modes. Manage language packs, custom rules, and test prompt compression reducing tokens by 60–90%. --- + + +## Visão geral + +Configure RTK (command output), Caveman (prose), and stacked compression modes. Manage language packs, custom rules, and test prompt compression reducing tokens by 60–90%. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### POST /api/compression/preview + +Preview compression for a message payload + +```bash +curl -X POST https://localhost:20128/api/compression/preview \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/compression/language-packs + +List Caveman compression language packs + +```bash +curl https://localhost:20128/api/compression/language-packs \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/compression/rules + +List Caveman compression rule metadata + +```bash +curl https://localhost:20128/api/compression/rules \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-context-rtk/SKILL.md b/skills/omni-context-rtk/SKILL.md new file mode 100644 index 0000000000..0801837c23 --- /dev/null +++ b/skills/omni-context-rtk/SKILL.md @@ -0,0 +1,68 @@ +--- +name: omni-context-rtk +description: Configure RTK filters, context engineering rules, and context relay settings. Test compression with real prompt samples and manage context transformation pipelines. +--- + + +## Visão geral + +Configure RTK filters, context engineering rules, and context relay settings. Test compression with real prompt samples and manage context transformation pipelines. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### GET /api/context/rtk/config + +Get RTK compression settings + +```bash +curl https://localhost:20128/api/context/rtk/config \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### PUT /api/context/rtk/config + +Update RTK compression settings + +```bash +curl -X PUT https://localhost:20128/api/context/rtk/config \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/context/rtk/filters + +List RTK filters and load diagnostics + +```bash +curl https://localhost:20128/api/context/rtk/filters \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/context/rtk/test + +Run RTK compression preview for text + +```bash +curl -X POST https://localhost:20128/api/context/rtk/test \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/context/rtk/raw-output/{id} + +Read retained redacted RTK raw output + +```bash +curl https://localhost:20128/api/context/rtk/raw-output/{id} \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-db-backups/SKILL.md b/skills/omni-db-backups/SKILL.md new file mode 100644 index 0000000000..92d44216f3 --- /dev/null +++ b/skills/omni-db-backups/SKILL.md @@ -0,0 +1,20 @@ +--- +name: omni-db-backups +description: Trigger system backups, restore from backup files, and manage the SQLite database lifecycle. Supports export, import, and incremental snapshot strategies. +--- + + +## Visão geral + +Trigger system backups, restore from backup files, and manage the SQLite database lifecycle. Supports export, import, and incremental snapshot strategies. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +_No endpoints mapped for this area yet._ +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-inference/SKILL.md b/skills/omni-inference/SKILL.md index 2d2d03aaff..c91b292217 100644 --- a/skills/omni-inference/SKILL.md +++ b/skills/omni-inference/SKILL.md @@ -1,7 +1,216 @@ --- name: omni-inference -description: Inference capabilities via OmniRoute — chat completions, image generation, text-to-speech, speech-to-text, embeddings, web search, and web fetch. OpenAI-compatible endpoints with auto-fallback across 207+ providers. +description: "The core OpenAI-compatible inference endpoints: chat completions, embeddings, images, audio (TTS/STT), moderations, rerank, and the Responses API. The primary integration surface for AI agents." --- + + +## Visão geral + +The core OpenAI-compatible inference endpoints: chat completions, embeddings, images, audio (TTS/STT), moderations, rerank, and the Responses API. The primary integration surface for AI agents. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### POST /api/v1/chat/completions + +Create chat completion + +OpenAI-compatible chat completions endpoint. Routes to configured providers. + +```bash +curl -X POST https://localhost:20128/api/v1/chat/completions \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/v1/providers/{provider}/chat/completions + +Create chat completion (provider-specific) + +Routes to a specific provider by name. + +```bash +curl -X POST https://localhost:20128/api/v1/providers/{provider}/chat/completions \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/v1/api/chat + +Ollama-compatible chat endpoint + +Provides compatibility with Ollama's /api/chat format. + +```bash +curl -X POST https://localhost:20128/api/v1/api/chat \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/v1/messages + +Create message (Anthropic-compatible) + +Anthropic Messages API endpoint. Routes to Claude providers. + +```bash +curl -X POST https://localhost:20128/api/v1/messages \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/v1/messages/count_tokens + +Count tokens for a message + +```bash +curl -X POST https://localhost:20128/api/v1/messages/count_tokens \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/v1/responses + +Create response (OpenAI Responses API) + +OpenAI Responses API endpoint. + +```bash +curl -X POST https://localhost:20128/api/v1/responses \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/v1/embeddings + +Create embeddings + +```bash +curl -X POST https://localhost:20128/api/v1/embeddings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/v1/providers/{provider}/embeddings + +Create embeddings (provider-specific) + +```bash +curl -X POST https://localhost:20128/api/v1/providers/{provider}/embeddings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/v1/images/generations + +Generate images + +```bash +curl -X POST https://localhost:20128/api/v1/images/generations \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/v1/providers/{provider}/images/generations + +Generate images (provider-specific) + +```bash +curl -X POST https://localhost:20128/api/v1/providers/{provider}/images/generations \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/v1/audio/speech + +Generate speech audio + +Text-to-speech endpoint. Routes to configured TTS providers. + +```bash +curl -X POST https://localhost:20128/api/v1/audio/speech \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/v1/audio/transcriptions + +Transcribe audio + +Audio-to-text transcription endpoint. + +```bash +curl -X POST https://localhost:20128/api/v1/audio/transcriptions \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/v1/moderations + +Create moderation + +Content moderation endpoint. Routes to configured moderation providers. + +```bash +curl -X POST https://localhost:20128/api/v1/moderations \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/v1/rerank + +Rerank documents + +Document reranking endpoint. + +```bash +curl -X POST https://localhost:20128/api/v1/rerank \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/v1 + +API v1 root endpoint + +Returns basic API info and status. + +```bash +curl https://localhost:20128/api/v1 \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/v1/providers/{provider}/models + +List models for a specific provider + +Returns only models for the selected provider with provider prefix removed from each model id. + +```bash +curl https://localhost:20128/api/v1/providers/{provider}/models \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-mcp/SKILL.md b/skills/omni-mcp/SKILL.md index 702bc3382d..94ce4b709f 100644 --- a/skills/omni-mcp/SKILL.md +++ b/skills/omni-mcp/SKILL.md @@ -1,7 +1,23 @@ --- name: omni-mcp -description: OmniRoute exposes a built-in MCP (Model Context Protocol) server with 37 tools (chat, embeddings, memory CRUD, skills, providers, routing, audit) over SSE/stdio/HTTP transports. Use when the user wants to add OmniRoute as an MCP server in Claude Desktop, Cursor, Cline, or any MCP-compatible client. +description: "Connect to the OmniRoute MCP server (37 tools, 3 transports: SSE/stdio/HTTP). Covers routing, cache, compression, memory, skills, providers, and audit tools across 16 permission scopes." --- + + +## Visão geral + +Connect to the OmniRoute MCP server (37 tools, 3 transports: SSE/stdio/HTTP). Covers routing, cache, compression, memory, skills, providers, and audit tools across 16 permission scopes. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +_No endpoints mapped for this area yet._ +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-models/SKILL.md b/skills/omni-models/SKILL.md new file mode 100644 index 0000000000..bf5dff1d54 --- /dev/null +++ b/skills/omni-models/SKILL.md @@ -0,0 +1,59 @@ +--- +name: omni-models +description: Query available AI models across all configured providers. List models, resolve model aliases, and browse the full model catalog including provider-specific variants. +--- + + +## Visão geral + +Query available AI models across all configured providers. List models, resolve model aliases, and browse the full model catalog including provider-specific variants. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### GET /api/v1/models + +List available models + +Returns all models available across configured providers. + +```bash +curl https://localhost:20128/api/v1/models \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/models + +List models (management) + +```bash +curl https://localhost:20128/api/models \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/models/alias + +Create or update a model alias + +```bash +curl -X POST https://localhost:20128/api/models/alias \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/models/catalog + +Get full model catalog + +```bash +curl https://localhost:20128/api/models/catalog \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-providers/SKILL.md b/skills/omni-providers/SKILL.md new file mode 100644 index 0000000000..e70d5bbcb1 --- /dev/null +++ b/skills/omni-providers/SKILL.md @@ -0,0 +1,179 @@ +--- +name: omni-providers +description: Manage provider connections, API keys, OAuth flows, and connection tests via the REST API. List, add, update, remove, and test AI provider integrations (OpenAI, Anthropic, Gemini, and 160+). +--- + + +## Visão geral + +Manage provider connections, API keys, OAuth flows, and connection tests via the REST API. List, add, update, remove, and test AI provider integrations (OpenAI, Anthropic, Gemini, and 160+). + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### GET /api/providers + +List provider connections + +```bash +curl https://localhost:20128/api/providers \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/providers + +Create provider connection + +```bash +curl -X POST https://localhost:20128/api/providers \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/providers/{id} + +Get provider connection + +```bash +curl https://localhost:20128/api/providers/{id} \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### PATCH /api/providers/{id} + +Update provider connection + +```bash +curl -X PATCH https://localhost:20128/api/providers/{id} \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### DELETE /api/providers/{id} + +Delete provider connection + +```bash +curl -X DELETE https://localhost:20128/api/providers/{id} \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/providers/{id}/test + +Test provider connection + +```bash +curl -X POST https://localhost:20128/api/providers/{id}/test \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/providers/{id}/models + +List models for a provider + +```bash +curl https://localhost:20128/api/providers/{id}/models \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/providers/test-batch + +Test multiple providers at once + +```bash +curl -X POST https://localhost:20128/api/providers/test-batch \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/providers/validate + +Validate provider credentials + +```bash +curl -X POST https://localhost:20128/api/providers/validate \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/providers/client + +Get client-side provider info + +```bash +curl https://localhost:20128/api/providers/client \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/provider-nodes + +List provider nodes + +```bash +curl https://localhost:20128/api/provider-nodes \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/provider-nodes + +Create provider node + +```bash +curl -X POST https://localhost:20128/api/provider-nodes \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### PATCH /api/provider-nodes/{id} + +Update provider node + +```bash +curl -X PATCH https://localhost:20128/api/provider-nodes/{id} \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### DELETE /api/provider-nodes/{id} + +Delete provider node + +```bash +curl -X DELETE https://localhost:20128/api/provider-nodes/{id} \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/provider-nodes/validate + +Validate a provider node + +```bash +curl -X POST https://localhost:20128/api/provider-nodes/validate \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/provider-models + +List provider models + +```bash +curl https://localhost:20128/api/provider-models \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-proxies/SKILL.md b/skills/omni-proxies/SKILL.md new file mode 100644 index 0000000000..aa88de47e4 --- /dev/null +++ b/skills/omni-proxies/SKILL.md @@ -0,0 +1,20 @@ +--- +name: omni-proxies +description: Configure HTTP/HTTPS/SOCKS proxies for upstream provider requests. Set per-provider or global proxy rules, test connectivity, and manage proxy rotation. +--- + + +## Visão geral + +Configure HTTP/HTTPS/SOCKS proxies for upstream provider requests. Set per-provider or global proxy rules, test connectivity, and manage proxy rotation. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +_No endpoints mapped for this area yet._ +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-resilience/SKILL.md b/skills/omni-resilience/SKILL.md index 0da3f3830a..e7b1c2025f 100644 --- a/skills/omni-resilience/SKILL.md +++ b/skills/omni-resilience/SKILL.md @@ -1,7 +1,33 @@ --- name: omni-resilience -description: Monitor OmniRoute system health, provider circuit breakers, per-provider latency (p50/p95/p99), quota usage, and set budget guards. Use when the user wants to check if the system is healthy, debug slow providers, manage spend limits, or set up monitoring. +description: Monitor provider health, circuit-breaker states, p50/p95/p99 latency metrics, and budget guard alerts. Inspect connection cooldowns and model lockouts in real time. --- + + +## Visão geral + +Monitor provider health, circuit-breaker states, p50/p95/p99 latency metrics, and budget guard alerts. Inspect connection cooldowns and model lockouts in real time. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### GET /api/monitoring/health + +System health check + +Returns system health including uptime, memory, circuit breakers, rate limits + +```bash +curl https://localhost:20128/api/monitoring/health \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-settings/SKILL.md b/skills/omni-settings/SKILL.md new file mode 100644 index 0000000000..e02f1dd80f --- /dev/null +++ b/skills/omni-settings/SKILL.md @@ -0,0 +1,222 @@ +--- +name: omni-settings +description: "Read and update global application settings: system prompts, thinking budget, IP filters, payload rules, combo defaults, and require-login configuration." +--- + + +## Visão geral + +Read and update global application settings: system prompts, thinking budget, IP filters, payload rules, combo defaults, and require-login configuration. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### GET /api/settings + +Get application settings + +```bash +curl https://localhost:20128/api/settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### PATCH /api/settings + +Update settings + +```bash +curl -X PATCH https://localhost:20128/api/settings \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/settings/compression + +Get global compression settings + +```bash +curl https://localhost:20128/api/settings/compression \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### PUT /api/settings/compression + +Update global compression settings + +```bash +curl -X PUT https://localhost:20128/api/settings/compression \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/settings/payload-rules + +Get payload rules configuration + +Returns the current payload rules used to mutate outgoing request payloads before they +are sent upstream. + +Requires a dashboard management session cookie when management auth is enabled. + + +```bash +curl https://localhost:20128/api/settings/payload-rules \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### PUT /api/settings/payload-rules + +Update payload rules configuration + +Persists and hot reloads payload rules. The legacy input field `default-raw` is accepted +on writes and normalized to `defaultRaw` in responses/runtime state. + +Requires a dashboard management session cookie when management auth is enabled. + + +```bash +curl -X PUT https://localhost:20128/api/settings/payload-rules \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/settings/combo-defaults + +Get combo default settings + +```bash +curl https://localhost:20128/api/settings/combo-defaults \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/settings/proxy + +Get proxy settings + +```bash +curl https://localhost:20128/api/settings/proxy \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### PATCH /api/settings/proxy + +Update proxy settings + +```bash +curl -X PATCH https://localhost:20128/api/settings/proxy \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/settings/proxy/test + +Test proxy connection + +```bash +curl -X POST https://localhost:20128/api/settings/proxy/test \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/settings/require-login + +Toggle login requirement + +```bash +curl -X POST https://localhost:20128/api/settings/require-login \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/settings/ip-filter + +Get IP filter configuration + +Returns the current IP filter settings including blacklist, whitelist, and temp bans. + +```bash +curl https://localhost:20128/api/settings/ip-filter \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### PUT /api/settings/ip-filter + +Update IP filter configuration + +Configure IP filtering with blacklist/whitelist modes, add/remove individual IPs, and manage temp bans. + + +```bash +curl -X PUT https://localhost:20128/api/settings/ip-filter \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/settings/system-prompt + +Get system prompt configuration + +Returns the current system prompt injection settings. + +```bash +curl https://localhost:20128/api/settings/system-prompt \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### PUT /api/settings/system-prompt + +Update system prompt configuration + +```bash +curl -X PUT https://localhost:20128/api/settings/system-prompt \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/settings/thinking-budget + +Get thinking budget configuration + +Returns the current thinking/reasoning budget settings for AI models. + +```bash +curl https://localhost:20128/api/settings/thinking-budget \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### PUT /api/settings/thinking-budget + +Update thinking budget configuration + +```bash +curl -X PUT https://localhost:20128/api/settings/thinking-budget \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/tags + +List Ollama-compatible model tags + +Returns models in Ollama /api/tags format for Ollama client compatibility + +```bash +curl https://localhost:20128/api/tags \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-sync-cloud/SKILL.md b/skills/omni-sync-cloud/SKILL.md new file mode 100644 index 0000000000..b9c602f50f --- /dev/null +++ b/skills/omni-sync-cloud/SKILL.md @@ -0,0 +1,98 @@ +--- +name: omni-sync-cloud +description: Synchronise OmniRoute configuration, provider connections, and settings to/from cloud storage. Manage cloud worker authentication and remote backup targets. +--- + + +## Visão geral + +Synchronise OmniRoute configuration, provider connections, and settings to/from cloud storage. Manage cloud worker authentication and remote backup targets. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### POST /api/cloud/auth + +Authenticate with cloud worker + +Authenticates with the OmniRoute cloud worker for remote access. + +```bash +curl -X POST https://localhost:20128/api/cloud/auth \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### PUT /api/cloud/credentials/update + +Update cloud worker credentials + +```bash +curl -X PUT https://localhost:20128/api/cloud/credentials/update \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/cloud/model/resolve + +Resolve model via cloud + +Resolves a model request through the cloud worker. + +```bash +curl -X POST https://localhost:20128/api/cloud/model/resolve \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/cloud/models/alias + +Get cloud model aliases + +```bash +curl https://localhost:20128/api/cloud/models/alias \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### PUT /api/cloud/models/alias + +Update cloud model alias + +```bash +curl -X PUT https://localhost:20128/api/cloud/models/alias \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/sync/cloud + +Sync with cloud + +```bash +curl -X POST https://localhost:20128/api/sync/cloud \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/sync/initialize + +Initialize cloud sync + +```bash +curl -X POST https://localhost:20128/api/sync/initialize \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-tunnels/SKILL.md b/skills/omni-tunnels/SKILL.md new file mode 100644 index 0000000000..a0b4782019 --- /dev/null +++ b/skills/omni-tunnels/SKILL.md @@ -0,0 +1,20 @@ +--- +name: omni-tunnels +description: Create and manage secure tunnels (ngrok, Cloudflare Tunnel, custom) to expose OmniRoute to the internet or share access with remote agents and CI pipelines. +--- + + +## Visão geral + +Create and manage secure tunnels (ngrok, Cloudflare Tunnel, custom) to expose OmniRoute to the internet or share access with remote agents and CI pipelines. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +_No endpoints mapped for this area yet._ +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-usage-logs/SKILL.md b/skills/omni-usage-logs/SKILL.md new file mode 100644 index 0000000000..a86fa56d03 --- /dev/null +++ b/skills/omni-usage-logs/SKILL.md @@ -0,0 +1,115 @@ +--- +name: omni-usage-logs +description: Access detailed call logs and usage analytics. Filter by provider, model, time range, status, and cost. Export logs and aggregate token usage across all connections. +--- + + +## Visão geral + +Access detailed call logs and usage analytics. Filter by provider, model, time range, status, and cost. Export logs and aggregate token usage across all connections. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### GET /api/usage/analytics + +Get usage analytics + +```bash +curl https://localhost:20128/api/usage/analytics \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/usage/call-logs + +Get call logs + +```bash +curl https://localhost:20128/api/usage/call-logs \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/usage/call-logs/{id} + +Get a specific call log + +```bash +curl https://localhost:20128/api/usage/call-logs/{id} \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/usage/{connectionId} + +Get usage for a specific connection + +```bash +curl https://localhost:20128/api/usage/{connectionId} \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/usage/history + +Get usage history + +```bash +curl https://localhost:20128/api/usage/history \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/usage/logs + +Get usage logs + +```bash +curl https://localhost:20128/api/usage/logs \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/usage/proxy-logs + +Get proxy logs + +```bash +curl https://localhost:20128/api/usage/proxy-logs \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/usage/request-logs + +Get request logs + +```bash +curl https://localhost:20128/api/usage/request-logs \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### GET /api/usage/budget + +Get usage budget status + +Returns current budget limits and consumption. + +```bash +curl https://localhost:20128/api/usage/budget \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/usage/budget + +Configure usage budget + +Set or update budget limits for usage tracking. + +```bash +curl -X POST https://localhost:20128/api/usage/budget \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-version-manager/SKILL.md b/skills/omni-version-manager/SKILL.md new file mode 100644 index 0000000000..4191d45777 --- /dev/null +++ b/skills/omni-version-manager/SKILL.md @@ -0,0 +1,221 @@ +--- +name: omni-version-manager +description: Install, start, stop, restart, and update embedded services (9Router, CLIProxyAPI). Monitor service status, retrieve logs, and configure auto-start for local-only service endpoints. +--- + + +## Visão geral + +Install, start, stop, restart, and update embedded services (9Router, CLIProxyAPI). Monitor service status, retrieve logs, and configure auto-start for local-only service endpoints. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +### POST /api/services/9router/install + +Install 9Router from npm + +Installs the `9router` npm package under DATA_DIR/services/9router/. Uses execFile (no shell interpolation — hard rule #13). **LOCAL_ONLY** — loopback only. + +```bash +curl -X POST https://localhost:20128/api/services/9router/install \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/services/9router/start + +Start 9Router + +Spawns the 9Router process. Idempotent if already running. **LOCAL_ONLY** — loopback only. + +```bash +curl -X POST https://localhost:20128/api/services/9router/start \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/services/9router/stop + +Stop 9Router + +Gracefully stops 9Router (SIGTERM → 15 s → SIGKILL). Idempotent. **LOCAL_ONLY** — loopback only. + +```bash +curl -X POST https://localhost:20128/api/services/9router/stop \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/services/9router/restart + +Restart 9Router + +Equivalent to stop() then start() under the operation lock. **LOCAL_ONLY** — loopback only. + +```bash +curl -X POST https://localhost:20128/api/services/9router/restart \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/services/9router/update + +Update 9Router to a newer npm version + +Stops the service (if running), installs the newer npm version, then restarts. **LOCAL_ONLY** — loopback only. + +```bash +curl -X POST https://localhost:20128/api/services/9router/update \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/services/9router/rotate-key + +Rotate the 9Router API key + +Generates a new API key, encrypts it at-rest, and restarts the service to apply it. The plaintext key is never returned. **LOCAL_ONLY** — loopback only. + +```bash +curl -X POST https://localhost:20128/api/services/9router/rotate-key \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/services/9router/status + +Get 9Router status + +Returns combined live supervisor state and DB metadata. **LOCAL_ONLY** — loopback only. + +```bash +curl https://localhost:20128/api/services/9router/status \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/services/9router/auto-start + +Toggle 9Router auto-start + +When enabled, 9Router starts automatically on the next OmniRoute boot. **LOCAL_ONLY** — loopback only. + +```bash +curl -X POST https://localhost:20128/api/services/9router/auto-start \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/services/cliproxy/install + +Install CLIProxyAPI from npm + +Installs the CLIProxyAPI package under DATA_DIR/services/cliproxy/. **LOCAL_ONLY** — loopback only. + +```bash +curl -X POST https://localhost:20128/api/services/cliproxy/install \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/services/cliproxy/start + +Start CLIProxyAPI + +Spawns the CLIProxyAPI process. Idempotent if already running. **LOCAL_ONLY** — loopback only. + +```bash +curl -X POST https://localhost:20128/api/services/cliproxy/start \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/services/cliproxy/stop + +Stop CLIProxyAPI + +Gracefully stops CLIProxyAPI. Idempotent. **LOCAL_ONLY** — loopback only. + +```bash +curl -X POST https://localhost:20128/api/services/cliproxy/stop \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/services/cliproxy/restart + +Restart CLIProxyAPI + +stop() then start() under the operation lock. **LOCAL_ONLY** — loopback only. + +```bash +curl -X POST https://localhost:20128/api/services/cliproxy/restart \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### POST /api/services/cliproxy/update + +Update CLIProxyAPI to a newer npm version + +Stops, installs newer version, restarts. **LOCAL_ONLY** — loopback only. + +```bash +curl -X POST https://localhost:20128/api/services/cliproxy/update \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/services/cliproxy/status + +Get CLIProxyAPI status + +Returns live supervisor state and DB metadata (no apiKeyMasked — CLIProxyAPI does not use an injected API key). **LOCAL_ONLY** — loopback only. + +```bash +curl https://localhost:20128/api/services/cliproxy/status \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +### POST /api/services/cliproxy/auto-start + +Toggle CLIProxyAPI auto-start + +When enabled, CLIProxyAPI starts automatically on the next OmniRoute boot. **LOCAL_ONLY** — loopback only. + +```bash +curl -X POST https://localhost:20128/api/services/cliproxy/auto-start \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" + -H "Content-Type: application/json" \ + -d '{}' +``` + +### GET /api/services/{name}/logs + +Stream service logs via SSE + +Returns a Server-Sent Events stream from the service's in-memory ring buffer (5 MB, circular). Sends a `snapshot` event with historical lines first, then live `log` events, plus a `heartbeat` every 15 s. **LOCAL_ONLY** — loopback only. + +```bash +curl https://localhost:20128/api/services/{name}/logs \ + -H "Authorization: Bearer $OMNIROUTE_TOKEN" +``` + +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omni-webhooks/SKILL.md b/skills/omni-webhooks/SKILL.md new file mode 100644 index 0000000000..84b148c986 --- /dev/null +++ b/skills/omni-webhooks/SKILL.md @@ -0,0 +1,20 @@ +--- +name: omni-webhooks +description: Register, list, test, and remove webhook endpoints. Configure event subscriptions (request.completed, provider.error, budget.exceeded, etc.) and manage delivery retries. +--- + + +## Visão geral + +Register, list, test, and remove webhook endpoints. Configure event subscriptions (request.completed, provider.error, budget.exceeded, etc.) and manage delivery retries. + +## Autenticação + +All requests require a valid Bearer token or session cookie. Obtain a token via `POST /api/auth/login` or configure `REQUIRE_API_KEY=false` for local development. + +## Endpoints + +_No endpoints mapped for this area yet._ +## Payloads + +See the full OpenAPI specification at `GET /api/openapi/spec` or `docs/reference/openapi.yaml` for detailed request/response schemas. diff --git a/skills/omniroute-a2a/SKILL.md b/skills/omniroute-a2a/SKILL.md deleted file mode 100644 index 2783c6261f..0000000000 --- a/skills/omniroute-a2a/SKILL.md +++ /dev/null @@ -1,71 +0,0 @@ ---- -name: omniroute-a2a -description: OmniRoute exposes an A2A (Agent-to-Agent) JSON-RPC 2.0 server with 5 skills (smart-routing, quota-management, provider-discovery, cost-analysis, health-report). Use when the user wants OmniRoute to act as an agent peer in an A2A network or multi-agent pipeline. ---- - -# OmniRoute — A2A Protocol - -Requires `OMNIROUTE_URL` and `OMNIROUTE_KEY`. See [entry-point SKILL](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute/SKILL.md) for setup. - -OmniRoute publishes an Agent Card at `/.well-known/agent.json` and accepts -JSON-RPC 2.0 calls at `/a2a`. - -## Discovery - -```bash -curl $OMNIROUTE_URL/.well-known/agent.json -``` - -Returns Agent Card with skills, endpoints, auth scheme. - -## Available skills - -| Skill | Purpose | -| -------------------- | ----------------------------------------------------------------------------------- | -| `smart-routing` | Given a prompt, recommends best provider/model combo | -| `quota-management` | Reports quota balance for given provider/account | -| `provider-discovery` | Lists providers matching capability filters (vision, JSON mode, tools, max-context) | -| `cost-analysis` | Estimates cost for a given request shape | -| `health-report` | Returns system health (circuit states, latencies, errors) | - -## Call example (JSON-RPC 2.0) - -```bash -curl -X POST $OMNIROUTE_URL/a2a \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "jsonrpc": "2.0", - "method": "tasks/send", - "params": { - "skillId": "smart-routing", - "input": { "prompt_length": 4000, "tools": true, "vision": false } - }, - "id": 1 - }' -``` - -## Response shape - -```json -{ - "jsonrpc": "2.0", - "result": { - "taskId": "...", - "status": "completed", - "output": { "recommended_combo": "...", "reasoning": "..." } - }, - "id": 1 -} -``` - -## Errors - -- `-32600` → invalid request (bad JSON-RPC envelope) -- `-32601` → method not found (check `method` field) -- `-32602` → invalid params (check `skillId` against Agent Card) -- `401` → missing/invalid `OMNIROUTE_KEY` - -## Reference - -Full docs: https://github.com/diegosouzapw/OmniRoute/blob/main/docs/frameworks/A2A-SERVER.md diff --git a/skills/omniroute-chat/SKILL.md b/skills/omniroute-chat/SKILL.md deleted file mode 100644 index 7f97c73cd0..0000000000 --- a/skills/omniroute-chat/SKILL.md +++ /dev/null @@ -1,68 +0,0 @@ ---- -name: omniroute-chat -description: Chat / code generation via OmniRoute using OpenAI /v1/chat/completions or Anthropic /v1/messages format with SSE streaming, auto-fallback combos, RTK token saver, and 207+ providers. Use when the user wants to ask an LLM, generate code, summarize text, or run prompts through OmniRoute. ---- - -# OmniRoute — Chat - -Requires `OMNIROUTE_URL` and `OMNIROUTE_KEY`. See [entry-point SKILL](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute/SKILL.md) for setup. - -## Endpoints - -- `POST $OMNIROUTE_URL/v1/chat/completions` — OpenAI format -- `POST $OMNIROUTE_URL/v1/messages` — Anthropic Messages format -- `POST $OMNIROUTE_URL/v1/responses` — OpenAI Responses API - -## Discover - -```bash -curl $OMNIROUTE_URL/v1/models | jq '.data[].id' -``` - -Combos (e.g. `auto`, `cost-optimized`, `subscription`) auto-fallback through multiple providers. - -## OpenAI format example - -```bash -curl -X POST $OMNIROUTE_URL/v1/chat/completions \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "model": "claude-opus-4-7", - "messages": [{"role": "user", "content": "Refactor this function"}], - "stream": true - }' -``` - -## Anthropic format example - -```bash -curl -X POST $OMNIROUTE_URL/v1/messages \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "anthropic-version: 2023-06-01" \ - -H "Content-Type: application/json" \ - -d '{ - "model": "claude-opus-4-7", - "max_tokens": 4096, - "messages": [{"role": "user", "content": "Hi"}] - }' -``` - -## Tool use - -Supports OpenAI `tools` array and Anthropic `tools` block. Tool results -auto-compressed via RTK (47 filters: git-diff, grep, test-jest, terraform-plan, -docker-logs, etc.) — 20-40% token savings. Disable per-request with -`X-Omniroute-Rtk: off` header. - -## Reasoning / thinking - -Anthropic extended thinking and OpenAI Responses reasoning blocks are forwarded -verbatim. Cached automatically via reasoning cache. - -## Errors - -- `401` → invalid API key -- `400 invalid_model` → model not in registry; check `/v1/models` -- `503 circuit_open` → provider circuit breaker tripped; retry later or use combo -- `429 rate_limited` → honor `Retry-After`; consider using a combo for auto-fallback diff --git a/skills/omniroute-cli-admin/SKILL.md b/skills/omniroute-cli-admin/SKILL.md deleted file mode 100644 index 082817cf4d..0000000000 --- a/skills/omniroute-cli-admin/SKILL.md +++ /dev/null @@ -1,145 +0,0 @@ ---- -name: omniroute-cli-admin -description: Manage the OmniRoute server lifecycle via CLI — start/stop/restart, non-interactive setup, diagnostics (omniroute doctor), backup/restore, autostart, and tunnel management. Use when the user wants to operate the OmniRoute server, automate provisioning, or troubleshoot the runtime. ---- - -# OmniRoute — CLI Admin - -Requires the `omniroute` CLI. See [CLI entry-point skill](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli/SKILL.md) for install + global flags. - -## Server lifecycle - -```bash -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) -``` - -## Setup & provisioning - -### Interactive wizard - -```bash -omniroute setup # Step-by-step interactive setup -``` - -### Non-interactive (CI / Docker) - -```bash -omniroute setup --non-interactive \ - --password 'admin-password' \ - --add-provider \ - --provider openai \ - --api-key 'sk-...' \ - --test-provider -``` - -Environment variables for non-interactive setup: - -| Variable | Purpose | -| ----------------------------- | -------------------------------------------- | -| `OMNIROUTE_SETUP_PASSWORD` | Admin password (≥8 chars) | -| `OMNIROUTE_PROVIDER` | Provider id (e.g. `openai`, `anthropic`) | -| `OMNIROUTE_PROVIDER_NAME` | Display name for the connection | -| `OMNIROUTE_PROVIDER_BASE_URL` | Optional OpenAI-compatible base URL override | -| `OMNIROUTE_API_KEY` | Provider API key | -| `OMNIROUTE_DEFAULT_MODEL` | Optional default model | -| `DATA_DIR` | Override OmniRoute data directory | - -## Diagnostics - -```bash -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 # Full URL override -``` - -Checks performed: Config, Database, Storage/encryption, Port, Node runtime, Native binary (better-sqlite3), Memory, Server liveness. - -Exit code is non-zero if any check fails — useful in CI: - -```bash -omniroute doctor --json | jq '.checks[] | select(.status=="fail")' -``` - -## Backup & restore - -```bash -omniroute backup # Snapshot config + SQLite DB to ~/.omniroute/backups/ -omniroute restore # Restore from a previous snapshot (interactive picker) -``` - -## Autostart (system tray / startup) - -```bash -omniroute autostart enable # Register OmniRoute as a system startup item -omniroute autostart disable # Remove startup registration -omniroute autostart status # Show current autostart state -``` - -On Linux: creates a **systemd user service** (`~/.config/systemd/user/omniroute.service`) and enables **linger** so the service can start after reboot without a graphical login; on desktop sessions it also adds an XDG autostart entry with `--tray`. On macOS: LaunchAgent plist. On Windows: registry startup entry. - -## Tunnels (public URL) - -Expose a local OmniRoute instance via a secure tunnel: - -```bash -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 # Stop a running tunnel -``` - -The tunnel URL is printed and can be used as `OMNIROUTE_BASE_URL` from remote machines. - -## Config & environment - -```bash -omniroute config show # Display current effective configuration -omniroute env show # List all OmniRoute environment variables -omniroute env get # Get a single env var value -omniroute env set # Set an env var (temporary — until restart) -``` - -## Recovery - -```bash -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 -``` - -Use `reset-encrypted-columns --force` only if `STORAGE_ENCRYPTION_KEY` was lost and you need to re-enter all provider API keys. - -## Logs - -```bash -omniroute logs # Stream live request logs -omniroute logs --json # JSON log entries -omniroute logs --search # Filter by term -omniroute logs --follow # Tail mode (keep streaming) -``` - -## Update - -```bash -omniroute update # Check for a newer version and prompt to update -``` - -## Errors - -- `doctor` shows `STORAGE_ENCRYPTION_KEY missing` → set the key in `.env` or run `reset-encrypted-columns --force` to wipe and re-enter credentials -- `doctor` reports native binary fail → `npm rebuild better-sqlite3` in the OmniRoute app directory -- `tunnel create cloudflare` hangs → ensure `cloudflared` is installed: `brew install cloudflare/cloudflare/cloudflared` diff --git a/skills/omniroute-cli-cloud/SKILL.md b/skills/omniroute-cli-cloud/SKILL.md deleted file mode 100644 index 75e83ef4a6..0000000000 --- a/skills/omniroute-cli-cloud/SKILL.md +++ /dev/null @@ -1,120 +0,0 @@ ---- -name: omniroute-cli-cloud -description: Control OmniRoute cloud agents (OpenAI Codex, Devin, Jules) from the CLI — create tasks, track status, approve plans, send messages, and manage sources. Use when the user wants to automate cloud coding agent workflows via the terminal. ---- - -# OmniRoute — CLI Cloud Agents - -Requires the `omniroute` CLI. See [CLI entry-point skill](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli/SKILL.md) for install + global flags. - -## Supported agents - -| Agent | ID | Auth required | -| -------------- | ------- | -------------- | -| OpenAI Codex | `codex` | OpenAI API key | -| Devin | `devin` | Devin API key | -| Jules (Google) | `jules` | Google OAuth | - -## Authenticate an agent - -```bash -omniroute cloud codex auth # Set / refresh Codex API key -omniroute cloud devin auth # Set / refresh Devin API key -omniroute cloud jules auth # OAuth login for Jules (opens browser) -``` - -## List all agents - -```bash -omniroute cloud agents # Show all configured cloud agents + status -omniroute cloud agents --json -``` - -## Create a task - -```bash -omniroute cloud codex task create \ - --title "Add OAuth to the auth module" \ - --prompt "Implement Google OAuth 2.0 login in src/auth/oauth.ts" - -omniroute cloud codex task create \ - --title "Fix test failures" \ - --prompt-file ./task-description.md # Read prompt from a file -``` - -Same syntax for `devin` and `jules`: - -```bash -omniroute cloud devin task create --title "..." --prompt "..." -omniroute cloud jules task create --title "..." --prompt "..." -``` - -## List tasks - -```bash -omniroute cloud codex task list # All Codex tasks (table) -omniroute cloud codex task list --json # JSON output -``` - -## Get task details - -```bash -omniroute cloud codex task get # Full task record -omniroute cloud codex task status # Status + progress only -``` - -Task status values: `running`, `completed`, `failed`, `cancelled`. - -## Approve a plan - -Devin and Jules may pause for plan approval before writing code: - -```bash -omniroute cloud devin task approve # Approve the proposed plan -omniroute cloud jules task approve -``` - -## Send a message to a running task - -```bash -omniroute cloud codex task message "Focus on the backend only, skip the UI" -``` - -## List task sources (files touched) - -```bash -omniroute cloud codex task sources # Files changed / created by the task -``` - -## Cancel a task - -```bash -omniroute cloud codex task cancel -omniroute cloud devin task cancel -``` - -## Typical workflow - -```bash -# 1. Authenticate -omniroute cloud codex auth - -# 2. Create a task -TASK_ID=$(omniroute cloud codex task create \ - --title "Refactor auth module" \ - --prompt "Extract JWT logic to src/auth/jwt.ts" \ - --output json | jq -r '.id') - -# 3. Poll status -omniroute cloud codex task status $TASK_ID - -# 4. View touched files when complete -omniroute cloud codex task sources $TASK_ID -``` - -## Errors - -- `auth required` → run `omniroute cloud auth` before any task commands -- `task create` fails with 402 → agent billing limit reached; check your Codex/Devin/Jules account -- `task approve` fails with 404 → task does not have a pending plan; check status first -- `jules auth` browser flow fails → ensure Google account has Jules access; try `omniroute cloud jules auth` again diff --git a/skills/omniroute-cli-eval/SKILL.md b/skills/omniroute-cli-eval/SKILL.md deleted file mode 100644 index 244097d4b7..0000000000 --- a/skills/omniroute-cli-eval/SKILL.md +++ /dev/null @@ -1,113 +0,0 @@ ---- -name: omniroute-cli-eval -description: Run and manage OmniRoute eval suites from the CLI — create suites, run benchmarks, watch live results, view scorecards, and compare model performance. Use when the user wants to benchmark models, validate quality regressions, or automate LLM evals in CI. ---- - -# OmniRoute — CLI Evals - -Requires the `omniroute` CLI. See [CLI entry-point skill](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli/SKILL.md) for install + global flags. - -## What are evals? - -Evals are automated test suites that score LLM outputs against expected answers or rubrics. OmniRoute stores suites and run results in its local database. - -## Eval suites - -```bash -omniroute eval suites list # List all eval suites -omniroute eval suites list --json # JSON output - -omniroute eval suites get # Full suite definition -``` - -### Create a suite - -```bash -omniroute eval suites create \ - --name "code-quality" \ - --rubric "exact-match" \ - --samples-file ./samples.jsonl # JSONL: {input, expected_output} -``` - -Rubric options: `exact-match`, `contains`, `llm-judge`, `regex`. - -`--samples-file` format (one JSON object per line): - -```jsonl -{"input": "What is 2+2?", "expected_output": "4"} -{"input": "Translate 'hello' to Spanish", "expected_output": "hola"} -``` - -## Run an eval - -```bash -omniroute eval suites run \ - --model claude-sonnet-4-6 # Run suite against a specific model - -omniroute eval suites run \ - --model gpt-4o \ - --watch # Live TUI progress (EvalWatch) -``` - -The run is asynchronous. Use `--watch` for a live terminal dashboard or poll manually: - -```bash -RUN_ID=$(omniroute eval suites run --model claude-sonnet-4-6 --output json | jq -r '.id') -omniroute eval get $RUN_ID -``` - -## Manage runs - -```bash -omniroute eval list # List all eval runs -omniroute eval list --json - -omniroute eval get # Run details (status, model, score) -omniroute eval results # Per-sample results -omniroute eval scorecard # Full scorecard with pass/fail per sample -omniroute eval cancel # Cancel a running eval -``` - -## Scorecard output - -```bash -omniroute eval scorecard --output json -``` - -Response fields per sample: - -```json -{ - "id": "sample-1", - "score": 0.95, - "passed": true, - "input": "What is 2+2?", - "output": "4", - "expected": "4" -} -``` - -## Comparing models - -Run the same suite against multiple models and compare: - -```bash -for MODEL in claude-sonnet-4-6 gpt-4o gemini-2.0-flash; do - omniroute eval suites run $SUITE_ID --model $MODEL --output json | jq '{model: .model, score: .score}' -done -``` - -## CI integration - -```bash -# Run and fail CI if score drops below threshold -SCORE=$(omniroute eval suites run $SUITE_ID --model claude-sonnet-4-6 --output json | jq -r '.score') -python3 -c "import sys; score=float('$SCORE'); sys.exit(0 if score >= 0.90 else 1)" -``` - -## Errors - -- `suites create` fails with `invalid rubric` → use one of: `exact-match`, `contains`, `llm-judge`, `regex` -- `suites run` returns `model not found` → verify model ID with `omniroute models --search ` -- `eval get` shows `status: failed` → check `omniroute logs --search eval` for error details -- `scorecard` returns empty results → the run may still be `running`; poll `omniroute eval get ` until `status` is `completed` diff --git a/skills/omniroute-cli-providers/SKILL.md b/skills/omniroute-cli-providers/SKILL.md deleted file mode 100644 index 1d8e53a5b9..0000000000 --- a/skills/omniroute-cli-providers/SKILL.md +++ /dev/null @@ -1,145 +0,0 @@ ---- -name: omniroute-cli-providers -description: Manage OmniRoute provider connections, API keys, and routing combos via CLI — add/list/test/remove providers, rotate keys, run OAuth flows, list models, and create/switch combos. Use when the user wants to configure providers, manage credentials, or set up routing from the terminal. ---- - -# OmniRoute — CLI Providers & Keys - -Requires the `omniroute` CLI. See [CLI entry-point skill](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli/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 # 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 [apiKey] # Add an API key for a provider -omniroute keys remove # Remove an API key -omniroute keys regenerate # Regenerate (rotate) a key -omniroute keys revoke # Revoke a key (disables it) -omniroute keys reveal # Show the full key value -omniroute keys usage # Show usage stats for a key - -omniroute keys rotate # Rotate + revoke old key atomically -omniroute keys expiration list # List key expiration times -``` - -### Key policies - -```bash -omniroute keys policy show # Show rate-limit / permission policy -omniroute keys policy set \ - --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 # Start browser-based OAuth flow -omniroute oauth logout # Revoke OAuth token -omniroute oauth status # Show token state + expiry -omniroute oauth refresh # 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 # List nodes for a provider -omniroute nodes add --api-key # Add a node -omniroute nodes remove # Remove a node -omniroute nodes test # Test one node -``` - -## Routing combos (CLI) - -Create and manage routing combos from the terminal: - -```bash -omniroute combo list # List all combos -omniroute combo create \ - --strategy priority \ - --targets anthropic/claude-opus-4-7,openai/gpt-4o # Create combo -omniroute combo switch # Activate a combo as default -omniroute combo delete # Delete a combo -omniroute combo suggest --task "code review" # Ask OmniRoute to recommend a combo -``` - -For the full REST API for combos see [omniroute-routing skill](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-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 ` 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` diff --git a/skills/omniroute-cli/SKILL.md b/skills/omniroute-cli/SKILL.md deleted file mode 100644 index 5229916395..0000000000 --- a/skills/omniroute-cli/SKILL.md +++ /dev/null @@ -1,104 +0,0 @@ ---- -name: omniroute-cli -description: Entry point for the OmniRoute CLI (omniroute binary) — install, global flags, output formats, environment variables, and index of CLI capability skills. Use when the user wants to control OmniRoute from the terminal, automate workflows, or integrate with CI/CD. ---- - -# OmniRoute — CLI (Entry Point) - -The `omniroute` binary ships with the OmniRoute server. It is both the server launcher and a full management CLI with 250+ commands across 39 groups. - -## Install - -```bash -npm install -g omniroute # npm registry -# or: use the binary bundled with the desktop app -``` - -Requires Node.js ≥20.20.2, ≥22.22.2, or ≥24. - -Verify: - -```bash -omniroute --version # prints installed version -omniroute --help # full command tree -``` - -## Connection - -Every CLI command that talks to the server reads two values: - -| Source | Variable / Flag | -| -------- | ------------------------------------ | -| Base URL | `OMNIROUTE_BASE_URL` or `--base-url` | -| API key | `OMNIROUTE_API_KEY` or `--api-key` | - -Default base URL: `http://localhost:20128` - -```bash -export OMNIROUTE_BASE_URL="http://localhost:20128" -export OMNIROUTE_API_KEY="sk-..." # from Dashboard → API Manager -``` - -For a remote server: - -```bash -export OMNIROUTE_BASE_URL="https://your-server.com" -``` - -## Global flags - -| Flag | Description | -| ------------------- | -------------------------------------------------------- | -| `--base-url ` | Override server URL for this invocation | -| `--api-key ` | Override API key for this invocation | -| `--output ` | Output format: `table` (default), `json`, `jsonl`, `csv` | -| `--json` | Shorthand for `--output json` | -| `--non-interactive` | Disable prompts — for CI / shell scripts | -| `--no-open` | Don't auto-open the browser on start | -| `--port ` | Override default port 20128 | -| `--help`, `-h` | Show help for the current command | -| `--version`, `-v` | Print the installed version | - -## Output formats - -All listing commands support `--output`: - -```bash -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 -``` - -## Quick start: one-shot server + provider setup - -```bash -# 1. Start server -omniroute - -# 2. (First run) interactive setup wizard -omniroute setup - -# 3. Verify everything is healthy -omniroute doctor -``` - -## CLI capability skills - -| Capability | Skill | -| ------------------------------------ | ----------------------------------------------------------------------------------------------------- | -| Server admin + backup | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli-admin/SKILL.md | -| Provider & key management | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli-providers/SKILL.md | -| Cloud agents (Codex / Devin / Jules) | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli-cloud/SKILL.md | -| Evals & benchmarking | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli-eval/SKILL.md | - -## API skills (REST) - -For direct HTTP usage instead of the CLI, see the [OmniRoute entry-point skill](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute/SKILL.md). - -## Errors - -- `Connection refused` → server not running; run `omniroute` or `omniroute serve` -- `401 Unauthorized` → wrong or missing API key -- `command not found: omniroute` → not in PATH; check `npm root -g` or re-install -- `doctor` reports SQLite incompatible → `npm rebuild better-sqlite3` in the app directory diff --git a/skills/omniroute-compression/SKILL.md b/skills/omniroute-compression/SKILL.md deleted file mode 100644 index fd670ead69..0000000000 --- a/skills/omniroute-compression/SKILL.md +++ /dev/null @@ -1,131 +0,0 @@ ---- -name: omniroute-compression -description: Configure OmniRoute token compression to save 60–90% of context tokens. Covers RTK (command/tool output), Caveman (prose), stacked mode (both), and the MCP accessibility-tree filter (browser snapshots). Use when the user wants to reduce costs, fit long sessions into context windows, or speed up AI responses. ---- - -# OmniRoute — Compression - -Requires `OMNIROUTE_URL` and `OMNIROUTE_KEY`. See [entry-point SKILL](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute/SKILL.md) for setup. - -## Overview - -OmniRoute compresses token payloads before forwarding to providers. No code changes required — set it once, it applies to all requests transparently. - -| Engine | Best for | Typical savings | -| ------------------------- | ------------------------------------ | --------------- | -| RTK | Terminal / build / test / git output | 60–90% | -| Caveman | Human prose, chat history | 46% input | -| Stacked (`rtk → caveman`) | Mixed coding sessions | 78–95% | -| MCP accessibility filter | Browser/accessibility tool results | 60–80% | - -## Get current settings - -```bash -curl $OMNIROUTE_URL/api/settings/compression \ - -H "Authorization: Bearer $OMNIROUTE_KEY" -``` - -## Enable RTK (best for coding agents) - -```bash -curl -X PUT $OMNIROUTE_URL/api/settings/compression \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ "mode": "rtk", "enabled": true }' -``` - -## Enable stacked mode (maximum savings) - -```bash -curl -X PUT $OMNIROUTE_URL/api/settings/compression \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "mode": "stacked", - "enabled": true, - "stackedPipeline": ["rtk", "caveman"] - }' -``` - -## Enable Caveman (prose / chat) - -```bash -curl -X PUT $OMNIROUTE_URL/api/settings/compression \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ "mode": "standard", "enabled": true }' -``` - -Caveman intensities: `lite` (safe), `standard` (balanced), `aggressive` (long sessions), `ultra` (context recovery). - -## Preview compression before enabling - -```bash -curl -X POST $OMNIROUTE_URL/api/compression/preview \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "mode": "rtk", - "text": "$ npm test\n> jest\n\nPASS src/a.test.ts (2.1s)\nPASS src/b.test.ts (1.8s)\n..." - }' -``` - -Response includes `compressed`, `original_length`, `compressed_length`, `savings_pct`. - -## MCP accessibility-tree filter (browser agent use) - -When OmniRoute is used with browser/Playwright MCP tools, it automatically compresses verbose accessibility-tree tool results. Enabled by default; configure thresholds: - -```bash -curl -X PUT $OMNIROUTE_URL/api/settings/compression \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "mcpAccessibility": { - "enabled": true, - "collapseThreshold": 30, - "maxTextChars": 50000 - } - }' -``` - -`collapseThreshold`: collapse sibling lines when ≥ N repeats (default 30). -`maxTextChars`: hard truncate after N chars with navigation hint (default 50000). - -## Language packs (Caveman) - -Caveman supports language-aware rules for pt-BR, es, de, fr, ja: - -```bash -curl -X PUT $OMNIROUTE_URL/api/settings/compression \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "mode": "standard", - "cavemanConfig": { - "language": "pt-BR", - "autoDetectLanguage": true - } - }' -``` - -## Via MCP - -``` -omniroute_compression_status → current settings + savings analytics -omniroute_compression_configure → update mode/threshold/language -omniroute_set_compression_engine → switch engine at runtime -``` - -## Disable compression - -```bash -curl -X PUT $OMNIROUTE_URL/api/settings/compression \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -d '{ "enabled": false }' -``` - -## Errors - -- `400 invalid mode` → use `off`, `lite`, `standard`, `aggressive`, `ultra`, `rtk`, or `stacked` -- `400 invalid stackedPipeline` → array must contain valid engine ids (`rtk`, `caveman`) diff --git a/skills/omniroute-embeddings/SKILL.md b/skills/omniroute-embeddings/SKILL.md deleted file mode 100644 index f02998092e..0000000000 --- a/skills/omniroute-embeddings/SKILL.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -name: omniroute-embeddings -description: Embeddings via OmniRoute using OpenAI /v1/embeddings format with auto-fallback across text-embedding-3-large, Voyage, Cohere, Gemini embeddings, Jina. Use when the user needs vector embeddings for RAG, similarity search, or clustering. ---- - -# OmniRoute — Embeddings - -Requires `OMNIROUTE_URL` and `OMNIROUTE_KEY`. See [entry-point SKILL](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute/SKILL.md) for setup. - -## Endpoint - -- `POST $OMNIROUTE_URL/v1/embeddings` - -## Discover - -```bash -curl $OMNIROUTE_URL/v1/models/embedding | jq '.data[]' -``` - -Each entry: `{ id, owned_by, dimensions, max_input_tokens }`. - -## Example - -```bash -curl -X POST $OMNIROUTE_URL/v1/embeddings \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "model": "text-embedding-3-large", - "input": ["first text", "second text"], - "encoding_format": "float" - }' -``` - -Response: `{ data:[{ embedding:[...], index }], usage:{ prompt_tokens, total_tokens } }` - -## Batch input - -`input` accepts a string or array of strings (up to provider batch limit, typically 2048 items). - -## Errors - -- `400 input_too_long` → input exceeds `max_input_tokens` for this model -- `400 invalid_encoding_format` → use `float` or `base64` -- `503` → provider unavailable; try another model in `/v1/models/embedding` diff --git a/skills/omniroute-image/SKILL.md b/skills/omniroute-image/SKILL.md deleted file mode 100644 index 9ccd40a170..0000000000 --- a/skills/omniroute-image/SKILL.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -name: omniroute-image -description: Image generation via OmniRoute using OpenAI /v1/images/generations format with auto-fallback across DALL-E, Stable Diffusion, Flux, Imagen providers. Use when the user wants to generate, edit, or vary images. ---- - -# OmniRoute — Image Generation - -Requires `OMNIROUTE_URL` and `OMNIROUTE_KEY`. See [entry-point SKILL](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute/SKILL.md) for setup. - -## Endpoints - -- `POST $OMNIROUTE_URL/v1/images/generations` — Text-to-image -- `POST $OMNIROUTE_URL/v1/images/edits` — Image edit (mask) -- `POST $OMNIROUTE_URL/v1/images/variations` — Variations - -## Discover - -```bash -curl $OMNIROUTE_URL/v1/models/image | jq '.data[]' -``` - -Returns `{ id, owned_by, sizes:[...], capabilities:[...] }` per model. - -## Generate example - -```bash -curl -X POST $OMNIROUTE_URL/v1/images/generations \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "model": "dall-e-3", - "prompt": "a red bicycle on a wet street, photoreal", - "n": 1, - "size": "1024x1024", - "response_format": "b64_json" - }' -``` - -Response: `{ created, data: [{ url? or b64_json, revised_prompt }] }` - -## Errors - -- `400 invalid_size` → not supported by this model; check `/v1/models/image` -- `400 content_policy_violation` → blocked by provider safety -- `503` → provider unavailable; try another model in `/v1/models/image` diff --git a/skills/omniroute-mcp/SKILL.md b/skills/omniroute-mcp/SKILL.md deleted file mode 100644 index 594896d1b1..0000000000 --- a/skills/omniroute-mcp/SKILL.md +++ /dev/null @@ -1,71 +0,0 @@ ---- -name: omniroute-mcp -description: OmniRoute exposes a built-in MCP (Model Context Protocol) server with 37 tools (chat, embeddings, memory CRUD, skills, providers, routing, audit) over SSE/stdio/HTTP transports. Use when the user wants to add OmniRoute as an MCP server in Claude Desktop, Cursor, Cline, or any MCP-compatible client. ---- - -# OmniRoute — MCP Server - -Requires `OMNIROUTE_URL` and `OMNIROUTE_KEY`. See [entry-point SKILL](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute/SKILL.md) for setup. - -## Transports - -- **stdio** — local IPC, for Claude Desktop / VS Code extensions -- **SSE** — `GET $OMNIROUTE_URL/api/mcp/sse` -- **Streamable HTTP** — `POST $OMNIROUTE_URL/api/mcp/stream` - -## Claude Desktop config - -Add to `~/Library/Application Support/Claude/claude_desktop_config.json`: - -```json -{ - "mcpServers": { - "omniroute": { - "command": "npx", - "args": ["-y", "omniroute", "--mcp"], - "env": { "OMNIROUTE_KEY": "sk-..." } - } - } -} -``` - -## Cursor / VS Code config - -```json -{ - "mcp": { - "servers": { - "omniroute": { - "url": "http://localhost:20128/api/mcp/sse", - "headers": { "Authorization": "Bearer sk-..." } - } - } - } -} -``` - -## Available tools (37 total) - -| Scope | Tools | -| --------- | -------------------------------------------------------------------------------------------------- | -| health | `omniroute_get_health` | -| combos | `omniroute_list_combos`, `omniroute_get_combo_metrics`, `omniroute_switch_combo` | -| routing | `omniroute_simulate_route`, `omniroute_best_combo_for_task`, `omniroute_explain_route` | -| providers | `omniroute_get_provider_metrics`, `omniroute_check_quota`, `omniroute_route_request` | -| budget | `omniroute_set_budget_guard`, `omniroute_set_routing_strategy`, `omniroute_set_resilience_profile` | -| testing | `omniroute_test_combo` | -| memory | `memory_add`, `memory_search`, `memory_delete` | -| skills | `skill_invoke`, `skill_list`, `skill_describe`, `skill_register` | -| cache | `omniroute_cache_stats`, `omniroute_cache_flush` | -| admin | `omniroute_db_health_check`, `omniroute_sync_pricing`, `omniroute_get_session_snapshot` | - -Full list: `GET $OMNIROUTE_URL/api/mcp/tools` - -## Scopes - -Tools are grouped into 13 scopes (chat-only, memory-readonly, full-admin, etc.). -Pass scope name as `--scope` arg or via `X-Omniroute-Scope` header. - -## Reference - -Full docs: https://github.com/diegosouzapw/OmniRoute/blob/main/docs/frameworks/MCP-SERVER.md diff --git a/skills/omniroute-monitoring/SKILL.md b/skills/omniroute-monitoring/SKILL.md deleted file mode 100644 index f2f0b23c08..0000000000 --- a/skills/omniroute-monitoring/SKILL.md +++ /dev/null @@ -1,114 +0,0 @@ ---- -name: omniroute-monitoring -description: Monitor OmniRoute system health, provider circuit breakers, per-provider latency (p50/p95/p99), quota usage, and set budget guards. Use when the user wants to check if the system is healthy, debug slow providers, manage spend limits, or set up oncall-style monitoring. ---- - -# OmniRoute — Monitoring & Health - -Requires `OMNIROUTE_URL` and `OMNIROUTE_KEY`. See [entry-point SKILL](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute/SKILL.md) for setup. - -## System health - -```bash -curl $OMNIROUTE_URL/api/health \ - -H "Authorization: Bearer $OMNIROUTE_KEY" -``` - -Returns: uptime, memory, active connections, circuit breaker states, rate limit status, cache stats. - -Unauthenticated quick check: - -```bash -curl $OMNIROUTE_URL/api/health -# → {"ok":true} -``` - -## Provider circuit breakers - -Circuit breakers prevent traffic from hitting failing providers. - -States: `CLOSED` (normal), `OPEN` (blocked), `HALF_OPEN` (probe mode — auto-recovers). - -```bash -curl $OMNIROUTE_URL/api/monitoring/health \ - -H "Authorization: Bearer $OMNIROUTE_KEY" -``` - -Response includes `circuitBreakers` array with per-provider state and `resetAt` timestamp. - -## Per-provider metrics (p50/p95/p99) - -```bash -curl $OMNIROUTE_URL/api/providers/metrics \ - -H "Authorization: Bearer $OMNIROUTE_KEY" -``` - -Response shape per provider: - -```json -{ - "provider": "anthropic", - "requests": 1247, - "successRate": 0.994, - "latency": { "p50": 820, "p95": 2100, "p99": 3800 }, - "circuitState": "CLOSED", - "tokensUsed": 2847000 -} -``` - -## Via MCP (if OmniRoute is your MCP server) - -``` -omniroute_get_health → full system health snapshot -omniroute_get_provider_metrics → p50/p95/p99 + circuit state per provider -omniroute_get_session_snapshot → cost, tokens, errors for current session -omniroute_check_quota → quota balance + percent remaining + reset time -omniroute_db_health_check → diagnose + auto-repair database drift -``` - -## Quota check - -```bash -curl $OMNIROUTE_URL/api/quota \ - -H "Authorization: Bearer $OMNIROUTE_KEY" -``` - -Returns used/total tokens and requests per provider/account, with `resetAt` timestamps. - -## Budget guard (spend limit) - -Set a session spending limit that degrades or blocks requests when hit: - -```bash -curl -X POST $OMNIROUTE_URL/api/budget/guard \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "limitUsd": 5.00, - "action": "degrade", - "degradeTo": "openai/gpt-4o-mini" - }' -``` - -`action` options: - -- `degrade` — switch to a cheaper model when limit is hit -- `block` — return 429 when limit is hit -- `alert` — continue but add `X-Budget-Warning` header - -## MCP audit log - -OmniRoute logs every MCP tool call to `mcp_audit` table. Query via API: - -```bash -curl "$OMNIROUTE_URL/api/mcp/status" \ - -H "Authorization: Bearer $OMNIROUTE_KEY" -``` - -Returns: server status, heartbeat, recent audit activity summary. - -## Errors - -- `503` on health endpoint → OmniRoute is starting up; retry in 5s -- Circuit breaker `OPEN` → provider is temporarily blocked; check `resetAt` to know when it auto-recovers -- `429 budget_exceeded` → budget guard limit reached; raise limit or wait for reset diff --git a/skills/omniroute-routing/SKILL.md b/skills/omniroute-routing/SKILL.md deleted file mode 100644 index d0a90de766..0000000000 --- a/skills/omniroute-routing/SKILL.md +++ /dev/null @@ -1,129 +0,0 @@ ---- -name: omniroute-routing -description: Create and configure OmniRoute routing combos, choose from 14 strategies (priority, weighted, auto, round-robin, cost-optimized, etc.), activate Auto-combo 9-factor scoring, and set up fallback chains. Use when the user wants to configure multi-provider routing, load balancing, or cost-optimized model selection. ---- - -# OmniRoute — Routing & Combos - -Requires `OMNIROUTE_URL` and `OMNIROUTE_KEY`. See [entry-point SKILL](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute/SKILL.md) for setup. - -## What is a combo? - -A combo is a named group of providers/models with a routing strategy. All requests through a combo are automatically distributed, failed-over, and load-balanced — the caller uses a single model ID like `my-combo`. - -## List existing combos - -```bash -curl $OMNIROUTE_URL/api/combos \ - -H "Authorization: Bearer $OMNIROUTE_KEY" -``` - -Response includes `id`, `name`, `strategy`, `enabled`, and per-target stats. - -## Create a combo - -```bash -curl -X POST $OMNIROUTE_URL/api/combos \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "name": "my-combo", - "strategy": "priority", - "targets": [ - { "provider": "anthropic", "model": "claude-opus-4-7", "weight": 1 }, - { "provider": "openai", "model": "gpt-4o", "weight": 1 } - ] - }' -``` - -## 14 routing strategies - -| Strategy | Description | -| ------------------- | -------------------------------------------------- | -| `priority` | Always use target[0]; fall back on error | -| `weighted` | Distribute by weight percentage | -| `round-robin` | Rotate targets in order | -| `fill-first` | Fill quota of target[0] before spilling | -| `least-used` | Route to target with fewest active requests | -| `cost-optimized` | Pick cheapest target for the token estimate | -| `auto` | 9-factor scoring: cost + latency + quota + circuit | -| `random` | Uniform random selection | -| `strict-random` | Random without repeating until all used | -| `p2c` | Power-of-2-choices: sample 2, pick better | -| `reset-aware` | Prefer targets near quota reset time | -| `lkgp` | Last-known-good-provider sticky routing | -| `context-optimized` | Pick best model for context length | -| `context-relay` | Chain models for very long contexts | - -## Auto-combo (recommended for production) - -Auto-combo scores each candidate on 9 factors every request: - -```bash -curl -X POST $OMNIROUTE_URL/api/combos \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "name": "prod-auto", - "strategy": "auto", - "targets": [ - { "provider": "anthropic", "model": "claude-sonnet-4-6" }, - { "provider": "openai", "model": "gpt-4o-mini" }, - { "provider": "google", "model": "gemini-2.0-flash" } - ] - }' -``` - -Then call it with: - -```bash -curl -X POST $OMNIROUTE_URL/v1/chat/completions \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ "model": "prod-auto", "messages": [{ "role": "user", "content": "Hello" }] }' -``` - -## Activate / deactivate a combo - -```bash -# Activate -curl -X PUT $OMNIROUTE_URL/api/combos/{id}/toggle \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -d '{ "enabled": true }' -``` - -## Get combo metrics - -```bash -curl $OMNIROUTE_URL/api/combos/{id}/metrics \ - -H "Authorization: Bearer $OMNIROUTE_KEY" -``` - -Returns p50/p95/p99 latency, success rate, cost, and per-target breakdown. - -## Simulate routing (dry run) - -```bash -curl -X POST $OMNIROUTE_URL/api/routing/simulate \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ "comboId": "{id}", "messages": [{ "role": "user", "content": "test" }] }' -``` - -Returns which provider would be selected and why — no actual API call is made. - -## Via MCP (if OmniRoute is your MCP server) - -``` -omniroute_list_combos → list all combos -omniroute_switch_combo → enable/disable a combo -omniroute_set_routing_strategy → change strategy at runtime -omniroute_simulate_route → dry-run routing decision -omniroute_best_combo_for_task → get recommendation by task type -``` - -## Errors - -- `404 combo not found` → check `id` from `/api/combos` -- `400 invalid strategy` → use one of the 14 strategies above -- `409 name conflict` → combo name already exists diff --git a/skills/omniroute-stt/SKILL.md b/skills/omniroute-stt/SKILL.md deleted file mode 100644 index 4008b69ffb..0000000000 --- a/skills/omniroute-stt/SKILL.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -name: omniroute-stt -description: Speech-to-text via OmniRoute using OpenAI /v1/audio/transcriptions format with auto-fallback across Whisper, AssemblyAI, Deepgram, Azure STT. Use when the user wants transcription of audio files or real-time speech recognition. ---- - -# OmniRoute — Speech-to-Text - -Requires `OMNIROUTE_URL` and `OMNIROUTE_KEY`. See [entry-point SKILL](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute/SKILL.md) for setup. - -## Endpoints - -- `POST $OMNIROUTE_URL/v1/audio/transcriptions` — multipart upload, returns text -- `POST $OMNIROUTE_URL/v1/audio/translations` — transcribe + translate to English - -## Discover - -```bash -curl $OMNIROUTE_URL/v1/models/stt | jq '.data[]' -``` - -## Example - -```bash -curl -X POST $OMNIROUTE_URL/v1/audio/transcriptions \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -F "file=@audio.mp3" \ - -F "model=whisper-1" \ - -F "response_format=verbose_json" -``` - -Response: `{ text, language, duration, segments?:[{ start, end, text }] }` - -## Supported formats - -Audio: `mp3`, `mp4`, `mpeg`, `mpga`, `m4a`, `wav`, `webm`. -Response formats: `json`, `text`, `srt`, `verbose_json`, `vtt`. - -## Errors - -- `400 invalid_file_format` → unsupported audio format -- `400 file_too_large` → exceeds provider limit (usually 25MB) -- `503` → provider unavailable; try another model in `/v1/models/stt` diff --git a/skills/omniroute-tts/SKILL.md b/skills/omniroute-tts/SKILL.md deleted file mode 100644 index f236615ca5..0000000000 --- a/skills/omniroute-tts/SKILL.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -name: omniroute-tts -description: Text-to-speech via OmniRoute using OpenAI /v1/audio/speech format with auto-fallback across OpenAI TTS, ElevenLabs, Azure Neural, Google Cloud TTS. Use when the user wants spoken audio output from text. ---- - -# OmniRoute — Text-to-Speech - -Requires `OMNIROUTE_URL` and `OMNIROUTE_KEY`. See [entry-point SKILL](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute/SKILL.md) for setup. - -## Endpoint - -- `POST $OMNIROUTE_URL/v1/audio/speech` — returns binary audio (mp3/opus/wav/flac) - -## Discover - -```bash -curl $OMNIROUTE_URL/v1/models/tts | jq '.data[]' -``` - -Each entry includes `voices:[...]` for the available voice names per provider. - -## Example - -```bash -curl -X POST $OMNIROUTE_URL/v1/audio/speech \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "model": "tts-1", - "input": "Hello from OmniRoute.", - "voice": "alloy", - "response_format": "mp3" - }' --output speech.mp3 -``` - -## Voices - -Voice names vary by provider. Check `/v1/models/tts` — each entry has `voices:[...]`. -Common OpenAI voices: `alloy`, `echo`, `fable`, `onyx`, `nova`, `shimmer`. - -## Errors - -- `400 invalid_voice` → voice not supported by this model -- `400 input_too_long` → input exceeds model character limit -- `503` → provider unavailable; try another model in `/v1/models/tts` diff --git a/skills/omniroute-web-fetch/SKILL.md b/skills/omniroute-web-fetch/SKILL.md deleted file mode 100644 index 9c009e1954..0000000000 --- a/skills/omniroute-web-fetch/SKILL.md +++ /dev/null @@ -1,47 +0,0 @@ ---- -name: omniroute-web-fetch -description: Fetch a URL and convert to clean markdown via OmniRoute proxying Jina Reader, Firecrawl, raw HTML strip. Use when the user wants to ingest a webpage as markdown for context in an LLM conversation. ---- - -# OmniRoute — Web Fetch - -Requires `OMNIROUTE_URL` and `OMNIROUTE_KEY`. See [entry-point SKILL](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute/SKILL.md) for setup. - -## Endpoint - -- `POST $OMNIROUTE_URL/v1/web/fetch` - -## Discover - -```bash -curl $OMNIROUTE_URL/v1/models/web | jq '.data[] | select(.kind == "webFetch")' -``` - -## Example - -```bash -curl -X POST $OMNIROUTE_URL/v1/web/fetch \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "model": "jina/reader", - "url": "https://anthropic.com", - "format": "markdown" - }' -``` - -Response: `{ url, title, markdown, links?:[...], images?:[...] }` - -## Parameters - -| Field | Type | Description | -| -------- | ------ | ----------------------------------------------------------------------- | -| `model` | string | Provider from `/v1/models/web` (e.g. `jina/reader`, `firecrawl/scrape`) | -| `url` | string | URL to fetch | -| `format` | string | `markdown` (default), `html`, `text` | - -## Errors - -- `400 invalid_url` → URL must be http/https -- `403 blocked` → provider blocked by target site; try a different model -- `503` → provider unavailable; try another model in `/v1/models/web` diff --git a/skills/omniroute-web-search/SKILL.md b/skills/omniroute-web-search/SKILL.md deleted file mode 100644 index ca169b2305..0000000000 --- a/skills/omniroute-web-search/SKILL.md +++ /dev/null @@ -1,49 +0,0 @@ ---- -name: omniroute-web-search -description: Web search via OmniRoute proxying Tavily, Brave Search, SerpAPI, Exa with auto-fallback. Use when the user wants live web search results, current news, or facts that may be beyond the LLM training cutoff. ---- - -# OmniRoute — Web Search - -Requires `OMNIROUTE_URL` and `OMNIROUTE_KEY`. See [entry-point SKILL](https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute/SKILL.md) for setup. - -## Endpoint - -- `POST $OMNIROUTE_URL/v1/web/search` — unified search format - -## Discover - -```bash -curl $OMNIROUTE_URL/v1/models/web | jq '.data[] | select(.kind == "webSearch")' -``` - -## Example - -```bash -curl -X POST $OMNIROUTE_URL/v1/web/search \ - -H "Authorization: Bearer $OMNIROUTE_KEY" \ - -H "Content-Type: application/json" \ - -d '{ - "model": "tavily/search", - "query": "OmniRoute github latest release", - "max_results": 5, - "include_answer": true - }' -``` - -Response: `{ answer?, results:[{ url, title, content, score }] }` - -## Parameters - -| Field | Type | Description | -| ---------------- | ------- | ------------------------------------ | -| `model` | string | Provider model from `/v1/models/web` | -| `query` | string | Search query | -| `max_results` | number | Max results (default: 5) | -| `include_answer` | boolean | Include AI-synthesized answer | -| `search_depth` | string | `basic` or `advanced` (Tavily) | - -## Errors - -- `400 query_too_long` → shorten the search query -- `503` → provider unavailable; try another model in `/v1/models/web` diff --git a/skills/omniroute/SKILL.md b/skills/omniroute/SKILL.md deleted file mode 100644 index 6291d47a53..0000000000 --- a/skills/omniroute/SKILL.md +++ /dev/null @@ -1,76 +0,0 @@ ---- -name: omniroute -description: Entry point for OmniRoute — local/remote AI gateway with OpenAI-compatible REST for chat, image, TTS, STT, embeddings, web search, web fetch, MCP, A2A. Use when the user mentions OmniRoute, OMNIROUTE_URL, or wants AI without writing provider boilerplate. This skill covers setup + indexes capability skills; fetch the relevant capability SKILL.md from the URLs below when needed. ---- - -# OmniRoute - -Local/remote AI gateway exposing OpenAI-compatible REST. One key, 207+ providers, -auto-fallback, RTK token saver, MCP server, A2A agents. - -## Setup - -```bash -export OMNIROUTE_URL="http://localhost:20128" # or VPS / tunnel URL -export OMNIROUTE_KEY="sk-..." # from Dashboard → API Keys -``` - -All requests: `${OMNIROUTE_URL}/v1/...` with `Authorization: Bearer ${OMNIROUTE_KEY}`. - -Verify: `curl $OMNIROUTE_URL/api/health` → `{"ok":true}` - -## Discover models - -```bash -curl $OMNIROUTE_URL/v1/models # chat/LLM (default) -curl $OMNIROUTE_URL/v1/models/image # image-gen -curl $OMNIROUTE_URL/v1/models/tts # text-to-speech -curl $OMNIROUTE_URL/v1/models/embedding # embeddings -curl $OMNIROUTE_URL/v1/models/web # web search + fetch -curl $OMNIROUTE_URL/v1/models/stt # speech-to-text -``` - -Use `data[].id` as `model` field in requests. Combos appear with `owned_by:"combo"`. - -## Capability skills - -| Capability | Raw URL | -| --------------------- | --------------------------------------------------------------------------------------------------- | -| Chat / code-gen | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-chat/SKILL.md | -| Image generation | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-image/SKILL.md | -| Text-to-speech | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-tts/SKILL.md | -| Speech-to-text | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-stt/SKILL.md | -| Embeddings | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-embeddings/SKILL.md | -| Web search | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-web-search/SKILL.md | -| Web fetch | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-web-fetch/SKILL.md | -| MCP server (37 tools) | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-mcp/SKILL.md | -| A2A protocol | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-a2a/SKILL.md | -| Routing & combos | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-routing/SKILL.md | -| Token compression | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-compression/SKILL.md | -| Monitoring & health | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-monitoring/SKILL.md | - -## CLI skills (omniroute binary) - -| Capability | Raw URL | -| ---------------------- | ----------------------------------------------------------------------------------------------------- | -| CLI entry point | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli/SKILL.md | -| CLI admin & lifecycle | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli-admin/SKILL.md | -| CLI providers & keys | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli-providers/SKILL.md | -| CLI cloud agents | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli-cloud/SKILL.md | -| CLI evals & benchmarks | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli-eval/SKILL.md | - -## Errors - -- `401` → set/refresh `OMNIROUTE_KEY` (Dashboard → API Keys) -- `400 Invalid model format` → check `model` exists in `/v1/models/` -- `503 Provider circuit open` → upstream provider down; retry after `Retry-After` seconds -- `429` → rate limited; honor `Retry-After` - -## Differentiators vs OpenAI direct - -- **Auto-fallback** combos (14 strategies): never stop coding even if a provider rate-limits -- **RTK token saver**: tool_result compressed via 47 specialized filters (git-diff, test-jest, terraform-plan, docker-logs…) — 20-40% token reduction -- **Caveman mode**: optional terse system prompt injection (LITE/FULL/ULTRA) — 15-25% completion reduction -- **MCP + A2A** servers built-in (this is the only AI router that exposes both protocols) -- **Memory** with FTS5 + Qdrant for persistent agent context -- **Guardrails** for PII masking, prompt injection detection, vision policies