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 runbuilder for managed vLLM containers now passes--init, so Docker's init process reaps child processes and forwards signals during a restart. That restores cleandocker restartbehavior — previously a restart could leave orphaned children behind. The existing--restart unless-stoppedlifecycle 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 --jsonno 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 parsenemoclaw <sandbox> status --json. The fix capturesgateway 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 tounsupported-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-installaborted 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 likedockerandcontainerd. - 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 --auditand 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.