Skip to content

原文(日本語に翻訳)

サブエージェントを多用したセッションを再開する際のメモリ不足クラッシュを修正しました

原文(英語)

Fixed out-of-memory crashes when resuming sessions with heavy subagent usage

概要

Claude Code v2.1.16では、サブエージェント(Task tool)を多用したセッションを再開する際に発生していたメモリ不足によるクラッシュが修正されました。この問題は、大規模なプロジェクトや長時間のセッションでサブエージェントを頻繁に使用しているユーザーに影響を与えていました。この修正により、セッションの安定性が向上し、より大規模で複雑な作業を安心して継続できるようになりました。

基本的な使い方

修正後は、特別な設定変更なしに、サブエージェントを多用したセッションを安全に再開できます。

セッションの再開

通常通り、セッションを再開するだけです:

bash
# 前回のセッションを続行
claude --continue

# 特定のセッションを再開
claude --resume <session-name>

実践例

大規模リファクタリング作業の継続

複数のサブエージェントを使用した長時間の作業を、翌日も安全に再開:

# 前日の作業
「プロジェクト全体のTypeScript移行を実施して」

→ 複数のサブエージェントが並行してファイルを処理
→ セッションを保存して終了

# 翌日
claude --continue

→ v2.1.16以前: メモリ不足でクラッシュ
→ v2.1.16以降: 正常に再開可能

並列タスク処理の再開

Taskツールを使った並列処理セッションの再開:

ユーザー: 「100個のファイルを並列で処理して」

Claude: Taskツールで複数のサブエージェントを起動
  - タスク1: ファイル1-20の処理
  - タスク2: ファイル21-40の処理
  - タスク3: ファイル41-60の処理
  ...

# セッション中断後の再開
claude --resume

→ 修正前: メモリ不足エラー
→ 修正後: スムーズに再開

長期プロジェクトの段階的実施

複数日にわたるプロジェクトを、セッションを分けて実施:

bash
# 1日目: 設計フェーズ
claude
「システム全体の設計を複数のサブエージェントで検討して」

# 2日目: 実装フェーズの開始
claude --continue
「昨日の設計を基に実装を開始して」

# 3日目: テストフェーズ
claude --continue
「実装したコードのテストを作成して」

注意点

  • セッション履歴のサイズ: 非常に大規模なセッション(数千のメッセージを含む)では、依然としてメモリ使用量が高くなる可能性があります。必要に応じて /compact コマンドでセッションを圧縮してください
  • 並行サブエージェント数: 同時に実行するサブエージェントの数が多いほど、メモリ使用量は増加します。パフォーマンスが低下する場合は、並行数を減らすことを検討してください
  • 定期的な圧縮: 長期的なセッションでは、定期的に /compact を実行してメモリ使用量を最適化することをお勧めします

セッション圧縮の例

bash
# セッション内で圧縮コマンドを実行
/compact

# 圧縮後、メモリ使用量が削減され、再開時のパフォーマンスが向上

関連情報