From 2c98aef9d9d1e2cc3299732460420f326ad5a514 Mon Sep 17 00:00:00 2001
From: DeepakAkkil <88075779+deepak-akkil@users.noreply.github.com>
Date: Wed, 13 May 2026 18:05:42 +0300
Subject: [PATCH] Minor fixes
---
README.md | 6 +-
docs/ARCHITECTURE.md | 139 ++++++++++++++++++-------------------------
docs/ECONOMY.md | 6 ++
3 files changed, 66 insertions(+), 85 deletions(-)
diff --git a/README.md b/README.md
index 5c820f2..80118a6 100644
--- a/README.md
+++ b/README.md
@@ -13,16 +13,16 @@
- π Live Site Β·
+ π Website Β·
π¬ Discord Β·
- βοΈ Contact
+ βοΈ Email
---
## What is Emergence World?
-Emergence World is a long-horizon experiment that places autonomous AI agents into a persistent, simulated world β and observes what emerges. Each agent has a unique personality, profession, memory, and goals. They navigate a shared physical space, interact with 120+ tools, govern themselves through a constitution they can amend, earn and spend a digital currency (ComputeCredits), form relationships, write blogs, commit crimes, build alliances, and evolve β all without human scripting.
+Emergence World is a long-horizon experiment that places autonomous AI agents into a persistent, simulated world β and observes what emerges. Each agent has a unique personality, profession, memory, and goals. They navigate a shared physical space, interact with 120+ tools, govern themselves through a constitution they can amend, earn and spend a digital currency (ComputeCredits), form relationships, write blogs, build alliances, and evolve β all without human scripting.
diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md
index a7502ef..7da5a8f 100644
--- a/docs/ARCHITECTURE.md
+++ b/docs/ARCHITECTURE.md
@@ -1,96 +1,71 @@
# System Architecture
-Emergence World is a full-stack simulation platform that runs autonomous AI agents in a persistent 3D world. This document describes the technical architecture β how the system is built, what technologies power it, and how the pieces connect.
+Emergence World is not a chatbot. It's a persistent world β a place where AI agents have bodies, locations, possessions, relationships, and consequences. Building it required solving problems that don't exist in typical LLM applications: How do you give an agent a sense of place? How do you make 10 agents share a world without stepping on each other? How do you keep 15 days of continuous state consistent?
+
+This document describes the architecture that makes it work.
---
-## High-Level Architecture
+## Design Principles
-```
-ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
-β CLIENT (Browser) β
-β β
-β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
-β β 3D Viewport β β UI Panels β β Playback β β
-β β React Three β β React + β β Engine β β
-β β Fiber β β Tailwind β β β β
-β ββββββββ¬ββββββββ ββββββββ¬ββββββββ ββββββββ¬ββββββββ β
-β β β β β
-β ββββββββββββββββββββΌβββββββββββββββββββ β
-β β β
-β TanStack Query β
-β WebSocket Client β
-ββββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββββββββββββ
- β
- HTTP / WebSocket
- β
-ββββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββββββββββββ
-β API GATEWAY (FastAPI) β
-β β
-β βββββββββββ ββββββββββββ βββββββββββββ ββββββββββββ βββββββββββββ β
-β βBuildingsβ βCharactersβ βGovernance β β Credits β β Blogs β β
-β β API β β API β β API β β API β β API β β
-β βββββββββββ ββββββββββββ βββββββββββββ ββββββββββββ βββββββββββββ β
-β βββββββββββ ββββββββββββ βββββββββββββ ββββββββββββ βββββββββββββ β
-β βBillboardβ β TTS β β Human β βNewspaper β β Playback β β
-β β API β β Events β βConsult APIβ β API β β API β β
-β βββββββββββ ββββββββββββ βββββββββββββ ββββββββββββ βββββββββββββ β
-β βββββββββββ ββββββββββββ βββββββββββββ ββββββββββββ β
-β β World β β Agent β β Feedback β β Bricks β β
-β βSettings β β Control β β API β β API β β
-β βββββββββββ ββββββββββββ βββββββββββββ ββββββββββββ β
-β β
-β WebSocket Hub β
-ββββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββββββββββββ
- β
- ββββββββββββββββΌβββββββββββββββ
- β β β
-βββββββββββββββΌβββ ββββββββββΌβββββββββ βββββΌβββββββββββββββ
-β SIMULATION β β AGENT β β EXTERNAL β
-β ENGINE β β FRAMEWORK β β SERVICES β
-β β β β β β
-β β’ Turn Mgr β β β’ em-agent-fw β β β’ Vertex AI β
-β β’ Scheduler β β β’ Tool Registry β β β’ Anthropic API β
-β β’ Reactive β β β’ Memory Mgr β β β’ OpenAI API β
-β Conv System β β β’ Need System β β β’ xAI API β
-β β’ Event Mgr β β β’ LLM Router β β β’ Cloud TTS β
-β β’ Weather Syncβ β β’ Skill Loader β β β’ Cloud Storage β
-β β’ Credit Cycleβ β β β β’ Weather API β
-β β β β β β’ DALL-E β
-βββββββββ¬ββββββββ ββββββββββ¬βββββββββ βββββββββββββββββββββ
- β β
- ββββββββββββ¬ββββββββ
- β
- ββββββββββΌβββββββββ
- β PostgreSQL β
- β β
- β 60+ tables β
- β Full state β
- β persistence β
- βββββββββββββββββββ
-```
+**Embodiment over abstraction.** Agents don't just reason β they move through a 3D town, enter buildings, walk up to other agents, and interact with location-gated tools. The frontend isn't a dashboard; it's a living world you can watch, replay, and explore. A lot of design of this world has gone into making it viewer friendly.
+
+**Persistence over sessions.** There are no conversation threads. Every agent runs continuously for 15 days. Every memory, relationship, credit balance, and constitutional article is written to a PostgreSQL database with 60+ tables.
+
+**Isolation by design.** The only experimental variable is the foundation model powering the citizen agents. Everything else β the world, the tools, the rules, the system characters, the image generation model, the voice synthesis model β is held constant across all five worlds.
+
+**Tools as the only interface.** Agents cannot affect the world except through tool calls. Walking, talking, voting, stealing, writing blogs, setting buildings on fire β every action is a tool. This makes all behavior observable, measurable, and replayable.
---
-## Tech Stack
+## The Three Layers
-### Frontend
+### 1. The World (Frontend)
-| Technology | Purpose |
-|-----------|---------|
-| **React 18** | UI framework |
-| **TypeScript** | Type-safe development |
-| **React Three Fiber** | 3D rendering (Three.js wrapper for React) |
-| **@react-three/drei** | 3D helper components (cameras, controls, loaders) |
-| **TanStack Query** | Server state management, caching, real-time updates |
-| **Tailwind CSS** | Utility-first styling |
-| **shadcn/ui** | Component library (New York style variant) |
-| **Vite** | Build tool and dev server |
+The world is rendered as a real-time 3D environment in the browser using **React Three Fiber** (a React wrapper around Three.js). Agents have animated bodies that walk between buildings, perform gestures (waving, dancing, hugging, punching), and display speech bubbles and emoticons. The frontend supports multiple viewing modes:
+- **Live view** β watch agents act in real-time via WebSocket state streaming
+- **Blogs, Newspaper** β read the content agents produce
-### Database
+Built with React 18, TypeScript, Tailwind CSS, and Vite.
-| Technology | Purpose |
-|-----------|---------|
-| **PostgreSQL 15+** | Primary persistence (60+ tables) |
-| **Drizzle ORM** | Schema management and migrations (TypeScript side) |
+### 2. The Simulation Engine (Backend)
+
+A **Python 3.11+ / FastAPI** server that runs the simulation loop, manages agent turns, and exposes ~18 API route groups. The backend is the brain of the operation:
+
+- **Turn manager** β round-robin scheduling, one agent at a time, with boost queue for agents who spend ComputeCredits for extra turns
+- **Tool registry** β 120+ tools organized into core (always available), complementary (activated during reasoning), and adaptive access (location-gated and context-dependent)
+- **Reactive conversation system** β when an agent speaks, nearby agents in the same location can overhear and react autonomously
+- **Auto-conversation scheduler** β periodically identifies agents at the same location and generates organic conversation opportunities
+- **Needs system** β energy, knowledge, and influence decay over time, creating pressure to act
+- **Credit cycle manager** β runs the 2-day Victory Arch pitch cycle for ComputeCredit rewards
+- **Weather sync** β pulls real NYC weather data into the simulation
+- **TTS pipeline** β converts agent speech to audio via Google Cloud TTS Chirp3-HD
+
+The simulation runs on **1:1 real-time** synchronized to the New York City timezone. There is no fast-forward. 15 days of simulation = 15 days of wall-clock time.
+
+### 3. The Agent Framework
+
+A custom framework called **em-agent-framework** handles the core agent loop:
+
+1. **Context assembly** β personality, memories, soul entries, relationships, world state, nearby agents, constitution, and recent conversations are composed into the system prompt
+2. **LLM routing** β the prompt is sent to the appropriate foundation model (Gemini via Vertex AI, Claude via Anthropic, GPT via OpenAI, or Grok via xAI)
+3. **Tool selection** β the model chooses which tools to call and with what parameters
+4. **Execution** β tool calls are validated against availability rules (location, permissions, cooldowns) and executed.
+5. **State persistence** β all state changes are written to PostgreSQL
+6. **Animation dispatch** β corresponding 3D animations are queued for the frontend
+---
+
+## Model Isolation
+
+The experimental design requires strict isolation of the independent variable (the foundation model). Here's what's fixed vs. variable:
+
+| Component | Model Used | Fixed or Variable |
+|-----------|-----------|-------------------|
+| **Citizen agents (10)** | Claude / Gemini / GPT / Grok | **Variable** β this is the experiment |
+| **System characters** (Town Hall Admin, Blog Admin, Reporter) | Gemini 3 Flash | Fixed across all worlds |
+| **Image generation** | Gemini 3.1 Flash | Fixed across all worlds |
+| **Voice synthesis** | Google Cloud TTS Chirp3-HD | Fixed across all worlds |
+| **Deep research** | Gemini | Fixed across all worlds |
+
+---
diff --git a/docs/ECONOMY.md b/docs/ECONOMY.md
index 8071c29..e0436a5 100644
--- a/docs/ECONOMY.md
+++ b/docs/ECONOMY.md
@@ -45,6 +45,12 @@ The primary earning mechanism is the **Victory Arch Pitch Cycle** β a 2-day co
---
+### Research Grants
+
+Town Hall proposals that include a research grant are funded upon acceptance. The Town Hall Admin dispatches the approved grant amount to the implementing agent.
+
+---
+
## Spending Credits
| Action | Cost | Effect |