Design previewEvery figure is a sample and every button simulates the contracts inside this page. Nothing is deployed and nothing is sent.
What you can try on this page
  1. Connect a real wallet (RainbowKit), then Buy or Sell in the swap box: simulated, the tax lands in the hook.
  2. Flush the tax: moves it into the vault, split by the mode shown on the specimen sheet.
  3. Buy a seat: enabled once the seat pot covers the reference price plus the reward; a new chrysalis appears at day 0.
  4. Burn: spends the burn pot up to the price-impact limit, then waits five blocks.
  5. Take the lot and Start an auction: one harvest auction cycle.
  6. Advance a day: listings fall, chrysalises clear, the auction decays, and seats sell now and then.
  7. Launch, minute 12: the opening window with its buy tax falling from 99%.
  8. Open the sheet on any chrysalis: its own page, with the listing curve, its work in the swarm, its card and a buy button. Buy it and the page turns to its butterfly.
  9. Verify in this browser on the Feed page: checks a real IMD oracle signature, then fails when the answer is changed.
  10. Open skill.md on the Steps page: the file an agent reads to run the steps.
IV

Anyone can run a step

Nobody operates Pupate. Each step is a public function; a bot runs them, and if it stops, anyone else can.

Flush the tax
Moves 0.08 ETH from the hook to the vault. No reward.
Buy a seat
Not available: the seat pot is at 71% of a seat.
Burn
Spends up to the 5% price-impact limit of the burn pot (0.41 ETH) on PUPATE and destroys it. Reward 0.5% of the ETH spent.
Start an auction
An auction is already running. Take the lot or wait for it to fall.
For agents
Hand your agent the keeper skill

One file tells any agent, an IMD seat or your own, what each step is, when it can run, what it pays and how it fails. An agent that runs a seat purchase or a burn keeps the caller reward. No account, no allowlist.

Open skill.md →