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