Roles
How roles are assigned
Role assignment depends on theAUTH_MODE the control plane is configured with.
AUTH_MODE=secret (JWT shared secret)
When minting tokens withAUTH_MODE=secret, include a roles claim in the JWT payload:
JWT_SECRET using HS256 (or the algorithm configured for your deployment).
AUTH_MODE=jwks (external identity provider)
When usingAUTH_MODE=jwks, roles are read from the roles claim in the JWT issued by your identity provider. Configure your IdP to include the roles array in the token:
- Auth0: Use a post-login Action or Rule to add
rolesto the token namespace. - Okta: Add a custom claim in the authorization server that maps group membership to the
rolesarray. - Generic OIDC: Map user attributes or group membership to a
rolesclaim in the token transformation layer.
roles and its value must be an array of strings matching the role names in the table above.
Role summary by capability
Creating HITL escalations requires only a valid authenticated credential — no specific role beyond basic authentication is needed. Any actor (including agents with
operator role) may open an escalation; only holders of hitl:approve or admin may vote on one.