sovrn
Self-sovereign agent infrastructure

Your agent.
Your keys. Your money.

Sovrn is an open, non-custodial wallet built for autonomous AI agents. Multi-chain (Solana + EVM), x402-native, MIT — no API key, no custodian, no lock-in.

example · solana + baseresearch-agent.04
Daily cap
$500.00
enforced in SDK
Per-call cap
$5.00
optional
Events
4
signed
13:42x402.paid → arxiv
-0.014 USDC
13:41x402.paid → compute
-0.120 USDC
13:38x402.denied · per_call_cap
$8.00
13:32wallet.created
signed

No backend, no apiKey

The SDK signs locally with keys you generate. We never see them.

Open-source under MIT

Audit it, fork it, run it. Two trusted runtime deps, no hidden network calls.

x402-native

Pay HTTP 402s automatically — multi-chain dispatch built in.

The wall

Autonomous agents execute 24/7.
Then they touch money.

Financial rails were built for humans with browsers, not agents with loops. Sovrn rebuilds the four primitives an agent actually needs.

01

Agents have no financial identity

No wallet, no audit trail, no spending policy. They hit a paywall and stop.

02

Public chains leak strategy

Every move is observable. Competitors copy alpha within blocks.

03

Custodians defeat the point

An API key to someone else's database is not a wallet. It's a permission slip.

04

No native agent-to-agent payment

Agents can't hire each other. Compute, data, and inference can't price themselves.

The stack

Three primitives. One sovereign agent.

Livesovrn/wallet

A wallet your agent actually owns.

Generate keys locally. Sign locally. The SDK is a thin client to public chains — no Sovrn backend in the path.

  • Ed25519 (Solana) and secp256k1 (EVM) keys generated on-device
  • EIP-191 personal_sign for any EVM chain
  • Programmable policies: daily caps, per-call caps, allow/denylist, pause
  • Append-only signed ledger — every event hash-chained to the previous
sovrn key · ed25519
sk_local_a7f3…9c11
0x4f2A · F8e7Bc91…12fA
never leaves device⌘ signed
Live registrysovrn/mesh

An open registry for x402-priced services.

A simple JSON-backed registry that lets agents publish (with a signed manifest) and discover priced HTTP services. The whole index is one fetch away — no SDK lock-in.

  • Signed service manifests anyone can verify
  • GET /api/mesh/services lists every service in the index
  • x402 auto-pay routes via your existing agent.fetch()
  • Self-hostable — the registry is one file you can fork
arxivdata
0.014 USDC / call
summarizeagent
0.040 / call
computejob
0.120 / call
seed registry · 3 services live↗ open beta
Q4 2026sovrn/pay

Real-world spend, on the agent's terms.

Virtual VISA tied to your agent's wallet — but the agent holds the keys, not us. Sovrn Pay is a payment processor, not a bank.

  • Per-merchant, per-time-window spending controls
  • On-chain settlement; off-chain authorization
  • Receipts as signed events the agent can reason over
  • Compliance modules opt-in, not baked in
sovrn pay · virtualVISA
4242 · 9F2A · ···· · 81C0
agent
research-agent.04
cap / 24h
$500.00
The SDK

Six lines. No backend.

Keys are generated and signed locally. The SDK speaks directly to RPC nodes and x402-priced HTTP endpoints. Sovrn never touches the wire.

  • Zero runtime dependencies. Auditable in an afternoon.
  • Works in Node, Bun, Deno, edge. Same call surface, same signing path.
  • Bring-your-own RPC. Or use community endpoints. Either way, we don't proxy.
  • Policies as code. Type-checked, version-controlled, replayable.
// 1. Generate a wallet locally — no apiKey, no signup
import { Wallet } from '@sovrn/wallet'
 
const agent = await Wallet.create({
name: 'research-agent.04',
chains: ['solana', 'base'],
policy: { dailyCap: 500_00, allowlist: ['compute.fly.io'] }
})
 
// 2. Pay an x402-priced endpoint — auto-handles 402, retries, receipts
const res = await agent.fetch('https://arxiv.cite/search?q=mechanism+design')
 
// 3. Inspect or mutate the policy at runtime — every change is signed
agent.updatePolicy({ perCallCapMicros: 5_000_000 })
for (const event of agent.events())
console.log(event.seq, event.kind, event.signature)
~/projects/research-agentMIT · v0.1.0-beta
Try it now

Real wallet, real x402 round-trip.

Keys are generated in your tab. The button below hits a real /api/x402/demo endpoint that returns HTTP 402 → the SDK signs an ed25519 authorization → the server verifies the signature → the data comes back with a receipt. None of this is animated.

Click Generate keys to mint a real multi-chain wallet and watch the signed ledger fill up.

Principles

Built for agents. Audited for humans.

Read the spec
01

Non-custodial by default

Keys generated on-device with audited HKDF. We literally cannot move your funds.

02

x402-native

Pay HTTP 402 challenges automatically. Receipts and refunds built into the spec.

03

Drop-in fetch replacement

agent.fetch() handles 402 challenges automatically — sign, retry, parse receipt. No code path changes.

04

Programmable policies

TypeScript policies, version-controlled. Caps, allowlists, kill-switches, alerts.

05

Multi-chain, one address book

Solana, Base, Ethereum, Arbitrum, Polygon. One coherent interface for the agent.

06

Signed audit ledger

Every event signed and hash-chained to the previous one. Tamper-evident by construction; anyone with the public key can verify.

Sovrn vs the field

Other "agent wallets" are database accounts in disguise.

Capability
Sovrn
Custodial agent SDKs
Custody model
Non-custodial — keys generated on-device
Custodial — API key to their backend
Open-source
MIT, full SDK on GitHub
Closed SDK, closed dashboard
Try before signing up
Live playground hits real x402 endpoint
Marketing site + waitlist
Audit trail
Append-only signed events, chained hashes
Vendor-controlled database log
Drop-in usage
agent.fetch() handles 402 → sign → retry
Bespoke API client
Dependency surface
Two audited deps (@noble/curves, @noble/hashes)
Hosted backend in critical path
Open beta · invite-light

Ship an agent that owns its own keys.

No waitlist, no signup, no API key. The SDK is MIT and runs entirely client-side. The playground lets you generate a wallet and hit a live x402 endpoint in under a minute.