- Instance: A standalone onchain governance and access control system. Llama instances can be used to govern a protocol or any other smart contract system.
- Policies: Non-transferable NFTs that are used by an instance to define its participants' roles and permissions.
- Roles: A signifier given to one or more policyholders. Roles can have zero or more permission IDs.
- Permission IDs: A hash of a target contract, function selector, and strategy contract that represent the right to create an action. Actions cannot be created unless a policyholder holds a role with the correct permission ID.
- Actions: Proposed, executable transactions that can be initiated by policyholders.
- Strategies: Contracts that set the rules for how an action goes from creation to execution.
- Executor: The single exit point of a Llama instance. The executor address will be the
msg.senderfor any executed actions.
- Accounts: Contracts deployed directly by Llama instances to manage onchain assets.