Hold your keys. Control your assets.
Non-Custodial. Private. Chain-Agnostic.
A non-custodial browser-extension wallet — chain-agnostic across Ethereum/EVM (incl. Robinhood Chain & Base), Bitcoin, Solana, Cardano, Polkadot, and Monero, with Liberland support.
Sovegent Wallet is a non-custodial browser extension wallet built on Chrome Manifest V3.
It leads with Cardano (ADA) and is chain-agnostic by design: one BIP-39 seed phrase deterministically derives addresses across every supported network.
Your keys are encrypted locally using AES-256-GCM and never leave your device.
There are no servers. No accounts. No tracking.
Sovegent Wallet supports Ethereum/EVM (including Robinhood Chain and Base), Bitcoin, Solana, Cardano, Polkadot, and Monero (full send/receive via ring-signature WASM), plus native support for the Liberland Blockchain (LLD + LLM).
- You hold your keys — always
- No backend, no accounts, no data collection
- One seed phrase across multiple chains
- Built for control, not custody
| Chain | Symbol | Family | Derivation | Send | Receive | Balance |
|---|---|---|---|---|---|---|
| Cardano | ADA | Cardano | m/1852'/1815'/0'/{0,2}/0 · Ed25519-BIP32 (CIP-1852) | ✅† | ✅ | ✅ |
| Ethereum + EVM | ETH | EVM | m/44'/60'/0'/0/0 · secp256k1 | ✅ | ✅ | ✅ |
| Polygon, BSC, Arbitrum, Base | MATIC/BNB/ETH | EVM | Same key, different RPC | ✅ | ✅ | ✅ |
| Bitcoin | BTC | UTXO | m/84'/0'/0'/0/0 · native SegWit | ✅ | ✅ | ✅ |
| Solana | SOL | Solana | m/44'/501'/0'/0' · ed25519 | ✅ | ✅ | ✅ |
| Polkadot | DOT | Substrate | sr25519 · SS58 prefix 0 | ✅ | ✅ | ✅ |
| Liberland | LLD + LLM | Substrate | sr25519 · SS58 prefix 56 | ✅ | ✅ | ✅ |
| Monero | XMR | Monero | m/44'/128'/0'/0/0 · ed25519 | ✅ | ✅ | ✅ |
Liberland: LLD (Liberland Dollar) and LLM (Liberland Merit) share the same address — same keypair, separate asset IDs on-chain.
Monero: Full RingCT transaction construction via monero-javascript WASM. Spend key never leaves the extension. View key is used for output scanning against a configurable remote node.
Cardano: Pure-TypeScript derivation + Shelley address + transaction building via@stricahq(no WASM). Balance via Koios. †Send is implemented and compiles, pending preprod-testnet verification before mainnet reliance.
- AES-256-GCM encryption
- Vault stored locally in chrome.storage.local
- No external storage or transmission
- PBKDF2 — 600,000 iterations (SHA-256)
- Derives encryption key from user password
- Decrypted keys live only in memory
- Stored in MV3 background service worker
- Never exposed to popup or content scripts
- UI sends signing requests only
- No key material leaves the background context
- @scure/bip39, @scure/bip32, @noble/curves
- Audited libraries, no Node shims
- EIP-6963 multi-wallet discovery
- Coexists with MetaMask and other wallets
- Spend key never exposed externally
- View key used only for scanning via configured node
src/
├── background/ # MV3 service worker — secure key store, signing, broadcasting
├── content/ # Content script — bridges inpage provider ↔ background
├── inpage/ # Injected into every page (window.ethereum, window.solana)
├── assets/ # Monero WASM binary + worker (monero_wallet_full.wasm)
├── lib/
│ ├── keyring.ts # BIP-39/44/84, SLIP-0010, sr25519, Monero key derivation
│ ├── storage.ts # AES-256-GCM encrypted chrome.storage.local
│ ├── messages.ts # Typed message bus (popup ↔ background ↔ inpage)
│ ├── balance.ts # Balance fetching for all chains
│ ├── send.ts # Transaction building & broadcasting
│ └── xmr-wallet.ts # Monero wallet session (WASM, sync, ring sigs)
├── popup/ # React UI — JetBrains Mono, terminal aesthetic
│ ├── views/ # Welcome, Create, Import, Seed, Lock, Dashboard, Send, Receive
│ ├── components/ # Shared UI components
│ └── ui.ts # Design tokens
└── store/ # Zustand state (balances, send, modal, chain tab)
- Node.js 18+
- Chrome, Brave, or Edge (Manifest V3)
git clone https://github.com/sovegent/sovegent-wallet.git
cd sovegent-wallet
npm install
npm run build- Go to chrome://extensions
- Enable Developer mode
- Click Load unpacked
- Select the dist/ folder
- Sovegent Wallet icon appears in toolbar
npm run devAuto-rebuilds on save. Refresh the extension to reload.
- Wallet core — seed generation, encryption, HD derivation, lock/unlock
- Send/receive — balances, fee estimation, confirmations, QR receive
- Token support — ERC-20, SPL, Substrate assets
- Transaction history + fiat pricing
- Custom RPC configuration
- Monero enhancements — subaddresses, view key export
- Hardware wallets (Ledger)
- WalletConnect v2
- Firefox support
- Independent security audit
PRs welcome. Open an issue first for significant changes.
GPL v3 — see LICENSE
This means any distribution of modified versions must also be open source.