Repository navigation
v0.6.18
Highlights
CLI
Every command accepts --json; list commands accept --quiet, mutating commands accept --dry-run, and confirming commands accept --yes. Exit codes are 0, 1 for failure, and 2 for usage errors. (PR #665)
hud jobs list, hud jobs get, hud jobs cancel, and hud trace get replace the single-command forms; hud jobs <uuid> and hud trace <uuid> still work. hud trace get reads local spans when telemetry is disabled. (PR #665, PR #667)
hud eval --runtime takes local, hud, hosted, docker, modal, daytona, or tcp://host:port; --remote means --runtime hosted. --config <agent>.<key>=<value> sets one agent's option. .hud_eval.toml is validated: unknown keys and unset ${VAR} are errors. Platform tasksets with container rows run with --runtime local. (PR #665, PR #667, PR #670)
hud deploy --name selects among several environments in one directory; --env and --env-file upsert registry secrets; Compose is passed through --runtime-config. hud sync tasks --link saves the target taskset as the directory default. hud init scaffolds a .hud_eval.toml. hud models fork --if-not-exists. .hud/config.json is bound to the credentials that wrote it. (PR #665)
Model clients
A provider key takes precedence over the HUD gateway; AgentConfig.gateway = True forces the gateway. create_agent resolves model names against the gateway catalog by id or display name. Bedrock inference-profile ARNs are supported as the Anthropic model. (PR #665)
Local placement
Taskset.run() without a runtime places container rows on DockerRuntime and live-environment rows on LocalRuntime; a verifier sharing its task's environment runs on the task's runtime. Task files that import templates from a sibling module load correctly. SubprocessRuntime accepts a live Environment. (PR #670)
Agents
A provider error ends the run with status error and AgentStep.stop_reason; malformed Gemini function calls report malformed_tool_call. (PR #673)
OpenAI computer-use errors are returned to the model with a screenshot instead of being swallowed, and malformed actions are rejected. esc, up, down, left, right, del, and option are accepted key names. (PR #666)
SSH and workspaces
Command output is no longer truncated on large streams, backpressure, or lingering child processes, and large stdin to an early-exiting process no longer hangs. NamespaceProcess.wait_status() waits for exit while the caller drains output. (PR #673)
Breaking
CLI
hud clientis removed; usehud task startandhud task gradewith--url. (PR #665)hud deploy --alland--verboseare removed, andcompose.yamlis no longer inferred as the build recipe; pass Compose through--runtime-config. (PR #665)hud sync tasks --idand--excludeare removed; use--link. (PR #665)hud task start --out,hud task grade --out,hud trace --local-dir, andhud eval --from-jsonare removed. (PR #665)- Per-command
--jsonoptions are replaced by the global flag,hud qalisting ishud qa list, andhud cancelis a deprecated alias ofhud jobs cancel. The console script entry point ishud.cli.__main__:main. (PR #665)
Full Changelog: v0.6.17...v0.6.18