Terminal-based multi-chain cryptocurrency wallet for power users
CI / CD ย ย
|
|
ย ย ย ย Quality ย ย
|
|
Security ย ย
|
|
ย ย ย ย Community ย ย
|
|
๐ย Installation
|
โกย Quickย Start
|
๐ย Documentation
|
๐ย Security
|
๐ ๏ธย Codeย Standards
|
๐งชย Examplesย &ย Tests
|
๐คย AIย Usage
|
โ๏ธย License
|
๐คย Contributing
|
๐ฅย Maintainers
|
||
Sigil requires a supported release of Go.
go install github.com/mrz1836/sigil/cmd/sigil@latestgit clone https://github.com/mrz1836/sigil.git
cd sigil
go build -o bin/sigil ./cmd/sigilGet up and running with these essential commands:
sigil wallet create mainCreates a new HD wallet with BIP39 mnemonic phrase.
sigil balance show --wallet mainDisplays balances across all supported chains (ETH, USDC, BSV).
sigil receive --wallet main --chain bsv --qr --label "Re-up time!"Generates a new receiving address for the specified chain.
sigil receive --wallet main --chain bsv --checkChecks for incoming transactions to your wallet.
sigil tx send --wallet main --to 0x742d35Cc663... --amount 0.00001 --chain eth
sigil tx send --wallet main --to 1A1zP1eP5QGef... --amount 0.00001 --chain bsvSends cryptocurrency to the specified address.
sigil backup create --wallet mainCreates an encrypted backup of your wallet.
# Check for a new release
sigil upgrade --check
# Install the latest release
sigil upgrade
# If you're running a dev/commit build, add --force
sigil upgrade --forceDownloads the latest binary from GitHub, verifies SHA256, and replaces in-place. See upgrade for flags.
๐ For complete command reference and advanced features, see the CLI Documentation โ
View the comprehensive documentation for Sigil:
| Document | Description |
|---|---|
| CLI.md | Complete command reference and usage guide |
Heads up! Sigil is designed with minimal dependencies and maximum security. All cryptographic operations use battle-tested libraries:
- filippo.io/age for encryption
- golang.org/x/crypto for cryptographic primitives
- cosmos/go-bip39 for BIP39 mnemonic generation
| Chain | Status | Description |
|---|---|---|
| โ Bitcoin SV (BSV) | Supported | UTXO-based transaction support |
| โ Ethereum (ETH) | Supported | Full transaction and balance support |
| โ USDC | Supported | ERC-20 token on Ethereum network |
| ๐ง Bitcoin (BTC) | Planned | Coming in future release |
| ๐ง Bitcoin Cash (BCH) | Planned | Coming in future release |
- ๐ HD Wallet Support โ BIP39 mnemonic phrases with BIP32/BIP44 derivation
- ๐ก๏ธ Shamir's Secret Sharing โ Split your wallet seed into multiple shares for enhanced security
- ๐ฐ Multi-Chain Balances โ Check balances across all supported networks
- ๐ค Transaction Management โ Create, sign, and broadcast transactions
- ๐ Secure Sessions โ Encrypted session management using OS keychain
- ๐ค Agent Tokens โ Programmatic access for automation
- ๐พ Encrypted Backups โ Secure wallet backup and restoration
- ๐งฉ UTXO Management โ Advanced coin control for Bitcoin-based chains
- ๐ฑ QR Code Support โ Terminal-based QR code generation and scanning
โ ๏ธ Experimental Software โ Use at Your Own RiskSigil is experimental, open-source software provided "AS-IS" without warranty. By using Sigil, you acknowledge:
- You control your keys: Sigil never transmits or stores your private keys. Lost mnemonics are unrecoverable.
- Transactions are final: Cryptocurrency transactions are irreversible.
- No formal audit: This software has not undergone professional security auditing.
- No liability: Authors accept no responsibility for loss of funds or damages.
Do not use Sigil with funds you cannot afford to lose.
For security issues, see our Security Policy or contact: sigil@mrz1818.com
Development Setup (Getting Started)
Install MAGE-X build tool for development:
# Install MAGE-X for development and building
go install github.com/magefile/mage@latest
go install github.com/mrz1836/go-mage/magex@latest
magex update:installWallet Discovery & Migration
Sigil can discover and sweep funds from other BSV wallets by scanning multiple BIP44 derivation paths. This is essential for recovering funds from defunct providers or migrating from other wallets.
Sigil automatically scans these derivation paths to find your funds:
| Derivation Scheme | Path | Supported Wallets |
|---|---|---|
| BSV Standard | m/44'/236'/0'/... |
RelayX, RockWallet, Twetch, Centbee โ , Trezor, Ledger, KeepKey |
| Bitcoin Legacy | m/44'/0'/0'/... |
MoneyButton โ , ElectrumSV |
| Bitcoin Cash | m/44'/145'/0'/... |
Exodus, Simply.Cash โ , BCH fork splits |
| HandCash Legacy | m/0'/... |
HandCash 1.x (legacy version only) |
โ Service discontinued or shut down
Sigil provides a recovery path for users of these defunct BSV services:
- Centbee โ Popular BSV mobile wallet that ceased operations in 2026. Uses BSV Standard derivation (
m/44'/236'/...) with 4-digit PIN as BIP39 passphrase. - MoneyButton โ Popular BSV wallet and identity provider that shut down in 2023. Used Bitcoin Legacy derivation (
m/44'/0'/...). - Simply.Cash โ Mobile BSV wallet that ceased operations. Used Bitcoin Cash derivation path (
m/44'/145'/...). - HandCash 1.x โ Early versions of HandCash used a non-standard legacy path (
m/0'/...). Note: HandCash 2.0+ uses proprietary non-exportable keys and cannot be imported.
Sigil also supports migrating from active BSV wallets:
- RelayX โ BSV wallet and token platform
- RockWallet โ Multi-chain mobile wallet with BSV support
- Twetch โ BSV social media platform with integrated wallet
- ElectrumSV โ Desktop BSV wallet
- Exodus โ Multi-chain desktop/mobile wallet
- Trezor โ Hardware wallet with BSV support
- Ledger โ Hardware wallet with BSV support
- KeepKey โ Hardware wallet with BSV support
Discover funds from another wallet's mnemonic:
sigil wallet discover --mnemonic "your twelve or twenty-four word phrase"For Centbee wallets (uses 4-digit PIN as passphrase):
sigil wallet discover --mnemonic "your phrase" --passphrase "1234"See the CLI Documentation for complete details on wallet discovery and fund recovery.
Binary Deployment
This project uses goreleaser for streamlined binary deployment to GitHub. To get started, install it via:
brew install goreleaserThe release process is defined in the .goreleaser.yml configuration file.
- Linux: amd64, arm64
- macOS: amd64, arm64
- Windows: amd64, arm64
Then create and push a new Git tag using:
magex version:bump bump=patch push=trueThis process ensures consistent, repeatable releases with properly versioned artifacts and citation metadata.
Build Commands
View all build commands
magex helpCommon commands:
magex buildโ Build the binarymagex testโ Run test suitemagex lintโ Run all lintersmagex deps:updateโ Update dependencies
GitHub Workflows
Sigil uses the Fortress workflow system for comprehensive CI/CD:
- fortress-test-suite.yml โ Complete test suite across multiple Go versions
- fortress-code-quality.yml โ Code quality checks (gofmt, golangci-lint, staticcheck)
- fortress-security-scans.yml โ Security vulnerability scanning
- fortress-coverage.yml โ Code coverage reporting to Codecov
- fortress-release.yml โ Automated binary releases via GoReleaser
See all workflows in .github/workflows/.
Updating Dependencies
To update all dependencies (Go modules, linters, and related tools), run:
magex deps:updateThis command ensures all dependencies are brought up to date in a single step, including Go modules and any managed tools. It is the recommended way to keep your development environment and CI in sync with the latest versions.
All unit tests run via GitHub Actions and use Go version 1.25.6. View the configuration file.
Run all tests (fast):
magex testRun all tests with race detector (slower):
magex test:raceView coverage report:
magex test:coverageCoverage reports are automatically uploaded to Codecov on every commit.
Read more about this Go project's code standards.
Read the AI Usage & Assistant Guidelines for details on how AI is used in this project and how to interact with AI assistants.
![]() |
|---|
| MrZ |
View the contributing guidelines and please follow the code of conduct.
All kinds of contributions are welcome ๐! The most basic way to show your support is to star ๐ the project, or to raise issues ๐ฌ. You can also support this project by becoming a sponsor on GitHub ๐ or by making a bitcoin donation to ensure this journey continues indefinitely! ๐

