mcpField
O
omniroute

omniroute

github.com/funcodingdev开发250 次安装24 周前更新
代码仓库

关于 omniroute

omniroute 是面向 AI Agent 和开发者的本地或远程 AI 网关,以 OpenAI 兼容 REST 接口统一接入多家提供方,并内置路由、压缩及协议服务。

主要功能

  1. 01OpenAI 兼容 REST 接口
  2. 02多提供方模型发现与路由
  3. 03自动故障回退与组合策略
  4. 04工具结果令牌压缩
  5. 05PII 遮蔽与提示注入检测
  6. 06内置 MCP 与 A2A 服务

适用场景

  1. 01在不同提供方间统一调用模型
  2. 02提供方限流或故障时自动回退
  3. 03压缩工具结果以减少令牌用量
  4. 04为 Agent 提供持久上下文与防护

MCP 相关

内置 MCP 服务并提供 37 个工具,供 MCP 客户端调用;同时也内置 A2A 服务。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/funcodingdev/omniroute --skill omniroute

安装后在 Claude Code 中输入/omniroute确认已加载。

详细介绍

OmniRoute

本地/远程 AI 网关,提供与 OpenAI 兼容的 REST 接口。一个密钥即可接入 207+ 个提供商,支持自动回退、RTK 令牌节省、MCP 服务和 A2A Agent。

设置

export OMNIROUTE_URL="http://localhost:20128"      # or VPS / tunnel URL
export OMNIROUTE_KEY="sk-..."                       # from Dashboard → API Keys

所有请求都使用 ${OMNIROUTE_URL}/v1/...,并附带 Authorization: Bearer ${OMNIROUTE_KEY}。

验证:curl $OMNIROUTE_URL/api/health → {"ok":true}

发现模型

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

在请求的 model 字段中使用 data[].id。组合项会显示为 owned_by:"combo"。

能力技能

能力原始 URL
聊天 / 代码生成https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-chat/SKILL.md
图像生成https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-image/SKILL.md
文本转语音https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-tts/SKILL.md
语音转文本https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-stt/SKILL.md
嵌入https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-embeddings/SKILL.md
网页搜索https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-web-search/SKILL.md
网页抓取https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-web-fetch/SKILL.md
MCP 服务(37 个工具)https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-mcp/SKILL.md
A2A 协议https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-a2a/SKILL.md
路由与组合https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-routing/SKILL.md
令牌压缩https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-compression/SKILL.md
监控与运行状况https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-monitoring/SKILL.md

CLI 技能(omniroute binary)

能力原始 URL
CLI 入口https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli/SKILL.md
CLI 管理与生命周期https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli-admin/SKILL.md
CLI 提供商与密钥https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli-providers/SKILL.md
CLI 云端 Agenthttps://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli-cloud/SKILL.md
CLI 评测与基准测试https://raw.githubusercontent.com/diegosouzapw/OmniRoute/main/skills/omniroute-cli-eval/SKILL.md

错误

  • 401 → 设置/刷新 OMNIROUTE_KEY(Dashboard → API Keys)
  • 400 Invalid model format → 检查 /v1/models/<kind> 中是否存在 model
  • 503 Provider circuit open → 上游提供商不可用;等待 Retry-After 秒后重试
  • 429 → 请求频率受限;遵循 Retry-After 指示

与 OpenAI 直连相比的差异化优势

  • 自动故障转移组合(14 种策略):即使提供商触发速率限制,也绝不会停止编码
  • RTK 令牌节省器:通过 47 种专用过滤器压缩 tool_result(git-diff、test-jest、terraform-plan、docker-logs……),令牌用量减少 20-40%
  • Caveman 模式:可选的简洁系统提示词注入(LITE/FULL/ULTRA),生成内容减少 15-25%
  • 内置 MCP + A2A 服务(这是唯一同时支持这两种协议的 AI 路由器)
  • 记忆:使用 FTS5 + Qdrant 保存持久化 Agent 上下文
  • 护栏:用于 PII 脱敏、提示词注入检测和视觉策略

评论

支持 Markdown