diegosouzapw/omniroute/omni-auth
Claude Code and agent skill by diegosouzapw/omniroute
- community
Checking that the SKILL.md file is still in the repository.
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.
Install
npx vskill@latest install diegosouzapw/omniroute/omni-authSKILL.md
Overview
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.
Authentication
Remote API requests use a Bearer credential. Dashboard login is different: POST /api/auth/login accepts a management password and returns an auth_token session cookie.
Endpoints
POST /api/auth/login
Authenticate user
POST /api/auth/mfa/verify
Complete a two-factor sign-in
Login step 2 (public). Trades the MFA-pending cookie set by /api/auth/login plus a TOTP or recovery code for the dashboard session cookie. Shares the login brute-force lockout; a TOTP step and a recovery code are each accepted once.
GET /api/auth/mfa/status
Two-factor authentication status
POST /api/auth/mfa/setup
Start two-factor enrollment
Re-authenticates with the current password and returns a candidate TOTP secret, its otpauth:// URI and a QR code (PNG data URI). Nothing is persisted.
POST /api/auth/mfa/enable
Finish two-factor enrollment
Persists the secret (encrypted at rest) once the current password and a code generated from it both verify. Returns ten single-use recovery codes, shown once.
POST /api/auth/mfa/disable
Turn two-factor authentication off
Requires the current password and a live TOTP or recovery code. While OMNIROUTE_DISABLE_MFA=true is set, a request from the host itself (loopback peer and loopback Host) may omit code to remove a factor that can no longer be verified; the session and password are still required.
POST /api/auth/logout
Log out
GET /api/auth/oidc/login
Start OIDC login for the dashboard admin gate
Builds an authorization URL from the configured OIDC issuer/client (discovered via {issuer}/.well-known/openid-configuration, falling back to {issuer}/authorize), sets a short-lived oidc_state cookie, and redirects the browser. Password login remains available as a fallback while OIDC is enabled.
GET /api/auth/oidc/callback
Complete OIDC login for the dashboard admin gate
Validates the state cookie, exchanges the authorization code for tokens, verifies the ID token against the issuer's JWKS (audience = client id), and requires at least one dashboard admission policy: oidcAllowedSubjects (matching sub or verified email) or oidcAdmissionClaim (matching a configured array claim in the verified ID token). When both are present, both must match. Without either policy the callback returns not_configured. On success it mints the same 30-day auth_token dashboard-session JWT used by password login and redirects to /dashboard.
GET /api/auth/csrf
GET auth › csrf
GET /api/auth/status
GET auth › status
Payloads
See the full OpenAPI specification at GET /api/openapi/spec or docs/openapi.yaml for detailed request/response schemas.
<!-- skill:custom-start --> <!-- Migrated from skills/omniroute/SKILL.md (preserved curated content) -->
OmniRoute
Local/remote AI gateway exposing OpenAI-compatible REST. One key, hundreds of providers, auto-fallback, RTK token saver, MCP server, A2A agents.
Setup
All requests: ${OMNIROUTE_URL}/v1/... with Authorization: Bearer ${OMNIROUTE_KEY}.
Verify: curl $OMNIROUTE_URL/api/health → {"ok":true}
Discover models
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/omni-inference/SKILL.md | |
| Image generation | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omni-inference/SKILL.md | |
| Text-to-speech | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omni-inference/SKILL.md | |
| Speech-to-text | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omni-inference/SKILL.md | |
| Embeddings | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omni-inference/SKILL.md | |
| Web search | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omni-inference/SKILL.md | |
| Web fetch | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omni-inference/SKILL.md | |
| MCP server | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omni-mcp/SKILL.md | |
| A2A protocol | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omni-agents-a2a/SKILL.md | |
| Routing & combos | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omni-combos-routing/SKILL.md | |
| Token compression | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omni-compression/SKILL.md | |
| Monitoring & health | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omni-resilience/SKILL.md |
CLI skills (omniroute binary)
| Capability | Raw URL | |
|---|---|---|
| CLI entry point | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/cli-serve/SKILL.md | |
| CLI admin & lifecycle | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/cli-serve/SKILL.md | |
| CLI providers & keys | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/cli-providers/SKILL.md | |
CLI cloud agents (omniroute cloud …) | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/cli-backup-sync/SKILL.md | |
| CLI evals & benchmarks | https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/cli-eval/SKILL.md |
Errors
401→ set/refreshOMNIROUTE_KEY(Dashboard → API Keys)400 Invalid model format→ checkmodelexists in/v1/models/<kind>503 Provider circuit open→ upstream provider down; retry afterRetry-Afterseconds429→ rate limited; honorRetry-After
Differentiators vs OpenAI direct
- Auto-fallback combos (every routing strategy): 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
<!-- skill:custom-end -->
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/omni-auth/SKILL.md
Popularity
- Repository stars
- 70,316
- Repository forks
- 9,982
- 7-day trend score
- 56
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/diegosouzapw/omniroute/omni-auth)