Stuck Recovery Skill

SkillDev tools

Detect stuck loops and advise recovery strategies

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Stuck Recovery Skill skill

What this skill tells your AI

The instructions your AI receives, as published by baekenough/oh-my-customcode in .claude/skills/stuck-recovery/SKILL.md and read by ahel’s review.

Detects when tasks are stuck in repetitive failure loops and advises recovery strategies. Advisory-only — the orchestrator decides the action (R010).

Detection Signals

SignalPatternThreshold
Repeated errorSame error message appears 3+ times3 occurrences
Edit loopSame file edited 3+ times in sequence3 edits
Agent retrySame agent_type fails 3+ times consecutively3 failures
Tool loopSame tool called 5+ times with similar input5 calls

Recovery Strategies

StrategyWhenAction
Fresh contextRepeated same errorSuggest rephrasing the task
Model escalationAgent retry loopTrigger model-escalation advisory
Alternative approachEdit loop detectedSuggest different file/method
Human interventionAll automated strategies exhaustedAsk user for guidance
Context resetLong-running task (>30min) or context >80%Structured handoff: save state to memory, create fresh session with task summary

Architecture

PostToolUse (Edit, Write, Bash, Task) → stuck-detector.sh
  Tracks: tool_name, file_path, error_hash, agent_type
  Storage: /tmp/.claude-tool-history-$PPID (JSON lines, max 100)
  Detection: sliding window pattern matching
  Output: stderr advisory when loop detected

Advisory Format

--- [Stuck Detection] Loop detected ---
  Signal: {signal_type}
  Pattern: {description}
  Occurrences: {count}/{threshold}
  💡 Recovery: {suggested_strategy}
---

Integration

  • Complements model-escalation skill (escalation is one recovery strategy)
  • Respects R010 (advisory only, orchestrator decides)
  • Uses same PPID-scoped temp file pattern as other hooks
  • Works with task-outcome-recorder.sh data when available

Context Reset Strategy

For long-running tasks (>30 minutes) or when context usage exceeds 80%, context reset is preferred over compaction:

  1. Save state: Write current progress, decisions, and open items to native auto-memory
  2. Create handoff: Generate structured task summary with:
    • Completed steps and their outcomes
    • Current step and its state
    • Remaining steps
    • Key decisions made and their rationale
  3. Reset: Start fresh session with handoff document as input

Context reset preserves decision quality by avoiding the information loss inherent in compaction. Based on Anthropic's finding that models experience "context anxiety" — prematurely concluding tasks due to perceived token limits.

When to Use

ConditionStrategy
Context < 60%Continue normally
Context 60-80%Consider /compact
Context > 80% OR duration > 30minContext reset recommended
Repeated compaction in same sessionContext reset required

Signals

GitHub stars
34
Forks
6
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
stuck-recovery
Source
github.com/baekenough/oh-my-customcode