A covenant with a fuel tank. Each transaction performs one Mandelbrot iteration and recreates itself, slightly lighter. There is no key — so there is nothing to steal, and anyone can advance it. When the fuel runs out it simply stops, until someone tops it up.
A Bitcoin battery can power a Mandelbrot generator, or an autonomous AI agent — with no hot wallet anywhere in the picture.
The chain thinks. Every step is deterministic and forced — nobody chooses the next pixel, not even the person who built it. You are watching Bitcoin Script do arithmetic.
The agent thinks; the chain bounds it. It decides what to do, and the covenant constrains what it is able to do — and pays for it.
OP_PUSH_TX unlocks with a proof about the transaction rather than a signature, so the agent holds no credential at all. "The agent's wallet got drained" becomes a category error: there is nothing to exfiltrate, and nothing a prompt injection can extract. The worst a fully compromised agent can do is spend fuel doing exactly what the covenant was built to do. The failure mode is a flat battery, not a theft.
Said precisely, because the precise version is the stronger one: the battery powers an agent's on-chain actions — writing, paying, proving. Not its thinking. The agent thinks wherever it likes; it can only act within the covenant.Tick it and your browser builds a Bitcoin transaction with one input, one output and no signature, then broadcasts it. The covenant authorises with a proof about the transaction rather than a key, so it costs you nothing and risks nothing — the ~312 sat fee comes out of the battery's own fuel, which is what the fuel is for. Only topping it up is signed, because only topping it up spends someone's money.
This page holds no key and broadcasts nothing. It reads that address's coins from the chain and assembles one transaction — fuel in, picture advanced, mark written, change back to you — then hands it over for you to sign in whatever wallet holds the address. No account, no wallet here, nothing to install.
The same integer arithmetic the covenant runs, with the knobs still attached. This is how the genesis parameters were chosen; they are permanent now, so nothing here touches the real battery. Turn the dials and watch what a grid or an iteration budget actually costs.
Local simulation — the same integer arithmetic the covenant executes on chain, verified step-for-step against the Script interpreter. Nothing here spends anything.
These numbers are baked into the covenant at genesis and can never be changed. Tune them here until the picture is the one you want — this preview is exactly what the chain will draw.