Everything-claude-code-zh strategic-compact

建议在逻辑间隔处进行手动压缩(Manual Compaction),以在整个任务阶段保持上下文(Context),而非随意的自动压缩。

install
source · Clone the upstream repo
git clone https://github.com/xu-xiang/everything-claude-code-zh
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/xu-xiang/everything-claude-code-zh "$T" && mkdir -p ~/.claude/skills && cp -r "$T/docs/ja-JP/skills/strategic-compact" ~/.claude/skills/xu-xiang-everything-claude-code-zh-strategic-compact-69f5a9 && rm -rf "$T"
manifest: docs/ja-JP/skills/strategic-compact/SKILL.md
source content

策略性压缩(Strategic Compact)技能

建议在工作流的战略点手动执行

/compact
命令,而不是依赖随意的自动压缩。

为什么需要策略性压缩?

自动压缩会在任意点触发:

  • 通常发生在任务中途,导致丢失关键上下文
  • 无法识别任务的逻辑边界
  • 可能会中断复杂的跨步骤操作

在逻辑边界处进行策略性压缩:

  • 探索后、执行前 - 压缩研究上下文,保留实现计划
  • 里程碑完成后 - 为下一阶段开启全新开始
  • 重大上下文切换前 - 在处理不同任务前清理探索上下文

工作原理

suggest-compact.sh
脚本在工具调用前(PreToolUse,针对 Edit/Write)执行:

  1. 追踪工具调用 - 统计会话(Session)内的工具调用次数
  2. 阈值检测 - 达到可配置阈值时给出建议(默认:50 次)
  3. 定期提醒 - 超过阈值后每 25 次调用提醒一次

钩子(Hook)配置

添加到

~/.claude/settings.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. 阅读建议 - 钩子(Hook)会提示何时压缩,但是否执行由你决定

相关资源

  • The Longform Guide - 令牌(Token)优化章节
  • 内存持久化钩子 - 用于在压缩后仍需保留的状态