Claude Code 的 token 都去哪了:9 種流失模式,以及 2026 年的修復方法
MarkdownClaude 看到提示詞之前,73% 的 token 就已經流失。CLAUDE.md、MCP、歷史紀錄——Claude Code 的上下文在哪裡流失,以及如何修復 9 個流失來源。
閱讀全文
重點
模型讀取你的請求之前,許多 token 已用在膨脹的 CLAUDE.md、重新讀取舊對話紀錄,以及 MCP 伺服器上。本文說明 9 種額外負擔來源與 15 分鐘清理清單。節省幅度取決於工作階段;占用上下文、處理 token、快取用量與成本必須分開測量。
在一個例子中,全新的 Claude Code 工作階段執行/context時,顯示 200K 中已有 60K token 被占用,當時還沒送出第一則訊息。專案儲存庫裡只啟動了claude。60K token——三分之一的額度就花在「準備」對話上了。
兩週後,我終於弄清楚這些 token 到底去了哪裡。以下列出你開始輸入之前就會消耗 token 的全部 9 種模式,以及各自的修復方法。數據來自 Anthropic 官方文件和真實工作階段的測量。
Ailoot 文件 — 使用這項服務的參考資料。
「提示詞送出前,73% 的 token 就流失了」是什麼意思?
重點
Claude 讀取你實際的請求之前,就已經有大量 token 用在膨脹的 CLAUDE.md、重新讀取舊聊天紀錄,以及其他七種模式中,從 MCP 伺服器到背景摘要都有。這和訂閱方案的用量上限無關,而是上下文的運作方式造成的。
以下是 9 種模式的整理表,包含真實工作階段測量數據及 Anthropic 官方成本管理頁面的資料。
| 模式 | 流失占比 | 來源 |
|---|---|---|
| 1. 膨脹的 CLAUDE.md | — | — |
| 2. 重新讀取舊紀錄 | — | — |
| 3. MCP 伺服器 | 最高 49%(過去);Tool Search 推出後為 8-15% | 真實工作階段的測量數據 |
4. 累積的tool_use輸出 | 5-15% | 真實工作階段的測量數據 |
| 6. 重複的 skills 與 plugins | 2-5% | Vercel 研究(56% 的 skills 從未被呼叫) |
| 7. Plan Mode 中的 agent teams | 最高 700% | Anthropic 文件 |
| 8. Extended thinking 預算 | 5-20% | Anthropic 文件 |
9. --resume的背景摘要 | 每個工作階段被動消耗約$0.04 | Anthropic 文件 |
我不會說「73」這個數字絕對準確——依你的設定而定,可能是 60%,也可能是 80%。但整體情況確實如此,而且每種模式都能個別修正。以下每次會介紹三種。
Claude 讀取你的請求前,如何建立上下文?
重點
你還沒輸入第一個字元,Claude 就已經載入五個層次:系統提示詞、內建工具的說明、CLAUDE.md 檔案、已連線 MCP 伺服器的工具名稱與指示(停用 tool search 時還會載入完整說明),以及記憶(memory_files)。在 200K 視窗中,這些內容很容易占掉 60-100K,也就是額度的三分之一到一半。剩下的空間留給對話本身,以及 Read/Edit 等工具。
視窗大小取決於模型。根據 Anthropic 的模型文件,截至 2026 年 9 月,Opus 4.7 及更新版本、Sonnet 5 和 Fable 模型在所有方案中都提供 1M-token 視窗,包括 Pro。未使用 extended context 的 Opus 4.6 和 Sonnet 4.6,以及透過CLAUDE_CODE_DISABLE_1M_CONTEXT=1變數停用 1M 的工作階段,仍採用 200K。視窗變大並不能解決上下文膨脹:第一則訊息送出前載入的所有內容都會隨每次請求傳給模型,而成本文件明確指出,上下文越多,token 用量就越高。訂閱方案也不會改變這點——任何方案中,每多一個 token 都會占用你的額度。
上下文的前三分之一去了哪裡:CLAUDE.md、歷史紀錄與 MCP
重點
三種主要模式會在你開始對話前占掉上下文的 36-76%。CLAUDE.md 會構成重複請求中的上下文,歷史隨回合增加,後續請求可能處理更多輸入;成本也取決於快取讀寫,沒有普遍適用的指數成長率。MCP 伺服器過去最多會占用視窗的 49%;2025 年 12 月至 2026 年 1 月推出的新功能 Tool Search 解決了其中大部分問題,但許多設定仍採用舊模式。
模式 1. 每則訊息前載入 CLAUDE.md
CLAUDE.md 可能是第一個流失來源。這個檔案不是每個工作階段只載入一次,而是在你送出每則訊息前都會載入。含有 5,000-token CLAUDE.md 的請求,會占用這麼多上下文;但新輸入、快取寫入與讀取需分開記帳,重複內容未必按完整未快取費率收費。
盡量將 CLAUDE.md 控制在 200 行以內,只包含最重要的資訊。將專門用途的指示移到按需載入的 skills 中。
這是外部最難察覺的模式,因為你看不到它。後續請求會提供保留的對話上下文;提示詞快取可重用穩定前綴,壓縮或清除則會改變保留文字。即使快取價格降低成本,重複提供的內容仍占用視窗。
模式 2. 每次回覆都會重新讀取對話紀錄
解決方法是在不相關的工作之間使用/clear。我的規則是每個新任務都開新聊天。如果任務很長,而且你需要保留歷史紀錄,就用/compact把過去的內容摘要成精簡摘要,再從那裡繼續。
我的工作階段中有實際案例,詳見指南「如何避免一天內用完 Claude Code 額度:節省 token 的 8 個規則」。
模式 3. MCP 伺服器會把所有工具註冊到上下文中
Anthropic 在 2025 年 12 月至 2026 年 1 月推出 Tool Search 功能,解決了這個問題的一大半。
Anthropic 文件目前的說明如下:
MCP 工具定義預設會延後載入——只有工具名稱會進入上下文,直到 Claude 呼叫特定工具為止。執行
/context即可查看哪些內容占用空間。可行時,請優先使用 CLI:gh、aws、gcloud和sentry-cli等工具仍比 MCP 伺服器有效率,因為它們不會加入逐項工具說明。
在正式環境中可以這樣做:
- 將 Claude Code 更新到支援 Tool Search 的版本(2025 年 12 月以後的所有目前版本都支援)。
- 開啟
/mcp,停用目前工作階段不需要的伺服器。在這個案例中,Playwright 和 shadcn 兩個伺服器一直保持連線;其他伺服器則只在單一任務期間啟用,結束後立即執行/mcp disconnect。 - 可行時以 CLI 取代 MCP。使用
gh代替 GitHub MCP 伺服器。改用瀏覽器中的行事曆,而非 Google Calendar MCP。
我在「2026 年的 Claude Code MCP 伺服器:7 種現成設定與逐步安裝指南」中介紹了 MCP 伺服器的基本概念和合理設定方式。
CLAUDE.md 和 Skills 的問題不只在於大小,也在於結構。CLAUDE.md 是核心指示檔。額外的專案知識,例如受眾、產品、法律文件、每日指示,則放在business/資料夾中;在我的方法論裡,這就是Second Brain。Claude 只會讀取目前需要的內容,而上下文壓縮在這個層級就已經開始。完整說明請見「Claude Code 中的 Second Brain」。
還有一個常被忽略的細節:清理 CLAUDE.md、改用 Skills、停用 MCP 都只是第一步。接下來就要運用上下文工程方法論,決定每個提示詞要放什麼、順序為何,哪些工作交給 Plan Mode,哪些透過/compact處理。本指南只涵蓋其中一個組成部分。
工作階段中會累積什麼?哪些內容無法刪減?
重點
第四種模式是工具輸出。每個讀取的檔案、每段bash輸出、每個 MCP 伺服器的回覆,都會一直留在工作階段的上下文中。讀了 10,000 行日誌?除非執行/clear,否則它們會一直跟著你。第五種模式是系統基準用量:系統提示詞和內建工具說明會占用 19K token。你無法刪減這些內容,但了解它們有助於計算用量。
模式 4. 工具輸出會在工作階段中持續累積
有個很少人提到的細節:Claude 執行bash cat huge-file.log時,該指令的完整輸出都會進入上下文,並一直保留到工作階段結束或執行/clear為止。用Read讀取大型檔案也是一樣——10,000 行都會保留下來,在後續每則訊息中持續占用 token(見模式 2)。
解決方法:
- 用
head、tail、grep取代讀取全部內容。用bash tail -100 deploy.log代替Read deploy.log。輸出會立即減少 10-100 倍。 - 用 hooks 預先處理。在
~/.claude/hooks放入腳本,在 Claude 看到 bash 輸出之前先進行篩選。Anthropic 文件中的範例是 PreToolUse hook,執行npm test 2>&1 | grep -A 5 -E 'FAIL|ERROR',而不是印出完整測試輸出。這能將內容壓縮 50-100 倍。詳情請見「2026 年的 Claude Code Hooks:逐步設定與 7 個現成範例」。 - 大量讀取後執行
/clear。如果你為了某個特定任務讀取了大型檔案,之後也不再需要,就不要「以防萬一」把它留在上下文裡;直接開啟新聊天。
模式 5. 系統提示詞 + 系統工具 = 固定的基準用量
這種模式無法改變,因為你幾乎無能為力。Claude Code 啟動時會載入系統提示詞(約 3 200 個 token)和所有內建工具的說明——Read、Edit、Write、Bash、Glob、Grep、WebSearch、WebFetch、TodoWrite(約 16 100 個 token)。合計為19 300 個 token的固定基準用量,無法刪減。
實際上可以這樣做:
- 先了解。要知道固定的 19K「基本稅」:在 200K 視窗中,200K - 19K = 181K 可供其他內容使用(還要扣除 CLAUDE.md、MCP 和自動壓縮緩衝區)。1M 視窗的空間比較大,但每次請求仍會帶著這筆「基本稅」。
- 測量重複處理。基準內容占用視窗,也可能在後續請求重現,並不是每個工作階段只收一次 token 費。計算成本應分開看輸入、快取寫入、快取讀取與輸出總量。
Skills、plugins 和 agent teams 會在哪裡消耗 token?
重點
第六種模式是重複註冊 skills 和 plugins。Vercel 的研究發現,工作階段中有 56% 的 skills 從未被呼叫,卻持續載入上下文。第七種模式是 agent teams:在 Plan Mode 中啟動多個 Claude 執行個體時,總 token 用量會增至單一工作階段的約 7 倍。Anthropic 已在文件中明確說明這點。
模式 6. Skills 和 plugins 可能重複註冊
這個問題隨著 plugins 在 2025 年底加入 Claude Code 而出現。安裝會新增 skills 的 plugin 後,這些 skills 就會進入上下文。如果你也在~/.claude/skills/安裝了類似的 user skills,它們也會載入。有時候兩者還會重複。
Vercel 在 AI 技術堆疊研究中分享了一項數據:工作階段中有 56% 的 skills 從未被呼叫,但它們的說明卻持續載入上下文。每個說明以 100 個 token 計算,100 個 skills 最多會帶來 5 600 個 token 的「行李」。
可以這樣做:
- 用
/context查看實際占用狀況。如果 Skills 區塊超過 3K,就整理一下。 - 執行
ls ~/.claude/skills/,查看已安裝的 skills。刪除超過一個月沒用過的項目。 - 對你安裝來「試用」後就忘記的 plugins 執行
/plugin remove。
「2026 年的 Claude Code Skills:如何打造個人 Skills 資料庫」介紹了 Skills 的適當結構,以及它們和 CLAUDE.md 的差異。
模式 7. Agent teams 在 Plan Mode 中會多消耗 7 倍 token
Agent teams 是一種讓 Claude Code 啟動多個平行模型執行個體的功能,每個執行個體都有自己的上下文。Anthropic 在文件中直接表示:
團隊成員在 Plan Mode 中工作時,agent teams 的 token 用量約為一般工作階段的 7 倍:每個成員都有自己的上下文視窗,並以獨立的 Claude 執行個體運作。請讓團隊任務保持小而獨立,以限制每位成員的用量。
也就是說,Plan Mode 中的五名團隊成員等於五個平行工作階段,各自載入系統基準用量、自己的 CLAUDE.md 副本和 MCP 工具。總 token 用量會以非線性方式增加。
可以這樣做:
- 團隊成員使用 Sonnet 或 Haiku。只讓負責協調的團隊主管使用 Opus。每 token 費率可能較低,但應測量各成員完整任務成本與品質,不要假設固定節省幅度。
- 縮小團隊規模。用兩三名團隊成員,而不是十名。
- 清除閒置的團隊成員。任務結束後,如果成員仍在執行,就會繼續在背景消耗 token。
Plan Mode的更多資訊,以及它何時真正有幫助,請見「Claude Code 的 Plan Mode:2026 年逐步指南與 4 個階段」。
你沒注意時,Claude 會在哪些情況下計入 token?
重點
第八種模式是 extended thinking。Claude 會在回答前「出聲」思考,而這些思考 token 會算作輸出。處理複雜任務時,預設預算可能高達數萬個 token。第九種模式是背景摘要:即使你沒有輸入,Claude Code 也會處理先前的工作階段,供--resume使用,並儲存摘要。每個工作階段約有$0.04 在「閒置」時被消耗。
模式 8. Extended thinking 會在你沒有參與時消耗 token
Extended thinking 是 Claude 在回答前,先於隱藏的思考區塊中「推演」解法的模式。計算時,這些內容會視為輸出 token,和一般回覆一樣列入計算,但聊天中看不到它們。
由於 extended thinking 能大幅提升困難規劃與推理任務的結果,因此預設為啟用。思考 token 以輸出計費,依模型而定,預設的每次請求預算可能達數萬個 token。
這表示,單一複雜請求就可能用掉 10-30K 思考 token,侵蝕你的額度,但你在聊天中只看得到簡短摘要。
可以這樣做:
- 簡單任務使用
/effort low。它會把思考預算降到最低。 - 在環境中設定
MAX_THINKING_TOKENS=8000,設下上限。 - 對於 Claude 不需要「思考」的日常例行任務,可以使用
/config→ 停用 thinking。
複雜架構、多步驟推理等情況下何時適合使用 thinking、何時不適合,請見「Claude Code 中該用 Sonnet 還是 Opus 4.7:2026 年的模型與 /effort 選擇指南」。
模式 9. 閒置時執行背景摘要
這種模式影響很小,但很有意思。Claude Code 會在背景執行程序,為claude --resume指令整理先前工作階段的摘要。即使你沒有輸入,程序仍會執行。
Claude Code 即使在閒置時也會為背景功能使用 token,包括對話摘要(為
claude --resume整理先前工作階段的背景工作)和指令處理。即使沒有主動互動,這些背景程序仍會消耗少量 token(每個工作階段通常低於 $0.04)。
每個工作階段 4 美分不算什麼。但如果你一天開著 10 個工作階段,被動消耗就已經是每天$0.40、每月$12。關閉目前不需要的工作階段即可。你可以從索引執行/resume還原工作階段,不必一直開著。
如何測量 token 流失:/context指令與其注意事項
重點
Claude Code 的/context指令會顯示目前 token 的用量分布。但有一個已知錯誤:過去它會將 MCP 工具的用量高估 3 倍,因為它為每個工具分別計算工具開銷。Anthropic 已在較新版本修正這個問題。如果你的/context報告中,MCP 超過 30K,請先更新 Claude Code,再重新測量。
先介紹指令。在 Claude Code 中開啟/context(或用/usage查看計算結果),會看到類似以下的內容:
上下文視窗: 200 000 tokens
系統提示詞: 3 200 (1.6%)
系統工具: 16 100 (8.0%)
MCP 工具: 12 600 (6.3%)
CLAUDE.md: 4 800 (2.4%)
記憶檔案: 3 000 (1.5%)
對話: 18 400 (9.2%)
可用空間: 141 900 (71.0%)
這是初步清理後正常的固定基準用量。很好——視窗有 71% 的空間可用。
已知的/context錯誤:MCP 用量高估 3 倍
直到近期更新之前,/context顯示的 MCP 流失量約為實際數字的 3 倍,因為每項工具的額外負載都會分別計算。
Cameron 表示,Anthropic 已在目前版本修正這個問題;同一個 XcodeBuildMCP 現在會顯示 12 600。因此:
- 如果
/context顯示 MCP 工具占用 50K 以上——你可能使用的是舊版 Claude Code。請更新。 - 如果 MCP 是 8-15K——這很正常,代表使用 Tool Search 時的實際成本。
- 如果新版的 MCP 是 30-50K——你確實連接了許多未使用的伺服器。前往
/mcp並中斷連線。
除了/context之外還要查看什麼
/usage—顯示過去 24 小時或 7 天的方案用量。在 Pro 和 Max 中,它會列出 skills、subagents、plugins 和個別 MCP 伺服器的用量明細,方便找出哪個 skill 消耗最多。
/cost—供 API 使用者查看。會以美元顯示目前工作階段按比例分攤的成本。Pro/Max 訂閱者不需要這項功能。
/usage-credits—在 Pro/Max 中可設定每月支出上限。如果你不想讓指令碼啟動的 agent team 意外刷爆信用卡,這項功能就很有用。
如何在 15 分鐘內整理 Claude Code 的上下文
重點
以下 8 步可減少不必要上下文。70% 可用空間或用量降低 40–50% 之類目標,不是保證結果;單次上下文快照也不能衡量整段工作階段用量。多數項目只需 1-2 分鐘。效益最大的項目是整理 CLAUDE.md 和中斷未使用 MCP 的連線,兩者各需 5 分鐘。請依順序完成,不要跳過任何步驟。
在 Claude Code 中開啟專案,依序完成以下步驟:
/context—記下目前的用量明細,作為基準。/clear—如果聊天累積了與目前任務無關的歷史紀錄,就執行這項指令,開啟全新的視窗。ls -la ~/.claude/skills/—查看已安裝的 skills。刪除一個月沒用過的項目。指令:rm -rf ~/.claude/skills/[skill-name](或透過介面刪除資料夾)。/plugin list—同樣檢查 plugins。使用/plugin remove <name>移除不再使用的項目。/mcp—查看已連線的 MCP 伺服器。只保留目前任務需要的項目,其餘使用/mcp disconnect <name>中斷連線。- 用編輯器開啟 CLAUDE.md。如果檔案超過 200 行,就把專門用途的指示移到 Skills(
~/.claude/skills/[topic]/SKILL.md)。目標是保留 100-200 行的核心內容,以及 5-15 個主題 Skills。詳細指南請見「如何在 2026 年設定 CLAUDE.md:現成範本與 6 個規則」。 - 檢查
/effort—簡單任務使用/effort low。只有複雜架構任務才需要較高的 thinking 預算。 - 最後再次測量
/context,並和步驟 1 比較。
本文描述的工作階段中,清理後上下文占用從 60–80K 降至 25–30K。這是快照占用變化,不是總處理 token 或成本固定下降的證明。宣稱節省前,請比較同一任務完整執行,包括快取與輸出用量。
如果你想進一步理解 token,並建立一套完整的 Claude 工作方法論——包括AI 分身、Second Brain(business/)和上下文工程——這三者就是方法論的組成部分。
什麼時候改用 Sonnet 或 Haiku,比整理上下文更有效?
重點
整理上下文不一定最符合成本效益。如果你的任務大多是日常工作(文字編輯、範本生成、格式整理),較低 token 費率的模型可能降低成本,但切換模型不能證明固定 token 用量降幅。分詞器、推理、輸出長度與重試,都會改變實際數量。複雜架構、多步驟推理和棘手錯誤的除錯,仍然需要 Opus。依任務選擇模型。
Sonnet 能勝任大多數程式設計任務,而且比 Opus 便宜。複雜的架構決策和多步驟推理留給 Opus。使用
/model即可在工作階段中途切換,或在/config中設定預設模型。簡單的 subagent 任務可在設定中指定model: haiku。
輸入 token 價格概略比較(截至 2026 年 5 月 27 日):
| 模型 | 每 1M 輸入 token 的價格 | 適用情境 |
|---|---|---|
| Opus 4.7 | $15 | 架構、多步驟複雜推理、困難的除錯 |
| Sonnet 4.5 | $3 | 80% 的一般程式設計任務:編輯、重構、測試、文件 |
| Haiku 4.5 | $1 | 格式整理、簡單解析、subagent 任務、日常文字編輯 |
我的設定:
- 預設使用 Sonnet 4.5。在
/config → default model中設定,能處理 80% 的任務。 - 遇到真正困難的任務(架構選擇、診斷難以理解的錯誤、新產品)時,手動執行
/model opus。 - 測試和格式整理使用
/model haiku,或在 subagent 設定中明確指定model: haiku。 /effort與模型分開設定。你可以在 Opus 上使用/effort low——以精簡的思考量使用強大的模型,快速處理中等難度的問題。
以下情況,整理上下文比更換模型更值得:
- 上下文使用量超過 50%——先整理。
- 上下文狀況良好,但任務很複雜——使用正常 effort 的 Opus。
- 上下文狀況良好,任務屬於日常工作——使用 Haiku。
模型與 effort 的詳細比較,請見「Claude Code 中該用 Sonnet 還是 Opus 4.7:2026 年的模型與 /effort 選擇指南」。
哪些技巧會增加用量,反而無法節省 token?
重點
部落格上常有一些短期有效、長期卻會破壞工作流程的建議。最常見的三種是:「刪掉所有 MCP」、「不要用 CLAUDE.md,全部放進提示詞」,以及「永遠用 Plan Mode 工作」。這三種做法都只解決一個問題,卻帶來三個新問題。以下逐一拆解。
反模式 1.「刪掉所有會消耗 token 的 MCP」
最常見的錯誤就是懶得整理。沒錯,MCP 過去最多會消耗 49% 的上下文,但 Tool Search 推出後已降至 8-15%。而且 MCP 提供了實用工具,否則你得自己手動打造。刪掉所有 MCP,就等於回到人工操作,耗掉的時間可能比省下的 token 還多。
正確做法是只保留你經常使用的 MCP 伺服器。我會保留 Playwright(測試 landing page)和 shadcn(產生介面),其他的則視個別任務使用。
反模式 2.「不要用 CLAUDE.md,所有內容直接放進提示詞」
聽起來「很合理」:既然 CLAUDE.md 每次請求都會載入,那就不要載入它。但實際上,沒有 CLAUDE.md 時,你每次傳送訊息都得手動輸入相同指示,而且 Claude 也會在訊息之間忘記上下文。這樣消耗的 token 反而更多——只是改由另一個管道傳送。
正確做法是讓 CLAUDE.md 保持精簡(100-200 行),放入核心內容,並將專門用途的內容移到 Skills。詳情請見「如何在 2026 年設定 CLAUDE.md」。
反模式 3.「永遠用 Plan Mode 工作」
對於需要先探索程式碼庫並提出計畫的複雜任務,Plan Mode 是很棒的工具。但透過 agent teams 使用時,平均會多消耗7 倍 token(Anthropic 文件)。像「修正 README 中的拼字錯誤」這種簡單任務,用 Plan Mode 會比直接編輯多消耗 7 倍。
正確做法是只在需要 30 分鐘以上的複雜任務中使用 Plan Mode。短任務直接提出請求,不必使用 Plan Mode。各模式的適用情況請見「Claude Code 的 Plan Mode:2026 年逐步指南與 4 個階段」。
來源
- Anthropic Docs:有效管理成本 — 成本、模型、MCP、agent teams 和 thinking 預算的官方數據
- Anthropic Docs:模型設定 - 延伸上下文 — 各模型和方案的視窗大小、自動壓縮門檻
- Ailoot 資料:「Second Brain + 上下文工程」方法論,收錄於如何設定 CLAUDE.md、Claude Code 中的 Second Brain、2026 年的上下文工程、Claude Code 的 Plan Mode、Skills、MCP 伺服器、Hooks、Sonnet 還是 Opus、如何避免用完額度。
更多資料請見 Ailoot。
更多詳情
常見問題:Claude Code 的 token 都去哪了:9 種流失模式,以及 2026 年的修復方法
token 單價較低的模型,一定使用較少 token 嗎?
不一定。低費率改變的是單個 token 價格,實際數量取決於分詞器、推理、輸出及重試。宣稱用量或成本下降前,請比較同一任務的完整執行。
/context 會顯示整個工作階段已收費多少嗎?
不會。它顯示目前上下文占用。評估處理量與成本時,應分開查看輸入、快取寫入、快取讀取與輸出總量;重複基準文字不是每個工作階段只收一次費。