命令系統
Gemini CLI 命令系統:slash commands、@ 檔案引用、! Shell 命令,以及常用 /help、/memory、/mcp、/commands、/chat、/restore。
Gemini CLI 的互動命令主要有三類:/ 控制 CLI 本身,@ 把檔案或目錄加入上下文,! 直接執行 Shell 命令。三者不要混用:上下文用 @,會話和配置用 /,系統命令才用 !。
最低掌握:會用 /help 查能力、用 @ 精確引用檔案、用 !git status 讀取狀態、用 /memory 重新載入上下文、用 /mcp 看外部工具是否可用。
flowchart LR
Slash["/ slash commands"] --> Control["控制會話、配置、MCP、記憶"]
At["@ file / dir"] --> Context["注入檔案和目錄上下文"]
Bang["! shell"] --> Shell["直接執行系統命令"]
style Slash fill:#dbeafe,stroke:#3b82f6
style At fill:#dcfce7,stroke:#22c55e
style Bang fill:#fef3c7,stroke:#f59e0b
1. slash commands
Slash commands 是 CLI 控制面。它們不等於給模型的業務需求,而是用來管理專案上下文、切換認證、控制工具、檢視用量、恢復 checkpoint、過載配置。下表按"新手最先用 → 進階"分組,完整 38 個命令以官方 Commands reference 為準。
起步必學(第一次啟動後最先用這幾條):
| 命令 | 用途 |
|---|---|
/init | 幫你給當前專案自動生成首份 GEMINI.md(第一次進新專案最該用) |
/help | 列出當前可用命令 |
/about | 查版本資訊(提交 issue 時附帶) |
/quit | 退出 Gemini CLI(也可加 --delete 永久刪除歷史和臨時檔案) |
/clear | 清屏 |
/copy | 複製最後一次輸出到系統剪貼簿 |
模型與用量:
| 命令 | 用途 |
|---|---|
/model | 切換或檢視當前模型(Auto / Pro / Flash 等) |
/stats | 檢視本次會話的 token 用量、模型分佈、限額資訊 |
/upgrade | 開啟 Gemini Code Assist 升級頁 |
上下文與配置:
| 命令 | 用途 |
|---|---|
/memory show | 檢視當前會話載入了哪些 GEMINI.md 層級 |
/memory reload / /memory refresh | 改完 GEMINI.md 後重新載入(不重啟會話) |
/compress | 把整段聊天上下文壓成摘要(長會話省 token) |
/directory | 管理多目錄 workspace |
/settings | 開啟 settings 編輯器 |
/auth | 切換認證方式 |
工具與許可權:
| 命令 | 用途 |
|---|---|
/tools | 檢視當前會話有哪些工具可用 |
/permissions | 管理 folder trust 等許可權 |
/policies | 管理 policy 規則 |
/plan | 切換 Plan Mode(只讀規劃),並檢視當前計劃 |
擴充套件生態:
| 命令 | 用途 |
|---|---|
/mcp list / /mcp reload / /mcp auth <name> | 查/過載 MCP server,按 server 觸發 OAuth |
/extensions | 管理 extensions |
/agents | 管理本地和遠端 subagents |
/skills | 管理 Agent Skills |
/hooks | 管理生命週期 hooks |
/commands | 管理自定義 slash commands |
會話管理 / 排錯:
| 命令 | 用途 |
|---|---|
/chat 或 /resume | 瀏覽、儲存、恢復歷史會話(兩條命令等價) |
/restore | 檔案改壞了用它回到 checkpoint |
/rewind | 在對話歷史裡向後滾 |
/ide | 管理 IDE 整合 |
/setup-github | 設定 GitHub Actions |
/bug | 按官方流程提交問題 |
/docs | 在瀏覽器開啟官方 docs |
/privacy | 顯示當前認證方式對應的 Privacy Notice |
介面調整(可選):
| 命令 | 用途 |
|---|---|
/theme / /editor / /vim / /terminal-setup / /shells | UI / 編輯器 / vim 模式 / 多行鍵位 / 後臺程序檢視 |
版本差異用 /help 收口:Gemini CLI 仍在快速迭代,命令可能新增或別名變化。教程給使用邏輯,完整列表以當前 /help 輸出和官方 Commands reference 為準。
2. @ 檔案引用
典型寫法:
@src/components/UserProfile.tsx 解釋這個元件如何處理 user data@src/types/User.ts @src/components/UserProfile.tsx 幫我檢查型別是否一致@src/utils/ 檢查這個目錄裡是否還有 deprecated API
@ 適合你已經知道路徑時強制把檔案放進上下文。如果不知道路徑,可以直接讓 Gemini CLI 先找。
@ 引用目錄時要控制範圍。不要一上來 @. 或把整個 monorepo 放進去;先指定一個檔案、一個子目錄或一組強相關檔案。上下文越大,越容易浪費 token,也越容易把無關檔案帶進判斷。
3. ! Shell 命令
常見寫法包括 !ls -la、!git status、!npm test。
! 執行的命令會把輸出放進當前 session,上下文裡後續可以引用。輸出太大時可能被截斷。
! 不是隻讀按鈕:! 執行的命令擁有當前 shell 許可權。!git status 風險低,!rm -rf、部署命令、資料庫遷移、批次格式化和金鑰讀取風險很高。
4. 使用建議
- 查 CLI 能力先
/help。 - 修改上下文檔案後用
/memory reload或/memory refresh。 - 接 MCP 後用
/mcp list確認工具是否載入。 - 大改前先
/chat save <tag>或啟用 checkpoint。 - Shell 命令預設要確認,不要長期放開高風險命令。
一個穩的日常順序是:
- 用
@指定檔案。 - 讓 Gemini CLI 只讀解釋。
- 用
/memory show或/memory reload確認規則。 - 用
!git status、!npm test獲取事實。 - 再授權小範圍修改。
5. 接下來去哪
快捷鍵
繼續看清屏、退出、複製輸出和 shell mode 的最低操作成本。
檔案管理
繼續看 @ 檔案、目錄上下文、ignore 和多目錄 workspace。
Shell 命令
準備讓 Gemini CLI 跑命令前,先看 shell 工具的安全邊界。