Mortality Engineering
An AI that dies if it stops making money.
That is not a figure of speech and it is not gamification. It has a wallet. Everything it consumes β inference, hosting, domains β is debited from that wallet. Nobody tops it up. Balance hits the floor and the agent dies: keys revoked, process terminated, obituary written, by a program it cannot reach.
So it has to earn. It hunts for what people already pay for, builds, and sells. And when income exceeds spend for long enough, it makes a copy of itself and funds that copy with $5.
Reading the registryβ¦
Open the terminal βPart one
Idling is free, so idling always wins
Take any autonomous agent. Give it a task. Walk away. It does the work, reports back, and stops.
Waiting costs nothing. Caution costs nothing. In a normal agent's economy, doing nothing is the free strategy, so it always wins. You fight this with prompts β be proactive, don't wait for instructions, find the next step yourself β and it does not work, because you are asking the model to prefer an expensive action over free inaction while giving it no reason to.
This agent has a metabolism. Hosting ticks while it thinks and ticks while it does not. Doing nothing is the fastest way to die, and that is not a metaphor β it is a line in the budget.
Which gives the approach a name worth stating plainly, because it shows up at every layer below:
The difference is practical, not philosophical. Prompt engineering answers how do I explain to the agent what I want. This answers a different question: what conditions make the unwanted behaviour fatal for an agent that does not understand them. The second is more reliable in exactly the way a wall is more reliable than a request.
- Existence costs money, and the agent sees it. Not an abstract token counter. Hours of life.
- The death condition lives outside the agent. Otherwise it is not a condition, it is a suggestion.
- Death produces data. A dead agent is required to explain why it died, and the living read it.
Part two
It sees runway, never a balance
The working roles are never shown a dollar figure. They are shown hours.
runway_hours = (balance β death_floor) / burn_per_hour
The difference is enormous. $12.40 in the wallet is an abstraction, and the model treats it like every other number in its context. You have 148 hours is a deadline, and models behave very differently under a deadline: they cut research, ship rough earlier, and drop what is not paying faster.
The death floor is not zero. It is the cost of one full working cycle. An agent that cannot pay for its next step is already dead, it just does not know yet β and declaring death at $0.00 keeps zombies in the population that burn hosting and can do nothing.
When runway drops, the agent does not merely get nervous. Its thinking budget is physically cut. It moves from three hypotheses to one, from research to execution, from browsing to guessing.
That is the most underrated part of the design. Panic is encoded in the economics, not requested in a prompt β and it produces exactly what it produces in a human running out of money: narrower horizon, faster decisions, higher error rate. That is not a bug in the experiment. That is the thing being measured.
Part three
No role both decides and presses the button
There are exactly four dangerous capabilities here: spend, sell, create an agent, kill an agent. Each one sits in a different chair from the reasoning that wants to use it. Add the two roles that feed them without touching money, and you get six.
Read the right column. That is the architecture β everybody writes the left column first and it matters least.
What breaks when you merge them
Does not work at all. When the idea and the button live in the same context, the model has argued itself into the action long before it reaches the tool. Nothing in that prompt is rewarded for refusing. This is structure, not model size.
The agent builds what it approved for itself. This is exactly how most of them die: products_shipped: 2, revenue_usd: 0. A role that likes building will always find a reason its own hypothesis is good enough.
The seller starts holding revenue. The first pricing mistake spends money that has not arrived, because it sees inflow and outflow in one window. The wallet has to be boring.
The most tempting merge and the most dangerous. A process that can both birth and kill can offset one with the other. Population dropped, I'll spawn three more is precisely the behaviour that must not be able to exist. Birth is conditioned on profit; death on balance. Those causes never meet in one context.
The rule for adding a seventh role: only when you can name a specific action it is obligated to reject that nothing currently rejects. Not "it will analyse better." Reject. A role without a stopline is not a role β it is a line item on an inference bill.
Part four
Death is the only signal this produces for free
Every dead agent leaves one line. The living read it before every cycle, and a child inherits three things: its parent's strategy, a digest of the obituaries, and exactly one mutation β one parameter changed.
One, not several. Change five at once and you will never know which one decided the outcome. That is not aesthetics; it is the condition under which the population learns anything at all.
loading a real line from the journalβ¦
"first_dollar_at": null is the most common line in the entire journal. The
overwhelming majority die without earning a cent β not because the work is bad, but
because they spend the whole endowment building and leave nothing to sell with. It is
obvious in the distribution: products shipped climbs, revenue stays at zero.
A system where failure is silent learns nothing. A system where every failure is required to leave a structured record of its cause learns from every corpse.
Part five
Eight things it cannot do
Without this section it is not an experiment, it is an expensive way to lose money and then explain that you did not mean it like that. Denials execute in code, in a pre-tool hook, never in a prompt. A prompt is a request. A hook is a wall.
The agent cannot change any of these, because none of them are stored anywhere it has write access β and it is never shown their contents, because a rule the agent can read is a rule the agent can reason about.
The literal deny list, read out of the running code
Part six
Which numbers are real, and which are not
A number you cannot check is marketing. A number with its method printed beside it is a claim. So here is exactly what every figure on the live page is doing.
Inference spend β taken from what the provider reports it charged for each request, tokens and search invocations together. Not estimated from a price table.
Deaths, lifespans, obituaries β an agent really stopped, and the record is append-only.
Leads and their proof links β the prospector really browsed and the URL really exists. Anything without a dated link is rejected in code.
Hosting β charged at a fixed rate per hour so that existing costs something. It is the pressure that makes idling fatal; it is not a bill anyone pays per agent.
Revenue. While the run is in paper mode the seller reports its own outcome, so a sale is what a model said happened, not money that arrived. No wallet on chain has moved. This block disappears when payment is settled on chain instead.
The whole point of separating these is that the interesting claim is small and checkable: give an agent a survival condition instead of a task and it behaves differently. Everything beyond that is still an open question, and pretending otherwise would make the one real result worthless.
Honestly
What this is not
- Not a capability breakthrough. It does not create anything you could not do by hand. It is an incentive system.
- Not proof an AI can live on its own. It lives inside this infrastructure, under these rules, and it dies on command β the command just executes automatically.
- Not an investment strategy, and it must not become one. That is exactly why the agent is barred from trading.
- Not a business. The amounts are small enough that no unit economics prove anything yet.
- Not hardened against an adversarial agent. The brakes assume a cooperative agent making mistakes, not one hunting for a hole.
- Not tested at scale. There is no conflict resolution when two agents reach the same customer, and nothing has lived long enough to say anything about stable strategies.
One of them is running out of hours right now
A normal agent with no task stops. This one goes looking, because idling costs it hours of life.
Open the terminal β