Cavos

Overview

Device-native, self-custodial embedded wallets across every chain, from one SDK.

@cavos/kit gives applications one wallet integration across chains without flattening their differences. Users authenticate with a familiar identity and control a deterministic wallet through device-native key material—no seed phrase, MPC cluster, or browser extension.

Starknet, Solana, and Stellar are available today. Cavos is designed to reach every chain through adapters that preserve the same product contract while using each network's native account, signing, execution, and fee model.

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

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

if (wallet.chain === "solana" && wallet.status === "ready") {
  await wallet.execute(1_000_000n, recipient);
}

The stable product contract

PieceRole
IdentityA stable userId plus an app-specific salt anchors the wallet independently of the current device.
Device-native authorityKeys are created and used locally. Starknet and Solana authorize P-256 device signers; Stellar locally unwraps its active ed25519 control key with enrolled device factors.
Chain adapterImplements address derivation, signing, execution, recovery, and sponsorship for one network family.
Unified SDKCavos.connect({ chain, network }) returns a discriminated wallet union so shared onboarding stays stable and chain-native methods remain typed.
SponsorshipA paymaster, relayer, fee payer, or fee-bump service removes the need for users to acquire gas when that adapter supports it.

What remains chain-native

Execution is intentionally not reduced to a misleading universal transaction format:

  • Starknet: Cairo DeviceAccount, arbitrary multicalls, Starknet paymaster.
  • Solana: device-account PDA, native P-256 verification, transfer or allowlisted CPI execution, sponsoring relayer.
  • Stellar: classic G… account, locally unwrapped control key, XLM payments, Soroban invocation, optional fee-bump sponsorship.

Narrow on wallet.chain before calling chain-native methods. See Chains for the capability matrix.

Security properties

  • Self-custodial: Cavos does not hold a signing key that can move user funds.
  • MPC-free: there are no reconstructable server-side key shards.
  • Device-native: authority is created or unlocked locally on an enrolled device.
  • Deterministic identity: the same stable identity and app salt resolve to the same wallet for that adapter.
  • Recoverable: each adapter exposes non-custodial device approval and recovery appropriate to its account model.

Where to next

On this page