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.2
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.2.tar.gz | 1.1 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nethackers-0.22.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.5 MB
Release files / nethackers-0.22.2.tar.gz
| Download URL | nethackers-0.22.2.tar.gz |
|---|---|
| Size | 1.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f52f137cfce04900555874ff2fc32c81e21b06c9ddc1b14996c405529b47d8b4
|
|
BLAKE2b-256 checksum How to use checksums |
23c4df0647838131e901a0961e4c0eedf640315b138a187342ccd33acaafa2f8
|
| 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.2-py3-none-any.whl
| Download URL | nethackers-0.22.2-py3-none-any.whl |
|---|---|
| Size | 334.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
dba4070dbe02e01dc698120bade5d1f788b1d195f395deec78b9756fa756c5eb
|
|
BLAKE2b-256 checksum How to use checksums |
49c498c316e3e0bd6e1e776b51127b70b3b0b0bfea101d115f3cf4db99531c30
|
| 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}
|