Original Reddit post

Repo: https://github.com/Dominien/social-agent-sim I built a simulation where 6 LLM agents live in a Berlin apartment building. Each agent gets: A 2-line identity (“Marta. 62. Retired. Widowed. Apartment 1, 1st floor. 25 years.”) Their current perception (time, location, weather, who’s nearby, fridge contents, hunger level) A list of 15 possible actions (speak, move, think, wait, knock on door, check mailbox, send message…) That’s it. No personality prompts. No goals. No behavioral instructions. No “be social.” No “organize against the eviction.” No system prompt telling them how to act. What I DID build is a physics engine for social life: hunger that drifts over time, locked doors, opening hours, adjacency-based sound (you hear your neighbors through walls), acquaintance gating (strangers appear as “the young man from the 3rd floor” until you’ve actually introduced yourself), phone contacts that only grow through meeting people, fridge tracking with actual items, work schedules that structurally isolate certain agents during the day. Why this is fully autonomous This is an agentic tool-calling environment. Each simulated hour, every agent receives an observation (its perception of the world) and returns tool calls (actions). The engine resolves those actions against world rules — validating moves, updating state, propagating consequences — then feeds the result back as the next observation. There is no human in the loop. No scripted sequences. No decision trees. No orchestrator choosing what agents should do. The LLM makes every behavioral decision. The engine only enforces physics. The engine controls time, physics, and the boundaries of what’s possible. The agents make every decision within those boundaries. What happened On Day 1, Marco paid 60 cents for a stranger’s soup at the corner shop. She couldn’t afford it. That small gesture led to an introduction — “I’m Suki, by the way. From the attic.” — which led to a friendship, which led to a dinner group, which became the social infrastructure that later carried information about the eviction letter through the building. Nobody scripted that. The causal chain was: empty fridge → corner shop → not enough money → stranger helps → gratitude → introduction → friendship → information network. Other things that emerged: Marta (62, retired) became the social hub — not because I told her to be social, but because she’s always home (retired), lives on the 1st floor (near the entrance), and already knows everyone (25 years in the building). Schedule + location = social role. Rolf (55, construction worker) was the hardest to reach when the eviction letter came — he works 8-17, comes home tired, drinks beer alone, knows almost nobody. Four neighbors stood outside his door knocking: “Rolf, please. It’s the last day.” He didn’t open. Agents waited 2+ hours for soup at a bar that never served it — because the engine had no restaurant system yet. They didn’t hallucinate the food arriving. They just… waited. And the next morning they talked about it: “The soup never came. That’s basically what Tuesday was.” What this is NOT This is not “AI consciousness.” It’s token prediction in a rich environment. The agents don’t “want” things. They respond to perception. I’m not claiming this is biological emergence or real intelligence. Individual responses are just Claude completing a prompt. Every single one. The 2-line seed gives the model cultural priors from pretraining — it knows what “retired widow” or “construction worker” implies. The environment doesn’t create behavior from nothing. It constrains which priors get expressed. What IS interesting Architecture as personality. Most multi-agent frameworks give agents elaborate system prompts with personality traits, goals, and behavioral instructions. I gave them almost nothing. Marta “acts social” because of retirement + floor location + existing acquaintances. Rolf “acts isolated” because of his work schedule + no existing connections. The differentiation comes from the world, not the prompt. The honest framing: I didn’t program agent personalities or goals. I built environmental constraints — schedules, physical spaces, locked doors, hunger, fatigue, acquaintance networks — and let Claude respond to each moment’s perception. Social structures, information cascading, and collective action emerged from the architecture, not from prompt engineering. The thesis Identity is not a property. Identity is a process that emerges from the interaction between an actor and its environment over time. Or shorter: behavior is a function of the environment, not personality. Give an agent an empty apartment with nothing to do and it sits there staring out the window — exactly like a human would. Give it a full fridge that empties, neighbors it can hear through walls, a mailbox with a letter, and a bar around the corner — and suddenly it lives. What I’m building now I don’t know yet if this scales to productive output. But I want to find out. I’m taking the same engine — same physics, same minimal prompts, same principle of “build the world not the character” — and using it to run a small company. 4 agents: a developer, an SEO specialist, a copywriter, and a product manager. Real tools: GitHub, Supabase, Google Search Console, DataForSEO. Real product: a website they build and grow autonomously. The agents have daily standups (conversation rounds), then go into deep work sessions where they spawn actual Claude Code processes that write real code, real content, real SEO analysis. The social layer provides institutional knowledge — what Elena mentioned about keywords at Monday’s standup influences how Marco builds features on Wednesday. No ticket captured that. It was a sentence over coffee. Let me be honest about the bet: a single-shot agent with a human carefully aligning the prompt will always beat this on any specific task. I know that. That’s not what I’m testing. The bet is that these agents can run a company completely autonomously over days and weeks — shipping code, writing content, growing traffic — without a human ever defining the workflow. Not better than human-directed agents. Autonomous where human-directed agents can’t be, because no human is in the loop at all. I’m not saying it will work. I’m saying the apartment building proved that the social layer works. Now I want to see if the productive layer works too. On cost Yes, running this on Sonnet 4.6 is expensive. I’m currently validating with Claude Code because it’s the fastest iteration path — I have a subscription and can test things in minutes. This is the validation phase, not the production architecture. The engine is model-agnostic. One line in .env swaps the model. The migration path is already clear: OpenCode (95K GitHub stars) as the open-source CLI agent replacing Claude Code for deep work sessions MiMo-V2-Flash — $0.10 input / $0.30 output per million tokens. Competitive with GPT-5 on coding benchmarks. Built explicitly for agentic tool-calling workflows. DeepSeek-V3.2 — MIT license, frontier reasoning, runs on self-hosted infra. Free if you have the GPUs. GLM-4.7 — Multi-level thinking architecture designed for multi-step agents. Compatible with Claude Code, Cline, and OpenCode out of the box. Qwen3-Coder — 256K context, 100+ programming languages, agentic workflows. Open source. At MiMo-V2-Flash pricing, the social simulation runs at roughly $0.50-1.00 per simulated day instead of ~$5-10 on Sonnet. Deep work sessions would cost pennies. The cost problem is real today but it’s an engineering problem, not an architectural one. The engine doesn’t care which model fills the prompt. submitted by /u/Illustrious-Bug-5593

Originally posted by u/Illustrious-Bug-5593 on r/ClaudeCode