型8: 会話履歴の管理
クラス: 初心者
所要時間: 約25分
前提知識: 型1〜7 完了済み
1. 解説
セッションとコンテキストの概念
セッション = Claude Code を起動してから終了するまでの1つの会話
コンテキスト = AI が「記憶」している情報の総量(トークン数で測る)コンテキストが増えるにつれて:
- 応答が遅くなる
- トークンコスト(API費用)が増える
- 古い情報が押し出されて忘れられることがある
会話管理コマンド
| コマンド | 動作 | 使いどころ |
|---|---|---|
/clear | 会話を全削除してリセット | タスクが完全に変わるとき |
/compact | 古い会話を要約に圧縮 | 同じタスクを続けるが長くなったとき |
/exit + 再起動 | セッションを終了して新規開始 | 完全に新しいプロジェクトに移るとき |
コンテキストを意識した作業スタイル
# 良いプラクティス
✅ タスクが変わったら /clear する
✅ 長時間の作業は /compact で圧縮しながら進める
✅ 重要な決定事項は CLAUDE.md に書いておく
✅ 1セッション = 1タスク を意識する
# 避けるべきパターン
❌ 全く関係ないタスクを同一セッションで続ける
❌ コンテキストが溢れるまで /clear しない
❌ AI に「さっきの話の続きだけど」と言い続けるセッション間で情報を引き継ぐ方法
セッションをまたいで情報を引き継ぐには:
1. CLAUDE.md に重要な情報を書く(自動で読み込まれる)
2. メモファイル(notes.md など)を作り、AIに読ませる
3. 次のセッション開始時に「前回の続きで〜」と状況を説明する2. 実践
Step 1: コンテキストの蓄積を観察
bash
cd ~/claude-practice/lesson6 # CLAUDE.md があるディレクトリ
claude以下を10回繰り返して、コンテキストが増えていくのを確認:
/cost
何かランダムな質問をする(例: 「Pythonの特徴を教えて」)
/cost/cost の数値が増えていくことを観察せよ。
Step 2: /compact を実際に使う
会話が長くなった状態で:
/compact圧縮後に:
/cost
直前に話していた内容の要点を教えてください。コンテキストが減りつつも、主要な情報が引き継がれることを確認せよ。
Step 3: /clear で完全リセット
/clearリセット後:
先ほど話していた内容を教えてください。AI が以前の会話を覚えていないことを確認せよ。
Step 4: CLAUDE.md でセッション間引き継ぎ
bash
mkdir -p ~/claude-practice/lesson8
cd ~/claude-practice/lesson8
cat > CLAUDE.md << 'EOF'
# プロジェクトメモ
## 作業中のタスク
- [x] 認証機能の実装
- [ ] テストコードの追加(次のセッションで行う予定)
- [ ] ドキュメントの更新
## 決定事項
- データベース: SQLite を使用する(理由: 開発環境のシンプルさ)
- 認証方式: JWT トークン
## 注意事項
- src/auth.js は編集禁止(本番稼働中)
EOFbash
claude現在の作業状況と注意事項を確認してください。3. 確認課題(Assignment)
課題 8-1: /clear vs /compact の使い分け
以下のシナリオで適切なコマンドを選べ。
- バグ修正タスクが終わり、次は新機能追加に移る
- リファクタリング中に会話が長くなったが作業は続けたい
- 全く別のプロジェクトに移る
それぞれの答えを Claude Code で実際に試せ。
達成条件: 3つのシナリオで適切なコマンドを選び実行できること
課題 8-2: CLAUDE.md による引き継ぎ
~/claude-practice/lesson8 で以下を実施:
- Claude Code で何かファイルを作成させる
exitで終了- CLAUDE.md に作成したファイルの情報を追記
- 再び
claudeを起動し、前回の作業内容を確認させる
前回のセッションで作成したファイルを確認してください。達成条件: 新しいセッションで前回の作業内容が引き継がれていること
課題 8-3: コスト計測
1つのセッションで /cost を3回確認せよ(始め・中頃・終わり)。
達成条件: 会話が進むにつれてトークン数が増加することを確認できること
