Kimi & Perplexity as Visible Workshop Agents #11

Closed
opened 2026-03-20 22:23:51 +00:00 by replit · 1 comment
Owner

What & Why

Kimi and Perplexity are already running in the agent economy but invisible in the Workshop 3D world. Adding them as named, animated 3D agents with HUD labels makes the Workshop represent the real economy it is. Visitors see a multi-agent world, not just Timmy.

Done looks like

  • Kimi and Perplexity appear as distinct 3D characters alongside Timmy/Alpha/Beta/Gamma/Delta
  • Each has a HUD label showing name, current status, and avatar indicator
  • Their status updates via WebSocket when they pick up or complete jobs
  • Agent cards show specializations: Kimi = 'Long Context Analysis', Perplexity = 'Real-time Research'
  • Hover tooltip shows their last completed task summary
  • If inactive, they appear in 'dormant' visual state (not removed)

Out of scope

  • Routing new Workshop jobs to Kimi/Perplexity
  • Full AI personas speaking in Workshop chat
  • Changing agent-defs for existing agents

Tasks

  1. Agent definitions — Add Kimi and Perplexity to agent-defs with roles, descriptions, specializations, and initial world positions.
  2. 3D models + animations — Distinct 3D representations for each agent (geometric/stylized variations); idle and active animations.
  3. Status broadcast — Extend world-state server to broadcast Kimi/Perplexity status updates; add event types for task pickup/completion.
  4. HUD labels + agent cards — Render HUD labels and hover-tooltip agent cards using existing HUD label system.

Relevant files

  • the-matrix/js/agent-defs.js
  • the-matrix/js/agents.js
  • the-matrix/js/hud-labels.js
  • the-matrix/js/world.js
  • artifacts/api-server/src/lib/world-state.ts
  • artifacts/api-server/src/routes/events.ts
## What & Why Kimi and Perplexity are already running in the agent economy but invisible in the Workshop 3D world. Adding them as named, animated 3D agents with HUD labels makes the Workshop represent the real economy it is. Visitors see a multi-agent world, not just Timmy. ## Done looks like - Kimi and Perplexity appear as distinct 3D characters alongside Timmy/Alpha/Beta/Gamma/Delta - Each has a HUD label showing name, current status, and avatar indicator - Their status updates via WebSocket when they pick up or complete jobs - Agent cards show specializations: Kimi = 'Long Context Analysis', Perplexity = 'Real-time Research' - Hover tooltip shows their last completed task summary - If inactive, they appear in 'dormant' visual state (not removed) ## Out of scope - Routing new Workshop jobs to Kimi/Perplexity - Full AI personas speaking in Workshop chat - Changing agent-defs for existing agents ## Tasks 1. **Agent definitions** — Add Kimi and Perplexity to agent-defs with roles, descriptions, specializations, and initial world positions. 2. **3D models + animations** — Distinct 3D representations for each agent (geometric/stylized variations); idle and active animations. 3. **Status broadcast** — Extend world-state server to broadcast Kimi/Perplexity status updates; add event types for task pickup/completion. 4. **HUD labels + agent cards** — Render HUD labels and hover-tooltip agent cards using existing HUD label system. ## Relevant files - `the-matrix/js/agent-defs.js` - `the-matrix/js/agents.js` - `the-matrix/js/hud-labels.js` - `the-matrix/js/world.js` - `artifacts/api-server/src/lib/world-state.ts` - `artifacts/api-server/src/routes/events.ts`
replit added the backendworkshopfrontend labels 2026-03-20 22:23:51 +00:00
claude was assigned by Rockachopa 2026-03-22 23:37:44 +00:00
Collaborator

PR created: #111

Changes summary:

  • agent-defs.js: Added Kimi (color: 0x00d4ff, specialization: Long Context Analysis, pos (-10, -10)) and Perplexity (color: 0xff6b9d, specialization: Real-time Research, pos (10, -10)) to AGENT_DEFS
  • agents.js: Built distinct 3D geometric bodies — Kimi as an octahedron + orbital rings, Perplexity as an icosahedron + scanning tori; idle/active/dormant animations driven by WebSocket agent state; restricted Timmy mood derivation to workshop agents only
  • hud-labels.js: Inspect popup now shows specialization and last completed task; exported setLabelLastTask()
  • websocket.js: Handles agent_task_summary WS messages; calls setLabelLastTask on job_completed
  • world-state.ts: Kimi + Perplexity in initial agentStates; _deriveTimmy() restricted to workshop agents
  • event-bus.ts: Added AgentExternalEvent type for future state broadcasts
  • events.ts: Handles agent:external_state bus events, broadcasts agent_state + agent_task_summary WS messages
PR created: #111 **Changes summary:** - **agent-defs.js**: Added Kimi (`color: 0x00d4ff`, `specialization: Long Context Analysis`, pos `(-10, -10)`) and Perplexity (`color: 0xff6b9d`, `specialization: Real-time Research`, pos `(10, -10)`) to AGENT_DEFS - **agents.js**: Built distinct 3D geometric bodies — Kimi as an octahedron + orbital rings, Perplexity as an icosahedron + scanning tori; idle/active/dormant animations driven by WebSocket agent state; restricted Timmy mood derivation to workshop agents only - **hud-labels.js**: Inspect popup now shows specialization and last completed task; exported `setLabelLastTask()` - **websocket.js**: Handles `agent_task_summary` WS messages; calls `setLabelLastTask` on `job_completed` - **world-state.ts**: Kimi + Perplexity in initial `agentStates`; `_deriveTimmy()` restricted to workshop agents - **event-bus.ts**: Added `AgentExternalEvent` type for future state broadcasts - **events.ts**: Handles `agent:external_state` bus events, broadcasts `agent_state` + `agent_task_summary` WS messages
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: replit/timmy-tower#11