Gemini CLI 自定義命令的妙用

1. 前言
Gemini CLI 是 Google 推出的一個命令行工具,可以讓你通過命令行與 Gemini 模型進(jìn)行交互。
現(xiàn)在,我的很多編程場景都在使用 Gemini CLI 來完成。用 Gemini CLI 的時候總覺得有點束縛,每個項目只能配一個 gemini.md,想換個場景還得改來改去,太麻煩了!
不像 Cursor 可以配置多條 cursor rule,Gemini CLI 在一個工程中只能配置一條系統(tǒng)提示詞,想設(shè)定多種場景的話只能都寫到一個提示詞中。這會導(dǎo)致提示詞效果變差。
功夫不負(fù)有心人,在我翻遍了 Gemini CLI 的官方文檔后,終于讓我找到了一個完美的解決方案——自定義命令!??
2. 認(rèn)識一下“自定義命令”
Gemini CLI 提供一系列內(nèi)置命令,幫助用戶管理會話、自定義界面以及控制行為。這些命令以斜杠 / 開頭。
Gemini CLI 內(nèi)置了一系列命令,如/help、 /clear、 /copy 等。
官方文檔是這么說的 ??: 自定義命令允許用戶在 Gemini CLI 中將最常用的提示保存并重復(fù)使用為個人快捷方式。您可以創(chuàng)建特定于單個項目的命令,或全局適用于所有項目的命令,從而簡化工作流程并確保一致性。
我們可以注意到, 利用自定義命令可以管理我們的提示詞,正符合我的需求,因此我決定使用自定義命令來實現(xiàn)靈活的系統(tǒng)提示詞。
3. 三步創(chuàng)建你的第一個命令
Gemini CLI 從兩個位置發(fā)現(xiàn)命令,并按特定順序加載:
- 用戶命令(全局): 位于 ~/.gemini/commands/。這些命令在用戶正在處理的任何項目中都可用。
- 項目命令(局部): 位于 /.gemini/commands/。這些命令特定于當(dāng)前項目,可以檢入版本控制以便與團隊共享。
如果項目目錄中的命令與用戶目錄中的命令同名,將始終使用項目命令。這允許項目使用特定于項目的版本覆蓋全局命令。
命令的名稱由其相對于 commands 目錄的文件路徑?jīng)Q定。子目錄用于創(chuàng)建命名空間命令,路徑分隔符(/ 或 \)將轉(zhuǎn)換為冒號(:)。
~/.gemini/commands/test.toml中的文件變?yōu)槊?/test。<project>/.gemini/commands/git/commit.toml中的文件變?yōu)槊臻g命令/git:commit。
自定義命令定義文件必須以 TOML 格式編寫,并使用.toml 文件擴展名。
prompt(字符串):執(zhí)行命令時將發(fā)送給 Gemini 模型的提示。這可以是單行或多行字符串。description(字符串):命令功能的簡短單行描述。此文本將顯示在/help菜單中命令旁邊。如果省略此字段,將根據(jù)文件名生成通用描述。
下面我給一個示例,可以簡單的看一下
description = "需求拆解助手"
prompt = "請幫我拆解這個需求: {{args}} "
添加該文件后,就可以在 Gemini 中調(diào)用 /prdspliter 命令來拆解需求。
{{args}} 是 Gemini CLI 的占位符,表示用戶在命令輸入的全部內(nèi)容。如果做簡單的提示詞管理,目前就已經(jīng)足夠了。
但是如果想做更復(fù)雜的邏輯,比如結(jié)合命令行工具等,應(yīng)該怎么做呢?
4. 終極玩法:讓自定義命令與Shell聯(lián)動起來
您可以通過直接在 prompt 中執(zhí)行 shell 命令并注入其輸出來使命令具有動態(tài)性。這非常適合從本地環(huán)境收集上下文,例如讀取文件內(nèi)容或檢查 Git 狀態(tài)。
當(dāng)自定義命令嘗試執(zhí)行 shell 命令時,Gemini CLI 現(xiàn)在會提示您確認(rèn),然后才繼續(xù)。這是一種安全措施,可確保只運行預(yù)期的命令。
工作原理:
- 注入命令: 在 prompt 中使用 !{...} 語法指定命令應(yīng)在何處運行以及其輸出的注入位置。
- 確認(rèn)執(zhí)行: 當(dāng)您運行命令時,將出現(xiàn)一個對話框,列出 prompt 想要執(zhí)行的 shell 命令。
- 授予權(quán)限: 您可以選擇:
- 只允許一次: 命令將只運行這一次。
- 本會話始終允許: 命令將被添加到當(dāng)前 CLI 會話的臨時允許列表中,不再需要再次確認(rèn)。* 否: 取消 shell 命令的執(zhí)行。
CLI 仍然遵循全局的 excludeTools 和 coreTools 設(shè)置。
示例 (git/commit.toml):
此命令獲取暫存的 Git 差異,并用它來要求模型編寫提交消息。
# 文件路徑: <project>/.gemini/commands/git/commit.toml
# 調(diào)用方式: /git:commit
description = "Generates a Git commit message based on staged changes."
# The prompt uses !{...} to execute the command and injectits output.
prompt = """
Please generate a Conventional Commit message based on the following git diff:
```diff
!{git diff --staged}
```
"""
當(dāng)用戶運行 /git:commit 時,CLI 首先執(zhí)行 git diff --staged,然后用該命令的輸出替換 !{git diff --staged},最后將完整的提示發(fā)送給模型。
小結(jié)
總而言之,Gemini CLI 的自定義命令絕對是個值得深挖的功能,它能極大地提升我們的工作流效率。
為了方便大家,我已經(jīng)把文中提到的 git:commit 和其他幾個我私藏的實用命令都整理好了,放到了 GitHub 倉庫里。
gemini-cli-commands (github.com/codemilesto…)
到此這篇關(guān)于Gemini CLI 自定義命令的妙用的文章就介紹到這了,更多相關(guān)Gemini CLI 自定義命令內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!
相關(guān)文章
很多編程場景都在使用 Gemini CLI 來完成,但是總覺得有點束縛,GeminiCLI自定義命令妙用提升工作流效率,通過自定義命令實現(xiàn)靈活的系統(tǒng)提示詞,支持復(fù)雜邏輯與Shell聯(lián)動,感興2026-07-02
本文主要介紹了Gemini code cli使用場景小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2026-07-01
使用GEMINI.md文件提升Gemini CLI開發(fā)效率
Gemini CLI作為開源AI助手工具,將強大的Gemini模型直接帶入您的終端,而GEMINI.md文件正是這個項目的核心配置文檔,它指導(dǎo)著整個開發(fā)流程的優(yōu)化和規(guī)范化,下面就來詳細(xì)的介2026-07-01
Gemini 3提供多種使用方式:普通用戶可通過官網(wǎng)或移動應(yīng)用訪問,開發(fā)者可使用API或CLI集成,本文就來詳細(xì)的介紹一下 Gemini 3的使用,感興趣的可以了解一下2026-06-30
Gemini CLI (@google/gemini-cli) 是 Google 推出的開源命令行 AI 代理,本文就來詳細(xì)的介紹一下Gemini CLI 使用小結(jié),具有一定的參考價值,感興趣的可以了解一下2026-06-30
token的加密的核心作用就是保護數(shù)據(jù)安全,讓信息在傳輸或存儲過程中不被竊取,下面這篇文章主要介紹了如何通過兩個例子幫你快速理解什么是Token的相關(guān)資料,文中介紹的非常詳2026-06-30
2026年三款A(yù)I辦公助手ToDesk AI、QClaw、Kimi到底怎么選(真實測試)
在數(shù)字化辦公時代,AI辦公助手正成為職場人士提升工作效率的得力助手,這篇文章主要介紹了2026年三款A(yù)I辦公助手ToDesk AI、QClaw、Kimi到底怎么選的相關(guān)資料,文中通過圖文介2026-06-26
這段文章詳細(xì)介紹了在Visual Studio Code中安裝和使用TRAE插件,包括登錄、使用自動代碼補全、代碼生成、代碼注釋和智能問答等功能,通過TRAE插件,開發(fā)者可以大幅提升編程效2026-06-25
AI Agent Harness它是一套系統(tǒng)化工程方法論,專門設(shè)計、搭建、運維這套 AI 管控運行體系,解決 AI 干活不穩(wěn)定、越權(quán)、失憶、失控問題,簡單來說它讓AI智能體既跑得快,又跑2026-06-25
kimi 2.5接入VScode copilot完整圖文教程
VSCode Copilot一直不支持使用來接入任意模型,默認(rèn)的模型只有幾個免費模型寫代碼,下面這篇文章主要介紹了kimi 2.5接入VScode copilot的相關(guān)資料,文中通過代碼介紹的非常詳2026-06-24











