一直在用 Claude Code 工具,爱上了 命令行版本的 AI 编程工具的强大,自此也爱上了命令行。

在 gemini-cli 发布的初期也体验了 gemini-2.5-pro ,由于使用的是免费账号,Google 做了限制,无法很畅快的使用,用的强大稍稍大一点就一被降级使用,体验大幅下降。

周末体验了 kimi2 后,充值了 ¥50 ,使用的是 VSCode 插件 Cline 进行体验,发现随便触发了几个任务之后,kimi2 账户就消耗了接近 ¥10,不知道是 Kimi2 本身费钱呢,还是 Cline 工具导致的 API 调用费用高。

遂决定使用 gemini-cli 做一个可以通过 API 接入任意 AI 大模型的 AI 编程工具,用来测试 kimi2 的效果和 cline 的费用。

我把他取名为 gemini-cli-nexus,改造后的 gemini-cli-nexus 项目也开源在 github https://github.com/ai-embedded/gemini-cli-nexus 上默认分支 nexus ,欢迎大家体验。
在这里插入图片描述

gemini-cli-nexus

这是一个用 AI 编程工具修改 AI 编程工具完成的项目,将 gemini-cli 作为 AI 编程工具的底层,通过环境变量配置 AI 大模型,支持 OpenAI、Anthropic 等 AI 大模型,各国产大模型基本上提供这 2 套兼容的 API。

一直在使用 Cluade Code,所以该项目也是使用 Claude Code ,选择的模型是 claude 4.0 sonnet。

github 上已经有类似项目了,我这也有重复造轮子的嫌疑,索性没话太多时间和精力,估计算上代码编写,测试,问题修复、来回验证等时间,应该在 2-3 小时左右。

非常开心的是,今天(2025-7-23)一早也看到 QWen 发布了最新的 Qwen3 Coder,国产开源模型终于也有了可以和 Claude 4 Sonnet 相媲美的编程模式👍。

QWen 同时发布了一个 Qwen Code 工具,也是通过 gemini-cli 二次优化而来。

看到一些资料介绍 Qwen Code 进行了 prompt 和工具调用协议适配,能最大程度激发 Qwen3-Coder 在Agentic Coding 任务上的表现。

Qwen Code 也是通过环境变量配置 AI 大模型,支持 OpenAI API 来调用大模型。

接下来可以对比 Qwen Code 和 gemini-cli 的差异,可以在模型、工具、费用上对各模型来个大 PK。

gemini-cli-nexus

nexus 的意思是“连接点”或“核心”,这个名字强调了本工具作为与各种 AI 大模型交互的中心枢纽的角色。

这个名字是 gemini 推荐的😄,和 Google 的平台名字一样,应该没啥太大冲突。

gemini-cli-nexus 支持通过设置环境变量来配置 AI 大模型,目前支持以下接入 API 接口:

  • gemini (默认)
  • OpenAI 及兼容大模型
  • Anthropic 及兼容大模型

保留了 gemini-cli 的所有功能,最小修改完成了 API 调用支持,方便后续跟随 gemini-cli 升级迭代。

默认启动与 gemini-cli 功能一致,使用 gemini 模型。

可通过以下环境变量配置支持 API 方式调用三方大模型,目前测试过的模型列表和 URL 如下表:

模型名称 模型 URL 模型类型
Kimi2 https://api.moonshot.cn/anthropic kimi-k2-0711-preview
Kimi2 https://api.moonshot.cn/anthropic
Deepseek https://api.deepseek.com/v1 deepseek-chat 或 deepseek-reasoner

其他模型未详细测试

使用

和 gemini-cli 一样, 请先确认安装了 Node.js 20 以上版本。

安装

安装方式与 gemini-cli 一致, 推荐在项目目录下使用 npx 运行

$ npx https://github.com/ai-embedded/gemini-cli-nexus

注意:如果使用 npx 运行,请先设置环境变量后再运行 gemini-cli-nexus, 如未设置环境变量,gemini-cli-nexus 会使用默认的 gemini 模型。

全局安装先需要确认未安装 gemini-cli, 已安装 gemini-cli 请先卸载:

$ sudo npm uninstall -g gemini-cli
$ sudo npm install -g https://github.com/ai-embedded/gemini-cli-nexus

者使用 gitee 链接: https://gitee.com/ai-embedded/gemini-cli-nexus

环境变量设置

1. 推荐方式:使用统一的环境变量
# 设置 API Key(选择一个提供商)
export OPENAI_API_KEY="sk-your-openai-key-here"
# 或
export ANTHROPIC_API_KEY="sk-ant-your-anthropic-key-here"

# 设置模型(统一配置方式)
export MODEL="claude-sonnect-4-20250514"

2. .env 文件配置

在项目根目录创建 .env 文件:

# 选择一个提供商的 API Key
OPENAI_API_KEY=sk-your-openai-key-here
OPENAI_BASE_URL=https://api.openai.com/v1  # 可选

# ANTHROPIC_API_KEY=sk-ant-your-anthropic-key-here
# ANTHROPIC_BASE_URL=https://api.anthropic.com  # 可选

MODEL=claude-sonnect-4-20250514

注意:如果同时设置了环境变量和 .env 文件,环境变量会覆盖 .env 文件中的配置。

使用

启动 gemini-cli-nexus 后,依然显示 gemini-cli 的 logo, 支持 gemini-cli 的所有功能和登录方式, 只是比 gemini-cli 多了 2 种登录方式。

███            █████████  ██████████ ██████   ██████ █████ ██████   █████ █████
░░░███         ███░░░░░███░░███░░░░░█░░██████ ██████ ░░███ ░░██████ ░░███ ░░███
  ░░░███      ███     ░░░  ░███  █ ░  ░███░█████░███  ░███  ░███░███ ░███  ░███
    ░░░███   ░███          ░██████    ░███░░███ ░███  ░███  ░███░░███░███  ░███
     ███░    ░███    █████ ░███░░█    ░███ ░░░  ░███  ░███  ░███ ░░██████  ░███
   ███░      ░░███  ░░███  ░███ ░   █ ░███      ░███  ░███  ░███  ░░█████  ░███
 ███░         ░░█████████  ██████████ █████     █████ █████ █████  ░░█████ █████
░░░            ░░░░░░░░░  ░░░░░░░░░░ ░░░░░     ░░░░░ ░░░░░ ░░░░░    ░░░░░ ░░░░░


Tips for getting started:
1. Ask questions, edit files, or run commands.
2. Be specific for the best results.
3. /help for more information.

╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│                                                                                                                                                         │
│ Get started                                                                                                                                             │
│                                                                                                                                                         │
│ How would you like to authenticate for this project?                                                                                                    │
│                                                                                                                                                         │
│ ● 1. Login with Google                                                                                                                                  │
│   2. Use Gemini API Key                                                                                                                                 │
│   3. Vertex AI                                                                                                                                          │
│   4. Use OpenAI API Key                                                                                                                                 │
│   5. Use Anthropic API Key                                                                                                                              │
│                                                                                                                                                         │
│ (Use Enter to select)                                                                                                                                   │
│                                                                                                                                                         │
│ Terms of Services and Privacy Notice for Gemini CLI                                                                                                     │
│                                                                                                                                                         │
│ https://github.com/google-gemini/gemini-cli/blob/main/docs/tos-privacy.md                                                                               │
│                                                                                                                                                         │
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

可以看到登录方式 4 和 5 是新增的,分别对应 OpenAI 和 Anthropic 的 API Key 登录方式。 如果未设置环境变量和 .env 文件,gemini-cli-nexus 又选择了 4 和 5 作为登录方式, 会报错,提示未设置 API Key。

OPENAI_API_KEY environment variable not found. Add that to your environment and try again (no reload needed if using .env)! 

登录后, 就可以和使用 gemini-cli 一样使用命令行的 AI 编程了。

退出登录

我们在使用中经常会发现某个问题, 一个模型翻来倒去就是搞不定, 这个时候就是需要切模型的时候了。

  1. 使用 gemini-cli-nexus/logout 命令来退出登录。

  2. 如果未登录进 gemini-cli 无法正常使用 /logout 命令, 此时需要手工删除配置来退出登录, 有以下 3 种方式:

  • 方法 1:删除认证配置
$ rm ~/.gemini/settings.json
  • 方法 2:编辑设置文件 ~/.gemini/settings.json,删除 selectedAuthType 字段

  • 方法 3:完全重置

$ rm -rf ~/.gemini/

其他使用方式与 gemini-cli 一致。

总结

这也是我用 AI 编程工具完成的第一个正式可以使用的完整项目, 项目工作量虽然不大, 但是也是体会到了 AI 可以让普通人可以做很多之前无法做到的事情。

本人不懂前端开发, 未学习过 js ts 等前端开发语言,借助 AI 编程工具就可以实现前端开发, 这也是 AI 编程工具的强大之处。

人非 AI 专业人士,使用 AI 编程工具,主要是为了提高工作效率,减少重复劳动,让 AI 做一些重复性的工作,解放自己的双手, 将之前只能停留在想法中的事情借助 AI 编程实现。

对 AI 编程有兴趣的小伙伴,可以关注个人公众号:燕十三的物联网之旅

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐