Collaborators & Presence
Invite people to a project, give them a lane, and see each other's cursors live while you edit.
A project can have a team. You invite people, give each a role, and when you're in the editor at the same time you can see where everyone is.
Collaboration is a paid feature
Inviting collaborators, and every collaborator, repository, and commit request, requires an active paid plan on the project owner's account. The check runs on every request, not just at invite time, so if the owner's plan lapses an already-accepted collaborator loses access to the project until the plan is active again. Owning and editing your own projects stays free.
Inviting people
Invite a collaborator to a project by their GitHub username or their email. Klipeo creates a shareable invitation link where they can Accept or Decline once they're signed in. Copy that link from the collaborator list and send it to them; email invitations are also sent automatically when email delivery is configured.
Pick a role and send the invite. For a GitHub username, Klipeo creates a pending repository invitation with push access. The Klipeo link is good for 14 days.
They open the Klipeo link. GitHub invitations require the matching connected GitHub account; email invitations require the matching signed-in Klipeo email.
When they accept in Klipeo, Klipeo accepts that exact pending GitHub invitation and only then marks the project membership as accepted.
The collaborator list shows both the Klipeo membership state and whether GitHub access is pending, active, failed, or removed. You can retry a failed GitHub invite, re-invite someone who declined or was removed, and remove a collaborator at any time. Inviting is rate-limited to 30 invites a minute per signed-in account, so a runaway script can't spam anyone.
Klipeo only removes repository access that it created. If someone already had access before the Klipeo invite, declining or removing the Klipeo membership leaves that independently managed GitHub access alone. If GitHub is temporarily unavailable, Klipeo leaves the membership recoverable instead of claiming access was removed.
Roles
Each collaborator gets two labels:
| Label | Meaning |
|---|---|
| Lane | Editorial focus: Lead, Video & cuts, Audio, and so on |
| Access | What they can change: Editor, Commenter, or Viewer |
Lane roles describe what part of the edit someone owns. Access roles enforce permissions:
| Access | Can edit the composition | Can comment in Review |
|---|---|---|
| Editor | Yes | Yes |
| Commenter | No | Yes |
| Viewer | No | No |
Lanes stay advisory
Lane roles still describe editorial focus for the Collaboration dock. Access roles are what actually gate saves, git commits, Liveblocks write access, and Vibe publication.
Anyone who has accepted an invite can pull main. Committing needs Editor access:
a Commenter or Viewer who tries gets a 403 with "Editor access required".
Live presence
When more than one of you is in a composition, the editor header shows an active
editors chip: up to four avatars, plus a +N when there are more. Each person gets
one of six accent colors, and you'll see their playhead cursor on the timeline at
whatever position they're playing from.
Your editor sends a heartbeat every 5 seconds, and someone drops off the list about 30 seconds after their last one, so a tab that goes quiet or a person who closes the editor disappears shortly after.
Presence vs history
Presence is the live picture of who's here this second. The lasting record of who changed what lives in the project's GitHub history, in branches and commits. The two work together: edit live, then publish through a pull request.