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 - トークン最適化セクション
  • メモリ永続化フック - コンパクションを生き残る状態用