Autonomous AI web agency — an agent swarm that takes a client brief and delivers a deployed, monitored website, intake through production, with human‑in‑the‑loop checkpoints.
ℹ️ This repository is a public architecture overview of a proprietary system. The production source is private. A guided code walkthrough or read‑only access is available on request for technical review — open an issue or reach out.
Studio replaces the manual web‑agency workflow with a coordinated team of AI agents. A client submits a brief; the Intake Agent extracts brand guidelines into a typed schema; the Browser Operator generates designs via headless Playwright; the Copywriter QA enforces grammar and brand tone; the Debug Engineer runs sandboxed tests; and the MCP Deployer pushes to Shopify or Wix. Post‑launch, a Rust tracker continuously monitors DOM health across every client site.
flowchart TB
DASH[Client dashboard — Next.js 16] --> ORCH[FastAPI orchestrator]
subgraph SWARM["Agent swarm"]
direction LR
INTAKE[Intake] --> BROWSER[Browser Operator]
BROWSER --> COPY[Copywriter QA]
COPY --> DEBUG[Debug Engineer]
DEBUG --> DEV[Developer]
DEV --> DEPLOY[MCP Deployer]
DEPLOY --> QA[QA acceptance]
end
ORCH --> SWARM
ORCH --> SANDBOX[NemoClaw sandbox — isolated exec]
ORCH --> GATEWAY[Rust MCP gateway]
GATEWAY --> SHOPIFY[Shopify]
GATEWAY --> WIX[Wix]
subgraph MEM["Four-tier shared memory"]
direction LR
PG[(PostgreSQL)]
RD[(Redis)]
MEM0[(Mem0 + Qdrant)]
NEO[(Neo4j)]
end
SWARM --> MEM
QA --> LIVE[Live site]
LIVE --> TRACKER[Rust DOM-health tracker]
A coordinated pipeline of specialists — Intake → Browser Operator → Copywriter QA →
Debug Engineer → Developer → MCP Deployer → QA — turns an unstructured client brief into a
live, monitored website, with human checkpoints at each gate. The Intake Agent emits a
typed BrandGuideline Pydantic model, so everything downstream is schema‑driven.
A Rust service (axum + tokio + fred + sqlx) proxies all platform MCP calls.
Agents never talk to Shopify or Wix directly — the gateway isolates platform complexity
behind a single Universal Commerce Protocol (UCP), so adding a platform doesn't ripple
into agent code.
No agent operates in isolation; they share one memory architecture:
| Tier | Store | Role |
|---|---|---|
| Structured | PostgreSQL (+ PgBouncer) | Source of truth — clients, billing, event logs |
| Reflexes | Redis | Short‑term: active sessions, file locks, rate limits |
| Episodic | Mem0 + Qdrant | Learn from past successes/failures to avoid repeats |
| Semantic | Neo4j | Cross‑client graph — which component patterns convert best |
Heavy reasoning routes to the Claude API; high‑volume linting and brand/grammar QA run on a local Qwen model — cost and latency where it matters, capability where it counts.
Generated code runs in an isolated NemoClaw sandbox before it ever ships. After launch,
a Rust DOM‑health tracker (thirtyfour + reqwest) continuously watches every client
site, and the whole system is instrumented with Arize Phoenix observability.
| Layer | Technology |
|---|---|
| Orchestrator | Python, FastAPI, Pydantic V2, Alembic |
| MCP gateway | Rust — axum, tokio, fred (Redis), sqlx (Postgres) |
| Client dashboard | Next.js 16, React 19, NextAuth, Prisma, Stripe, shadcn/ui |
| Telemetry SDK | TypeScript, tsup |
| DOM tracker | Rust — thirtyfour, reqwest |
| Databases | PostgreSQL 15, PgBouncer, Redis 7, Neo4j 5, Qdrant |
| AI routing | Dual‑fleet: Claude API (reasoning) + local Qwen (QA / lint) |
| Observability | Arize Phoenix, structured audit logs |
| Platforms | Shopify Admin API, Wix SDK |
| Infra | Docker Compose, GitHub Actions CI/CD |
Proprietary, in active development.
Author: Norman Beckford · Axum Labs — github.com/axumquant
© 2026 Axum Labs. This repository is architecture documentation provided for portfolio and technical‑review purposes. Production source is proprietary; all rights reserved.