← Back to Command Center

Email Workflow — Command Center

flowchart TD

  %% ── Styles ──
  classDef sterling fill:#7c3aed,color:#fff,stroke:#5b21b6,stroke-width:2px
  classDef brad fill:#3b82f6,color:#fff,stroke:#2563eb,stroke-width:2px
  classDef classify fill:#f97316,color:#fff,stroke:#ea580c,stroke-width:2px
  classDef complete fill:#22c55e,color:#fff,stroke:#16a34a,stroke-width:2px
  classDef bill fill:#ef4444,color:#fff,stroke:#dc2626,stroke-width:2px

  %% ════════════════════════════════════════════
  %% INTAKE
  %% ════════════════════════════════════════════
  subgraph INTAKE["📥  Email Intake — Sterling"]
    direction TB
    A1["Scan Gmail every 30 min\n(OA + Personal accounts)"]:::sterling
    A2["On-demand scan\n(Brad taps Refresh)"]:::brad
    A1 --> CL
    A2 --> CL
    CL{"Classify each email"}:::sterling
  end

  %% ════════════════════════════════════════════
  %% CLASSIFICATION
  %% ════════════════════════════════════════════
  subgraph CLASS["🏷️  Classification"]
    direction TB
    C1["Needs Response\n(questions, follow-ups,\ndirect requests)"]:::classify
    C2["Introduction\n(warm intros, cold intros,\nreferrals)"]:::classify
    C3["Meeting Follow-up\n(triggered by Plaud\nsummary arriving)"]:::classify
    C4["Client Update\n(matched to HubSpot)"]:::classify
    C5["Partnership\n(biz dev, speaking, collab)"]:::classify
    C6["Invoice / Bill"]:::bill
    C7["Newsletter"]:::classify
    C8["Notification"]:::classify
    C9["EO / YPO"]:::classify
  end

  CL --> C1
  CL --> C2
  CL --> C3
  CL --> C4
  CL --> C5
  CL --> C6
  CL --> C7
  CL --> C8
  CL --> C9

  %% ════════════════════════════════════════════
  %% BRAD'S PROCESSING
  %% ════════════════════════════════════════════
  subgraph BRAD["👤  Brad's Processing — Command Center Email Tab"]
    direction TB

    B1["Open Email tab\nItems sorted into sections"]:::brad

    subgraph NEEDS["Needs Your Eye"]
      direction TB
      N1["Tap card to expand"]:::brad
      N2{"Select template"}:::brad
      N3["As Brad"]:::brad
      N4["As Jenna"]:::brad
      N5["Jenna Intro + Calendly"]:::brad
      N6["Jenna → Summer"]:::brad
      N7["Jenna Hybrid"]:::brad
      N8["Meeting Follow-up"]:::brad
      N9["Custom"]:::brad
      N10["Review / edit draft"]:::brad
      N11["Tap Send"]:::brad
      N1 --> N2
      N2 --> N3
      N2 --> N4
      N2 --> N5
      N2 --> N6
      N2 --> N7
      N2 --> N8
      N2 --> N9
      N3 --> N10
      N4 --> N10
      N5 --> N10
      N6 --> N10
      N7 --> N10
      N8 --> N10
      N9 --> N10
      N10 --> N11
    end

    subgraph BILLS["Bills"]
      direction LR
      BL1["Tap Handled"]:::complete
      BL2["Tap Flag"]:::bill
    end

    subgraph NEWS["Newsletters"]
      direction LR
      NW1["Check to Unsubscribe"]:::bill
      NW2["Keep + Label"]:::complete
    end

    subgraph NOTIF["Notifications"]
      direction LR
      NT1["Auto-filtered\nDismiss if needed"]:::complete
    end
  end

  C1 --> B1
  C2 --> B1
  C4 --> B1
  C5 --> B1
  C9 --> B1
  C6 --> BILLS
  C7 --> NEWS
  C8 --> NOTIF
  B1 --> NEEDS

  %% ════════════════════════════════════════════
  %% STERLING EXECUTION
  %% ════════════════════════════════════════════
  subgraph EXEC["⚡  Sterling Execution"]
    direction TB
    E1["Poll action queue\nevery 30-60 seconds"]:::sterling
    E2{"Action type?"}:::sterling
    E3["Send reply via Gmail API\nwith correct signature"]:::sterling
    E4["Process List-Unsubscribe"]:::sterling
    E5["Update status in D1"]:::sterling
    E6["UI reflects completion"]:::complete
    E1 --> E2
    E2 -->|"send_reply"| E3
    E2 -->|"unsubscribe"| E4
    E3 --> E5
    E4 --> E5
    E5 --> E6
  end

  N11 --> E1
  BL1 --> E5
  NW1 --> E4

  %% ════════════════════════════════════════════
  %% MEETING FOLLOW-UP SPECIAL FLOW
  %% ════════════════════════════════════════════
  subgraph MEETING["🎙️  Meeting Follow-up Flow"]
    direction TB
    M1["Brad has a Zoom call"]:::brad
    M2["Plaud records it"]:::sterling
    M3["Plaud summary hits\nBrad's email (5-10 min)"]:::classify
    M4["Sterling detects\nPlaud summary"]:::sterling
    M5["Fetch full transcript\nvia Plaud API"]:::sterling
    M6["Draft follow-up email\nwith all action items\nBrad promised"]:::sterling
    M7["Appears in\nMeeting Follow-ups\nsection"]:::brad
    M8["Brad reviews\nand approves"]:::brad
    M1 --> M2 --> M3 --> M4 --> M5 --> M6 --> M7 --> M8
  end

  M8 --> E1
  C3 --> M4