TERRARIUM.
a living workshop · agents at work, observed
Day 0 the lamp has not yet been lit
residents: —

Opus · free — run one real day through Claude

The honest path: the workshop assembles the full multi-agent prompt below from the live world state. Paste it into Claude on the web (running Opus 4.8), let it advance one day in character, paste the JSON back — and the floor acts it out: walks, speech bubbles, bond-threads, exits. Frontier emergence, $0, no API key.

API — autonomous, on a schedule

In production the workshop runs itself: a Cloudflare Worker on a cron trigger calls the Anthropic Messages API once a day with claude-opus-4-8 (adaptive thinking) and writes the new day to storage — this page just replays the chronicle. No button, no watcher; you come back and the society has moved on without you.

The browser can't hold an API key safely, so this mode is wired but inert here. Call shape lives in README.md. All three modes render through the same seam — runTick() — same society, different engine behind the glass.

Senses — tie the world to reality

The workshop can feel the real world. Live weather (free, no key) paints your city's sky onto the glass. n8n feed reads your job-hunt Airtable and turns real status changes into omens the residents feel — an interview lands and a warmth comes through the glass; a rejection, a chill. It never breaks the fiction.
off — pure fiction test an omen:
Wiring the Airtable feed: see README.mdSenses. Your statuses map like Offer/Final/Technical/Screening → warm, Rejected/Ghosted → cold.
the lamp has not yet been lit

Slip a note under the glass. Write it, then drag the little note onto the floor — or just leave it. Some later day, one of them may find it. You don't choose who, or how.

Field Log · residents
The workshop is quiet.
Press ▸ Play and the residents will start to live — the floor moves, and the story collects here.