CLI reference
exfer exposes its functionality through five top-level subcommands.
This page lists each one and its purpose; for end-to-end recipes see
Getting Started and
Use Exfer.
exfer <command>
Commands:
init Initialize a new Exfer node (wallet + node + optional mining)
node Run a full node
mine Run the miner (full node + block production)
wallet Wallet operations
script Script operations (HTLC, multisig, vault, escrow, delegation)
help Print help for a command
Every command supports --help.
exfer init
One-shot bootstrap. Creates a wallet, starts a node, optionally enables mining.
exfer init # interactive passphrase
EXFER_PASS=... exfer init --passphrase-env EXFER_PASS --json
exfer init --mine # also start mining
exfer init --no-passphrase # unencrypted wallet (testing only)
exfer node
Run a full node without mining.
exfer node \
--datadir ~/.exfer \
--rpc-bind 127.0.0.1:9334 \
--repair-perms
| Flag | Purpose |
|---|---|
--datadir | Where chain + state live (default data) |
--bind | P2P bind address (default 0.0.0.0:9333) |
--peers | Manually specify peers (repeatable). Defaults to DNS seed |
--rpc-bind | Optional JSON-RPC endpoint |
--repair-perms | Auto-fix node_identity.key permissions on startup |
--verify-all | Re-verify PoW for all replayed blocks (slow) |
--no-assume-valid | Disable the pre-checkpoint PoW skip during IBD |
exfer mine
Same as exfer node plus block production. Use --miner-pubkey so the
private key never lives on the mining host.
exfer mine \
--datadir ~/.exfer \
--miner-pubkey <YOUR_PUBKEY_HEX> \
--rpc-bind 127.0.0.1:9334 \
--repair-perms
See Solo mine.
exfer wallet
Subcommands:
| Subcommand | Purpose |
|---|---|
generate | Create a new keypair |
info | Show address + pubkey of a wallet file |
balance | Sum of spendable UTXOs for the wallet's address |
send | Build, sign, and broadcast a payment |
See Getting Started for full examples.
exfer script
Subcommands grouped by script pattern:
HTLC
htlc-lockhtlc-claimhtlc-reclaim
See HTLC.
Multisig
multisig2of2-lock,multisig2of2-spendmultisig1of2-lock,multisig1of2-spendmultisig2of3-lock,multisig2of3-spend
See Multisig.
Vault
vault-lockvault-spendvault-recover
See Vault.
Escrow
escrow-lockescrow-releaseescrow-arbitrateescrow-reclaim
See Escrow.
Delegation
delegation-lockdelegation-owner-spenddelegation-delegate-spend
See Delegation.
Global conventions
--jsonis supported on every subcommand that produces output. Always prefer it for scripted use.--rpc <URL>routes UTXO lookups and submission through a remote RPC node, so you can spend without running a full local node.--datadir <PATH>for local-database operations.--wallet <PATH>for any command that signs. The CLI prompts for the passphrase unless the wallet was created with--no-encrypt.
For the authoritative flag list of any subcommand, run:
exfer <command> --help
exfer <command> <subcommand> --help