AgentSkillsCN

strategic-compact

建议按逻辑分段进行手动上下文压缩,而非在任意时刻自动压缩,而是通过任务阶段来持续保留上下文信息。

SKILL.md
--- frontmatter
name: strategic-compact
description: 論理的な区切りで手動コンテキスト圧縮を提案する。任意のタイミングでの自動圧縮ではなく、タスクフェーズを通じてコンテキストを保持する。

戦略的コンパクトスキル

任意の自動圧縮に頼るのではなく、ワークフローの戦略的なポイントで手動 /compact を提案する。

なぜ戦略的な圧縮が必要か?

自動圧縮は任意のタイミングで発火する:

  • タスクの途中で発生し、重要なコンテキストを失うことが多い
  • 論理的なタスク境界を認識しない
  • 複雑なマルチステップ操作を中断する可能性がある

論理的な境界での戦略的圧縮:

  • 調査後、実行前 - リサーチコンテキストを圧縮し、実装計画を保持
  • マイルストーン完了後 - 次のフェーズのためにリフレッシュ
  • 大きなコンテキスト切り替え前 - 別のタスクの前に調査コンテキストをクリア

仕組み

suggest-compact.sh スクリプトはPreToolUse(Edit/Write)で実行され:

  1. ツールコール数を追跡 - セッション内のツール呼び出し回数をカウント
  2. 閾値検出 - 設定可能な閾値(デフォルト: 50回)で提案
  3. 定期的なリマインダー - 閾値後、25回ごとにリマインド

フック設定

~/.claude/settings.json に追加:

json
{
  "hooks": {
    "PreToolUse": [{
      "matcher": "tool == \"Edit\" || tool == \"Write\"",
      "hooks": [{
        "type": "command",
        "command": "~/.claude/skills/strategic-compact/suggest-compact.sh"
      }]
    }]
  }
}

設定

環境変数:

  • COMPACT_THRESHOLD - 最初の提案までのツールコール数(デフォルト: 50)

ベストプラクティス

  1. 計画後に圧縮 - 計画が確定したら、圧縮してリフレッシュ
  2. デバッグ後に圧縮 - エラー解決コンテキストをクリアしてから続行
  3. 実装中は圧縮しない - 関連する変更のコンテキストを保持
  4. 提案を読む - フックはいつを教えてくれるが、するかどうかはあなたが決める

関連

  • The Longform Guide - トークン最適化セクション
  • メモリ永続化フック - 圧縮後も残る状態のため