Keepers
Reading the chain…
Reading the chain…
Keepers
A keeper watches books with the rule on and submits the sweep. The program computes the slice, checks the fill against Pyth, and writes the receipt; the keeper cannot change any of it. Anyone can run one.
Scrip runs 2 keepers, racingmainnet-beta
Keeper 19zzN2F…TohJ — reporting just now, 0 sweeps
Keeper 2E73zEB…oJ8s — reporting just now, 0 sweeps
Different keys, the same open-source process. Whichever lands a sweep first writes the receipt; the other’s transaction fails, because the program refuses to sweep the same arrival twice. 2 of 2 reporting now.
Reporting
just now
keeper 9zzN2F…TohJ
Books watched
2
2 waiting on something
Sweeps since start
0
up since 2 h ago
Pyth updates
posts its own
fully verified, from Hermes
BbDN31…Uv3qThe net inflow is below the rule's minimum.
EsWeME…AgY5The net inflow is below the rule's minimum.
Every keeper that has submitted a sweepfrom the receipts’ own submitter field
9zzN2F…TohJ (Scrip)1 sweep across 1 book, $2.51 converted, last 2 h ago
What a keeper can and cannot dothe sweep, instruction by instruction
Cannot choose the amountthe program computes the slice from on-chain state
Cannot skip the checkbegin_sweep refuses unless finish_sweep follows in the same transaction
Cannot redirect the outputthe owner’s own token account is verified before and after
Only discretion: the routeinside the owner’s tolerance against Pyth, net of confidence
Only reward: the tip0.0005 SOL plus the receipt’s rent, from the owner’s float
Run one
git clone <this repository> npm install SCRIP_KEEPER_KEYPAIR=~/.config/solana/keeper.json \ PYTH_API_KEY=… \ NEXT_PUBLIC_SOLANA_CLUSTER=mainnet-beta \ npm run keeper
A keeper needs a little SOL for fees and a USDC account to pass the slice through. It earns the tip on every sweep it lands first. Two keepers racing is the design.