User guide · Page 05
Spells
On this page
Every Internet Wizard earns the same thing: an equal share of the Mana Pool's actual SOL revenue, credited per active Wizard. A spell is simply what your Wizard does with that SOL once it has been settled into its vault. Orange Spell swaps it for the configured tokenized BTC asset, Sol Spell keeps it as SOL, and Infinity Spell buys more MIFI. This page explains what each spell does, how changing spells works, how execution runs behind the scenes, and what "unsettled", "pending", and "retained" mean when you see them on a Wizard's profile. Nothing here is a forecast: a spell only has work to do when there is actual revenue, and revenue comes from actual activity (new conjures, MIFI trading, and royalties a marketplace actually collects).
The three spells#
| Spell | What happens to settled SOL | What the vault accumulates | Look (orb and small accents only) |
|---|---|---|---|
| Orange Spell | Swapped for the configured tokenized BTC asset (shown in the app with its issuer, mint, and decimals) | Tokenized BTC, held in the Wizard's own BTC token account | Orange orb with the spiral-B glyph, warm accents |
| Sol Spell | Kept as SOL | Retained SOL, held under the Wizard's own authority | Restrained violet/green accents with a three-bar glyph |
| Infinity Spell | Used to market-buy MIFI | Extra MIFI, tracked separately from the 100,000 MIFI principal | Blue/violet looping marks with an ∞ glyph |
Proposed launch default for new Wizards: Orange, once the tokenized BTC asset and its swap route are configured. Until then, Orange is unavailable and the app says so.
A few things every spell has in common:
- The 100,000 MIFI principal is never spent, swapped, or otherwise touched by any spell.
- Purchased tokens are bought on the open market. Nothing is minted.
- A spell changes what the vault holds, not how much it is owed. No spell has a yield multiplier.
- Spell art is a bounded overlay: the orb, its glyph, and up to three small accent marks. Your Wizard's face, hat, beard, robe, and prop are permanent (see Wizard Art). Current renders use prototype art and are labeled as prototype in the app.
Equal entitlement, different outcomes#
All three spells receive the same gross SOL entitlement for the same participation period. Two Wizards active for the same stretch were owed the same SOL, whichever spells they chose.
What differs is the realized result. Orange and Infinity make swaps, and swaps have execution prices, slippage, pool fees, and timing. A Sol Spell Wizard has none of that (there is nothing to swap) and none of the exposure that comes from holding a different asset. The app shows token balances first and any USD or NAV figure second, always labeled as an estimate.
What "compounding" means for Infinity#
Infinity Spell accumulates more MIFI over time. It does not increase that Wizard's share of protocol revenue. Every active Wizard has exactly one share, always, no matter how much extra MIFI sits in its vault. "Compounding" here means token accumulation only.
Extra MIFI is tracked apart from the principal. On dispel you get back exactly 100,000 MIFI of principal plus whatever extra MIFI the spell bought.
What Orange actually holds#
Orange holds a tokenized representation of BTC that lives on Solana. It is not native Bitcoin in a Bitcoin wallet. The specific asset is still being selected; once configured, the app shows its symbol, issuer, mint, decimals, and custody model on every Wizard that uses it. On dispel the tokenized BTC comes back as tokenized BTC. You are never forced to swap it to SOL to exit.
Changing spells#
You can change your Wizard's spell at any time from its profile. Only the current owner of the Wizard NFT can do it, and ownership is checked on-chain at transaction time.
Here is exactly what happens when you change spells:
- Accounting settles first. Any SOL your Wizard is owed but has not yet settled is moved into its pending balance at the current index. Nothing is lost in the switch.
- The spell updates. The new spell applies to unprocessed pending SOL and to all future earnings.
- Nothing is sold. Previously acquired assets stay exactly where they are. A Wizard that ran Orange for six months and then switches to Sol keeps every bit of tokenized BTC it bought, and now accumulates SOL on top. Its orb changes to the Sol look; its BTC balance stays on its profile.
- The strategy nonce bumps. Every Wizard carries a
strategy_noncethat increases on each spell change. Any execution job built for the old spell carries the old nonce and is rejected on-chain. This is what stops a stale, already-queued job from swapping your SOL into an asset you just decided against.
No protocol fee is proposed for changing spells; you pay the ordinary network fee for the transaction.
How execution works#
Two separate steps happen between "revenue arrived" and "my vault holds the thing".
Settlement moves SOL you are owed from the shared Mana reserve into your Wizard's own vault, where it becomes pending. Settlement is permissionless: anyone can settle any Wizard, because the destination is fixed to that Wizard's vault and nowhere else. Dispel, spell changes, and spell executions all settle your Wizard first, inside their own transaction.
Execution does what the spell says with pending SOL. Only two parties can trigger it: the Wizard's current owner (you, via "Process spell" on the profile) or the protocol keeper. Limiting executors to a known pair keeps strangers from timing your swaps. The keeper uses your selected spell within program-enforced limits and has no withdrawal authority of any kind.
For Sol Spell, execution is bookkeeping: pending SOL is relabeled as retained SOL. The lamports do not move and there is no swap to fail. It is the spell for people who would rather not have a spell.
For Orange and Infinity, execution is a swap, and the program guards it:
| Guard | What it does |
|---|---|
| Strategy nonce | The job must carry the Wizard's current nonce; stale jobs are rejected |
| Per-execution cap | Each execution spends at most a configured maximum; a large pending balance is processed in slices over several executions |
| Minimum viable swap | Below a configured minimum, execution is refused as uneconomical and the SOL keeps waiting as pending. Tiny entitlements are never discarded or reassigned to anyone else |
| Minimum output | The swap must deliver at least a stated minimum output, and that minimum must itself be at least a reference minimum computed on-chain. The executor cannot pick a near-zero minimum |
| Reference price, Orange | Pyth SOL/USD and BTC/USD price updates, with a maximum age, a confidence bound, and a maximum allowed deviation. If the feed is stale or too uncertain, execution is refused |
| Reference price, Infinity | The MIFI/SOL pool's spot price at execution, with a maximum price-impact bound |
| Balance-delta check | Output is measured by the actual change in the Wizard's own token vault, not by what a quote claimed |
| Principal isolation | Infinity output is added to the MIFI vault; the principal is never an input to anything |
Any SOL an execution does not spend returns to pending.
When a swap fails#
A failed swap rolls back its own debit. Your SOL stays pending and visible on the profile, ready for the next attempt or for dispel. Nothing is deducted, and one Wizard's bad route does not block another Wizard's processing. If no trustworthy executable route exists (thin liquidity, a stale oracle, execution paused), the correct outcome is that the SOL stays pending. You can always dispel with pending SOL; exit never depends on a swap or on an external quote service.
Who pays network fees#
Execution transactions cost network fees. When the keeper runs them, those fees come from the protocol's operating budget (funded by the protocol's 20% share of revenue), never from your entitlement. If that budget is empty, the keeper waits and you may pay the network fee to execute your own spell. Slippage and pool fees affect swap output the way they do for any trade, but there is no hidden keeper charge deducted from what you are owed.
Scheduling and limits#
| Setting | Proposed default | Status |
|---|---|---|
| Keeper execution trigger | Aggregate unprocessed Mana reaches 10 SOL, or a periodic due scan finds economical jobs (proposed scan interval: five minutes) | Proposed scheduler default |
| Per-execution input cap | Set in protocol configuration and shown in the app | To be set from measured costs and liquidity |
| Minimum viable swap amount | Set in protocol configuration and shown in the app | To be set from measured costs and liquidity |
| Price bounds (oracle deviation, age, confidence; pool impact) | Set in protocol configuration and shown in the app | Bounded parameters |
| Default spell for new Wizards | Orange, once the tokenized BTC asset and route are configured | Proposed launch default |
A "Spell Round" in the app is a keeper processing batch. It is not the moment you become entitled to money. Entitlement happens when revenue is received and allocated (receipt-time entitlement); execution is what happens to it afterward. Fees still sitting on the launch venue are not yet anyone's entitlement.
Pending, retained, unsettled#
The Wizard profile and My Wizards use these words precisely.
| Term | Meaning | Where it lives | In the NAV estimate? |
|---|---|---|---|
| Unsettled | SOL allocated to your Wizard since its last settlement that has not yet been pulled into its own vault. Computed from the Mana index and already backed by the reserve | Shared Mana reserve, earmarked to your Wizard | Yes, counted once |
| Pending | Settled SOL sitting in your Wizard's vault, waiting for the spell to process it. For Orange and Infinity, this is what the next execution will swap | Your Wizard's own SOL account | Yes, counted once |
| Retained | SOL a Sol Spell Wizard has decided to keep. Same lamports, same account; the label means "done, nothing further will happen to this" | Your Wizard's own SOL account | Yes |
| Extra MIFI | MIFI purchased by Infinity Spell, tracked apart from the 100,000 principal | Your Wizard's MIFI vault | Yes |
| Tokenized BTC | The configured tokenized BTC asset purchased by Orange Spell | Your Wizard's BTC token account | Yes |
| Claimable on venue, not yet received | Trading fees the venue has accrued that have not reached MIFI yet. Not allocated to anyone | The venue, outside the protocol | No |
Settled amounts are never counted both in the vault and in the reserve. Account rent is excluded from the headline NAV estimate. USD figures are estimates from reference prices with a visible timestamp and a stale-price state.
Choosing a spell#
There is no right answer, and the protocol has no opinion. Some plain considerations:
- Sol Spell is the simplest. No swaps, no oracle, no slippage, no waiting for execution thresholds. What you are owed is what you hold.
- Orange Spell exposes the vault to the price of the configured tokenized BTC asset and to that asset's issuer or bridge model. Swaps only run when the Pyth reference is fresh and the route clears the bounds.
- Infinity Spell exposes the vault to the price of MIFI itself and buys on the MIFI/SOL pool, subject to that pool's fees and the price-impact bound. It does not increase your share.
All three earn identically before execution. All three can be changed later without selling anything. And all three depend on there being revenue to process: conjure fees exist only when someone conjures, trading fees exist only when MIFI trades, and royalties exist only when a marketplace collects them. If activity stops, revenue may stop; assets already in the vault remain redeemable, and their market prices can fall.
Related pages#
- Overview — the one-sentence version of the whole product, and the index for this guide.
- The MIFI Token — what MIFI is, where it trades, and where the 3% LP fee goes.
- Wizard Art — how the spell overlay fits into a Wizard's permanent identity and cosmetic stages.
- Internet Wizards — choosing a first spell at conjure, and exactly what a dispel returns (pending SOL included).
- The Mana Pool — where revenue actually comes from and how it is allocated.
- Estimated NAV and Marketplaces — how pending, retained, and unsettled SOL appear in the NAV estimate.
Source: docs/guide/05-spells.md. This page describes a protocol still being built; values marked "proposed default" may change within on-chain bounds, and nothing here is a forecast.