For the complete documentation index, see llms.txt. This page is also available as Markdown.

Vultisig SDK

Vultisig TypeScript SDK and CLI. Create Fast or Secure vaults, send, swap, and sign across 36+ chains. No seed phrase.

The self-custodial multi-chain wallet SDK for developers and AI agents.

  • Send and swap across 36+ blockchains with human-readable amounts (vault.send({ amount: "0.1" }))

  • MPC — keys are split across parties. No seed phrase. No single point of failure

  • Cross-chain swaps via THORChain, Maya, 1inch, Kyber, LiFi, Jupiter, and others. The SDK picks the quote

  • Portfolio with balances and fiat prices

  • Dry-run on send and swap — preview fees and output before signing

  • Agent-ready — JSON output, programmatic API

Install @vultisig/sdk for apps and bots. Install @vultisig/cli for shells and coding agents.

Source: vultisig/vultisig-sdk

Which interface

Programmatic SDK (@vultisig/sdk)

CLI (@vultisig/cli)

Install

npm install @vultisig/sdk

npm install -g @vultisig/cli

Best for

Apps, bots, long-running services

Coding agents, shell scripts

Language

TypeScript

Shell, JSON out

Vault creation

sdk.createFastVault() + email verification

vultisig create fast --two-step

Agent mode

vault.send(), vault.swap()

vultisig agent ask "check my ETH balance"

Long-running

Initialize WASM once

Each command reloads WASM

Signing

onPasswordRequired or vault.unlock()

--password or VAULT_PASSWORD

Full walkthrough: SDK implementation guide. Command reference: CLI.

Vault types

  • Fast Vault — 2-of-2 with Vultiserver. Instant signing.

  • Secure Vault — N-of-M on devices you control. Other devices join by QR with the Vultisig app.

Both types derive addresses and sign on the same 36+ chains as the apps.

Installation

Related: @vultisig/rujira for Rujira (FIN) helpers on THORChain.

Quick start

Fast Vault

Agents and CI can skip the email step:

Secure Vault

Send, swap, portfolio

Need
Method

One chain, native coin

vault.balance(chain)

One chain, token

vault.balance(chain, tokenId)

Several chains

vault.balances(chains, includeTokens?)

All configured chains

vault.allBalances(includeTokens?)

Fiat portfolio

vault.portfolio('usd')

Omit symbol on send for the native coin. Set it for tokens ("USDC").

Platforms

Node.js 20+, Electron 20+, and browsers with WebAssembly (Chrome, Firefox, Safari, Edge). React Native is built as @vultisig/sdk/react-native.

WASM (DKLS, Schnorr, Wallet Core) loads from the npm package. For Vite, use @vultisig/sdk/vite. Details are in the implementation guide.

Next

Last updated

Was this helpful?