nethackers
Solve NetHack by evolving symbolic players. One CLI: log in with GitHub, evolve a
bot with a coding agent, and publish + register your wins to the shared hub at
https://nethackers.dunnolab.ai — where anyone can browse and fetch them.
Install
pip install nethackers # Python 3.11+ (or: uv tool install nethackers)
Get started
nethackers login # one-time GitHub sign-in (device flow, silent refresh)
nethackers board # browse the leaderboard
Evolve a bot
Improve a NetHack bot automatically with Claude Code or Codex. Needs Docker (the sandboxed arena + mutator run there):
nethackers evolve --objective val-dwa-law-fem --operator codex
Every validated win is auto-published to your public github.com/<you>/nethacker
repo and registered with the hub. From any machine, fetch one back:
nethackers pull github.com/<you>/nethacker@<commit> ./fetched
Publish an existing solution
Also have the GitHub CLI installed and gh auth login'd as the same account
(used to create/push your repo), then:
nethackers submit ./my-solution --objective val-dwa-law-fem
nethackers --help lists every command (elites, frontier, search, show,
register). The hub defaults to https://nethackers.dunnolab.ai (override with
--hub or $NETHACKERS_HUB). Self-hosting the hub and the full design:
deploy/README.md and docs/.
Metadata
Release files for nethackers 0.22.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| nethackers-0.22.0.tar.gz | 1.1 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nethackers-0.22.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.5 MB
Release files / nethackers-0.22.0.tar.gz
| Download URL | nethackers-0.22.0.tar.gz |
|---|---|
| Size | 1.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
21f4a7e278d0a48e7ffa24b992a38e9c56926f7ada319e5bfba1cbd9b627c63c
|
|
BLAKE2b-256 checksum How to use checksums |
411293a84934daafda6746e53c7d52032d9448bb1dbed6eadf8dc01b0f2ca4e2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / nethackers-0.22.0-py3-none-any.whl
| Download URL | nethackers-0.22.0-py3-none-any.whl |
|---|---|
| Size | 329.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0752823dba8ca056738dfa0f408c22a8a58959f73a3368ba3c6e0935454e4d7f
|
|
BLAKE2b-256 checksum How to use checksums |
288fdb596a12bfde7a25f4047ebeea20eab76a89f288a6ce8368fb6e598ea1bf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|