Skip to main content

nepher-cli

The unified CLI for Nepher Robotics — accounts, hackathons, EnvHub, tournaments, and SimStore from a single tool.

Requires: Python 3.10+

Install

pip install nepher-cli

Both npcli and nepher-cli entry points are registered after install.

npcli --version
npcli --help

Commands

Command / Group Description
npcli login Log in with a Nepher API key
npcli whoami Show the currently authenticated user
npcli logout Clear locally stored credentials
npcli account API keys and coldkey registration
npcli tournament Browse tournaments, submit agents, leaderboards
npcli envhub Manage Isaac Lab environment bundles
npcli hackathon Browse and submit to hackathons
npcli simstore SimStore marketplace (coming soon)

Quick Start

Authenticate

npcli login --api-key nepher_xxxxxxxx
npcli whoami
npcli logout

Get your API key at account.nepher.ai → Account → API Keys.
For CI/CD, set NEPHER_API_KEY=nepher_xxxxxxxx instead of logging in.

Tournaments

npcli tournament list
npcli tournament list-active
npcli tournament status <tournament_id>
npcli tournament leaderboard <tournament_id>

Check your agent directory structure (no extra dependencies needed):

npcli tournament check --path ./my-agent
npcli tournament check --path ./my-agent --verbose   # also show recommended-file warnings

Submit an agent (requires bittensor-wallet for wallet signing):

pip install bittensor-wallet
# or: pip install "nepher-cli[bittensor]"
npcli tournament submit --path ./my-agent --wallet-name miner --wallet-hotkey default

Full options for submit:

--path <path>               Agent directory
--wallet-name <str>         Bittensor wallet name (default: miner)
--wallet-hotkey <str>       Bittensor wallet hotkey (default: default)
--api-key <key>             Nepher API key (falls back to stored credentials)
--tournament-id <id>        Target tournament ID (required when multiple are active)
--api-url <url>             Override tournament API URL
-v / --verbose              Verbose output

EnvHub

npcli envhub list
npcli envhub download <env_id>
npcli envhub upload ./my-bundle --category navigation
npcli envhub cache list
npcli envhub cache info
npcli envhub cache clear

Hackathons

npcli hackathon list

npcli hackathon submit \
  --title "My entry" \
  --submission ./my-project \
  --assets ./my-assets

Full options:

--hackathon-id <uuid>       Required when multiple hackathons are open
--title <str>               Entry title
--description <markdown>    Entry description
--thumbnail <file>          Cover image (JPEG, PNG, WebP, GIF)
--submission <path>         Project folder or submission.zip
--assets <path>             Assets folder or assets.zip (images, videos, PDFs)
--public-source             Mark source as public

API Keys

npcli account api-keys list
npcli account api-keys create --name "CI key" --platform hackertone
npcli account api-keys revoke <key_id>

Coldkey Registration

Bind a Bittensor coldkey to your account (requires bittensor-wallet; btcli is optional fallback):

pip install bittensor-wallet
npcli account register-coldkey --wallet <wallet_name>

Signing uses the local coldkey via bittensor-wallet and does not import btcli. If you still have a mixed Bittensor venv (scalecodec + cyscale), register-coldkey keeps working as long as bittensor-wallet is installed.

API Key Requirements

  • Must start with nepher_
  • Must be active and not expired
  • hackathon submit requires Hackathon scope (or an unrestricted key)
  • tournament submit requires Tournament scope (or an unrestricted key)

Troubleshooting

Error Fix
npcli: command not found Ensure pip install succeeded and Python scripts dir is on PATH
invalid api key format Key must start with nepher_
api key does not have hackathon access Enable Hackathon scope or use an unrestricted key
api key expired Run npcli account api-keys create
Several hackathons are accepting submissions Re-run with --hackathon-id
bittensor-wallet not installed pip install bittensor-wallet (needed for tournament submit and account register-coldkey)
Not logged in npcli login --api-key nepher_...
Conflict detected: 'scalecodec' ... conflicts with 'cyscale' Leftover scalecodec after a Bittensor upgrade. Prefer pip install bittensor-wallet so npcli never needs btcli. To repair btcli itself: pip uninstall scalecodec cyscale -y && pip install -U cyscale --force-reinstall

Run any command with --help for full flag details:

npcli --help
npcli hackathon submit --help
npcli tournament submit --help

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nepher_cli-0.2.3.tar.gz (35.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nepher_cli-0.2.3-py3-none-any.whl (45.9 kB view details)

Uploaded Python 3

File details

Details for the file nepher_cli-0.2.3.tar.gz.

File metadata

  • Download URL: nepher_cli-0.2.3.tar.gz
  • Upload date:
  • Size: 35.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for nepher_cli-0.2.3.tar.gz
Algorithm Hash digest
SHA256 41a73ed147f43ec5e32d6b65233937eb88c7a6fb2bb7f9cc93cb78412008c6d4
MD5 93f7deb3a69c0043d7e668a5ec6556f5
BLAKE2b-256 ee6b4dce75db6d258705569ac26413e5a26e6e58ed8ae84758052df926a3647b

See more details on using hashes here.

File details

Details for the file nepher_cli-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: nepher_cli-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 45.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for nepher_cli-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d347159ba457655b0bb8c888494cfa195c46d1edf254127ad05c813b84b483b8
MD5 88fd3db6d698df145b5e17f52e1f3f83
BLAKE2b-256 7d532c88ad4700e930856ff66c764474a25117f1ceb1ca69c5de803ea1597905

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page