Claude Code 上下文遺失:為什麼會發生以及如何徹底修復
Claude Code 每次結束工作階段都會遺失所有上下文。了解這個問題的成因、實際代價,以及如何用 MemClaw 持久化工作區徹底解決。
你已經在一個專案上工作了三週。今天早上打開 Claude Code,輸入:「我們繼續 auth 重構吧。」
Claude 完全不知道你在說什麼。
每次工作階段都從零開始。這就是 Claude Code 的上下文遺失問題——這不是 bug,而是系統設計如此。但有一個永久的解決方案。

為什麼 Claude Code 會遺失上下文
Claude Code 是無狀態的。每次工作階段都是一次獨立的對話,不會記住之前的工作階段。當你關閉工作階段時,上下文視窗中的所有內容都會消失。
這是刻意的架構選擇——無狀態系統更簡單、更可預測、更容易擴展。但對於持續性的開發工作來說,這會造成實際問題。
顯而易見的代價: 每次工作階段開始時花 5-10 分鐘重新解釋你的專案。以一年每天開發來計算,這是 20-40 小時的純粹額外開銷。
不太明顯的代價: Claude 提出的建議與你已經做出的決策相矛盾。它推薦你已經嘗試過並排除的方案。它問你兩週前就回答過的問題。
最不明顯的代價: 持續追蹤「Claude 目前知道什麼?」的認知負擔。你同時管理兩個心智模型——你的專案和 Claude 對你專案的理解——而不是專注在工作本身。
部分解決方案:CLAUDE.md
標準的變通方法是在專案根目錄放一個 CLAUDE.md 檔案。Claude 在工作階段開始時會讀取它:
# Project: MyApp
## Stack: Next.js 14, TypeScript, PostgreSQL
## Key decisions: JWT in httpOnly cookies for auth
## Current focus: Auth refactor (started 2026-03-20)
## Known issues: Stripe webhook fires twice — check idempotency key
這確實有用,值得做。但有其限制:
- 靜態的 ——你需要手動維護,它會慢慢過時
- 沒有歷史記錄 ——無法追蹤決策是何時做出的或為什麼
- 單一檔案 ——所有東西放在一個地方,很快就會變得混亂
- 無法搜尋 ——Claude 無法回答「我們上個月對快取做了什麼決定?」
- 沒有隔離 ——每個專案一個檔案,無法跨專案管理
CLAUDE.md 適合單一小型專案且生命週期較短的情況。對於更複雜的場景就力不從心了。
永久解決方案:MemClaw
MemClaw 用一個活的、可搜尋的工作區取代靜態的 CLAUDE.md。代理程式在工作階段開始時讀取它,工作過程中寫回更新。
安裝:
/plugin marketplace add Felo-Inc/memclaw
/plugin install memclaw@memclaw
export FELO_API_KEY="your-api-key-here"
為專案建立工作區:
Create a workspace called MyApp
花 15 分鐘填入目前的上下文:
Add to workspace: Next.js 14 + TypeScript + PostgreSQL.
Auth uses JWT in httpOnly cookies — security team requirement, not negotiable.
Stripe webhook fires twice — always check idempotency key before processing.
Current focus: extracting JWT validation logic from auth middleware.
Add decision: rejected Redis for session caching — too much ops overhead
for the team size. Using Postgres-backed sessions instead. Decided 2026-03-15.
每次工作階段開始時載入:
Load the MyApp workspace
就這樣。Claude 讀取工作區,從你上次離開的地方繼續。
「修復後」是什麼樣子
使用 MemClaw 之前:
你:「我們繼續 auth 重構吧。」 Claude:「我很樂意幫忙進行 auth 重構!能告訴我你目前的設定嗎?」
使用 MemClaw 之後:
你:「載入 MyApp 工作區。我們繼續 auth 重構吧。」 Claude:「我看到你正在從 auth middleware 中提取 JWT 驗證邏輯。上次工作階段你完成了提取——下一步是更新路由處理器以使用新的
validateJWT工具函式。安全團隊要求的 httpOnly cookie 已在新實作中處理。要從受保護的路由開始嗎?」
差別就在工作區。Claude 了解專案,因為專案上下文就在那裡可以讀取。
建立記錄習慣
工作區的價值隨著你投入的內容而增長。兩個習慣最能產生效果:
做決策時立即記錄:
Add decision to workspace: using Tailwind not custom CSS —
faster development, client doesn't need a custom design system. 2026-04-07.
不要等到工作階段結束。決定的當下就記錄。
每次工作階段結束時更新狀態:
Update workspace status: JWT extraction complete. Route handlers updated.
Next: update tests to use new validateJWT utility.
一行就夠了。這是 Claude 在你回到專案時最先讀取的內容。
持續使用兩週後,工作區就會有足夠的上下文,讓載入工作區的體驗明顯不同於從零開始。一個月後,你就不再需要思考上下文管理的問題了。
什麼時候 CLAUDE.md 仍然是正確選擇
MemClaw 並非總是必要的。CLAUDE.md 適合以下情況:
- 單一專案,生命週期短(不到一個月)
- 獨立開發者,不需要團隊共享
- 簡單專案,上下文可以放在一個檔案中
- 你不想要任何外部依賴
MemClaw 的適用時機:同時進行多個專案、專案超過一個月、或團隊超過一個人。
開始使用
- 安裝 MemClaw(memclaw.me)
- 為你目前的專案建立工作區
- 花 15 分鐘加入目前的上下文——技術棧、決策、狀態
- 每次工作階段開始時載入工作區
- 工作過程中記錄決策和狀態更新
上下文遺失問題不會自己消失。但一旦你有了一個包含真實專案上下文的工作區,你會立刻感受到差異。