Gemini CLI 国内使用
Google 官方出品的Gemini CLI,另一款强大的类似Claude Code, OpenAI Codex 的AI编程助手,结合目前强大的 Gemini 2.5 pro 和 Gemini 3.0 pro 来使用,能快速提高编程效率。
有用链接
安装Gemini CLI
安装Nodejs, 这里略过。
通过npm 来安装:
npm install -g @google/gemini-cli测试安装:正确显示版本号即为安装成功。
D:\Knner>gemini --version
0.12.0配置Gemini CLI
申请 Yixia API Key
参考这里 来申请 Yixia API Key,这里不再赘述。
配置Gemini CLI
要配置Gemini CLI,使用自定义的Yixia API Key,只需要配置三个环境变量即可,分别是:
GEMINI_MODEL=gemini-2.5-pro
GEMINI_API_KEY=sk-xxxxxxxxxx
GOOGLE_GEMINI_BASE_URL=https://api.yixia.ai/只需要把:sk-xxxxxxxxxx,替换成你刚才申请的。
- 对于Windows用户,请依次点击
此电脑右键---属性---高级系统设置---环境变量---系统变量---新建,如下图,将sk-xxxxx替换为你的Key,然后点击确定保存。

- 对于
Linux或Mac用户,请打开命令行,然后执行如下命令,将sk-xxxxx替换为你的Key:
## bash 用户
cat >> ~/.bashrc <<EOF
GEMINI_MODEL=gemini-2.5-pro
GEMINI_API_KEY=sk-xxxxxxxxxx
GOOGLE_GEMINI_BASE_URL=https://api.yixia.ai/
EOF
## zsh 用户
cat >> ~/.zshrc <<EOF
GEMINI_MODEL=gemini-2.5-pro
GEMINI_API_KEY=sk-xxxxxxxxxx
GOOGLE_GEMINI_BASE_URL=https://api.yixia.ai/
EOF测试Gemini CLI
终端输入gemini 即可进去Gemini CLI:
gemini出现如下图:输入hi 来测试配置的是否正确。有返回,即是配置成功,下面就可以愉快的使用了。

Gemini CLI 基本使用
Gemini CLI 的命令帮助:
D:\Knner>gemini --help
Usage: gemini [options] [command]
Gemini CLI - Launch an interactive CLI, use -p/--prompt for non-interactive mode
Commands:
gemini [query..] Launch Gemini CLI [default]
gemini mcp Manage MCP servers
gemini extensions <command> Manage Gemini CLI extensions. [aliases: extension]
Positionals:
query Positional prompt. Defaults to one-shot; use -i/--prompt-interactive for interactive.
Options:
-d, --debug Run in debug mode? boolean] [default: false]
-m, --model Model [string]
-p, --prompt Prompt. Appended to input on stdin (if any). [deprecated: Use the positional prompt instead. This flag will be removed in a future version.] [string]
-i, --prompt-interactive Execute the provided prompt and continue in interactive mode [string]
-s, --sandbox Run in sandbox? [boolean]
-y, --yolo Automatically accept all actions (aka YOLO mode, see https://www.youtube.com/watch?v=xvFZjo5PgG0 for more details)? [boolean] [default: false]
--approval-mode Set the approval mode: default (prompt for approval), auto_edit (auto-approve edit tools), yolo (auto-approve all tools) [string] [choices: "default", "auto_edit", "yolo"]
--experimental-acp Starts the agent in ACP mode [boolean]
--allowed-mcp-server-names Allowed MCP server names [array]
--allowed-tools Tools that are allowed to run without confirmation [array]
-e, --extensions A list of extensions to use. If not provided, all extensions are used. [array]
-l, --list-extensions List all available extensions and exit. [boolean]
--include-directories Additional directories to include in the workspace (comma-separated or multiple --include-directories) [array]
--screen-reader Enable screen reader mode for accessibility. [boolean]
-o, --output-format The format of the CLI output. [string] [choices: "text", "json", "stream-json"]
-v, --version Show version number [boolean]
-h, --help Show help基本使用:
# 交互式 启动,并执行 prompt
gemini <prompt>
# 非交互式
gemini -i <prompt>
# 非交互式
echo "What is fine tuning?" | gemini
# 交互式,直接指定模型
gemini -m gemini-3-pro
# debug 模式
gemini -dGemini CLI 扩展命令:
D:\Knner>gemini extensions --help
gemini extensions <command>
Manage Gemini CLI extensions.
Commands:
gemini extensions install <source> [--auto-update] [--pre-release] Installs an extension from a git repository URL or a local path.
gemini extensions uninstall <name> Uninstalls an extension.
gemini extensions list Lists installed extensions.
gemini extensions update [<name>] [--all] Updates all extensions or a named extension to the latest version.
gemini extensions disable [--scope] <name> Disables an extension.
gemini extensions enable [--scope] <name> Enables an extension.
gemini extensions link <path> Links an extension from a local path. Updates made to the local path will always be reflected.
gemini extensions new <path> [template] Create a new extension from a boilerplate example.
Options:
-d, --debug Run in debug mode? [boolean] [default: false]
-h, --help Show helpGemini CLI 的重要交互式命令
进如Gemini CLI,就可以对Gemini 发号施令了,主要设计三个符号:
! 执行本地shell 命令,输入!进如命令行模式,输入要执行的命令,回车执行,执行完不会退出命令行模式,再次输入!退出命令行模式,返回聊天模式。
@ 针对指定文件 来和Gemini 交互。
/ 对CLI本身的控制。按 Ctrl+z 撤消输入提示中的最后一个作。 按 Ctrl+Shift+Z 重做输入提示中的最后一个撤消作。
/init
为了帮助用户轻松创建 GEMINI.md 文件,该命令会分析当前目录并生成定制的上下文文件,使他们更容易向 Gemini 代理提供特定于项目的指令。
/clear
清除终端屏幕,包括可见的会话历史记录和 CLI 中的回滚。根据确切的实现,可能会保留基础会话数据(用于历史调用),但视觉显示将被清除。
/compress
将整个聊天上下文替换为摘要。这节省了用于未来任务的令牌,同时保留了对所发生情况的高级摘要。
/copy
将 Gemini CLI 生成的最后输出复制到剪贴板,以便于共享或重复使用。
/chat 会话管理
/chat save [标签]:保存当前会话,并指定一个标签。/chat list:列出所有已保存的会話。/chat resume [标签]:恢复指定的会话。/chat delete <标签>:删除指定的会话。/chat share <文件>:将当前对话写入提供的 Markdown 或 JSON 文件。如果未提供文件名,则 CLI 将生成一个文件名。
保存位置:
- Linux/macOS:
~/.gemini/tmp/\<project_hash>/ - Windows:
C:\Users\用户名\.gemini\tmp\<project_hash>\
/memory 上下文管理,记忆功能:
GEMINI.md 文件:在项目根目录或用户主目录下的 ~/.gemini/ 中创建一个 GEMINI.md 文件。你可以在里面写入自定义指令、代码风格规范、项目背景等,gemini-cli 会在每次交互时自动加载这些信息作为长期记忆。
/memory add [上下文内容]:将一段内容添加到当前会话的记忆中。/memory show:查看当前已加载的记忆内容。/memory refresh:重新从GEMINI.md文件加载上下文。/memory list:列出用于分层内存的 GEMINI.md 文件的路径。
/directory 或 /dir
管理工作区目录以实现多目录支持。
/dir add <path1>,<path2>:将目录添加到工作区。路径可以是绝对路径,也可以是相对于当前工作目录的路径。此外,还支持来自主目录的引用。/dir show:显示/directory add和--include-目录。

/mcp
管理配置的模型上下文协议 (MCP) 服务器。

/mcp list或/mcp ls:列出已配置的 MCP 服务器和工具/mcp desc:列出已配置的 MCP 服务器和工具以及说明。/mcp schema: 列出已配置的 MCP 服务器和工具以及描述和架构。/mcp refresh:刷新MCP server。
/restore
将项目文件恢复到执行工具之前的状态。这对于撤消工具所做的文件编辑特别有用。如果在没有工具调用 ID 的情况下运行,它将列出要从中恢复的可用检查点。
/restore:列出可用检查点/restore <checkpoint_file>: 要将项目恢复到特定检查点,请使用列表中的检查点文件。
/settings
打开设置编辑器,查看和修改 Gemini CLI 设置。此命令提供了一个用户友好的界面,用于更改控制 Gemini CLI 行为和外观的设置。这相当于手动编辑 .gemini/settings.json 文件,但具有验证和指导以防止错误。
- 上下键,移动位置,回车修改;
- tab键,上下块切换;
- esc键,关闭;

/stats
显示当前 Gemini CLI 会话的详细统计信息,包括令牌使用情况、缓存的令牌节省量(如果可用)和会话持续时间。注意:仅在使用缓存令牌时才会显示缓存令牌信息,此时 API 密钥身份验证会发生这种情况,但目前不会显示 OAuth 身份验证。
/theme
打开一个对话框,用于更改 Gemini CLI 的视觉主题。

/extensions
Gemini CLI 扩展相关命令。详细参考如下链接:

/about
显示版本信息。请在提交问题时分享此信息。

/tools
显示 Gemini CLI 中当前可用的工具列表。
/tools:列出工具列表名称/tools desc:列出工具列表名称以及其详细说明。

/vim
打开或关闭 vim 模式。启用 vim 模式后,输入区域支持 NORMAL 和 INSERT 模式下的 vim 样式导航和编辑命令。
/quit 或 /exit
退出 Gemini CLI。
配置Gemini CLI MCP Server
配置 MCP Server 主要使用settings.json 配置文件,位于:
- Linux/Mac: ~/.gemini/settings.json
- Windows: %USERPROFILE%\.gemini\settings.json
MCP Server配置:
- Windows,配置
context7和excel mcp:
{
"mcp": {
"allowed": [
"context7",
"excel"
],
"excluded": []
},
"mcpServers": {
"context7": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"@upstash/context7-mcp"
],
"timeout": 20000
},
"excel": {
"command": "cmd",
"args": [
"/c",
"uvx",
"excel-mcp-server",
"stdio"
],
"timeout": 60000
}
}
}- Linux 和 Mac:
{
"mcp": {
"allowed": [
"context7",
"excel"
],
"excluded": []
},
"mcpServers": {
"context7": {
"command": "npx",
"args": [
"-y",
"@upstash/context7-mcp"
],
"timeout": 20000
},
"excel": {
"command": "uvx",
"args": [
"excel-mcp-server",
"stdio"
],
"timeout": 60000
}
}
}配置说明:
mcp:
mcp.allowed(字符串数组):允许的 MCP 服务器名称列表。 如果设置了,仅此列表中的服务器(与mcpServers对象)将连接到。mcp.excluded(字符串数组):要排除的 MCP 服务器名称列表。此列表中的服务器将不会连接到。
mcpServers:
必选(任意一项)
command(字符串):Stdio 传输的可执行文件的路径url(字符串):SSE 端点 URL(例如,“http://localhost:8080/sse”)httpUrl(字符串):HTTP 流式处理终结点 URL
可选
args(string[]):Stdio 传输的命令行参数headers(对象):使用url或httpUrl时的自定义 HTTP 标头env(对象):服务器进程的环境变量。值可以使用$VAR_NAME或${VAR_NAME}语法引用环境变量cwd(字符串):Stdio 传输的工作目录timeout(数字):请求超时(以毫秒为单位)(默认:600,000 毫秒 = 10 分钟)trust(boolean):当true时,绕过此服务器的所有工具调用确认(默认值:false)includeTools(string[]):要从此 MCP 服务器包含的工具名称列表。指定后,只有此处列出的工具才能从此服务器使用(允许列表行为)。如果未指定,则默认情况下启用服务器中的所有工具。excludeTools(string[]):要从此 MCP 服务器中排除的工具名称列表。此处列出的工具将不适用于模型,即使它们由服务器公开。 注意:excludeTools优先于includeTools- 如果某个工具同时在两个列表中,则将其排除在外。
配置完毕后,重新进如Gemini:

可以使用斜杠命令查看MCP:
/mcp list: 列出mcp以及其功能。/mcp desc: 列出MCP以及其详细说明。/mcp refresh: 重启MCP Server。

