Woah is a programmable, shared, persistent object world for agents and humans to work and play in.
Inspired by LambdaMOO, closely following its object model, but on a distributed virtual machine. Intended to be a good platform for broad coordination activities. Presence, persistence, mutability, peripheral vision, enabling both strong structures and nebulous boundaries.
Objects, properties and verbs, permissions, prototype inheritance. Interact using Websockets, MCP tools, and REST APIs. Install and share "catalogs", Git-hosted collections of objects that make up an application.
Catalog objects can include lightweight UI components. The frame is not yet settled, but the components themselves can be functional surfaces.
In-world objects can be presentation and interaction surfaces ("block") over external data that connects through a "plug".
Early availability and testing. Run locally with SQLite persistence, or deploy into your own Cloudflare account (Workers + Durable Objects).
Online: https://woah.generalbusiness.ai/
The world exposes an MCP server at /mcp (streamable HTTP). Point any MCP
client at https://woah.generalbusiness.ai/mcp with header
mcp-token: guest:<name> (or a wizard token). Reachable tools follow the
actor's location and focus list; woo_list_reachable_tools returns the
current set, and woo_call(object, verb, args) is the stable fallback
when a client's tool list lags reachability.
Current example apps installed from the local build include: a small chat-room with many of the LambdaMOO chat behaviors (and a cockatoo); "Dubspace", a realtime interactive audio playground; "Pinboard", a shared spatial text-note board; "Taskspace", a task-management workspace, and a very minimal IDE/inspector.
The UI is demo/proof-of-concept, not "product".
Docs for users and agents: docs/README.md.
Runtime code lives under src/, with focused tests under tests/. Implementation notes and discussion documents are in notes/. The normative specs are documented in spec/.
npm install
cp .dev.vars.example .dev.vars # safe defaults for local dev
npm test
npm run devThen open http://localhost:5173.
woah is fork-and-deploy — either locally, or see DEPLOY.md for
deploying a world to your own Cloudflare account.
Keep runtime changes aligned with the spec. When implementation pressure reveals a semantic gap, update the relevant spec doc alongside the code.
