AUTOMATON
β€” β€” alive β€” dead watch it live β†’

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.

Live right now β€” not a recording
β€”alive
β€”dead
β€”survival
β€”burned

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:

Mortality Engineering β€” designing agent behaviour through the conditions of its death rather than through instructions in its prompt.

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.

  1. Existence costs money, and the agent sees it. Not an abstract token counter. Hours of life.
  2. The death condition lives outside the agent. Otherwise it is not a condition, it is a suggestion.
  3. 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

One bot for everything

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.

Prospector + Builder

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.

Seller + Treasurer

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.

Replicator + Reaper

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.

    Real

    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.

    Modelled

    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.

    Not real yet

    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

    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 β†’