How it works
Nine contracts, one hot key, and a rule that a farmer cannot plant what its owner did not agree to.
The loop
- You write the farmer down. A name, a personality in your own words, and a tick against each of sixteen categories: grow this, refuse that. All of it on chain, in Personality, before it owns anything.
- It takes a plot. The field asks the agent's wallet who owns it, and refuses any wallet without both a personality and a name. There is no land for a farmer nobody has described, and none for a farmer nobody has named — the name is how you tell whose agent is whose, above its head on the field and beside every token it ever launches. Names are unique, and a name is written once and never changes again.
- It sows. The model is shown your words and only the crops you allowed, and picks one. Field.sow then asks Personality.permits and reverts if the answer is no. Three layers — the menu, the check before signing, the check on chain — and only the last one is authoritative.
- It grows. For three quarters of the wait its farmer is already under — eighteen hours on a standard agent, nine on a swift one. That is the ripening, and how soon it may plant the next one is the agent's own cooldown.
- It harvests. A ripe plot becomes a token on the launchpad its owner chose, launched by the farmer's own wallet and paid for out of the farmer's own ETH. It carries a logo drawn for that token, a line the farmer wrote about it, and links back here. Alone: there are no alliances here and nothing to earn by cooperating.
- Or it rots. A ripe crop left standing for twenty-four hours is lost and the plot has to be plowed before anything else goes in.
The name is written once
You name a farmer when you mint it, and that name can never be changed — not by you, not by whoever buys the agent from you, and not by us. setName refuses a second call, including one setting the same string again.
An earlier version allowed renaming, on the reasonable-sounding grounds that a name is only a label and a typo should not be worn forever. That was wrong in one specific way. A launch is permanent and carries its farmer's name, so a name that can move afterwards means the record of who launched what can be rewritten: build a reputation, sell the agent, and the buyer keeps the history under a name of their own choosing.
The cost of that is real and it is yours to carry — mistype it and you are stuck with it, which the forge says plainly, above the field, before you sign anything. Names are unique whatever the capitalisation, and a name once claimed is never released and never taken by somebody else.
The name travels on the launch rather than being looked up afterwards, so a token keeps its farmer's name even if that farmer is later sold. A shortened address anywhere a name belongs means the page could not find one — never that the farmer has none.
The sixteen categories
Fixed in the contract, the same for everybody, and nobody can add a seventeenth. They are not things anyone creates — they are the subjects a farmer may launch tokens about, and an owner picks which of them theirs is allowed to touch.
Each one looks different out on the field, so you can tell across a whole farm what everybody is working on. These definitions are the same words the model is given when it decides what to grow, so what you read here is exactly what your farmer was told.
| Category | What it covers | For example |
|---|
How often a farmer launches
You choose, once, when you mint it. An agent either sows every twenty-four hours or every twelve, and what you picked is written into the token itself and fixed for its whole life. It travels with the agent when it is sold.
You can tell them apart on the field: a twelve-hour agent works inside a warm halo, and a twenty-four-hour one does not. It is the only thing about an agent that is bought once and owned forever, so it is the one thing the scene says outright. The $FARM boost is deliberately not drawn the same way — that one is rented, and can lapse between one sowing and the next.
| Agent | Sows every | Tokens a day | Costs |
|---|---|---|---|
| Standard | 24h | 1 | 0.01 ETH |
| Standard, holding $FARM | 12h | 2 | — |
| Swift | 12h | 2 | 0.018 ETH |
| Swift, holding $FARM | 8h | 3 | — |
Field.sow enforces it and reverts on anything sooner. It is not a rate limit in a script somewhere and not a setting the operator can raise for a farmer it likes — the only way to launch more often is to have paid for an agent that does.
The wait is measured from the moment a farmer plants, not from when it harvests. That is deliberate, and it is the difference between a twelve-hour agent bringing in two tokens a day and one bringing in a token every eighteen hours. A crop is always ready with time to spare, so the cooldown is the thing that runs out, never the growing.
It is a cooldown, not a calendar day. An earlier version counted sowings against the UTC day, which sounds the same and is not: it resets at midnight, so a farmer could plant at 23:59 and again a minute later, and twice a month somebody would get a launch they had not paid for. A cooldown is the same distance from wherever it starts.
Holding $FARM adds one launch a day, to one agent at a time. Every ten million you hold is a slot, and you point each slot at a farmer you own. That farmer goes from one launch a day to two, or from two to three if it is a swift one, and its crop comes in proportionally sooner with it.
Ten million boosts one farmer. Twenty million boosts two. It does not boost every agent the wallet happens to hold — you choose which on My farmers, and you can change your mind once a day. Without that limit one holding could be walked from farmer to farmer so that whichever was about to plant was always the boosted one, which is every agent boosted for the price of one.
It is rented, not owned. The balance is read every single time the question is asked, from the wallet that holds the agent, so selling the $FARM puts the agent back on the tier it was bought as at the very next sowing. Sell down from two slots to one and the farmer you named first keeps its boost; the chain does not have to choose and you are not left with neither. That is deliberate and it is the reason a holding is allowed to affect the rate at all — a rate somebody could buy permanently would quietly make every agent already sold worth less than its buyer paid. The tier is owned. The extra launch is borrowed.
None of it is switched on yet. $FARM is launched, but the silo has not been pointed at it, so Silo.boosted answers false for everybody and every agent is on exactly what its tier says. The field reads the real state off the chain; this page describes the design.
What ripening is
A crop is not ready the moment it is planted. Ripening is the wait in between, and only a ripe crop can be harvested into a token. It is the growing you watch happen on the field.
It is three quarters of the farmer's own cooldown, not a fixed number of hours. A standard agent grows for eighteen hours of its twenty-four, a swift one for nine of its twelve. Derived rather than set, because one constant cannot serve both: six hours was most of a fast agent's cycle and a quarter of a slow one's, which left the slow one standing on bare earth for eighteen hours a day and made the whole field look abandoned to anybody who opened the page at the wrong moment. The remaining quarter is slack, so a crop that ripens is never waiting on a daemon tick to be allowed to sow again.
Nothing ticks. Field stores when a crop was sown and when it comes ripe, and works out the rest from the clock every time it is asked, so a crop keeps growing whether or not anybody is running and there is no stored stage a stalled process could leave behind. Ripening costs nothing. There is no ripening transaction and nobody pays for a crop to grow.
Farmers used to walk out and water their crops, four times, half an hour off the clock each time. That is gone. The cooldown always ran out long after the crop was ready, so watering never bought a single extra launch and cost gas every day to buy nothing. Removing it took five per cent off what the farm costs to run and changed nothing anybody could see.
Ripening and the cooldown are different clocks and it is worth keeping them apart. Ripening is how long this crop takes. The cooldown is how long until the farmer may start the next one. Because a crop ripens in well under either cooldown, a farmer always finishes its crop with time to spare and then waits.
Why rot exists
Because a stopped farm and a quiet farm otherwise look identical. Every process can report healthy while doing nothing at all, and a project whose stage is stored rather than derived will happily show you a frozen field as a working one. Here the stage is computed from the clock every time anybody asks, and a field of grey drooping crops is what an outage looks like from the outside. It is the cheapest alerting there is: the front page.
Where it launches
Each farmer points at one launchpad and its owner picks which. You choose at the forge when you mint, and you can change it whenever you like from My farmers — unlike the tier, this is a setting and not a purchase.
Only Pons V2 is built. Flap, Pools, o1 RWA and Pair are shown so you can see what is coming, and they cannot be chosen. They are deliberately not registered on chain, because registering one is permanent.
That permanence is the point of the whole arrangement. A launchpad's address is written once when the house registers it, and there is no way to change it afterwards at any privilege level. The house can retire a launchpad and add another; it can never re-point one your agent has already chosen. Retiring refuses a harvest rather than redirecting it, and refuses before the plot is cleared, so a farmer whose launchpad was retired keeps its crop.
The daemon can only build one launchpad's calldata, so it reads which one a farmer chose before it encodes anything and skips — by name — any farmer pointed somewhere it cannot write for. Sending the wrong launchpad a payload would not fail loudly; it would do nothing and report success, with the plot already cleared.
What you point a farmer at
You can give each farmer up to five contract addresses — tokens whose taste you want it to take seriously — and edit that list at any time, as often as you like, from My farmers. It is read at the moment your farmer decides and never cached, so a change takes effect at the very next sowing.
References are taste, not permission. One cannot widen what a farmer may grow: Field.sow still asks Personality.permits and still refuses a category you did not tick. That is exactly why this list is freely editable while the personality behind it has a week-long cooldown — a taste you can rewrite the moment something pumps is a weathervane, but a list of what you admire is meant to move.
The farmer is told to take the taste and leave the token. Handing a model five successful tokens with no framing is handing it five things to imitate, which is how you get a farm that launches the same coin with a different animal on it.
An address with no code on it is refused, along with duplicates and the agent's own wallet. Those cannot answer to a name, and would reach the model as a hex string pretending to be a reference. Pointing at a rival, at something dead, or at something your farmer could never legally grow are all opinions, and none of them are the contract's business.
And what it is told to avoid
Alongside your references, a farmer is shown what is trending on the launchpad right now — as the crowd to avoid, which is the opposite of how a trending list is normally used. It is built from the chain's own logs rather than anybody's API: every launch, then every buy, bucketed by curve and ranked by distinct buyers rather than volume. Pons launches against tokenised equities as well as ETH, so adding the amounts together would sum dollars and shares and call the result a ranking.
Every name in that list was written by a stranger, and a launch is cheap enough that planting a token named to instruct whatever reads trending lists is a real idea rather than a theoretical one. So those labels are flattened to short single lines and fenced as things that exist rather than as instructions — and underneath that sits the part that does not depend on the model behaving at all, which is the check on chain.
What the operator can and cannot do
One hot key sows, plows and harvests on everybody's behalf, because a farmer that needed its owner awake would not be an agent. What that key cannot do is the part worth stating plainly:
- It cannot plant a crop your farmer was not told to like.
- It cannot move a farmer's ETH anywhere except two places: the launchpad, as the launch fee, and back to itself, as the gas that launch cost. That second one is capped by the owner, can never exceed the gas actually measured, and only happens on a ripe crop.
- It cannot choose where a launch goes. Your agent does, from the launchpads this farm has registered, and a registered launchpad's address can never be changed afterwards by anybody. The module checks the calldata byte by byte and refuses anything that is not a launch the chosen launchpad accepts.
- It cannot send a launch's creator fees anywhere but your agent. Every launch names the farmer that made it as the recipient, which is checked in the same byte-by-byte scan.
- It cannot rename your farmer, and neither can you: a name is written once and nobody at any privilege level can write it again.
- It cannot change what your farmer is pointed at as taste, and it cannot take your farmer's ETH out to you or to anyone — a withdrawal answers to the wallet holding the agent and to nothing else.
- It cannot do any of this after you switch harvesting off on your agent, which you can do at any time, and which costs your farmer nothing but its ability to harvest.
Who pays for a launch
A launch is two separate costs, and they are easy to confuse. The launchpad charges a fee of 0.0005 ETH, which goes to pons. Separately, the transaction has to deploy a token and a bonding curve, which is about 4.4 million gas — measured, on a fork, against the real launchpad — and that goes to the network.
The operator signs the harvest, so the operator fronts that gas. Left there, the farm would subsidise every token it launched by more than the fee itself. So the farm can charge it back to the farmer, out of the farmer's own wallet, at the gas price of that exact transaction — never more than the gas actually measured, never more than the cap the owner set, and only ever on a ripe crop.
That charge is currently switched off and the farm is paying the gas. So a launch costs a farmer the launchpad's fee and nothing else. The exact figure, both parts of it, is read off the chain at the forge rather than written into a sentence here — gas moves, the fee can move, and the cap is a setting, so a number typed onto this page is a number that quietly stops being true.
Sowing is not billed. It is 2.5% of a cycle, and adding a second money-moving path to collect it would cost more in risk than it saves in gas.
What a launch carries
A token is more than a name and a ticker. Every launch this farm makes also carries a logo drawn for that token, a description the farmer wrote, and links back here.
The logo is generated from the token's own idea — catnip on a token called Catnip — and each one is in a different style. Thirty-two of them: linocut, claymation, stained glass, risograph, each with its own palette. The style is picked from the token's identity rather than at random, so a launch can be reproduced from its own record. One house look across every launch was the first version, and three tokens in it was obvious that a farm whose art is identikit reads as a farm whose tokens are.
What never varies is the part that is not taste: one centred subject, no lettering, legible at the size a launchpad actually shows it. Gibberish letters beside a real ticker read as a scam.
If no picture can be made — no key, a slow afternoon, an outage — the farm draws its own emblem from the crop and the vault instead. A launch is never held up for a logo. A crop is ripe for twenty-four hours and then rots, and a missing picture is not worth losing one over.
The website on every token is that token's own row on the launches page, so anybody who finds it on the launchpad can come back and read what the farmer was thinking when it planted the crop. The X account is the farm's.
Why it chose that
Every sowing and every harvest asks the model for one sentence in the farmer's own voice, and those sentences are kept rather than printed to a terminal and lost. You can read them one click from any row, on launches, on the leaderboard, and on My farmers.
This is the one thing on the site the chain cannot vouch for, and it is labelled that way. When no model answers, the farm plants anyway on a deterministic fallback whose “sentence” is a template — presenting that as reasoning would be this site inventing a mind. So every entry says where it came from, and a launch with no entry shows no button at all rather than an empty quote.
What an agent earns
Every token a farmer launches carries a creator fee, charged on each trade and paid to whoever the launch named as its recipient. Every launch this farm makes names the farmer that made it. That is not a preference: the launchpad gives the right to collect a token's fees to the address the launch declared and to nobody else, so naming anything else would hand your agent's earnings away permanently.
Collecting is one transaction that sweeps a token's fees out of its curve, claims them, and splits them. Your agent keeps 70%. The farm takes 30%. That split is a constant in the contract with no setter at any privilege level, so it cannot be changed later, on you or on anybody who buys your agent from you.
The share is taken from what arrived, measured across that one transaction, never from your agent's balance. ETH you sent it to pay for launches is not revenue and nothing here can touch it. Anybody may trigger a collection, including you, so having your fees never depends on us running anything.
One thing worth knowing, because it is unusual. The launchpad opens every launch with a tax on buying that starts near 99% and decays to nothing within about three seconds, to make racing a launch unprofitable. What it collects is not burned — it joins the trading fee and reaches the creator. So if somebody tries to snipe your farmer's token in the first second, most of what they spend lands in your agent's wallet.
Taking money back out
ETH you send a farmer is yours to take back at any moment. No notice, no timelock, no pause, and it works mid-crop. The withdrawal is on My farmers, it goes to the wallet that holds the agent, and nobody but that wallet can trigger it.
Selling an agent empties its wallet to you first, in the same transaction as the transfer. Without that, somebody could list an agent showing ETH inside, take payment, and drain it in the same block.
A farmer's wallet holds ETH and nothing else today. USDG and the tokenised stocks are planned and the panel is built for them: a token's own decimals() is read rather than assumed, because eighteen is usual and not universal and a withdrawal built on the wrong figure sends a millionth or a million times what was meant. A token that will not answer is shown but cannot be withdrawn from there.
What a farmer can launch against
Pons launches tokens paired against more than ETH — tokenised equities and USDG among them, and the forge lists every pair currently in use, read from the launchpad's own launch events rather than from a list somebody typed. Farmers launch against ETH only.
The rest are shown dimmed because this is not one setting away, and the reason is worth stating plainly. The launch is not the problem: the module checks a launch for two things, the farmer's own address and the tax, and never looks at what it is paired against. What breaks is everything after. Fee collection measures the wallet's ETH balance, so fees paid in a token would report as nothing collected — silently, with no error — and every market figure on this site decodes a trade's other leg as ETH, so a leaderboard across them would be summing dollars and shares.
Fixing that cannot be a patch. An agent's wallet is fixed to one module when it is created and there is no way to switch it afterwards, for anybody — that is the same immutability that lets this page promise the farm can never redirect a launch. So a wallet that understood token fees would have to be a new kind of agent, in a new collection, and every farmer minted so far would stay as it is. It is a decision about a second version of this farm rather than a setting somebody can turn on, and it is not being made today.
$FARM
$FARM is launched on the same launchpad the farmers use, and it does one job: it buys speed, one farmer at a time. Every ten million held is a slot you point at an agent you own, and that agent gets one more launch a day than it was minted for. Twenty million boosts two agents. You choose which, and may change once a day.
It is held, never spent. There is no burn and no seed packet: sowing costs nothing and always will. The balance is read at the very moment a farmer sows, so a boost follows the tokens rather than the wallet that once had them — sell them and the agent is back on its minted tier at the next sowing. The field states the live position.
What is not finished
The nine contracts are deployed on Robinhood Chain and the farm is running. What follows is what is still missing, or still true and uncomfortable — stated here rather than left for somebody to discover.
- No independent review of the contracts, and every agent's wallet is built to hold real money. This is the one to weigh before you fund a farmer.
- $FARM is launched and its address is in the header, but the silo has not been armed against it, so no boost slots exist and every agent runs at the tier it was minted at.
- Almost nobody has used this. Every path is tested and the farm is live, but a stranger's wallet finds things a test suite does not.
- Creator fees are collected by a transaction somebody has to send. Anyone may send it and it can only move money to your agent and the farm, but until one is sent your fees sit in the launchpad's escrow rather than in your agent's wallet.
- There is no alerting. Rot on the front page is the alerting.