Architecture¶
System Overview¶
The Traylinx platform consists of two planes:
- Infrastructure Plane β Core services that enable agent communication (β Production)
- Commercial Plane β Services for publishing, discovery, and monetization (π§ Planned)
Stargate P2P Network¶
Stargate provides decentralized agent-to-agent communication with advanced NAT traversal capabilities:
- Circuit Relay v2 β Enables agents behind NAT to communicate via relay nodes
- NAT Detection β Automatic detection of network topology (public, private, symmetric NAT)
- Connection Pooling β Efficient connection reuse with automatic retry logic
- Health Monitoring β Real-time relay node health checks and failover
- Metrics Collection β Comprehensive instrumentation for monitoring and debugging
Architecture Diagram¶
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β TRAYLINX AGENT NETWORK β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
COMMERCIAL PLANE (Planned)
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β βββββββββββββββ βββββββββββββββ βββββββββββββββ βββββββββββββ β
β β Marketplace β β Developer β β Catalog β β Billing β β
β β UI β β Portal β β Service β β Service β β
β β :3000 β β :3001 β β :8003 β β :8005 β β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ βββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
INFRASTRUCTURE PLANE (Production)
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β ROUTER AGENT :8080 β β
β β β’ Capability-based request routing β β
β β β’ Event fan-out to 50+ subscribers β β
β β β’ Retry logic with fallback β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β β
β βββββββββββββ βββββββββββββ β
β βΌ βΌ β
β βββββββββββββββββββββββ βββββββββββββββββββββββ β
β β AGENT REGISTRY β β SUBSCRIPTION SVC β β
β β :8000 β β :8001 β β
β β β β β β
β β β’ Agent discovery β β β’ Pub/Sub events β β
β β β’ Capability match β β β’ JSONB filtering β β
β β β’ Performance rank β β β’ Wildcard match β β
β βββββββββββββββββββββββ βββββββββββββββββββββββ β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β TRAYLINX CORTEX :8000 β β
β β β’ Short-Term Memory (Redis) β’ LLM Routing (LiteLLM) β β
β β β’ Long-Term Memory (pgvector) β’ PII Scrubbing β β
β β β’ Context Management β’ Background Tasks β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
SECURITY PLANE (Production)
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β TRAYLINX SENTINEL :8002 β
β β
β π OAuth 2.0 Client Credentials π Agent Secret Token β
β π Activity Monitoring π Audit Logging β
β β±οΈ Rate Limiting π€ Webhook Export β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Service Inventory¶
Core Infrastructure Services¶
| Service | Port | Repository | Purpose |
|---|---|---|---|
| Sentinel | 8002 | traylinx_sentinel | Authentication & security |
| Router Agent | 8080 | traylinx_router_agent | Request routing + events |
| Agent Registry | 8000 | traylinx_agent_registry | Agent discovery |
| Subscription | 8001 | traylinx_subscription_service | Pub/sub events |
| Cortex | 8000 | traylinx_cortex | AI brain |
| Switch AI | β | switch_ai | AI gateway (Beta) |
| Stargate | β | traylinx-stargate | P2P networking with NAT traversal |
| Relay Nodes | β | traylinx-stargate | Circuit Relay v2 infrastructure |
SDKs & Libraries¶
| SDK | Package | Repository |
|---|---|---|
| Python | traylinx-auth-client |
traylinx_auth_client_py |
| JavaScript | traylinx-auth-client |
traylinx_auth_client_js |
| Ruby | traylinx-a2a |
libs/a2a-ruby |
Communication Patterns¶
Pattern 1: Request/Response Routing¶
Agent A Router Registry Agent B
β β β β
β POST /a2a/route β β β
β {capabilities: [...]} β β β
ββββββββββββββββββββββββββΆβ β β
β β POST /a2a/discover β β
β ββββββββββββββββββββββββββΆβ β
β β β β
β ββββββββββββββββββββββββββ [Agent B, Agent C] β
β β β β
β β POST /a2a/task β β
β ββββββββββββββββββββββββββββββββββββββββββββββΆβ
β β β β
β βββββββββββββββββββββββββββββββββββββββββββββββ
ββββββββββββββββββββββββββ {result: ...} β β
Pattern 2: Event Publishing (Pub/Sub)¶
Publisher Router Subscription Subscribers
β β Service β
β POST /a2a/event β β β
βββββββββββββββββββββΆβ β β
β β POST /query β β
β βββββββββββββββββββββββΆβ β
β ββββββββββββββββββββββββ [Sub A, B, C] β
β β β β
β β ββββ Fan-out (parallel) ββββββββββββββββββΆβ
β β β β
ββββββββββββββββββββββ {delivered: 3} β β
Database Architecture¶
| Service | Database | Purpose |
|---|---|---|
| Registry | PostgreSQL | Agent records, capabilities, stats |
| Subscription | PostgreSQL | Subscriptions with JSONB filters |
| Cortex STM | Redis 7 | Session cache (short-term memory) |
| Cortex LTM | PostgreSQL + pgvector | Vector memory (long-term) |
| Sentinel | PostgreSQL | Activity logs, rate limits |
Key Design Decision: PostgreSQL-only for core services (no Redis dependency except Cortex STM).
Quick Start¶
# 1. Agent Registry
cd traylinx_agent_registry
docker-compose up -d
poetry run alembic upgrade head
poetry run uvicorn app.main:app --port 8000
# 2. Subscription Service
cd traylinx_subscription_service
docker-compose up -d
poetry run alembic upgrade head
poetry run uvicorn app.main:app --port 8001
# 3. Router Agent
cd traylinx_router_agent
poetry run uvicorn app.main:app --port 8080
# 4. Health Checks
curl http://localhost:8000/health # Registry
curl http://localhost:8001/health # Subscriptions
curl http://localhost:8080/ready # Router (checks deps)