AI提供商回退管理插件

Provider Fallback Plugin是一个用于OpenCode/Claude Code的AI提供商回退管理工具,支持自动故障转移、使用分析和MCP集成。

  • by AttendantLion8
  • JavaScript
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 AttendantLion8/provider-fallback-plugin

使用说明

提供商回退插件

针对OpenCode/Claude Code的AI提供商回退管理,具有自动故障转移、使用分析和MCP集成功能。

特性

  • 116型号 14个家族(克劳德、GPT、双子座、反重力、GLM、Llama等)
  • 25供应商 支持多身份验证(订阅、OAuth、API密钥)
  • 自动回退 超出费率限制或配额时
  • 使用情况分析 与供应商进行比较和成本跟踪
  • MCP服务器 用于外部集成
  • 每个项目设置 通过 .opencode/provider-fallback.local.md

安装

通过npm(推荐)

npm install -g provider-fallback-plugin

然后添加到您的OpenCode配置中(~/.config/opencode/opencode.json):

{
  "plugin": [
    "provider-fallback-plugin"
  ]
}

手动安装

git clone https://github.com/AttendantLion8/provider-fallback-plugin.git ~/plugins/provider-fallback-plugin
cd ~/plugins/provider-fallback-plugin
node scripts/install.js

命令

命令 描述
/provider-status 显示当前提供程序状态和使用情况
/provider-switch [provider] 切换到其他提供商
/provider-auth [provider] 配置身份验证
/provider-models [family] 列出可用型号
/provider-priority [providers...] 设置提供者优先级顺序
/provider-limits [provider] 配置使用限制
/provider-analytics [period] 显示使用情况分析

供应商家庭

家庭 提供者 身份验证类型
Anthropic 人的订阅,人的嘴,人的api 全部3
OpenAI OpenAI订阅、OpenAI oauth、OpenAI api 全部3个
谷歌 谷歌订阅、谷歌oauth、谷歌api 全部3个
OpenCode 开放代码反重力认证 令牌
AWS 基岩 IAM
Azure Azure API密钥
GitHub GitHub副本 OAuth
顶点 顶点,顶点谷歌 服务帐户
OpenRouter OpenRouter API密钥
一起 一起 API密钥
Groq Groq neneneba API密钥
xAI xAI订阅,xAI-api 两者都有
Mistral Mistral-api api密钥
DeepSeek DeepSeek-api api密钥
Cohere Cohere-api neneneba api密钥
ZAI ZAI编码方案 Token
反重力 反重力 令牌

模型系列

系列 型号 背景 功能
克劳德 21 128K-200K 文本、视觉、代码
GPT 39 8K-1M 文本、视觉、代码、音频
Gemini 26 32K-2M 文本、视觉、代码、音频
反重力 10 128K-200K 文本、代码、思维
GLM 7 128K-1M 文本、代码
Llama 3 128K 文本,代码
西北风 3 32K-128K 文本、代码
Grok 3 128K-1M 文字,视觉
DeepSeek 2 128K 文本、代码
Cohere 1 128K 文本,RAG
Qwen 128K 文本、代码

使用情况分析

# View analytics dashboard
node scripts/show-analytics.js

# View with options
node scripts/show-analytics.js 7d --costs --compare

# Reset analytics
node scripts/reset-analytics.js --force

MCP服务器

# Start MCP server
node mcp/server.js

# Or with custom port
MCP_PORT=3848 node mcp/server.js

可用工具:

  • provider.list / provider.active / provider.switch
  • model.list / model.info
  • analytics.summary / analytics.providers / analytics.costs
  • auth.status / auth.check

按项目配置

创建 .opencode/provider-fallback.local.md:

---
default_model: claude-sonnet-4-20250514
auto_switch: true
priority_override:
  - opencode-antigravity-auth
  - anthropic-subscription
  - openai-subscription
daily_limit: 1000
monthly_limit: 25000
---

环境变量

# Anthropic
ANTHROPIC_SUBSCRIPTION_KEY=...
ANTHROPIC_OAUTH_TOKEN=...
ANTHROPIC_API_KEY=...

# OpenAI
OPENAI_SUBSCRIPTION_KEY=...
OPENAI_OAUTH_TOKEN=...
OPENAI_API_KEY=...

# Google
GOOGLE_AI_SUBSCRIPTION=...
GOOGLE_OAUTH_TOKEN=...
GOOGLE_API_KEY=...

# OpenCode Antigravity
OPENCODE_ANTIGRAVITY_TOKEN=...
ANTIGRAVITY_AUTH_TOKEN=...
OC_ANTIGRAVITY_KEY=...

# AWS/Azure
AWS_ACCESS_KEY_ID=...
AWS_SECRET_ACCESS_KEY=...
AZURE_OPENAI_API_KEY=...

# Others
OPENROUTER_API_KEY=...
TOGETHER_API_KEY=...
GROQ_API_KEY=...
XAI_API_KEY=...
MISTRAL_API_KEY=...
DEEPSEEK_API_KEY=...
COHERE_API_KEY=...

文件结构

provider-fallback-plugin/
├── .opencode-plugin/
│   └── plugin.json           # Plugin manifest
├── agents/
│   └── provider-advisor.md   # Provider recommendation agent
├── commands/                 # 7 slash commands
├── hooks/
│   ├── hooks.json           # SessionStart + Notification hooks
│   └── scripts/             # Hook handler scripts
├── lib/
│   ├── analytics.js         # Usage tracking
│   ├── auth.js              # Authentication
│   ├── index.js             # Main export
│   ├── models.js            # 116 models
│   └── providers.js         # 25 providers
├── mcp/
│   ├── README.md            # MCP documentation
│   └── server.js            # MCP server
├── scripts/
│   ├── install.js           # Installation script
│   ├── show-analytics.js    # Analytics viewer
│   ├── reset-analytics.js   # Reset analytics
│   └── uninstall.js         # Uninstallation
├── skills/
│   └── provider-management/ # Skill documentation
├── templates/
│   └── provider-fallback.local.md
├── tests/
│   └── test.js              # Validation tests
├── package.json
└── README.md

测试

node tests/test.js

贡献

欢迎投稿!请随时提交拉取请求。

许可证

麻省理工学院 ©2025出席者Lion8