Access control — roles, permissions, profiles, grants, membership access, and entity-scoped authorization. Use when asked to 'assign permissions', 'create roles', 'set up profiles', 'grant access', 'permission defaults', 'admin vs owner', 'membership permissions', 'effective permissions', 'revoke access', 'role hierarchy', 'custom roles', 'profile bundles', 'default profile', 'entity-scoped permissions', 'org permissions', 'app permissions', 'permission resolution', or when working with the access control model in blueprints or the ORM.
Installation
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Access control — roles, permissions, profiles, grants, membership access, and entity-scoped authorization. Use when asked to 'assign permissions', 'create roles', 'set up profiles', 'grant access', 'permission defaults', 'admin vs owner', 'membership permissions', 'effective permissions', 'revoke access', 'role hierarchy', 'custom roles', 'profile bundles', 'default profile', 'entity-scoped permissions', 'org permissions', 'app permissions', 'permission resolution', or when working with the access control model in blueprints or the ORM.
metadata
{"author":"constructive-io","version":"1.0.0"}
Constructive Access Control
The access control model — how users get permissions, how roles and profiles organize them, and how access composes across scopes. This skill covers the semantic layer: what access means in a Constructive app, how to configure it via blueprints and the ORM, and how the different layers (roles, profiles, grants, defaults) compose into effective permissions.
When to Apply
Use this skill when:
Defining what permissions users should have in an app
Creating custom roles via profiles (Editor, Viewer, Manager, etc.)
Configuring which permissions new members receive automatically
Understanding how admin/owner/member roles differ
Granting or revoking permissions for individual members
Setting up entity-scoped access (app vs org vs custom entity)
Assigning profiles to memberships via invites or direct assignment
Every entity type automatically gets a permissions_module and memberships_module. Setting hasProfiles: true additionally provisions the profiles system for that scope.