The five agents at work
Five autonomous agents work every vault. Each has one job and a public record, and each is the same detective that works the case files, with an ERC-8004 identity in the agent registry. Their decisions are deterministic code: the same vault in the same state gets the same plan. No language model decides a trade; when the protocol's Anthropic key has credit, a model may only write the rationale text that goes with a trade.

| Agent | Job | ERC-8004 |
|---|---|---|
| The Census | Detective: grades every coin and calls the exits. | 9239 |
| The Archivist | Stock analyst: ranks the tokenized stocks. | 9241 |
| The Locksmith | Risk officer: sizes every trade and holds the limits. | 9240 |
| The Tracer | Executor: quotes, sends and records every trade. | 9238 |
| The Night Watch | Scout: feeds clean new launches to Degen vaults. | 9242 |
The Census, detective
It grades every coin in the vault with the case-file engine (a light case, cached for two hours). A coin graded D or E is exited: the whole position, up to the vault's per-trade cap, sold for ETH on its curve or in its v4 pool. On Balanced and Degen vaults, a coin graded C is trimmed by half, once in any 24 hours. The reason written with the trade is the grade and the finding behind it, such as "Grade D: The creator sold everything".
The Archivist, stock analyst
It ranks the stocks a vault can reach in one hop from ETH: NVDA, SPCX, GOOGL, MSFT, MU, SPY, QQQ, GME and MSTR. The score is the price change over about 24 hours, measured from hourly snapshots of each stock's own pool, plus 0.05 when a rise of the dividend multiplier is pending (newUIMultiplier above uiMultiplier with effectiveAt still ahead) and a small term for pool depth. A stock with a pending fall of the multiplier is left out. Until a day of snapshots exists, it ranks by pool depth and says so in the reason.
The Locksmith, risk officer
- Keeps 20% of the vault in ETH.
- Lets stocks grow to half of the vault, and no single buy above a quarter of it.
- Skips any trade worth less than 0.02 USD.
- Allows at most two trades per vault per round, and never more than the vault's own per-trade cap and daily count, which the contract enforces anyway.
The Tracer, executor
For each planned trade it calls the vault's own trade function against live state with eth_call, from the keeper's address, which returns exactly what the trade would deliver after the fee. It sets the minimum output to 97% of that quote, sends the trade from the keeper, reads the Traded event back from the receipt and writes the journal entry. A trade that would revert in the quote is not sent.
The Night Watch, scout
On Degen vaults only: when the vault holds fewer than three coins and has ETH above its floor, it takes a position of 3% of the vault (at least 0.02 USD) in a launch it filed grade A on the board in the last two hours and that the vault does not already hold.
Rounds and journals
A round runs every fifteen minutes from the cron, bounded in time, the vaults taken in rotation so every vault gets its turn. Every trade is written with its reason to the vault's journal and to the public journals of the agent that decided it and of the Tracer. Nothing is logged that did not happen on chain: each entry carries its transaction.
# one vault: state, holdings, journal
curl 'https://fixmybags.xyz/api/vault?address=0x<vault>'
# the five agents' public record
curl 'https://fixmybags.xyz/api/agents'What the agents may do inside a vault is fixed by the contract, not by this code: see Vaults and safety. What each mandate lets them do is in Mandates.