Orange pixel cat spawns at a random walkable tile and continuously
wanders around the office at 60% walk speed with short pauses.
Cat cannot be selected or assigned to seats.
- Add i18n title "OpenClaw Agents 两室一厅办公室" to pixel office page
- Replace PC sprites with 💻 emoji, camera-only flash effect
- Add rotation field to PlacedFurniture/FurnitureInstance for emoji rotation
- Adjust PC positions for better visual alignment with desks
Idle characters now have a 40% chance to walk to nearby furniture
(water cooler, bookshelf, whiteboard, fridge) and linger for 5-15s.
Agents spawning from offline walk in from doorway tiles instead of
appearing directly at their seat.
Add emoji-based furniture rendering support. Camera placed at center of
right room desk with a radial flash effect every 10 seconds. Fix surface
item z-sorting for fractional positions.
- Add i18n for agent states (working/idle/offline/waiting) in zh/en
- Working tag: green with pulse animation
- Idle tag: yellow with pulse animation
- Offline tag: slate gray, clearly visible
- Working character label: green with breathing blink effect
- Add TABLE_WOOD_SM_HORIZONTAL type with transposed sprite
- Left room: 4 horizontal desks in 2x2 grid with benches and PCs
- Support fractional furniture positions (half-tile offset for centering)
- Round seat coords for pathfinding while keeping fractional x/y for visual alignment
- Use fillRect for floor tiles to eliminate hairline seams between tiles
- Add subtle half-tile grid overlay for ceramic tile floor effect
- Auto-fit zoom uses 0.5-step floor for pixel-perfect screen fit
- Add layout editor with floor/wall paint, erase, furniture place/move/rotate/delete tools
- Add editor state management (undo/redo, selection, drag, ghost preview)
- Add EditorToolbar and EditActionBar UI components
- Add layout persistence API (GET/POST to ~/.openclaw/pixel-office/layout.json)
- Add notification sound system (Web Audio API ascending chime on agent completion)
- Add sub-agent visualization via session JSONL parsing
- Fix agent activity API to read from agents.list config and correct session paths
- Add agent name labels above character sprites in canvas renderer
- Add i18n translations for editor features (zh/en)