开源一个项目 gcli2api - 把 Gemini Cli 转换成 Gemini API
项目地址: GitHub - boltrunner/gcli2api基于 AIClient-2-API 的 JS 实现,用 golang 重写的。为什么使用 gcli2apigemini-cli 的 gemini-2.5-pro 比较稳定(不截断),且提供完整的 1M context。但是:[*]gemini-cli 对接的上游 API 响应格式和普通的的 gemini api response 的格式不同,需要转换,不然 roocode/kilocode 这些无法使用
[*]单个 gemini-cli 的免费次数有限,所以多个账户轮询比较耐用
使用方法多种运行方式:
[*]下载编译好的进制
[*]源码编译
[*]docker: 镜像会更新到 docker hub, 可以直接 docker run
详情见 README相比 AIClient-2-API 的主要改动首先是用 golang 重写了,布署更方便,并且运行时资源消耗更少简化了一些功能:
[*]去掉了所有与 gemini 不相关的功能
[*]只支持 config.json 配置,不支持命令行参数,避免bug和代码维护麻烦
[*]不需要在配置中声明 PROJECT_ID (一个 gemini-cli 隐式使用的参数), 代码会自动发现
增加的功能:
[*]支持在配置中声明要使用的 http/socks 代理。
[*]缓存每个账户对应的 gemini-cli PROJECT_ID,不需要每次启动都去查询
感谢分享 不太清楚,每天几十次?前段时间次数很少,最近听说稍微放松了一些 什么时候能支持Docker? 感谢分享 感谢分享 感谢分享 已经添加了对Dockerfile的支持,相关说明在这一段:
GitHubboltrunner/gcli2api 感谢分享! 在console.cloud.google.com 里能够创建多个项目,多个项目的额度是分开计算的(在gemini cli里实际测试确实是分开的)。不过,这些项目共用一个oauth。当一个项目没有额度了,切换project id环境变量,就可以使用另外一个项目的额度。 这应该是个漏洞,我已经修复好了,你试试最新版。
Release nightly20250902005914df8bba3 · boltrunner/gcli2api · GitHub 图片
1077×843
30.3 KB 感谢分享
页:
[1]