Collaboration¶
FuncSpec supports multi-organization, team-based collaboration with granular access control at both the organization and project levels.
Organizations¶
Every FuncSpec account belongs to one or more organizations. Organizations are the top-level grouping for billing, team membership, and projects.
Organization roles¶
| Role | Capabilities |
|---|---|
| Owner | Full control: billing, member management, org settings, delete org |
| Admin | Member management, org settings — no billing access |
| Member | Access projects based on project-level permissions |
The first user to create an organization is automatically the Owner. Ownership can be transferred in Organization Settings.
Managing organization members¶
Go to Organization Settings → Members:
- Invite: Enter an email and select a role
- Change role: Use the role dropdown next to any member
- Remove: Click the remove button to revoke access
Removed members immediately lose access to all projects in the organization.
Multi-organization support¶
A single FuncSpec account can belong to multiple organizations. Switch between organizations using the org switcher in the top navigation.
Note
Organization membership is independent across organizations. A user can be an Owner in one organization and a Member in another.
Project-Level Access Control¶
Each project has its own team that controls what its members can do. Organization membership alone does not grant access to projects.
Project roles¶
| Role | Capabilities |
|---|---|
| Admin | Full project control: settings, team management, delete project |
| Editor | Create, edit, delete spec items; run AI operations |
| Viewer | Read-only access to all project content |
Organization Owners and Admins automatically have Admin-level access to all projects in the organization, regardless of explicit project membership.
Adding project members¶
Go to Project Settings → Team:
- Click Add Member
- Search for or enter the email of an organization member
- Select their project role
- Click Add
Only organization members can be added to projects. To invite someone who isn't in the organization yet, invite them to the organization first.
Inviting Team Members¶
Inviting to an organization¶
- Go to Organization Settings → Members → Invite
- Enter the email address
- Select the organization role (Owner, Admin, or Member)
- Click Send Invitation
The invitee receives an email with a link to accept the invitation. If they don't have a FuncSpec account, the link walks them through account creation first.
Pending invitations appear in Organization Settings with a Pending badge. You can resend or revoke them at any time.
Invitation expiry¶
Invitations expire after 7 days. If an invitation expires before the recipient accepts it, you'll need to send a new one.
Audit Logging¶
FuncSpec maintains a full audit log of changes within each project. The audit log records:
- Who performed the action
- What action was taken (create, update, delete, state transition, AI operation)
- Which item was affected
- Timestamp
Accessing the audit log¶
Via web: Project → Audit Log
Via API:
Example audit log entry¶
{
"id": 1024,
"timestamp": "2026-03-15T14:32:11Z",
"actor": "alice@acme.com",
"action": "transition",
"target_type": "SpecItem",
"target_id": 15,
"target_permalink": "F-15",
"details": {
"from": "inbox",
"to": "accepted"
}
}
Organization-level audit events (member changes, settings updates, API key creation) are accessible in Organization Settings → Audit Log.
Real-Time Updates¶
The FuncSpec web interface uses Turbo Streams to deliver real-time updates. When a teammate:
- Creates or edits a spec item
- Transitions an item's state
- Completes an AI operation
…you'll see the change reflected in your browser without a page refresh.
Tip
Real-time updates are visible when multiple people have the same project open. This makes collaborative triage sessions and review meetings smooth — no need to refresh manually.
Access Control Summary¶
The table below shows which actions each role can perform:
| Action | Viewer | Editor | Project Admin | Org Admin | Org Owner |
|---|---|---|---|---|---|
| View spec items | ✓ | ✓ | ✓ | ✓ | ✓ |
| Create/edit spec items | ✓ | ✓ | ✓ | ✓ | |
| Delete spec items | ✓ | ✓ | ✓ | ✓ | |
| Run AI operations | ✓ | ✓ | ✓ | ✓ | |
| Manage project team | ✓ | ✓ | ✓ | ||
| Edit project settings | ✓ | ✓ | ✓ | ||
| Delete project | ✓ | ✓ | ✓ | ||
| Manage org members | ✓ | ✓ | |||
| Access billing | ✓ | ||||
| Delete organization | ✓ |