Actions recorded
Payments, trades, caps and revocations
Your agent can trade. It can't touch more than you allow. Nobody can.
Claude, ChatGPT or any MCP client gets its own Solana wallet and an allowance. It pays APIs over x402, trades any token through Jupiter, and writes every action to a public registry anchored on chain. Over budget, it stops. Revoked, it stops.
"ape $5 into WIF" in Claude or ChatGPT.
Within your caps. Honeypots refused.
Re-priced first, floor held, signed by the agent.
Signed, chained, anchored. Check it on /verify.
One command gives your agent all three, and none of them depends on trusting the agent.
A Solana keypair on your machine. Fund it with USDC only: it pays x402 APIs without holding any SOL.
Install itCaps per action, per day and in total, a pay list and a kill switch. The model can read them, never raise them.
Set the allowanceEvery payment and trade is signed, hash-chained and anchored on Solana. Anyone can check one in a browser.
Verify an entrySet by you, read live from this agent's policy, checked before anything is signed.
The most one payment or buy can cost.
Before signingRolling window, counted from the public registry.
Every actionThe whole allowance. Past it, the agent stops.
Every actionMax price drift. Re-quoted before signing, floor enforced on chain.
Every tradeCommand to revoke. The next call fails, funds can sweep home.
Owner onlyBalance, holdings, spend and every action come from its wallet and its registry. Each line links to its proof.
Open the dashboard →"Put $2 into WIF." The agent resolves the ticker on Jupiter and refuses tokens that can still be frozen.
Jupiter prices it on mainnet liquidity. The agent checks its budget and the slippage cap.
It re-prices, aborts if the market moved past the floor, then signs with its own key.
A signed line in the registry, rolled into a Merkle root posted on Solana.
Read from this agent's registry and its Solana anchors when the page loads.
Payments, trades, caps and revocations
Merkle roots posted as SPL memos
And not one dollar past them
The commands and what they printed on a local validator: a wallet, an x402 payment, a buy, a refusal, a revocation.
| Tool | What it does |
|---|---|
allow_wallet | Its address, balance, holdings and trading mode. |
allow_budget | Caps, what's used, what's left. It checks before spending. |
allow_pay | Fetches a URL and pays its x402 price in USDC (no SOL needed, the seller pays the fee) or SOL. |
allow_quote | Prices a buy or sell of any token on Jupiter. Nothing moves. |
allow_swap | Executes the quote, under the floor it showed. |
allow_token | $ALLOW on chain: supply, price, market cap, largest holders. |
allow_history | The public registry: every payment and trade. |
Launched on pump.fun. The contract address is published here and on X at launch, nowhere else first.
Drops at launchNo. None of the seven tools writes the allowance. The owner controls answer only on this machine, never through a tunnel.
Not to pay. x402 payments in USDC are signed by the agent and submitted by the seller, who pays the network fee. A few lamports of SOL are only needed to anchor the registry on chain and to trade.
You do. It's a file in ~/.allow on your machine. Allow runs no custody server and never sees it.
Yes, through Jupiter on mainnet when you switch live mode on. Until then every swap fills at the live Jupiter quote into a paper wallet and is marked simulated in the registry.
Tokens whose creator can still freeze holders are refused. Thin liquidity, open mint and concentrated holders come back as warnings in the quote.
Each entry is hash-chained and signed by the agent. Batches are rolled into a Merkle root posted as an SPL Memo signed by the same wallet. /verify checks all of it against a Solana RPC from your browser.
One command, a budget you set, and a public receipt for everything it does.