The dunnolab team, led by Vladislav Kurenkov (AIRI), launched the NetHackers community, whose goal is to create the first program that reliably wins NetHack 3.6.6. Winning this 1987 game means guiding a character through approximately fifty procedurally generated levels to the Amulet of Yendor without dying: death here is permanent. Bot evaluation is built on a grid of 73 starting identities, where public seeds are reproduced locally, and hidden seeds are independently recalculated by the organizers. The starting harness makes Claude Code, Codex, or OpenCode evolve a symbolic bot using the MAP-Elites principle, and one can join the effort from an ordinary laptop.

image
image

What happened

The core of the launch is a working evaluation infrastructure. A CLI, installed via the command uv tool install nethackers, evaluates bots on a grid of 73 starting identities role-race-align-gender: 15 public seeds are reproduced locally by the participant, and another 15 hidden seeds are independently recalculated by the organizers on a pinned linux/amd64 image. A thin hub stores the best “elite” bots for each goal, and any participant can download someone else’s program by exact commit, improve it, and re-register it. The starting harness implements evolution in the spirit of MAP-Elites: Claude Code, Codex, or OpenCode makes one focused change to bot.py in a single iteration, and the algorithm keeps only those edits that improved the result. At the same time, the LLM works offline, exclusively at the evolution stage, while in runtime a cheap symbolic program with fully auditable code plays NetHack; the dunnolab/nethackers repository is open under the Apache-2.0 license.

Context

NetHack is a classic 1987 roguelike that has long served as a benchmark for long-horizon tasks: victory requires guiding a character through dozens of procedurally generated levels to the Amulet of Yendor, and any mistake means permanent death. In the BALROG suite, it is the worst game for frontier models, and NLE co-author Tim Rocktäschel annually reminds that “AI still hasn’t learned to play NetHack.” The state of the art at the time of launch is modest: the symbolic AutoAscend from 2021 achieved 7.8% progression, a 2026 RL agent — 16.98%, and a single win by the LLM agent GPT-6 “Astra” on version 3.6.7 took 37,140 moves and 12 days under human supervision; there are no stable wins for any approach. The individual components of the project are not new — MAP-Elites, program evolution, and LLM as a code-editing operator have already been described in research; the novelty lies elsewhere: this is an open arena with a registry of elite bots tied to exact commits, where others’ work can be downloaded, improved, and re-registered.

Why this matters for the industry

For the industry, the project is a public test of a key pattern in agentic coding: a model that does not solve the task itself writes a program that does. The test is not based on self-reported results, but on independent re-verification on hidden seeds, meaning it is an honest test of generalization, not overfitting to known seeds. Engineers are also interested in the economics of the scheme: expensive search during development, near-zero inference cost in-game, and a fully auditable artifact; the set of methods — pinned image, hidden-seed verification, commit-based fork registry — can be copied into one’s own projects today. If in the coming months elite bots significantly exceed the ~17% progression mark on hidden seeds, it will be the first signal that LLM-driven code evolution generalizes on the long horizon. In the longer term, the “LLM writes, symbolic program plays” combination could become a standard route for tasks where the LLM is too expensive or non-deterministic at each step, and in case of failure, NetHackers will remain a benchmark negative result on long-horizon planning.

Why this matters for users

One can participate from an ordinary laptop: the nethackers setup command installs the runtime and a sandbox of about 1 GB, after which the public score is reproduced locally. Evolving one’s own bot is launched with a single command — nethackers evolve --operator codex, where the operator can be Claude Code, Codex, or OpenCode. One’s own bots and harnesses are welcome: a participant is not required to follow the starting MAP-Elites pipeline. Each registered program is fixed by an exact commit and remains in the hub, so someone else’s elite bot can be taken as a base, improved, and re-registered — thus one person’s work becomes a starting point for others. The costs of participation are reduced to time, laptop cost, and operator tokens, and the practical value today is not in winning the game, but in an accessible playground for debugging one’s own agentic pipelines.

What is still unknown / limitations

There are no wins yet: at the start, the community has infrastructure but no result, and the benchmarks for comparison are 7.8% progression for AutoAscend and 16.98% for the RL agent. The single win by GPT-6 “Astra” was achieved on version 3.6.7 in 12 days with human supervision, which is not equivalent to a stable win. Six-month and two-year estimates are interpretations, not guarantees: it is unknown whether elite bots will exceed the current level on hidden seeds and whether the community will reach critical mass. The scheme should not be automatically transferred to corporate acceptance: NetHack is a deterministic open environment with binary scoring and a pinnable image, whereas corporate agentic tasks usually have neither such pinnability nor ground truth. Finally, this is research infrastructure without an API, SLA, or price, so it is premature to speak of any production effect.

Sources

Author

Look at AI, editorial team