From task-harness
Resumes a cancelled, failed, or blocked task harness session from where it stopped. Use when continuing a previously stopped workflow or retrying after fixing issues. Trigger with "resume task harness", "continue workflow", or "restart harness session".
How this skill is triggered — by the user, by Claude, or both
Slash command
/task-harness:resumeThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Continues a cancelled, failed, or blocked task harness session from its last checkpoint.
Continues a cancelled, failed, or blocked task harness session from its last checkpoint.
The resume skill restores and continues a previously stopped task harness session by:
.claude/task-harness/sessions/Extract session ID and optional --from-task flag:
Arguments: <session-id> [--from-task N]
Examples:
1234567890-12345
1234567890-12345 --from-task 3
Check the session exists and is resumable:
STATE_FILE=".claude/task-harness/sessions/${SESSION_ID}.json"
[[ -f "$STATE_FILE" ]] || echo "ERROR: Session not found"
STATUS=$(jq -r '.status' "$STATE_FILE")
if [[ "$STATUS" != "cancelled" && "$STATUS" != "failed" && "$STATUS" != "blocked" ]]; then
echo "ERROR: Session status '$STATUS' is not resumable"
fi
If --from-task N provided: Use task index N (0-based).
Otherwise: Find first task where status != "complete":
RESUME_INDEX=$(jq '[.tasks[] | .status] | to_entries | map(select(.value != "complete")) | .[0].key' "$STATE_FILE")
Update session for resumption:
jq ".status = \"running\" |
.currentTaskIndex = $RESUME_INDEX |
.tasks[$RESUME_INDEX].status = \"in_progress\" |
del(.completedAt) |
del(.finalMessage)" "$STATE_FILE" > tmp && mv tmp "$STATE_FILE"
Generate dynamic planning prompt including:
Launch ralph-loop with the task prompt:
/ralph-loop "<task-prompt>" --completion-promise "<promise-text>"
Upon successful resume:
Task Harness Resumed
====================
Session: 1234567890-12345
Harness: implement-auth-feature
Previous Status: cancelled
Resuming from: Task 3 - Implement Auth Routes
Progress: 2/5 tasks previously completed
Execution restarted...
| Error | Cause | Resolution |
|---|---|---|
| Session not found | Invalid session ID | Use /task-harness:status to list valid IDs |
| Not resumable | Status is "running" or "completed" | Cancel first if running, or start new if completed |
| Invalid task index | --from-task exceeds task count | Check total tasks in session |
| State corruption | Malformed session JSON | Check logs, may need to restart from YAML |
User: /task-harness:resume 1234567890-12345
Skill: Finds first incomplete task (task 3), resumes execution
Result:
Task Harness Resumed
====================
Session: 1234567890-12345
Resuming from: Task 3 - Implement Auth Routes
User: /task-harness:resume 1234567890-12345 --from-task 2
Skill: Overrides resume point to task 2 (re-runs completed task)
Result:
Task Harness Resumed
====================
Resuming from: Task 2 - Implement User Model (override)
Warning: Task 2 was previously completed, re-running
User: /task-harness:resume 1234567890-12345
Skill: Session was "failed" due to max retries, resumes with fresh retry count
Result:
Task Harness Resumed
====================
Previous Status: failed (max retries on task 4)
Resuming from: Task 4 - Write Tests
Retry count reset to 0
npx claudepluginhub omara1-bakri-org/local-plugins --plugin task-harnessFramework for long-running, multi-session autonomous agent tasks with progress checkpointing, failure recovery, and task dependency management. Maintains append-only progress logs and checkpoint files for recovery across context window resets.
Resumes a saved Hypo-Workflow pipeline from `.pipeline/state.yaml`, continuing from the next uncompleted step without replaying finished work. Handles lock files, worker separation, and subagent authorization.
Recovers incomplete requests and resumes from the last phase. Scans snapshot files for disrupted tasks and offers resume commands via /mst:{skill}. Also cleans orphaned worktree metadata.