Claude AI セッションの圧縮問題と回避策

圧縮処理の仕組み
Claudeセッションは~/.claude/projects/{encoded-cwd}/sessions/{id}.jsonlにJSONLファイルとして保存されます。各会話ターンはJSONブロックです。圧縮がトリガーされると、元のブロックはファイルに残りますが、圧縮された要約を含む新しいブロックが追加されます。圧縮後、モデルは完全な会話履歴ではなく、この要約から作業を行います。
テスト結果
100万トークン増加前の90%コンテキスト埋め込み状態のコーディングプロジェクトで、ユーザーは単純な想起、6段階の依存チェーン、エンティティの曖昧性解消、否定連鎖、不在検出、矛盾検出を含む10の質問をテストしました。
- 圧縮前: Opus 4.6が418Kトークンに散らばる事実を見つけ、約9.75/10の精度
- 圧縮後(デフォルト): 3,461トークン(121倍圧縮)で約5/10の精度。同じセッション、同じ質問で幻覚的な誤答が発生。
- 圧縮後(手動Opus): 6,080トークン(69倍圧縮)で約9.75/10の精度。カスタム圧縮プロンプトを使用したOpusにより、重要な情報が保持されました。
差異の理由
Anthropicのドキュメントによると、APIはデフォルトで同じモデルを圧縮に使用します。ユーザーは中程度の計算リソースでOpus 4.6を実行していたため、デフォルトの圧縮もOpusを使用しているはずです。品質の差異は、要約プロンプト、思考/計算予算、またはその両方に問題があることを示唆しています。
回避策
方法1: Opus圧縮 - 自動圧縮をオフにし、Claude Codeインスタンスのトークン数を測定するバックグラウンドプロセスを実装します。カスタムプロンプト(必要に応じてユーザー認可付き)を使用したOpusによる圧縮をトリガーします。
方法2: spaCy NER事前シーディング - サブエージェントをゼロコンテキストで開始する代わりに、spaCy NERを使用してプロジェクトファイルから固有名詞、数字、サービス名、ポート、主要識別子を抽出します。これを軽量なエンティティブリーフィング(数百トークン)として起動時に注入し、物語的な肥大化なしに既存リソースについてエージェントに情報を提供します。
📖 Read the full source: r/ClaudeAI
👀 See Also

TeamHero v2.6.1: Claude AIエージェントを管理するためのオープンソースプラットフォーム
TeamHero v2.6.1は、ローカルファーストのオープンソースプラットフォームで、自動操縢モード、サブタスクのネスト、フロービュー、永続的メモリなどの機能を備えたClaudeエージェントの管理チームを作成します。このツールはNode.js上で動作し、バニラHTML/CSS/JSのダッシュボードを備えており、データベースは必要ありません。

微調整されたQwen3-0.6Bモデルは、構造化された関数呼び出しにおいて120Bの教師モデルを凌駕しています。
Distil Labsは、Qwen3-0.6BモデルをファインチューニングしてIoTスマートホームの関数呼び出しで79.5%の完全一致を達成し、120Bの教師モデルを29ポイント上回るエンドツーエンドのパイプラインを公開しました。このパイプラインは、手動のアノテーションなしで本番環境のトレースから合成トレーニングデータを生成します。

ミエリン:Claudeコード手続き記憶のためのMD抽出・評価ツール
Myelinは、PostToolUseを介してClaude Codeに接続するMCPサーバーで、ツール呼び出しをキャプチャし、成功したセッションから.md手順ファイルを自動的に抽出し、Claudeが既存の手順を段階的にフォローしているかどうかを追跡します。

シグネット:AIコーディングエージェント向けオープンソースメモリーレイヤー、LoCoMoでF1スコア80%を達成
Signetは、LoCoMoベンチマークで標準RAGの41%に対し80%のF1スコアを達成する、AIコーディングエージェント向けのオープンソースメモリシステムです。各セッション後にメモリを抽出し、プロンプト前に適切なコンテキストを注入し、SQLiteを使用してローカルで動作します。