Appearance
Miner Guide
Nepher Robotics · Bittensor Subnet 49
Nepher Robotics (Subnet 49) is a robotics tournament subnet on Bittensor. You train a navigation policy, submit it, and validators evaluate every agent in standardized Isaac Lab environments. After review, the approved podium (up to 3 places, default split 70% / 20% / 10%) earns the subnet's miner emissions during the reward period. See the Incentive Mechanism for details.
Your job as a miner: train a policy → submit. Validators handle the rest. (Optionally self-evaluate first to preview your score.)
1. Prerequisites
- GPU for training (NVIDIA, 24 GB+ VRAM). Submission itself is CPU-only.
- Python 3.10+, Isaac Sim 5.1, Isaac Lab 2.3.2.
- Bittensor wallet with a hotkey registered on Subnet 49.
- Nepher account + API key — sign up at nepher.ai/account, then create a key under Account → API Keys.
- Platform balance in TAO to pay submission fees (default 0.1–0.5 TAO per upload).
2. Wallet & Registration
bash
pip install bittensor
btcli wallet new_coldkey --wallet.name miner
btcli wallet new_hotkey --wallet.name miner --wallet.hotkey default
btcli subnet register --wallet.name miner --wallet.hotkey default --netuid 49⚠️ Back up your coldkey mnemonic. If you lose it, you lose your funds.
Emissions are paid to your hotkey's UID. Keep the hotkey registered until the reward period of your tournament ends — a deregistered hotkey cannot receive weight.
3. Nepher CLI, Coldkey & Balance
Install the Nepher CLI and the wallet signer, then log in:
bash
pip install nepher-cli bittensor-wallet # or: pip install "nepher-cli[bittensor]"
npcli login --api-key nepher_xxxxxxxx # or run `npcli login` and paste itRegister your coldkey (needed to fund your platform balance). If your API key restricts platforms, it must include Hackathon access for this step:
bash
npcli account register-coldkey --wallet minerFund your balance: send TAO from that coldkey to the treasury address shown on Account → Billing. Deposits are credited after 3 confirmations, and larger single transfers get a bonus (×1.5 from 10 TAO, ×2 from 20 TAO, ×3 from 50 TAO). Check it with:
bash
npcli account balanceFull details: Platform Balance & Fees.
4. Get the Task Repo
Each tournament has its own task repo (linked on its tournament page) — an Isaac Lab external project containing the environment, training/play scripts, and the agent layout.
Clone it and follow its README for the exact, up-to-date steps to install the task module and register the environments:
bash
git clone <task-repo-url>
cd <task-repo>
# then follow the repo README to install the task module + environments5. Train & Prepare Your Policy
Use the training/play scripts and task IDs documented in the repo README. Train on the generic training task — validators benchmark on hidden EnvHub datasets, so a policy that generalizes well beats one overfit to specific scenes:
bash
${ISAACLAB_PATH}/isaaclab.sh -p scripts/rsl_rl/train.py --task=<train-task> --headlessPlay/test a checkpoint as shown in the README, then copy your best checkpoint to the required submission location:
bash
cp /path/to/logs/rsl_rl/.../model_best.pt best_policy/best_policy.ptRequired agent layout:
my-agent/
├── best_policy/best_policy.pt # required (max 2 GB)
├── source/<task_module>/ # required: your Isaac Lab task module
└── scripts/ # recommended: list_envs.py, rsl_rl/play.py6. Submit to the Tournament
bash
npcli tournament list-active # find the tournament ID
npcli tournament check --path ./my-agent # check structure first
npcli tournament submit \
--path ./my-agent \
--wallet-name miner \
--wallet-hotkey defaultThe CLI uses your stored credentials from npcli login (or pass --api-key). If several tournaments are active, add --tournament-id <id>.
What happens on submit:
- The CLI validates your structure, zips the folder, and signs the archive hash with your hotkey.
- The API checks that the hotkey is registered on Subnet 49, the tournament is accepting uploads, and your balance covers the fee.
- The CLI prints the submission fee, uploads the archive (default size limit 100 MB), and shows your Agent ID and the fee charged.
- The archive is security-scanned. Flagged agents are held until an admin clears them.
💡 You can submit multiple times — only your latest submission per hotkey is evaluated. Your first upload in a tournament costs the minimum fee; the next fee jumps to the maximum and decays back over ~6 hours, so space out re-submissions. See your next fee at nepher.ai/tournament/submission-cost.
If you see "Insufficient platform balance for submission fee", top up on Account → Billing and try again.
7. Track Results
- My Submissions and Dashboard on nepher.ai/tournament show your agents, evaluation status, and scores.
- The tournament page shows the public leaderboard during public evaluation and the private leaderboard after the evaluation period.
- Winners are announced by email after review, and appear on the tournament page and Highlights.
Appendix: Self-Evaluate (same pipeline as validators)
Optional but recommended — run the exact evaluation validators use to preview your score before submitting.
Install eval-nav and the nepher EnvHub package (required to load EnvHub scenes during evaluation):
bash
git clone https://github.com/nepher-ai/eval-nav.git ./eval-nav
${ISAACLAB_PATH}/isaaclab.sh -p -m pip install -e ./eval-nav
${ISAACLAB_PATH}/isaaclab.sh -p -m pip install nepherOptionally pre-download the sample scenes (otherwise they download on demand):
bash
npcli envhub download waypoint-sample-v1eval-nav ships ready-made config YAMLs per task under configs/. Copy the one for your task and customize it (e.g. point policy_path at your best_policy.pt, adjust seeds/episodes):
bash
cp ./eval-nav/configs/<your-task>.yaml eval_config.yamlRun it:
bash
${ISAACLAB_PATH}/isaaclab.sh -p ./eval-nav/scripts/evaluate.py \
--config eval_config.yaml --headlessYour score is written to evaluation_result.json.
Resources
- Website: nepher.ai · Tournaments: nepher.ai/tournament · Docs: docs.nepher.ai
- API keys: nepher.ai/account/api-keys · Billing: nepher.ai/account/billing · Discord: discord.gg/qZUc3vdjVq
- Task repo: linked per tournament on its page/Discord (always read its README) · eval-nav · envhub
- Isaac Lab install guide
Good luck, miner!