/recover — Context Recovery After Compaction
Purpose:
Help you get back up to speed after Claude Code context compaction. Automatically detects in-progress work (RPI runs, evolve cycles), loads relevant knowledge, and summarizes what you were doing and what's next.
YOU MUST EXECUTE THIS WORKFLOW. Do not just describe it.
CLI dependencies:
gt, ao, bd — all optional. Shows what's available, skips what isn't.
Quick Start
/recover
Full recovery dashboard
/recover
--json
Machine-readable JSON output
Execution Steps
Step 1: Detect In-Progress Sessions (Parallel)
Run ALL of the following in parallel bash calls:
Call 1 — RPI Phased State:
if
[
-f
.agents/rpi/phased-state.json
]
;
then
echo
"=== RPI_STATE ==="
cat
.agents/rpi/phased-state.json
else
echo
"RPI_STATE=NONE"
fi
Call 2 — Evolve Cycle History:
if
[
-f
.agents/evolve/cycle-history.jsonl
]
;
then
echo
"=== EVOLVE_STATE ==="
tail
-3
.agents/evolve/cycle-history.jsonl
else
echo
"EVOLVE_STATE=NONE"
fi
Call 3 — Git Recent Changes:
echo
"=== GIT_STATUS ==="
git
status
--short
echo
"=== GIT_LOG ==="
git
log
--oneline
-5
echo
"=== GIT_BRANCH ==="
git
branch --show-current
Call 4 — Work Queue State:
if
command
-v
bd
&>
/dev/null
;
then
echo
"=== IN_PROGRESS ==="
bd list
--status
in_progress
2
if
command
-v
gt
&>
/dev/null
;
then
echo
"=== MESSAGES ==="
gt mail inbox
2
/dev/null
|
head
-3
else
echo
"GT_UNAVAILABLE"
fi
Step 2: Load Context from Knowledge Base
If RPI state detected, run:
if
command
-v
ao
&>
/dev/null
;
then
ao lookup
--query
"rpi recovery context"
--limit
5
2
/dev/null
||
true
fi
Step 3: Parse and Summarize Session State
Extract from collected data:
RPI Detection:
If
.agents/rpi/phased-state.json
exists:
Extract
goal
,
epic_id
,
phase
,
cycle
,
started_at
Map phase number to phase name (1=research, 2=plan, 3=implement, 4=validate)
Show elapsed time since started_at
Evolve Detection:
If
.agents/evolve/cycle-history.jsonl
exists:
Read last entry for most recent cycle
Extract
goals_fixed
,
result
,
timestamp
Show latest cycle summary
Recent Work:
From git log:
Last 3 commits (extracted in Call 3)
Uncommitted changes count
Pending Work:
From beads:
In-progress issues (up to 3)
Ready issues count
Knowledge State:
Total learnings and patterns available
Unread messages count if gt available
Step 4: Render Recovery Dashboard
Assemble gathered data into this format:
══════════════════════════════════════════════════════════════
Context Recovery Dashboard
══════════════════════════════════════════════════════════════
IN-PROGRESS RPI RUN
Epic:
Goal:
Phase:
Cycle:
Started: