* feat(providers): add Zylo UnoRouter and Poolside registries * feat(providers): integrate audited free-tier gateways * feat: add wave2 free-tier provider registries * feat(providers): add Mixlayer Speka and TokenReply registries * feat: add wave 2 free-tier provider registries * fix: align meganova provider slug * feat(providers): integrate wave2 free-tier gateways * feat(providers): add Wave 3-A free-tier registries * feat(providers): add HelyxAI Auriko and Poixe registries * feat(providers): add Naga AI and Chat Oripe registries * feat(providers): integrate wave3 free-tier gateways * feat(providers): add FreeInference registry * feat(providers): add Free.ai registry * feat(providers): integrate wave4 free-tier gateways * docs: synchronize provider and free-tier inventories * refactor(providers): split audited gateway catalog * feat(providers): add audited Void AI and HelixMind gateways * feat(providers): finalize audited free-tier integration * test(providers): update APIKEY split count to 229 after rebase onto release/v3.8.50 The rebase merged the release catalog (201 APIKEY providers) with the PR's 28 free-tier additions, yielding 229 total. Correct the characterization count so the partition assertion reflects the true merged state. --------- Co-authored-by: diegosouzapw <diegosouzapw@users.noreply.github.com> Co-authored-by: backryun <bakryun0718@proton.me>
12 KiB
title, version, lastUpdated
| title | version | lastUpdated |
|---|---|---|
| OmniRoute Agent Skills Catalog | 3.8.50 | 2026-08-02 |
OmniRoute Agent Skills Catalog
Source of truth:
src/lib/agentSkills/(catalog, generator, parsers) +skills/directory (SKILL.md files) Last updated: 2026-08-02 — v3.8.50
Agent Skills are structured SKILL.md files that teach external agents, MCP clients, and A2A orchestrators how to use OmniRoute's REST API and CLI. Unlike Omni Skills (which are LLM tool definitions executed inside OmniRoute), Agent Skills are a documentation catalog — static markdown that can be fed directly into agent context.
Overview
The catalog contains 45 Agent Skills (23 REST API + 21 CLI + 1 configuration workflow). Each skill has:
- A canonical ID (
omni-auth,cli-serve, etc.) - A SKILL.md file in
skills/{id}/SKILL.mdwith YAML frontmatter (name,description) + rich markdown body - REST endpoints (API skills) or CLI subcommands (CLI skills) derived from the OpenAPI spec and CLI registry
- A GitHub raw URL for live fetch:
https://raw.githubusercontent.com/diegosouzapw/OmniRoute/refs/heads/main/skills/{id}/SKILL.md
Architecture
src/shared/constants/agentSkills.ts — 45-entry curated list (name/desc/category/area/icon)
src/lib/agentSkills/
catalog.ts — getCatalog(), getSkillById(), filterCatalog(), computeCoverage()
generator.ts — generateAgentSkills() writes SKILL.md to skills/{id}/
openapiParser.ts — extracts REST endpoints from docs/openapi.yaml
cliRegistryParser.ts — extracts CLI subcommands from bin/cli-registry.ts
schemas.ts — Zod schemas: AgentSkillSchema, SkillCoverageSchema, etc.
types.ts — TypeScript interfaces: AgentSkill, SkillCoverage, etc.
skills/{id}/SKILL.md — Generated + curated markdown files (45 total)
src/app/api/agent-skills/
route.ts — GET /api/agent-skills
[id]/route.ts — GET /api/agent-skills/{id}
[id]/raw/route.ts — GET /api/agent-skills/{id}/raw (text/markdown)
coverage/route.ts — GET /api/agent-skills/coverage
generate/route.ts — POST /api/agent-skills/generate (auth required)
open-sse/mcp-server/tools/agentSkillTools.ts — 3 MCP tools (list, get, coverage)
src/lib/a2a/skills/listCapabilities.ts — A2A skill: list-capabilities
SKILL.md Format
---
name: omni-providers
description: "Manage provider connections: add, test, rotate, and remove credentials."
---
<!-- generated by src/lib/agentSkills/generator.ts; manual edits will be overwritten -->
## Overview
...
## Authentication
...
## Endpoints
...
<!-- skill:custom-start -->
## Custom Section (preserved across regeneration)
...
<!-- skill:custom-end -->
The generator preserves content between <!-- skill:custom-start --> and <!-- skill:custom-end --> on regeneration. Ten skills have curated custom blocks:
omni-mcp, omni-compression, cli-providers, cli-eval, omni-agents-a2a, omni-combos-routing, omni-auth, omni-resilience, omni-inference, cli-serve.
REST API Discovery
| Endpoint | Method | Description | Auth |
|---|---|---|---|
/api/agent-skills |
GET | List catalog (optional ?category=api|cli|config&area=<area>) |
none |
/api/agent-skills/{id} |
GET | Get single skill metadata | none |
/api/agent-skills/{id}/raw |
GET | Fetch SKILL.md as text/markdown |
none |
/api/agent-skills/coverage |
GET | Coverage stats (how many SKILL.md files exist) | none |
/api/agent-skills/generate |
POST | Trigger generator (dryRun/prune/onlyIds) | management |
Example — list all API skills:
curl "http://localhost:20128/api/agent-skills?category=api"
Example — fetch a single SKILL.md:
curl -H "Accept: text/markdown" "http://localhost:20128/api/agent-skills/omni-providers/raw"
MCP Discovery
Three MCP tools are registered under scope read:catalog:
| Tool | Description |
|---|---|
omniroute_agent_skills_list |
List skills (optional category / area filters) |
omniroute_agent_skills_get |
Get metadata + SKILL.md for one skill by id |
omniroute_agent_skills_coverage |
Coverage stats (API/CLI have/total) |
See MCP-SERVER.md for scope wiring and authentication.
A2A Discovery
The A2A skill list-capabilities returns the full 45-skill catalog as a markdown table artifact. External orchestrators can invoke it via:
{
"jsonrpc": "2.0",
"id": "1",
"method": "message/send",
"params": {
"skill": "list-capabilities",
"messages": [{ "role": "user", "content": "List all capabilities" }]
}
}
See A2A-SERVER.md for protocol details.
Catalog — 45 Skill IDs
API Skills (23)
| ID | Area | Entry Point |
|---|---|---|
omni-auth |
auth | Auth + session management |
omni-providers |
providers | Provider connection management |
omni-models |
models | Model catalog and capabilities |
omni-combos-routing |
combos-routing | Combo routing strategies |
omni-api-keys |
api-keys | API key management |
omni-usage-logs |
usage-logs | Usage and cost logs |
omni-budget |
budget | Budget guards |
omni-settings |
settings | Global settings |
omni-proxies |
proxies | Proxy pool management |
omni-cache |
cache | Semantic + prompt cache |
omni-compression |
compression | Context compression engines |
omni-context-rtk |
context-rtk | RTK compression |
omni-resilience |
resilience | Circuit breakers + cooldowns |
omni-cli-tools |
cli-tools | CLI tools REST proxy |
omni-tunnels |
tunnels | Tunnel management |
omni-sync-cloud |
sync-cloud | Cloud sync |
omni-db-backups |
db-backups | Database backups |
omni-webhooks |
webhooks | Webhook event dispatcher |
omni-mcp |
mcp | MCP server (107 tools, 3 transports) |
omni-agents-a2a |
agents-a2a | A2A agent protocol |
omni-version-manager |
version-manager | Version and update management |
omni-inference |
inference | Direct inference / completions |
CLI Skills (21)
| ID | Area | CLI Command Root |
|---|---|---|
cli-serve |
cli-serve | omniroute serve |
cli-health |
cli-health | omniroute health |
cli-providers |
cli-providers | omniroute providers |
cli-keys |
cli-keys | omniroute keys |
cli-models |
cli-models | omniroute models |
cli-chat |
cli-chat | omniroute chat |
cli-routing |
cli-routing | omniroute routing |
cli-resilience |
cli-resilience | omniroute resilience |
cli-compression |
cli-compression | omniroute compression |
cli-contexts |
cli-contexts | omniroute contexts |
cli-cost-usage |
cli-cost-usage | omniroute cost |
cli-mcp |
cli-mcp | omniroute mcp |
cli-a2a |
cli-a2a | omniroute a2a |
cli-tunnel |
cli-tunnel | omniroute tunnel |
cli-backup-sync |
cli-backup-sync | omniroute backup |
cli-policy-audit |
cli-policy-audit | omniroute policy |
cli-batches |
cli-batches | omniroute batch |
cli-eval |
cli-eval | omniroute eval |
cli-plugins-skills |
cli-plugins-skills | omniroute plugins |
cli-setup |
cli-setup | omniroute setup |
cli-skill-collector |
cli-setup | omniroute skills |
Configuration workflow (1)
| ID | Area | Entry Point |
|---|---|---|
config-codex-cli |
config-codex-cli | Codex CLI configuration workflow |
How External Agents Consume Skills
1. Discovery via REST
# Get the full catalog
curl "http://your-omniroute/api/agent-skills" | jq '.skills[] | {id, name, category}'
# Get SKILL.md for context injection
curl "http://your-omniroute/api/agent-skills/omni-providers/raw" > omni-providers.md
2. Discovery via MCP
// In a Claude Desktop / Cursor MCP client:
const result = await client.callTool("omniroute_agent_skills_list", { category: "api" });
// result.skills → array of AgentSkill with rawUrl for each
3. Discovery via A2A
import requests
resp = requests.post("http://your-omniroute/a2a", json={
"jsonrpc": "2.0", "id": "1",
"method": "message/send",
"params": {"skill": "list-capabilities", "messages": [{"role": "user", "content": "list"}]}
})
table = resp.json()["result"]["artifacts"][0]["content"]
# table is a markdown table with all 45 skill IDs + rawUrl columns
4. Direct GitHub raw fetch (no server required)
BASE="https://raw.githubusercontent.com/diegosouzapw/OmniRoute/refs/heads/main/skills"
curl "${BASE}/omni-providers/SKILL.md"
Generator
The generator reads the curated catalog + OpenAPI spec + CLI registry and writes skills/{id}/SKILL.md for each entry:
# Preview (dry run, no writes)
curl -X POST http://localhost:20128/api/agent-skills/generate \
-H "Authorization: Bearer <admin-key>" \
-H "Content-Type: application/json" \
-d '{"dryRun":true}'
# Full regeneration
curl -X POST http://localhost:20128/api/agent-skills/generate \
-H "Authorization: Bearer <admin-key>" \
-H "Content-Type: application/json" \
-d '{"dryRun":false,"prune":false}'
# Regenerate specific IDs
curl -X POST http://localhost:20128/api/agent-skills/generate \
-H "Authorization: Bearer <admin-key>" \
-H "Content-Type: application/json" \
-d '{"dryRun":false,"onlyIds":["omni-providers","cli-serve"]}'
The generator response is a GeneratorReport:
{
"generated": ["omni-providers", "cli-serve"],
"unchanged": [],
"pruned": [],
"orphansDetected": [],
"errors": []
}
Coverage API
curl "http://localhost:20128/api/agent-skills/coverage"
{
"api": { "have": 23, "total": 23 },
"cli": { "have": 21, "total": 21 },
"config": { "have": 1, "total": 1 },
"totalSkills": 45,
"generatedAt": "2026-08-02T00:00:00.000Z"
}
Related
- SKILLS.md — Omni Skills framework (LLM tool injection + marketplace)
- MCP-SERVER.md — MCP tool catalog (
omniroute_agent_skills_*tools) - A2A-SERVER.md — A2A protocol (
list-capabilitiesskill) src/lib/agentSkills/— catalog, generator, parsersskills/— generated SKILL.md files (45 entries)