$LEASH · on Solana

Let your agent spend. Keep the leash.

Leash puts hard spending limits on AI agents using Solana's native allowances. Give each agent a capped budget, watch every pull it makes, and revoke every permission in one tap.

0 keys handed to agents 1 tap to revoke all 100% native Solana program
Today's leash agent dca-bot-7 · USDC
0.00 pulledcap 50.00 / day · max 15.00 / pull

    Example agent, simulated pulls.

    The problem

    An agent with a hot wallet is a dog off the leash.

    Agents now trade, pay for data and run errands on Solana. To do it, most of them get a private key and the whole balance behind it. One poisoned prompt or one bad tool call, and the wallet empties in a single transaction. Solana is fast and final. There is no undo.

    How it works

    Clip. Walk. Yank.

    Your agent never gets your keys. It gets a leash: a capped, expiring permission to pull from your wallet. You hold the other end.

    STEP 1

    Clip

    Pick an agent wallet and set its leash: max per day or week, which token, the date it ends, and an optional max per pull. Leash writes it as a native Solana allowance. One signature.

    STEP 2

    Walk

    The agent pays for swaps, data and tools on its own, inside the cap. The program checks every pull on-chain. Leash shows each one live and pings you at 50, 80 and 100 percent.

    STEP 3

    Yank

    Something looks off? One tap revokes every allowance you gave, across every agent. The money never left your wallet, so there is nothing to claw back.

    Built on Solana Subscriptions & Allowances, the shared on-chain program for capped and recurring spending. Works with SPL Token and Token-2022. Read about the program

    Try it

    Pick the length.
    Watch it hold.

    Set a leash for an example trading agent, then send it on a walk. One of its pulls comes from a poisoned prompt. See what the leash does with it.

    Leash stops any single pull above this before it is sent.

    Resets each day. Leash pings you at 80%.

    Leash on agent trade-bot-3 · ends in 30 days
    0.00 pulled todaycap 40.00
    • Waiting for the agent·idle

    Press Send it on a walk to start.

    What you get

    Everything a good owner needs.

    PER AGENT

    One leash per agent

    Every bot gets its own cap, token and end date. A trading bot and a research bot never share a budget.

    RESET WINDOWS

    Daily or weekly caps

    Recurring allowances reset each cycle, so an agent can keep working for months without ever holding more than one cycle's budget.

    EXPIRY

    Every leash ends

    No forever permissions. You pick the end date when you clip it, and the allowance stops working on its own.

    ALERTS

    Pull alerts

    Telegram, email or webhook when a budget hits 50, 80 or 100 percent, or when an agent pays somewhere it never paid before.

    KILL SWITCH

    Revoke all

    One button ends every allowance you gave, batched into as few transactions as possible. Funds stay where they are: in your wallet.

    LEASH REQUESTS

    Agents ask, you approve

    An agent that needs a budget sends a request with an amount and a reason. You approve it from your phone, or say no.

    For builders

    Ship agents people trust with money.

    Ask for a leash instead of a private key. Users approve a budget they understand, and your agent spends inside it.

    • SDK. Request, check and spend from a leash in a few lines of TypeScript.
    • MCP server. Any MCP-capable agent can see its budget and request more before it pays.
    • No custody. Neither you nor Leash ever holds user funds or keys.
    import { Leash } from "@leash/sdk";
    
    const leash = new Leash({ cluster: "mainnet-beta" });
    
    // ask the owner for a budget, not a key
    const req = await leash.request({
      agent: wallet.publicKey,
      token: "USDC",
      perPull: 10,
      perDay: 40,
      ends: "30d",
      reason: "DCA into SOL + price data",
    });
    
    await req.approved();          // owner taps approve
    await leash.pull({ amount: 4, to: JUP_FEES });
    // over the cap? the program refuses it.

    SDK and MCP previews. Package names and APIs may change before release.

    The token

    $LEASH

    Your funds never depend on a token. Allowances work in USDC, SOL or any SPL token. $LEASH is how the pack runs the tools around them.

    Pro by holding

    Hold $LEASH to unlock Pro: more agents, Telegram approvals, team wallets and faster alerts.

    Bad Dog list

    Stake to flag drainer addresses. Leash warns and blocks agents from paying them. Correct flags earn, false ones get slashed.

    Buybacks

    A share of Pro revenue buys $LEASH from the market.

    Safe defaults by vote

    Holders vote on the presets every new leash starts with: default caps, end dates and alert levels.

    Contract Announced on @leashonsol only. Never trust a CA from DMs.

    Collar your agent before it finds the wallet.

    Give it a budget it can't outrun and a leash you can pull from anywhere.

    Roadmap

    The walk ahead.

    Phase 1 · now

    Leash

    • $LEASH launch on Solana
    • Dashboard: clip, watch, yank
    • Per-pull and daily caps, expiry
    • Pull alerts
    Phase 2

    Pack

    • Leash requests from agents
    • SDK and MCP server
    • Telegram approvals
    • Team wallets
    Phase 3

    Bad Dog

    • Staked drainer blocklist
    • Pro tier by holding
    • Alerts on new destinations
    Phase 4

    Kennel

    • Holder votes on safe defaults
    • Buybacks from Pro revenue
    • Plug-ins for agent frameworks

    FAQ

    Questions at the dog park.

    Does Leash hold my money?

    No. Your tokens stay in your wallet. The agent gets an allowance: a permission to pull up to a cap, checked by Solana's Subscriptions & Allowances program. Leash is the dashboard and alert layer on top.

    What happens if my agent gets prompt-injected?

    It can still only pull what its leash allows. A request for 4,800 USDC on a 40 USDC daily leash is refused on-chain, because the allowance itself can never pay out more than its cap. You get an alert, and you can yank every allowance in one tap.

    Does my agent still need a private key?

    It needs its own wallet to sign as the delegate. It never needs yours. Keep that agent wallet nearly empty and let it spend from your allowance.

    Which tokens work?

    Any token on SPL Token or Token-2022, including USDC. $LEASH is only needed for Pro features and the Bad Dog list, never for the allowances themselves.

    Is it audited?

    The Subscriptions & Allowances program is a shared Solana program that has been audited. Leash's own code is open source on GitHub, and we will publish audits there as they happen.