CLI reference
Configuration files have their own pages: epic-server.toml and epic-wallet.toml.
Wallet commands
| Command | Purpose |
|---|---|
init | Create a wallet |
info | Balance summary |
txs | Transaction log |
outputs | Raw output list |
address | Print the epicbox, payment proof and Tor addresses |
send | Start an outbound transfer |
receive | Process an inbound slate |
finalize | Complete and post a transfer |
invoice | Issue an invoice slate |
pay | Pay an invoice slate |
cancel | Abandon a transfer and release its reserved outputs |
post | Post a finalised slate file |
repost | Repost or dump a stored transaction |
listen | Run a receiving listener |
owner_api | Run the Owner API |
scan | Rescan the chain and rebuild output state |
recover | Print the existing recovery phrase |
account | List accounts, or create one with -c <name> |
export_tx / import_tx | Move transaction log entries between wallets |
export_proof / verify_proof | Payment proofs |
change_password | Re-encrypt the seed file |
Wallet command flags
Declared in src/cmd/wallet_args.rs:66. Defaults are in
parentheses.
| Command | Positionals and flags |
|---|---|
init | -w/--cwd create in the current directory, -s/--short_wordlist produce a 12-word recovery phrase instead of 24, -r/--recover initialise from an existing phrase |
info | -c/--min_conf <n> (10) |
txs | -i/--id <id>, -t/--txid <uuid>, -l/--limit <n>, -o/--offset <n>, -s/--sort_order <asc or desc> (desc) |
outputs | -f/--show_full_history, -l/--limit <n>, -o/--offset <n>, -s/--sort_order <asc or desc> (desc) |
send | <amount> positional, -d/--dest <destination>, -m/--method <transport> (http), -c/--min_conf <n> (10), -s/--selection <all or smallest> (smallest), -e/--estimate-selection, -o/--change_outputs <n> (1), -y/--request_payment_proof, -z/--proof_address <address>, -g/--message <text>, -t/--stored_tx <id>, -b/--ttl_blocks <n>, -v/--slate_version <n>, -f/--fluff |
receive | -i/--input <file or emoji string>, -m/--method <file or emoji> (file), -g/--message <text> |
finalize | -i/--input <file>, -m/--method <file or emoji> (file), -d/--dest <file> to save the finalised slate, -n/--nopost to finalise without posting, -f/--fluff |
invoice | <amount> positional, -d/--dest <file>, -g/--message <text>, -v/--slate_version <n> |
pay | -i/--input <file>, -m/--method <file, http or self> (file), -d/--dest <destination>, -c/--min_conf <n> (10), -s/--selection <all or smallest> (all), -e/--estimate-selection, -g/--message <text>, -b/--ttl_blocks <n> |
cancel | -i/--id <id> or -t/--txid <uuid> |
post | -i/--input <file>, -f/--fluff |
repost | -i/--id <id>, required, -m/--dumpfile <file> to write the transaction instead of posting it, -f/--fluff |
listen | -m/--method <http, keybase or epicbox> (http), -l/--port <n>, -n/--no_tor |
owner_api | -l/--port <n>, --run_foreign to serve the Foreign API on the same port |
scan | -s/--start_height <n> (1), -d/--delete_unconfirmed |
export_tx | -o/--output <file>, required, -i/--id <id> or --all, --format <csv or json> (json) |
import_tx | -i/--input <file>, required, --format <csv or json> (json) |
export_proof | <file> positional, -i/--id <id> or -t/--txid <uuid> |
verify_proof | <file> positional |
change_password | <old password> and <new password> positionals, each prompted for when omitted, and --remove-backup |
-f/--fluff broadcasts immediately rather than through the Dandelion relay. -e/--estimate-selection
prints the fee for every selection strategy without building a transaction.
Send transports for -m: http, file, self, keybase, emoji, epicbox, defaulting to http.
receive and finalize accept file and emoji, defaulting to file. pay accepts file, http and
self. See transports.
change_password copies the seed file, re-encrypts it under the new password, and deletes the copy once
the new seed verifies against the old mnemonic. --remove-backup keeps the copy instead
(src/cmd/wallet_args.rs:452).
Global flags, which go before the subcommand: -p <password>, -a <account> (defaults to default),
-r <node url>,
-t <dir>/--top_level_dir, -c <dir>/--current_dir, -e/--external, -s/--show_spent,
--offline_mode, and the network selectors --floonet and --usernet.
-w/--cwd is a flag on init alone and takes no value, so epic-wallet -w . init is not valid. To act
on a wallet outside ~/.epic/<network>, run the command from that directory or pass --current_dir <path>.
Node commands
| Command | Purpose |
|---|---|
epic | Run the node |
epic server config | Write a fresh epic-server.toml into the current directory |
epic server run | Run the node in this console |
epic client status | Node status |
epic client listconnectedpeers | Connected peers |
epic client ban -p <ip:port> | Ban a peer |
epic client unban -p <ip:port> | Lift a ban |
epic taxes -w <wallet listener> -g <count> | Generate foundation coinbases. -p <dir> sets the output directory, -s <height> the start height |
epic server also takes -c/--config_file <path>, -s/--seed <ip:port> to override the seed
node, and -w/--wallet_url <url> to set the Stratum coinbase listener. Top-level flags are
--floonet and --usernet. Declared in
src/bin/cmd/epic_args.rs:18.
The block policy and the API listen address are configured in the file rather than on the command
line. See epic-server.toml and
the block policy.
Ports
| Port | Service | Shifts per network |
|---|---|---|
| 3413 | Node API | Yes. 13413 floonet, 23413 usernet |
| 3414 | Node P2P | Yes. 13414 floonet, 23414 usernet |
| 3415 | Wallet Foreign API | Yes. 13415 floonet, 23415 usernet |
| 3416 | Node Stratum server | Yes. 13416 floonet, 23416 usernet |
| 3420 | Wallet Owner API | No, the same on every network |
| 443 | Epicbox relay | Not applicable |
Networks
| Network | Flag | Directory |
|---|---|---|
| Mainnet | none | ~/.epic/main |
| Floonet | --floonet | ~/.epic/floo |
| Usernet | --usernet | ~/.epic/user |
| Automated testing | none, selected by the test suites rather than the command line | ~/.epic/auto |
Coinbase maturity differs per network. See timing.
Floonet has no live DNS seed, so it works between nodes pointed at each other with epic server -s.
A usernet chain produces blocks with epic-miner over Stratum plus
peer_min_preferred_outbound_count = 0 and
only_randomx = true. See
run a local network.
Epicbox addresses carry a two-byte base58check version prefix, [1, 0] on mainnet and usernet and
[1, 136] on floonet. A wallet parsing an address from the other network returns
InvalidBase58Version (libwallet/src/epicbox_address.rs:23).
Data directories
Node. chain_data, epic-server.toml, epic-server.log and .api_secret. Holds no keys.
Deleting chain_data costs a resync.
Wallet. wallet_data/ containing the seed file and the database, plus epic-wallet.toml,
epic-wallet.log, .owner_api_secret, .api_secret and wallet_tor/. The database is SQLite, at
wallet_data/db/sqlite/epic.db, and holds transaction history, account labels and payment proof
records. epic-wallet scan rebuilds outputs and balances from the chain, not history. For what to
copy and how to restore it, see back up and restore.