AI大模型与CLI应用系列:本系列聚焦于AI大模型在命令行界面(CLI)中的应用,探索如何通过CLI工具高效利用AI能力,提升开发与工作效率。
此文以Google Gemini cli为例…
一、Gemini CLI 简介
Gemini CLI 是 Google 推出的基于 Gemini 大模型 的命令行工具,它能将强大的 AI 能力无缝集成到你的终端,通过自然语言对话帮你写代码、梳理项目、自动化任务等。
主要特性:
- 超大代码库理解与编辑(支持 1M+ Token 上下文)
- 多模态输入(文本、图片、PDF 等)
- 自动化开发运维任务:一句话即可完成如“查询昨天所有合并的 pull requests”、“复杂分支变基”等操作。
- 强大工具生态:可接入 Google 最新的文生图、文生视频、文生音乐等模型,支持多媒体生成。
- 内置 Google 搜索,遇到问题可直接在终端查找资料。
二、安装与认证
1、安装
前置要求:Node.js ≥ 20
安装命令:
npm install -g @google/gemini-cli
2、认证和使用
方式1:Google账户
注意:可能会因为
npm缓存或者版本问题,导致登录过程一直loading。登录成功后,按照以下方式操作:
在项目目录或任意目录下运行:
cd your-project/
gemini
首次启动会引导你在浏览器登录 Google 账号,以授权使用 Gemini 2.5 Pro 模型。
方式2:GEMINI_API_KEY (推荐)
注意:Google账号登录可能受到网络环境影响,建议直接使用API密钥方式。避免复杂的OAuth认证流程,更加稳定可靠。
# 1. 访问 Google AI Studio
open https://aistudio.google.com/
# 2. 登录后创建API密钥
# AI Studio 界面的左侧或右上角,寻找 "Get API key"(获取 API 密钥)或 "API key"(API 密钥)的选项
# 3. 设置环境变量
export GEMINI_API_KEY="your_api_key_here"
# 4. 验证设置
echo $GEMINI_API_KEY
# 5. 运行CLI
gemini
遇到终端代理问题(如:访问Google超时),查看 BackEndDevelopment/Shell解决。
三、常见问题与注意事项
- 免费额度:个人 Google 账号每分钟 60 次、每天 1000 次请求。
- Google Workspace 账号: 如遇认证问题,需在终端设置
GOOGLE_CLOUD_PROJECT环境变量 - 429 错误/降级: 高峰期可能遇到“Too Many Requests”或自动降级为
flash模型,属正常现象 - 安全提示: 涉及本地文件操作时,
Gemini CLI会请求确认。 gemini chatAPI 调用失败:✕ [API Error: exception TypeError: fetch failed sending request]
1、gemini chat 时遇到了 API 调用失败
使用gemini chat 时遇到了 API 调用失败的问题,核心错误如下:
✕ [API Error: exception TypeError: fetch failed sending request]
1.1 问题分析
网络环境( Clash Pro/VPN/代理)成功拦截了 gemini CLI 发出的请求,但在尝试将请求转发到 Google 的 API 服务器时失败了。可能因为:
- 代理配置不正确:代理规则未将
Google API的域名(如generativelanguage.googleapis.com正确加入转发规则。 - 代理协议不兼容: CLI 或其底层的 fetch 调用,无法通过当前的代理协议(例如 SOCKS5)成功发送请求。
1.2 解决方案
方案一:配置 CLI 使用系统代理(推荐)Gemini CLI 会尝试使用 HTTP/HTTPS 环境变量来配置代理
- 代理地址: 确定代理(Clash Pro)正在本地监听HTTP 代理端口(如:7890 端口)。
- 设置 HTTP/HTTPS 代理环境变量: 在终端中设置环境变量(仅对当前会话有效):
export HTTP_PROXY="http://127.0.0.1:7890"
export HTTPS_PROXY="http://127.0.0.1:7890"
注意:若代理为 SOCKS5 协议,需安装
connect-proxy等工具处理 SOCKS5 隧道。对多数Node.js/CLI 应用,HTTP 代理更简单。
- 再次运行:
gemini
方案二:配置代理软件绕过
如果你的网络不需要全局代理就能访问 Google 服务,可以让代理软件 忽略 Google API 的请求。
- 检查代理配置文件:
- 找到 Clash Pro 的配置文件(通常是
config.yaml)。 - 确保将 Google API 的域名(如
*.googleapis.com和ai.google.dev)设置为DIRECT(直连)或REJECT(拒绝代理,让流量走系统默认)。
2、解决 gemini cli 无法唤起编辑器的问题
│ ...
│ Apply this change?
│ ● 1. Yes, allow once
│ 2. Yes, allow always
│ 3. Modify with external editor
│ 4. No, suggest changes (esc)
2.1 问题描述
在 macOS 上,当 gemini cli 提出代码修改建议并选择选项 3. Edit 时,可能无法自动唤起默认的文本编辑器(如 nano 或 vim),导致无法预览和修改变更。
2.2 解决方案:配置 VS Code 作为外部编辑器
推荐使用 Visual Studio Code 作为外部编辑器,因为它与命令行集成良好。
第一步:安装 code 命令行工具
- 打开
VS Code应用程序。 - 按下快捷键
Command (⌘) + Shift + P,打开命令面板。 - 输入
shell command,选择并执行 “Shell Command: Install ‘code’ command in PATH”。 - 完成后,重新启动终端,输入
code -v,如果看到版本号,则表示安装成功。
第二步:设置环境变量
gemini cli 通过 EDITOR 和 VISUAL 环境变量来确定使用哪个编辑器。
在终端中执行以下命令,设置环境变量:
export EDITOR="code --wait" export VISUAL="code --wait"重要:
--wait参数会告诉终端等待VS Code关闭文件后才继续执行,这是确保gemini cli能成功接收修改的关键。(推荐)永久保存配置:将以上两行命令添加到您
Shell的配置文件中(如~/.zshrc或~/.bash_profile),然后执行source ~/.zshrc使其立即生效。
配置完成后,再次运行 gemini 并选择编辑选项,VS Code 应该会自动打开。在 VS Code 中保存并关闭文件后,gemini cli 会继续执行后续操作。
2.3 备用方案
如果以上方法仍然无效,可以采用以下方式处理变更:
- 直接应用:选择
1. Yes, allow once直接应用修改,然后手动在编辑器中检查。 - 复制代码块:选择
4. No, suggest changes,然后要求Gemini以代码块形式输出完整代码,再手动复制粘贴。
参考
- 官方仓库:https://github.com/google-gemini/gemini-cli
最后, 希望大家早日实现:成为编程高手的伟大梦想!
欢迎交流~

本文版权归原作者曜灵所有!未经允许,严禁转载!对非法转载者, 原作者保留采用法律手段追究的权利!
若需转载,请联系微信公众号:连先生有猫病,可获取作者联系方式!