openpencil/packages/docs
Danila Poyarkov 749d7baec9
feat: show AI agents on the canvas and to collaborators (#803)
* feat(canvas): draw agents' cursors as outlined sparkles

Editor state's remoteCursors becomes presenceCursors with a kind, since the list now includes local agents. People keep the filled arrow; an agent is a sparkle outlined in its owner's color, with an outlined name pill, so whose agent it is reads from the outline. Cursor drawing moves out of the pen overlay into canvas/overlays/presence.ts.

* feat(app): publish AI agent presence to collaborators

The built-in chat now appears as an agent with a callsign while it replies, at the nodes its tools touch on the run's page, and goes idle (off the canvas) when the reply ends. Agents live in a per-document presence registry and are published in their owner's awareness state, so collaborators see each other's agents in the owner's color; the payload is metadata only.

Peer awareness was cast without checks. It is now validated with Valibot, invalid fields are dropped rather than the peer, and names, selections, and agent counts are bounded.

* docs(collaboration): list the agent model among shared presence

* test(vue): a canvas story for presence cursors

Storybook now serves CanvasKit, so a story can render the real canvas:
people's arrows and agents' outlined sparkles, with controls for names,
colors, and zoom.

* feat(canvas): mark agents with a sparkle label instead of a sparkle cursor

A sparkle on its own did not read as a pointer. Agents now point with
the same filled arrow as people, in their owner's color, and their
outlined label starts with a sparkle.
2026-10-03 14:01:36 +04:00
..
.vitepress feat(fig): occurrence-scoped instance interpretation as the single .fig reader 2026-10-01 11:20:27 +04:00
de feat(figma-api): add detachInstance() to instances (#778) 2026-09-30 05:19:11 +04:00
development feat(fig): occurrence-scoped instance interpretation as the single .fig reader 2026-10-01 11:20:27 +04:00
es feat(figma-api): add detachInstance() to instances (#778) 2026-09-30 05:19:11 +04:00
fr feat(figma-api): add detachInstance() to instances (#778) 2026-09-30 05:19:11 +04:00
it feat(figma-api): add detachInstance() to instances (#778) 2026-09-30 05:19:11 +04:00
overview fix: use official Homebrew cask installation guidance (#712) 2026-09-17 13:36:17 +03:00
pl feat(figma-api): add detachInstance() to instances (#778) 2026-09-30 05:19:11 +04:00
programmable feat: show AI agents on the canvas and to collaborators (#803) 2026-10-03 14:01:36 +04:00
public feat: refresh branding with generated platform icons (#707) 2026-09-16 11:54:07 +03:00
reference feat(cli): export Storybook stories beside many documents (#761) 2026-09-30 22:05:51 +04:00
ru feat(figma-api): add detachInstance() to instances (#778) 2026-09-30 05:19:11 +04:00
user-guide feat(app): jump between pages from the command palette (#801) 2026-10-01 20:26:35 +04:00
AGENTS.md build(tools): group tools by role and gate them like the rest of the repo (#791) 2026-09-30 05:00:31 +04:00
getting-started.md fix: explain unsupported browsers instead of a blank window (#745) 2026-09-22 14:40:59 +04:00
index.md
package.json build(tools): group tools by role and gate them like the rest of the repo (#791) 2026-09-30 05:00:31 +04:00