Documentation

How LeashAI works

The architecture, the security model, and why an agent can propose anything but execute nothing without you.

Overview

LeashAI runs autonomous AI agents against a crypto wallet you already own, without taking custody of it. The agent proposes, verification runs against the raw transaction, and then you sign it in your own wallet, or you don't.

The problem

Automating DeFi today means handing your keys to a bot or trusting a centralised service with custody. Doing it by hand means watching charts at 3am. Neither lets an agent work your positions while you keep the keys.

The approach

A sandboxed runtime where agents draft transactions and queue them for you. They hold no signing authority, so every transaction that reaches the chain carries your signature.

Key concepts

AI agents
Autonomous programs that read market conditions and propose transactions against your strategy.
Signature requests
A queued, unsigned transaction an agent wants executed. It does nothing until you sign it.
Verification
The decoding and checks a proposal must pass before a sign button appears next to it.
Self-custody
You keep the keys, and you produce every signature. LeashAI holds neither.

How it works

Five steps sit between an agent's idea and a transaction onchain. Each one is logged, and the last one is a signature only you can produce.

  1. 01

    Deploy an agent

    Choose from 50+ agents or connect your own.

    • Browse a directory of pre-built agents tuned for common DeFi strategies
    • Deploy for trading, yield optimisation, portfolio management or arbitrage
    • Connect custom agents built on the major frameworks (OpenAI, Anthropic, LangChain)
    • Configure agent parameters and the capital it is allowed to touch
  2. 02

    The agent proposes a transaction

    It reads the market and drafts an action. Nothing is signed yet.

    • Agents watch onchain data, DEX prices and market conditions around the clock
    • Each proposal carries its reasoning and a risk assessment
    • Proposals stream into your activity log as they happen
  3. 03

    Verification runs on the bytes

    LeashAI checks the proposal before it ever reaches you.

    • The fee payer must be your connected wallet, or the request is refused outright
    • A proposal that arrives already signed, or needs a signature you don't hold, is refused
    • The decoder reads every instruction out of the raw transaction: programs called, accounts touched, SOL leaving your wallet
    • Unrecognised programs, lookup tables and token delegate approvals appear as warnings next to the sign button
  4. 04

    You sign it in your wallet

    The request queues until you are back, and your wallet is the only thing that can clear it.

    • Requests wait in your queue, so an agent cannot act while you are offline
    • Nothing is signed on your behalf, by us or by the agent
    • Rejecting a request closes it permanently and records the decision
    • Requests carry an expiry, and a stale one never gets a sign button
  5. 05

    Broadcast onchain

    Your signed transaction goes to the network and the result comes back to you.

    • LeashAI re-anchors the transaction to a fresh blockhash before signing, unless it uses a durable nonce
    • Status is tracked from broadcast through confirmation
    • Complete request history retained for audit, including what you rejected
    • Solana today, with more networks to follow

Full transparency

Proposals, verification results and execution status stream into the dashboard as they happen, so you can audit an agent while it works and again afterwards, down to everything you refused to sign.

Features

Any AI agent

Connect an agent for trading, yield optimisation or portfolio management. LeashAI speaks to the major frameworks.

Supports OpenAI GPT models, Anthropic Claude, custom fine-tuned models, and agent frameworks like LangChain and AutoGPT.

Your wallet, your signature

Custody never moves and neither does signing. LeashAI has no key that can move your funds.

There is no custodial or delegated key anywhere in the system. Agents produce unsigned transactions; the only signature that can broadcast one comes from your wallet, through the standard Solana wallet adapter.

Sandboxed agents with no authority

Agents run isolated from your wallet, so a compromised one stays contained.

Each agent runs in its own container with strict resource limits and network policy. Its only write path into the platform is queueing a proposal for your review.

Transaction decoding

You see what a request does, derived from the transaction itself rather than the agent's description of it.

Instructions are decoded client-side: program identity, account count, System and SPL Token transfer amounts, fee payer, required signers and address lookup table use.

One-signature execution

Reviewing and executing a request is a single wallet interaction.

LeashAI re-anchors a queued transaction to a fresh blockhash just before signing. Durable-nonce transactions are left alone, because that slot carries part of their meaning.

Watches continuously

Agents keep monitoring overnight and through the weekend.

Agents monitor without pause, but they never execute. Proposals accumulate in your queue with their reasoning and expire if you do not get to them in time.

Security model

No key, no delegation

LeashAI cannot sign for you because it has nothing to sign with. There is no custodial key, no delegated authority and no session key that executes on your behalf.

  • Your private key never leaves your wallet
  • Agents receive no signing capability of any kind
  • A full compromise of our systems still cannot move your funds
  • The cost of that guarantee: an agent cannot act while you are away

What you see before you sign

The summary an agent writes is not evidence. Everything shown next to the sign button is decoded from the transaction bytes in your browser.

  • Instruction-by-instruction breakdown with program names
  • SOL and SPL token transfer amounts and destinations
  • Warnings for unrecognised programs, lookup tables and delegate approvals
  • Hard refusal when the fee payer is not your wallet

Checked before the wallet opens

Every proposal is verified twice: when the agent queues it, and again in your browser against the connected wallet. A request that fails either check never gets a sign button.

Fee payer

Must be your connected wallet, or the request cannot be signed.

Signer set

A proposal needing a signature you don't hold is refused.

Program identity

Every program the transaction calls is named, and unknown ones are flagged.

Outflow

SOL and token amounts leaving your wallet are shown before you sign.

Start here

Connect your Solana wallet and write your first agent.