Last updated: 2026-07-20

Changelog — July 20, 2026

A quiet Sunday — only NemoClaw's main branch moved. Two of the eight commits are user-facing: managed vLLM containers now launch with Docker's --init so a docker restart cleanly reaps child processes and forwards signals, and the status --json regression that was breaking machine parsing is fixed — a stray gateway-selection banner no longer leaks into structured stdout. The other six are DGX Station GB300 installer hardening and e2e test reliability; Station support is still Deferred. No new Claude Code, IronClaw, Kilo Code, Hermes, or ChatGPT/OpenAI release.

2026-07-20 NemoClaw main — post-v0.0.87 · vLLM restart reaping · status --json fix

Eight commits landed on main since v0.0.87 was tagged — no new tag yet. Most of the batch is DGX Station installer hardening and e2e test work, but two changes touch behavior you might actually see:

  • Managed vLLM restarts now reap child processes (#7221): the shared docker run builder for managed vLLM containers now passes --init, so Docker's init process reaps child processes and forwards signals during a restart. That restores clean docker restart behavior — previously a restart could leave orphaned children behind. The existing --restart unless-stopped lifecycle and every model, GPU, network, and credential argument are unchanged. Anyone running local models through NemoClaw's managed vLLM path benefits with no config change.
  • status --json no longer leaks a gateway-selection banner (#7218): a regression from #7113 let OpenShell's ANSI ✓ Active gateway set to 'nemoclaw' confirmation bypass the CLI's stdout guard, which made Deep Agents target discovery fail to parse nemoclaw <sandbox> status --json. The fix captures gateway select's stdout and replays it to stderr, so the human confirmation stays visible while structured stdout is machine-parseable again. Human-readable status output is unchanged. The temporary consumer-side banner sanitizer that had been added as #7233 is now removed, since the producer regression is fixed at the source.

The remaining commits are DGX Station GB300 installer hardening (Station support is still marked Deferred):

  • OTA-upgraded DGX OS hosts are recognized (#7223): a GB300 first installed from an older base image and later OTA-upgraded to 7.5.0 never gains the full-image DGX_OTA_PRETTY_NAME="DGX OS" marker, so it used to fall through to unsupported-dgx-os. It's now classified by its latest applied OTA version and takes the existing stock-DGX-OS path that reuses the factory driver and runtime without mutating host packages.
  • Forced Station preparation unblocked on real GB300 hosts (#7237): --force-station-install aborted on genuine GB300 hardware because it matched a single hardcoded PCI device id and hard-blocked on any failed systemd unit. It now accepts the real GB300 device id set (0x31c2/0x31c3) and tolerates two unrelated failed units (ibacm.service, rtkit-daemon.service) while still blocking preparation-critical ones like docker and containerd.
  • Station Express recovery receipts survive a host handoff (#7204): the owner-only recovery receipt is now published before host preparation can require a reboot or new login, and the continuation command preserves the accepted revision, agent, model, sandbox, policy tier, and gateway/dashboard/vLLM ports instead of silently reverting to default ports on resume.
  • Station package-state validation (#7202): host preparation previously treated a matching package version as healthy even when dpkg reported an incomplete status or foreign architecture. It now requires a clean dpkg --audit and package-manager quiescence, and fails before any package or repository mutation when dpkg is unhealthy or an APT/dpkg lock is active.
  • E2E false-negative fixes (#7217): scheduled E2E runs were producing false failures from the Node/tsx module boundary, attached-provider cleanup ordering, and a Bedrock snapshot probe observing its own injected environment-variable name. The leak check stays strict for real token values and for matches outside the trusted probe environment.

Who should care: operators running local models via managed vLLM get cleaner restarts for free, and anyone scripting against status --json (or running Deep Agents Code onboarding) no longer has to strip a stray banner. The Station work only matters if you're on DGX GB300 hardware — and Station support is still Deferred, so treat it as groundwork. Everyone else can wait for the next tagged release.

NemoClaw commits → Affects: /nemoclaw/, /nemoclaw/local-gpu/, /nemoclaw/setup/

A quiet day

No new Claude Code, IronClaw, Kilo Code, Hermes, or ChatGPT/OpenAI release today. We poll every platform's official feed daily — a quiet changelog is a real signal, not a gap in coverage.

See all releases

Browse the full changelog index for the complete history across all platforms, or the daily one-liner for the most recent state of each agent.