Untitled

 avatar
unknown
plain_text
9 months ago
1.7 kB
16
Indexable
graph TB
    %% Client Layer
    subgraph "CLIENT LAYER"
        NS[Needle Sidebar]
        WD[Web Dashboard]
        AC[API Clients]
    end

    %% Gateway Layer
    subgraph "GATEWAY LAYER"
        GW[FastAPI Gateway]
        CR[CapabilityRouter]
    end

    %% Registry Layer
    subgraph "REGISTRY LAYER"
        WS[WebSocket Server]
        AR[AgentRegistry]
    end

    %% Runtime Layer
    subgraph "RUNTIME WORKERS"
        RW1[Worker 1]
        RW2[Worker 2]
        RWN[Worker N]
    end

    %% Tool Ecosystem
    subgraph "TOOL ECOSYSTEM"
        TR[ToolRegistry]
        PM[PermissionManager]
        AT[Available Tools]
    end

    %% Infrastructure
    subgraph "INFRASTRUCTURE"
        REDIS[(Redis)]
        RAY[Ray Cluster]
        PG[(PostgreSQL)]
    end

    %% Connections
    NS -->|HTTP/SSE| GW
    WD -->|HTTP/WS| GW
    AC -->|HTTP/REST| GW

    GW --> CR
    CR --> AR
    AR --> WS

    WS --> RW1
    WS --> RW2
    WS --> RWN

    RW1 --> TR
    RW2 --> TR
    RWN --> TR

    TR --> PM
    PM --> AT

    AR -->|State| REDIS
    PM -->|Permissions| REDIS
    RW1 -->|Distributed| RAY
    RW2 -->|Distributed| RAY
    RWN -->|Distributed| RAY

    classDef clientLayer fill:#e1f5fe,stroke:#01579b
    classDef gatewayLayer fill:#f3e5f5,stroke:#4a148c
    classDef registryLayer fill:#e8f5e8,stroke:#1b5e20
    classDef runtimeLayer fill:#fff3e0,stroke:#e65100
    classDef toolLayer fill:#fce4ec,stroke:#880e4f
    classDef infraLayer fill:#f5f5f5,stroke:#424242

    class NS,WD,AC clientLayer
    class GW,CR gatewayLayer
    class WS,AR registryLayer
    class RW1,RW2,RWN runtimeLayer
    class TR,PM,AT toolLayer
    class REDIS,RAY,PG infraLayer
Editor is loading...
Leave a Comment