Strategic Compact 是一个面向长会话的开发辅助技能,核心用途是在工作流的逻辑节点提醒你手动执行 /compact,而不是依赖任意触发的自动压缩。
适用场景:长时间运行并接近上下文上限(200K+ token);多阶段任务(研究→规划→实现→测试);同一会话切换不相关任务;完成里程碑后开始新工作;响应变慢或连贯性下降(上下文压力)。
工作机制:suggest-compact.js 脚本运行在 PreToolUse(Edit/Write)上,统计会话中的工具调用次数,在可配置阈值(默认 50 次)时给出建议,之后每 25 次调用提醒一次。
钩子设置:在 ~/.claude/settings.json 中添加 PreToolUse 钩子,matcher 为 Edit 和 Write,命令为 node ~/.claude/skills/strategic-compact/suggest-compact.js。配置项:环境变量 COMPACT_THRESHOLD 控制首次建议前的工具调用数(默认 50)。
压缩决策指南:研究→规划可压缩(研究上下文庞大,规划是提炼输出);规划→实现可压缩(计划已入 TodoWrite 或文件);实现→测试视情况而定;调试→下一功能可压缩;实现中途不建议压缩;失败方案后可压缩以清除死胡同推理。
压缩后保留:CLAUDE.md 指令、TodoWrite 任务列表、记忆文件(~/.claude/memory/)、Git 状态、磁盘文件;丢失:中间推理与分析、之前读取的文件内容、多步对话上下文、工具调用历史与计数、口头表达的细微用户偏好。
最佳实践:规划定稿后压缩;调试后压缩;不要在实现中途压缩;阅读建议后由你决定;压缩前将重要上下文写入文件或记忆;使用带摘要的 /compact,例如 /compact Focus on implementing auth middleware next。
还包含 token 优化思路:触发表懒加载(按关键词映射技能路径,触发时才加载)、上下文组成意识(CLAUDE.md、已加载技能、对话历史、工具结果)、重复指令检测,以及相关工具 token-optimizer MCP、context-mode。限制与收费等未在资料中说明。