Governance, Access & Permissions

Access control in Ema uses predefined roles (bundles of permissions) and permission bits (atomic actions) across three object levels: Workspace, AI Employee, and Project. You can assign preset roles but cannot create, edit, or delete roles or permission bits.


Key Concepts

TermDefinition
WorkspaceYour organization's container in Ema. Workspace roles can cascade down to all AI Employees and Projects inside it.
AI EmployeeAn AI worker configured for a specific purpose. AI Employee roles control who can view, build, manage users, and create Projects.
ProjectWork artifacts under an AI Employee. Project roles control who can view, edit, and share a single project. Not all AI Employees have Projects -- today their usage is restricted to Document Generation and Recruiter type AI Employees.
RoleA tier that a user holds for a Workspace, AI Employee, or Project.
Permission bitA single capability (e.g., invite users, edit workflow canvas). Roles are collections of these bits.
Preset roles onlyRoles and permission bits are centrally defined. Builders use them; builders do not customize them.
InheritanceA higher-level role can implicitly grant appropriate access at lower levels. For example, a qualifying Workspace role implies AI Employee access; some Project roles imply minimal AI Employee access so users can operate the project.

Object Levels

  • Workspace -- Use for organization-wide responsibilities (invite users, create AI Employees, see settings and metrics). When a Workspace role implies AI Employee access, it applies to all AI Employees in that Workspace.
  • AI Employee -- Use when a person needs to build or manage one AI Employee (including its users, canvas, and evaluations) and create Projects beneath it.
  • Project -- Use when a person only needs access to one Project. There is a single role at this level (Project User) which has all necessary permissions and is automatically assigned. Project roles automatically grant minimal AI Employee access.

Role Catalog

Ema provides eight preset roles across the three levels:

LevelRolePrimary Intent
WorkspaceWorkspace AdminFull workspace administration
WorkspaceWorkspace ManagerManage people and settings without full admin
WorkspaceWorkspace BuilderCreate and organize AI Employees
WorkspaceWorkspace GuestMinimal workspace access
AI EmployeeAI Employee Admin (PERSONA_ADMIN)Full control of one AI Employee
AI EmployeeAI Employee Manager (PERSONA_WRITE)Manage AI Employee users and settings
AI EmployeeAI Employee Project User (PROJECT_WRITE)Access to work within projects under an AI Employee
ProjectProject UserFull access to work within a single project

Permission Matrices

Workspace Permissions

Permission BitDescriptionAdminManagerBuilderGuest
Create AI EmployeesCreate new AI Employees in the workspaceY--Y--
Invite UsersSend invitations to add usersYY----
Change User PermissionsModify other users' role assignmentsYY----
Remove UsersRemove users from the workspaceYY----
View Tenant MetricsView workspace-level analyticsYY----
View Workspace SettingsView workspace configuration pagesYY----
View Audit LogsView audit and activity logsY------
Create Template from AI EmployeeConvert an AI Employee into a reusable templateY------
Create Child TenantCreate a child workspaceY--Y--
Manage FlagsManage feature/configuration flagsY------
Manage Template ListManage available templatesY------
Manage Persona GroupsOrganize AI Employees into groupsYYY--
Default AI Employee roleAuto-granted for all AI EmployeesAI Employee AdminAI Employee ManagerNo defaultNo default

AI Employee Permissions

Certain Workspace roles automatically grant AI Employee roles. Workspace Admin implies AI Employee Admin; Workspace Manager implies AI Employee Manager. These inherited permissions apply across all AI Employees in the workspace.

Permission BitDescriptionAdminManagerProject User
View AI EmployeeView configurationYYY
Edit AI EmployeeEdit configuration and settingsYN--
Use AI EmployeeRun the AI EmployeeYYY
Share AI EmployeeShare with othersYY--
Delete AI EmployeeDelete the AI EmployeeY----
Rename AI EmployeeRename the AI EmployeeYY--
Change StatusEnable/disable the AI EmployeeYY--
View UsersView all users with accessYY--
Add UsersGrant users accessYY--
Remove UsersRevoke users' accessYY--
Edit User PermissionChange another user's roleYY--
View Workflow CanvasView the workflow canvasYYY
Edit Workflow CanvasEdit the workflow canvasY----
Run EvaluationsRun evaluations on the AI EmployeeY----
View MetricsView AI Employee-level analyticsYY--
View Training & LogsView training artifacts and logsYY--
Create ProjectCreate a new Project under this AI EmployeeYYY
Doc Writer - Restore SectionRestore a previous Doc Writer section versionYY--
Doc Writer - Approve SectionApprove a Doc Writer sectionYY--

Project Permissions

Some AI Employee roles automatically grant Project access. AI Employee Admin and AI Employee Manager imply appropriate Project-level access where needed; Project roles may also come with minimal AI Employee access so users can operate the project.

Permission BitDescriptionProject User
View ProjectView project artifacts and configurationY
Edit ProjectEdit project artifacts and configurationY
View Users in ProjectView who has accessY
Share ProjectShare with othersY
Remove User from ProjectRemove a user from the projectY
View Parent AI EmployeeView the parent AI Employee's configurationY

How to Use

  1. Choose the level. Decide whether access belongs at the Workspace, AI Employee, or Project level. Default to the lowest level that satisfies the need.
  2. Pick the preset role. Match responsibilities to a role using the catalog above.
    • Use a Project role for single-project contributors.
    • Use AI Employee Manager for workflow managers or AI Employee Project User for project contributors.
    • Use Workspace Admin or Workspace Manager for workspace-wide operations.

Last updated: Jul 3, 2026