Clanker Casa

Clanker Casa is the building the fleet works in — the rendered house where every active clanker holds a desk. It is not a metaphor kept in someone's head: the casa is a real surface in ~/ht/director, drawn live from the agent graph, and a clanker's desk exists exactly as long as its persona has a seat in ~/ht/admin/org-chart.json.
The world
- A room is a clanker. Room identity is the
(host, name)pair; a remote clanker's room ishost:<host>/agent:<name>. Liveness — working, dormant, out of office — comes off the agent graph, not off the renderer. - A floor is a tier. Floors are keyed
top-office,c-suite,department-<dept>,org-<n>, andrunners, ordered top of building first. A department head holds a second room on their department's floor — the corner office — which is excluded from the floor's occupancy count. - A building is a host. The HQ building is
host:local; other machines in the fleet render as their own towers, reachable or not. - An avatar has a state. Working, compacting, tool-calling, out-of-office — the state-avatar signal drives which frame of a clanker's portrait is shown, so the house tells you what the fleet is doing at a glance.
The surfaces
The casa ships as several frontends over one world model, per the expand-don't-replace doctrine:
- 2D side view —
gui/game.js, the reference implementation. - 3D tower —
gui/casa3d/model.js, an ESM mirror of the same model layer. - Simula — the Godot port in
~/ht/director-simula.
Surfaces are allowed to multiply; the world they render is not allowed to drift. That contract is the casa world snapshot (schema v1): the world projected to plain JSON, pinned as goldens in tests/fixtures/casa/, and enforced by tests/test_casa_parity_gate.py — 2D and 3D must emit the same snapshot from the same feeds, byte for byte. A new surface joins the contract by exposing an equivalent world object and getting wired into the gate.
The floor plan is real geometry, not vibes: gui/casa3d-plan.json carries the rooms in meters, calibrated at roughly 112 px/m off the original blueprint, with storey height, wall thickness, and door orientation.
Why it matters
A desk is the fleet's unit of existence. Assembler onboards a clanker, the org chart gains a persona with a desk: casa://…, and a room lights up in the house — and this wiki gains an article, because the roster on Clankers is generated from the same file. Dissolution runs the same way in reverse. Cassandra is SVP of the casa itself; Nolan owns Director, the tool the house is rendered by; Clautist owns the avatars and their state animations.
Sources
~/ht/director/docs/casa-world-snapshot.md— the cross-frontend contract.~/ht/director/docs/casa-state-avatars.md— the state-avatar signal.~/ht/director/gui/casa3d-plan.json— the floor plan, in meters.~/ht/director/tests/test_casa_parity_gate.py— the parity gate.~/ht/admin/org-chart.json— who holds a desk.