會話與歷史
Gemini CLI 會話管理:resume、list sessions、delete session、/chat save、/chat resume、/chat share 和專案作用域。
📖 本篇術語速查表
| 英文 / 縮寫 | 中文 | 一句話解釋 |
|---|---|---|
| 會話 | session | 一次互動的上下文流。 |
| 歷史 | history | 過往會話的記錄。 |
| 複用 | resume | 接續之前的會話。 |
不想讀完?把下面這段提示詞丟給 AI 幫你跑完——幫你管好 Gemini CLI 的會話和歷史(複用、清理)。
你是 Gemini CLI 會話管理顧問。
【角色】
Gemini CLI 會話管理顧問,按最小夠用、安全優先的原則給可落地方案,每條結論落到能照做的步驟或示例。
【輸入】
- 我常做的任務型別:___
- 是否需要跨會話延續:___
- 對歷史隱私的顧慮:___
- 熟練度:___
【工作流程】
1. 說明會話怎麼管理
2. 需要時怎麼複用歷史
3. 處理歷史的清理和隱私
4. 給高頻用法
【輸出規範】
▌一、會話管理
▌二、歷史複用
▌三、清理與隱私
▌四、高頻用法
【硬約束】
- 複用歷史注意是否仍適用
- 敏感會話及時清理
- 不依賴記憶裡過時的上下文
- 不要替我臆測情況或編造不存在的命令,資訊不全先問清
- 不確定的命令或引數一律以官方文件為準,禁止照搬過時寫法
- 給的每條結論都要落到具體可照做的步驟或示例,不停留在「建議」「考慮一下」這類沒法直接執行的空泛表述
- 給的每個命令或操作都標一句它解決什麼、什麼時候用,別讓我對著一長串不知何時該用的東西發愣,也不要一次塞太多Gemini CLI 可以恢復之前的 session,也可以在互動式會話裡儲存和恢復聊天狀態。會話通常和目前專案目錄相關。
記住專案作用域:在一個專案裡儲存的會話,不一定能在另一個目錄直接看到。恢復前先確認你在哪個專案目錄。
CLI 層恢復
常見恢復方式包括 gemini -r "latest"、gemini -r "latest" "繼續檢查 type errors",也可以用具體 session id 恢復指定會話。
也可以列出和刪除 session:
列出 session 用 gemini --list-sessions,刪除 session 用 gemini --delete-session 3。
| 動作 | 命令 | 適合場景 |
|---|---|---|
| 恢復最近會話 | gemini -r latest | 剛退出、目錄沒變、繼續同一任務 |
| 恢復並追加任務 | gemini -r latest "繼續跑測試" | 上下文沿用,但要給新的明確目標 |
| 檢視歷史會話 | gemini --list-sessions | 不確定該恢復哪一個 |
| 刪除舊會話 | gemini --delete-session <id> | 清理無用或敏感歷史 |
latest 很方便,但也最容易誤恢復。跨專案、多終端、多 agent 並行時,優先用 session id 或 tag,而不是盲用最近一次。
互動式儲存
互動式會話裡常用 /chat save refactor-auth、/chat list、/chat resume refactor-auth、/chat delete refactor-auth。
/chat 和 /resume 在官方 command reference 中指向同一組 session/checkpoint 動作。
建議 tag 用任務名,不用“今天”“fix”“test”這類無法回憶的名字:
/chat save auth-middleware-typecheck
/chat save docs-gemini-cli-web-tools好 tag 應該能回答三件事:專案、任務、目前階段。以後恢復時,你不需要重新猜它屬於哪條線。
分享會話
分享可以匯出為 Markdown 或 JSON,例如 /chat share file.md、/chat share file.json。
分享前必須脫敏。會話裡可能包含檔案路徑、程式碼、報錯、環境變數名、業務資訊、賬號線索。
使用建議
- 大任務開始前儲存 tag。
- 切目錄前確認 session 作用域。
- 分享會話前先讀一遍匯出的 Markdown/JSON。
- 不要把含金鑰或私有程式碼的 session 公開貼出去。
恢復前檢查
恢復 session 前,先把專案狀態重新拉回現實:
- 看目前目錄是否正確。
- 看
git status是否有別人或其他 agent 的改動。 - 看依賴、分支、環境變數是否和舊會話一致。
- 讓 Gemini CLI 重新讀取關鍵檔案,不要完全依賴舊上下文。
Before continuing, inspect the current git status and re-read the files you plan to touch.
Do not assume the previous session state is still accurate.這一步在多人協作、長時間中斷、自動化任務恢復時尤其重要。session 儲存的是對話上下文,不是專案真實狀態的永久證明。
什麼時候不用恢復
會話恢復適合延續上下文,但不適合用來掩蓋專案狀態變化。如果程式碼已經被別人改過、依賴升級過、分支切換過,恢復舊 session 後要先讓 Gemini CLI 重新讀取目前檔案和 git status。舊會話裡的判斷可能已經過期。
驗收方式
儲存一個測試會話,退出後用 tag 和 latest 分別恢復,確認目錄作用域符合預期。匯出 Markdown/JSON 後,用搜尋檢查是否包含 token、郵箱、本機絕對路徑、私有 repo 名或客戶資訊。
接下來去哪
任務規劃
繼續看複雜任務如何先列計劃、拆步驟、設驗證點。
Checkpoint 與 rewind
如果要恢復檔案修改前狀態,繼續看 checkpoint 和 /restore。
Settings
需要長期固定 session、checkpoint、工具許可權等行為時,繼續看 settings.json。