Skip to content

原文(日本語に翻訳)

セッションのクリーンアップで、サブエージェントのトランスクリプトを含むセッションディレクトリ全体が削除されない問題を修正しました。

原文(英語)

Fixed session cleanup not removing the full session directory including subagent transcripts.

概要

Claude Code v2.1.110では、セッションのクリーンアップ処理(/clearコマンドやセッション終了時)において、サブエージェントが生成したトランスクリプトファイルを含むサブディレクトリが削除されずにディスクに残り続ける問題が修正されました。特にサブエージェント機能を頻繁に使用しているユーザーにとって、ディスクスペースの無駄な消費につながっていました。今回の修正によりセッション終了時に関連する全ファイルが適切に削除されます。

基本的な使い方

bash
# セッションを終了してクリーンアップ
/clear

# または明示的にセッションを削除
claude session delete <session-id>

# 修正前: サブエージェントのトランスクリプトが残存
# 修正後: セッションディレクトリ全体(サブエージェントトランスクリプト含む)が削除される

実践例

ユースケース1: セッションディスクスペースの確認

bash
# セッションファイルが保存されるディレクトリを確認(macOS)
ls -la ~/.claude/sessions/

// 修正前: サブエージェントトランスクリプトが残存
// ~/.claude/sessions/
// ├── session-abc123/
//   ├── transcript.jsonl 残存(問題)
//   └── subagents/
//       ├── agent-1/
//   └── transcript.jsonl 残存(問題)
//       └── agent-2/
//           └── transcript.jsonl 残存(問題)

// 修正後: ディレクトリ全体が削除される
// ~/.claude/sessions/ セッション関連ファイルがすべてクリーン

ユースケース2: 定期的なクリーンアップ

bash
# 古いセッションを一括削除
claude session cleanup --older-than 7d

// 修正後: 7日以上前のセッションとそのサブエージェントトランスクリプトが完全に削除される
削除中のセッション:
- session-abc123 (7日前) → 削除完了(サブエージェントデータ含む)
- session-def456 (10日前) → 削除完了(サブエージェントデータ含む)
合計: 85MB のディスクスペースを解放しました

ユースケース3: サブエージェントを使用する場合のディスク管理

bash
# サブエージェントを多用するワークフロー
claude "大規模なコードベースを複数のサブエージェントで並列分析して"

# セッション終了後のクリーンアップ確認
claude session delete <session-id>
ls ~/.claude/sessions/<session-id>/  # ディレクトリが存在しないことを確認

ユースケース4: ディスクスペースの定期モニタリング

bash
# セッションデータのディスク使用量を確認
du -sh ~/.claude/sessions/

# セッション一覧と各セッションのサイズを確認
du -sh ~/.claude/sessions/*/ | sort -rh | head -10

# 古いセッションのクリーンアップ
claude session cleanup

ユースケース5: 自動クリーンアップの設定

json
// .claude/settings.json でセッション保持期間を設定
{
  "session": {
    "autoCleanup": true,
    "retentionDays": 30,
    "cleanupIncludeSubagents": true
  }
}

注意点

  • 影響を受けていたユーザー — サブエージェント機能を使用しているユーザーに影響がありました。通常のセッション(サブエージェントなし)は正常にクリーンアップされていました。
  • 蓄積したファイルの削除 — v2.1.110以前のバージョンで蓄積したサブエージェントトランスクリプトは手動で削除する必要があります。~/.claude/sessions/ディレクトリを確認して不要なファイルを削除してください。
  • ディスクスペース — 大量のサブエージェントセッションを使用している場合、未削除のファイルがGBオーダーになっている可能性があります。
  • トランスクリプトの内容 — 削除されるトランスクリプトには会話履歴が含まれます。必要な情報は事前にバックアップしてください。

関連情報