Loading
Loading
This information was auto-extracted from the GitHub repository and may be incomplete or out of date. Always refer to the subnet's GitHub repository for the latest instructions.
Miners submit solver code via git PR. Local testnet and development require Docker. Production mining requires Bittensor wallet with registered hotkey on subnet 112.
NVMe SSD strongly preferred. Requires upstream archive RPC keys for Ethereum, Base, and BT EVM. Anvil forks accumulate ~150 GB/day disk bloat requiring 6-hour recycle cron. Runs three Anvil fork instances locally.
Clone the repository
git clone https://github.com/subnet112/minotaur_subnet.git && cd minotaur_subnet
Create and activate Python virtual environment
python3 -m venv .venv && source .venv/bin/activate
Install Python dependencies
pip install -r requirements.txt
Register hotkey on subnet 112 (mainnet only; local testnet auto-registers)(optional)
btcli subnet register --netuid 112 --subtensor.network finney --wallet.name <wallet> --wallet.hotkey <hotkey>
Run agent loop for automated solver strategy generation and submission(optional)
python -m minotaur_subnet.miner.main agent --validator-url http://localhost:8080 --strategy-dir ./strategies --miner-id <miner-id>
Submit git-based solver via PR to canonical solver repo(optional)
python -m minotaur_subnet.miner.main submit --pr-number <n> --head-sha <sha> --hotkey <hotkey> --validator-url http://localhost:8080 --poll
Start local testnet for development and testing (optional for local dev)(optional)
make testnet-up
Register hotkey on subnet 112
btcli subnet register --netuid 112 --subtensor.network finney --wallet.name <wallet> --wallet.hotkey <hotkey>
Generate fresh EVM signing key (install foundry first if needed)
cast wallet new
Open firewall ports 9100 (daemon) and 8080 (api) for inbound access
sudo ufw allow 9100/tcp && sudo ufw allow 8080/tcp
Clone canonical Docker Compose stack and template .env
curl https://raw.githubusercontent.com/subnet112/minotaur_subnet/main/platform/validator/docker-compose.yml -o docker-compose.yml && curl https://raw.githubusercontent.com/subnet112/minotaur_subnet/main/platform/validator/.env.example -o .env
Configure environment variables for validator operation
Edit .env with WALLET_NAME, HOTKEY_NAME, VALIDATOR_PRIVATE_KEY, VALIDATOR_AXON_URL, ETH_UPSTREAM_RPC_URL, BASE_UPSTREAM_RPC_URL
Start validator stack with auto-update profile (or without for manual updates)
docker compose --profile autoupdate up -d
Verify validator health and identity endpoint
curl http://localhost:9100/health && curl http://localhost:9100/identity
Install cron job for Anvil disk-bloat cleanup (every 6 hours)
0 */6 * * * root docker compose -f /path/to/docker-compose.yml rm -fsv anvil-eth anvil-base anvil-btevm && docker compose -f /path/to/docker-compose.yml up -d anvil-eth anvil-base anvil-btevm