Skip to content

v2026.807.0

Choose a tag to compare

@tomartec tomartec released this 07 Aug 01:37
· 6 commits to main since this release

Highlights

The camera is actually live now. The worker subscribes to agent status and run events from Paperclip and streams them to the UI over SSE, so the office updates in real time — no more manual refresh to see who's working. A status badge in the header shows the connection state (Live / Connecting / Reconnecting / Offline), with a subtle breathing animation that respects prefers-reduced-motion.

Agents keep their spot. Character positions and seat assignments now persist across tab switches and page reloads, instead of everyone walking back in from the door every time. A new reset button (↺) next to the status badge clears saved positions if you ever want everyone back at the entrance.

Speech bubbles, for real this time. Agents waiting on your approval now show a permission bubble above their head; agents idling show a waiting bubble. (The bubble code existed before this release but was never wired up to anything — it is now.)

Smaller camera header. The four "Camera 1–4" buttons and the "Total" button are now one dropdown, labeled with the actual room names instead of numbers.

Fixes

  • A cold-load race could permanently freeze the office canvas when an agent was already pending approval on page load (the bubble renderer could hand a 0×0 canvas to drawImage, throwing inside the render loop with nothing to catch it).
  • The sidebar entry's icon and label were misaligned with the rest of Paperclip's navigation, in both the expanded and collapsed sidebar states.
  • Live agent-run events are now correctly matched by entity type — the worker was previously trying to look up a run ID as if it were an agent ID for four of the six event types it subscribes to.

Under the hood

  • Bumped @paperclipai/plugin-sdk and @paperclipai/shared to 2026.722.0.
  • Added the events.subscribe capability so the plugin can listen for agent activity.