Bittensor Validator
Run and monitor a Bittensor subnet validator.
Bundled with Minerva and active by default — there is nothing to install.
Skill metadata
| Path | skills/bittensor/bittensor-validator |
| Version | 1.0.0 |
| Author | moy-boy (@moy-boy), Minerva Agent |
| License | MIT |
| Platforms | linux, macos, windows |
| Tags | Bittensor, TAO, Subnet, Validator, Stake, Weights, Dividends, Delegation, btcli, Blockchain |
| Related skills | bittensor-miner, bittensor-subnet-owner |
Reference: full SKILL.md
The following is the complete skill definition that Minerva loads when this skill is triggered. This is what the agent sees as instructions when the skill is active.
Bittensor Validator Skill
Helps a user earn and keep a validator permit, stay in consensus, and manage stake and delegation.
Chain reads use bittensor_subnet, bittensor_metagraph and bittensor_account; staking, child
hotkeys and take changes are btcli commands the user approves every time. Validator code (scoring
miners, setting weights) comes from each subnet's repository.
When to Use
- The user asks what it takes to validate on a subnet, or why their validator lost its permit
- The user wants stake, dividends or weight-setting health for a validator hotkey
- The user wants to add or move stake, set child hotkeys, or change their delegate take
Prerequisites
btcliinstalled and a wallet the user created in their own terminal. The agent never creates keys and never asks for passwords or mnemonics.- A registered hotkey on the subnet and enough stake behind it to rank among the subnet's validators.
How to Run
Read with the Bittensor tools (default network finney). Run signing btcli commands through
terminal; each one shows an approval prompt, and when btcli asks for the wallet password, stop and
hand the user the exact command to run in their own terminal.
Quick Reference
| Goal | How |
|---|---|
| Permit threshold | bittensor_metagraph with validators_only: true, sort_by: "stake"; bittensor_subnet → max_validators |
| Weight-setting rules | bittensor_subnet → hyperparameters weights_rate_limit, activity_cutoff, commit_reveal_weights_enabled, min_allowed_weights |
| My validator | bittensor_metagraph with hotkeys: ["<hotkey>"] → validator_permit, dividends, blocks_since_update |
| Stake by coldkey | bittensor_account on the coldkey |
| Add stake (signs) | btcli stake add --netuid N --wallet-name W --hotkey H --amount X --network finney |
| Remove stake (signs) | btcli stake remove --netuid N --wallet-name W --hotkey H --amount X |
| Child hotkeys (signs) | btcli stake child set --netuid N --children <ss58> --proportions 0.5 --wallet-name W --hotkey H |
| Delegate take (signs) | btcli sudo set-take --take 0.09 --wallet-name W --hotkey H |
Procedure
- Assess the subnet.
bittensor_subnetgivesmax_validators,validator_permitsand the weight hyperparameters.bittensor_metagraphwithvalidators_only: trueandsort_by: "stake"shows the stake at the last permit slot: the user needs more than that to hold a permit. - Stake. Confirm amount, netuid and hotkey, then
btcli stake add. Staking buys the subnet's alpha at the current price, so large amounts move the price: keep safe staking on (btcli's default) and use--tolerancerather than--unsafe. - Run the validator from the subnet repository. It must set weights more often than
activity_cutoffblocks allows, and no faster thanweights_rate_limit. With commit-reveal enabled, weights are committed and revealed later by the validator software. - Monitor. Watch
validator_permit,dividends,emission_alphaandblocks_since_updatefor the hotkey.blocks_since_updategrowing pastactivity_cutoffmeans weights stopped landing; check the validator process and its logs withterminalorread_fileon the user's log path. - Delegation and children. Child hotkeys let one validator identity validate on several subnets
with a share of its stake; set proportions deliberately and re-read with
bittensor_accountafter.
Pitfalls
- Permits are recomputed as stake moves; a validator near the cut-off can lose its permit without any change on its side.
- Stake and dividends on a subnet are denominated in its alpha; convert with
price_taobefore comparing subnets. - Never read
~/.bittensor/walletsor ask for key material; signing always goes through approval. - Changing take is rate-limited on chain; plan changes rather than toggling.
Verification
bittensor_metagraphwith the hotkey showsvalidator_permit: trueand a smallblocks_since_update.bittensor_accounton the coldkey shows the stake on the intended netuid and hotkey after staking.