Gemini CLI 命令速查表 - Google 终端 AI 代理全参数

Gemini CLI 是 Google 开源的终端 AI 代理(Apache 2.0),面向需要超长上下文、希望让 AI 在本地仓库自主改代码并接自有模型的开发者,2M token 上下文尤其适合整仓库级别的重构与分析任务。与其它编码代理相比,它的长上下文、可 fork 自托管以及 GEMINI.md 项目记忆是突出优势;本表帮你掌握安装认证、无头自动化(-p -o json)与 MCP/扩展接入。

AI 命令行·共 55 条命令·最后更新 2026-08-05

典型使用场景

面向把 Gemini CLI 嵌进日常开发与自动化流水线的工程师。表里六条主线对应六类真实场景:安装与认证(OAuth 浏览器登录、API key、Vertex AI)、运行模式(交互 TUI 与 -p 无头、-i 播种后保持交互)、全局标志位(-m 换模型、--approval-mode 控制审批、-w 独立 worktree、-o json 供脚本消费、-r 恢复会话)、会话斜杠命令(/context 看 token、/compress 续命、/save 与 /restore 跨天)、MCP 与扩展管理、GEMINI.md 项目记忆。最值得记住的工程实践是:把构建与测试命令写进 GEMINI.md 并用 .geminiignore 屏蔽 .env 与大目录,自动化任务统一走 --approval-mode=yolo 加 -o json,长任务用 /compress 与检查点兜底。

安装与认证 6

npm install -g @google/gemini-cli
通过 npm 全局安装(需 Node 20+)
gemini --version
验证安装并显示版本
gemini
首次运行触发浏览器 OAuth 登录
gemini --auth-method=api-key
切换为 API key 认证方式
export GEMINI_API_KEY="your-key"
设置 API key 环境变量(服务器/CI 用)
export GOOGLE_GENAI_USE_VERTEXAI=true
企业/Vertex AI 认证方式

运行模式 8

gemini
启动交互式 TUI 代理(默认)
gemini "重构 user-auth 模块"
带初始提示启动 TUI
gemini -p "解释这个函数"
无头模式:打印后退出(--prompt)
gemini -i "先实现缓存"
先播种提示再保持交互(--prompt-interactive)
gemini mcp
管理 MCP 服务器
gemini extensions
管理 Gemini CLI 扩展
gemini skills
管理 agent skills(安装/链接/列举)
gemini gemma
本地 Gemma 模型路由(setup/start/stop/status)

全局标志位 15

gemini -m gemini-2.5-pro "任务"
本次调用覆盖模型(-m/--model)
gemini -y "重构整模块"
自动批准所有操作(--yolo,已建议改用 --approval-mode=yolo)
gemini --approval-mode plan "探索架构"
只读规划模式(default/auto_edit/yolo/plan)
gemini -w feat/login
在独立 git worktree 中运行(--worktree)
gemini -s
在配置沙箱(Docker/Podman)中执行工具调用
gemini --skip-trust
本次会话信任当前工作区
gemini --checkpointing
启用逐次编辑快照,可用 /restore 恢复
gemini -r latest
恢复上一个会话(--resume,latest 或索引)
gemini --list-sessions
列出当前项目的会话后退出
gemini --delete-session 2
按索引删除会话
gemini --include-directories ../backend,../frontend
把额外目录加入工作区映射
gemini -o json "任务"
输出格式 text/json/stream-json(脚本用 json)
gemini -e context7
限制本会话加载的扩展集合(--extensions)
gemini -l
列出已安装扩展后退出(--list-extensions)
gemini --debug
输出详细调试日志(--debug/-d)

会话斜杠命令 14

/help
列出所有可用命令
/model
切换激活模型(Pro/Flash 等)
/context
显示当前对话 token 用量
/compress
总结对话释放上下文(可跨 2M 上限)
/clear
重置对话
/save
把会话保存为检查点
/restore
恢复已保存的会话
/yolo
跳过所有确认提示(慎用)
/mcp list
列出已配置的 MCP 服务器
/tools
列出所有可用工具
/init
为项目生成 GEMINI.md
/memory list
查看已加载的上下文文件
/memory refresh
重新加载 GEMINI.md(无需重启)
/quit
退出

MCP 与扩展 7

gemini mcp add <name> <url>
添加 MCP 服务器
gemini mcp remove <name>
移除 MCP 服务器
gemini mcp list
列出 MCP 服务器
gemini mcp enable <name>
启用某 MCP 服务器
gemini mcp disable <name>
禁用某 MCP 服务器
gemini extensions install <name>
安装 Gemini CLI 扩展
gemini mcp add --url https://example.com/mcp
添加 HTTP MCP 服务器

GEMINI.md 与配置 5

echo "构建: make build\n测试: go test ./..." > GEMINI.md
在项目根写 GEMINI.md,每次会话自动加载
@./docs/architecture.md
在提示词中用 @ 注入文件/目录内容
!git status
在 Gemini 内用 ! 直接执行 shell 命令
echo ".env\nnode_modules/" > .geminiignore
用 .geminiignore 让 agent 远离密钥与大目录
cat ~/.gemini/settings.json
查看用户级配置(模型/MCP/工具权限)

参数矩阵

参数作用示例
npm install -g @google/gemini-cli通过 npm 全局安装(需 Node 20+)npm install -g @google/gemini-cli
gemini --version验证安装并显示版本gemini --version
gemini(首次运行)触发浏览器 OAuth 登录gemini
--auth-method=api-key切换为 API key 认证方式gemini --auth-method=api-key
GEMINI_API_KEY设置 API key 环境变量(服务器/CI 用)export GEMINI_API_KEY="your-key"
GOOGLE_GENAI_USE_VERTEXAI=true启用 Vertex AI 认证方式export GOOGLE_GENAI_USE_VERTEXAI=true
gemini "重构 user-auth 模块"带初始提示启动 TUIgemini "重构 user-auth 模块"
gemini -p "解释这个函数"无头模式:执行后打印退出gemini -p "解释这个函数"
gemini -i "先实现缓存"先播种提示再保持交互gemini -i "先实现缓存"
gemini -m gemini-2.5-pro本次调用覆盖模型gemini -m gemini-2.5-pro "任务"
gemini -y自动批准所有操作(已建议改用 --approval-mode=yolo)gemini -y "重构整模块"
--approval-mode plan只读规划模式(default/auto_edit/yolo/plan)gemini --approval-mode plan "探索架构"
gemini -w feat/login在独立 git worktree 中运行gemini -w feat/login
gemini -s在配置沙箱(Docker/Podman)中执行工具调用gemini -s
gemini --skip-trust本次会话信任当前工作区gemini --skip-trust
gemini --checkpointing启用逐次编辑快照,可用 /restore 恢复gemini --checkpointing
gemini -r latest恢复上一个会话(latest 或索引)gemini -r latest
gemini --list-sessions列出当前项目的会话后退出gemini --list-sessions
gemini --delete-session 2按索引删除会话gemini --delete-session 2
--include-directories把额外目录加入工作区映射gemini --include-directories ../backend,../frontend
gemini -o json输出格式 text/json/stream-jsongemini -o json "任务"
gemini -e context7限制本会话加载的扩展集合gemini -e context7
gemini -l列出已安装扩展后退出gemini -l
gemini --debug输出详细调试日志gemini --debug
/help列出所有可用命令/help
/model切换激活模型/model
/context显示当前对话 token 用量/context
/compress总结对话释放上下文/compress
/clear / /save / /restore重置对话 / 保存检查点 / 恢复会话/save
/yolo跳过所有确认提示(慎用)/yolo
/mcp list / /tools列出 MCP 服务器 / 可用工具/mcp list
/init为项目生成 GEMINI.md/init
/memory list / /memory refresh查看已加载上下文 / 重载 GEMINI.md/memory refresh
gemini mcp add <name> <url>添加 MCP 服务器gemini mcp add --url https://example.com/mcp
gemini mcp remove / enable / disable移除 / 启用 / 禁用 MCP 服务器gemini mcp disable <name>
gemini mcp list列出 MCP 服务器gemini mcp list
gemini extensions install <name>安装 CLI 扩展gemini extensions install <name>
gemini skills管理 agent skills(安装/链接/列举)gemini skills
echo "构建: make build" > GEMINI.md写项目记忆,每次会话自动加载echo "构建: make build\n测试: go test ./..." > GEMINI.md
@./docs/architecture.md在提示词中注入文件/目录内容@./docs/architecture.md 这个架构怎么实现的?
!git status在会话内直接执行 shell 命令!git status
.geminiignore让 agent 远离密钥与大目录echo ".env\nnode_modules/" > .geminiignore
cat ~/.gemini/settings.json查看用户级配置(模型/MCP/工具权限)cat ~/.gemini/settings.json

易错点与避坑指南

现象agent 反复读 .env 或在 node_modules 里搜索,每次会话都浪费时间并有泄漏风险

原因agent 默认扫描整个工作区,没有告诉它哪些路径应被忽略。

处置在项目根写 .geminiignore 列出 .env、node_modules/ 等敏感与冗余目录,缩小工作区映射范围。

现象会话进行到中途开始重复已有结论、响应变慢或被截断

原因对话累计 token 逼近上下文上限,早期内容被挤压,模型可用空间变小。

处置用 /context 查看当前用量,执行 /compress 总结压缩历史;长任务跨天用 /save 保存检查点,下次 /restore 接着做。

现象脚本里跑 -p 一直卡在某步不动,非交互环境没人点确认

原因默认审批模式下工具调用会等待人工确认,而 -p 无头会话没有终端可以响应。

处置无人值守场景显式指定 --approval-mode=yolo(比 -y 语义更清晰),并先用 --approval-mode plan 在只读模式验证任务可行性。

现象agent 直接改动了本分支的多个文件,想丢弃却只能手工 git 恢复

原因直接在主工作区运行,且未启用检查点,回滚只能靠版本控制。

处置运行前加 --checkpointing 以便 /restore 回退,或加 -w feat/xxx 在独立 git worktree 里干活,主分支不受影响。

现象想让 agent 参考某个设计文档,它说找不到文件或凭空编造内容

原因文件不在工作区映射范围内,或提示词里没有显式引用。

处置在提示词开头用 @./docs/architecture.md 显式注入;文件在工作区之外时用 --include-directories 加入映射。

现象改了 GEMINI.md 但 agent 行为没变化,仍按旧约定执行

原因会话启动时已加载上下文文件,磁盘上的新内容不会自动生效。

处置执行 /memory refresh 重新加载,或 /memory list 确认当前实际加载的是哪些文件。

现象接了多个 MCP 服务器后启动明显变慢,工具列表长到找不到想用的那个

原因所有 MCP 服务器与扩展都会在本会话注册,工具数量膨胀。

处置用 gemini mcp disable 停用暂时不用的服务器,或用 -e 限定本会话加载的扩展集合,用 /tools 确认实际可用工具。

现象在 CI / 服务器上跑时报认证错误,本机交互登录却正常

原因本机走的是浏览器 OAuth 凭据,而无头环境没有浏览器也没有凭据文件。

处置CI 场景改用 gemini --auth-method=api-key 并预先 export GEMINI_API_KEY;企业内可用 GOOGLE_GENAI_USE_VERTEXAI=true 走 Vertex AI。

排障路径

  1. 1确认安装与认证是否就绪

    gemini --version; gemini --auth-method=api-key

    --version 能输出说明全局安装成功、PATH 已生效。随后指定 API key 认证方式并 export GEMINI_API_KEY,可确认无头环境下的凭据链路是否通。

  2. 2只读探索架构,不允许任何改动

    gemini --approval-mode plan "探索架构"

    plan 模式下 agent 只读取与分析、不做编辑。先用它摸清项目结构,确认任务可行再切到 default 或 auto_edit,能避免一上来就产生难以回退的改动。

  3. 3无人值守的自动化调用

    gemini -p "任务" -o json --approval-mode=yolo

    -p 执行完即退出,-o json 输出机器可解析结果便于脚本消费,--approval-mode=yolo 免掉人工确认。三者组合是 CI 集成的基础形态;执行前建议配合 --checkpointing 留退路。

  4. 4管理上下文用量与长任务续命

    /context → /compress → /save

    先 /context 看当前 token 用量;接近上限时 /compress 总结历史释放空间;阶段性完成用 /save 保存检查点,下次 /restore 恢复继续,避免每次从头重述背景。

  5. 5核对 MCP 与扩展的实际状态

    gemini mcp list; gemini -l; 会话内 /mcp list 与 /tools

    列表为空说明未配置;已列出但工具找不到时,在会话内用 /tools 确认是否真正注册成功(配置存在不等于本次会话已加载)。

  6. 6把项目约定固化进记忆文件

    echo "构建: make build\n测试: go test ./..." > GEMINI.md; /memory refresh

    写入后用 /memory refresh 重载(或 /memory list 确认内容已加载)。之后每次会话都会自动读取这些命令,agent 不必每次都被重复告知。

  7. 7隔离危险操作与保留回滚路径

    echo ".env\nnode_modules/" > .geminiignore; gemini -w feat/login --checkpointing

    .geminiignore 让 agent 远离密钥与大目录;-w 在独立 git worktree 中运行、--checkpointing 保留编辑快照,两者叠加后即便改动不理想也能完整回退。

命令示例

无头模式输出 JSON 供脚本解析

gemini -p -o json "对比当前代码与最近一次 tag 的 API 差异"

-p 非交互即跑即退,-o json 再配 --save 可把结果落盘,是 CI 自动化的常用组合。

输出

(模型只输出结构化 JSON 供下游脚本消费,例如新增/删除的接口清单与风险提示)

一次性快速提问

gemini "帮我解释这个函数的递归逻辑"

与 -p 相比,无参数的非交互调用同样即跑即退,无需进入 TUI。

输出

(直接在当前终端返回回答后退出,适合查文档片段与做单次决策)

初始化项目记忆文件

/init echo "Build: make build\nTest: go test ./..." > GEMINI.md /memory refresh

GEMINI.md 每次会话自动加载,把项目约定沉淀其中可显著减少重复提示;敏感文件用 .geminiignore 排除。

输出

(/init 生成 GEMINI.md 骨架,补充构建/测试命令后 refresh 立刻生效,无需重启会话)

常见坑与注意事项

  • 2M 长上下文一旦装进大量文件,首轮处理与响应时延会明显变长——把 GEMINI.md、.geminiignore 配置好,避免把 node_modules、日志等海量文件灌进上下文。
  • -p 非交互调用即跑即退,默认没有人在批准文件修改与命令执行,需在配置里明确允许的范围,别默认放开所有写权限。
  • GEMINI.md 里的约定会被模型每次自动遵守,改动它或项目依赖会改变后续行为;屏蔽敏感信息用 .geminiignore,别把 .env 之类的清进记忆文件。
  • 用自定义模型端点时,第三方实现可能不支持全部原生能力(如工具调用、长上下文);生产化前先在受控仓库验证行为一致性。

提示

  • 个人 Google 账号免费额度 1000 次/天,且开源可 fork,是长上下文(2M)和自托管场景的默认首选。
  • 无头自动化用 `gemini -p -o json`,配合 --approval-mode=yolo(比已弃用的 -y 更规范)做无人值守任务。
  • 把构建/测试命令写进 GEMINI.md,Gemini 每次会话自动加载,比反复提示更稳;用 .geminiignore 屏蔽 .env 等。
  • 长任务跨 2M 上限时用 /compress 续命,用 /save + /restore 跨天保留会话。

常见问题

Gemini CLI 怎么在 CI 里无头运行?

用 -p(--prompt)打印模式,它执行完打印结果就退出,不进入交互界面。配合 GEMINI_API_KEY 环境变量提供认证即可,不要依赖本地登录态。计划类任务再叠加 --approval-mode plan 保持只读,避免 agent 在 CI 上意外改文件或执行命令。

--approval-mode 的几个值分别适合什么场景?

plan 只读规划,适合先让 agent 探索架构再动手;default 遇到需要确认的操作会停下来问你,适合日常开发;auto_edit 自动允许文件编辑但关键操作仍确认,是写代码的常用档位;yolo 全部自动批准,风险最高,只建议在隔离容器或一次性环境里使用。

对话太长超出上下文窗口怎么办?

用 /context 看当前 token 用量接近上限时,执行 /compress 把已有对话总结压缩后继续,它能跨过 2M 的上限继续工作;想彻底重来就用 /clear 重置对话。需要彻底换任务时,/clear 比继续在同一会话里追问更干净,能避免旧上下文干扰新任务的结果。

GEMINI.md 和 .geminiignore 各起什么作用?

GEMINI.md 放在项目根目录,每次会话自动加载,适合写项目约定,比如「构建用 make build,测试用 go test ./...」这类命令,agent 就不会再乱猜。.geminiignore 用来排除它不该读的文件,比如 .env 和 node_modules/,避免密钥被读进上下文、大目录拖慢响应。

怎样让 Gemini CLI 在独立工作区里改动,不影响当前分支?

用 -w/--worktree 指定分支名,它会新建一个 git worktree 并在里面运行,agent 的改动隔离在那个目录里,不弄脏你当前的分支。做完可以直接对比或合并。这是并行试多个方案、或让 agent 大范围改动时最安全的做法。

官方参考来源

下方为命令对应的官方权威文档,供你核对最新用法与深入查阅。

由 巧匠 维护

公开更新于 2026年8月5日,内容持续校对官方文档。

联系我们

命令或描述有误?提交反馈、商务合作或产品建议都可发送邮件给我们。

联系我们