mcpField
S
strategic-compact

strategic-compact

github.com/worldflowaiAgent 工作流5.5k172 次安装40 周前更新
代码仓库

关于 strategic-compact

strategic-compact 是用于 Claude 工作流的技能,建议在任务的逻辑节点手动运行 `/compact`。钩子统计工具调用并提示压缩时机,是否执行由使用者决定。

主要功能

  1. 01统计工具调用次数
  2. 02可配置提示阈值
  3. 03达到阈值后定期提醒
  4. 04针对 Edit 和 Write 的 PreToolUse 钩子

适用场景

  1. 01探索结束、执行开始前压缩上下文
  2. 02里程碑完成后开启新阶段
  3. 03任务切换前清理上下文
  4. 04避免在相关实现过程中压缩

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/worldflowai/everything-claude-code --skill strategic-compact

安装后在 Claude Code 中输入/strategic-compact确认已加载。

附带文件suggest-compact.sh

详细介绍

战略性压缩技能

建议在工作流的战略性节点手动运行 /compact,而不是依赖任意时机触发的自动压缩。

为什么要进行战略性压缩?

自动压缩会在任意时机触发:

  • 经常在任务进行到一半时触发,导致重要上下文丢失
  • 无法识别逻辑上的任务边界
  • 可能会中断复杂的多步骤操作

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

  • 探索之后、执行之前 - 压缩研究上下文,保留实施计划
  • 完成一个里程碑之后 - 为下一阶段开启全新上下文
  • 发生重大上下文切换之前 - 清除探索上下文,再开始不同的任务

工作原理

suggest-compact.sh 脚本在 PreToolUse(Edit/Write)时运行,并且:

  1. 跟踪工具调用 - 统计会话中的工具调用次数
  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 会告诉你何时压缩,由你决定是否压缩

相关内容

  • 长篇指南 - 令牌优化章节
  • Memory persistence hooks - 用于在压缩后保留状态

评论

支持 Markdown