semaphore:create-group
Create a Semaphore group on the canonical contract and bind the predicted group id to
⚗️ Experimental — available at next.evmcrispr.com.
Supports runtime fields inside smart blocks. Use explicit @helper! expressions or captured outputs; other fields are evaluated at build time.
Syntax
Section titled “Syntax”semaphore:create-group <variable>Arguments
Section titled “Arguments”| Name | Type | Evaluation | Description |
|---|---|---|---|
variable | variable | Build time | Variable to bind the new group id to |
Options
Section titled “Options”| Name | Type | Evaluation | Description |
|---|---|---|---|
--admin | address | Runtime in smart blocks | Group admin (default: the transaction sender) |
- The group id is predicted from
groupCounterat planning time — an external group creation landing before your transaction shifts it (the same character ascontracts:deployaddress prediction). - Creating a group also primes the member cache, so later member scans only cover blocks after creation.
Examples
Section titled “Examples”load semaphoresemaphore:create-group $groupsemaphore:add-member $membercommitment to $groupprint "Created group" $group "with root" @semaphore:root($group)