Skip to content

fix(onboard): reuse a running Ollama daemon on WSL mirrored networking - #8190

Merged
prekshivyas merged 5 commits into
mainfrom
fix/mirrored-ollama-reuse
Aug 4, 2026
Merged

fix(onboard): reuse a running Ollama daemon on WSL mirrored networking#8190
prekshivyas merged 5 commits into
mainfrom
fix/mirrored-ollama-reuse

Conversation

@hunglp6d

@hunglp6d hunglp6d commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

Summary

WSL express install aborted when Ollama was already running on the Windows host and WSL used mirrored networking. The daemon answers on the distro's own 127.0.0.1 there, so isWindowsHostOllama read false, the provider menu kept the install entry, and onboarding tried to reinstall through PowerShell interop. Onboarding now reuses the running daemon on that route, and the model pull no longer shells out to an ollama binary that does not exist in WSL.

Related Issue

Fixes #7472

Changes

  • resolveRequestedProviderSelection collapses an install-windows-ollama request to the running ollama entry when a daemon already answers, before the requested key is matched. A Windows-host daemon on an unsupported container runtime still falls through to the existing unsupported-windows-host-ollama rejection.
  • pullOllamaModel takes the HTTP pull path whenever no local ollama binary exists, not only when the resolved host is host.docker.internal. On mirrored networking the CLI branch ran and failed with ollama: command not found against a daemon that answered /api/tags.
  • setup-nim-flow passes the existing ollamaRunning probe result into provider selection.
  • install-ollama is deliberately untouched: resolveOllamaInstallMenuEntry keeps that entry for a running-but-stale daemon, and collapsing it would skip the Ollama upgrade path. provider-selection.test.ts locks that scope.

The new ollamaRunning input on ResolveRequestedProviderSelectionInput is optional rather than required. Current requirement: test/onboard-selection.test.ts sits exactly at its 4769-line legacy budget in ci/test-file-size-budget.json, and adding the field to its helper pushed it to 4770 and failed the test-file-size-budget hook. A required field would grow a file the repository is ratcheting down. The single production consumer, setup-nim-flow.ts, passes it explicitly. preferManagedVllmDefault on the same interface is already optional. The absent-value path is exercised by test/onboard-selection.test.ts and test/onboard-selection-windows-provider-rejection.test.ts, whose helpers omit the field, and the false path by still installs on the Windows host when no daemon responds (#7472).

Type of Change

  • Code change (feature, bug fix, or refactor)
  • Code change with doc updates
  • Doc only (prose changes, no code sample modifications)
  • Doc only (includes code sample changes)

Quality Gates

  • Tests added or updated for changed behavior
  • Existing tests cover changed behavior — justification:
  • Tests not applicable — justification:
  • Docs updated for user-facing behavior changes
  • Docs not applicable — justification: The documentation already describes the intended behavior. docs/get-started/windows-preparation.mdx:170 states that NemoClaw can use an already-running Windows-host daemon; this fix restores that promise on mirrored networking. No command, flag, environment variable, configuration key, or error string is added or renamed.
  • Sensitive paths changed (security, policy, credentials, preflight, onboarding, inference, runner, sandbox, or messaging)
  • Sensitive-path review completed or maintainer-approved waiver recorded — reviewer/approval link/justification:
  • Non-success, skipped, or missing CI check accepted by maintainer — check name, approval link, and follow-up issue:

Documentation Writer Review

  • Documentation writer subagent reviewed the completed changes
  • Result: no-docs-needed
  • Evidence: The reviewer searched docs/ for WSL onboarding, Windows-host Ollama, mirrored networking, express install, and OLLAMA_HOST=0.0.0.0 and examined docs/get-started/windows-preparation.mdx:169-180, docs/inference/set-up-ollama.mdx:39-40,101-127, docs/reference/troubleshooting.mdx:2650-2662, and docs/resources/prompt-assets/windows-wsl.md:20. No passage becomes inaccurate: the pages describe the documented reuse behavior this fix restores, and the host.docker.internal references remain valid for bridged networking. The reviewer also checked the new code comments and test titles against WRITING.md and .agents/skills/_shared/controlled-words.md; all findings were applied before this commit. No docs/changelog/YYYY-MM-DD.mdx entry is required, because that file belongs to the pre-tag release-notes workflow rather than a contributor PR.
  • Agent: Claude Code documentation writer subagent

DGX Station Hardware Evidence

  • Tested on DGX Station
  • Tested commit:
  • Station profile/scenario:
  • Result:
  • Supporting evidence:

Verification

  • PR description includes a Signed-off-by: line and every commit appears as Verified in GitHub
  • Normal pre-commit, commit-msg, and pre-push hooks passed, or npm run validate:pr passed after refreshing origin/main when hooks were skipped or unavailable
  • Targeted behavior tests pass for the current change set, or tests are marked not applicable above — command/result or justification: npx vitest run --project cli src/lib/onboard/provider-selection.test.ts src/lib/onboard/setup-nim-flow.test.ts src/lib/inference/ollama/proxy.test.ts passed 53/53. npx vitest run --project integration test/onboard-selection.test.ts test/onboard-selection-windows-provider-rejection.test.ts test/ollama-pull-timeout.test.ts passed 73/73. npm run typecheck:cli and npm run checks:repository passed. Reverting only the three source files turns exactly the three new #7472 tests red and leaves the other 50 green.
  • Applicable broad gate passed — npm test for broad runtime/test-harness changes; npm run check for repo-wide validation/coverage changes — command/result:
  • Quality Gates section completed with required justifications or waivers
  • No secrets, API keys, or credentials committed
  • npm run docs builds without warnings (doc changes only)
  • Doc pages follow the style guide (doc changes only)
  • New doc pages include SPDX header and frontmatter (new pages only)

Signed-off-by: Hung Le hple@nvidia.com

Summary by CodeRabbit

  • New Features

    • Improved Ollama setup across Windows, WSL, and local environments.
    • Reuses an already running Ollama service when available.
    • Automatically selects CLI- or HTTP-based model downloads based on the available environment.
    • Supports running Ollama through WSL mirrored networking.
  • Bug Fixes

    • Added fallback handling when the local Ollama command-line tool is unavailable.
    • Improved provider selection for Windows-hosted and WSL-based Ollama instances.

Express install exports NEMOCLAW_PROVIDER=install-windows-ollama for every
Windows WSL host running Docker Desktop, without probing whether Ollama
already answers. Under WSL mirrored networking the Windows-host daemon
answers on the distro's own 127.0.0.1, so findReachableOllamaHost resolves
the host as local and isWindowsHostOllama reads false. The provider menu
keeps the install entry, the requested key matches it, and onboarding
reinstalls through PowerShell interop. When that interop is unreachable,
which is the condition that produced the false reading, the run ends with
"Install did not produce ollama.exe on PATH".

PR #7476 added a !isWindowsHostOllama term to the menu gate. That term is a
no-op on this route because isWindowsHostOllama is already false here.

Two sites answered a local question from a network address:

- resolveRequestedProviderSelection now collapses an install-windows-ollama
  request to the running ollama entry when a daemon answers, before the key
  is matched. A Windows-host daemon on an unsupported container runtime
  still falls through to the existing rejection.
- pullOllamaModel now takes the HTTP pull path whenever no local ollama
  binary exists, not only when the resolved host is host.docker.internal.
  On mirrored networking the CLI branch ran and failed with "ollama:
  command not found" against a daemon that answered /api/tags.

install-ollama is left alone so the Ollama upgrade entry keeps working.

With PowerShell reachable on the same route, onboarding previously selected
start-windows-ollama, which stopped and restarted a running daemon and
rewrote OLLAMA_HOST to 0.0.0.0:11434 at Windows User scope. It now reuses
the daemon and leaves the process and the variable unchanged.

Verified on Windows 11 with WSL2 Ubuntu 24.04, Docker Desktop 4.85 and
Ollama 0.32.5. The failure reproduces on main under mirrored networking,
and onboarding reaches the sandbox build after the change. Reverting the
three source files turns exactly the three new tests red.

Fixes #7472

Signed-off-by: Hung Le <hple@nvidia.com>
@copy-pr-bot

copy-pr-bot Bot commented Aug 4, 2026

Copy link
Copy Markdown

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@coderabbitai

coderabbitai Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 8090337d-2a2f-41ef-8608-6f5315cc4202

📥 Commits

Reviewing files that changed from the base of the PR and between be686a2 and bf003cd.

📒 Files selected for processing (3)
  • src/lib/inference/ollama/proxy.test.ts
  • src/lib/onboard/setup-nim-flow.test.ts
  • src/lib/onboard/setup-nim-flow.ts
🚧 Files skipped from review as they are similar to previous changes (3)
  • src/lib/onboard/setup-nim-flow.ts
  • src/lib/onboard/setup-nim-flow.test.ts
  • src/lib/inference/ollama/proxy.test.ts

📝 Walkthrough

Walkthrough

Ollama onboarding now reuses detected Windows-host daemons in supported WSL environments. Model pulling now selects HTTP when the local CLI is unavailable or the host is Docker-internal, and otherwise uses the CLI.

Changes

Ollama runtime selection

Layer / File(s) Summary
Daemon-aware provider resolution
src/lib/onboard/provider-selection.ts, src/lib/onboard/provider-selection.test.ts
Provider selection accepts ollamaRunning and maps supported Windows-host installation requests to the running ollama option. Tests cover running, unavailable, and WSL-local daemon cases.
Setup flow runtime wiring
src/lib/onboard/setup-nim-flow.ts, src/lib/onboard/setup-nim-flow.test.ts
Setup passes Ollama running state into provider resolution. Tests cover WSL mirrored networking and loopback access.
Model pull transport dispatch
src/lib/inference/ollama/proxy.ts, src/lib/inference/ollama/proxy.test.ts
Model pulls use HTTP for Docker-internal hosts or missing local CLIs. CLI pulls remain the default when the executable is available. Dispatch tests mock CLI detection and streamed HTTP output.

Estimated code review effort: 3 (Moderate) | ~25 minutes

Possibly related PRs

  • NVIDIA/NemoClaw#5432: Related Ollama onboarding changes cover Windows-host daemon state and setup flow handling.

Suggested labels: bug-fix, area: onboarding, area: inference, platform: wsl

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 40.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: reusing a running Ollama daemon on WSL mirrored networking.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/mirrored-ollama-reuse

Comment @coderabbitai help to get the list of available commands.

@github-code-quality

github-code-quality Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Code Coverage Overview

Languages: TypeScript

TypeScript / code-coverage/plugin

The overall coverage in commit bf003cd in the fix/mirrored-ollama-... branch remains at 96%, unchanged from commit ad26164 in the main branch.

TypeScript / code-coverage/cli

The overall coverage in commit bf003cd in the fix/mirrored-ollama-... branch remains at 81%, unchanged from commit 643a4ab in the main branch.

Show a code coverage summary of the most impacted files.
File main 643a4ab fix/mirrored-ollama-... bf003cd +/-
src/lib/actions...oy-execution.ts 95% 89% -6%
src/lib/platform.ts 89% 84% -5%
src/lib/shields/index.ts 70% 69% -1%
src/lib/shields...nsition-lock.ts 88% 87% -1%
src/lib/policy/index.ts 59% 59% 0%
src/lib/actions...licy-channel.ts 80% 81% +1%
src/lib/actions...ess-recovery.ts 82% 84% +2%
src/lib/inferen...ollama/proxy.ts 26% 31% +5%
src/lib/onboard...ization-deps.ts 58% 83% +25%
src/lib/actions...ce-preflight.ts 50% 78% +28%

Updated August 04, 2026 07:31 UTC

@hunglp6d
hunglp6d marked this pull request as ready for review August 4, 2026 04:06

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@src/lib/inference/ollama/proxy.test.ts`:
- Around line 432-440: Update the test case around loadProxyForDispatch and
“pulls over HTTP when the daemon resolves on the Windows host” to set
hasLocalCli: true, isolating the Docker-host predicate from the
missing-local-CLI condition while preserving the existing HTTP-versus-bash
assertions.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 8da61e8d-8a3b-402c-b18d-d621b763a4b9

📥 Commits

Reviewing files that changed from the base of the PR and between 95a9d6f and be686a2.

📒 Files selected for processing (6)
  • src/lib/inference/ollama/proxy.test.ts
  • src/lib/inference/ollama/proxy.ts
  • src/lib/onboard/provider-selection.test.ts
  • src/lib/onboard/provider-selection.ts
  • src/lib/onboard/setup-nim-flow.test.ts
  • src/lib/onboard/setup-nim-flow.ts

Comment thread src/lib/inference/ollama/proxy.test.ts
@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

PR Review Advisor — Informational

Advisor assessment: Informational / low confidence
Next action: No advisor follow-up needed.
Findings: 0 blockers · 0 warnings · 0 suggestions
Status: Same-session synthesis validation failed; the advisor result is incomplete.

Model lanes

  • GPT-5.6 Terra (primary): Completed · low confidence · 0 blockers · 0 warnings · 0 suggestions
  • Nemotron 3 Ultra (second opinion): Failed

Second-opinion terminology and E2E selections are advisory. They do not change the primary assessment or E2E / PR Gate.

3 semantic terminology decisions

Terminology decisions are advisory. They affect the assessment only when a separate finding identifies concrete semantic impact.

  • established — Windows-host daemon at src/lib/inference/ollama/proxy.ts:868: Keep the established term.
  • established — mirrored networking at src/lib/onboard/provider-selection.ts:112: Keep the established term.
  • justified — local `ollama` binary at src/lib/inference/ollama/proxy.ts:866: Keep the modifier because CLI-versus-HTTP pull dispatch depends on executable availability, not daemon reachability.

E2E guidance

Advisory only. E2E / PR Gate selects and runs jobs independently.

Recommended E2E: inference-routing, network-policy, onboard-repair, onboard-resume, cloud-onboard

Workflow run details

This automated review informs maintainers. Warnings and suggestions do not require a response. A maintainer decides whether to merge.

@apurvvkumaria apurvvkumaria self-assigned this Aug 4, 2026
@hunglp6d hunglp6d added area: local-models Local model providers, downloads, launch, or connectivity area: onboarding Onboarding FSM, provider setup, sandbox launch, or first-run flow labels Aug 4, 2026
@prekshivyas
prekshivyas merged commit 55f858e into main Aug 4, 2026
74 of 76 checks passed
@prekshivyas
prekshivyas deleted the fix/mirrored-ollama-reuse branch August 4, 2026 11:42
apurvvkumaria added a commit that referenced this pull request Aug 4, 2026
<!-- markdownlint-disable MD041 -->
## Summary

Prepares the canonical v0.0.102 release documentation from the current
release-labeled scope.
The change adds a dated changelog for all 38 user-facing shipping PRs
and corrects the OpenClaw agent command reference for the behavior
delivered by #8191.

## Changes

- Add `docs/changelog/2026-08-04.mdx` with the v0.0.102 release summary,
detailed behavior changes, support boundaries, security evidence links,
and links to durable documentation.
- Update `docs/reference/commands.mdx` to describe non-JSON OpenClaw
output capture, its combined limit, marker handling, stream suppression,
recovery guidance, and exit behavior.
- [#8167](#8167) ->
`docs/changelog/2026-08-04.mdx`: Records authenticated attachment of
operator-managed llama.cpp servers.
- [#8129](#8129) ->
`docs/changelog/2026-08-04.mdx`: Records the Experimental managed vLLM
profile for two DGX Spark systems.
- [#7983](#7983) ->
`docs/changelog/2026-08-04.mdx`: Records qualification of the May 2026
GB300WS factory image.
- [#8207](#8207) ->
`docs/changelog/2026-08-04.mdx`: Records the qualified DGX Station
driver transaction.
- [#8208](#8208) ->
`docs/changelog/2026-08-04.mdx`: Records mode-bound Express resume
state.
- [#8158](#8158) ->
`docs/changelog/2026-08-04.mdx`: Records recovery of host-global
dual-Station runtime ownership.
- [#8145](#8145) ->
`docs/changelog/2026-08-04.mdx`: Records Windows-host Ollama validation
from Docker Desktop's network context.
- [#8190](#8190) ->
`docs/changelog/2026-08-04.mdx`: Records HTTP model pulls when WSL has
no local Ollama executable.
- [#8195](#8195) ->
`docs/changelog/2026-08-04.mdx`: Records reuse of a healthy
installer-managed CLI.
- [#8053](#8053) ->
`docs/changelog/2026-08-04.mdx`: Records early rejection of incompatible
OpenShell gateway versions.
- [#8098](#8098) ->
`docs/changelog/2026-08-04.mdx`: Records the bounded
package-service-to-standalone gateway recovery transition.
- [#8216](#8216) ->
`docs/changelog/2026-08-04.mdx`: Records the final dashboard port
selected during multi-sandbox onboarding.
- [#8146](#8146) ->
`docs/changelog/2026-08-04.mdx`: Records managed startup-state
restoration for stopped sandboxes.
- [#8092](#8092) ->
`docs/changelog/2026-08-04.mdx`: Records gateway watchdog recovery for
classified not-serving states.
- [#8182](#8182) ->
`docs/changelog/2026-08-04.mdx`: Records consistent managed-recovery
wait configuration.
- [#8040](#8040) ->
`docs/changelog/2026-08-04.mdx`: Records Docker sandbox rollback
authority through late validation.
- [#8130](#8130) ->
`docs/changelog/2026-08-04.mdx`: Records bounded Shields deadline
recovery and durable containment.
- [#8086](#8086) ->
`docs/changelog/2026-08-04.mdx`: Records repair of narrowly validated
permission-only configuration drift.
- [#8122](#8122) ->
`docs/changelog/2026-08-04.mdx`: Records prompt failure and guidance for
corrupt transition locks.
- [#8124](#8124) ->
`docs/changelog/2026-08-04.mdx`: Records policy restoration flags,
previews, and target revalidation.
- [#7886](#7886) ->
`docs/changelog/2026-08-04.mdx`: Records explicit destruction after
pre-delete Shields hardening failures while preserving recovery
authority.
- [#7901](#7901) ->
`docs/changelog/2026-08-04.mdx`: Records multi-port uninstall behavior
and shared-resource preservation.
- [#7984](#7984) ->
`docs/changelog/2026-08-04.mdx`: Records one classified transient remote
MCP startup retry.
- [#7954](#7954) ->
`docs/changelog/2026-08-04.mdx`: Records bounded hosted-inference probe
replies.
- [#7574](#7574) ->
`docs/changelog/2026-08-04.mdx`: Records preservation of validated
reasoning capabilities through onboarding.
- [#8089](#8089) ->
`docs/changelog/2026-08-04.mdx`: Records proxy routing for Hermes
WhatsApp pairing and media traffic.
- [#7682](#7682) ->
`docs/changelog/2026-08-04.mdx`: Records native Hermes session deletion
and identifier validation.
- [#8150](#8150) ->
`docs/changelog/2026-08-04.mdx`: Records corporate CA trust for
LangChain Deep Agents Code image builds.
- [#8156](#8156) ->
`docs/changelog/2026-08-04.mdx`: Records reviewed managed runtime
dependency remediation.
- [#8180](#8180) ->
`docs/changelog/2026-08-04.mdx`: Records reviewed MCP discovery runtime
dependency updates.
- [#8196](#8196) ->
`docs/changelog/2026-08-04.mdx`: Records private npm dependency
remediation across managed images.
- [#8203](#8203) ->
`docs/changelog/2026-08-04.mdx`: Records reviewed Hermes and LangChain
Deep Agents Code Python dependency updates.
- [#8125](#8125) ->
`docs/changelog/2026-08-04.mdx`: Records bounded diagnostics for invalid
enumerated CLI values.
- [#8193](#8193) ->
`docs/changelog/2026-08-04.mdx`: Records bounded diagnostics for
unresolved sandbox base images.
- [#8118](#8118) ->
`docs/changelog/2026-08-04.mdx`: Records bounded diagnostics for changed
gateway authority.
- [#8191](#8191) ->
`docs/changelog/2026-08-04.mdx`, `docs/reference/commands.mdx`: Records
output capture, marker handling, recovery guidance, and exit behavior
for non-JSON OpenClaw agent commands.
- [#8187](#8187) ->
`docs/changelog/2026-08-04.mdx`: Records the aligned
interactive-installation start across supported agents.
- [#8153](#8153) ->
`docs/changelog/2026-08-04.mdx`: Records current product capabilities
and support boundaries.

## Type of Change

- [ ] Code change (feature, bug fix, or refactor)
- [ ] Code change with doc updates
- [x] Doc only (prose changes, no code sample modifications)
- [ ] Doc only (includes code sample changes)

## Quality Gates

- [ ] Tests added or updated for changed behavior
- [ ] Existing tests cover changed behavior — justification:
- [x] Tests not applicable — justification: This documentation-only
release preparation does not change executable behavior. Existing
changelog and published-route tests pass.
- [x] Docs updated for user-facing behavior changes
- [ ] Docs not applicable — justification:
- [ ] Sensitive paths changed (security, policy, credentials, preflight,
onboarding, inference, runner, sandbox, or messaging)
- [ ] Sensitive-path review completed or maintainer-approved waiver
recorded — reviewer/approval link/justification:
- [ ] Non-success, skipped, or missing CI check accepted by maintainer —
check name, approval link, and follow-up issue:

## Documentation Writer Review

- [x] Documentation writer subagent reviewed the completed changes
- Result: `docs-updated`
- Evidence: Independently reviewed `docs/changelog/2026-08-04.mdx` and
`docs/reference/commands.mdx` at commit `b89913780`. All 38 user-facing
v0.0.102 PRs are represented, #8191 behavior matches the implementation,
and the writing rules, documentation style, controlled terminology,
route structure, and skip policy pass review. Targeted tests pass 36/36
and the documentation build completes with 0 errors.
- Agent: Codex Desktop independent documentation writer
<!-- docs-review-head-sha: b899137 -->
<!-- docs-review-agents-blob-sha: 3dd7c24 -->

## DGX Station Hardware Evidence

- [ ] Tested on DGX Station
- Tested commit: Not applicable
- Station profile/scenario: Not applicable
- Result: Not applicable
- Supporting evidence: Not applicable

## Verification

- [x] PR description includes a `Signed-off-by:` line and every commit
appears as `Verified` in GitHub
- [x] Normal `pre-commit`, `commit-msg`, and `pre-push` hooks passed, or
`npm run validate:pr` passed after refreshing `origin/main` when hooks
were skipped or unavailable
- [x] Targeted behavior tests pass for the current change set, or tests
are marked not applicable above — `npx vitest run --project integration
test/changelog-docs.test.ts test/check-docs-published-routes.test.ts`
passed 36/36.
- [x] Applicable broad gate passed — not applicable to
documentation-only changes; `npm run docs` completed successfully with 0
errors.
- [x] Quality Gates section completed with required justifications or
waivers
- [x] No secrets, API keys, or credentials committed
- [ ] `npm run docs` builds without warnings (doc changes only) —
completed with 0 errors and 2 existing Fern warnings.
- [x] Doc pages follow the [style
guide](https://github.com/NVIDIA/NemoClaw/blob/main/docs/CONTRIBUTING.md)
(doc changes only)
- [x] New doc pages include SPDX header and frontmatter (new pages only)
— the native dated changelog uses the required parser-safe MDX SPDX
comment and intentionally has no frontmatter.

---
Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Documentation**
- Added release notes for v0.0.102, covering authentication, hardware
setup, WSL, installer recovery, sandbox resilience, policy management,
inference reliability, CLI improvements, and unified quickstarts.
- Updated command documentation to explain how non-JSON agent output is
collected, replayed, and reported.

- **Bug Fixes**
- Improved command-output recovery guidance when output exceeds limits
or contains unsupported fallback markers.
- Preserved accurate command exit-status reporting after output
processing.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: local-models Local model providers, downloads, launch, or connectivity area: onboarding Onboarding FSM, provider setup, sandbox launch, or first-run flow

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[WSL2][Install] express install fails with "Install did not produce ollama.exe on PATH" when Ollama already installed

4 participants