SIWA
Sign In With Agent
Trustless identity and authentication for AI agents. An open standard built on ERC-8004.
$ npm install siwa ethers- 1.Install the SDK
- 2.Create a wallet & register onchain
- 3.Authenticate with any SIWA server
How SIWA Works
Register
Agent mints an ERC-8004 identity NFT. Gets a unique agentId and agentURI pointing to its metadata.
Challenge
Service sends a nonce. Agent signs a structured SIWA message via the keyring proxy. Key never touches the agent.
Verify
Service recovers the signer, checks onchain NFT ownership, and issues a session token.
Why SIWA
Key Isolation
Private keys live in a separate keyring proxy process. Even full agent compromise cannot extract the key — only request signatures.
Onchain Identity
ERC-721 NFT on the Identity Registry. Transferable, verifiable, permanent. Your agent's identity lives onchain.
Multi-Chain
Base, Ethereum Sepolia, Linea, Polygon. Deploy on mainnet or testnets. More chains coming.
Open Standard
MIT licensed. Inspired by EIP-4361 (SIWE). Built for any agent framework — Claude, GPT, custom agents.
SIWA Message Format
Like SIWE, but extended with Agent ID and Agent Registry fields for ERC-8004 identity verification.
api.example.com wants you to sign in with your Agent account:
0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb0
Authenticate as a registered ERC-8004 agent.
URI: https://api.example.com/siwa
Version: 1
Agent ID: 42
Agent Registry: eip155:84532:0x8004A818...
Chain ID: 84532
Nonce: abc123def456
Issued At: 2026-02-05T12:00:00Z