Labs and roles
Inside an organisation, labs and roles help you manage people and permissions cleanly.
They exist to make collaboration scalable.
Instead of assigning access individually for every repository, you group people and assign permissions once.
Labs
A lab is simply a group of users.
It does not store data. It does not control history. It only groups people.
Examples:
- Strain engineering team
- Sequencing team
- Analysis team
- Students
- Supervisors
If five people always work together, they should probably be one lab.
Why labs are useful
Without labs:
You must manually add users to every project and repository.
With labs:
You add the lab once → everyone inside gets access.
This is faster, safer, and easier to maintain.
Especially useful when:
- onboarding new students
- removing members
- rotating staff
Roles
Roles define what actions someone is allowed to perform.
Seeing something is different from modifying it.
Common roles
Read
→ view only
Write
→ make commits and changes
Admin
→ manage settings, access, deletion
How labs and roles work together
Labs group people.
Roles define permissions.
Example:
Sequencing lab + Write role
→ everyone in sequencing can commit
Supervisors + Admin role
→ supervisors manage access
Best practice
Use:
Labs → for grouping people
Roles → for controlling actions
Keep permissions simple and predictable.