Skip to content

v0.35.0 — one command from install to ready

Choose a tag to compare

@vkurenkov vkurenkov released this 22 Sep 18:37
· 105 commits to main since this release
2522441

Installing by hand meant a container runtime, Rosetta on Apple silicon, gh, a coding agent CLI, three logins, and a gigabyte of images fetched by a flag most people never found. nethackers setup does all of it in one command.

Setup

  • One command, one question. nethackers setup checks the machine, shows you the plan, and asks once. Then it runs the logins first and the slow work last, so you can walk away after the last browser tab.
  • It never runs sudo. Setup runs an install only when it is one documented command that needs no root: Homebrew on macOS, and the vendors' own installers for Claude Code and Codex. Anything needing root, a GUI click or a re-login is printed for you to run. A test enforces it.
  • Every step says whether it has been tested. Each OS has its own file of recipes, and each recipe carries tested, untested or not covered with its evidence. The plan shows "(untested)" next to those commands, and docs/setup.md has the whole table. Most recipes ship as untested: they come from vendor docs and haven't been run on a real machine yet.
  • Apple silicon. Setup starts Colima with Rosetta and sizes it to the machine. Without Rosetta 2, it prints how to install it first rather than starting a VM that would stall. Docker Desktop, OrbStack and Podman are detected and started, not replaced.
  • Scopes. --for eval, --for evolve or --for publish set up only what that command needs.
  • Coding agents. With no terminal, setup changes nothing and prints its plan, so an agent can summarize it and ask you one yes/no question. --yes --operator <claude|codex|opencode2> runs the unattended steps and lists the logins it can't run itself.

Downloads

  • The image pull shows bytes, speed and time left, not a wall of layer IDs, so a slow network no longer looks like a hang. eval's first pull uses the same bar. The plan says "up to N MB", because an update downloads only what changed.

Smaller things

  • doctor's fixes now say nethackers setup wherever setup can fix the check, and doctor itself stays read-only.
  • The login hint said claude, which isn't a login command. It now says claude auth login.
  • The Colima hint used to create a VM without Rosetta, and the Rosetta hint named a --vz flag Colima doesn't have.
  • Troubleshooting starts with setup, and its Podman section no longer lists a fixed issue as open.

Under the hood

  • Arena rebuilt only because the version bump moves uv.lock, and classified at ARENA_MAJOR=2: nothing on the scoring path changed, so the verified corpus carries over.