| title | Quickstart |
|---|---|
| description | Get from zero to your first private transfer in minutes. |
npm install --global umbraprivacy-cliLink a signer to the CLI. The simplest option is a local Solana keypair file (the same format used by solana-keygen).
umbra user add alice --backend localThe CLI defaults to ~/.config/solana/id.json. Pass --param keypair=<path> to use a different file:
umbra user add alice --backend local --param keypair=~/wallets/my-wallet.jsonFor managed wallet providers (Privy, Turnkey, Para), see user add for the required params.
The first user you add is automatically set as the active user. To switch later, run umbra user use <name>.
By default the CLI connects to devnet. To switch to mainnet:
umbra config set network mainnet
umbra config set rpcUrl https://api.mainnet-beta.solana.com
umbra config set rpcSubscriptionsUrl wss://api.mainnet-beta.solana.comRun umbra config get at any time to see current settings.
Create your on-chain Umbra account. This publishes your encryption key and user commitment to the Solana network, enabling both encrypted balances and the mixer.
umbra registerRegistration is a one-time step per wallet. It performs up to three on-chain transactions and skips any that are already complete — so it's safe to run again if interrupted.
Your wallet will prompt you to sign a message during registration. This signature derives your master seed — the root of Umbra's key hierarchy. It is not a transaction and costs no SOL.Move tokens from your public wallet into an encrypted balance. Amounts are in native token units (accounting for decimals).
# Deposit 100 USDC (6 decimals → 100_000_000 base units)
umbra eta deposit EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v 100000000The command waits for the Arcium MPC callback to confirm before returning. You'll see two transaction signatures: the queue tx and the callback tx.
umbra eta balance EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1vPass multiple mints to check several at once:
umbra eta balance <mint1> <mint2> <mint3>Move tokens back to your public wallet:
umbra eta withdraw EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v 50000000- Use
--recipientoneta depositto shield tokens directly into another user's encrypted balance. - Use
utxo createandutxo claimfor anonymous mixer transfers. - Run any command with
--helpfor the full option list.
