Bible Network Crypto DeFi Onchain RWA AI Agent Stablecoin Chain SAFU CryptoTax DeFAI AGI Claude Me Claude Skill Claude Design Claude Cowork
獨立知識媒體
與任何項目無關聯
學會用 Claude,每件事都做得更好
claudeskill-me.com
最新
為什麼一句「hi」就吃掉 2 萬多個 Token?拆解 Claude Code 的固定啟動開銷  ·  如何寫出第一個自訂 Slash Command?一個從零到有的實作範例(附常見過時語法陷阱)  ·  Claude Code 已把 Command 併進 Skill 系統——網路上一堆「Commands vs Skills 差異」教學已經過時了  ·  為什麼裝了 Skill 卻不會觸發?15,000 字元預算爆了,Claude Code 會悄悄丟棄描述且不警告  ·  Effort 跟 Temperature 都是「調整輸出」的參數,差在哪裡?新模型上其中一個已經失效  ·  官方 anthropics/skills 倉庫評測:168k 星星的內容品質沒問題,問題出在你根本找不到它
advanced

為什麼一句「hi」就吃掉 2 萬多個 Token?拆解 Claude Code 的固定啟動開銷

30 秒速讀
Prompt Caching 省的是錢,不是空間——那 2 萬多個 token 依然完整佔著你的上下文視窗。

完整解析 +
01 · 為什麼發生?

如果啟動開銷是固定的、幾乎省不掉,那 Prompt Caching 到底有什麼實質幫助?

幫助集中在計費,而不是上下文空間。Prompt Caching 針對的是那些每一輪都會重複送出、內容沒有變化的部分(系統提示詞、CLAUDE.md、工具定義),把這些內容標記為可快取,後續請求命中快取時,這部分的計費可以有約九成的折扣。對於一個會話輪數多、每輪都要重新送出同一份固定內容的長對話,這筆折扣累加起來相當可觀。

但這裡的分寸要抓準:快取降低的是「這些 token 花你多少錢」,不是「這些 token 占了上下文視窗多少空間」。200K 的視窗上限,看的是實際占用的 token 數,不是計費後的折扣價,所以即使命中快取、帳單變少,視窗裡的空間該占多少還是占多少,長對話一樣會走向壓縮或摘要。

02 · 運作原理是什麼?

已經連接、但這次對話沒實際用到的 MCP 伺服器,也會拖累啟動開銷嗎?

會。官方文件與社群拆解都指出,每一個已連接的 MCP 伺服器,即使你這個 session 完全沒呼叫它,它的工具 schema 依然會被載入到系統提示詞裡,讓 Claude 知道「這個工具存在、可以在需要時使用」——這是為了讓 Claude 能正確判斷何時該用這個工具,但代價是每個已連接的伺服器,都會在每一則訊息裡帶來一筆小而確實存在的固定開銷。

實務上的建議做法是定期檢視自己掛載的 MCP 清單:如果某個伺服器一週以上沒被實際呼叫過,先中斷連線,需要用到時再重新連上,這是一個十秒鐘就能做完、但長期下來會持續累積節省效果的動作,不需要因為「以後可能用得到」就讓它常態性地佔著開銷。

03 · 如何應用

除了 /context、/memory、/usage,還有沒有其他方法能更早發現用量異常,而不是等到帳單出來才知道?

有的,而且不需要等到 session 結束。除了這三個內建指令即時查看,社群也發展出獨立的測量工具,例如像 context-budget 這類 CLI 工具,能在你實際把檔案載入對話之前,先掃描工作目錄、列出每個檔案各自的 token 成本,讓你在真正執行「載入這份文件」的動作之前,就先看到代價,而不是載入之後才發現視窗被吃掉一大塊。

另一個實務習慣是分階段檢查:一次 session 剛開始時跑一次 /context 記下啟動基準值,做完一輪明顯會拉進大量檔案或執行大量指令的操作後,再跑一次比對差異,這樣能具體看出「剛才那個動作實際花了多少」,而不是籠統地在 session 結束時才發現總量偏高,卻已經很難回頭定位是哪個步驟造成的。

04 · 我該怎麼做?

我不是重度使用者,只是偶爾用 Claude Code 處理小任務,這篇講的內容還有意義嗎?

有意義,但意義的重點不太一樣。如果你的使用模式是「偶爾開一個 session、問幾個問題就結束」,固定啟動開銷占你總用量的比例本來就會偏高——因為你沒有足夠多的後續對話輪次去稀釋那筆先付的成本,這種情況下更該關心的反而是「有沒有必要開這麼多獨立的短 session」,把幾個小任務合併在同一個 session 裡處理,能讓那筆固定成本分攤得更划算。

如果你的任務本身很單純、不太涉及大量檔案讀取或重複執行指令,那麼複利增長的部分(未過濾輸出、累積讀檔)對你的影響本來就有限,這篇文章裡最相關的部分反而是啟動開銷本身的認知——知道那 2 到 3 萬 token 是怎麼回事,至少能讓你在看到用量數字時,不會誤以為系統本身有問題,而是先確認這是不是正常的固定成本。

完整內容 +

GitHub 上有一則具體的錯誤回報(issue #52979):在一個完全乾淨的資料夾裡開一個新 session,什麼檔案、工具、CLAUDE.md 都沒有,只打了一個字「hi」,結果 token 用量顯示約 3 萬——這不是單一使用者的異常個案,firecrawl.dev 整理的優化指南也把「session 開始時就先吃掉 2 萬到 3 萬 token」直接稱為「不是 bug,是 Claude Code 初始化的固定開銷」。這篇要拆解的,就是這筆錢到底花在哪裡,以及哪些部分你真的能省、哪些部分你省不掉。

啟動開銷從哪裡來:系統提示詞、工具定義、記憶檔案

Claude Code 在你打出第一個字之前,就已經把好幾樣東西塞進上下文:系統提示詞本身、內建工具的定義(官方文件說明工具定義被摺進系統提示詞裡一併計算,不會單獨列出)、專案與全域層級的 CLAUDE.md、記憶檔案、已連接 MCP 伺服器的工具 schema,以及已安裝 Skill 的名稱與描述。這些東西每一則訊息都會重新送一次——因為 API 本質上是無狀態的,沒有「記得住」這回事,每一輪對話都是把整疊資料重新攤開一次。

這也是為什麼「刪掉 CLAUDE.md 裡一段話、覺得應該有省到」這種直覺式優化,實際效果往往模糊不清:你看得到的只是自己主動加進去的那部分,系統提示詞、工具 schema 這些固定成本,不會因為你刪減自己寫的內容而消失。

Prompt Caching 讓它「便宜」,但不代表「小」

官方文件與多篇技術拆解都提到同一個關鍵區分:Prompt Caching 能把這些固定重複送出的內容快取起來,實際計費可以有九成左右的折扣,但快取省的是「錢」,不是「上下文空間」。這些 token 依然完整佔用著 200K 的上下文視窗、依然計入速率限制,內容一多,一樣會讓輸出品質在視窗填滿到 5 到 7 成之後開始下滑——這正是上下文腐化要處理的問題。便宜不等於免費,更不等於不佔位置。

真正該盯的不是啟動開銷,是會複利增長的那幾項

把啟動時那 2 到 3 萬 token 當成固定樓地板去接受,通常是務實的——這筆錢幾乎每個人都要付。真正值得花時間排查的,是那些會隨著 session 拉長而不斷疊加、複利增長的部分。一個具體案例來自社群整理的實測數據:測試指令沒有做輸出過濾時,單次輸出約 2,131 tokens,一小時跑個三、四次,疊加起來的量遠遠超過你花一整晚精心修剪的 CLAUDE.md;同一個指令改成只輸出失敗項目後,單次成本降到約 363 tokens——這是那份整理裡標註為「槓桿最高、但幾乎沒人做」的單一改動。

另一個常被低估的複利來源是已讀取的檔案:Claude Code 每讀一個檔案,那份內容就永久留在對話歷史裡,往後每一則訊息都要重新處理一次。一次 PR 審查拉進 20 個檔案,意味著這 20 個檔案的內容,會在這個 session 剩下的每一輪對話裡反覆重新送出——這不是一次性成本,是會跟著 session 長度一起累積的成本。

怎麼實際看到帳單,而不是憑感覺猜

比起憑直覺猜測「這樣改應該有省到」,Claude Code 本身提供了幾個可以直接看到數字的工具:/context 即時列出目前上下文視窗裡每一項元素各佔多少 token,總用量一目瞭然;/memory 顯示這個 session 啟動時究竟載入了哪些 CLAUDE.md 與記憶檔案;/usage(Opus 4.8 起提供)能具體指出目前的用量集中在哪個成分上。與其先刪東西再觀察「感覺變快了」,不如先跑一次 /context,看清楚錢實際花在哪裡,再決定要不要動手。

這對你管理 Claude Code 用量的方式有什麼影響

下次覺得「這個 session 用量怎麼衝這麼快」時,先分清楚問題落在哪一類:是每個 session 都要付一次的固定啟動開銷(系統提示詞、CLAUDE.md、已連接的 MCP 與 Skill),還是會隨對話輪數複利增長的可變成本(未過濾的指令輸出、逐步累積的已讀檔案)。前者接受它是先天成本、頂多做微幅裁剪;後者才是真正值得花時間排查、且改一次就能持續受益的地方。

資料來源:Manage costs effectively - Claude Code DocsClaude Code Context Window: What It Is and Why It Controls Costs - geotoolbox.ai
圖解
固定啟動開銷 vs 複利增長成本左欄是每個 session 都要付一次的固定樓地板,右欄是會隨對話輪數持續疊加的複利成本,兩者需要不同的處理態度Fixed Floor vs Compounding CostFixed startup floorSystem prompt + tool defsCLAUDE.md (global + project)Connected MCP schemasSkill names + descriptions~20K-30K tokens, paid onceCacheable → cheaper, not smallerAccept it. Minor trims only.Compounding costUnfiltered command output~2,131 tok/run, 3-4x/hrFiles read stay foreverre-sent every turn afterGrows with turn countFilter output → ~363 tok/runWorth diagnosing. One fix pays off repeatedly.Claude Skill Me · claudeskill-me.com
歡迎截圖分享,轉載請註明來源
提問
請至少輸入 10 個字
相關文章
Subagent 不是更聰明的小 Claude——它解決的是隔離問題,不是能力問題
advanced · 08/31
為什麼裝了 Skill 卻不會觸發?15,000 字元預算爆了,Claude Code 會悄悄丟棄描述且不警告
practice · 09/02
Claude API 帳單突然變貴?先檢查你有沒有用 Prompt Caching,還有那個悄悄改掉的 TTL
practice · 08/29
Claude 為什麼「忘記」我剛剛說的話?搞懂 Context Window,你就懂了
beginners · 08/28
更多相關主題