本文根據 Claude Code 官方文檔《Manage sessions》《Commands》《Explore the .claude directory》整理,資料核對於 2026-11-05。配圖為本站整理的示意圖,不是介面截圖。本站(bigolab.com)不是 Anthropic 官方網站。
適用於誰
- 想把一次 Claude Code 對話存成文字,發給同事或留檔的人;
- 搜「claude code 導出上下文」,想把當前進度帶到新會話的人;
- 想讓腳本讀取 Claude Code 結果的人。
結論先說
- 導出整段對話用
/export:官方描述是把當前對話導出成純文本,消息和工具輸出都渲染成可讀文字。帶文件名(如/export notes.txt)直接寫入該文件;不帶則彈出對話框,可以複製到剪貼簿或儲存成文件。 - 只要最後一條回答用
/copy:它複製最後一條助手回覆,/copy 2複製倒數第二條。有代碼塊時會出現選擇框,按w可以把選中內容寫進文件而不是剪貼簿,官方說這在 SSH 裏很有用。 - 會話記錄本身存在
~/.claude/projects/<project>/<session-id>.jsonl,是 JSON Lines 格式,官方說格式是內部的、各版本會變,不建議用腳本直接解析。 - 腳本要結構化數據,用
claude -p --output-format json或 Hook 裏的transcript_path字段。 - 所謂「導出上下文」沒有單獨的命令。 想把進度帶到新會話,官方提供的是
/compact、/resume,以及把規則寫進CLAUDE.md。

圖:本站根據 Claude Code 官方文檔:Manage sessions 與 Commands 整理的示意圖
一、/export:把整段對話存成文字
在會話裏輸入:
text
/export notes.txt
官方的寫法是 /export [filename]。導出的是一個讓人閱讀的轉錄:對話消息和工具輸出都被轉成文字,而不是原始 JSON。直接輸入 /export 則打開對話框,選擇複製到剪貼簿或儲存到文件。
分享之前先看一遍內容。官方在「應用數據」一節提醒:會話記錄是明文存儲,沒有加密,工具讀到的文件內容、命令輸出、粘貼的文本都會寫進記錄;如果某個工具讀了 .env,或命令打印出憑據,這些值會出現在記錄裏。導出文件同理,把整段對話發給別人之前,先搜一下密鑰、密碼、內部地址。
二、/copy:只要某一條回答
/copy 預設複製最後一條助手回覆,/copy N 複製倒數第 N 條。回覆裏有代碼塊或引用塊時,會出現一個交互式選擇框,讓你選單個塊或整條回覆。選擇框裏按 w,把選中內容寫入文件,不進剪貼簿,適合在 SSH 等剪貼簿不通的場景。
三、會話記錄文件在哪
預設位置是 ~/.claude/projects/<project>/<session-id>.jsonl。<project> 是工作目錄路徑,把所有非字母數字的字符替換成 -;如果轉換後的名字超過 200 個字符,會截到 200 並追加路徑哈希。Windows 上 ~/.claude 對應 %USERPROFILE%\.claude。
要改存放位置,官方給的是環境變量 CLAUDE_CONFIG_DIR;要改保留期(預設 30 天),設定 settings.json 裏的 cleanupPeriodDays;想完全不寫會話記錄,設環境變量 CLAUDE_CODE_SKIP_PROMPT_HISTORY。~/.claude 裏其他文件各是什麼,見 /guides/claude-code-folders-history-location。
記錄裏一行是一個 JSON 對象,可能是消息、工具調用或結果、Claude Code 發給模型的一次請求,或元數據。官方明確說這個格式會隨版本變化,直接解析的腳本可能在任何一個版本里失效。
四、讓腳本讀結構化結果
官方列了四種途徑,按「什麼觸發腳本」來選:
- 跑一次 Claude 並拿結果:
claude -p,加--output-format json或stream-json,得到結果、會話 ID、用量和花費; - 問一個已有會話一個問題:
claude -p --resume <session-id>發一條後續提示,例如讓它總結。官方示例:
bash
claude -p --resume <session-id> --output-format json "summarize what we changed" | jq -r '.result'
- 響應會話事件:Hook 和狀態欄命令的輸入裏都有
transcript_path字段,可以寫一個SessionEndhook,在會話結束時歸檔記錄,Hook 的寫法見 /guides/claude-code-hooks; - 嵌入自己的應用:用 Agent SDK 逐條接收消息。
claude -p 的更多用法見 /guides/claude-code-headless-mode。

圖:本站根據 Claude Code 官方文檔:Manage sessions 整理的示意圖
五、「導出上下文」:想把進度帶到新會話怎麼辦
先分清兩個東西:會話記錄(transcript) 是磁盤上的完整歷史;上下文(context) 是當前塞進模型窗口裏的內容。官方沒有「導出上下文」命令,下面是官方文檔裏與「延續進度」相關的幾個做法:
/context:看當前上下文被什麼佔用,以顏色網格顯示;/compact [instructions]:把歷史替換成摘要,可以寫「保留什麼」,細節見 /guides/claude-code-context-compact;/clear後用/resume:/clear會儲存上一個會話,之後可以用/resume回到它;恢復會話的各種入口見 /guides/claude-code-resume-history;CLAUDE.md:長期有效的約定放這裏,每次會話都會讀,寫法見 /guides/claude-md-agents-md。
另外一個本文的建議(不是官方原話):想開新會話接着幹,可以讓 Claude 把「已做了什麼、沒做完什麼、關鍵文件和決定」寫進項目裏的一個 Markdown 文件,新會話先讀它。文件在你自己的項目目錄裏,可控、可檢查。
常見問題
Q:導出的文件在哪?
帶文件名時寫入你指定的文件;不帶文件名時,儲存位置以彈出的對話框為準,官方文檔沒有寫預設目錄。
Q:能導出成 Word 或 PDF 嗎?
官方只寫了純文本。其他格式需要你自己轉換。
Q:桌面版、VS Code 的會話也能這樣導出嗎?
官方說桌面版、網頁版和 VS Code 擴展各自有會話列表,本文說的是命令行版。
Q:會話記錄過多久會被刪?
預設 30 天,由 cleanupPeriodDays 控制。要提前刪某個項目的記錄,官方有 claude purge,會先列出刪除計劃並要求確認。
相關教學
- /guides/claude-code-slash-commands:斜槓命令速查
- /guides/ai-coding-security-secrets-permissions:密鑰與提示注入的安全清單
參考資料
- Claude Code 官方文檔:Manage sessions — https://code.claude.com/docs/en/sessions
- Claude Code 官方文檔:Commands — https://code.claude.com/docs/en/commands
- Claude Code 官方文檔:Explore the .claude directory — https://code.claude.com/docs/en/claude-directory
0 條評論
還沒有評論,來搶沙發~