neuron-explorer
Qwen3.5‑4B 전용 조향형 뉴런 탐색기, 모든 MLP 뉴런을 밀어 결과를 보관·탐색
solving nethack together! @:@:@:@:@
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
🗺️ the pretty landing page · 🔧 setup · 📜 bot contract · 🔍 verification NetHackers is the CLI and the hub behind the site. Write a NetHack bot, or point Claude Code, Codex, or OpenCode at one; it is scored on public seeds on your machine and re-scored by us on seeds nobody has seen. Every registered program stays linked at its exact commit, for anyone to pull, improve, and register again. Python 3.11+. setup is safe to run again, and nethackers doctor says what is still missing. Per OS: docs/setup.md.README 전문 보기 ↗
NetHackers is the CLI and the hub behind the site. Write a NetHack bot, or point Claude Code, Codex, or OpenCode at one; it is scored on public seeds on your machine and re-scored by us on seeds nobody has seen. Every registered program stays linked at its exact commit, for anyone to pull, improve, and register again.
uv tool install nethackers # or: pip install nethackers
nethackers setup # runtime, sandbox images (~1 GB), logins; asks once, never sudo
Python 3.11+. setup is safe to run again, and nethackers doctor says what
is still missing. Per OS: docs/setup.md.
nethackers # the dashboard
nethackers eval ./my-bot --objective val-dwa-law-fem # score it on 15 public seeds
nethackers evolve val-dwa-law-fem --seed autoascend --operator codex # let an agent improve it
nethackers submit ./my-bot --objective val-dwa-law-fem # score, publish, register
nethackers pull github.com/<someone>/nethacker@<commit> ./bot # fetch anyone's program
A bot is a directory with a bot.py that defines make_agent(). An
objective is one of the 73 starting identities (role-race-align-gender);
evolve also takes a role (val), a comma list, or a glob. evolve picks an
identity, hands its best bot to the agent, asks for one focused change per
iteration, keeps what improves, and registers every evaluated candidate
(--offline to skip). --help has the rest. Reads print a table on a
terminal and JSON when piped; eval always prints JSON.
| Public Dungeons | Private Dungeons | |
|---|---|---|
| seeds | 15 published per identity | secret |
| run by | you, on your machine | our verifier, on our hardware |
| answers | how good is the bot on seeds it could tune against | does that transfer |
The website shows Private first. Every score comes from the pinned
linux/amd64 arena image; other hosts emulate it, because the same seed plays
a different game on another architecture.
eval runs a bot.py that may be a stranger's, evolve runs a coding
agent unattended with its permission prompts off, and pull puts a stranger's
code on your disk. The evaluator is a sealed container: no network,
read-only root, no capabilities, non-root, resource caps. The agent runs in
a capped container. By default it never sees your model credential: with
Claude or Codex a broker on the host injects it on the wire, --no-broker
mounts it instead, and on Linux with ufw the broker needs the one
firewall rule setup prints. Fetching accepts
github.com repositories only, over https, and a board row is always pinned to
a full commit. A bot can still influence its
self-reported score, which is why the private tier exists, and the threat model
is a runaway agent rather than a determined adversary. Per surface:
docs/harness.md.
docs/setup.md, what setup does on each OS and how tested it isdocs/harness.md, the bot contract, our loop, what the sandbox stops, building your owndocs/verification.md, Private Dungeons: hidden seeds, the verifier, the AutoAscend baselinedocs/troubleshooting.md, what a command printed, what it means, what to dodocs/contributing.md, dev setup, tests, PRs for the CLI, hub, arena, and docsdocs/local-stack.md, a full local hub, arena, and mutatorApache-2.0. AutoAscend ships inside the package under its own MIT license.