Repository navigation
A living, immersive world: the town, real agents in it, and the founder's direction - #3
Merged
Merged
Conversation
- events: world commands with allowed sources, world events with provenance, snapshots, SSE frames, agent and dispatch DTOs - town: Runloop Commons layout and interiors, compile, navigation, lots, deterministic decoration - sim: needs, schedules, utility decisions, occupancy, interactions, grounded explanations, replay; pure and deterministic - world-engine: shared Grid interface Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0181mTRVEPBcM3fNxRSriJFw
- world host: ticks, speeds, persistence, checkpoints, catch-up after restart, world HTTP and SSE - agents: registry, binding by dispatch session or workspace root, arrivals and claim, honest health, capabilities, projector from run events to world commands - dispatch: approval-gated headless Claude Code (single-use nonce bound to the exact command, Origin checks, env allowlist, process-group cancel, audit log); adds --plugin-dir unless the tracer is installed - migrations 3 to 5; RUNLOOP_WORLD=off keeps the runtime without the world Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0181mTRVEPBcM3fNxRSriJFw
- '/' is the living town: day and night, residents with a shader rig and LOD, building interiors, agent headquarters with the run diorama - world bar with clock and speed, mode rail, context panels (resident Why from recorded decisions, buildings, agents), attention ticker, Cmd-K, entity directory and 2D map fallback - Add to World flow, Assign task dialog showing the exact command, model, budget and tools - scripts: perf-town budgets, end-to-end world check, screenshots of world states Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0181mTRVEPBcM3fNxRSriJFw
- README rewritten for the town; architecture overview and event model cover the world layer - decision log DL-009 to DL-012 (the light-theme entry moves to DL-013) - verification report section 7: real Claude Code join and dispatch ($0.027), restart identity, perf and sim numbers, open gaps - current state, TASKS Milestone W, CHANGELOG, new town images Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0181mTRVEPBcM3fNxRSriJFw
- dispatch approval happens on a page the runtime serves itself (/approve/:previewId); other origins get no nonce, refused attempts are audited - dispatch output goes to files, so a runtime restart no longer kills a writing task; adopted orphans keep their timeout and count as running - health reads live only when hooks arrived in the last 5 minutes; --plugin-dir rule ignores Runloop's own dispatches - HTTP world commands limited to clock.set and building.set_open; internal command-id prefixes rejected - interactions pruned after 3 sim days (with an index); unique world ids and world-scoped SSE ids; a clock frame follows every speed change - compare: caveats for incomplete runs, different outcomes and test scope; pauses excluded from duration; live runs not stated as final; dispatched cost exposed Studio still posts the approval nonce directly and gets 403 approve_in_runtime until the immersive Studio opens the approval page (next commit). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0181mTRVEPBcM3fNxRSriJFw
Snapshot of the immersive pass while its integration step runs; typecheck, tests, build, plugin validate and the scripted demo pass on exactly this tree. - full-bleed world on '/': no sidebar; perspective game camera with pan inertia, zoom to cursor, rotate, tilt, WASD and touch, follow and fly-in - surroundings to the horizon: river, farms, forest, hills, haze, clouds; decorative ambient life away from agent buildings - game HUD: status chip, find, clock and speed, minimap, hotbar, notifications, Esc menu with settings - anchored cards for residents, buildings and agents; Add to World by picking a lot in 3D; Assign task opens the runtime's approval page - trace, compare, sessions and connections open as overlays over the live world; legacy routes and deep links map onto them - synthesized soundscape (Web Audio): ambient bed by camera and time of day, UI sounds, cues for real agent events only Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0181mTRVEPBcM3fNxRSriJFw
- integration: overlays and sound wired into the HUD; Assign task opens the runtime's approval page; phone fly-in framing; e2e and screenshot scripts work by day and night - game-feel and honesty reviews: 17 verified findings fixed, including - Add to World hands over to the agent's live card instead of saying 'waiting' forever - double-click flies into a building even when the card opened under the cursor - modes leave the building first; cards sit beside what they describe - a cleanly ended session is a quiet notable, not '1 need you'; the strip says 'Live' only when the agent is live - phone pinch on the HUD zooms the town, focus returns to what opened a card, bad lot links explain why - docs: DL-014, design system, world vision, README controls and images, verification report sections 9 and 10, current state, TASKS, CHANGELOG Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0181mTRVEPBcM3fNxRSriJFw
- film/ is a standalone project (own lockfile, not in the workspace) for the motion-reel pipeline - exporters build the film's town, residents and agent session from the real packages: same geography, residents on their engine routes, a recorded Claude Code session through the runtime's ingest - synthesized 96 BPM score on a 30-bar grid with teaser and seamless loop cuts - style guide and a 25-shot list on the grid, with the required real captures and the brief items changed for truth - first town set and a render-speed probe (software WebGL) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0181mTRVEPBcM3fNxRSriJFw
- the direction table's current foundation for product experience now names the immersive in-world prototype - add the missing blank line before Security notes Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0181mTRVEPBcM3fNxRSriJFw
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this brings to
mainThe world slice (Milestone W)
packages/townandpackages/sim: Runloop Commons, 80 simulated residents with needs, schedules, decisions, friendships and a grounded "Why"; deterministic and persistent./api/world, SSE).Review fixes in the runtime, engine and compare
The immersive world (Milestone I, DL-014)
/is the world edge to edge, with land to the horizon.README
Film prep (
film/)Verification
Run on the final tree before pushing:
pnpm install --frozen-lockfilepnpm -r typecheckpnpm testpnpm buildclaude plugin validate --strict integrations/claude-code-pluginperf-townReal Claude Code spend while building the world slice: $0.027. Full evidence is in
docs/status/verification-report.md§7–§10.Known gaps
Generated by Claude Code