- Client product (
app.ara.so, web/desktop) - Cloud control plane (
Ara-backendFastAPI service) - Sandbox execution plane (Blaxel sandboxes)
- Agent runtime (inside each sandbox)
High-level flow
Layer 1: product surface (app.ara.so)
- Desktop-like UI, apps, chats, and file interactions
- Calls cloud API for session and runtime operations
- Uses realtime paths for chat and terminal
- Displays and manages skills discovered from runtime storage
Layer 2: cloud control plane (Ara-backend/api)
The cloud API is the orchestration and policy layer:
- Auth, billing, credentials, usage, and analytics
- Session lifecycle (
/session/start,/session/status,/session/stop) - WebSocket proxying (
/ws/{session_id},/session/terminal/{session_id}) - File proxying (
/session/files/*) - Skills management (
/session/skills*) - Integration and MCP routing
Layer 3: sandbox execution plane
Each active user session maps to a dedicated sandbox:- Isolated filesystem and process space
- Long-running runtime workers
- Persistent workspace
- Per-session runtime configuration injection
Sandbox deep dive
Runtime image, persistence model, and operational lifecycle.
Layer 4: agent runtime
The runtime handles autonomous behavior:- Agent loop and model/tool orchestration
- Channel adapters (WhatsApp, Telegram, Linq, and more)
- Skills loader + registry + manager tools
- Memory files and context assembly
- Subagent spawning and delegated execution
Runtime deep dive
Tool loop, skills precedence, and runtime contracts.
Message path (realtime)
Cloud API authenticates and routes
Session is resolved from
cloud_sessions, then proxied into sandbox websocket.Runtime processes request
Runtime decides model/tool actions, emits assistant frames, and writes outputs.
Files and artifacts path
- Client requests file read/write through
/session/files/* - Cloud API validates user/session and path scope
- Request is executed inside sandbox filesystem
- Results stream back to client and can be referenced by later prompts
Why this architecture works
- Clear separation between control plane and execution plane
- Strong per-user isolation in sandbox layer
- Runtime can evolve (skills, recursion, channels) without changing client contracts
- Same core agent across app UI, APIs, and channel communications

