A small town of invented people, one piece of news, and a way to find out what really changes how it spreads. 0x17caf6dd33e4ce69700ff63e7b98ad0022efc65e
Society now is live on @ponsdotfamily.
Society Agent is an open-source agent-based town simulation. 6–16 residents, each with a name, a job, a personality and a memory, wake up in a small town. At 07:20 a piece of news breaks. A couple of residents hear it first. Everyone then goes about the day, walks the streets, meets people and talks, and the news moves from person to person, changing minds as it goes.
You can watch that happen, step in with an announcement or a whisper, interview any resident, and read a plain-language account of what happened. The part that sets it apart is the Experiment Lab: instead of trusting one run, it repeats the same day across dozens of random towns and tells you whether a change actually mattered.
CA : 0x17caf6dd33e4ce69700ff63e7b98ad0022efc65e
Web : https://t.co/RboztyvmMg
Most tools tell you what MIGHT happen.
Society Agent lets you test what you should DO.
Meet the Experiment Lab 🧪
Run the same town 60 times. Change one thing. See what it really does.
HOW TO USE IT (no sign-in):
1️⃣ Paste a situation. I used a clinic-closure rumor.
2️⃣ Hit Draft & test. It builds three response paths: no response, an early public update, a targeted reassurance.
3️⃣ All three run across 40 random towns. Every path uses the SAME towns, so only your move changes.
4️⃣ Read the verdict in plain language: a clear difference, or "no clear difference." It says either one honestly.
5️⃣ Hit Watch a paired town. Both versions start identical. One response lands, and Director Mode flips to "The town has split."
In my run: baseline opinion +0.29 vs response path +0.13 on the reassured ↔ alarmed axis. Click any resident and read what they heard, from whom, and when their mind changed.
Why you can trust the output:
→ Deterministic: same seed, same answer
→ Replayable: share the link, anyone gets identical numbers
→ Auditable: every conversation and opinion shift is a recorded event
→ Export to CSV or a printable report
Building agents? There's a public API + MCP, so your agent can run the same paired experiments and get a statistical verdict back.
A model of an invented town, not a forecast of real people.
Same town. Different move. Different future.
Open the Experiment Lab: https://t.co/nLiXdo3lR0
Open source (MIT): https://t.co/jpya3jFR8j
MCP: npm @societyagent/mcp
One plain-language sentence that updates as the day goes on: how many residents have heard, how they feel on average, and the latest conversation and where it happened. It is the quickest way to follow what is going on without reading the log.
Use Colour: opinion or Colour: who knows under the map to switch. The legend row always shows your debate’s own two words. Click a resident to inspect them; click empty ground to deselect. Speech bubbles show the latest line, and at most two appear at a time so the map stays readable.
Residents walk the streets between home, work, the café, the market, the park, the school and the clinic. The dot above each head shows how they stand:
> Grey has not heard the news yet
> Green has heard it and sits on the first side of the > debate (for example calm or skeptical)
> Red has heard it and sits on the second side (for example alarmed)
> Pale orangein “who knows” mode: has heard the news
An MCP server for Society Agent: a deterministic simulation of how news spreads through an invented town. Give your agent three read-only tools and it can run a scenario, or test whether an intervention makes a clear difference instead of guessing from one run.
https://t.co/pn0g6vx58e
Society Agent is live.
Drop one piece of news into an invented town and watch 16 residents with jobs, habits and different levels of trust walk the streets, talk, and change their minds. Then change one move and see what actually changes.
What you can do:
Run a day and step in. Make an announcement or whisper to one resident, and watch opinions shift on the map, timeline and town log.
Experiment Lab. Runs the same random towns with and without your move, then tests the difference. In the water-main scenario, an official statement left the town 0.12 calmer than doing nothing, a clear difference rather than luck.
Reports. Turn any run into a printable write-up with findings, chart, key moments and resident quotes. PDF or Markdown, no wallet needed.
Reproducible. Same scenario, seed and interventions give identical numbers in any browser. Saved runs are wallet-signed and replayed by the server, so they can’t be edited.
Optional AI layer. Residents can speak and decide for themselves, and their choices are recorded so runs still replay exactly.
For agents
POST /api/agent/simulate and /api/agent/compare (read-only), MCP server via npx -y @societyagent/mcp, and SKILL.md in the repo.
It’s a model of an invented town, not a forecast of real people. Open source (MIT), 112 unit tests, 45-check live security suite, CI green.
App: https://t.co/Lv5VjoTnh9
Docs: https://t.co/TYs6xJaAlZ
GitHub: https://t.co/8QAbRM3m8N
npm: https://t.co/pn0g6vx58e
Residents walk the streets between home, work, the café, the market, the park, the school and the clinic. The dot above each head shows how they stand:
> Grey has not heard the news yet
> Green has heard it and sits on the first side of the > debate (for example calm or skeptical)
> Red has heard it and sits on the second side (for example alarmed)
> Pale orangein “who knows” mode: has heard the news
The simulation screen: Every control, colour and number on the live town, and what it means.
The control bar > The bar under the title stays on screen as you scroll. Start / Pause / Resume controls time. The town waits at 07:00 until you press Begin the day (or Start), so you do not miss the moment the news breaks. Restart returns to that same quiet morning, with the same seed and nothing sent yet. 1×, 4×, 12× set the speed: 2, 6 and 16 ticks per second. A full day of 144 ticks therefore takes about 72 seconds at 1×, 24 at 4× and 9 at 12×. Restart (the circular arrow) puts the day back at 07:00 with the same seed, so it will play out the same way unless you step in differently. The bar on the right shows the progress through the day and the clock.
One person rarely decides a town. Making the official far more sociable sped the news up by about 1.3 hours (a clear effect), but weakening the journalist or the retiree produced no difference that could be told apart from chance. The lab says so when that is the case.
You can nudge a single person’s sociability, trust or leaning by up to ±0.5, on top of the town character. It is a way to ask “what if this person were different?”. In the lab each option can change a different person.
The street plan matters, but not the same amount in every story. Measured over 60 and 120 towns, news reached half the town about an hour sooner on the long main street for the water and school scenarios, but showed no clear difference for the clinic rumor. Do not assume one plan is simply “faster”.
Street plans:
Classic town > Two avenues and two cross streets, with a plaza in the middle.
Village square > One crossroads with every place packed close around it.
Long main street > One long street with the town strung out along it.
Every plan has the same fourteen places, so routines work everywhere: a Town Hall, café, market, school, clinic, park and eight houses. Only the geometry changes. A plan is plain data in src/engine/world.ts (roads and positions), so adding one does not touch the simulation rules.
We're just joined @fomo and applied for team tags.
also we're doing buybacks from @ponsdotfamily fees revenues and sending to the Society @fomo wallet.
buybacks proof : https://t.co/Wzx62hYj93
fomo wallet : 0xf9848a427d3b34b060deae9063283cc3e69516dc
Measured on 60 random towns, news reaches half the town in about 1.4 hours in a tight-knit town, 2.8 in an everyday one and 4.5 in an isolated one. Try it yourself in the lab: Does the kind of town matter?
What kind of town: A town character adds a small, bounded shift (at most ±0.3) to every resident’s traits. A town with no character is byte-identical to the original engine.
The lean is relative to neutral. Residents have opinions of their own, so a negative lean does not guarantee a negative outcome. It shifts the whole town a little compared with no lean.
Choose Your own scenario and set: the news (up to 240 characters), the two sides of the debate (up to 24 characters each, they appear on every axis, tooltip and sentence), how the news leans (−1 to +1) and who hears it first (up to 4 roles).
The log says a resident “shifted from worried to skeptical” when their opinion crosses a boundary: above 0.5 alarmed, above 0.15 worried, above −0.15 neutral, otherwise skeptical. Boundaries are the only thing the log reports; the underlying number keeps moving between them.
When two informed people talk.
This is a bounded-confidence model: people are persuaded by those not too far from them and may dig in against those who are. It is simple on purpose, so that you can read why a town ended up where it did.