
Strategic Compact
FreeOptimize context management during complex workflows.
Free · Opens the source repo
What Strategic Compact does
The Strategic Compact skill is designed to enhance workflow efficiency by suggesting manual context compaction at critical points in your tasks. Unlike automatic compaction, which can occur at arbitrary times and disrupt your workflow, this skill prompts you to compact context at logical transitions, ensuring that important information is preserved. This is particularly useful in multi-phase tasks such as research, planning, implementation, and testing, where context can become cluttered and lead to confusion or loss of coherence.
When you are working on long sessions that approach context limits or switching between unrelated tasks, the Strategic Compact skill can help maintain clarity and focus. It operates by monitoring both context size and tool-call counts, suggesting a compaction when certain thresholds are reached. For instance, it will remind you to compact after reaching 160,000 tokens in a 200,000 token window, or after a configurable number of tool calls, allowing you to manage your context proactively.
The skill is particularly beneficial in scenarios where maintaining context is crucial, such as after completing a significant milestone or before starting a new phase of work. By compacting context strategically, you can free up memory for new tasks while retaining essential details from previous phases. This approach minimizes the risk of losing valuable context and enhances your productivity by allowing you to focus on the task at hand without unnecessary interruptions.
Overall, the Strategic Compact skill is ideal for developers and designers who frequently navigate complex workflows and need a reliable way to manage context effectively. It provides a structured approach to context compaction that aligns with your workflow, ensuring you remain efficient and organized throughout your projects.
When to use it
Use this skill during long sessions or when transitioning between different phases of a project to maintain context.
When not to use it
Avoid using this skill if you are working on simple tasks that do not approach context limits, as the overhead may not be necessary.
What you can build with it
Long Research Sessions
During extensive research phases, use this skill to compact context after gathering information, ensuring clarity when transitioning to planning.
Multi-Phase Project Management
In projects with distinct phases, like planning and implementation, compact context at the end of each phase to maintain focus and organization.
Switching Tasks
When changing between unrelated tasks in the same session, compact context to clear previous information and avoid confusion.
How to install Strategic Compact
View source1. Install with the skills CLI
npx skills add affaan-m/ecc/strategic-compact --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by affaan-mStrategic Compact Skill
Suggests manual /compact at strategic points in your workflow rather than relying on arbitrary auto-compaction.
When to Activate
- Running long sessions that approach context limits (200K+ tokens)
- Working on multi-phase tasks (research → plan → implement → test)
- Switching between unrelated tasks within the same session
- After completing a major milestone and starting new work
- When responses slow down or become less coherent (context pressure)
Why Strategic Compaction?
Auto-compaction triggers at arbitrary points:
- Often mid-task, losing important context
- No awareness of logical task boundaries
- Can interrupt complex multi-step operations
Strategic compaction at logical boundaries:
- After exploration, before execution — Compact research context, keep implementation plan
- After completing a milestone — Fresh start for next phase
- Before major context shifts — Clear exploration context before different task
How It Works
The suggest-compact.js script runs on PreToolUse (Edit/Write) and combines two signals:
- Context size (primary) — Reads the latest
usagerecord from the session transcript (transcript_pathin the hook payload) and sumsinput_tokens + cache_read_input_tokens + cache_creation_input_tokens(the true context size of the turn). Suggests/compactat a window-scaled threshold — 160k tokens on a 200k window, 250k on a 1M window (detected from a[1m]model marker, or inferred when observed tokens already exceed 200k) — and re-reminds after every additional 60k tokens of context growth - Tool-call count (secondary) — Counts tool invocations in session; suggests at a configurable threshold (default: 50 calls), then every 25 calls after
Hook Setup
Add to your ~/.claude/settings.json:
{
"hooks": {
"PreToolUse": [
{
"matcher": "Edit",
"hooks": [{ "type": "command", "command": "node ~/.claude/skills/strategic-compact/suggest-compact.js" }]
},
{
"matcher": "Write",
"hooks": [{ "type": "command", "command": "node ~/.claude/skills/strategic-compact/suggest-compact.js" }]
}
]
}
}
Configuration
Environment variables:
COMPACT_THRESHOLD— Tool calls before first suggestion (default: 50)COMPACT_CONTEXT_THRESHOLD— Context tokens before the context-size suggestion (default: 160000 on a 200k window, 250000 on a 1M window;0disables the context signal)COMPACT_CONTEXT_INTERVAL— Additional context tokens before the suggestion repeats (default: 60000)ECC_CONTEXT_WINDOW_TOKENS— Explicit context-window size, in tokens, overriding auto-detection. Set this for large-window models whose reported id lacks a[1m]marker (e.g. 400k Opus 4.x, or a new 1M-window model family) so the threshold scales to the real window instead of defaulting to 200k and overstating context usage.CLAUDE_CODE_AUTO_COMPACT_WINDOW— Claude Code's native window-size override, in tokens; honored as a fallback whenECC_CONTEXT_WINDOW_TOKENSis unset.
The context window is otherwise auto-detected from a
[1m]model marker or inferred when observed tokens already exceed 200k. On a large-window model that carries neither signal, set one of the overrides above so the/compactsuggestion fires at the right point.
Compaction Decision Guide
Use this table to decide when to compact:
| Phase Transition | Compact? | Why |
|---|---|---|
| Research → Planning | Yes | Research context is bulky; plan is the distilled output |
| Planning → Implementation | Yes | Plan is in TodoWrite or a file; free up context for code |
| Implementation → Testing | Maybe | Keep if tests reference recent code; compact if switching focus |
| Debugging → Next feature | Yes | Debug traces pollute context for unrelated work |
| Mid-implementation | No | Losing variable names, file paths, and partial state is costly |
| After a failed approach | Yes | Clear the dead-end reasoning before trying a new approach |
What Survives Compaction
Understanding what persists helps you compact with confidence:
| Persists | Lost |
|---|---|
| CLAUDE.md instructions | Intermediate reasoning and analysis |
| TodoWrite task list | File contents you previously read |
Memory files (~/.claude/memory/) | Multi-step conversation context |
| Git state (commits, branches) | Tool call history and counts |
| Files on disk | Nuanced user preferences stated verbally |
Best Practices
- Compact after planning — Once plan is finalized in TodoWrite, compact to start fresh
- Compact after debugging — Clear error-resolution context before continuing
- Don't compact mid-implementation — Preserve context for related changes
- Read the suggestion — The hook tells you when, you decide if
- Write before compacting — Save important context to files or memory before compacting
- Use
/compactwith a summary — Add a custom message:/compact Focus on implementing auth middleware next
Related
- The Longform Guide — Token optimization section
- Memory persistence hooks — For state that survives compaction
continuous-learningskill — Extracts patterns before session ends
Frequently asked questions about Strategic Compact
Similar skills
Daily Focus Board
A motivating tool for daily task management and focus.
Paperclip
Streamline task coordination with Paperclip API.
Context Agent
Enhance session continuity with automatic context management.
Garden Inbox
Efficiently clean up your Paperclip inbox with ease.
Daily Sales Briefing
Start your day with a prioritized sales briefing.
Update Command
Keep your tasks and memory in sync effortlessly.
