Commit Graph

1 Commits

  • Implement terminal approval UI system
    Phase 1: Backend approval tracking
    - Add PendingApprovalsManager class to track pending approvals
    - Add approval-request, approval-response, approval-expired WebSocket handlers
    - Add requestApproval() method to ClaudeCodeService
    - Add event forwarding for approval requests
    
    Phase 2: Frontend approval card component
    - Create approval-card.js with interactive UI
    - Create approval-card.css with styled component
    - Add Approve, Custom Instructions, Reject buttons
    - Add expandable custom command input
    
    Phase 3: Wire up approval flow end-to-end
    - Add handleApprovalRequest, handleApprovalConfirmed, handleApprovalExpired handlers
    - Add detectApprovalRequest() to parse AI approval request patterns
    - Integrate approval card into WebSocket message flow
    - Route approval responses based on source (server vs AI conversational)
    
    This allows the AI agent to request command approval through a clean
    UI instead of confusing conversational text responses.
    
    Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>