目錄
對話(session)是資產,不是用完即丟的東西
這篇文章重點
- Session是資產:Claude Code的session會累積上下文理解
- 取回既有Session:兩個回復Session指令
- 在重要節點使用Fork:保留已建立的重要Session
- 一個任務一個Session:保持上下文乾淨、減少token消耗
為何Session如此重要
Claude Code累積的對話,讓AI透過既有專案內容,寫出符合專案使用的程式碼。
想像一下這個場景:你花了20分鐘讓Claude理解你的專案架構、API設計邏輯、此次新增的需求,Claude Code讀取了數十個檔案,建立了整個系統的理解,然後你的電腦當機重開。
傳統做法是重開一個session,然後重新花20分鐘解釋一遍。
每一次Claude Code累積的上下文理解,都是有價值的。
一個有價值的session包含:
- 專案理解:Claude Code讀取過的檔案,對系統的理解與認知
- 決策脈絡:為什麼選擇方案A而不是方案B的推理過程
- 工作進度:已完成的修改、待處理的項目、剩餘的問題
- 除錯歷史:試過哪些方法、最後怎麼解決的
session一但丟失,重建的成本不只是時間,還有Token。每次從頭開始,Claude Code都要重新讀取檔案、重新分析架構,消耗的這些Token都是真金白銀。
所以學會管理session,是提升Claude Code使用效率的第一步。
在Claude Code取回Session
claude –resume
在開啟Claude Code時,加上–resume這段指令,會打開一個互動式的對話選擇器,顯示你過去的session清單。每一個session都有清楚的摘要資訊:
- Session摘要:這次對話最初的提示詞
- 時間:距離上次互動過了多久
- Git分支:這個Session在哪個branch上工作
或者進入Claude Code輸入指令:
/resume
選定後按下Enter即可回復到指定的Session。
claude –continue
又或者是使用–continue,直接回復到最新的一個Session。
在對話的重要決策點使用fork
Claude Code的開發過程中,當任務內容較為複雜的時候,AI執行任務的品質會降低。為了改善這種狀況,很有效果的做法是將任務拆分成更多小任務。這時候非常適合使用fork,即:
/fork
他的效果是從現在session的對話點,保留當前的對話狀態,並切出新的session,就點像是git的branch。
什麼樣的應用場景需要用到呢?
舉例來說,如果你已經花了20分鐘,讓Claude Code順利了解整個專案與需求,你知道接下來會做一些重大架構調整,或者是探索不同方向,但又不想破壞目前的Session,這時候就非常適合使用。
嘗試不同實作方案
例如你在設計某個功能:
- 方案A:用queue
- 方案B:用cron
- 方案C:用even-driven
在session內利用fork會像是這樣:
- fork A: 設計queue完成XX功能
- fork B: 設計cron完成XX功能
- fork C: 設計event-driven完成XX功能
保留前面辛苦整理好的session,然後透過fork嘗試不同對話去設計新功能。
大型refactor
大型改動的場景也非常適合,因為會有一定的機率失敗,遇到最糟糕的情況可能會是,一開始的方向錯誤,導致後續AI的改動不斷在修復自己的錯誤,無法跳脫。
這時非常適合透過fork切出關鍵改動的時機點,並且保留原本的對話資產,改錯了所以可以從原本的對話開始,不需要全部重頭來。
提示詞試驗
又或者是想要去比較不同提示詞AI給出的內容差異,同樣也適用fork,保留當下的對話上下文。
一個任務一個Session
為了讓Claude Code在產出內容時,不要有太多的雜訊干擾,建議一個任務一個session,讓上下文保持乾淨,減少token使用數量。
可以使用指令:
/clear
來做到開啟新的session。
使用場景通常是在即將開啟全新任務之前,你已經知道接下來要做的事情與先前的對話內容無關。

