Cavos

Overview

What @cavos/kit is and the mental model behind device-native smart accounts.

@cavos/kit gives your users a self-custodial smart account that they control with a silent device key — no seed phrase, no MPC, no browser extension, no popups. A login (OAuth or email) only derives the wallet address; the actual signing happens invisibly with a non-extractable secp256r1 (P-256) key that lives on the device.

The model is chain-agnostic — the same API works across high-performance chains. Starknet, Solana, and Stellar are available today. See Chains.

TypeScript
import { Cavos } from "@cavos/kit";

const cavos = await Cavos.connect({
  chain: "starknet",                   // "starknet" | "solana" | "stellar"
  network: "testnet",
  identity: { userId: user.id, email: user.email },
  appSalt: "my-app",
  appId: process.env.NEXT_PUBLIC_CAVOS_APP_ID,
  paymasterApiKey: process.env.CAVOS_PAYMASTER_API_KEY!,
});

if (cavos.status === "ready") {
  await cavos.execute(calls); // gasless; signed silently by the device key
}

Mental model

PieceRole
IdentityA stable userId (from your login) + an appSalt. Together they derive the wallet address — device-independent.
Device signerA non-extractable secp256r1 key on the device (WebCrypto in the browser). Signs sha256(tx_hash) with no UI.
Account contractThe on-chain Cavos account for the target chain (a Cairo DeviceAccount on Starknet today). Validates device signatures on-chain and is the sole authority over its signers.
Chain adapterThe per-chain layer (address derivation, signature encoding, deploy calls). StarknetAdapter, SolanaAdapter, and StellarAdapter today. See Chains.
PaymasterSponsors deploy + execute so transactions are gasless for the user.

What makes it different

  • No seed phrases. The user never sees or manages a private key.
  • MPC-free. No key sharding, no signing servers. The key is whole and on the device.
  • Verifiable. Signatures are checked on-chain by the account contract, not by a backend.
  • Deterministic address. Same identity → same wallet address, every time, before deployment.
  • Gasless. Deploy and execution are sponsored through the Cavos paymaster.
  • Multi-device + passkey 2FA + passphrase recovery. Three non-custodial ways to never lose access.

Where to next

On this page