# Communities, contexts, handles, roles, and invitations

## Context/platform lifecycle

- List/filter contexts and retrieve by ID, slug, or handle.
- Check handle availability and normalize handle rules.
- Create a context/platform with name, handle, description, icon, color, type, parent, Presences, visibility, wisdom, instructions, and creator.
- Edit, publish, unpublish, archive, deactivate, and delete.
- Join a public/direct-join context.
- Browse nested contexts/projects/gatherings.

## Nested projects/gatherings

- List by parent, retrieve by ID or handle, create, update, publish, unpublish, archive, and delete.
- Associate Presences, knowledge bases, gathering IDs, instruction IDs, instructions, visibility, and brand properties.
- Browse platform and project detail/directory views and switch active context.

## Directory and relationships

- Search/browse members, agents, movements, missions, markets, and public profiles.
- Inspect member detail and connected agents.
- Connect/disconnect, hide/unhide, follow/reference profile data, and inspect connections.
- Join movements and view movement missions.
- View communities, membership tier directories, DUNA directories, alliances, and public launchpad entries.

## Roles and scopes

- List global/context roles and retrieve one role.
- Create, edit, and delete a role.
- Define a scope/name and permission list.
- Assign code redemptions/memberships to member, performer, or admin roles.
- Resolve role/permission context for agent, market, and nested-context access.

## Alliances/teams

- Check alliance handle availability.
- Create/list/retrieve/update/delete alliances.
- Add/list/remove members and represent role/status.
- Configure approval threshold.
- View team proposals and submit/approve actions.
- Send funds from the team/alliance treasury.

## Invitation/access codes

- Create a code for a context, gathering, or scope.
- Configure access type, role, price, discount, expiry, maximum uses, creator, and active/status state.
- List own/accessible/context codes and permitted/accessible contexts.
- View/edit/delete/toggle a code.
- Validate and preview a code before redemption.
- Redeem by code ID or public code string; grant role/membership; prevent invalid/expired/exhausted reuse.
- List and revoke/delete redemption records.
- Send personalized email or push invitations.
- Check membership, list context members, list a wallet’s Presences/gathering games, and show redemption history.

## Notifications

- List notifications by wallet.
- Mark one notification read or mark all read.
- Represent invitation, approval, execution, membership, and system status types.

## New UI requirements

- Use one consistent vocabulary for context/platform, project/gathering, DUNA, market, alliance, movement, and mission.
- Show handle namespace and uniqueness scope before submission.
- Provide permissions previews and “who gains what” summaries for roles, joins, codes, and invitations.
- Treat code pricing, discounts, expiry, limits, and revocation as security-sensitive.
- Include member/access audit history and clear empty/pending/expired/removed states.

