# Show who else is on a strategy and their live cursors · dara/icarus

[View on GitCafe](https://git.cafe/dara/icarus/commit/4c3ef86f8e60d9bddd4ad26cba279cd1f71638fb)

Repository: [dara/icarus](https://git.cafe/dara/icarus)

Visibility: public

Requested revision: 4c3ef86f8e60d9bddd4ad26cba279cd1f71638fb

Requested commit: 4c3ef86f8e60d9bddd4ad26cba279cd1f71638fb

Commit: 4c3ef86f8e60d9bddd4ad26cba279cd1f71638fb

Tree: b9aadd4e2b5837d2c5a564d4c4bc156c4f8c7b88

Author: Dara Adedeji

Committer: Dara Adedeji

## Message

```
Show who else is on a strategy and their live cursors

Each cloud strategy gets a presence room: one Cloudflare Durable Object
(presence/) that relays who is connected and where their cursor is, and
stores nothing. Convex decides who may join: presence:issueRoomPass checks
viewer access and signs a two-minute pass the Worker verifies with a shared
secret. Clients renew every minute, so revoked access drops out within one
pass lifetime.

The editor's window strip shows teammates' avatars, ringed in a per-person
color. Their cursors appear on the map when they are on the page you are
viewing, in canonical coordinates so zoom, window size and side don't
matter. Cursors are throttled to 20 updates a second and never enter the
op queue or the sync status. Local strategies have no room.

Deploy Web now deploys the presence Worker before the web build, and CI
runs its tests in the Workers runtime.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

```

## Parents

- [a8b34ce51ed0796c1dd72f696628d740c5def698](https://git.cafe/dara/icarus/commit/a8b34ce51ed0796c1dd72f696628d740c5def698?format=markdown)

[Source at this commit](https://git.cafe/dara/icarus/tree/4c3ef86f8e60d9bddd4ad26cba279cd1f71638fb?format=markdown)
