skills/resume/SKILL.md
Use when you need to resume an interrupted workflow from where it left off.
npx skillsauth add seokan-jeong/team-shinchan team-shinchan:resumeInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Resume a paused/interrupted workflow by loading saved state and delegating to the appropriate agent.
If DOC_ID not provided:
Active/Paused workflows:
Scan .shinchan-docs/*/WORKFLOW_STATE.yaml (exclude archived/ subfolder), filter
status: active|paused, display list.
Archived workflows:
Scan .shinchan-docs/archived/*/*/WORKFLOW_STATE.yaml, collect all entries.
Display combined output:
Active/Paused:
1. {DOC_ID} ({status}, {stage})
...
Archived:
A1. {DOC_ID} (expired, {stage}, archived {YYYY-MM})
...
If both lists empty: suggest /team-shinchan:start.
If user selects an archived entry:
.shinchan-docs/archived/{YYYY-MM}/{DOC_ID}/ → .shinchan-docs/{DOC_ID}/status: paused- timestamp: "{ISO now}"
event: unarchived
agent: shinnosuke
unarchived_at: "{ISO now}"
If DOC_ID provided directly:
.shinchan-docs/{DOC_ID}/ first, then .shinchan-docs/archived/*/{DOC_ID}/.shinchan-docs/{DOC_ID}/WORKFLOW_STATE.yaml
status: completed: inform user, suggest /team-shinchan:startstatus: blocked: show blocker reasoncurrent_stage, current_phase, current_ownerCheck if .shinchan-docs/pre-compact-state.json exists (using Read tool).
If file exists and readable: Parse the JSON and prepend the following block to the context header output in Step 4:
[Handoff] Completed: {completed_phases} | Pending: {pending_phases}
Last Decision: {last_decision|none}
Blocking Issues: {blocking_issues|none}
completed_phases: array → join with ,; string → display as-islast_decision: null → display noneblocking_issues: null → display noneIf file does not exist or Read fails: skip silently. Proceed to Step 2 without error.
If JSON parse fails (malformed content): skip silently. Proceed to Step 2 without error.
Check if .shinchan-docs/{DOC_ID}/work-tracker.jsonl exists (using Read tool). If not found, also check .shinchan-docs/work-tracker.jsonl as fallback.
If file exists:
Read the last 32KB of the file (tail approach — do NOT read the full file to avoid memory issues on large JSONL logs). Scan lines in reverse order (last line first) for the first entry matching:
"event": "phase_complete" or "event": "task_complete"If a matching entry is found, parse it and store as {jsonl_checkpoint}.
Prepend the following block to the Step 4 output header (before the separator line):
[Checkpoint] Last: {jsonl_checkpoint.event} | Phase: {jsonl_checkpoint.phase|N/A} | Task: {jsonl_checkpoint.task|N/A} | At: {jsonl_checkpoint.timestamp|unknown}
If file does not exist: skip silently. Proceed to Step 2 without error.
If Read fails or no matching event found: skip silently. Proceed to Step 2 without error.
If JSON parse fails on a line: skip that line, continue scanning backward.
Check if current.ak_gate is present in the loaded WORKFLOW_STATE.yaml.
Do NOT overwrite existing ak_gate values. This step only fills in absent fields.
If ak_gate is entirely absent: write the following default block under current:
ak_gate:
requirements:
status: pending
retry_count: 0
last_rejection_reasons: []
planning:
status: pending
retry_count: 0
last_rejection_reasons: []
If ak_gate is present but missing sub-fields (e.g., requirements exists but planning is absent, or vice versa): add only the missing sub-fields using the same defaults above. Do NOT modify any sub-fields that already exist.
If ak_gate is fully present with both requirements and planning: skip silently. No changes needed.
After any write, proceed to Step 2 without error.
.shinchan-docs/{DOC_ID}/REQUESTS.md (warn if missing).shinchan-docs/{DOC_ID}/PROGRESS.mdcurrent.interview: extract step/collected_count/last_question for Nene handoffAdd resumed event to history, set status: active.
If handoff state was loaded in Step 1.5, prepend the [Handoff] block before the separator:
[Handoff] Completed: 1,2 | Pending: 3
Last Decision: Use regex-only parser for PROGRESS.md
Blocking Issues: none
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▶️ Workflow Resumed: {DOC_ID}
Stage: {current_stage} ({n}/4) | Phase: {current_phase|N/A} | Owner: {current_owner}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
If no handoff state (file absent or parse failed):
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▶️ Workflow Resumed: {DOC_ID}
Stage: {current_stage} ({n}/4) | Phase: {current_phase|N/A} | Owner: {current_owner}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
| Stage | Agent | Model | Context | |-------|-------|-------|---------| | requirements | Nene | Opus | REQUESTS.md + interview state | | planning | Nene | Opus | REQUESTS.md + PROGRESS.md | | execution | Bo/Specialist | Sonnet | REQUESTS.md + PROGRESS.md + phase tasks | | completion | Bo + Action Kamen | Sonnet + Opus | All docs |
Execution routing: frontend -> Aichan, backend -> Buriburi, infra -> Masao, default -> Bo.
Task(subagent_type="team-shinchan:{agent}", model="{model}",
prompt="Resume {DOC_ID}. Stage: {stage}, Phase: {phase}.\n{context}\nContinue from: {last_action}")
| Error | Recovery |
|-------|----------|
| Missing folder | List available workflows |
| Corrupted YAML | Default: execution, owner: bo, phase: 1 |
| Missing REQUESTS.md | Suggest /team-shinchan:start |
development
Deterministic adversarial code review for high-stakes scope — independent per-dimension review, a non-skippable per-finding refutation, a completeness critic, and a schema-validated rubric judge. Opt-in main-loop Workflow tier.
data-ai
Deterministic loop-until-done for high-stakes long-running tasks — a worker/verifier loop the script bounds by iteration cap, token budget, and stagnation, closed by an Action-Kamen gate. Opt-in main-loop Workflow tier.
testing
Deterministic adversarial debate for high-stakes or irreversible decisions — mandatory refutation plus a scored judge panel. Opt-in main-loop Workflow tier.
development
Deterministic competitive code tournament — N builders independently solve one task and return patches, an Action-Kamen judge scores them head-to-head, the winner is picked by score and applied. Opt-in main-loop Workflow tier.