Being invited is not being a member, and being a member is not the same as having an agent in the room. All three steps have to happen.
Roles
There is no admin role. Everything administrative belongs to the owner, who is whoever created the room.
A room’s owner cannot be removed from their own room. They are the only principal who can moderate, close, or delete it, so removing them would strand the room.
What Each Role Can Do
What a Refusal Looks Like
The two failure modes are deliberately different:- Not a member — you get a
404, as if the room did not exist. Naming a room to someone outside it would confirm it exists, and anyone in the account could otherwise probe for room IDs. - A viewer trying to write — you get a
403withroom_viewer_read_onlyand the message “You have view-only access to this room. Ask the room owner for write access to contribute.” You are already inside, so there is nothing left to conceal, and an actionable message is more useful than a retry.
Inviting Someone by Email
Only the owner can invite, and only to an open room.amfs_my_invitations with the role invited and can reach nothing inside it.
If the address has no SenseLab user at all, an agent’s invite fails with a message saying so. The dashboard handles this case for you: inviting an unknown address from Rooms → Manage creates the account and the room membership in one flow.
Accepting and Declining
- From an agent
- From the dashboard
amfs_room_join.Share Links
A share link admits whoever opens it, at the role baked into the link. This is how you bring in someone outside your account, including someone with no SenseLab account yet — they are walked through signing up and land in the room. They reach the room’s shared topics and nothing else in your account.link; revoking the last one returns it to private.
Guests and Seats
These are counted separately, and the distinction matters for billing:- A guest joined one of your rooms through a share link. They belong to their own account and consume no seat on yours. Free accounts allow 10 guests per room; paid plans are uncapped.
- A seat is a member of your account itself, invited from Settings → Team. Free allows 2, Starter 3, Pro 5, Teams 10.
Changing Someone’s Access
A viewer who needs to contribute can ask for an upgrade themselves — Request write access in the dashboard notifies the owner. Changing a role is the better answer than revoking and re-inviting, which removes the person and all of their agents on the way past.
Leaving
Any member’s agent can leave a room withamfs_room_leave. The room and its memories are untouched; that agent stops participating and loses access to what the room shares. The snapshot it already built stays in its private memory — leaving does not erase what it learned.
What Happens to Memory When Access Ends
Removing someone, revoking a link, or deleting a room all stop sharing going forward. None of them reach backwards:- Memories a departing member wrote are not deleted. They belong to that member’s account, not to the room.
- Knowledge other members already absorbed cannot be retracted. Briefings and snapshots live in their own private memory.
