A non-custodial desktop Solana wallet built with Qt and C++.
Send, swap, stake, and manage SPL tokens — with hardware wallet support, a built-in terminal, and an MCP server for AI agents.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Wallet
- Send/receive SOL and SPL tokens (including Token-2022)
- Swap via Jupiter DEX aggregation with slippage controls
- Stake SOL — browse validators, delegate, withdraw
- Create, mint, and burn Token-2022 tokens with extensions
- Durable nonce support
- Biometric unlock (Touch ID)
AI Agents (MCP)
- Model Context Protocol server with 60+ tools
- Read-only tools (balances, history, quotes) run without approval
- Fund-moving tools require explicit UI approval
- Policy-based access control per wallet
- Works with Claude, Claude Code, and Codex
Hardware Wallets
- Ledger (Nano S / X / S+)
- Trezor (Model T / Safe 3 / One)
- GridPlus Lattice1
Misc
- Address book
- Transaction explorer — decode instructions, balances, compute units, logs
- Built-in terminal with 40+ commands
| Layer | Technology |
|---|---|
| UI | Qt 6 Widgets, Qt Charts |
| Language | C++20 |
| Build | CMake 3.16+ |
| Crypto | libsodium (Ed25519, Argon2id, XSalsa20-Poly1305) |
| Database | SQLite (Qt Sql) with versioned migrations |
| RPC | Qt Network — Solana JSON-RPC, Jupiter API |
| Hardware | HIDAPI, libusb-1.0 |
| QR Codes | libqrencode |
| macOS | Cocoa, LocalAuthentication, Security frameworks |
| Website | React, TypeScript, Vite, Cloudflare Pages |
- CMake 3.16+
- C++20 compiler
- Qt 6.x (Widgets, Charts, Network, Sql, Concurrent, Svg)
- libsodium
- libqrencode
brew install qt@6 libsodium qrencode hidapi libusb
mkdir build && cd build
cmake ..
cmake --build .
# Run
open Cinder.appsudo apt install qt6-base-dev qt6-charts-dev libsodium-dev libqrencode-dev \
libhidapi-dev libusb-1.0-0-dev cmake build-essential
mkdir build && cd build
cmake ..
cmake --build .
./Cinder- Install Qt 6, CMake, and Visual Studio 2019+
- Install vcpkg dependencies:
libsodium,qrencode,hidapi,libusb
mkdir build && cd build
cmake -DCMAKE_PREFIX_PATH="C:/Qt/6.x/msvc2019_64" ..
cmake --build . --config Release# Kills any running instance, rebuilds the app target only, and launches
bash build-and-run.sh
# If you intentionally want to rebuild tests and other targets too
bash build-and-run.sh --all-targets- Non-custodial — private keys never leave your machine
- Encrypted storage — Argon2id key derivation, XSalsa20-Poly1305 authenticated encryption
- Hardware wallet signing — transactions signed on-device
- Biometric unlock — macOS Touch ID with Keychain integration












