セッション管理
公開インターフェースで Claude Code sessions を再開、命名、分岐、エクスポート、自動化する。
学ぶこと
Claude Code session は project directory に関連付けられた保存済み会話です。安定した操作方法は、文書化された commands、flags、session IDs、exports、SDK messages を使うことであり、transcript records を reverse-engineer することではありません。
このセッションでは、会話の続行、検索、分岐、自動化に関する公開契約だけを扱います。
正しい会話を再開する
| インターフェース | 動作 |
|---|---|
claude --continue または claude -c | 現在のディレクトリで最新の会話を再開 |
claude --resume | 対話型 session picker を開く |
claude --resume <name-or-id> | 名前付き session または session ID を直接再開 |
/resume | Claude Code 内から別の会話へ切り替える |
claude --continue
claude --resume auth-refactor
claude --resume 550e8400-e29b-41d4-a716-446655440000
Session lookup は project を考慮します。ID lookup は現在の project directory とその Git worktrees に限定されるため、session を開始した project から実行してください。
必要になる前に Sessions を命名する
起動時に説明的な名前を指定します。
claude --name auth-refactor
# 短縮形
claude -n auth-refactor
または現在の session を改名します。
/rename auth-refactor
人間が扱うには、UUID を runbook に貼るより名前の方が優れています。auth-refactor、release-audit、incident-142 のように、一つの session を一つの workstream に対応させます。
Resume が復元するもの
文書化された復元動作には次が含まれます。
- tool calls と results を含む conversation history
- まだ利用でき、override されていない場合の以前の model
- 重要な例外を除く以前の permission mode
- サポート範囲内の active goal と期限内の scheduled tasks
plan と bypassPermissions は自動復元されません。標準 settings files は起動時に再読み込みされます。追加 settings、plugin directories、MCP config、fallback models、added directories などの launch-only inputs は、再開時に渡し直す必要がある場合があります。
Resume は会話状態を復元しますが、現実を巻き戻したり再作成したりしません。ファイルは変わり、processes は停止し、credentials は期限切れになり、remote systems は先へ進んでいる可能性があります。再開時は現在の repository と外部状態から確認してください。
上書きせず Branch する
Branching はここまでの会話を新しい session へコピーし、元をそのまま残します。
/branch try-streaming-approach
CLI からは:
claude --continue --fork-session
claude --resume auth-refactor --fork-session
分岐先には新しい session ID が付き、session-scoped permission approvals は引き継がれません。同じ未 fork session を二つのターミナルで再開すると、両方の messages が一つの会話へ追記され得るため避けてください。
アプローチの比較には session branching、ファイル変更の分離には Git branch または worktree を使います。解決する問題は別です。
Session 内で Context を管理する
/context
/compact focus on decisions, changed files, and remaining risks
/clear
/contextは現在の context window の消費状況を表示します。/compactは古い context を summary に置き換えます。/clearは空の新しい会話を始め、以前の会話は/resume用に保持します。
Compaction は非可逆な要約であり、durable project memory ではありません。長期 instructions は CLAUDE.md、意思決定は repository artifacts に保存します。
サポートされた方法でエクスポート・自動化する
人が読む記録には /export を使い、必要なら filename を渡します。ソフトウェアには structured public interface を選びます。
claude -p --output-format json "Summarize this repository"
claude -p --output-format stream-json --verbose "Run the verification"
claude -p --resume <session-id> --output-format json "Summarize what changed"
ほかのサポートされた選択肢は Agent SDK messages と hooks に渡される transcript_path です。デフォルト transcript はローカルに JSONL で保存される場合がありますが、その entry format は明示的に internal で、release 間で変更されます。未公開の関連や record types を前提とする parser を構築しないでください。
一回限りの non-interactive run で session transcript を保存しない場合は、-p と文書化された --no-session-persistence flag を使います。
持続可能な引き継ぎパターン
長期タスクを離れる前に:
- session を命名する
- 意思決定と未解決リスクを repository に書く
- 現在の branch、worktree、test result、external status を記録する
- ファイル変更を commit または安全に保存する
- resume 後、それらの事実を再確認してから続行する
Session は会話の継続性を保存します。Repository と live systems が source of truth です。
公式情報源
次のセッション
次は、多数の独立 sessions にわたって役立つ durable project context として CLAUDE.md を設計します。