BTCLI Cheatsheet

Never again forget the essential BTCLI commands with this comprehensive cheatsheet. From basic wallet operations to advanced network interactions, this quick reference guide puts all crucial Bittensor CLI commands at your fingertips.

Config Commands

btcli config set

Set configuration values

  • --wallet-name / --name: Specify wallet name
  • --wallet-path / -p: Specify path to wallets directory
  • --hotkey / -H: Specify wallet hotkey to store in config
  • --network: Specify network or chain endpoint
  • --cache / --no-cache: Enable or disable caching of some commands
btcli config get

View current configuration

btcli config clear

Clear configuration values

  • --all: Clear all config fields
btcli config metagraph

Configure metagraph display columns

  • --reset: Restore default columns

Wallet Commands

btcli wallet list

List all wallets

  • --wallet-path / -p: Path to wallets directory
  • --quiet: Minimal output
  • --verbose: Enable verbose output
btcli wallet overview

Show registered account overview

  • --wallet-name / --name: Specify wallet name
  • --all / -a: Include all wallets in the specified path
  • --sort-by: Sort by column title (e.g., stake, rank)
  • --network: Specify network or chain endpoint
btcli wallet balance

Check wallet balance

  • --wallet-name / --name: Specify wallet name
  • --ss58 / --ss58-address: Specify one or more SS58 addresses
  • --all / -a: Check balances of all wallets
  • --network: Specify network or chain endpoint
btcli wallet transfer

Transfer TAO between accounts

  • --wallet-name / --name: Name of the wallet (source) to use
  • --destination / -d: Destination coldkey SS58 address
  • --amount / -a: Amount to transfer
  • --all: Transfer entire balance
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized
btcli wallet create

Create a new wallet

  • --wallet-name / --name: Name for the new wallet
  • --wallet-path / -p: Path to save the new wallet
  • --use-password: Protect the wallet with a password
  • --uri: Create wallet from uri (e.g. Alice, Bob, Charlie, Dave, Eve)
btcli wallet new-coldkey

Create a fresh coldkey

  • --wallet-name / --name: Specify wallet name
  • --n-words: Number of words in mnemonic (12, 15, 18, 21, 24)
  • --overwrite: Overwrite existing coldkey if it exists
  • --use-password: Protect the key with a password
btcli wallet new-hotkey

Create a fresh hotkey

  • --wallet-name / --name: Specify wallet name
  • --n-words: Number of words in mnemonic (12, 15, 18, 21, 24)
  • --overwrite: Overwrite existing hotkey if it exists
  • --use-password: Protect the key with a password
btcli wallet regen-coldkey

Regenerate a coldkey from mnemonic/seed

  • --wallet-name / --name: Specify wallet name
  • --mnemonic: Mnemonic phrase
  • --seed: Hex seed string
  • --json / -j: PolkadotJS JSON file
  • --json-password: Password to decrypt the JSON file
  • --use-password: Protect the key with a password
  • --overwrite: Overwrite existing coldkey
btcli wallet regen-coldkeypub

Regenerate a coldkeypub from a public key or SS58 address

  • --wallet-name / --name: Specify wallet name
  • --public-key: Public key in hex format
  • --ss58 / --ss58-address: SS58 address of the coldkey
btcli wallet regen-hotkey

Regenerate a hotkey from mnemonic/seed

  • --wallet-name / --name: Specify wallet name
  • --mnemonic: Mnemonic phrase
  • --seed: Hex seed string
  • --use-password: Protect the key with a password
  • --overwrite: Overwrite existing hotkey
btcli wallet inspect

Inspect a wallet's details, including stake and emission

  • --wallet-name / --name: Specify wallet name
  • --ss58 / --ss58-address: SS58 address of the wallet
  • --network: Specify network or chain endpoint
btcli wallet history

View transfer history for a wallet

  • --wallet-name / --name: Specify wallet name
  • --ss58 / --ss58-address: SS58 address of the wallet
  • --limit: Limit the number of history entries
  • --network: Specify network or chain endpoint
btcli wallet set-identity

Set on-chain identity (requires a transaction fee)

  • --wallet-name / --name: Specify wallet name
  • --display-name: Display name for identity
  • --legal-name: Legal name for identity
  • --pgp-fingerprint: PGP fingerprint in hex (20 bytes)
  • --ss58 / --ss58-address: SS58 address of the wallet
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized
btcli wallet get-identity

Get an on-chain identity for a coldkey/hotkey

  • --wallet-name / --name: Specify wallet name
  • --ss58 / --ss58-address: SS58 address to look up
  • --network: Specify network or chain endpoint
btcli wallet sign

Sign a message using coldkey or hotkey

  • --wallet-name / --name: Specify wallet name
  • --use-hotkey: Sign message with hotkey instead of coldkey
  • --ss58 / --ss58-address: SS58 address of the wallet
btcli wallet faucet

Obtain test tokens by performing PoW

  • --wallet-name / --name: Specify wallet name
  • --ss58 / --ss58-address: SS58 address of the wallet
  • --network: Specify network or chain endpoint
btcli wallet swap-hotkey

Swap your wallet's hotkey with a new or existing hotkey

  • --wallet-name / --name: Specify wallet name
  • --new-hotkey: Specify the new hotkey name
  • --overwrite: Overwrite existing hotkey if it exists
  • --ss58 / --ss58-address: SS58 address of the wallet

Stake Commands

btcli stake list

Show stake information for wallets

  • --wallet-name / --name: Specify wallet name
  • --netuid: Specify netuid to filter stake information
  • --verbose: Enable verbose output
  • --html: Display the table as HTML in the browser
  • --live: Display live view of the table
  • --network: Specify network or chain endpoint
btcli stake add

Add stake to hotkey accounts

  • --wallet-name / --name: Specify wallet name
  • --amount: Amount (in TAO) to stake
  • --netuid: Specify netuid if needed
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized
btcli stake remove

Remove stake from hotkey accounts

  • --wallet-name / --name: Specify wallet name
  • --amount: Amount (in TAO) to unstake
  • --netuid: Specify netuid if needed
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized
btcli stake move

Move stake from one hotkey to another

  • --wallet-name / --name: Specify wallet name
  • --from / -f: Source hotkey SS58 address
  • --to / -t: Destination hotkey SS58 address
  • --amount: Amount (in TAO) to move
  • --netuid: Specify netuid if needed
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized
btcli stake child set

Set child hotkey on a stake account

  • --wallet-name / --name: Specify wallet name
  • --child-hotkey / -c: SS58 address of the child hotkey
  • --netuid: Specify netuid if needed
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized
btcli stake child get

Get child hotkey info

  • --wallet-name / --name: Specify wallet name
  • --netuid: Specify netuid if needed
  • --network: Specify network or chain endpoint
btcli stake child revoke

Revoke child hotkey

  • --wallet-name / --name: Specify wallet name
  • --child-hotkey / -c: SS58 address of the child hotkey to revoke
  • --netuid: Specify netuid if needed
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized
btcli stake child take

Take stake from a child hotkey

  • --wallet-name / --name: Specify wallet name
  • --child-hotkey / -c: SS58 address of the child hotkey
  • --amount: Amount (in TAO) to take
  • --netuid: Specify netuid if needed
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized

Subnet Commands

btcli subnet list

List all subnets

  • --network: Specify network or chain endpoint
  • --verbose: Enable verbose output
  • --html: Display the table as HTML in the browser
btcli subnet show

Show detailed subnet information

  • --netuid: Specify the netuid of the subnet
  • --network: Specify network or chain endpoint
  • --wallet-name / --name: Specify wallet name
  • --reuse-last: Reuse the last retrieved metagraph data
  • --html: Display the table as HTML in the browser
btcli subnet metagraph

View subnet metagraph

  • --wallet-name / --name: Specify wallet name
  • --netuid: Specify the netuid of the subnet
  • --network: Specify network or chain endpoint
  • --reuse-last: Reuse the last retrieved metagraph data
  • --html: Display the table as HTML in the browser
btcli subnet register

Register to a subnet

  • --wallet-name / --name: Specify wallet name
  • --netuid: Specify the netuid of the subnet
  • --amount: Amount (in TAO) to stake for registration
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized
btcli subnet create

Create a new subnetwork

  • --wallet-name / --name: Specify wallet name
  • --netuid: Specify the netuid for the new subnet
  • --amount: Initial stake amount (in TAO)
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized
btcli subnet burn-cost

Show the burn cost to register a new subnet

  • --network: Specify network or chain endpoint
btcli subnet hyperparameters

Show subnet hyperparameters

  • --netuid: Specify the netuid of the subnet
  • --network: Specify network or chain endpoint
btcli subnet pow-register

Register a wallet to a subnet using PoW

  • --wallet-name / --name: Specify wallet name
  • --netuid: Specify the netuid of the subnet
  • --prompt / --no-prompt: Enable or disable interactive prompts

Sudo Commands

btcli sudo set

Set subnet management parameters

  • --wallet-name / --name: Specify wallet name
  • --parameter: Parameter name to set
  • --value: Value to set for the parameter
  • --netuid: Specify netuid if needed
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized
btcli sudo get

Get subnet management parameters

  • --wallet-name / --name: Specify wallet name
  • --parameter: Parameter name to get
  • --netuid: Specify netuid if needed
  • --network: Specify network or chain endpoint
btcli sudo senate

Show sudo governance senate information

  • --netuid: Specify netuid if needed
  • --verbose: Enable verbose output
  • --network: Specify network or chain endpoint
btcli sudo proposals

View active sudo governance proposals

  • --wallet-name / --name: Specify wallet name
  • --netuid: Specify netuid if needed
  • --status: Filter proposals by status
  • --network: Specify network or chain endpoint
btcli sudo senate-vote

Vote on an active proposal

  • --wallet-name / --name: Specify wallet name
  • --proposal-id: ID of the proposal to vote on
  • --vote: Cast your vote (yes/no)
  • --netuid: Specify netuid if needed
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized
btcli sudo set-take

Set the commission (take) for a delegate

  • --wallet-name / --name: Specify wallet name
  • --delegate-id: ID of the delegate
  • --take: Commission percentage to set
  • --netuid: Specify netuid if needed
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized
btcli sudo get-take

Get the current commission (take) for a delegate

  • --wallet-name / --name: Specify wallet name
  • --delegate-id: ID of the delegate
  • --netuid: Specify netuid if needed
  • --network: Specify network or chain endpoint

Weights Commands

btcli weights commit

Commit your weights to the chain

  • --wallet-name / --name: Specify wallet name
  • --netuid: Specify netuid if needed
  • --weights / -w: Comma-separated weights corresponding to UIDs
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized
btcli weights reveal

Reveal the weights previously committed

  • --wallet-name / --name: Specify wallet name
  • --netuid: Specify netuid if needed
  • --weights / -w: Comma-separated weights corresponding to UIDs
  • --prompt / --no-prompt: Enable or disable interactive prompts
  • --wait-for-inclusion: Wait until transaction is included in a block
  • --wait-for-finalization: Wait until transaction is finalized

Leave Comment

Sign In

Comments (0)

Please note that comment translations may not be accurate!