/context Names What Eats The Window
When the agent 'gets dumber toward evening', the window is full — /context shows exactly what by: tools, skills, messages, briefing. Then choose deliberately: /compact WITH instructions on what to preserve (it's an expensive operation — the agent re-reads everything), or the free /clear if the task is done.
Why it works
'The agent got dumber toward evening' is almost always a full context window, and /context replaces vibes with a map: exactly what's occupying the space — tools, briefing, messages, skills. Then you choose surgically: /compact WITH instructions on what must survive (it's an expensive operation — the agent re-reads everything to summarize it), or the free /clear if the task is done anyway.
How to do it
- Answers degrading? Type /context before blaming the model.
- Read the breakdown: which slice is fat — messages? connector tools? the briefing?claude code
/context messages ████████████░░ 61% mcp tools ███░░░░░░░░░░░ 14% memory file ██░░░░░░░░░░░░ 9% skills █░░░░░░░░░░░░░ 5%
The map, not the vibe: messages are the usual suspect. - Task finished anyway? /clear. Free, instant, and the usual right answer.
- Mid-task and must continue? /compact with explicit keeps: 'keep the changed-file list and my requirements.'
- Chronic tool bloat? Disconnect unused connectors — they occupy every session.
- Make it standing policy in CLAUDE.md: 'when compacting, always preserve [your list].'
Copy this
/context
What to watch for
- Riding the window to 100% hands control to auto-compaction, which guesses at what mattered — and its guesses drop exactly the requirement you stated once, quietly.
- Compacting every hour 'to be safe' is expensive theater: compaction itself reads the whole conversation. Clear at boundaries; compact only to continue.
Sources