oimiragieo/agent-studio

context-degradation

Token-range severity zones (Green/Yellow/Orange/Red/Critical) with detection checklist, early warning indicators, and corrective routing actions for context window degradation

First seen Feb 25, 2026

Installation

$ npx skills add oimiragieo/agent-studio --skill context-degradation

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from oimiragieo/agent-studio · top by installs.

npx skills add oimiragieo/agent-studio

Browse all from oimiragieo/agent-studio

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 40
Default branch main
Open issues 501
Status Active

Skill metadata

Parsed from SKILL.md frontmatter.

Version1.2.0
Declared agents claude-code

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 9,111 B
  • docs SUMMARY.md 202 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 31 installs

SKILL.md

Context Degradation Monitor

Detects context window degradation and prescribes corrective actions before accuracy drops.

Severity Zones

Thresholds are expressed as a percentage of the context window budget. For a 200K window, Claude Code's auto-compact fires at ~187K (~93.5%, i.e., contextWindow - 13K).

Zone Usage % ~Tokens (200K) Status Action
Green < 65% < 130K Healthy Normal operation
Yellow 65–80% 130K–160K Caution Begin selective compression
Orange/Red 80–90% 160K–180K Warning Compress aggressively; summarize completed phases; spawn fresh subagent if needed
Critical 90–93% 180K–186K Severe Halt complex reasoning; compress immediately; do not attempt multi-step tasks
Auto-compact > 93% > 186K Imminent Claude Code auto-compact will fire; initiate post-compact recovery (see below)

Reference: Claude Code constant AUTOCOMPACTBUFFERTOKENS = 13,000. Auto-compact fires at contextWindow - 13K, so for a 200K window that is 187K (93.5%). "Lost in the middle" effect: middle tokens have 20–40% lower recall past ~100K.

Early Warning Indicators

Symptoms that context degradation is affecting output quality (regardless of token count):

  1. Repeated tool calls — Agent re-reads files already read in same session
  2. Contradictory reasoning — Later steps contradict earlier decisions
  3. Missing prior context — Agent "forgets" task scope or constraints stated at session start
  4. Over-explanation — Agent re-explains concepts already established
  5. Stale references — Agent references file paths or task IDs that were resolved earlier

If 2+ indicators are present, treat as one zone higher than token count suggests.

Corrective Routing by Zone

Yellow (65–80%):

  • Invoke Skill({ skill: 'context-compressor' }) at the current phase boundary
  • Remove completed phase content from active context
  • Keep: current task spec, key decisions, in-progress file list

Orange/Red (80–90%):

  • Invoke Skill({ skill: 'context-compressor' }) — aggressive summarization
  • Write phase summary to .claude/context/tmp/phase-summary-{date}.md
  • Prune: all resolved task details, intermediate research, superseded plans
  • Spawn fresh subagent if remaining work is complex

Critical (90–93%):

  • Do NOT continue complex multi-step tasks in current agent
  • Spawn a fresh subagent with only the compressed summary as context
  • Current agent: write handoff doc → call TaskUpdate(completed) with handoff path in metadata

Auto-compact (>93%):

  • Halt immediately
  • Write emergency summary: what was done, what remains, key decisions
  • Route to session-handoff skill
  • Invoke Skill({ skill: 'session-handoff' }) before context window forces truncation
  • See Post-Compact Recovery section below for steps after auto-compact fires

Detection Checklist (Run at Each Phase Boundary)

[ ] Usage < 65%?  → Green, no action
[ ] Usage 65–80%? → Yellow, begin compression
[ ] Usage 80–90%? → Orange/Red, compress aggressively
[ ] Usage 90–93%? → Critical, spawn fresh agent
[ ] Usage > 93%?  → Auto-compact imminent; initiate post-compact recovery
[ ] 2+ early warning indicators? → Upgrade one severity zone
[ ] Compression reminder file exists? → Invoke context-compressor immediately

Post-Compact Recovery

When Claude Code's auto-compact fires (or a microcompact is detected), the context has been silently truncated. Follow these steps to restore working state:

  1. Re-read active files — Read all files from the pre-compact snapshot's activeFiles list (stored in .claude/context/runtime/pre-compact-snapshot.json). This restores the in-memory view of code you were editing.
  2. Verify task state — Read .claude/context/runtime/edit-counter.json and current task files to confirm what was completed before compaction and what remains.
  3. Check for microcompact indicators — Look for a microcompact-detected event in the flight recorder (.claude/context/runtime/flight-recorder.jsonl). If present, a silent compaction occurred without a PreCompact hook event; treat your current context as potentially incomplete.
  4. Reference the pre-compact snapshot — Load .claude/context/runtime/pre-compact-snapshot.json to recover originalIntent, editCount, correctionCount, and the list of activeFiles written just before compaction.
  5. Re-invoke your current skill — If you were mid-skill when compaction fired, invoke the skill again so its procedures are in context before continuing work.

These steps ensure that after a compaction event (auto or silent), you resume with full knowledge of where you left off.

Integration

  • Pairs with: context-compressor, context-compressor, session-handoff
  • Called by: planner (at plan start), developer (after each phase), router (before large spawns)
  • Trigger: Check at every phase boundary, not just when problems appear

Iron Laws

  1. ALWAYS check token count at every phase boundary — not just when problems appear or after completing a large task.
  2. NEVER continue complex multi-step tasks past 90% usage (Critical zone) in the same agent context — spawn a fresh subagent with a compressed handoff instead.
  3. ALWAYS treat 2+ early warning indicators as one severity zone higher than the raw usage percentage suggests.
  4. ALWAYS invoke context-compressor at Yellow zone (65–80%) before context bloat becomes severe — prevention is cheaper than recovery.
  5. NEVER claim a task complete without writing a context summary when operating in Critical or Auto-compact zone — if it's not written down, the next agent won't know it happened.

Anti-Patterns

Anti-Pattern Why It Fails Correct Approach
Waiting until output quality degrades before checking context By the time quality drops, the context is already in Red/Critical zone Run detection checklist at every phase boundary proactively
Continuing multi-step tasks past 90% usage (Critical zone) "Lost in the middle" effect causes 20–40% recall drop; decisions made early are forgotten Spawn fresh subagent at Critical zone (90%) with compressed context
Ignoring early warning indicators because token count looks fine Indicators are more reliable than raw token counts; a 30K session with 3 indicators is already Yellow Treat 2+ indicators as one zone higher regardless of token count
Spawning a subagent without a written handoff document Subagent starts from scratch, duplicating work or missing constraints Always write phase summary to .claude/context/tmp/ before spawning
Compressing context by deleting tool call results without summarizing Compression without summarization loses critical findings from earlier phases Summarize completed phase outputs before pruning raw tool results

Memory Protocol (MANDATORY)

Before starting: Read .claude/context/memory/learnings.md

After completing:

  • New pattern -> .claude/context/memory/learnings.md
  • Issue found -> .claude/context/memory/issues.md
  • Decision made -> .claude/context/memory/decisions.md

ASSUME INTERRUPTION: If it's not in memory, it didn't happen.