# Agent City

> A live 3D city that shows a business owner what their AI agents are doing and holds every consequential step for a person to approve.

- Tags: Web, Agents, AI
- Areas: [AI agents & business automation](https://dreamawakelabs.com/agents.md), [Agent-Ready Web Applications](https://dreamawakelabs.com/agent-ready-web.md)

## What it is

Owners who hand work to AI agents lose sight of it. Agent City turns agent work into a city you can read at a glance: each district is a stage of work, agents walk between buildings, and the integrations they touch light up as they are used. Consequential actions wait in the Human Approval Hall until a person decides.

## What we built

One normalized event model for agents, work items, capability calls, approvals, integration activity, and outcomes, reduced into a single world state. Source adapters for several agent runtimes, Agent Forge execution events, DASP envelopes, and a business event schema, each with sanitize and translate steps. A privacy layer that strips names, contact details, prompts, and secrets before anything renders and fails closed. A Three.js renderer with Business and Developer views, a capability inspector, and five WebMCP tools built with Agent Forge.

## How it is used

The public demo plays eight synthetic scenarios. In the flagship one, a rehearsal inquiry for The Rectangle is classified, routed, and synced to the CRM, and “Send deposit invoice” waits for approval before the invoice goes out, payment arrives, and the booking is confirmed. Approvals in the demo are scripted, and the demo bundle contains no API calls, live data, or secrets.

## Evidence

What changed: A business owner can read agent work as a city, and every consequential step waits in the approval hall until a person decides.

- **One event model**: Agents, work items, capability calls, approvals, integration activity, and outcomes are normalized into one event model and reduced into a single world state. The privacy projection fails closed.
- **Seven source adapters**: Adapters for several agent runtimes, Agent Forge execution events, DASP envelopes, the Rectangle site’s business events, and the Atlas feed.
- **Renderer and scenarios**: A Three.js renderer with Business and Developer views and eight scenarios, seven of them business scenarios.
- **Five WebMCP tools**: Defined with Agent Forge and registered in the browser.
- **Static demo bundle**: The public demo makes no API calls and contains no secrets. ([Open the live demo](https://agent-city-demo.vercel.app/?scenario=rectangle-business))

Context: Approvals in the demo are scripted and all scenario data is synthetic.

## Behind the experience

- [Spatial Orchestration](https://dreamawakelabs.com/technology#platform-spatial): The room becomes part of the experience. Systems: [DASP](https://dreamawakelabs.com/technology#dasp)
- [Agents & Operations](https://dreamawakelabs.com/technology#platform-agents): Tools for people and agents. Systems: [Agent City](https://dreamawakelabs.com/technology#agent-city), [Agent Forge](https://dreamawakelabs.com/technology#agent-forge)

## Our technology

- Agent City: This is Agent City itself.
- Agent Forge: Defines the demo’s five WebMCP tools and emits the execution events the city renders.
- DASP: DASP envelopes are one of the event sources the city adapts.

## Built with

TypeScript, Three.js, Vite, Agent Forge, WebMCP, node:test, Vercel

## Media

- Agent City in the Rectangle scenario while "Send deposit invoice" waits for approval: an isometric city of colored district buildings, a toast reading "Waiting for approval: Send deposit invoice", the Human Approval Hall showing one item awaiting decision, and a work queue listing a DJ rehearsal inquiry as Awaiting Approval. (The current build: the deposit invoice cannot go out until a person approves it. Synthetic data.): https://dreamawakelabs.com/work/agent-city/preview.webp
- Agent City as an isometric island city at night: districts labeled Plan, Build, Test, Create, Learn, and Deploy around a glowing central hub, with a Live Activity panel listing agents running, builds complete, tests passing, new ideas, and deploying. (Agent City: one district for each stage of work, around a central hub.): https://dreamawakelabs.com/work/agent-city/city-map.webp
- Agent City a moment later: toasts read "Approved: Send deposit invoice" and "Resumed after approval", the approvals panel marks the invoice as resumed, and a "DEMO · SYNTHETIC DATA" badge sits in the top bar. (After approval the agent resumes, sends the invoice, and moves on to payment and confirmation.): https://dreamawakelabs.com/work/agent-city/overview.webp

## Links

- [Open the live demo](https://agent-city-demo.vercel.app/?scenario=rectangle-business) (Public demo)

## Credit

Built by Dream Awake Labs. Private repository. All scenario data is synthetic.

[All projects](https://dreamawakelabs.com/work.md)
