omni-auth

GitHub

管理 OmniRoute API 的认证与会话令牌,支持 Bearer Token、密码登录及 OIDC 流程。提供获取 Session Cookie、配置登录要求及处理 CSRF 的具体端点与操作指南。

skills/omni-auth/SKILL.md cheaper-inference/OmniRoute

触发场景

需要调用 OmniRoute API 进行身份验证 处理 Dashboard 登录或 OIDC 回调 配置 API 访问权限与会话管理

安装

npx skills add cheaper-inference/OmniRoute --skill omni-auth -g -y
更多选项

不安装直接使用

npx skills use cheaper-inference/OmniRoute@omni-auth

指定 Agent (Claude Code)

npx skills add cheaper-inference/OmniRoute --skill omni-auth -a claude-code -g -y

安装 repo 全部 skill

npx skills add cheaper-inference/OmniRoute --all -g -y

预览 repo 内 skill

npx skills add cheaper-inference/OmniRoute --list

SKILL.md

Frontmatter
{
    "name": "omni-auth",
    "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."
}

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

curl -X POST http://localhost:20128/api/auth/login \
  -H "Content-Type: application/json" \
  -c cookie.jar \
  -d '{"password":"<management-password>"}'

POST /api/auth/logout

Log out

CSRF_TOKEN=$(curl -s http://localhost:20128/api/auth/csrf -b cookie.jar | jq -r .token)
curl -X POST http://localhost:20128/api/auth/logout \
  -b cookie.jar \
  -H "x-omniroute-csrf: $CSRF_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'

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.

curl http://localhost:20128/api/auth/oidc/login \
  -b cookie.jar

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.

curl http://localhost:20128/api/auth/oidc/callback \
  -b cookie.jar

GET /api/auth/csrf

GET auth › csrf

curl http://localhost:20128/api/auth/csrf \
  -b cookie.jar

GET /api/auth/status

GET auth › status

curl http://localhost:20128/api/auth/status \
  -b cookie.jar

Payloads

See the full OpenAPI specification at GET /api/openapi/spec or docs/openapi.yaml for detailed request/response schemas.

OmniRoute

Local/remote AI gateway exposing OpenAI-compatible REST. One key, 380 providers, auto-fallback, RTK token saver, MCP server, A2A agents.

Setup

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

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/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 (110 tools) 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/refresh OMNIROUTE_KEY (Dashboard → API Keys)
  • 400 Invalid model format → check model exists in /v1/models/<kind>
  • 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 (19 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

版本历史

  • 5dbd2eb 当前 2026-11-03 07:32
  • d804179 2026-10-19 14:21

    更新 Git 提交日志摘要:集成 Demon Route 提供商,修复注册表顺序,更新文档计数至 375 个提供商,同步技能文件版本。

  • ba597b6 2026-09-09 13:20

    更新 OpenAPI 规范以覆盖更多路由,并重新生成相关的 Agent Skill 文件以保持与最新接口定义一致。

  • 0ad0331 2026-08-28 16:39

    修复 CLI 中打包机器令牌认证的恢复问题;变更登录端点以支持密码认证并引入 CSRF 保护;更新 OIDC 回调逻辑以验证 JWKS 和主体白名单。

  • 3d7ed7a 2026-08-20 06:19

    新增 OIDC 登录与回调端点支持;更新 AI 网关提供商数量至 327 家。

  • 1cafd32 2026-07-25 11:47

同 Skill 集合

config/quality/skill-templates/green-prs/SKILL.md
config/quality/skill-templates/merge-batch/SKILL.md
config/quality/skill-templates/merge-prs/SKILL.md
config/quality/skill-templates/quality-scan/SKILL.md
config/quality/skill-templates/sweep-reds/SKILL.md
config/quality/skill-templates/validate-release-green/SKILL.md
skills/cli-a2a/SKILL.md
skills/cli-backup-sync/SKILL.md
skills/cli-batches/SKILL.md
skills/cli-chat/SKILL.md
skills/cli-compression/SKILL.md
skills/cli-contexts/SKILL.md
skills/cli-cost-usage/SKILL.md
skills/cli-eval/SKILL.md
skills/cli-health/SKILL.md
skills/cli-keys/SKILL.md
skills/cli-mcp/SKILL.md
skills/cli-models/SKILL.md
skills/cli-plugins-skills/SKILL.md
skills/cli-policy-audit/SKILL.md
skills/cli-providers/SKILL.md
skills/cli-resilience/SKILL.md
skills/cli-routing/SKILL.md
skills/cli-serve/SKILL.md
skills/cli-setup/SKILL.md
skills/cli-skill-collector/SKILL.md
skills/cli-tunnel/SKILL.md
skills/config-codex-cli/SKILL.md
skills/omni-agents-a2a/SKILL.md
skills/omni-api-keys/SKILL.md
skills/omni-budget/SKILL.md
skills/omni-cache/SKILL.md
skills/omni-cli-tools/SKILL.md
skills/omni-combos-routing/SKILL.md
skills/omni-compression/SKILL.md
skills/omni-context-rtk/SKILL.md
skills/omni-db-backups/SKILL.md
skills/omni-github-skills/SKILL.md
skills/omni-inference/SKILL.md
skills/omni-mcp/SKILL.md
skills/omni-models/SKILL.md
skills/omni-providers/SKILL.md
skills/omni-proxies/SKILL.md
skills/omni-resilience/SKILL.md
skills/omni-settings/SKILL.md
skills/omni-sync-cloud/SKILL.md
skills/omni-tunnels/SKILL.md
skills/omni-usage-logs/SKILL.md
skills/omni-version-manager/SKILL.md

元信息

文件数
0
版本
5dbd2eb
Hash
bc95936e
收录时间
2026-07-25 11:47

首页 - Wiki
Copyright © 2011-2026 iteam. Current version is 2.156.0. UTC+08:00, 2026-11-07 07:37
浙ICP备14020137号-1