genmini-cli

2025-12-17

ai

勇气不是没有恐惧,而是克服了恐惧。——尼尔·阿姆斯特朗

Gemini CLI 全面上手:把 Gemini 带进你的终端与编辑器

仓库:google-gemini/gemini-cli
文档网站:geminicli.com/docs
许可证:Apache 2.0
一句话简介:Gemini CLI 是一个开源的“终端优先”AI 代理,让你在命令行中以最短路径调用 Gemini。


为什么选择 Gemini CLI?

来自项目 README 的核心卖点:

  • 免费额度友好:个人 Google 账号可达每分钟 60 次、每天 1,000 次请求
  • 强力模型:支持 Gemini 2.5 Pro,具备百万级上下文窗口
  • 内置工具:Google Search grounding、文件操作、Shell 命令、网页抓取(web fetching)
  • 可扩展:支持 MCP(Model Context Protocol)进行自定义集成
  • 终端优先:为“活在命令行里的开发者”设计
  • 开源:Apache 2.0 许可,企业可放心集成与二次开发

换句话说,Gemini CLI 把“从输入提示词到模型响应”的路径压缩到了近乎极致,既能在本地终端直接用,也能与 IDE/编辑器深度集成。


安装与运行

README 提供了多种安装方式(需 Node.js 20+,macOS/Linux/Windows 均可):

方式一:用 npx“即用即走”

无需全局安装,直接运行仓库地址即可启动:

1
2
# 使用 npx 直接运行(无需安装)
npx https://github.com/google-gemini/gemini-cli

方式二:用 npm 全局安装

1
npm install -g @google/gemini-cli

方式三:Homebrew(macOS/Linux)

1
brew install gemini-cli

想了解全部使用方式与能力,请参考官方文档:


版本节奏与渠道

项目采用“Preview / Stable / Nightly”发布通道(见 README 的 Release Cadence):

  • Preview(每周二 UTC 23:59 发布,早于稳定版,欢迎测试)

    1
    npm install -g @google/gemini-cli@preview
  • Stable(每周二 UTC 20:00 发布,将上周 Preview 版晋级为稳定并包含修复)

    1
    npm install -g @google/gemini-cli@latest
  • Nightly(夜间构建,适合追新特性/验证问题,风险相对更高)

    Nightly 具体说明见仓库 releases 与文档页面。


典型使用思路与示例

虽然 README 没直接列出交互命令细节,但从“终端优先 + 内置工具”出发,你可以用它完成很多“开发者日常”:

  • 代码生成/修改与解释(搭配 VS Code 插件可原生 diff 应用补丁)
  • 利用内置工具执行文件操作、跑 shell 命令、抓取网页内容
  • 借助 Google Search grounding 进行具备“搜索支撑”的回答
  • 通过 MCP 接入自定义工具或上下文

下面给出两个“实战灵感片段”,你可以将其作为询问 Gemini CLI 的“任务描述”,并把结果用于你的工程中(代码仅为演示):

  1. 让模型生成一个查找“体积较大文件”的 Bash 脚本(演示片段)

    1
    2
    # 任务灵感:请编写一个 Bash 脚本,列出当前目录下前 20 个最大的文件,并以人类可读格式显示大小。
    # 你可以将以下脚本作为期望的目标产物,或让 CLI 在此基础上做修改:

#!/usr/bin/env bash
set -euo pipefail
TARGET_DIR=“${1:-.}”
echo “Scanning: $TARGET_DIR”

列出常规文件,统计大小,排序并取前 20

find “$TARGET_DIR” -type f -printf ‘%s\t%p\n’ 2>/dev/null
| sort -nr
| head -n 20
| awk ‘{
# 人类可读的大小转换
split(“B KB MB GB TB”, units);
size=$1; file=$2;
i=1; while (size>1024 && i<5) { size/=1024; i++ }
printf “%8.2f %-2s %s\n”, size, units[i], file
}’

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2) 让模型写一段 Node.js 脚本,从网页抓取内容(演示片段)
```js
// 任务灵感:使用 Node.js 抓取一个网页并打印标题与前 200 字。
// 可以将此示例当作目标产物,或让 CLI 为你改造成 CLI 工具/库模块等。

import fetch from "node-fetch";
import * as cheerio from "cheerio";

const url = process.argv[2];
if (!url) {
console.error("Usage: node fetch-title.js <url>");
process.exit(1);
}

const res = await fetch(url);
const html = await res.text();
const $ = cheerio.load(html);

const title = $("title").text().trim() || "(no title)";
const text = $("body").text().replace(/\s+/g, " ").trim();
console.log("Title:", title);
console.log("Preview:", text.slice(0, 200));

提示:你可以把这些“任务描述 + 目标约束”交给 Gemini CLI,让它生成、修改或解释脚本,并在本地直接运行验证。


VS Code 插件:Gemini CLI Companion

仓库还包含了官方的 VS Code 插件(packages/vscode-ide-companion),与 Gemini CLI 配套使用,带来更顺滑的开发体验:

特性(见插件 README):

  • 打开编辑器文件上下文:让 CLI 感知你正在编辑/打开的文件
  • 选择区上下文:让 CLI 获取你的光标和选中文本
  • 原生 Diff:在编辑器中查看/应用 CLI 给出的代码修改
  • 快速启动 CLI:命令面板中执行“Gemini CLI: Run”即开新会话

使用要求:

  • VS Code 1.99.0+
  • 安装并在“集成终端”中运行已安装的 Gemini CLI

条款与隐私:

  • 插件安装即遵守项目的服务条款与隐私声明(见仓库 docs/tos-privacy.md)

扩展与集成:MCP、A2A

  • MCP(Model Context Protocol)
    Gemini CLI 支持 MCP,可接入自定义的上下文源与工具集成,方便把“项目知识”“公司内网系统”“私有 API”纳入到模型的工具链之中。

  • A2A Server(实验性)
    仓库包含一个实验性的 A2A Server 包(packages/a2a-server)。A2A 通常用于 Agent 之间的互操作与通信(不同框架/语言的代理协作)。该部分仍在积极开发,适合对多 Agent 协同感兴趣的开发者关注与试验。

注意:A2A 包当前标注为“实验性,活跃开发中”,请根据 README 的说明谨慎使用。


实战建议:把 Gemini CLI 融入日常

  • 终端党:把它当作“AI copilot in terminal”,用自然语言驱动你的 Git、Shell、文件整理、脚本原型与单测补全
  • 文档党:输入“任务描述 + 样例片段”,快速得到草稿,再逐步 refinement
  • 团队协作:配合 VS Code 插件进行“上下文感知 + 原生 diff”,用 PR 流程把修改透明地引入代码库
  • 自定义工具:通过 MCP 暴露你们内部的 API/知识库,让模型像“内生工具”一样调用
  • 版本选择:稳定项目走 latest,追新特性走 preview/nightly,在 CI 中 pin 版本以保证可重复

结语

Gemini CLI 把“强大的多模态大模型能力”带到了开发者最熟悉的界面——终端,并通过 VS Code 插件把“从思考到落地”的链路打通。它开箱即用、可扩展、开源友好,非常适合把 AI 真正融入你的日常开发流。

现在就用 npx 试一把,或安装 stable/preview 渠道,开启你的“终端内 AI”工作流吧!