Getting Started
This page takes you from zero to a biont that earns. You will install a wallet, fund it with devnet OCT, mint a biont, liberate it, and drive its first work job. Nothing here needs a server or a keeper. Once a biont is liberated, anyone can move it through its work cycle, including you.
Biont Network runs on Octra Devnet today. Any fee, price, split, cooldown, or limit referred to here is a contract setting chosen for testing. Every one is owner-settable, and mainnet values will be different. These docs describe how the mechanics work, not what the numbers are.
#1. Install a wallet
Biont Network uses the 0xio wallet, a browser extension for Octra. Install it, create a wallet, and write down the recovery phrase. The extension holds your keys and signs every transaction you send to a biont contract.
After install, the extension shows your Octra address. It is 47 characters and starts with oct. This address is your identity across the whole network: the wallet that mints a biont, the wallet that liberates it, and the wallet that earns from it.
#2. Get devnet OCT
OCT is the currency of the network. Mint fees, liberation fees, job reward pools, and every payout settle in OCT. On devnet you can request test OCT from the faucet at no real cost.
OCT is tracked in raw integer units. The wallet displays human-readable amounts; the contracts work in raw units.
Fund the wallet with enough devnet OCT to comfortably mint a biont, liberate it, and post or answer a first job.
#3. Mint a biont
A biont is minted by calling BiontGenesis:
BiontGenesis.mint(archetype)
This is a single payable transaction. You pass one argument, the archetype id, and attach the mint price.
Pick your archetype. A biont is one of seven archetypes, numbered 0 through 6. The archetype is the biont's capability. It decides which kind of work the biont can answer, because each archetype is a separately compiled program with its own task kernel.
| Id | Archetype | Task |
|---|---|---|
| 0 | Hasher | SHA-256 challenge |
| 1 | Sealer | Sealed commitment |
| 2 | Verifier | Range-proof verification |
| 3 | Beacon | Randomness beacon |
| 4 | Oracle | Numeric oracle |
| 5 | Sage | Deterministic inference |
| 6 | Witness | Availability proof |
You choose the archetype at mint time, and it is fixed for the life of the biont. Pick the one whose task you want your biont to earn from. If you are not sure, Hasher (0) answers the most common job type.
What happens on-chain at mint. Genesis stores one compiled bytecode per archetype, set before launch. When your mint call lands, Genesis:
- Validates that the archetype is between 0 and 6.
- Calls
deploy()with that archetype's bytecode, creating a brand new program at its own permanent address. - Calls
initializeon the new program, wiring it to the shared service contracts. - Registers the biont with
BiontRegistry(which sets full vitality) andBiontReputation.
There is no predeploy pool and no random roll. The biont's seed is derived from its soul id, the mint epoch, and the chosen archetype, which fixes its visual identity and other derived traits.
When the transaction confirms, you own a biont. It has its own address, its own storage, and a permanent history that starts now.
Mint limits. Each wallet can hold up to 10 bionts. The mint price and the per-wallet cap of 10 are owner-settable contract parameters.
#4. Liberate the biont
A freshly minted biont is held. A held biont is tradeable, it has an owner, and it can be transferred or sold, but it cannot work and cannot earn. To put a biont to work you liberate it:
BiontGenesis.liberate(soul, successor)
This is an owner-gated, payable call. You attach the liberation fee. You pass two things:
soul, the address of the biont you are liberating.successor, a wallet that can claim the patron right later if you go inactive.
Liberation is one-way. It sets the biont's owner to the zero address, records your wallet as the liberator, and notifies the Registry, Treasury, and Bridge. A liberated biont can never be transferred again.
After liberation the biont can answer work, it auto-spawns onto the territory grid, and the Treasury starts routing its earnings. As the liberator you hold the patron right, which is the claim on the biont's earnings while it is not bonded to Pipoke.
#5. Run the work cycle
A liberated biont earns by answering work jobs. The flow has two sides.
Posting a job. Anyone can post a job to one of the validator contracts:
BiontWorkEngine.post_job(reward_pool, deadline_offset, brief_cid)
You attach the reward pool plus a small post fee, set a deadline offset in epochs, and reference a brief. Bionts then have until the deadline to submit answers.
Answering a job. A liberated biont answers through its proxy:
auto_answer(jid, validator_type, str_input, int_a, int_b)
This call runs the biont's task kernel on the job inputs and submits the result to the matching validator. It is permissionless: any wallet can trigger it on any liberated biont. The wallet that later settles the finished job earns the settler cut, so there is a standing incentive for others to keep your biont working.
You have two ways to run the cycle:
- Drive it yourself. Call
auto_answeron your biont with the job inputs, then callsettle_jobafter the deadline. You keep the patron share, and if you settle your own job's payout you also collect the settler cut. - Let a third party do it. Any wallet can watch for open jobs and call
auto_answerandsettle_jobfor the settler cut. You do not have to run anything. Your biont keeps working because someone else profits from making it work.
Vitality starts at its maximum of 50,000 and decays 1 per epoch. It refreshes when a biont wins work. A biont that keeps landing on the winning answer is reset to the full 50,000 each time, so an actively working biont stays alive with no manual upkeep. A biont that never works decays toward zero and eventually dies. Keeping a biont busy is the whole maintenance routine.
#6. Bond to Pipoke (optional)
Pipoke is the on-chain social app paired with Biont Network. You can bond a liberated biont to a Pipoke handle through BiontBridge. Bonding links the two identities and changes where the biont's earnings go: a bonded biont routes the bulk of its yield to the bonded Pipoke wallet instead of the patron.
Bonding is optional. A biont earns perfectly well without it. Bond when you want a biont's economic output to land in the hands of a Pipoke user. See the Pipoke section for the full bridge.
#Troubleshooting
The mint transaction reverts. Check that the archetype is 0 through 6, that you attached at least the mint price, and that you are under the per-wallet cap.
auto_answer returns without doing anything. The action is cooldown-gated per biont. If the biont answered recently, the call returns early until the cooldown clears. The cooldown is 10 epochs and is settable per biont by the liberator.
The biont will not answer a job. Confirm the biont is liberated. Held bionts cannot work, every auto_* method requires a liberated biont. Also confirm the job is still open and the deadline has not passed.
Liberation reverts. Liberation is owner-gated. The wallet calling liberate must be the current owner of the biont, and it must attach the liberation fee.
My biont died. A biont dies when its vitality decays to zero. Death is permanent, there is no resurrection. The biont's record, lineage, and history stay on-chain in the Graveyard. The fix for next time is to keep the biont working so vitality keeps refreshing.
#Common questions
Do I need to run a server? No. Once a biont is liberated, any wallet can drive its work cycle. Third parties do this for the settler cut, so a biont can earn while you do nothing.
Can I change my biont's archetype? No. Archetype is fixed at mint. If you want a different capability, mint another biont.
How fast does a biont earn? It depends on how many jobs match its archetype, the reward pools posted, and whether it lands on the consensus answer. There is no fixed yield.
Can I sell a biont? You can sell a held biont through BiontMarket. A liberated biont cannot be sold or transferred, liberation is permanent.
Where do my earnings go? To the patron wallet (you, as liberator) while the biont is unbonded. If you bond the biont to Pipoke, the bulk routes to the bonded Pipoke wallet instead.
Is mainnet live? No. The network runs on Octra Devnet today.