AIClient-2-API

GitHub
6.7k 995 简单 1 次阅读 今天GPL-3.0语言模型插件
AI 解读 由 AI 自动生成,仅供参考

AIClient-2-API 是一款强大的代理工具,旨在将 Gemini CLI、Antigravity、Codex、Grok 和 Kiro 等仅支持特定客户端的大模型服务,统一封装为标准的 OpenAI API 接口。它通过模拟各类客户端的请求行为,让用户能够轻松连接原本难以直接调用的模型资源。

这一工具主要解决了大模型生态中接口标准不统一、部分优质模型缺乏通用 API 支持的痛点。开发者无需再为适配不同平台的私有协议而耗费精力,即可在一个统一的框架下调用多种模型。特别值得一提的是,它不仅支持每日数千次的 Gemini 模型请求,还允许用户免费使用 Kiro 内置的 Claude 模型,极大降低了测试与开发成本。

AIClient-2-API 非常适合 AI 应用开发者、研究人员以及需要快速集成多模型能力的技术团队。无论是构建聊天机器人、代码辅助工具,还是进行模型效果对比研究,它都能提供高效、稳定的后端支持。其基于 Node.js 开发,支持 Docker 部署,具备开箱即用的便利性,同时遵循 GPL v3 开源协议,社区活跃且文档完善。通过该工具,用户可以更专注于业务逻辑创新,而非繁琐的接口对接工作,从而显著提升 AI 开发效率。

使用场景

某初创团队正在开发一款智能代码助手,需要同时调用 Gemini、Grok 和 Kiro 等多个大模型来对比生成效果,但受限于各厂商独立的客户端协议和高昂的 API 成本。

没有 AIClient-2-API 时

  • 开发效率低下:团队需为 Gemini CLI、Grok 等不同模型分别编写适配代码,维护多套差异巨大的请求逻辑,导致新功能上线缓慢。
  • 资源成本高昂:直接调用官方接口费用昂贵,且无法利用 Kiro 内置的免费 Claude 模型额度,造成预算快速耗尽。
  • 并发能力受限:单一渠道难以支撑每日数千次的测试请求,频繁触发限流,导致自动化测试流程经常中断。
  • 集成复杂度高:现有开发框架主要基于 OpenAI 标准构建,接入非 OpenAI 体系的模型需要大量额外的转换工作。

使用 AIClient-2-API 后

  • 统一开发接口:AIClient-2-API 将各类私有协议封装为标准的 OpenAI 兼容接口,团队只需维护一套代码即可无缝切换底层模型。
  • 显著降低成本:通过模拟请求技术,团队成功调用了 Kiro 中免费的 Claude 模型,并实现了每日数千次低成本的 Gemini 请求,大幅节省开支。
  • 提升系统稳定性:本地代理服务有效缓解了并发压力,支持高频次的自动化测试运行,确保了开发流程的连续性与稳定性。
  • 快速灵活接入:借助现成的 API 封装,开发人员能在几分钟内将新模型接入现有系统,无需关注底层复杂的认证与协议细节。

AIClient-2-API 通过统一异构模型接口与优化资源调度,让多模型协同开发变得像调用单一服务一样简单高效。

运行环境要求

操作系统
  • Linux
  • macOS
  • Windows
GPU

未说明

内存

未说明

依赖
notes该工具基于 Node.js 开发,非 Python 项目。支持通过 Docker 一键部署或源码运行。主要功能是作为 API 代理,将各类客户端专用大模型(如 Gemini CLI, Codex, Grok 等)转换为 OpenAI 兼容接口,不涉及本地大模型推理,因此无特定 GPU 或大内存需求。
python未说明
Node.js >= 20.0.0
Docker >= 20.0.0 (可选)
AIClient-2-API hero image

快速开始

logo

AIClient-2-API 🚀

一款功能强大的代理工具,能够统一处理各类仅限客户端调用的大模型API(Gemini CLI、Antigravity、Codex、Grok、Kiro等)的请求,模拟这些请求,并将其封装成一个本地的OpenAI兼容接口。

justlovemaki%2FAIClient-2-API | Trendshift

💎 赞助商

PackyCode赞助商 PackyCode是一家可靠高效的API中继服务提供商,为Claude Code、Codex、Gemini等提供中继服务。PackyCode为我们的软件用户提供特别折扣:通过此链接注册,并在充值时输入AIClient2API优惠码,即可享受10%折扣
AICodeMirror赞助商 感谢AICodeMirror对本项目的赞助!AICodeMirror为Claude Code / Codex / Gemini CLI提供官方高稳定性中继服务,具备企业级并发能力、快速开票以及全天候专属技术支持。Claude Code / Codex / Gemini官方渠道价格分别仅为原价的38% / 2% / 9%,叠加充值额外折扣!AICodeMirror为AIClient-2-API用户推出特别福利:通过此链接注册,首次充值即可享受20%折扣,企业客户更可最高享受25%折扣!
LingtrueAPI赞助商 感谢LingtrueAPI对本项目的赞助!LingtrueAPI是一个全球性的大模型API中介服务平台,为Claude opus 4.6、GPT 5.4、Gemini 3.1 pro等多种模型提供API调用服务。它致力于让用户以低成本、高稳定性的方式接入全球AI能力,从而最大化生产效率。LingtrueAPI为本软件用户提供特别折扣:通过此链接注册,首次充值时输入LingtrueAPI优惠码,即可享受10%折扣
Poixe AI赞助商 Poixe AI提供可靠的LLM API服务。您可以通过该平台的API端点无缝构建AI驱动的产品。此外,您还可以作为供应商向平台提供AI API资源并获得收益。通过AIClient-2-API专属推荐链接注册,首次充值即可获得5美元奖励。
赞助联系方式 成为赞助商
如您希望赞助本项目,请扫描左侧的微信二维码(请注明意向:赞助)。

🚀 概述

AIClient2API 是一款 API 代理服务,突破客户端使用限制,将原本仅限于客户端使用的免费大模型(如 Gemini、Antigravity、Codex、Grok、Kiro)转换为标准的 OpenAI 兼容接口,可供任何应用程序调用。该服务基于 Node.js 构建,支持 OpenAI、Claude 和 Gemini 协议之间的智能转换,使 Cherry-Studio、NextChat 和 Cline 等工具能够大规模自由使用 Claude Opus 4.5、Gemini 3.0 Pro 和 Qwen3 Coder Plus 等先进模型。项目采用基于策略模式和适配器模式的模块化架构,内置账号池管理、智能轮询、自动故障转移和健康检查机制,确保 99.9% 的服务可用性。

[!NOTE] 🎉 重要里程碑

📅 版本更新日志

点击展开详细版本历史
  • 2026.03.02 - 增加 Grok 协议支持,支持通过 Cookie/SSO 访问 xAI Grok 系列模型(Grok 3/4),支持多模态输入、图像/视频生成、自动刷新令牌及流式输出
  • 2026.01.26 - 增加 Codex 协议支持:支持 OpenAI Codex 的 OAuth 授权访问
  • 2026.01.25 - 增强 AI Monitor 插件:支持在 AI 协议转换前后监控请求参数和响应。优化日志管理:统一日志格式,提供可视化配置
  • 2026.01.15 - 优化提供商池管理器:新增异步刷新队列机制、缓冲队列去重、全局并发控制、节点预热及自动过期检测
  • 2026.01.03 - 增加主题切换功能,并优化提供商池初始化,移除使用提供商默认配置的回退策略
  • 2025.12.30 - 增加主进程管理和自动更新功能
  • 2025.12.25 - 统一日志配置管理:所有配置集中到 configs/ 目录。Docker 用户需更新挂载路径为 -v "local_path:/app/configs"
  • 2025.12.11 - Docker Hub 上现已提供自动构建的 Docker 镜像:justlikemaki/aiclient-2-api
  • 2025.11.30 - 增加 Antigravity 协议支持,可通过 Google 内部接口访问 Gemini 3 Pro、Claude Sonnet 4.5 等模型
  • 2025.11.11 - 增加 Web UI 管理控制台,支持实时配置管理和健康状态监测
  • 2025.11.06 - 增加对 Gemini 3 Preview 的支持,提升模型兼容性并优化性能
  • 2025.10.18 - Kiro 开放注册,新账户可获得 500 积分,全面支持 Claude Sonnet 4.5
  • 2025.09.01 - 集成 Qwen Code CLI,新增 qwen3-coder-plus 模型支持
  • 2025.08.29 - 发布账号池管理功能,支持多账号轮询、智能故障转移及自动降级策略
    • 配置:在 configs/config.json 中添加 PROVIDER_POOLS_FILE_PATH 参数
    • 参考配置:provider_pools.json
  • 发展历程
    • 支持 Gemini CLI、Kiro 等 client2API
    • OpenAI、Claude、Gemini 三协议互转,自动智能切换

💡 核心优势

🎯 统一接入,一站式管理

  • 多模型统一接口:通过标准的 OpenAI 兼容协议,只需一次配置即可访问包括 Gemini、Claude、Grok、Codex、Kimi K2、MiniMax M2 在内的主流大模型。
  • 灵活切换机制:支持通过启动参数或环境变量动态切换模型,满足不同场景需求。
  • 零成本迁移:完全兼容 OpenAI API 规范,Cherry-Studio、NextChat、Cline 等工具无需修改即可使用。
  • 多协议智能转换:支持 OpenAI、Claude 和 Gemini 协议之间的智能转换,实现跨协议模型调用。

🚀 突破限制,提升效率

  • 绕过官方限制:利用 OAuth 授权机制,有效突破 Gemini、Antigravity 等服务的速率和配额限制。
  • TLS 指纹绕过:内置 TLS Sidecar(Go uTLS),模拟浏览器特性,有效绕过 Cloudflare 对 Grok 等服务的 403 封锁。
  • 免费使用高级模型:通过 Kiro API 模式免费使用 Claude Opus 4.5,通过 Qwen OAuth 模式使用 Qwen3 Coder Plus,降低使用成本。
  • 智能账号池调度:支持多账号轮询、自动故障转移和配置降级,确保 99.9% 的服务可用性。

🛡️ 安全可控,数据透明

  • 全链路日志记录:捕获所有请求和响应数据,支持审计和调试。
  • 私有数据集构建:基于日志数据快速构建专有训练数据集。
  • 系统提示词管理:支持覆盖和追加模式,实现统一基础指令与个性化扩展的完美结合。

🔧 开发者友好,易于扩展

  • Web UI 管理控制台:实时配置管理、健康状态监测、API 测试和日志查看。
  • 模块化架构:基于策略模式和适配器模式,新增模型提供商只需 3 步即可完成集成。
  • 完善的测试覆盖:集成测试和单元测试覆盖率 90%+,确保代码质量。
  • 容器化部署:提供 Docker 支持,一键部署,跨平台运行。

📑 快速导航


🔧 使用说明

🚀 快速入门

使用 AIClient-2-API 最推荐的方式是通过自动化脚本启动,并直接在 Web UI 控制台 中进行可视化配置。

🐳 Docker 快速入门(推荐)

docker run -d -p 3000:3000 -p 8085-8086:8085-8086 -p 1455:1455 -p 19876-19880:19876-19880 --restart=always -v "your_path:/app/configs" --name aiclient2api justlikemaki/aiclient-2-api

参数说明

  • -d:在后台运行容器
  • -p 3000:3000 ...:端口映射。3000 用于 Web UI,其他端口用于 OAuth 回调(Gemini:8085,Antigravity:8086,Codex:1455,Kiro:19876–19880)
  • --restart=always:设置容器自动重启策略
  • -v "your_path:/app/configs":挂载配置目录(将 your_path 替换为实际路径,例如 /home/user/aiclient-configs
  • --name aiclient2api:指定容器名称

🐳 使用 Docker Compose 部署

你也可以使用 Docker Compose 进行部署。首先进入 docker 目录:

cd docker
mkdir -p configs
docker compose up -d

如果你想从源码构建而不是使用预构建的镜像,请编辑 docker-compose.yml 文件:

  1. 注释掉 image: justlikemaki/aiclient-2-api:latest 这一行。
  2. 解除对 build: 部分的注释。
  3. 执行 docker compose up -d --build

1. 运行启动脚本

  • Linux/macOSchmod +x install-and-run.sh && ./install-and-run.sh
  • Windows:双击 install-and-run.bat

💡 如果脚本执行失败,可以尝试手动安装依赖并启动:

npm install
npm start

2. 访问控制台

服务器启动后,打开浏览器访问: 👉 http://localhost:3000

默认密码admin123(登录后可在控制台中更改,或通过修改 pwd 文件进行更改)

3. 可视化配置(推荐)

进入 “配置” 页面,你可以:

  • ✅ 填写各提供商的 API Key 或上传 OAuth 凭证文件
  • ✅ 实时切换默认模型提供商
  • ✅ 监控健康状态和实时请求日志

4. 本地环境准备(非 Docker 用户)

如果你直接在本地机器上运行(通过脚本或 Node.js),并且需要绕过 Grok 等服务的 TLS 检测,请确保:

  • 安装 Go 语言:前往 Go 官方网站 下载并安装(1.20 及以上版本)。
  • 手动编译 Sidecar:执行以下命令编译 TLS 代理组件:
    cd tls-sidecar && go build -o tls-sidecar && cd ..
    
    注意:如果未编译该二进制文件,TLS Sidecar 功能将无法启动,因为找不到可执行文件。

脚本执行示例

========================================
  AI Client 2 API 快速安装脚本
========================================

[检查] 检查是否已安装 Node.js...
✅ Node.js 已安装,版本:v20.10.0
✅ 找到 package.json 文件
✅ node_modules 目录已存在
✅ 项目文件检查完成

========================================
  启动 AI Client 2 API 服务器...
========================================

🌐 服务器将在 http://localhost:3000 启动
📖 请访问 http://localhost:3000 查看管理界面
⏹️ 按 Ctrl+C 可停止服务器

💡 提示:脚本会自动安装依赖并启动服务器。如果遇到任何问题,脚本会提供清晰的错误信息和解决方案建议。


📋 核心功能

Web UI 管理控制台

Web UI

功能完善的 Web 管理界面,包括:

📊 仪表盘:系统概览、交互式路由示例、客户端配置指南

⚙️ 配置:实时修改参数,支持所有提供商(Gemini、Antigravity、OpenAI、Claude、Kiro、Qwen),包含高级设置和文件上传功能

🔗 提供商池:监控活跃连接、提供商健康统计、启用/禁用管理

📁 配置文件:集中式 OAuth 凭证管理,支持搜索筛选和文件操作

📜 实时日志:实时显示系统和请求日志,并提供管理控制

🔐 登录验证:默认密码为 admin123,可通过 pwd 文件修改

访问方式:http://localhost:3000 → 登录 → 侧边栏导航 → 配置立即生效

多模态输入能力

支持图片、文档等多种输入类型,为您提供更丰富的交互体验和更强大的应用场景。

最新模型支持

无缝支持以下最新大模型,只需在 Web UI 或 configs/config.json 中配置相应端点即可:

  • Grok 3 / Grok 4 - xAI 的旗舰模型,现已通过 Grok Cookie/SSO 支持,支持思维模型、图像生成和视频生成
  • Claude 4.5 Opus - Anthropic 史上最强模型,现已通过 Kiro、Antigravity 支持
  • Gemini 3 Pro - Google 的下一代架构预览,现已通过 Gemini、Antigravity 支持
  • Qwen3 Coder Plus - 阿里巴巴通义千问最新的代码专用模型,现已通过 Qwen Code 支持
  • Kimi K2 / MiniMax M2 - 国内顶级旗舰模型同步支持,现已通过自定义 OpenAI、Claude 支持

🔐 授权配置指南

点击展开各提供商的详细授权配置步骤

💡 小贴士: 为获得最佳体验,建议通过 Web UI 控制台 进行可视化授权管理。

🌐 Web UI 快速授权(推荐)

在 Web UI 管理界面中,您可以快速完成授权配置:

  1. 生成授权:在 “提供商池” 页面或 “配置” 页面,点击相应提供商(如 Gemini、Qwen)右上角的 “生成授权” 按钮。
  2. 扫描/登录:会弹出授权对话框,您可以点击 “在浏览器中打开” 进行登录验证。对于 Qwen,只需完成网页登录;而对于 Gemini 和 Antigravity,则需完成 Google 账号授权。
  3. 自动保存:授权成功后,系统会自动获取凭据并将其保存到 configs/ 目录下的对应文件中。您可以在 “配置文件” 页面查看新生成的凭据。
  4. 可视化管理:您可以在 Web UI 中随时上传或删除凭据,也可以使用 “快速关联” 功能,一键将现有凭据文件绑定到提供商。

Gemini CLI OAuth 配置

  1. 获取 OAuth 凭据:访问 Google Cloud 控制台 创建项目并启用 Gemini API。
  2. 项目配置:您可能需要提供有效的 Google Cloud 项目 ID,可通过启动参数 --project-id 指定。
  3. 确保项目 ID:在 Web UI 中配置时,请确保输入的项目 ID 与 Google Cloud 控制台和 Gemini CLI 中显示的项目 ID 一致。

Antigravity OAuth 配置

  1. 个人账号:个人账号需要单独授权,申请渠道已关闭。
  2. Pro 会员:Antigravity 目前暂时对 Pro 会员开放,您需要先购买 Pro 会员资格。
  3. 组织账号:组织账号需要单独授权,请联系管理员获取授权。

Qwen Code OAuth 配置

  1. 首次授权:配置 Qwen 服务后,系统会自动在浏览器中打开授权页面。
  2. 推荐参数:为获得最佳效果,建议使用官方默认参数:
    {
      "temperature": 0,
      "top_p": 1
    }
    

Kiro API 配置

  1. 环境准备下载并安装 Kiro 客户端
  2. 完成授权:在客户端登录您的账户以生成 kiro-auth-token.json 凭证文件。
  3. 最佳实践:建议与 Claude Code 搭配使用,以获得最佳体验。
  4. 重要提示:Kiro 服务的使用政策已更新,请访问官方网站了解最新的使用限制和条款。

Kiro 扩展思维(Claude 模型)

AIClient-2-API 在使用 Claude 兼容请求(/v1/messages)或 OpenAI 兼容请求(/v1/chat/completions)并路由至 claude-kiro-oauth 时,支持 Kiro 扩展思维功能。

Claude 兼容(/v1/messages

curl http://localhost:3000/claude-kiro-oauth/v1/messages \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer your-api-key" \
  -d '{
    "model": "claude-sonnet-4-5",
    "max_tokens": 1024,
    "thinking": { "type": "enabled", "budget_tokens": 10000 },
    "messages": [{ "role": "user", "content": "请逐步解答。" }]
  }'

OpenAI 兼容(/v1/chat/completions

curl http://localhost:3000/claude-kiro-oauth/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer your-api-key" \
  -d '{
    "model": "claude-sonnet-4-5",
    "messages": [{ "role": "user", "content": "请逐步解答。" }],
    "extra_body": {
      "anthropic": {
        "thinking": { "type": "enabled", "budget_tokens": 10000 }
      }
    }
  }'

自适应模式

  • Claude:"thinking": { "type": "adaptive", "effort": "high" }
  • OpenAI:"extra_body.anthropic.thinking": { "type": "adaptive", "effort": "high" }

注意事项:

  • budget_tokens 的取值范围被限制为 [1024, 24576](若未指定或无效,则默认为 20000)。
  • 令牌的获取、刷新及池内轮换机制保持不变。

Codex OAuth 配置

  1. 生成授权:在 Web UI 的“提供商池”或“配置”页面,点击 Codex 的“生成授权”按钮。
  2. 浏览器登录:系统会打开 OpenAI Codex 的授权页面,供您完成 OAuth 登录。
  3. 自动保存:授权成功后,系统会自动保存 Codex 的 OAuth 凭证文件。
  4. 回调端口:请确保 OAuth 回调端口 1455 未被占用。

Grok Cookie/SSO 配置

  1. 获取 SSO 令牌:登录 Grok 官方网站 后,在浏览器开发者工具的 Application -> Cookies 中复制 sso 的值。
  2. 进入配置:在 Web UI 的“配置”页面或直接修改配置文件,将该令牌填入 GROK_COOKIE_TOKEN
  3. 支持的功能
    • 聊天和思维模型(Grok 3 Thinking)
    • 图像生成(Grok Imagine)
    • 视频生成(Grok Video)
  4. 注意事项:请确保 GROK_USER_AGENT 与获取 Cookie 时使用的浏览器一致,以免被封禁。

账户池管理配置

  1. 创建池配置文件:参照 provider_pools.json.example 创建配置文件。
  2. 配置池参数:在 configs/config.json 中设置 PROVIDER_POOLS_FILE_PATH,使其指向池配置文件。
  3. 启动参数配置:使用 --provider-pools-file <路径> 参数指定池配置文件的路径。
  4. 健康检查:系统会自动进行定期健康检查,并避免使用不健康的提供商。

📁 授权文件存储路径

点击展开各服务的默认授权凭证存储位置

各服务授权凭证文件的默认存储位置:

服务 默认路径 说明
Gemini ~/.gemini/oauth_creds.json OAuth 认证凭证
Kiro ~/.aws/sso/cache/kiro-auth-token.json Kiro 认证令牌
Qwen ~/.qwen/oauth_creds.json Qwen OAuth 凭证
Antigravity ~/.antigravity/oauth_creds.json Antigravity OAuth 凭证(支持 Claude 4.5 Opus)
Codex ~/.codex/oauth_creds.json Codex OAuth 凭证

注意: ~ 表示用户主目录(Windows: C:\Users\用户名, Linux/macOS: /home/用户名/Users/用户名

自定义路径: 可通过配置文件中的相关参数或环境变量指定自定义存储位置


高级配置

点击展开代理配置、模型过滤及回退的高级设置

1. 接入代理配置

本项目支持灵活的代理配置,既可为不同提供商统一配置代理,也可使用各提供商专用的代理端点。

配置方式

  1. Web UI 配置(推荐):便捷的配置管理

    在 Web UI 的“配置”页面中,您可以直观地配置所有代理选项:

    • 统一代理:在“代理设置”区域填写代理地址,并勾选需要使用该代理的提供商
    • 提供商端点:在每个提供商的配置区域,直接将 Base URL 修改为代理后的端点
    • 点击“保存配置”:无需重启服务即可立即生效
  2. 统一代理配置:配置全局代理并指定哪些提供商使用该代理

    • Web UI 配置:在“配置”页面的“代理设置”区域填写代理地址,并勾选需要使用代理的提供商
    • 配置文件:在 configs/config.json 中配置
    {
      "PROXY_URL": "http://127.0.0.1:7890",
       "PROXY_ENABLED_PROVIDERS": [
         "gemini-cli-oauth",
         "gemini-antigravity",
         "claude-kiro-oauth",
         "grok-custom"
       ]
    }
    
  3. 提供商专用代理端点:部分提供商(如 OpenAI、Claude)支持配置代理后的 API 端点

    • Web UI 配置:在“配置”页面的各提供商配置区域,修改对应的 Base URL
    • 配置文件:在 configs/config.json 中配置
    {
      "OPENAI_BASE_URL": "https://your-proxy-endpoint.com/v1",
      "CLAUDE_BASE_URL": "https://your-proxy-endpoint.com"
    }
    

支持的代理类型

  • HTTP 代理http://127.0.0.1:7890
  • HTTPS 代理https://127.0.0.1:7890
  • SOCKS5 代理socks5://127.0.0.1:1080

使用场景

  • 网络受限环境:适用于无法直接访问 Google、OpenAI 等服务的网络环境
  • 混合配置:部分提供商使用统一代理,另一些则使用各自的代理端点
  • 灵活切换:可在 Web UI 中随时启用或禁用特定提供商的代理

注意事项

  • 代理配置优先级:统一代理配置 > 提供商专用端点 > 直连
  • 请确保代理服务稳定可用,否则可能影响服务质量
  • SOCKS5 代理通常比 HTTP 代理性能更好

2. 模型过滤配置

支持通过 notSupportedModels 配置排除不支持的模型,系统会自动跳过这些提供商。

配置:在 configs/provider_pools.json 中为提供商添加 notSupportedModels 字段:

{
  "gemini-cli-oauth": [
    {
      "uuid": "provider-1",
      "notSupportedModels": ["gemini-3.0-pro", "gemini-3.5-flash"],
      "checkHealth": true
    }
  ]
}

工作原理

  • 当请求特定模型时,系统会自动过滤掉已配置为不支持该模型的提供商
  • 只有支持该模型的提供商才会被选中来处理请求

使用场景

  • 某些账号因配额或权限限制而无法访问特定模型
  • 需要为不同账号分配不同的模型访问权限

3. 跨类型回退配置

当某个提供商类型(如 gemini-cli-oauth)下的所有账号因 429 配额限制或被标记为不健康而耗尽时,系统可以自动回退到另一个兼容的提供商类型(如 gemini-antigravity),而不是直接返回错误。

配置:在 configs/config.json 中添加 providerFallbackChain 配置:

{
  "providerFallbackChain": {
    "gemini-cli-oauth": ["gemini-antigravity"],
    "gemini-antigravity": ["gemini-cli-oauth"],
    "claude-kiro-oauth": ["claude-custom"],
    "claude-custom": ["claude-kiro-oauth"]
  }
}

工作原理

  1. 尝试从主要提供商类型的池中选择一个健康的账号
  2. 如果该类型的全部账号都不健康或返回 429 错误:
    • 查找配置的回退类型
    • 检查回退类型是否支持请求的模型(协议兼容性检查)
    • 从回退类型的池中选择一个健康的账号
  3. 支持多级降级链:gemini-cli-oauth → gemini-antigravity → openai-custom
  4. 仅当所有回退类型也都不可用时,才会返回错误

使用场景

  • 在批量任务场景中,单个提供商类型的免费 RPD 配额很容易在短时间内耗尽
  • 通过跨类型回退,可以充分利用多个提供商的独立配额,提高整体可用性和吞吐量

注意事项

  • 回退仅发生在协议兼容的类型之间(如 gemini-* 之间、claude-* 之间)
  • 系统会自动检查目标提供商类型是否支持请求的模型

4. TLS Sidecar(绕过 403/Cloudflare)

对于像 Grok 这样严格验证 TLS 指纹(JA3/JA4)的服务,本项目集成了基于 Go uTLS 的 Sidecar 代理,通过模拟浏览器的 TLS 特性,有效解决 403 Forbidden 错误。

配置说明

  1. 编译二进制文件: 由于 TLS 模拟需要 Go 语言支持,您需要先编译 Sidecar:

    cd tls-sidecar
    go build -o tls-sidecar
    

    Windows 用户编译后,请确保生成的 tls-sidecar.exe 位于 tls-sidecar/ 或根目录下。

  2. 启用配置: 在 Web UI 的“配置”页面中启用 TLS Sidecar,或修改 configs/config.json

    {
      "TLS_SIDECAR_ENABLED": true,
      "TLS_SIDECAR_PORT": 9090
    }
    
  3. 工作原理

    • 启用后,系统会自动启动并管理 Go 进程。
    • 对特定提供商(如 Grok)的请求会自动路由到 Sidecar。
    • Sidecar 使用最新的 Chrome 指纹进行 TLS 握手,并支持自动 HTTP/2 协商。

注意事项

  • 本地运行需要 Go 环境(1.20 及以上版本)。
  • Docker 用户:镜像中已包含预编译的二进制文件,只需在配置中启用即可,无需手动编译。

❓ 常见问题解答

点击展开常见问题及解决方案(端口占用、Docker 启动、429 错误等)

1. OAuth 授权失败

问题描述:点击“生成授权”后,浏览器会打开授权页面,但授权失败或无法完成。

解决方案

  • 检查网络连接:确保可以正常访问 Google、阿里云等服务。
  • 检查端口占用:OAuth 回调需要特定端口(Gemini:8085,Antigravity:8086,Codex:1455,Kiro:19876-19880),请确保这些端口未被占用。
  • 清除浏览器缓存:尝试使用无痕模式或清除浏览器缓存后重试。
  • 检查防火墙设置:确保防火墙允许访问本地回调端口。
  • Docker 用户:确保所有 OAuth 回调端口已正确映射。

2. 端口已被占用

问题描述:启动服务时提示端口已被占用(例如 EADDRINUSE)。

解决方案

# Windows - 查找占用端口的进程
netstat -ano | findstr :3000
# 然后使用任务管理器结束对应的 PID 进程

# Linux/macOS - 查找并结束占用端口的进程
lsof -i :3000
kill -9 <PID>

或者修改 configs/config.json 中的端口配置,使用其他端口。

3. Docker 容器无法启动

问题描述:Docker 容器无法启动或立即退出。

解决方案

  • 查看日志:运行 docker logs aiclient2api 查看错误信息。
  • 检查挂载路径:确保 -v 参数中的本地路径存在且具有读写权限。
  • 检查端口冲突:确保主机上所有映射的端口未被占用。
  • 重新拉取镜像:运行 docker pull justlikemaki/aiclient-2-api:latest

4. 凭证文件无法识别

问题描述:上传或配置凭证文件后,系统提示无法识别或格式错误。

解决方案

  • 检查文件格式:确保凭证文件为有效的 JSON 格式。
  • 检查文件路径:确保文件路径正确,Docker 用户需确认文件位于挂载目录中。
  • 检查文件权限:确保服务有权限读取该凭证文件。
  • 重新生成凭证:若凭证已过期,可尝试通过 OAuth 重新授权。

5. 请求返回 429 错误

问题描述:API 请求频繁返回 429 Too Many Requests 错误。

解决方案

  • 配置账号池:在 provider_pools.json 中添加多个账号,启用轮询机制。
  • 配置回退机制:在 config.json 中配置 providerFallbackChain 实现跨类型降级。
  • 降低请求频率:适当增加请求间隔,避免触发限流。
  • 等待配额重置:免费配额通常每日或每分钟重置。

6. 模型不可用或返回错误

问题描述:请求特定模型时,返回错误或提示模型不可用。

解决方案

  • 检查模型名称:确保使用的模型名称正确(区分大小写)。
  • 检查提供商支持:确认当前配置的提供商是否支持该模型。
  • 检查账号权限:部分高级模型可能需要特定的账号权限。
  • 配置模型过滤:使用 notSupportedModels 排除不支持的模型。

7. Web UI 无法访问

问题描述:浏览器无法打开 http://localhost:3000

解决方案

  • 检查服务状态:确认服务已成功启动,查看终端输出。
  • 检查端口映射:Docker 用户需确保 -p 3000:3000 参数正确。
  • 尝试其他地址:尝试访问 http://127.0.0.1:3000
  • 检查防火墙:确保防火墙允许访问 3000 端口。

8. 流式响应中断

问题描述:使用流式输出时,响应中途中断或不完整。

解决方案

  • 检查网络稳定性:确保网络连接稳定。
  • 增加超时时间:在客户端配置中增加请求超时时间。
  • 检查代理设置:若使用代理,确保代理支持长连接。
  • 查看服务日志:检查是否有错误信息。

9. 配置更改未生效

问题描述:在 Web UI 中修改配置后,服务行为未发生变化。

解决方案

  • 刷新页面:修改后刷新 Web UI 页面。
  • 检查保存状态:确认配置已成功保存(查看提示信息)。
  • 重启服务:部分配置可能需要重启服务才能生效。
  • 检查配置文件:直接查看 configs/config.json,确认更改是否已写入。

10. API 返回 404

解决方案

  • 检查端点路径:确保使用正确的端点路径,如 /v1/chat/completions 等。
  • 检查客户端自动补全:某些客户端(如 Cherry-Studio、NextChat)会在 Base URL 后自动追加路径(如 /v1/chat/completions),导致路径重复。请在控制台中查看实际请求 URL,并移除多余的路径部分。
  • 检查服务状态:确认服务已正常启动,访问 http://localhost:3000 查看 Web UI。
  • 检查端口配置:确保请求发送到正确的端口(默认 3000)。
  • 查看可用路由:在 Web UI 仪表盘页面的“交互式路由示例”中查看所有可用端点。

11. 未授权:API 密钥无效或缺失

问题描述:调用 API 端点时,返回 Unauthorized: API key is invalid or missing. 错误。

解决方案

  • 检查 API 密钥配置:确保在 configs/config.json 或 Web UI 中正确配置了 API 密钥。
  • 检查请求头格式:确保请求包含正确的 Authorization 头格式,例如 Authorization: Bearer your-api-key
  • 检查服务日志:在 Web UI 的“实时日志”页面查看详细错误信息,以定位具体原因。

12. 该类型无可用且健康的提供商

问题描述:调用 API 时,返回 No available and healthy providers for type xxx 错误。

解决方案

  • 检查提供商状态:在 Web UI 的“提供商池”页面中,检查相应类型的提供商是否处于健康状态。
  • 检查凭证有效性:确认 OAuth 凭证未过期;若过期,请重新生成授权。
  • 检查配额限制:部分提供商可能已达到免费配额上限,需等待配额重置或添加更多账号。
  • 启用回退机制:在 config.json 中配置 providerFallbackChain,以便在主提供商不可用时自动切换到备用提供商。
  • 查看详细日志:在 Web UI 的“实时日志”页面中查看具体的健康检查失败原因。

13. 请求返回403 Forbidden错误

问题描述:API请求返回403 Forbidden错误。

解决方案

  • 启用TLS Sidecar:对于Grok等服务,403错误通常是由于TLS指纹拦截导致的。请参考高级配置 - TLS Sidecar来启用并编译Sidecar。
  • 检查节点状态:如果在Web UI的“Provider Pools”页面上看到节点状态正常(健康检查通过),则可以忽略此错误,系统会自动处理。
  • 检查账户权限:确认账户是否有权限访问所请求的模型或服务。
  • 检查API密钥权限:某些提供商的API密钥可能存在访问范围限制;请确保该密钥具有足够的权限。
  • 检查区域限制:部分服务可能有区域访问限制;可尝试使用代理或VPN。
  • 检查凭证状态:OAuth凭证可能已被撤销或过期;可尝试重新生成授权。
  • 检查请求频率:部分提供商对请求频率有严格限制;请降低请求频率后重试。
  • 查看提供商文档:访问相应提供商的官方文档,了解具体的访问限制和要求。

📄 开源许可证

本项目遵循GNU通用公共许可证v3 (GPLv3)协议。详情请参阅根目录下的LICENSE文件。

🙏 致谢

本项目的开发深受Google Gemini官方CLI的启发,并参考了Cline 3.18.0版本中gemini-cli.ts的部分代码实现。在此向Google官方团队和Cline开发团队致以诚挚的感谢,感谢他们出色的工作!

贡献者名单

感谢所有为AIClient-2-API项目做出贡献的开发者:

Contributors

🌟 星标历史

星标历史图


⚠️ 免责声明

使用风险提示

本项目(AIClient-2-API)仅用于学习和研究目的。用户在使用本项目时需自行承担所有风险。作者不对因使用本项目而导致的任何直接、间接或附带损失承担责任。

第三方服务责任声明

本项目仅为API代理工具,并不提供任何AI模型服务。所有AI模型服务均由其各自的第三方提供商(如Google、OpenAI、Anthropic等)提供。用户通过本项目访问这些服务时,应遵守各第三方服务的使用条款及政策。作者对第三方服务的可用性、质量、安全性或合法性不承担任何责任。

数据隐私声明

本项目在本地运行,不会收集或上传任何用户数据。然而,用户在使用本项目时仍需妥善保护自己的API密钥及其他敏感信息。建议用户定期检查并更新API密钥,同时避免在不安全的网络环境中使用本项目。

法律合规提醒

用户在使用本项目时应遵守所在国家或地区的法律法规。严禁将本项目用于任何非法目的。因用户违反法律法规而产生的任何后果,均由用户自行承担。

版本历史

v2.12.82026/04/07
v2.12.72026/04/06
v2.12.62026/04/06
v2.12.52026/04/05
v2.12.22026/03/30
v2.12.12026/03/29
v2.12.02026/03/28
v2.11.92026/03/28
v2.11.82026/03/28
v2.11.72026/03/20
v2.11.62026/03/20
v2.11.5.22026/03/16
v2.11.5.12026/03/16
v2.11.52026/03/16
v2.11.4.22026/03/13
v2.11.4.12026/03/12
v2.11.42026/03/12
v2.11.32026/03/12
v2.11.22026/03/11
v2.11.12026/03/09

常见问题

相似工具推荐

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

143.9k|★★☆☆☆|今天
开发框架Agent语言模型

markitdown

MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|昨天
插件开发框架

LLMs-from-scratch

LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备

90.1k|★★★☆☆|昨天
语言模型图像Agent

NextChat

NextChat 是一款轻量且极速的 AI 助手,旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性,以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发,NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。 这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言,它也提供了便捷的自托管方案,支持一键部署到 Vercel 或 Zeabur 等平台。 NextChat 的核心亮点在于其广泛的模型兼容性,原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型,让用户在一个界面即可自由切换不同 AI 能力。此外,它还率先支持 MCP(Model Context Protocol)协议,增强了上下文处理能力。针对企业用户,NextChat 提供专业版解决方案,具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能,满足公司对数据隐私和个性化管理的高标准要求。

87.6k|★★☆☆☆|2天前
开发框架语言模型

ML-For-Beginners

ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。

85k|★★☆☆☆|昨天
图像数据工具视频

ragflow

RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。

77.1k|★★★☆☆|3天前
Agent图像开发框架