Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 15 additions & 3 deletions docs/get-started/quickstart-hermes.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -189,8 +189,20 @@ Use these details when your first-run path needs more control.

<Accordion title="Onboarding and Integration Details">
The wizard asks for an inference provider, model, required credential, and sandbox name before it prints the review summary.
After confirmation, NemoClaw registers inference, prompts for optional Tavily Search and supported messaging channels, builds and starts the sandbox, sets up Hermes, and applies the selected network policy tier and presets.
At any prompt, press Enter to accept the default shown in `[brackets]`, type `back` to return to the previous prompt, or type `exit` to quit.
The review offers these actions:

- **Apply configuration** continues to provider registration.
- **Edit inference provider or model** returns to provider and model selection.
- **Edit sandbox name** prompts for the sandbox name again.
- **Exit onboarding** stops onboarding before provider registration.

When you edit inference, NemoClaw clears the credential staged for the discarded selection.
NemoClaw preserves the sandbox name.
When you edit the sandbox name, NemoClaw preserves the inference selection.
The sandbox prompt shows the prior name as its default.
After you apply the configuration, routine editing ends.
If inference setup fails and offers a `back` recovery action, you can return to provider and model selection and then review the updated configuration again.
NemoClaw registers inference, prompts for optional Tavily Search and supported messaging channels, builds and starts the sandbox, sets up Hermes, and applies the selected network policy tier and presets.

The default Hermes sandbox name is `hermes`.
Use a distinct name, such as `my-hermes`, when you run Hermes and OpenClaw sandboxes side by side.
Expand All @@ -212,7 +224,7 @@ Use these details when your first-run path needs more control.
NemoClaw removes `nous-web` from the effective managed-tool selection while preserving selected Nous image, audio, browser, and code tools.
API-key mode is inference-only and does not enable managed tool gateways.

After you select a provider and model, review the summary and confirm the build.
After you select a provider and model, review the summary and apply the configuration.
NemoClaw writes Hermes configuration into `/sandbox/.hermes`, routes model traffic through `inference.local`, and starts the Hermes gateway inside the sandbox.
The Hermes image includes runtime dependencies for supported NemoClaw messaging integrations, the API service, and its health endpoint.
The base image does not include unsupported Hermes integrations.
Expand Down
17 changes: 15 additions & 2 deletions docs/get-started/quickstart-langchain-deepagents-code.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -131,8 +131,21 @@ nemoclaw onboard --agent deepagents
nemoclaw onboard --agent langchain
```

The wizard asks for an inference provider, model, required credential, sandbox name, and policy tier before it prints the review summary.
At any prompt, press Enter to accept the default shown in `[brackets]`, type `back` to return to the previous prompt, or type `exit` to quit.
The wizard asks for an inference provider, model, required credential, and sandbox name before it prints the review summary.
The review offers these actions:

- **Apply configuration** continues to provider registration.
- **Edit inference provider or model** returns to provider and model selection.
- **Edit sandbox name** prompts for the sandbox name again.
- **Exit onboarding** stops onboarding before provider registration.

When you edit inference, NemoClaw clears the credential staged for the discarded selection.
NemoClaw preserves the sandbox name.
When you edit the sandbox name, NemoClaw preserves the inference selection.
The sandbox prompt shows the prior name as its default.
After you apply the configuration, routine editing ends.
If inference setup fails and offers a `back` recovery action, you can return to provider and model selection and then review the updated configuration again.
Provider registration, inference setup, policy selection, and sandbox creation then continue forward.
The default Deep Agents sandbox name is `deepagents-code`.
Use a distinct name, such as `my-deepagents`, when you run Deep Agents, Hermes, and OpenClaw sandboxes side by side.
Refer to [Choose an Inference Provider](../inference/learn-and-choose/choose-inference-provider) for provider-specific prompts.
Expand Down
38 changes: 29 additions & 9 deletions docs/get-started/quickstart.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -226,9 +226,21 @@ Use these details when your first-run path needs more control.
The wizard runs preflight checks, starts or reuses the OpenShell gateway, asks for an inference provider and model, collects required credentials, and asks for a sandbox name.
It prints a review summary before it registers the provider with OpenShell.

After confirmation, NemoClaw registers inference, prompts for optional web search and messaging channels, builds and starts the sandbox, sets up OpenClaw, and applies the selected network policy tier and presets.
The review offers these actions:

At any prompt, press Enter to accept the default shown in `[brackets]`, type `back` to return to the previous prompt, or type `exit` to quit.
- **Apply configuration** continues to provider registration.
- **Edit inference provider or model** returns to provider and model selection.
- **Edit sandbox name** prompts for the sandbox name again.
- **Exit onboarding** stops onboarding before provider registration.

When you edit inference, NemoClaw clears the credential staged for the discarded selection.
NemoClaw preserves the sandbox name.
When you edit the sandbox name, NemoClaw preserves the inference selection.
The sandbox prompt shows the prior name as its default.

After you apply the configuration, routine editing ends.
If inference setup fails and offers a `back` recovery action, you can return to provider and model selection and then review the updated configuration again.
NemoClaw registers inference, prompts for optional web search and messaging channels, builds and starts the sandbox, sets up OpenClaw, and applies the selected network policy tier and presets.

<Note>
Onboarding builds the sandbox image with a managed `NEMOCLAW_DISABLE_DEVICE_AUTH=1` compatibility setting so the dashboard is usable during setup.
Expand Down Expand Up @@ -301,15 +313,23 @@ Use these details when your first-run path needs more control.
Note: Sandbox build typically takes 5–15 minutes on this host.
──────────────────────────────────────────────────
Web search and messaging channels will be prompted next.
Apply this configuration? [Y/n]:
Choose an action:
1) Apply configuration
2) Edit inference provider or model
3) Edit sandbox name
4) Exit onboarding
Choose [1]:
```

The default is `Y`.
Press Enter to accept the configuration.
If you answer `n`, onboarding exits with a nonzero status and clears the recorded provider, model, and sandbox name.
The rejected run does not register a new gateway credential.
Run `nemoclaw onboard` to make new choices.
Non-interactive runs print the summary and skip the prompt.
The default is option 1.
Press Enter to apply the configuration.
Option 2 returns to provider and model selection.
NemoClaw removes the staged credential for the discarded selection from the onboarding process.
It preserves the sandbox name.
Option 3 asks for the sandbox name again.
It uses the prior name as the default and preserves the inference selection.
Option 4 exits with a nonzero status without registering a new gateway credential.
Non-interactive runs print the summary and skip the action menu.
</Accordion>

<Accordion title="Web Search Messaging and Network Policies">
Expand Down
19 changes: 16 additions & 3 deletions docs/reference/commands.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -350,10 +350,10 @@ Legacy sessions without a profile-provenance record continue to resume normally,
Before the configuration review, NemoClaw records the sandbox name and the selected provider and model as an incomplete choice.
If onboarding stops at the review prompt, an interactive `--resume` run shows the prompt again.
A non-interactive `--resume` run reuses the recorded choice and continues to inference setup.
After you accept the review, NemoClaw records the choice before inference setup starts.
After you choose **Apply configuration**, NemoClaw records the choice before inference setup starts.
If inference setup fails, `--resume` reuses the accepted provider, model, and sandbox name.
If you reject the review, onboarding exits with a nonzero status and clears those recorded choices.
Run `$$nemoclaw onboard` to make new choices after rejection.
If you choose **Exit onboarding**, onboarding exits with a nonzero status and clears those recorded choices.
Run `$$nemoclaw onboard` to make new choices after exit.
During a resume without terminal input, `--yes` or `NEMOCLAW_YES=1` also selects non-interactive resume behavior.
For a new or fresh session, `--yes` and `NEMOCLAW_YES=1` accept supported confirmations but do not replace `--non-interactive`.

Expand Down Expand Up @@ -560,6 +560,19 @@ Do not set `NEMOCLAW_MODEL` for the managed llama.cpp path.
For prerequisites, external traffic, verification, and recovery, refer to [Install Managed llama.cpp on DGX Spark](../inference/local-inference/choose-local-inference-server#install-managed-llamacpp-on-dgx-spark).

After provider selection, the wizard reviews the provider, model, credential state, and sandbox name before registering inference.
The interactive review offers these actions:

- **Apply configuration** continues to provider registration.
- **Edit inference provider or model** returns to provider and model selection.
- **Edit sandbox name** prompts for the sandbox name again.
- **Exit onboarding** stops onboarding before provider registration.

When you edit inference, NemoClaw clears the credential staged for the discarded selection.
NemoClaw preserves the sandbox name.
When you edit the sandbox name, NemoClaw preserves the inference selection.
The sandbox prompt shows the prior name as its default.
After you apply the configuration, routine editing ends.
If inference setup fails and offers a `back` recovery action, you can return to provider and model selection and then review the updated configuration again.
<AgentOnly variant="openclaw,hermes">
It then prompts for optional web search and messaging channels, builds and starts the sandbox, and asks for a **policy tier** that controls the default set of network policy presets applied to the sandbox.
</AgentOnly>
Expand Down
2 changes: 1 addition & 1 deletion src/lib/onboard.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4060,7 +4060,7 @@ async function runOnboard(opts: OnboardOptions = {}): Promise<void> {
assessHost,
formatSandboxBuildEstimateNote,
formatOnboardConfigSummary,
promptYesNoOrDefault,
prompt,
cliName,
log: (message) => console.log(message),
error: (message) => console.error(message),
Expand Down
2 changes: 1 addition & 1 deletion src/lib/onboard/machine/core-flow-phases.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,7 @@ function createPhases(
assessHost: () => ({ memoryGb: 64 }),
formatSandboxBuildEstimateNote: () => null,
formatOnboardConfigSummary: () => "summary",
promptYesNoOrDefault: vi.fn(async () => true),
prompt: vi.fn(async () => "1"),
cliName: () => "nemoclaw",
log: vi.fn(),
error: vi.fn(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ function createDeps() {
formatSandboxBuildEstimateNote: () => "estimate",
formatOnboardConfigSummary: ({ provider, model, sandboxName }) =>
`summary:${provider}/${model}/${sandboxName}`,
promptYesNoOrDefault: vi.fn(async () => true),
prompt: vi.fn(async () => "1"),
cliName: () => "nemoclaw",
log: calls.log,
error: calls.error,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ export function createDeps(
checkpointSandboxIdentity: vi.fn(async () => undefined),
prepareLocalProviderForInference: vi.fn(async () => null),
promptName: vi.fn(async () => "my-assistant"),
promptYesNo: vi.fn(async () => true),
prompt: vi.fn(async () => "1"),
log: vi.fn(),
error: vi.fn(),
exit: vi.fn((code: number): never => {
Expand Down Expand Up @@ -209,7 +209,7 @@ export function createDeps(
model: string;
sandboxName: string;
}) => `summary:${options.provider}/${options.model}/${options.sandboxName}`,
promptYesNoOrDefault: calls.promptYesNo,
prompt: calls.prompt,
cliName: () => "nemoclaw",
log: calls.log,
error: calls.error,
Expand Down
Loading
Loading