From 65c182573bc6ccca93509d49c384e54e3ad35dd8 Mon Sep 17 00:00:00 2001 From: Jason Ma Date: Thu, 9 Jul 2026 09:00:33 +0800 Subject: [PATCH 1/2] fix(install): use my-assistant for DGX Spark express install sandbox name (#6525) DGX Spark express install defaulted the sandbox name to my-spark-assistant, while DGX Station, Windows WSL, and standard onboarding all use my-assistant. Align DGX Spark with the other platforms so the default sandbox name is consistent across the CLI, docs, and examples. An explicitly set NEMOCLAW_SANDBOX_NAME still takes precedence via the existing ${NEMOCLAW_SANDBOX_NAME:-...} default. Co-Authored-By: Claude Opus 4.8 (1M context) Signed-off-by: Jason Ma --- docs/get-started/quickstart.mdx | 2 +- scripts/install.sh | 4 ++-- test/install-express-prompt.test.ts | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/get-started/quickstart.mdx b/docs/get-started/quickstart.mdx index 99203ec601d..9c240bc5e8a 100644 --- a/docs/get-started/quickstart.mdx +++ b/docs/get-started/quickstart.mdx @@ -97,7 +97,7 @@ Express install switches onboarding to non-interactive mode, allows `sudo` passw On DGX Spark and DGX Station, express install selects managed vLLM; DGX Spark uses `qwen3.6-35b-a3b-nvfp4` by default, and DGX Station uses `deepseek-v4-flash` by default. Unless `NEMOCLAW_POLICY_TIER` is set, it applies sandbox policy in `suggested` mode with the `balanced` tier by default. That tier uses the base sandbox policy plus supported package, model, web-search, and local-inference presets. -On DGX Spark, express install uses `my-spark-assistant` as the sandbox name unless `NEMOCLAW_SANDBOX_NAME` is already set. +Express install uses `my-assistant` as the sandbox name across all platforms unless `NEMOCLAW_SANDBOX_NAME` is already set. On WSL, express install selects the Windows-host Ollama setup path. Set `NEMOCLAW_NO_EXPRESS=1` to skip the express prompt, or set `NEMOCLAW_PROVIDER` before launching the installer when you want to choose a provider yourself. diff --git a/scripts/install.sh b/scripts/install.sh index c82dcc476cd..6bfbd47bd87 100755 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -2619,7 +2619,7 @@ describe_express_install() { inference_summary="managed local vLLM using the DGX Spark profile default model" fi inference_disclosure="Managed vLLM pulls the configured vLLM image/model and runs a local vLLM inference container." - sandbox_summary="${NEMOCLAW_SANDBOX_NAME:-my-spark-assistant}" + sandbox_summary="${NEMOCLAW_SANDBOX_NAME:-my-assistant}" ;; "DGX Station") inference_summary="managed local vLLM" @@ -2718,7 +2718,7 @@ maybe_offer_express_install() { export NEMOCLAW_POLICY_MODE=suggested case "$platform" in "DGX Spark") - export NEMOCLAW_SANDBOX_NAME="${NEMOCLAW_SANDBOX_NAME:-my-spark-assistant}" + export NEMOCLAW_SANDBOX_NAME="${NEMOCLAW_SANDBOX_NAME:-my-assistant}" export NEMOCLAW_PROVIDER=install-vllm if [ -n "${NEMOCLAW_VLLM_MODEL:-}" ]; then export NEMOCLAW_VLLM_MODEL diff --git a/test/install-express-prompt.test.ts b/test/install-express-prompt.test.ts index 1606ddc5507..a80eea7dba3 100644 --- a/test/install-express-prompt.test.ts +++ b/test/install-express-prompt.test.ts @@ -119,12 +119,12 @@ sys.exit(exit_code) expect(output).toMatch( /Managed vLLM pulls the configured vLLM image\/model and runs a local vLLM inference container/, ); - expect(output).toMatch(/Sandbox name: my-spark-assistant/); + expect(output).toMatch(/Sandbox name: my-assistant/); expect(output).toMatch(/Sandbox policy: suggested mode, tier 'balanced'/); expect(output).toMatch(/Run express install/); expect(output).toMatch(/Using express install for DGX Spark/); expect(output).toMatch( - /RESULT NON_INTERACTIVE=1 SUDO_MODE=prompt PROVIDER=install-vllm MODEL= VLLM_MODEL= POLICY=suggested YES=1 SANDBOX=my-spark-assistant/, + /RESULT NON_INTERACTIVE=1 SUDO_MODE=prompt PROVIDER=install-vllm MODEL= VLLM_MODEL= POLICY=suggested YES=1 SANDBOX=my-assistant/, ); }); @@ -142,7 +142,7 @@ sys.exit(exit_code) /Managed vLLM pulls the configured vLLM image\/model and runs a local vLLM inference container/, ); expect(output).toMatch( - /RESULT NON_INTERACTIVE=1 SUDO_MODE=prompt PROVIDER=install-vllm MODEL= VLLM_MODEL=custom-qwen3\.6 POLICY=suggested YES=1 SANDBOX=my-spark-assistant/, + /RESULT NON_INTERACTIVE=1 SUDO_MODE=prompt PROVIDER=install-vllm MODEL= VLLM_MODEL=custom-qwen3\.6 POLICY=suggested YES=1 SANDBOX=my-assistant/, ); }); From 5b80dc3ccd90c95ace3d01d5c01b7b6f59f03fcf Mon Sep 17 00:00:00 2001 From: Jason Ma Date: Thu, 9 Jul 2026 09:35:26 +0800 Subject: [PATCH 2/2] test(install): assert explicit NEMOCLAW_SANDBOX_NAME wins on DGX Spark (#6525) Cover the acceptance criterion from #6525 that an explicitly set NEMOCLAW_SANDBOX_NAME must continue to take precedence over the express install default. The existing DGX Spark cases only assert the default name, so add a case that sets NEMOCLAW_SANDBOX_NAME=custom-spark and verifies it flows through both the prompt summary and the exported env. Addresses PR Review Advisor follow-up PRA-T1/T3. Co-Authored-By: Claude Opus 4.8 (1M context) Signed-off-by: Jason Ma --- test/install-express-prompt.test.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/test/install-express-prompt.test.ts b/test/install-express-prompt.test.ts index a80eea7dba3..f916e84c9d3 100644 --- a/test/install-express-prompt.test.ts +++ b/test/install-express-prompt.test.ts @@ -146,6 +146,19 @@ sys.exit(exit_code) ); }); + it("preserves an explicit NEMOCLAW_SANDBOX_NAME over the DGX Spark default (#6525)", () => { + const result = runExpressPromptWithTty("y\n", "pipe", "DGX Spark", { + NEMOCLAW_SANDBOX_NAME: "custom-spark", + }); + const output = `${result.stdout}${result.stderr}`; + expect(result.status, output).toBe(0); + expect(output).toMatch(/Detected DGX Spark/); + expect(output).toMatch(/Sandbox name: custom-spark/); + expect(output).toMatch( + /RESULT NON_INTERACTIVE=1 SUDO_MODE=prompt PROVIDER=install-vllm MODEL= VLLM_MODEL= POLICY=suggested YES=1 SANDBOX=custom-spark/, + ); + }); + it("detects Windows WSL as an express install platform", () => { const result = spawnSync( "bash",