Skip to content

Build session dashboard for monitoring all active Claude Code sessions #2

Description

@yossiovadia

Goal

Create a dashboard command that shows all active Claude Code sessions, their status, and what they're working on.

Desired Output

┌─────────────────────────────────────────────────────────┐
│ Active Claude Code Sessions                             │
├─────────────────┬──────────────────────┬────────────────┤
│ Session         │ Directory            │ Status         │
├─────────────────┼──────────────────────┼────────────────┤
│ vsr-issue-1131  │ ~/code/semantic-...  │ ✅ Working     │
│ clawdbot-auth   │ ~/code/clawdbot      │ ⏸️  Idle       │
│ proxy-refactor  │ ~/code/claude-co...  │ 🚨 Waiting     │
└─────────────────┴──────────────────────┴────────────────┘

Implementation Plan

Phase 1: Session Registry

  • Create session metadata storage (JSON file in ~/.claude-wingman/sessions.json)
  • Track: session name, directory, start time, last command, PID
  • Update registry when sessions start/stop

Phase 2: Status Detection

  • Check if tmux session exists
  • Capture recent pane output
  • Detect status:
    • ✅ Working (actively executing)
    • ⏸️ Idle (waiting for next command)
    • 🚨 Waiting (approval prompt pending)
    • ❌ Error (crashed or errored)
    • 🎉 Done (completed task)

Phase 3: Dashboard Command

  • wingman dashboard command
  • Format table output (use column or printf)
  • Color coding for status (green/yellow/red)
  • Sort by activity (active → idle → waiting)

Phase 4: Auto-Cleanup

  • Detect ended sessions and remove from registry
  • Archive completed session logs
  • Option to manually cleanup: wingman cleanup

Acceptance Criteria

  • Dashboard shows all active sessions
  • Status is accurate (matches actual session state)
  • Updates when sessions start/stop
  • Works with 0 sessions (shows 'No active sessions')
  • Works with 10+ sessions (readable output)

Testing Plan

  1. Start 3 sessions in different states
  2. Run wingman dashboard
  3. Verify all sessions appear with correct status
  4. Stop one session, verify dashboard updates
  5. Test with no active sessions

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions