Files
Claude-Code-Workflow/.claude/commands/workflow/session/resume.md
catlog22 598bea9b21 feat(ccw): add session manager tool with auto workspace detection
- Add session_manager tool for workflow session lifecycle management
- Add ccw session CLI command with subcommands:
  - list, init, status, task, stats, delete, read, write, update, archive, mkdir
- Implement auto workspace detection (traverse up to find .workflow)
- Implement auto session location detection (active, archived, lite-plan, lite-fix)
- Add dashboard notifications for tool executions via WebSocket
- Add granular event types (SESSION_CREATED, TASK_UPDATED, etc.)
- Add status_history auto-tracking for task status changes
- Update workflow session commands to document ccw session usage

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 19:26:53 +08:00

2.5 KiB

name, description
name description
resume Resume the most recently paused workflow session with automatic session discovery and status update

Resume Workflow Session (/workflow:session:resume)

Overview

Resume the most recently paused workflow session, restoring all context and state.

Usage

/workflow:session:resume     # Resume most recent paused session

Implementation Flow

Step 1: Find Paused Sessions

ls .workflow/active/WFS-* 2>/dev/null

Step 2: Check Session Status

jq -r '.status' .workflow/active/WFS-session/workflow-session.json

Step 3: Find Most Recent Paused

ls -t .workflow/active/WFS-*/workflow-session.json | head -1

Step 4: Update Session Status

jq '.status = "active"' .workflow/active/WFS-session/workflow-session.json > temp.json
mv temp.json .workflow/active/WFS-session/workflow-session.json

Step 5: Add Resume Timestamp

jq '.resumed_at = "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"' .workflow/active/WFS-session/workflow-session.json > temp.json
mv temp.json .workflow/active/WFS-session/workflow-session.json

Simple Bash Commands

Basic Operations

  • List sessions: ls .workflow/active/WFS-*
  • Check status: jq -r '.status' session.json
  • Find recent: ls -t .workflow/active/*/workflow-session.json | head -1
  • Update status: jq '.status = "active"' session.json > temp.json
  • Add timestamp: jq '.resumed_at = "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"'

Resume Result

Session WFS-user-auth resumed
- Status: active
- Paused at: 2025-09-15T14:30:00Z
- Resumed at: 2025-09-15T15:45:00Z
- Ready for: /workflow:execute

session_manager Tool Alternative

Use ccw tool exec session_manager for session resume:

Update Session Status

# Update status to active
ccw tool exec session_manager '{
  "operation": "update",
  "session_id": "WFS-xxx",
  "content_type": "session",
  "content": {
    "status": "active",
    "resumed_at": "2025-12-10T08:00:00Z"
  }
}'

Read Session Status

ccw tool exec session_manager '{"operation":"read","session_id":"WFS-xxx","content_type":"session"}'

Operation Reference

Old Pattern session_manager
jq -r '.status' session.json {"operation":"read","content_type":"session"}
jq '.status = "active"' ... > temp.json && mv {"operation":"update","content":{"status":"active"}}
jq '.resumed_at = "..."' {"operation":"update","content":{"resumed_at":"..."}}