⚠️ 🔥 重要提醒:claude code Token消耗巨大,请谨慎使用!cc 版本日新月异, 而此项目已经年久失修, 可能出现一些特性不兼容的情况 非常欢迎并期待有佬友能在我的一堆屎山代码里面提出建议, 作者总是没有 issue 通知, 回复不及时的情况非常抱歉🙌
让Claude Code使用Google Gemini API
Claude Code Gemini是一个专门为Claude Code CLI设计的代理服务器,让您可以无缝地将Claude Code切换到使用Google Gemini API,同时享受Gemini的高级功能。
因为原项目我在使用gemini-balance的openai接口的时候, 感觉总是不使用工具, 怎么说都不用, 不知道是不是字段转化的问题, 而且很多gemini的高级功能可能都没有实现, 我就对原项目进行了自己的改版, 变成一个专注于gemini接口的代理,
原项目: 本项目基于MIT开源项目进行了大幅修改。详见 ATTRIBUTION.md。
问题: Claude Code默认使用Anthropic的Claude API,但您想使用Google的Gemini API
解决方案: Claude Code Gemini提供完美的API转换层,让Claude Code以为它在使用Claude API,实际上使用的是Gemini API
- 🔄 零配置切换: Claude Code无需任何修改,只需改变API端点
- 🚀 Gemini高级功能: 享受函数并行调用、思考模式、智能推理等Gemini独有功能
- 💡 更智能的函数字段转换: 解决了原有代理中LLM不主动调用工具的问题
- ⚡ 完整流式支持: 实时响应,完整的Claude事件序列
- 🎨 多模态支持: 图像处理能力(实验性)
# 克隆项目
git clone https://github.com/yuqie6/claude-code-gemini.git
cd claude-code-gemini
# 安装依赖 (推荐使用UV)
uv sync
# 或使用pip
pip install -r requirements.txt# 复制配置模板
cp .env.example .env
# 编辑配置文件
# 必需配置:
# GEMINI_API_KEY=your_gemini_api_key
# 可选配置:
# GEMINI_BASE_URL=custom_endpoint (如果使用自定义端点)
# BIG_MODEL=gemini-2.5-pro
# SMALL_MODEL=gemini-2.5-flash# 直接运行
python -m src.main
# 或使用uv
uv run claude-code-gemini # 🎉 就是这么简单!Claude Code现在使用Gemini API了
ANTHROPIC_BASE_URL=http://localhost:8082 ANTHROPIC_API_KEY="any-key" claude
# 或者永久设置
# Linux/macOS (bash/zsh)
export ANTHROPIC_BASE_URL=http://localhost:8082
export ANTHROPIC_API_KEY="any-key"
claude
# Windows PowerShell
$env:ANTHROPIC_BASE_URL="http://localhost:8082"
$env:ANTHROPIC_API_KEY="any-key"
claude # 现在Claude Code使用的是Gemini API如果出现了需要账户的情况, 请选择api账户, 只要在welcome界面的base url显示的是http://127.0.0.1:端口, 即可使用
GEMINI_API_KEY="your-gemini-api-key"
# 从 https://aistudio.google.com/app/apikey 获取# 模型映射
BIG_MODEL="gemini-2.5-pro" # Claude sonnet/opus -> 此模型
SMALL_MODEL="gemini-2.5-flash" # Claude haiku -> 此模型
# 自定义端点(如果需要)
GEMINI_BASE_URL="your-custom-endpoint"
# 服务器设置
PORT=8082
HOST="0.0.0.0"- 访问 Google AI Studio
- 使用Google账号登录
- 点击"Create API Key"
- 将生成的密钥复制到
.env文件
本项目基于MIT开源项目进行了大幅修改和增强,专门为Claude Code + Gemini的完美结合而设计。
- 解决函数调用问题: 原项目中LLM不主动调用工具的问题得到解决
- Gemini高级功能: 函数并行调用、思考签名等Gemini独有功能
- 原生Gemini集成: 专门针对Gemini API特性设计的转换层,而非简单的API转发, 确保Claude Code的大部分功能都能用gemini完美工作
结果: Claude Code用户现在可以使用谷圣的免费gemini-2.5-pro
详见 ATTRIBUTION.md。
MIT License - 详见 LICENSE 文件。
- 由于 Claude Code CLI 版本众多,部分旧版本可能不支持所有 Gemini 新特性,建议使用最新版 Claude Code。
- 某些命令行参数或环境变量格式在 Windows 与 Linux/macOS 下略有差异,详见上文“快速开始”。
- 思考内容目前还不清楚如何让 Claude Code 正确识别。尝试过加标签了
- Gemini 的工具调用能力依赖于 prompt 设计和模型本身,极端复杂的工具链场景下,可能出现未主动调用或调用参数不全的情况。
- Claude Code 的工具描述与 Gemini 的 schema 存在一定差异,已做兼容处理,但极端自定义工具场景下仍可能有边界问题。
- Web 工具在我测试时存在问题,建议优先使用联网 mcp 而不是原生工具。
- 图片输入功能尚未完善,暂不建议依赖,后续会持续改进。
- 默认监听 0.0.0.0:8082,若端口被占用请自行修改 .env 或启动参数。
- 某些云服务器或本地安全软件可能拦截 8082 端口访问。
- 作者没有付费层级的 Gemini key,缓存相关功能未做充分测试。
- 现在的 token 计算可能有误差,请结合实际用量自行评估。
- ANTHROPIC_API_KEY 仅作占位,实际鉴权由 .env 中 GEMINI_API_KEY 决定。
- 本项目为魔改版,非官方产品,遇到问题欢迎提 issue 反馈。
如有更多兼容性或功能建议,欢迎在 GitHub issue 区留言!
