Team
Team is where the office roster lives — and where you invite new teammates to the CRM or the portal.
The screen
Section titled “The screen”Three cards, in order.
- Active staff. Every current staff member, their avatar, their email and their role badge.
- Pending invites. Anyone who has been invited but hasn’t yet signed in. Each row shows the email, who invited them (the audit note), when the invite went out, and two actions for admins: Resend and Revoke.
- Past invites. A short list of accepted and revoked invitations. Where an invite has been accepted and the person has set a display name on their profile, the past-invite row updates to show that current name rather than the one on the original invitation.
The three roles
Section titled “The three roles”- Admin — full access to the CRM and the portal.
- Staff — office tools in the CRM; same portal access as admins (today, that is the “Staff view coming” holding card).
- Mentor — portal only, scoped to their own cohorts. No CRM access.
Inviting someone
Section titled “Inviting someone”Only admins can send invitations. The button sits in the top-right corner of the page — Invite teammate. The form asks for an email, a role, and an optional note. The note is for the audit trail only; the invitee doesn’t see it.
Behind the scenes, the invite is handled by an edge function called
invite-admin. It drops a row into staff_invites, calls Supabase to
mail the magic-link, and the moment the invitee clicks that link, a
trigger links the new auth user to the pending invite and marks it
accepted. The person then appears on the Active staff list on their
next visit.
What is coming
Section titled “What is coming”A couple of pieces of this page are still to build:
- Role change in place. Right now, to change a teammate’s role, an admin revokes the current invite and sends a new one. A per-row role selector is coming.
- Deactivate and delete. No buttons for these yet. For now, revoke the person’s invite — if their account still exists, use the database to deactivate it. A proper “Deactivate” button is on the Coming later list.
Next: System Health.

