Issue 02 | Multi-Agent Parallel Development Architecture Deep Dive

⏱ Est. reading time: 5 min Updated on 5/7/2026

2.1 Architecture and Flowcharts

2.1.1 Overall Development Process

flowchart TD
    A[Phase 0: Project Initialization] --> B[Phase A: Parallel Development]
    B --> B1[ui-dev: HTML/CSS Skeleton]
    B --> B2[logic-dev: Calculation Engine Pure Functions]
    B1 --> C[Phase B: Integration Build]
    B2 --> C
    C --> C1[ui-dev: UI Interaction + a11y Styles]
    C --> C2[logic-dev: DOM Events + Keyboard + localStorage]
    C1 --> D[Phase C: Testing]
    C2 --> D
    D --> D1[qa-engineer: Unit + Integration Tests]
    D1 --> E[Phase D: Acceptance]
    E --> E1[qa-engineer: E2E + Accessibility + Requirement Acceptance]

    style A fill:#e1f5fe
    style B fill:#c8e6c9
    style C fill:#fff9c4
    style D fill:#ffe0b2
    style E fill:#f8bbd0

2.1.2 Teams Communication Architecture

flowchart LR
    subgraph "tmux session: calc-dev"
        TL[team-lead
Pane 0] UD[ui-dev
Pane 1] LD[logic-dev
Pane 2] end subgraph "tmux session: (auto-created)" QA[qa-engineer
Auto Pane] end TL -->|"SendMessage
task assignment"| UD TL -->|"SendMessage
task assignment"| LD UD -->|"SendMessage
completion notify"| TL LD -->|"SendMessage
completion notify"| TL QA -->|"SendMessage
test results"| TL TASKS["~/.claude/tasks/calc-dev/
Shared Task List"] INBOX["~/.claude/teams/calc-dev/
inboxes/*.json"] UD -.->|TaskUpdate| TASKS LD -.->|TaskUpdate| TASKS QA -.->|TaskUpdate| TASKS QA -.->|write message| INBOX TL -.->|read inbox| INBOX

2.1.3 Agent Execution Lifecycle

stateDiagram-v2
    [*] --> Spawned: Agent() spawn
    Spawned --> ReadingContext: Read CLAUDE.md + requirement.md
    ReadingContext --> ClaimingTask: TaskGet + TaskUpdate(in_progress)
    ClaimingTask --> Working: Write Code / Write Tests
    Working --> Testing: Run Tests
    Testing --> Working: Test Failed β†’ Fix
    Testing --> CompletingTask: Test Passed
    CompletingTask --> NotifyingLead: TaskUpdate(completed)
    NotifyingLead --> CheckingNext: SendMessage(team-lead)
    CheckingNext --> ClaimingTask: More tasks available
    CheckingNext --> Idle: No more tasks
    Idle --> [*]: shutdown

    note right of NotifyingLead: Message written to inbox file
but UI notification is not guaranteed to be real-time