System Overview
Aura is a polyglot microservices architecture with a rich React 19 + Vite 6 frontend. Seven
AI agents communicate via the SymphonyBus (a custom EventTarget-based event bus) with
commission chaining for multi-step orchestration.
Services
| Service | Stack | Port | Role |
|---|---|---|---|
| Frontend | React 19 + Vite 6 + TypeScript | 3000 | SPA, agent orchestration, frame extraction |
| API Proxy | Express | 3005 | Gemini key isolation, rate limiting, usage metering |
| Vector Search | FastAPI + ChromaDB | 3001 | Semantic search with adaptive chunking |
| Graph Knowledge | Express + SQLite | 3004 | Concept graph traversal, learning paths |
| Media Pipeline | Express + FFmpeg + WebSocket | 3002/3003 | Cloud-side frame extraction, transcription |
| CLIP Embeddings | FastAPI + CLIP ViT-B/32 | 3006 | Multimodal visual search |
All backend services are optional. The frontend degrades gracefully to browser-local
alternatives — in-browser frame extraction, hash-based embeddings, IndexedDB persistence.
The full stack is orchestrated via docker-compose.yml.
Defense-in-depth AI safety
Every LLM interaction passes through layered safety machinery:
- Zod schema validation on all LLM function calls (
conductor-schemas.ts) - Critic agent — adversarial quality gate scoring relevance, factual consistency, quality
- Valhalla 3-layer sandbox — static analysis, import blocking, execution timeout
- Plugin sandboxed execution — isolated scope + SHA-256 integrity verification
Frontend pillars
- Lens Laboratory — the analysis workspace where Insights from the Virtuosos land
- Creator Studio — structured, AI-assisted content generation
- Agent Studio — build custom Virtuosos; install third-party ones from the marketplace
- Valhalla Gateway — sandboxed automation of external creative software
- Course View — adaptive learning modules generated from any video
Quality figures
- 438 tests across 20 files (Vitest + backend pytest/node test suites)
- Production build in ~29s
- Streaming responses reduce perceived latency by 60–80%