gac 命令列使用
June 22, 2026 · View on GitHub
English | 简体中文 | 繁體中文 | 日本語 | 한국어 | हिन्दी | Tiếng Việt | Français | Русский | Español | Português | Norsk | Svenska | Deutsch | Nederlands | Italiano
本文件介紹了 uvx gac CLI 工具的所有可用標誌和選項。
目錄
基本使用
uvx gac init
# 然後按照提示以互動方式設定你的提供者、模型和 API 金鑰
uvx gac
為暫存的變更生成 LLM 驅動的提交訊息並提示確認。確認提示接受:
y或yes- 繼續提交n或no- 取消提交r或reroll- 使用相同的上下文重新生成提交訊息e或edit- 編輯提交訊息。預設情況下,開啟帶 vi/emacs 鍵繫結的就地 TUI。設定GAC_EDITOR以開啟您偏好的編輯器(例如,GAC_EDITOR=code gac用於 VS Code,GAC_EDITOR=vim gac用於 vim)- 任何其他文字 - 使用該文字作為回饋重新生成(例如,
讓它更短,專注於效能) - 空輸入(只按 Enter)- 再次顯示提示
核心工作流程標誌
| 標誌 / 選項 | 簡寫 | 描述 |
|---|---|---|
--add-all | -a | 在提交之前暫存所有變更 |
--stage | -S | 使用基於樹的 TUI 互動式選擇要暫存的檔案 |
--group | -g | 將暫存的變更分組為多個邏輯提交 |
--push | -p | 提交後推送變更到遠端 |
--yes | -y | 自動確認提交而不提示 |
--dry-run | 顯示會發生什麼而不進行任何變更 | |
--message-only | 只輸出產生的提交訊息,本身不對 git 進行任何提交 | |
--no-verify | 提交時跳過 pre-commit 和 lefthook 鉤子 | |
--skip-secret-scan | 跳過暫存變更中的密鑰安全掃描 | |
--no-verify-ssl | 跳過 SSL 證書驗證(適用於企業代理) | |
--signoff | 新增 Signed-off-by 行到提交訊息(DCO 合規) | |
--interactive | -i | 就變更提問以獲得更好的提交 |
注意:--stage 與 --add-all 互斥。使用 --stage 互動式選擇要暫存的檔案,使用 --add-all 一次性暫存所有變更。
**注意:**組合 -a 和 -g(即 -ag)以先暫存所有變更,然後將它們分組為提交。
**注意:**使用 --group 時,最大輸出權杖限制會根據正在提交的檔案數量自動縮放(1-9 個檔案為 2 倍,10-19 個檔案為 3 倍,20-29 個檔案為 4 倍,30+ 個檔案為 5 倍)。這確保 LLM 有足夠的權杖來生成所有分組提交而不會被截斷,即使對於大型變更集也是如此。
注意:--message-only 與 --group 是互斥的。需要將提交訊息提供給外部腳本或工具處理時,請使用 --message-only;需要在目前的 git 工作流程中組織多個提交時,請使用 --group。
注意:--interactive 標誌透過就你的變更提問,為 LLM 提供額外上下文,從而產生更準確、更詳細的提交訊息。這特別適用於複雜變更,或者當你希望確保提交訊息捕捉到工作的完整上下文時。
訊息客製化
| 標誌 / 選項 | 簡寫 | 描述 |
|---|---|---|
--one-liner | -o | 生成單行提交訊息 |
--verbose | -v | 生成包含動機、架構和影響的詳細提交訊息 |
--hint <text> | -h | 新增提示以引導 LLM |
--model <model> | -m | 指定用於此次提交的模型 |
--language <lang> | -l | 覆蓋語言(名稱或代碼:'Spanish'、'es'、'zh-CN'、'ja') |
--scope | -s | 為提交推斷適當的範圍 |
--50-72 | 對提交訊息格式應用 50/72 規則 |
注意:--50-72 標誌應用 50/72 規則,其中:
- 主題行:最多 50 個字符
- 正文行:每行最多 72 個字符
- 這使得提交訊息在
git log --oneline和 GitHub 的 UI 中保持可讀性
你還可以在 .gac.env 文件中設置 GAC_USE_50_72_RULE=true 以始終應用此規則。
**注意:**你可以透過在確認提示符處簡單地輸入來互動式提供回饋 - 無需前綴 'r'。輸入 r 進行簡單的重新生成,e 編輯訊息(預設就地 TUI,或設定了 $GAC_EDITOR 時使用該編輯器),或直接輸入你的回饋,如 讓它更短。
輸出和詳細程度
| 標誌 / 選項 | 簡寫 | 描述 |
|---|---|---|
--quiet | -q | 抑制除錯誤外的所有輸出 |
--log-level <level> | 設定日誌級別(debug、info、warning、error) | |
--show-prompt | 列印用於提交訊息生成的 LLM 提示 |
說明和版本
| 標誌 / 選項 | 簡寫 | 描述 |
|---|---|---|
--version | 顯示 gac 版本並退出 | |
--help | 顯示說明訊息並退出 |
範例工作流程
-
暫存所有變更並提交:
uvx gac -a -
一步提交並推送:
uvx gac -ap -
生成單行提交訊息:
uvx gac -o -
生成包含結構化部分的詳細提交訊息:
uvx gac -v -
為 LLM 新增提示:
uvx gac -h "重構身份驗證邏輯" -
為提交推斷範圍:
uvx gac -s -
將暫存的變更分組為邏輯提交:
uvx gac -g # 僅分組你已經暫存的檔案 -
分組所有變更(暫存 + 未暫存)並自動確認:
uvx gac -agy # 暫存所有內容,分組,並自動確認 -
僅為此次提交使用特定模型:
uvx gac -m anthropic:claude-haiku-4-5 -
以特定語言生成提交訊息:
# 使用語言代碼(較短) uvx gac -l zh-CN uvx gac -l ja uvx gac -l es # 使用完整名稱 uvx gac -l "Simplified Chinese" uvx gac -l Japanese uvx gac -l Spanish -
演練(檢視會發生什麼):
uvx gac --dry-run -
只取得提交訊息(供腳本整合使用):
uvx gac --message-only # 範例輸出:feat: add user authentication system -
以單行格式取得提交訊息:
uvx gac --message-only --one-liner # 範例輸出:feat: add user authentication system -
使用互動模式提供上下文:
uvx gac -i # 這些變更的主要目的是什麼? # 你在解決什麼問題? # 有什麼實作細節值得一提嗎? -
互動模式配合詳細輸出:
uvx gac -i -v # 提問並生成詳細的提交訊息
進階
- 組合標誌以獲得更強大的工作流程(例如,
uvx gac -ayp以暫存、自動確認和推送) - 使用
--show-prompt偵錯或檢視傳送給 LLM 的提示 - 使用
--log-level或--quiet調整詳細程度
跳過 Pre-commit 和 Lefthook 鉤子
--no-verify 標誌允許你跳過專案中設定的任何 pre-commit 或 lefthook 鉤子:
uvx gac --no-verify # 跳過所有 pre-commit 和 lefthook 鉤子
在以下情況下使用 --no-verify:
- Pre-commit 或 lefthook 鉤子暫時失敗
- 使用耗時的鉤子
- 提交尚未通過所有檢查的進行中工作程式碼
**注意:**謹慎使用,因為這些鉤子維護程式碼品質標準。
安全掃描
uvx gac 包含內建的安全掃描,在任何 AI API 呼叫之前自動檢測暫存變更中的潛在密鑰和 API 金鑰。如果檢測到密鑰,工作流程將立即中止 — 不會進行任何 API 呼叫。這確保了您的敏感資料永遠不會傳送到任何 AI 模型。掃描程式使用基於正則表達式的模式匹配,而非 LLM,因此掃描速度快且完全在本機執行。
跳過安全掃描:
uvx gac --skip-secret-scan # 為此次提交跳過安全掃描
**要永久停用:**在你的 .gac.env 檔案中設定 GAC_SKIP_SECRET_SCAN=true。
何時跳過:
- 提交帶有佔位符密鑰的範例程式碼
- 使用包含虛擬憑證的測試裝置
- 當你已經驗證變更是安全的
**注意:**掃描程式使用基於正則表達式的模式匹配(而非 LLM)來檢測常見的密鑰格式。它在任何 AI API 呼叫之前執行 — 如果發現密鑰,則不會進行任何 API 呼叫。在提交之前,始終檢視你的暫存變更。
二進位檔案偵測
uvx gac 包含對暫存變更中二進位檔案的自動偵測功能,防止意外提交編譯檔案、圖片和其他通常不應放在版本控制中的二進位資產。偵測器使用多種策略:
- 基於副檔名的偵測 - 快速識別 60 多種二進位檔案類型
- 空位元組偵測 - 二進位內容的可靠指示器
- UTF-8 有效性檢查 - 文字檔案應為有效的 UTF-8 或 ASCII
- 魔數識別 - 從檔案簽章偵測檔案類型
支援的二進位類型:
- 可執行檔案: .exe, .dll, .so, .dylib, .bin, .o, .obj, .lib, .a
- 壓縮檔: .zip, .tar, .gz, .bz2, .7z, .rar, .xz, .zst
- 圖片: .png, .jpg, .jpeg, .gif, .bmp, .ico, .tiff, .webp
- 媒體: .mp3, .wav, .ogg, .flac, .m4a, .aac, .mp4, .avi, .mkv, .mov, .wmv
- 字型: .ttf, .otf, .woff, .woff2, .eot
- 文件: .pdf, .doc, .docx, .xls, .xlsx, .ppt, .pptx
- 資料庫: .db, .sqlite, .sqlite3, .mdb, .accdb
- 編譯程式碼: .class, .jar, .war, .ear, .pyc, .pyd, .pyo, .beam, .hi
偵測到二進位檔案時:
uvx gac
# 輸出:
# BINARY FILE WARNING: Binary files detected!
#
# • image.png
# Type: Image file
# Size: 2.3 MB
#
# Binary files should typically be excluded from version control.
# Use .gitignore to prevent accidental commits of binary files.
#
# Options:
# [a] Abort commit (recommended)
# [c] Continue anyway (you know what you're doing)
# [r] Unstage binary file(s) and continue(取消暫存二進位檔案)
#
# Choose an option [a]:
最佳實務:
-
將二進位模式新增到 .gitignore:
# Compiled files *.exe *.dll *.so *.dylib *.o *.a # Images *.png *.jpg *.jpeg *.gif # Archives *.zip *.tar.gz # Python *.pyc __pycache__/ -
對必須追蹤的大型二進位檔案使用 Git LFS:
git lfs track "*.psd" git lfs track "*.zip" -
僅在必要時提交二進位檔案:
- 作為程式碼庫一部分的圖示和資產
- 需要版本控制的測試裝置
- 文件圖片
**注意:**二進位偵測在提交工作流程期間自動執行(類似於秘密掃描)。沒有標誌可以停用它,因為二進位檔案通常不應該提交,除非有特定原因。如果需要提交二進位檔案,請選擇 "Continue anyway" 選項或確保它在專案指南中有適當的文件說明。
SSL 證書驗證
--no-verify-ssl 標誌允許你跳過 API 調用的 SSL 證書驗證:
uvx gac --no-verify-ssl # 跳過此次提交的 SSL 驗證
**要永久設定:**在你的 .gac.env 檔案中設定 GAC_NO_VERIFY_SSL=true。
在以下情況下使用 --no-verify-ssl:
- 企業代理攔截 SSL 流量(MITM 代理)
- 開發環境使用自簽名證書
- 遇到因網路安全設定導致的 SSL 證書錯誤
**注意:**僅在你信任的網路環境中使用此選項。停用 SSL 驗證會降低安全性,可能使你的 API 請求容易受到中間人攻擊。
Signed-off-by 行(DCO 合規)
uvx gac 支援向提交訊息新增 Signed-off-by 行,這在許多開源專案中是 Developer Certificate of Origin (DCO) 合規所必需的。
新增 signoff :
uvx gac --signoff # 新增 Signed-off-by 行到提交訊息(DCO 合規)
要永久啟用 : 在您的 .gac.env 檔案中設定 GAC_SIGNOFF=true,或將 signoff=true 新增到您的設定中。
功能 :
- 在提交訊息中新增
Signed-off-by: 您的姓名 <your.email@example.com> - 使用您的 git 設定(
user.name和user.email)來填充該行 - Cherry Studio、Linux 核心和其他使用 DCO 的專案需要此功能
設定 git 身份資訊 :
確保您的 git 設定具有正確的姓名和電子郵件 :
git config --global user.name "Your Full Name"
git config --global user.email "your.email@example.com"
注意 : Signed-off-by 行是在提交時由 git 新增的,而不是在訊息生成時由 AI 新增的。您在預覽中看不到它,但它會在最終提交中(使用 git log -1 檢查)。
設定說明
- 設定 gac 的推薦方法是執行
uvx gac init並按照互動式提示操作。 - 已經設定好語言,只想切換提供者或模型?執行
uvx gac model,它會跳過所有語言相關的問題。 - 使用 Claude Code? 請參閱Claude Code 設定指南取得 OAuth 驗證說明。
- 使用 ChatGPT OAuth? 請參閱 ChatGPT OAuth 設定指南 取得瀏覽器驗證說明。
- 使用 GitHub Copilot? 請參閱GitHub Copilot 設定指南取得 Device Flow 驗證說明。
- gac 按以下優先順序順序載入設定:
- CLI 標誌
- 專案級
.gac.env - 使用者級
~/.gac.env - 環境變數
進階設定選項
你可以使用這些可選的環境變數自訂 gac 的行為:
GAC_EDITOR=code --wait- 覆寫在確認提示符處按e時使用的編輯器。預設情況下,e開啟就地 TUI;設定GAC_EDITOR將切換到外部編輯器。支援任何帶參數的編輯器命令。對於已知的 GUI 編輯器(VS Code、Cursor、Zed、Sublime Text),等待標誌(--wait/-w)會自動插入,以便程序在關閉檔案前一直阻塞GAC_ALWAYS_INCLUDE_SCOPE=true- 自動推斷並在提交訊息中包含範圍(例如,feat(auth):vs `feat:)GAC_ALWAYS_GROUPED=true- 始終使用分組提交模式(相當於始終傳遞-g或--group標誌)GAC_VERBOSE=true- 生成包含動機、架構和影響部分的詳細提交訊息GAC_USE_50_72_RULE=true- 始終對提交訊息應用 50/72 規則(主題 ≤50 字符,正文行 ≤72 字符)GAC_SIGNOFF=true- 始終在提交中新增 Signed-off-by 行(用於 DCO 合規)GAC_TEMPERATURE=0.7- 控制 LLM 創造力(0.0-1.0,較低 = 更專注)GAC_REASONING_EFFORT=medium- 控制支援延伸思考模型之推理/思考深度(low、medium、high、max)。勿設定則使用各模型預設值。僅傳送至相容之提供者(OpenAI 風格;非 Anthropic)。GAC_MAX_OUTPUT_TOKENS=4096- 生成訊息的最大權杖數(使用--group時根據檔案數量自動縮放 2-5 倍;覆蓋以提高或降低)GAC_WARNING_LIMIT_TOKENS=4096- 當提示超過此權杖數時發出警告GAC_SYSTEM_PROMPT_PATH=/path/to/custom_prompt.txt- 使用自訂系統提示進行提交訊息生成GAC_LANGUAGE=Spanish- 以特定語言生成提交訊息(例如,Spanish、French、Japanese、German)。支援完整名稱或 ISO 代碼(es、fr、ja、de、zh-CN)。使用uvx gac language進行互動式選擇GAC_TRANSLATE_PREFIXES=true- 將常規提交前綴(feat、fix 等)翻譯為目標語言(預設值:false,保持前綴為英語)GAC_SKIP_SECRET_SCAN=true- 停用暫存變更中的密鑰自動安全掃描(謹慎使用)GAC_NO_VERIFY_SSL=true- 跳過 API 調用的 SSL 證書驗證(適用於攔截 SSL 流量的企業代理)GAC_DISABLE_STATS=true- 停用使用統計追蹤(不讀取或寫入統計檔案;現有資料將保留)。僅 truthy 值停用統計;設定為false/0/no/off保持統計啟用,與不設定變數相同
檢視 .gac.env.example 了解完整的設定範本。
有關建立自訂系統提示的詳細指導,請參閱 docs/CUSTOM_SYSTEM_PROMPTS.md。
設定子命令
以下子命令可用:
uvx gac init— 提供者、模型和語言設定的互動式設定精靈uvx gac model— 提供者/模型/API 金鑰設定,無語言提示(適合快速切換)uvx gac auth— 顯示所有提供者的 OAuth 驗證狀態uvx gac auth claude-code login— 使用 OAuth 登入 Claude Code(開啟瀏覽器)uvx gac auth claude-code logout— 從 Claude Code 登出並刪除儲存的權杖uvx gac auth claude-code status— 檢查 Claude Code 身份驗證狀態uvx gac auth chatgpt login— 使用 OAuth 登入 ChatGPT(開啟瀏覽器)uvx gac auth chatgpt logout— 從 ChatGPT 登出並刪除儲存的權杖uvx gac auth chatgpt status— 檢查 ChatGPT 身份驗證狀態uvx gac auth copilot login— 使用 Device Flow 登入 GitHub Copilotuvx gac auth copilot login --host ghe.mycompany.com— 登入 GitHub Enterprise 實例上的 Copilotuvx gac auth copilot logout— 從 Copilot 登出並刪除儲存的令牌uvx gac auth copilot status— 檢查 Copilot 身份驗證狀態uvx gac config showuvx gac config set KEY VALUE— 在$HOME/.gac.env中設定設定金鑰uvx gac config get KEY— 獲取設定值uvx gac config unset KEY— 從$HOME/.gac.env中刪除設定金鑰uvx gac language(或uvx gac lang)— 提交訊息的互動式語言選擇器(設定 GAC_LANGUAGE)uvx gac editor(或uvx gac edit)— 確認提示符中e鍵的互動式編輯器選擇器(設定 GAC_EDITOR)uvx gac diff— 顯示過濾的 git diff,具有暫存/未暫存變更、顏色和截斷選項uvx gac serve— 將 GAC 作為 MCP 伺服器 啟動,用於 AI 代理整合(stdio 傳輸)uvx gac stats show— 檢視你的 gac 使用統計(總計、連續使用、每日和每週活動、令牌使用量、帶平均檔案數的熱門專案、帶速度和延遲的熱門模型)uvx gac stats models— 所有模型的詳細統計,包含令牌細分、速度、延遲和每次提交延遲對比圖表uvx gac stats projects— 所有專案的統計,包含令牌細分和每次 gac 平均檔案數uvx gac stats recent— 最近 10 次 gac 的歷史記錄,包含令牌、速度、延遲、檔案數(-n 20查看更多)uvx gac stats reset— 重置所有統計資料為零(需要確認)uvx gac stats reset model <model-id>— 重置特定模型的統計資料(不區分大小寫)
互動模式
--interactive (-i) 標誌透過就你的變更提出有針對性的問題,改進 gac 的提交訊息生成。這種額外的上下文幫助 LLM 創建更準確、詳細且符合上下文的提交訊息。
工作原理
當你使用 --interactive 時,gac 會提出如下問題:
- 這些變更的主要目的是什麼? - 幫助理解高層目標
- 你在解決什麼問題? - 提供關於動機的上下文
- 有什麼實作細節值得一提嗎? - 捕獲技術規格
- 有破壞性變更嗎? - 識別潛在的影響問題
- 這與某個 issue 或 ticket 相關嗎? - 連接到專案管理
何時使用互動模式
互動模式特別適用於:
- 複雜變更,僅從 diff 無法清楚了解上下文
- 重構工作,跨越多個檔案和概念
- 新功能,需要解釋總體目的
- 錯誤修復,根本原因不是立即可見
- 效能優化,邏輯不直觀
- 程式碼審查準備 - 問題幫助你思考你的變更
使用範例
基本互動模式:
uvx gac -i
這將:
- 顯示暫存變更的摘要
- 就變更提出問題
- 使用你的答案生成提交訊息
- 請求確認(或與
-y組合時自動確認)
互動模式配合暫存變更:
uvx gac -ai
# 暫存所有變更,然後提問以獲得更好的上下文
互動模式配合特定提示:
uvx gac -i -h "使用者設定檔的資料庫遷移"
# 在提供特定提示以聚焦 LLM 的同時提問
互動模式配合詳細輸出:
uvx gac -i -v
# 提問並生成詳細、結構化的提交訊息
自動確認的互動模式:
uvx gac -i -y
# 提問但自動確認生成的提交
問答工作流程
互動工作流程遵循此模式:
- 變更審查 - gac 顯示你正在提交的內容摘要
- 回答問題 - 用相關細節回答每個提示
- 上下文改進 - 你的答案被添加到 LLM 提示中
- 訊息生成 - LLM 創建具有完整上下文的提交訊息
- 確認 - 審查並確認提交(或用
-y自動確認)
有用答案的技巧:
- 簡潔但完整 - 提供重要細節而不過於冗長
- 專注於"為什麼" - 解釋你變更背后的推理
- 提及限制 - 注意限制或特殊考慮
- 連結到外部上下文 - 引用 issues、文件或設計文件
- 空答案也可以 - 如果問題不適用,只需按 Enter
與其他標誌組合
互動模式與大多數其他標誌配合良好:
# 暫存所有變更並提問
uvx gac -ai
# 提問並配合詳細輸出
uvx gac -i -v
最佳實踐
- 用於複雜的 PR - 特別適用於需要詳細解釋的 pull requests
- 團隊協作 - 問題幫助你思考其他人將要審查的變更
- 文件準備 - 你的答案可以幫助形成發布說明的基礎
- 學習工具 - 問題強化提交訊息的良好實踐
- 跳過簡單變更 - 對於瑣碎的修復,基本模式可能更快
使用統計
uvx gac 追蹤輕量級使用統計,讓你可以檢視提交活動、連續使用天數、令牌使用量和最活躍的專案及模型。統計資料本地儲存在 ~/.gac_stats.json 中,不會傳送到任何地方 — 無遙測。
追蹤內容: gac 執行總次數、提交總次數、提示和完成令牌總數、首次/末次使用日期、每日和每週計數(gac、提交、令牌)、當前和最長連續使用天數、每個專案的活動(gac、提交、提示 + 完成令牌)以及每個模型的活動(gac、提示 + 完成令牌)。
不追蹤的內容: 提交訊息、程式碼內容、檔案路徑、個人資訊,或任何超出計數、日期、專案名稱(從 git 遠端或目錄名衍生)和模型名稱的資料。
選擇加入或退出
uvx gac init 會詢問是否啟用統計,並詳細說明儲存的內容。你可以隨時改變主意:
- 啟用統計: 取消設定
GAC_DISABLE_STATS或設定為false/0/no/off/空。 - 停用統計: 將
GAC_DISABLE_STATS設定為 truthy 值(true、1、yes、on)。
在 uvx gac init 中拒絕統計時,如果偵測到現有的 ~/.gac_stats.json,將提供刪除選項。
統計子命令
| 命令 | 描述 |
|---|---|
uvx gac stats | 顯示你的統計(等同於 uvx gac stats show) |
uvx gac stats show | 顯示完整統計:總計、連續使用、每日和每週活動、令牌使用量、熱門專案、熱門模型 |
uvx gac stats models | 所有使用模型的詳細統計,包含令牌細分、速度、延遲和每次提交延遲圖表 |
uvx gac stats projects | 所有專案的統計,包含令牌細分和每次 gac 平均檔案數 |
uvx gac stats recent | 最近 10 次 gac(-n 20 查看更多),包含令牌、速度、延遲、檔案數 |
uvx gac stats reset | 重置所有統計資料為零(需要確認) |
uvx gac stats reset model <model-id> | 重置特定模型的統計資料(不區分大小寫) |
範例
# 檢視你的總體統計
uvx gac stats
# 所有已使用模型的詳細分析
uvx gac stats models
# 所有專案的統計
uvx gac stats projects
# 最近的 gac 歷史
uvx gac stats recent -n 20
# 重置所有統計(需要確認)
uvx gac stats reset
# 重置特定模型的統計資料
uvx gac stats reset model wafer:deepseek-v4-pro
你將看到的內容
執行 uvx gac stats 將顯示:
- gac 使用總次數和提交總次數 — 你使用 gac 的次數和它建立的提交數
- 當前和最長連續使用天數 — 連續使用 gac 的天數(5 天及以上顯示 🔥)
- 活動摘要 — 今日和本週的 gac 使用、提交和令牌數與你的峰值日和峰值週對比
- 熱門專案 — 按 gac 使用 + 提交數排列的 5 個最活躍倉庫,包含每次 gac 平均檔案數和令牌使用量
- 熱門模型 — 5 個最常用模型及其全時段速度、延遲和令牌使用量
執行 uvx gac stats projects 顯示所有專案(不僅僅是前 5 個),包含:
- 所有專案表格 — 每個專案按活動排序,包含 gac 次數、提交次數、每次 gac 提交比率、每次 gac 平均檔案數、提示令牌、完成令牌、推理令牌、總令牌和總 gac 佔比
- 活動條形圖 — 水平條形顯示每個專案的相對 gac 次數
- 令牌使用量條形圖 — 水平條形顯示每個專案的相對令牌消耗量
執行 uvx gac stats models 顯示所有模型(不僅僅是前 5 個),包含:
- 所有模型表格 — 每個已使用的模型按活動排序,包含 gac 次數、提交次數、全時段速度(令牌/秒)、全時段延遲、提示令牌、完成令牌、推理令牌和總令牌
- 速度對比(30天)圖表 — 最近(過去 30 天)模型速度的水平條形圖,從最快到最慢排序,按速度百分位著色(🟡 極速、🟢 快速、🔵 中等、🔘 慢速)
- 延遲對比(30天)圖表 — 最近每次呼叫延遲的水平條形圖,從最短到最長排序
- 每次提交延遲(30天)圖表 — 最近延遲除以提交次數的水平條形圖,顯示每次提交的實際等待時間(在 10 秒 gac 中完成 5 次提交的模型每次提交耗時 2 秒 vs 在 25 秒 gac 中完成 1 次提交的模型每次提交耗時 25 秒)
- 高分慶祝 — 🏆 在你創造新的每日、每週、令牌或連續使用紀錄時獲得獎盃;🥈 在追平紀錄時獲得
- 鼓勵訊息 — 基於你活動的上下文鼓勵
執行 uvx gac stats recent 顯示你最近 10 次 gac(可透過 -n 設定):
- 最近 gac 表格 — 每次 gac 包含相對時間、專案、模型、提交次數、檔案數、速度、延遲和每次 gac 的令牌明細
停用統計
將 GAC_DISABLE_STATS 環境變數設定為 truthy 值:
# 停用統計追蹤
export GAC_DISABLE_STATS=true
# 或在 .gac.env 中
GAC_DISABLE_STATS=true
Falsy 值(false、0、no、off、空)保持統計啟用 — 與不設定變數相同。
停用後,gac 將跳過所有統計記錄 — 不會讀取或寫入檔案。現有資料將保留,但在重新啟用之前不會更新。
Discord Webhook 通知
gac 可以在每次提交時透過您頻道整合設定中的 Webhook URL 向 Discord 頻道發送通知。此整合是選用的:在您明確設定 Webhook URL 之前,它不會執行任何動作。
設定
使用專用的 discord 子指令群組:
uvx gac discord setup # 以互動方式設定 Webhook URL
uvx gac discord show # 顯示是否已設定 Webhook(URL 已遮蔽)
uvx gac discord test # 向已設定的 Webhook 發送測試通知
uvx gac discord remove # 刪除已設定的 Webhook URL
或者,直接在 $HOME/.gac.env(或 ./.gac.env)中設定變數:
GAC_DISCORD_WEBHOOK_URL='https://discord.com/api/webhooks/XXXX/YYYY'
行為
- 在每次成功提交後觸發(單個和分組的工作流)。在
--dry-run和--message-only時跳過。 - 發布帶有綠色條紋的 GitHub 風格 嵌入,倉庫 + 分支作為作者行,提交主題作為標題,提交正文作為描述,短 SHA 在頁腳中。
- 使用 gac 頭像和使用者名稱
gac。 - Webhook 失敗會以 WARNING 級別記錄,並且從不阻擋您的提交。
- 將
GAC_DISCORD_WEBHOOK_URL保持未設定(或為空)以停用。gac init不受影響 — Discord 設定僅位於gac discord下。
取得協助
- 有關 MCP 伺服器設定(AI 代理整合),請參閱 docs/MCP.md
- 有關自訂系統提示,請參閱 docs/CUSTOM_SYSTEM_PROMPTS.md
- 對於 Claude Code OAuth 設定,請參閱 docs/CLAUDE_CODE.md
- 對於 ChatGPT OAuth 設定,請參閱 docs/CHATGPT_OAUTH.md
- 關於 GitHub Copilot 設定,請參閱 GITHUB_COPILOT.md
- 有關故障排除和進階提示,請參閱 docs/TROUBLESHOOTING.md
- 有關安裝和設定,請參閱 README.md#installation-and-configuration
- 要貢獻,請參閱 docs/CONTRIBUTING.md
- 授權資訊:LICENSE