What a Circle is
A Circle is an isolated execution environment deployed on Octra. It runs AML/OCTB bytecode, holds its own on-chain state, and can call other on-chain contracts directly. Circles are not databases or off-chain servers. They are first-class on-chain programs. On Xpectrum, each collection has one Circle deployed alongside it. It stores the collection’s metadata and art on-chain. Those assets are public and readable by anyone, that is how the marketplace and any indexer render the collection. “Sealed” means write access: once frozen, the assets cannot be changed. NFT ownership gates a Circle’s programmable interactions (the holder-only logic below), not the reading of its public assets.Circles are live on Xpectrum. The current implementation is collection-wide: one Circle per collection, accessible to holders. We are actively refining the access-control paths for efficiency.
Current capabilities
How access works
Access is verified at the contract level, not in a backend:- Ownership is checked against the Xcollection contract via the XNS-1 interface (
owner_of/is_approved_or_owner) - If the caller holds 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 configured at deploy time:- Token-gated communities - discussion, voting, or coordination spaces for holders
- Holder rewards - on-chain claim mechanics tied to NFT ownership
- Collection governance - holder votes recorded as on-chain state
- Gated content - content addressable on-chain, unlocked by ownership verification
On-chain calls
A Circle can call other contracts on Octra viacall(address, "method", args):
- Read state from Xcollection (verify ownership, check token metadata)
- Read listing state from Xmarket
- Call any other XNS-1 compliant contract on the network
Horizon
The current implementation is collection-wide. Future directions under consideration:- Richer Circle programmability, including per-token state where each NFT carries its own isolated logic
- Cross-collection interaction between Circles
- Integration with Octra’s FHE layer for private Circle state
