mirror of
https://github.com/catlog22/Claude-Code-Workflow.git
synced 2026-02-13 02:41:50 +08:00
feat(workflow): add comprehensive planning, resumption, review, status, and test generation commands
- Implemented `/workflow:plan` for creating detailed implementation plans with task decomposition and context gathering. - Added `/workflow:resume` for intelligent session resumption with automatic progress analysis. - Introduced `/workflow:review` for executing the final phase of quality validation and generating review reports. - Developed `/workflow:status` to provide on-demand views of workflow status and task progress. - Created `/workflow:test-gen` to generate comprehensive test workflows based on completed implementation tasks, ensuring full test coverage.
This commit is contained in:
@@ -2,184 +2,105 @@
|
||||
name: complete
|
||||
description: Mark the active workflow session as complete and remove active flag
|
||||
usage: /workflow:session:complete
|
||||
|
||||
examples:
|
||||
- /workflow:session:complete
|
||||
- /workflow:session:complete --detailed
|
||||
---
|
||||
|
||||
# Complete Workflow Session (/workflow:session:complete)
|
||||
|
||||
## Purpose
|
||||
## Overview
|
||||
Mark the currently active workflow session as complete, update its status, and remove the active flag marker.
|
||||
|
||||
## Usage
|
||||
```bash
|
||||
/workflow:session:complete
|
||||
/workflow:session:complete # Complete current active session
|
||||
/workflow:session:complete --detailed # Show detailed completion summary
|
||||
```
|
||||
|
||||
## Behavior
|
||||
## Implementation Flow
|
||||
|
||||
### Session Completion Process
|
||||
1. **Locate Active Session**: Find current active session via `.workflow/.active-*` marker file
|
||||
2. **Update Session Status**: Modify `workflow-session.json` with completion data
|
||||
3. **Remove Active Flag**: Delete `.workflow/.active-[session-name]` marker file
|
||||
4. **Generate Summary**: Display completion report and statistics
|
||||
|
||||
### Status Updates
|
||||
Updates `workflow-session.json` with:
|
||||
- **status**: "completed"
|
||||
- **completed_at**: Current timestamp
|
||||
- **final_phase**: Current phase at completion
|
||||
- **completion_type**: "manual" (distinguishes from automatic completion)
|
||||
|
||||
### State Preservation
|
||||
Preserves all session data:
|
||||
- Implementation plans and documents
|
||||
- Task execution history
|
||||
- Generated artifacts and reports
|
||||
- Session configuration and metadata
|
||||
|
||||
## Completion Summary Display
|
||||
|
||||
### Session Overview
|
||||
```
|
||||
✅ Session Completed: WFS-oauth-integration
|
||||
Description: Implement OAuth2 authentication
|
||||
Created: 2025-09-07 14:30:00
|
||||
Completed: 2025-09-12 16:45:00
|
||||
Duration: 5 days, 2 hours, 15 minutes
|
||||
Final Phase: IMPLEMENTATION
|
||||
```
|
||||
|
||||
### Progress Summary
|
||||
```
|
||||
📊 Session Statistics:
|
||||
- Tasks completed: 5/5 (100%)
|
||||
- Files modified: 12
|
||||
- Tests created: 8
|
||||
- Documentation updated: 3 files
|
||||
- Average task duration: 2.5 hours
|
||||
```
|
||||
|
||||
### Generated Artifacts
|
||||
```
|
||||
📄 Session Artifacts:
|
||||
✅ IMPL_PLAN.md (Complete implementation plan)
|
||||
✅ TODO_LIST.md (Final task status)
|
||||
✅ .task/ (5 completed task files)
|
||||
📊 reports/ (Session reports available)
|
||||
```
|
||||
|
||||
### Archive Information
|
||||
```
|
||||
🗂️ Session Archive:
|
||||
Directory: .workflow/WFS-oauth-integration/
|
||||
Status: Completed and archived
|
||||
Access: Use /context WFS-oauth-integration for review
|
||||
```
|
||||
|
||||
## No Active Session
|
||||
If no active session exists:
|
||||
```
|
||||
⚠️ No Active Session to Complete
|
||||
|
||||
Available Options:
|
||||
- View all sessions: /workflow:session:list
|
||||
- Start new session: /workflow:session:start "task description"
|
||||
- Resume paused session: /workflow:session:resume
|
||||
```
|
||||
|
||||
## Next Steps Suggestions
|
||||
After completion, displays contextual actions:
|
||||
```
|
||||
🎯 What's Next:
|
||||
- View session archive: /context WFS-oauth-integration
|
||||
- Start related session: /workflow:session:start "build on OAuth work"
|
||||
- Review all sessions: /workflow:session:list
|
||||
- Create project report: /workflow/report
|
||||
```
|
||||
|
||||
## Error Handling
|
||||
|
||||
### Common Error Scenarios
|
||||
- **No active session**: Clear message with alternatives
|
||||
- **Corrupted session state**: Validates before completion, offers recovery
|
||||
- **File system issues**: Handles permissions and access problems
|
||||
- **Incomplete tasks**: Warns about unfinished work, allows forced completion
|
||||
|
||||
### Validation Checks
|
||||
Before completing, verifies:
|
||||
- Session directory exists and is accessible
|
||||
- `workflow-session.json` is valid and readable
|
||||
- Marker file exists and matches session
|
||||
- No critical errors in session state
|
||||
|
||||
### Forced Completion
|
||||
For problematic sessions:
|
||||
### Step 1: Find Active Session
|
||||
```bash
|
||||
# Option to force completion despite issues
|
||||
/workflow:session:complete --force
|
||||
ls .workflow/.active-* 2>/dev/null | head -1
|
||||
```
|
||||
|
||||
## Integration with Workflow System
|
||||
|
||||
### Session Lifecycle
|
||||
Completes the session workflow:
|
||||
- INIT → PLAN → IMPLEMENT → **COMPLETE**
|
||||
- Maintains session history for reference
|
||||
- Preserves all artifacts and documentation
|
||||
|
||||
### TodoWrite Integration
|
||||
- Synchronizes final TODO state
|
||||
- Marks all remaining tasks as archived
|
||||
- Preserves task history in session directory
|
||||
|
||||
### Context System
|
||||
- Session remains accessible via `/context <session-id>`
|
||||
- All documents and reports remain available
|
||||
- Can be referenced for future sessions
|
||||
|
||||
## Command Variations
|
||||
|
||||
### Basic Completion
|
||||
### Step 2: Get Session Name
|
||||
```bash
|
||||
/workflow:session:complete
|
||||
basename .workflow/.active-WFS-session-name | sed 's/^\.active-//'
|
||||
```
|
||||
|
||||
### With Summary Options
|
||||
### Step 3: Update Session Status
|
||||
```bash
|
||||
/workflow:session:complete --detailed # Show detailed statistics
|
||||
/workflow:session:complete --quiet # Minimal output
|
||||
/workflow:session:complete --force # Force completion despite issues
|
||||
jq '.status = "completed"' .workflow/WFS-session/workflow-session.json > temp.json
|
||||
mv temp.json .workflow/WFS-session/workflow-session.json
|
||||
```
|
||||
|
||||
## Session State After Completion
|
||||
|
||||
### Directory Structure Preserved
|
||||
```
|
||||
.workflow/WFS-[session-name]/
|
||||
├── workflow-session.json # Updated with completion data
|
||||
├── IMPL_PLAN.md # Preserved
|
||||
├── TODO_LIST.md # Final state preserved
|
||||
├── .task/ # All task files preserved
|
||||
└── reports/ # Generated reports preserved
|
||||
### Step 4: Add Completion Timestamp
|
||||
```bash
|
||||
jq '.completed_at = "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"' .workflow/WFS-session/workflow-session.json > temp.json
|
||||
mv temp.json .workflow/WFS-session/workflow-session.json
|
||||
```
|
||||
|
||||
### Session JSON Example
|
||||
```json
|
||||
{
|
||||
"id": "WFS-oauth-integration",
|
||||
"description": "Implement OAuth2 authentication",
|
||||
"status": "completed",
|
||||
"created_at": "2025-09-07T14:30:00Z",
|
||||
"completed_at": "2025-09-12T16:45:00Z",
|
||||
"completion_type": "manual",
|
||||
"final_phase": "IMPLEMENTATION",
|
||||
"tasks_completed": 5,
|
||||
"tasks_total": 5
|
||||
}
|
||||
### Step 5: Count Final Statistics
|
||||
```bash
|
||||
ls .workflow/WFS-session/.task/*.json 2>/dev/null | wc -l
|
||||
ls .workflow/WFS-session/.summaries/*.md 2>/dev/null | wc -l
|
||||
```
|
||||
|
||||
---
|
||||
### Step 6: Remove Active Marker
|
||||
```bash
|
||||
rm .workflow/.active-WFS-session-name
|
||||
```
|
||||
|
||||
**Result**: Current active session is marked as complete, archived, and no longer active. All session data is preserved for future reference.
|
||||
## Simple Bash Commands
|
||||
|
||||
### Basic Operations
|
||||
- **Find active session**: `ls .workflow/.active-*`
|
||||
- **Get session name**: `basename marker | sed 's/^\.active-//'`
|
||||
- **Update status**: `jq '.status = "completed"' session.json > temp.json`
|
||||
- **Add timestamp**: `jq '.completed_at = "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"'`
|
||||
- **Count tasks**: `ls .task/*.json | wc -l`
|
||||
- **Count completed**: `ls .summaries/*.md | wc -l`
|
||||
- **Remove marker**: `rm .workflow/.active-session`
|
||||
|
||||
### Completion Result
|
||||
```
|
||||
Session WFS-user-auth completed
|
||||
- Status: completed
|
||||
- Started: 2025-09-15T10:00:00Z
|
||||
- Completed: 2025-09-15T16:30:00Z
|
||||
- Duration: 6h 30m
|
||||
- Total tasks: 8
|
||||
- Completed tasks: 8
|
||||
- Success rate: 100%
|
||||
```
|
||||
|
||||
### Detailed Summary (--detailed flag)
|
||||
```
|
||||
Session Completion Summary:
|
||||
├── Session: WFS-user-auth
|
||||
├── Project: User authentication system
|
||||
├── Total time: 6h 30m
|
||||
├── Tasks completed: 8/8 (100%)
|
||||
├── Files generated: 24 files
|
||||
├── Summaries created: 8 summaries
|
||||
├── Status: All tasks completed successfully
|
||||
└── Location: .workflow/WFS-user-auth/
|
||||
```
|
||||
|
||||
### Error Handling
|
||||
```bash
|
||||
# No active session
|
||||
ls .workflow/.active-* 2>/dev/null || echo "No active session found"
|
||||
|
||||
# Incomplete tasks
|
||||
task_count=$(ls .task/*.json | wc -l)
|
||||
summary_count=$(ls .summaries/*.md 2>/dev/null | wc -l)
|
||||
test $task_count -eq $summary_count || echo "Warning: Not all tasks completed"
|
||||
```
|
||||
|
||||
## Related Commands
|
||||
- `/workflow:session:list` - View all sessions including completed
|
||||
- `/workflow:session:start` - Start new session
|
||||
- `/workflow:status` - Check completion status before completing
|
||||
@@ -2,82 +2,104 @@
|
||||
name: list
|
||||
description: List all workflow sessions with status
|
||||
usage: /workflow:session:list
|
||||
examples:
|
||||
- /workflow:session:list
|
||||
---
|
||||
|
||||
# List Workflow Sessions (/workflow/session/list)
|
||||
# List Workflow Sessions (/workflow:session:list)
|
||||
|
||||
## Purpose
|
||||
## Overview
|
||||
Display all workflow sessions with their current status, progress, and metadata.
|
||||
|
||||
## Usage
|
||||
```bash
|
||||
/workflow/session/list
|
||||
/workflow:session:list # Show all sessions with status
|
||||
```
|
||||
|
||||
## Output Format
|
||||
## Implementation Flow
|
||||
|
||||
### Active Session (Highlighted)
|
||||
### Step 1: Find All Sessions
|
||||
```bash
|
||||
ls .workflow/WFS-* 2>/dev/null
|
||||
```
|
||||
|
||||
### Step 2: Check Active Session
|
||||
```bash
|
||||
ls .workflow/.active-* 2>/dev/null | head -1
|
||||
```
|
||||
|
||||
### Step 3: Read Session Metadata
|
||||
```bash
|
||||
jq -r '.session_id, .status, .project' .workflow/WFS-session/workflow-session.json
|
||||
```
|
||||
|
||||
### Step 4: Count Task Progress
|
||||
```bash
|
||||
ls .workflow/WFS-session/.task/*.json 2>/dev/null | wc -l
|
||||
ls .workflow/WFS-session/.summaries/*.md 2>/dev/null | wc -l
|
||||
```
|
||||
|
||||
### Step 5: Get Creation Time
|
||||
```bash
|
||||
jq -r '.created_at // "unknown"' .workflow/WFS-session/workflow-session.json
|
||||
```
|
||||
|
||||
## Simple Bash Commands
|
||||
|
||||
### Basic Operations
|
||||
- **List sessions**: `ls .workflow/WFS-*`
|
||||
- **Find active**: `ls .workflow/.active-*`
|
||||
- **Read session data**: `jq -r '.session_id, .status' session.json`
|
||||
- **Count tasks**: `ls .task/*.json | wc -l`
|
||||
- **Count completed**: `ls .summaries/*.md | wc -l`
|
||||
- **Get timestamp**: `jq -r '.created_at' session.json`
|
||||
|
||||
## Simple Output Format
|
||||
|
||||
### Session List Display
|
||||
```
|
||||
Workflow Sessions:
|
||||
|
||||
✅ WFS-oauth-integration (ACTIVE)
|
||||
Description: Implement OAuth2 authentication
|
||||
Phase: IMPLEMENTATION
|
||||
Created: 2025-09-07 14:30:00
|
||||
Directory: .workflow/WFS-oauth-integration/
|
||||
Progress: 3/5 tasks completed
|
||||
Project: OAuth2 authentication system
|
||||
Status: active
|
||||
Progress: 3/8 tasks completed
|
||||
Created: 2025-09-15T10:30:00Z
|
||||
|
||||
⏸️ WFS-user-profile (PAUSED)
|
||||
Project: User profile management
|
||||
Status: paused
|
||||
Progress: 1/5 tasks completed
|
||||
Created: 2025-09-14T14:15:00Z
|
||||
|
||||
📁 WFS-database-migration (COMPLETED)
|
||||
Project: Database schema migration
|
||||
Status: completed
|
||||
Progress: 4/4 tasks completed
|
||||
Created: 2025-09-13T09:00:00Z
|
||||
|
||||
Total: 3 sessions (1 active, 1 paused, 1 completed)
|
||||
```
|
||||
|
||||
### Paused Sessions
|
||||
```
|
||||
⏸️ WFS-user-profile (PAUSED)
|
||||
Description: Build user profile management
|
||||
Phase: PLANNING
|
||||
Created: 2025-09-06 10:15:00
|
||||
Last active: 2025-09-07 09:20:00
|
||||
Directory: .workflow/WFS-user-profile/
|
||||
### Status Indicators
|
||||
- **✅**: Active session
|
||||
- **⏸️**: Paused session
|
||||
- **📁**: Completed session
|
||||
- **❌**: Error/corrupted session
|
||||
|
||||
### Quick Commands
|
||||
```bash
|
||||
# Count all sessions
|
||||
ls .workflow/WFS-* | wc -l
|
||||
|
||||
# Show only active
|
||||
ls .workflow/.active-* | basename | sed 's/^\.active-//'
|
||||
|
||||
# Show recent sessions
|
||||
ls -t .workflow/WFS-*/workflow-session.json | head -3
|
||||
```
|
||||
|
||||
### Completed Sessions
|
||||
```
|
||||
✅ WFS-bug-fix-123 (COMPLETED)
|
||||
Description: Fix login security vulnerability
|
||||
Completed: 2025-09-05 16:45:00
|
||||
Directory: .workflow/WFS-bug-fix-123/
|
||||
```
|
||||
|
||||
## Status Indicators
|
||||
- **✅ ACTIVE**: Currently active session (has marker file)
|
||||
- **⏸️ PAUSED**: Session paused, can be resumed
|
||||
- **✅ COMPLETED**: Session finished successfully
|
||||
- **❌ FAILED**: Session ended with errors
|
||||
- **🔄 INTERRUPTED**: Session was interrupted unexpectedly
|
||||
|
||||
## Session Discovery
|
||||
Searches for:
|
||||
- `.workflow/WFS-*` directories
|
||||
- Reads `workflow-session.json` from each
|
||||
- Checks for `.active-*` marker files
|
||||
- Sorts by last activity date
|
||||
|
||||
## Quick Actions
|
||||
For each session, shows available actions:
|
||||
- **Resume**: `/workflow/session/resume` (paused sessions)
|
||||
- **Switch**: `/workflow/session/switch <session-id>`
|
||||
- **View**: `/context <session-id>`
|
||||
|
||||
## Empty State
|
||||
If no sessions exist:
|
||||
```
|
||||
No workflow sessions found.
|
||||
|
||||
Create a new session:
|
||||
/workflow/session/start "your task description"
|
||||
```
|
||||
|
||||
## Error Handling
|
||||
- **Directory access**: Handles permission issues
|
||||
- **Corrupted sessions**: Shows warning but continues listing
|
||||
- **Missing metadata**: Shows partial info with warnings
|
||||
|
||||
---
|
||||
|
||||
**Result**: Complete overview of all workflow sessions and their current state
|
||||
## Related Commands
|
||||
- `/workflow:session:start` - Create new session
|
||||
- `/workflow:session:switch` - Switch to different session
|
||||
- `/workflow:session:status` - Detailed session info
|
||||
@@ -2,64 +2,68 @@
|
||||
name: pause
|
||||
description: Pause the active workflow session
|
||||
usage: /workflow:session:pause
|
||||
|
||||
examples:
|
||||
- /workflow:session:pause
|
||||
---
|
||||
|
||||
# Pause Workflow Session (/workflow:session:pause)
|
||||
|
||||
## Purpose
|
||||
## Overview
|
||||
Pause the currently active workflow session, saving all state for later resumption.
|
||||
|
||||
## Usage
|
||||
```bash
|
||||
/workflow:session:pause
|
||||
/workflow:session:pause # Pause current active session
|
||||
```
|
||||
|
||||
## Behavior
|
||||
## Implementation Flow
|
||||
|
||||
### State Preservation
|
||||
- Saves complete session state to `workflow-session.json`
|
||||
- Preserves context across all phases
|
||||
- Maintains TodoWrite synchronization
|
||||
- Creates checkpoint timestamp
|
||||
|
||||
### Active Session Handling
|
||||
- Removes `.workflow/.active-[session-name]` marker file
|
||||
- Session becomes paused (no longer active)
|
||||
- Other commands will work in temporary mode
|
||||
|
||||
### Context Saved
|
||||
- Current phase and progress
|
||||
- Generated documents and artifacts
|
||||
- Task execution state
|
||||
- Agent context and history
|
||||
|
||||
## Status Update
|
||||
Updates session status to:
|
||||
- **status**: "paused"
|
||||
- **paused_at**: Current timestamp
|
||||
- **resumable**: true
|
||||
|
||||
## Output
|
||||
Displays:
|
||||
- Session ID that was paused
|
||||
- Current phase and progress
|
||||
- Resume instructions
|
||||
- Session directory location
|
||||
|
||||
## Resume Instructions
|
||||
Shows how to resume:
|
||||
### Step 1: Find Active Session
|
||||
```bash
|
||||
/workflow:session:resume # Resume this session
|
||||
/workflow:session:list # View all sessions
|
||||
/workflow:session:switch <id> # Switch to different session
|
||||
ls .workflow/.active-* 2>/dev/null | head -1
|
||||
```
|
||||
|
||||
## Error Handling
|
||||
- **No active session**: Clear message that no session is active
|
||||
- **Save errors**: Handles file system issues gracefully
|
||||
- **State corruption**: Validates session state before saving
|
||||
### Step 2: Get Session Name
|
||||
```bash
|
||||
basename .workflow/.active-WFS-session-name | sed 's/^\.active-//'
|
||||
```
|
||||
|
||||
---
|
||||
### Step 3: Update Session Status
|
||||
```bash
|
||||
jq '.status = "paused"' .workflow/WFS-session/workflow-session.json > temp.json
|
||||
mv temp.json .workflow/WFS-session/workflow-session.json
|
||||
```
|
||||
|
||||
**Result**: Active session is safely paused and can be resumed later
|
||||
### Step 4: Add Pause Timestamp
|
||||
```bash
|
||||
jq '.paused_at = "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"' .workflow/WFS-session/workflow-session.json > temp.json
|
||||
mv temp.json .workflow/WFS-session/workflow-session.json
|
||||
```
|
||||
|
||||
### Step 5: Remove Active Marker
|
||||
```bash
|
||||
rm .workflow/.active-WFS-session-name
|
||||
```
|
||||
|
||||
## Simple Bash Commands
|
||||
|
||||
### Basic Operations
|
||||
- **Find active session**: `ls .workflow/.active-*`
|
||||
- **Get session name**: `basename marker | sed 's/^\.active-//'`
|
||||
- **Update status**: `jq '.status = "paused"' session.json > temp.json`
|
||||
- **Add timestamp**: `jq '.paused_at = "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"'`
|
||||
- **Remove marker**: `rm .workflow/.active-session`
|
||||
|
||||
### Pause Result
|
||||
```
|
||||
Session WFS-user-auth paused
|
||||
- Status: paused
|
||||
- Paused at: 2025-09-15T14:30:00Z
|
||||
- Tasks preserved: 8 tasks
|
||||
- Can resume with: /workflow:session:resume
|
||||
```
|
||||
|
||||
## Related Commands
|
||||
- `/workflow:session:resume` - Resume paused session
|
||||
- `/workflow:session:list` - Show all sessions including paused
|
||||
- `/workflow:session:status` - Check session state
|
||||
@@ -2,81 +2,74 @@
|
||||
name: resume
|
||||
description: Resume the most recently paused workflow session
|
||||
usage: /workflow:session:resume
|
||||
|
||||
examples:
|
||||
- /workflow:session:resume
|
||||
---
|
||||
|
||||
# Resume Workflow Session (/workflow:session:resume)
|
||||
|
||||
## Purpose
|
||||
## Overview
|
||||
Resume the most recently paused workflow session, restoring all context and state.
|
||||
|
||||
## Usage
|
||||
```bash
|
||||
/workflow:session:resume
|
||||
/workflow:session:resume # Resume most recent paused session
|
||||
```
|
||||
|
||||
## Resume Logic
|
||||
## Implementation Flow
|
||||
|
||||
### Session Detection
|
||||
- Finds most recently paused session
|
||||
- Loads session state from `workflow-session.json`
|
||||
- Validates session integrity
|
||||
### Step 1: Find Paused Sessions
|
||||
```bash
|
||||
ls .workflow/WFS-* 2>/dev/null
|
||||
```
|
||||
|
||||
### State Restoration
|
||||
- Creates `.workflow/.active-[session-name]` marker file
|
||||
- Loads current phase from session state
|
||||
- Restores appropriate agent context
|
||||
- Continues from exact interruption point
|
||||
### Step 2: Check Session Status
|
||||
```bash
|
||||
jq -r '.status' .workflow/WFS-session/workflow-session.json
|
||||
```
|
||||
|
||||
### Context Continuity
|
||||
- Restores TodoWrite state
|
||||
- Loads phase-specific context
|
||||
- Maintains full audit trail
|
||||
- Preserves document references
|
||||
### Step 3: Find Most Recent Paused
|
||||
```bash
|
||||
ls -t .workflow/WFS-*/workflow-session.json | head -1
|
||||
```
|
||||
|
||||
## Phase-Specific Resume
|
||||
### Step 4: Update Session Status
|
||||
```bash
|
||||
jq '.status = "active"' .workflow/WFS-session/workflow-session.json > temp.json
|
||||
mv temp.json .workflow/WFS-session/workflow-session.json
|
||||
```
|
||||
|
||||
### Planning Phase
|
||||
- Resumes planning document generation
|
||||
- Maintains requirement analysis progress
|
||||
- Continues task breakdown where left off
|
||||
### Step 5: Add Resume Timestamp
|
||||
```bash
|
||||
jq '.resumed_at = "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"' .workflow/WFS-session/workflow-session.json > temp.json
|
||||
mv temp.json .workflow/WFS-session/workflow-session.json
|
||||
```
|
||||
|
||||
### Implementation Phase
|
||||
- Resumes task execution state
|
||||
- Maintains agent coordination
|
||||
- Continues from current task
|
||||
### Step 6: Create Active Marker
|
||||
```bash
|
||||
touch .workflow/.active-WFS-session-name
|
||||
```
|
||||
|
||||
### Review Phase
|
||||
- Resumes validation process
|
||||
- Maintains quality checks
|
||||
- Continues review workflow
|
||||
## Simple Bash Commands
|
||||
|
||||
## Session Validation
|
||||
Before resuming, validates:
|
||||
- Session directory exists
|
||||
- Required documents present
|
||||
- State consistency
|
||||
- No corruption detected
|
||||
### Basic Operations
|
||||
- **List sessions**: `ls .workflow/WFS-*`
|
||||
- **Check status**: `jq -r '.status' session.json`
|
||||
- **Find recent**: `ls -t .workflow/*/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)'"'`
|
||||
- **Create marker**: `touch .workflow/.active-session`
|
||||
|
||||
## Output
|
||||
Displays:
|
||||
- Resumed session ID and description
|
||||
- Current phase and progress
|
||||
- Available next actions
|
||||
- Session directory location
|
||||
### 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
|
||||
```
|
||||
|
||||
## Error Handling
|
||||
- **No paused sessions**: Lists available sessions to switch to
|
||||
- **Corrupted session**: Attempts recovery or suggests manual repair
|
||||
- **Directory missing**: Clear error with recovery options
|
||||
- **State inconsistency**: Validates and repairs where possible
|
||||
|
||||
## Next Actions
|
||||
After resuming:
|
||||
- Use `/context` to view current session state
|
||||
- Continue with phase-appropriate commands
|
||||
- Check TodoWrite status for next steps
|
||||
|
||||
---
|
||||
|
||||
**Result**: Previously paused session is now active and ready to continue
|
||||
## Related Commands
|
||||
- `/workflow:session:pause` - Pause current session
|
||||
- `/workflow:execute` - Continue workflow execution
|
||||
- `/workflow:session:list` - Show all sessions
|
||||
@@ -1,112 +0,0 @@
|
||||
---
|
||||
name: status
|
||||
description: Show detailed status of active workflow session
|
||||
usage: /workflow:session:status
|
||||
|
||||
---
|
||||
|
||||
# Workflow Session Status (/workflow:session:status)
|
||||
|
||||
## Purpose
|
||||
Display comprehensive status information for the currently active workflow session.
|
||||
|
||||
## Usage
|
||||
```bash
|
||||
/workflow:session:status
|
||||
```
|
||||
|
||||
## Status Display
|
||||
|
||||
### Active Session Overview
|
||||
```
|
||||
🚀 Active Session: WFS-oauth-integration
|
||||
Description: Implement OAuth2 authentication
|
||||
Created: 2025-09-07 14:30:00
|
||||
Last updated: 2025-09-08 09:15:00
|
||||
Directory: .workflow/WFS-oauth-integration/
|
||||
```
|
||||
|
||||
### Phase Information
|
||||
```
|
||||
📋 Current Phase: IMPLEMENTATION
|
||||
Status: In Progress
|
||||
Started: 2025-09-07 15:00:00
|
||||
Progress: 60% complete
|
||||
|
||||
Completed Phases: ✅ INIT ✅ PLAN
|
||||
Current Phase: 🔄 IMPLEMENT
|
||||
Pending Phases: ⏳ REVIEW
|
||||
```
|
||||
|
||||
### Task Progress
|
||||
```
|
||||
📝 Task Status (3/5 completed):
|
||||
✅ IMPL-001: Setup OAuth2 client configuration
|
||||
✅ IMPL-002: Implement Google OAuth integration
|
||||
🔄 IMPL-003: Add Facebook OAuth support (IN PROGRESS)
|
||||
⏳ IMPL-004: Create user profile mapping
|
||||
⏳ IMPL-005: Add OAuth security validation
|
||||
```
|
||||
|
||||
### Document Status
|
||||
```
|
||||
📄 Generated Documents:
|
||||
✅ IMPL_PLAN.md (Complete)
|
||||
✅ TODO_LIST.md (Auto-updated)
|
||||
📝 .task/IMPL-*.json (5 tasks)
|
||||
📊 reports/ (Ready for generation)
|
||||
```
|
||||
|
||||
### Session Health
|
||||
```
|
||||
🔍 Session Health: ✅ HEALTHY
|
||||
- Marker file: ✅ Present
|
||||
- Directory: ✅ Accessible
|
||||
- State file: ✅ Valid
|
||||
- Task files: ✅ Consistent
|
||||
- Last checkpoint: 2025-09-08 09:10:00
|
||||
```
|
||||
|
||||
## No Active Session
|
||||
If no session is active:
|
||||
```
|
||||
⚠️ No Active Session
|
||||
|
||||
Available Sessions:
|
||||
- WFS-user-profile (PAUSED) - Use: /workflow/session/switch WFS-user-profile
|
||||
- WFS-bug-fix-123 (COMPLETED) - Use: /context WFS-bug-fix-123
|
||||
|
||||
Create New Session:
|
||||
/workflow:session:start "your task description"
|
||||
```
|
||||
|
||||
## Quick Actions
|
||||
Shows contextual next steps:
|
||||
```
|
||||
🎯 Suggested Actions:
|
||||
- Continue current task: /task/execute IMPL-003
|
||||
- View full context: /context
|
||||
- Execute workflow: /workflow/execute
|
||||
- Plan next steps: /workflow/plan
|
||||
```
|
||||
|
||||
## Error Detection
|
||||
Identifies common issues:
|
||||
- Missing marker file
|
||||
- Corrupted session state
|
||||
- Inconsistent task files
|
||||
- Directory permission problems
|
||||
|
||||
## Performance Info
|
||||
```
|
||||
⚡ Session Performance:
|
||||
- Tasks completed: 3/5 (60%)
|
||||
- Average task time: 2.5 hours
|
||||
- Estimated completion: 2025-09-08 14:00:00
|
||||
- Files modified: 12
|
||||
- Tests passing: 98%
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**Result**: Comprehensive view of active session status and health
|
||||
@@ -2,7 +2,7 @@
|
||||
name: switch
|
||||
description: Switch to a different workflow session
|
||||
usage: /workflow:session:switch <session-id>
|
||||
|
||||
argument-hint: session-id to switch to
|
||||
examples:
|
||||
- /workflow:session:switch WFS-oauth-integration
|
||||
- /workflow:session:switch WFS-user-profile
|
||||
@@ -10,76 +10,78 @@ examples:
|
||||
|
||||
# Switch Workflow Session (/workflow:session:switch)
|
||||
|
||||
## Purpose
|
||||
## Overview
|
||||
Switch the active session to a different workflow session.
|
||||
|
||||
## Usage
|
||||
```bash
|
||||
/workflow:session:switch <session-id>
|
||||
/workflow:session:switch WFS-session-name # Switch to specific session
|
||||
```
|
||||
|
||||
## Session Switching Process
|
||||
## Implementation Flow
|
||||
|
||||
### Validation
|
||||
- Verifies target session exists
|
||||
- Checks session directory integrity
|
||||
- Validates session state
|
||||
|
||||
### Active Session Handling
|
||||
- Automatically pauses currently active session
|
||||
- Saves current session state
|
||||
- Removes current `.active-*` marker file
|
||||
|
||||
### Target Session Activation
|
||||
- Creates `.active-[target-session]` marker file
|
||||
- Updates session status to "active"
|
||||
- Loads session context and state
|
||||
|
||||
### State Transition
|
||||
```
|
||||
Current Active → Paused (auto-saved)
|
||||
Target Session → Active (context loaded)
|
||||
### Step 1: Validate Target Session
|
||||
```bash
|
||||
test -d .workflow/WFS-target-session && echo "Session exists"
|
||||
```
|
||||
|
||||
## Context Loading
|
||||
After switching:
|
||||
- Loads target session's phase and progress
|
||||
- Restores appropriate agent context
|
||||
- Makes session's documents available
|
||||
- Updates TodoWrite to target session's tasks
|
||||
### Step 2: Pause Current Session
|
||||
```bash
|
||||
ls .workflow/.active-* 2>/dev/null | head -1
|
||||
jq '.status = "paused"' .workflow/current-session/workflow-session.json > temp.json
|
||||
```
|
||||
|
||||
## Output
|
||||
Displays:
|
||||
- Previous active session (now paused)
|
||||
- New active session details
|
||||
- Current phase and progress
|
||||
- Available next actions
|
||||
### Step 3: Remove Current Active Marker
|
||||
```bash
|
||||
rm .workflow/.active-* 2>/dev/null
|
||||
```
|
||||
|
||||
## Session ID Formats
|
||||
Accepts various formats:
|
||||
- Full ID: `WFS-oauth-integration`
|
||||
- Partial match: `oauth` (if unique)
|
||||
- Index from list: `1` (from session list order)
|
||||
### Step 4: Activate Target Session
|
||||
```bash
|
||||
jq '.status = "active"' .workflow/WFS-target/workflow-session.json > temp.json
|
||||
mv temp.json .workflow/WFS-target/workflow-session.json
|
||||
```
|
||||
|
||||
## Error Handling
|
||||
- **Session not found**: Lists available sessions
|
||||
- **Invalid session**: Shows session validation errors
|
||||
- **Already active**: No-op with confirmation message
|
||||
- **Switch failure**: Maintains current session, shows error
|
||||
### Step 5: Create New Active Marker
|
||||
```bash
|
||||
touch .workflow/.active-WFS-target-session
|
||||
```
|
||||
|
||||
## Quick Reference
|
||||
After switching, shows:
|
||||
- Session description and phase
|
||||
- Recent activity and progress
|
||||
- Suggested next commands
|
||||
- Directory location
|
||||
### Step 6: Add Switch Timestamp
|
||||
```bash
|
||||
jq '.switched_at = "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"' .workflow/WFS-target/workflow-session.json > temp.json
|
||||
mv temp.json .workflow/WFS-target/workflow-session.json
|
||||
```
|
||||
|
||||
## Integration
|
||||
Commands executed after switch will:
|
||||
- Use new active session context
|
||||
- Save artifacts to new session directory
|
||||
- Update new session's state and progress
|
||||
## Simple Bash Commands
|
||||
|
||||
---
|
||||
### Basic Operations
|
||||
- **Check session exists**: `test -d .workflow/WFS-session`
|
||||
- **Find current active**: `ls .workflow/.active-*`
|
||||
- **Pause current**: `jq '.status = "paused"' session.json > temp.json`
|
||||
- **Remove marker**: `rm .workflow/.active-*`
|
||||
- **Activate target**: `jq '.status = "active"' target.json > temp.json`
|
||||
- **Create marker**: `touch .workflow/.active-target`
|
||||
|
||||
**Result**: Different session is now active and ready for work
|
||||
### Switch Result
|
||||
```
|
||||
Switched to session: WFS-oauth-integration
|
||||
- Previous: WFS-user-auth (paused)
|
||||
- Current: WFS-oauth-integration (active)
|
||||
- Switched at: 2025-09-15T15:45:00Z
|
||||
- Ready for: /workflow:execute
|
||||
```
|
||||
|
||||
### Error Handling
|
||||
```bash
|
||||
# Session not found
|
||||
test -d .workflow/WFS-nonexistent || echo "Error: Session not found"
|
||||
|
||||
# No sessions available
|
||||
ls .workflow/WFS-* 2>/dev/null || echo "No sessions available"
|
||||
```
|
||||
|
||||
## Related Commands
|
||||
- `/workflow:session:list` - Show all available sessions
|
||||
- `/workflow:session:pause` - Pause current before switching
|
||||
- `/workflow:execute` - Continue with new active session
|
||||
Reference in New Issue
Block a user