What's in the Monero package
monerod, monero-wallet-cli, monero-wallet-rpc and the other tools in the official archive
The official CLI archive contains the node (monerod), the console wallet (monero-wallet-cli), a wallet server with JSON-RPC (monero-wallet-rpc) and a set of blockchain-database utilities. The GUI archive contains monero-wallet-gui and the same monerod.
The main programs
monerod — the node
The daemon that connects to other nodes, downloads and verifies blocks, stores the database (LMDB), accepts transactions into the mempool and relays them. It exposes the daemon RPC (port 18081): height, blocks, transactions, submitting transactions. It can mine (start_mining), but serious mining uses P2Pool + XMRig. Setup is on the your own node page.
./monerod status
./monerod print_height
./monerod sync_info
monero-wallet-cli — the console wallet
The reference wallet: create/restore, transfers, subaddresses, payment proofs, multisig, cold signing. Works with a wallet file and connects to a node.
./monero-wallet-cli --generate-new-wallet mywallet
./monero-wallet-cli --restore-deterministic-wallet # from 25 words
./monero-wallet-cli --generate-from-view-key watchonly # view-only
./monero-wallet-cli --wallet-file mywallet --daemon-address 127.0.0.1:18081
Useful commands inside: balance, address new, account new, transfer <address> <amount>, show_transfers, get_tx_key, check_tx_key, get_tx_proof, export_key_images, seed, help.
monero-wallet-rpc — a wallet for programs
The same wallet, controlled over JSON-RPC. Used by shops, exchanges, bots and payment gateways (BTCPay Server, MoneroPay, etc.).
./monero-wallet-rpc --wallet-file shop --password-file pw.txt \
--daemon-address 127.0.0.1:18081 --rpc-bind-port 18088 \
--rpc-login user:secret
curl -u user:secret --digest http://127.0.0.1:18088/json_rpc \
-d '{"jsonrpc":"2.0","id":"0","method":"create_address","params":{"account_index":0}}'
Key methods: get_balance, create_address, get_transfers, transfer, incoming_transfers, make_integrated_address. A view-only wallet is enough for a shop: it sees incoming payments to new subaddresses, and there's nothing to steal from it.
Don't expose the monero-wallet-rpc port to the internet. Always use --rpc-login, and run a wallet holding the spend key on a separate isolated machine.
Blockchain database utilities
| Program | What it does |
|---|---|
monero-blockchain-prune | Turns a full database into a pruned one (by copying into a new database) |
monero-blockchain-export | Exports the chain to a blockchain.raw file |
monero-blockchain-import | Imports from blockchain.raw — a quick way to bootstrap a node from a USB stick (verifies by default) |
monero-blockchain-stats | Block statistics: transactions, sizes, inputs/outputs per day |
monero-blockchain-usage | How often outputs were used in rings (decoy research) |
monero-blockchain-ancestry | Builds an output's "ancestry" through rings — a traceability research tool |
monero-blockchain-depth | Depth of a transaction's history through rings |
monero-blockchain-mark-spent-outputs | Marks outputs known to be spent (e.g. from fork chains) so the wallet won't use them as decoys |
monero-blockchain-prune-known-spent-data | Removes data of outputs known to be spent (old pre-RingCT), saving space |
Other
| Program / file | What it is |
|---|---|
monero-gen-trusted-multisig | Generates a set of multisig wallets on one trusted machine (for testing/simple cases) |
monero-gen-ssl-cert | Creates an SSL certificate for RPC |
ANONYMITY_NETWORKS.md | Guide: Tor and I2P for monerod |
monero-wallet-gui (GUI archive) | Graphical wallet; can launch monerod itself |
Also useful from the ecosystem
- P2Pool — a decentralised mining pool on top of your node; XMRig — a RandomX miner.
- onion-monero-blockchain-explorer — your own block explorer on your own node.
- monero-lws — your own light-wallet server: keep view keys yourself instead of with a third-party service.