| name | s-resume |
| description | Resume work from a previous session - reconstructs context from state files and recent history |
/s:resume - Session Context Reconstruction
Reconstruct full working context from persistent state files so the user can seamlessly
continue where they left off. This skill reads everything relevant and presents a
structured summary of the project's current position.
Instructions
Step 1: Check for project initialization
Check if .planning/STATE.md exists.
If it does NOT exist:
- Display: "No project state found. Run
/s:new to initialize a project."
- Stop here.
Step 2: Read core state files
Read the following files in order:
.planning/STATE.md - Current position, active phase, decisions, blockers
.planning/ROADMAP.md - Big picture: all phases, overall progress
Extract from STATE.md:
- Current status (initialized, in-progress, blocked, complete)
- Active phase number and name
- Current task in progress
- Any blockers listed
- Most recent decisions
Step 3: Read active phase context
Determine the active phase number from STATE.md. Then read:
.planning/phases/{N}/PLAN.md - What tasks are planned for this phase
.planning/phases/{N}/CONTEXT.md - Phase-specific context and notes
If these files do not exist, note that the phase may not have been fully set up.
Step 4: Read recent knowledge artifacts
Read the 3 most recent files (by filename date prefix) from each directory:
docs/brainstorms/*.md - Recent brainstorm outputs
docs/plans/*.md - Recent implementation plans
docs/solutions/*.md - Recent compound learnings
For each file found, extract the title and first 5-10 lines to get the gist.
If a directory is empty or does not exist, skip it silently.
Step 5: Read git history and working state
Run these commands:
git log --oneline -10 - Last 10 commits for recent activity trail
git diff --stat - What files have uncommitted changes right now
git status --short - Untracked and modified files
Step 6: Check for continue-here file
Read .continue-here.md at the project root if it exists. This file is created by
/s:pause and contains explicit instructions about what was being done and what to
do next.
If it exists, its content takes PRIORITY over inferred context - it is the most
specific record of where work was interrupted.
Step 7: Display context reconstruction summary
Present the reconstructed context in this format:
=== CONTEXT RESTORED ===
Where we left off:
Phase {N}: {phase name}
Task: {active task description}
Status: {status}
What was in progress:
{description from .continue-here.md if available, otherwise inferred from
STATE.md and git diff}
Recent activity:
- {last 3-5 commits, one line each}
- {uncommitted changes summary}
Key decisions (recent):
- {decision 1 from STATE.md decisions table}
- {decision 2}
Knowledge context:
- Last brainstorm: {title and date}
- Last plan: {title and date}
- Last learning: {title and date}
Blockers:
{blockers from STATE.md, or "None"}
What's next:
{next steps from .continue-here.md, or inferred from phase plan}
Step 8: Suggest next action
Based on the reconstructed context, recommend the single most useful next action:
- If .continue-here.md had explicit next steps, suggest those
- If a task was in progress, suggest: "Continue with
/s:build to resume implementation"
- If a phase was just completed, suggest: "Run
/s:review to review phase {N}"
- If blocked, suggest addressing the blocker first
Step 9: Clean up
If .continue-here.md was found and read, delete it now. Its purpose is served -
the context has been reconstructed. Keeping it around would cause stale data on
the next resume.
Run: rm .continue-here.md (only if the file existed)
Important Notes
- This skill is primarily READ operations. The only write is deleting .continue-here.md.
- Do NOT update STATE.md - that is done by action skills like /s:build.
- Be thorough but concise. The user needs to regain context quickly, not read a novel.
- If files are missing, work with what is available. Partial context is better than none.
- Always show the git history section - it is available even without .planning/ files.
- Prioritize .continue-here.md content when it exists; it was written specifically for this moment.