Policy-gated deposits.
Sponsored. Verified. Audited.

An autonomous agent that scans a wallet, ranks yield venues by live APY, and deposits through KeeperHub — policy-gated, gas-sponsored, and verified onchain. The last mile of the scan-to-automate funnel, executed.

Sepolia · sponsored gas · contract-call + MCP + CLI
Best venue APY
0.00%
Sponsored txs
0 ·
plow scan 0x1776…4Bf  ·  1 venue ranked  ·  1 deposit sponsored
KeeperHub · specs/scan-apy-yield-suggestions.md
"Read-only: Yes. No deposit/approve/write node is produced. The auto-deposit write path is the deferred Phase 999.1 backlog item and is out of scope here."
The gap

Scanners recommend. Nothing executes.

Every automation funnel stops at the read. The suggestion engine ranks the venue, shows the APY — and then nothing happens. Plow is the write path.

0

Write nodes produced

The sponsor's own spec defers the deposit path to a backlog item. Read-only by design, so idle balances stay idle.

0%

Idle balances earn nothing

Stablecoins parked in wallets earn nothing while the same assets in a supply venue earn live APY. The distance between them is one transaction.

1

Decision, gated

No blind deposits. Every action passes a policy gate — venue allowlist, simulation, exact approvals — and every outcome lands in an audit trail.

How it works

Scan. Rank. Gate. Execute. Verify.

One address in, a deployed yield position out — every step executed through KeeperHub and logged.

Scan

Multicall3 reads resolve every stablecoin position across chains — the same methodology as KeeperHub's scanner.

chain reads

Rank

Live APY from DefiLlama yields, cached and degrade-safe. No stale numbers — on lookup failure the suggestion degrades gracefully.

defillama

Gate

The deposit is a proposal, not an order. Venue allowlist, simulate-first, exact approval per KeeperHub's PREFILL-07. Out of policy — zero transactions.

policy gate

Execute · Verify

Gas-sponsored contract-call deposits, then balanceOf read-back as onchain proof. Idempotency-aware retries never double-deposit.

sponsored + audited
Live flow

Recorded run (Sepolia)

A complete deposit run from the CLI — scan, rank, gate, execute, verify.

plow — scan → rank → gate → deposit
$ plow --chain sepolia scan --address 0x1776D4D751d97c85845bF54e6CE364CEc62D4bBf read idle WETH   0.01 @ 0xc558dbdd85…9a3c rank venues (defillama yields, live)   1. Aave V3 (WETH supply)   1.45% apy $ plow deposit --venue aave-v3-weth --amount 0.005 · gate  venue allowlisted ✓  simulate: wouldRevert=false ✓ · approve exact 0.005 (no max-uint)  → sponsored · deposit 0.005 → aave-v3-weth      → sponsored 0x06d9288e…26f · withdraw 0.002 (execute_withdraw)  → sponsored 0x41d8900d…88f verify balanceOf = 0.003 aWETH · onchain read audit  {decision:ALLOW, gas:sponsored, outcome:landed, ts:…} $

Replay of the recorded run — the hashes below are verified onchain.

Built on KeeperHub

Execution guarantees

All execution goes through KeeperHub's direct-execution API; every decision is recorded in the audit trail.

contract-call

Sponsored execution

Deposits and approvals execute via the direct-execution API with gas sponsorship on testnets — the agent never touches gas math.

policy gate

Fail closed

Venue allowlist, simulate-first, exact approvals per PREFILL-07. Unverifiable simulation means DENY — never a blind pass-through.

audit trail

Every decision logged

Trigger, simulation result, tx, gas, sponsored flag, outcome, timestamp — the full audit record behind each deposit.

MCP + CLI

Agent-callable tools

scan_positions, rank_venues, execute_deposit, verify_position — MCP-shaped tools any agent can call, BYOK per org.

idempotency

Idempotent retries

Stable semantic-intent keys, rotation on retry, chain-verify before re-firing — the sponsor's own reliability research applied.

defillama

Degrade-safe APY feed

Rankings come from live yield data with a cache and graceful degradation — a stale feed never produces a stale deposit.

Evidence

Onchain evidence

Every run lands real sponsored transactions on Sepolia, each verified status 1 on the explorer.

RunActionTxStatus
01Scan + rank — live Aave V3 WETH APYonchain reads1.45% live
02Supply 0.005 WETH → Aave V30x06d9288e…26fsponsored
03Withdraw 0.002 WETH from Aave V30x41d8900d…88fsponsored
04Supply to unlisted venuezero txsblocked
05verify_position aWETH read-back0.003 aWETHverified
06Supply 0.001 WETH → Aave V30x6849ae31…8353sponsored
07verify_position aWETH read-back0.004 aWETHverified

All hashes verified status 1 on Blockscout; the sponsored flag is captured per run.