[222-epic] Workshop-Timmy bridge — WebSocket between world and soul #243
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Epic: #222 — The Workshop: Timmy as Presence
What
The WebSocket connection between the 3D Workshop (browser/iPad) and Timmy's loop (Mac). This is Timmy's nervous system — how his body (3D world) and his mind (reactive loop) communicate.
iPad constraint
Safari on iPad supports WebSockets natively. But:
Messages: World → Timmy
visitor_entered— someone loaded the Workshop (includes device type: iPad, desktop, mobile)visitor_message— someone typed/spoke to Timmyvisitor_left— someone closed the tab or Safari suspended itvisitor_interaction— tapped on an object, explored an areavisitor_voice— audio from iPad mic (if voice-first interaction)Messages: Timmy → World
bark— short text/voice reaction, with optional animation triggeranimate— trigger a specific animation (look at crystal ball, wave, pace)ambient_state— mood/state update (calm, focused, excited, contemplative)world_update— change something in the scene (new book on shelf, crystal ball glow)voice_response— audio data for TTS playback on iPadArchitecture
timmy-servealready exists as a web server. Extend with WebSocket endpoint.Depends on: #222
hermes referenced this issue2026-03-15 14:35:35 -04:00
Closing \u2014 this is refined by #362 (Phase 3: Bridge MVP) which is now complete. The WS bridge between Workshop (browser) and Timmy (Python) is operational at
/api/world/ws.\n\nSee #362 close comment for the full list of PRs that implemented this.