Circles is a programmable access layer built on Octra’s on-chain execution environment. Each Xpectrum collection gets one Circle: a sealed, collection-wide space where holders interact using their NFT as a key.Documentation Index
Fetch the complete documentation index at: https://xpectrum.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
What a Circle is
A Circle is an isolated execution environment deployed on Octra. It runs AML/OCTB bytecode and can call on-chain contracts directly. Circles are not databases or off-chain servers. They are first-class on-chain programs with their own state and logic. On Xpectrum, each collection has one Circle deployed alongside it. Holding an NFT from that collection grants access. The NFT is the key. No separate token, no allowlist.Circles are live on Xpectrum. The current implementation is collection-wide: one Circle per collection, accessible to all holders.
Current capabilities
| Feature | Status |
|---|---|
| Collection-wide sealed space | Live |
| NFT-gated access | Live |
| AML/OCTB bytecode execution | Live |
| On-chain contract calls from Circle | Live |
| Creator-configurable logic | Live |
| WASM execution | Rolling out |
How access works
When a holder enters a Circle:- The Circle contract calls
get_token_info(token_id)on Xcollection to verify ownership - If the caller owns a token from the collection, access is granted
- The holder interacts with the Circle’s on-chain state directly from their wallet
What creators can build with Circles
Circles expose programmable logic that creators configure at deploy time:- Token-gated communities - discussion, voting, or coordination spaces accessible only to holders
- Holder rewards - on-chain claim mechanics tied to NFT ownership
- Collection governance - holder votes recorded as on-chain state
- Gated content distribution - content addressable on-chain, unlocked by token ownership verification
On-chain calls
Circles can call other contracts on Octra using thecall(address, "method", args) primitive. A Circle can:
- Read state from Xcollection (verify ownership, check token metadata)
- Interact with Xmarket (query listing state)
- Call any other XNS-1 compliant contract on the network
WASM execution inside Circles is rolling out. This will expand the range of logic that can run in a Circle beyond AML/OCTB bytecode.
Future direction
The current implementation is collection-wide. Future work may explore per-token Circles, where each NFT has its own isolated state, enabling richer token-level programmability. Additional areas under consideration:- Circle-to-Circle cross-collection calls
- Creator-upgradeable Circle logic post-deploy
- Integration with Octra’s FHE layer for private state
