> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/NVIDIA/NemoClaw/llms.txt
> Use this file to discover all available pages before exploring further.

# Commands

> Full CLI reference for all NemoClaw plugin and standalone commands.

# Commands

NemoClaw provides two command interfaces:

* **Plugin commands** run under the `openclaw nemoclaw` namespace inside the OpenClaw CLI.
* **Standalone commands** run via the `nemoclaw` binary for host-side setup, deployment, and service management.

Both interfaces are installed when you run `npm install -g nemoclaw`.

<CardGroup cols={2}>
  <Card title="Plugin commands" icon="plug" href="#plugin-commands">
    Commands under `openclaw nemoclaw` — lifecycle management from inside OpenClaw.
  </Card>

  <Card title="Standalone commands" icon="terminal" href="#standalone-host-commands">
    Commands via the `nemoclaw` binary — host setup, deployment, and service management.
  </Card>
</CardGroup>

## Plugin commands

These commands run in-process with the OpenClaw gateway via `openclaw nemoclaw <subcommand>`.

<AccordionGroup>
  <Accordion title="openclaw nemoclaw onboard">
    Interactive setup wizard that configures the inference endpoint, credential, and model for the NemoClaw plugin. Creates or updates the OpenShell provider and sets the inference route.

    ```bash theme={null}
    openclaw nemoclaw onboard [--api-key <key>] [--endpoint <type>] [--ncp-partner <name>] [--endpoint-url <url>] [--model <model>]
    ```

    <ParamField path="--api-key" type="string">
      API key for endpoints that require one. Skips the interactive prompt. Required for `build`, `ncp`, `nim-local`, and `custom` endpoints.
    </ParamField>

    <ParamField path="--endpoint" type="string">
      Endpoint type. One of: `build`, `ncp`, `nim-local`, `vllm`, `ollama`, `custom`.
      Default: prompts interactively. The `nim-local`, `vllm`, `ollama`, and `custom` types are experimental — set `NEMOCLAW_EXPERIMENTAL=1` to enable them in the interactive menu.
    </ParamField>

    <ParamField path="--ncp-partner" type="string">
      NCP partner name. Required when `--endpoint ncp` is used.
    </ParamField>

    <ParamField path="--endpoint-url" type="string">
      Endpoint URL. Required for `ncp`, `nim-local`, and `custom` endpoints. For `ollama`, defaults to `http://host.openshell.internal:11434/v1`.
    </ParamField>

    <ParamField path="--model" type="string">
      Model ID to activate (e.g., `nvidia/nemotron-3-super-120b-a12b`). Skips the interactive model selection prompt.
    </ParamField>

    **Examples:**

    ```bash theme={null}
    # Interactive wizard
    openclaw nemoclaw onboard

    # Non-interactive with NVIDIA Build
    openclaw nemoclaw onboard \
      --endpoint build \
      --api-key nvapi-xxxx \
      --model nvidia/nemotron-3-super-120b-a12b

    # NCP partner endpoint
    openclaw nemoclaw onboard \
      --endpoint ncp \
      --ncp-partner acme \
      --endpoint-url https://acme.api.nvidia.com/v1 \
      --api-key nvapi-xxxx \
      --model nvidia/nemotron-3-super-120b-a12b

    # Enable experimental local endpoints
    NEMOCLAW_EXPERIMENTAL=1 openclaw nemoclaw onboard
    ```

    Onboard configuration (endpoint, model, credential env) is saved to `~/.nemoclaw/config.json`. Credentials for the standalone `nemoclaw` CLI are saved to `~/.nemoclaw/credentials.json` (mode `600`).
  </Accordion>

  <Accordion title="openclaw nemoclaw launch">
    Fresh install: bootstraps OpenClaw inside an OpenShell sandbox without migrating any existing host state. If a host OpenClaw installation is detected, `launch` exits with a recommendation to use `migrate` unless `--force` is passed.

    ```bash theme={null}
    openclaw nemoclaw launch [--force] [--profile <profile>]
    ```

    <ParamField path="--force" type="boolean">
      Skip the ergonomics warning and force plugin-driven bootstrap. Without this flag,
      NemoClaw recommends using `openshell sandbox create` directly for new installs, and `openclaw nemoclaw migrate` if a host installation exists. Default: `false`.
    </ParamField>

    <ParamField path="--profile" type="string">
      Blueprint profile to use for the sandbox deployment. Default: `default`.
    </ParamField>

    **Example:**

    ```bash theme={null}
    openclaw nemoclaw launch --force --profile default
    ```

    After launch, the sandbox is accessible via `openclaw nemoclaw connect`.

    <Note>
      For net-new users with no host OpenClaw installation, the recommended path is OpenShell-native setup:

      ```bash theme={null}
      openshell sandbox create --from openclaw --name openclaw
      openshell sandbox connect openclaw
      ```
    </Note>
  </Accordion>

  <Accordion title="openclaw nemoclaw migrate">
    Migrates a host OpenClaw installation into an OpenShell sandbox. Captures the host state directory, external config paths, and extension roots, packages them as tar archives, syncs them into the sandbox, and rewrites config paths for the sandbox environment. The host installation is left untouched.

    ```bash theme={null}
    openclaw nemoclaw migrate [--dry-run] [--profile <profile>] [--skip-backup]
    ```

    <ParamField path="--dry-run" type="boolean">
      Show what would be migrated without making any changes. Outputs the planned migration steps including detected paths and external roots. Default: `false`.
    </ParamField>

    <ParamField path="--profile" type="string">
      Blueprint profile to use. Default: `default`.
    </ParamField>

    <ParamField path="--skip-backup" type="boolean">
      Skip creating a host backup snapshot. Without a snapshot, `eject` cannot restore the host installation. Default: `false`.
    </ParamField>

    **Examples:**

    ```bash theme={null}
    # Preview the migration plan
    openclaw nemoclaw migrate --dry-run

    # Run the migration
    openclaw nemoclaw migrate

    # Migrate without creating a backup snapshot
    openclaw nemoclaw migrate --skip-backup
    ```

    <Warning>
      If you use `--skip-backup`, `openclaw nemoclaw eject` will not be able to restore your host installation automatically. Omit this flag to retain rollback capability.
    </Warning>
  </Accordion>

  <Accordion title="openclaw nemoclaw connect">
    Opens an interactive shell inside the OpenClaw sandbox. Spawns `openshell sandbox connect <sandbox>` and inherits stdio for a full terminal experience. Type `exit` to return to the host shell.

    ```bash theme={null}
    openclaw nemoclaw connect [--sandbox <name>]
    ```

    <ParamField path="--sandbox" type="string">
      Sandbox name to connect to. Default: the value of `sandboxName` from the plugin config (default: `openclaw`).
    </ParamField>

    **Example:**

    ```bash theme={null}
    openclaw nemoclaw connect
    openclaw nemoclaw connect --sandbox openclaw
    ```
  </Accordion>

  <Accordion title="openclaw nemoclaw status">
    Displays sandbox health, blueprint run state, and inference configuration. Reads from the persisted NemoClaw state and queries `openshell sandbox status` and `openshell inference get`.

    ```bash theme={null}
    openclaw nemoclaw status [--json]
    ```

    <ParamField path="--json" type="boolean">
      Output status as JSON for programmatic consumption. The JSON object includes `nemoclaw`, `sandbox`, `inference`, and `insideSandbox` fields. Default: `false`.
    </ParamField>

    **Example:**

    ```bash theme={null}
    openclaw nemoclaw status
    openclaw nemoclaw status --json
    ```

    <Note>
      When running inside an active OpenShell sandbox, `status` detects the sandbox context and reports it instead of showing false negatives. Run `openshell sandbox status` on the host for full details.
    </Note>

    **JSON output schema:**

    ```json theme={null}
    {
      "nemoclaw": {
        "lastAction": "migrate",
        "lastRunId": "nc-20260318-143012-a1b2c3d4",
        "blueprintVersion": "0.1.0",
        "sandboxName": "openclaw",
        "migrationSnapshot": "/home/user/.nemoclaw/snapshots/...",
        "updatedAt": "2026-03-18T14:30:12.000Z"
      },
      "sandbox": {
        "name": "openclaw",
        "running": true,
        "uptime": "2h 15m",
        "insideSandbox": false
      },
      "inference": {
        "configured": true,
        "provider": "nvidia-nim",
        "model": "nvidia/nemotron-3-super-120b-a12b",
        "endpoint": "https://integrate.api.nvidia.com/v1",
        "insideSandbox": false
      },
      "insideSandbox": false
    }
    ```
  </Accordion>

  <Accordion title="openclaw nemoclaw logs">
    Streams blueprint execution and sandbox logs. Tails `/tmp/nemoclaw.log` and `/tmp/openclaw.log` from inside the sandbox via `openshell sandbox connect`.

    ```bash theme={null}
    openclaw nemoclaw logs [-f] [-n <count>] [--run-id <id>]
    ```

    <ParamField path="-f, --follow" type="boolean">
      Follow log output continuously, similar to `tail -f`. Default: `false`.
    </ParamField>

    <ParamField path="-n, --lines" type="number">
      Number of lines to show from the end of the log. Default: `50`.
    </ParamField>

    <ParamField path="--run-id" type="string">
      Show logs associated with a specific blueprint run ID instead of the latest run.
    </ParamField>

    **Examples:**

    ```bash theme={null}
    # Show last 50 lines
    openclaw nemoclaw logs

    # Follow live output
    openclaw nemoclaw logs -f

    # Show last 200 lines for a specific run
    openclaw nemoclaw logs -n 200 --run-id nc-20260318-143012-a1b2c3d4
    ```
  </Accordion>

  <Accordion title="openclaw nemoclaw eject">
    Rolls back from OpenShell and restores the host OpenClaw installation from a migration snapshot. Stops the sandbox, runs a blueprint rollback, restores `~/.openclaw` from the snapshot, and clears NemoClaw state.

    ```bash theme={null}
    openclaw nemoclaw eject [--run-id <id>] [--confirm]
    ```

    <ParamField path="--run-id" type="string">
      Specific blueprint run ID to roll back from. Defaults to the most recent run stored in plugin state.
    </ParamField>

    <ParamField path="--confirm" type="boolean">
      Skip the confirmation prompt and proceed with the eject. Without this flag, `eject` displays a summary of what will be done and exits. Default: `false`.
    </ParamField>

    **Example:**

    ```bash theme={null}
    # Preview what will happen
    openclaw nemoclaw eject

    # Confirm and execute
    openclaw nemoclaw eject --confirm
    ```

    <Warning>
      `eject` requires a migration snapshot. If you used `--skip-backup` during `migrate`, automatic restoration is not possible. In that case, restore your `~/.openclaw` directory manually.
    </Warning>
  </Accordion>
</AccordionGroup>

### `/nemoclaw` slash command

The `/nemoclaw` slash command is available inside the OpenClaw chat interface. Run it from the chat input — no CLI required.

| Subcommand            | Description                                                    |
| --------------------- | -------------------------------------------------------------- |
| `/nemoclaw status`    | Show sandbox, blueprint, and inference state                   |
| `/nemoclaw eject`     | Show rollback instructions for restoring the host installation |
| `/nemoclaw onboard`   | Show onboarding status and current inference configuration     |
| `/nemoclaw` (no args) | Show help with available subcommands                           |

## Standalone host commands

The `nemoclaw` binary handles host-side operations that run outside the OpenClaw plugin context.

<AccordionGroup>
  <Accordion title="nemoclaw onboard">
    Run the interactive setup wizard. Creates an OpenShell gateway, registers inference providers, builds the sandbox image, and creates the sandbox. Use this for new installs and for recreating a sandbox after changes to policy or configuration.

    ```bash theme={null}
    nemoclaw onboard
    ```

    The first run prompts for your NVIDIA API key and saves it to `~/.nemoclaw/credentials.json`.

    The onboard wizard runs a preflight check before creating the gateway. On systems with cgroup v2 (such as Ubuntu 24.04 and DGX Spark), the preflight verifies that Docker is configured with `"default-cgroupns-mode": "host"` in `/etc/docker/daemon.json`. If this setting is missing, `nemoclaw onboard` exits with an error and directs you to run `nemoclaw setup-spark`.

    ```bash theme={null}
    # Standard onboard
    nemoclaw onboard

    # Enable experimental local inference options (NIM, vLLM, Ollama)
    NEMOCLAW_EXPERIMENTAL=1 nemoclaw onboard
    ```
  </Accordion>

  <Accordion title="nemoclaw list">
    List all registered sandboxes with their model, provider, GPU status, and applied policy presets.

    ```bash theme={null}
    nemoclaw list
    ```

    **Example output:**

    ```text theme={null}
      Sandboxes:
        my-assistant *
          model: nvidia/nemotron-3-super-120b-a12b  provider: nvidia-nim  CPU  policies: none

      * = default sandbox
    ```
  </Accordion>

  <Accordion title="nemoclaw deploy">
    <Warning>
      `nemoclaw deploy` is experimental and may not work as expected.
    </Warning>

    Deploy NemoClaw to a remote GPU instance through [Brev](https://brev.nvidia.com). The deploy script installs Docker, the NVIDIA Container Toolkit (if a GPU is present), and OpenShell on the VM, then runs the NemoClaw setup and connects to the sandbox.

    ```bash theme={null}
    nemoclaw deploy <instance-name>
    ```

    **Example:**

    ```bash theme={null}
    nemoclaw deploy my-gpu-box
    nemoclaw deploy nemoclaw-prod
    ```

    Requires the `brev` CLI to be installed. The `NEMOCLAW_GPU` environment variable can override the default GPU type (`a2-highgpu-1g:nvidia-tesla-a100:1`).

    ```bash theme={null}
    NEMOCLAW_GPU="a100:1" nemoclaw deploy my-gpu-box
    ```
  </Accordion>

  <Accordion title="nemoclaw <name> connect">
    Connect to a sandbox by name. Ensures the port forward (port `18789`) is alive before connecting.

    ```bash theme={null}
    nemoclaw <name> connect
    ```

    **Example:**

    ```bash theme={null}
    nemoclaw my-assistant connect
    ```
  </Accordion>

  <Accordion title="nemoclaw <name> status">
    Show sandbox status, health, model, provider, GPU status, and applied policies. Also queries `openshell sandbox get` and checks NIM container health.

    ```bash theme={null}
    nemoclaw <name> status
    ```

    **Example:**

    ```bash theme={null}
    nemoclaw my-assistant status
    ```
  </Accordion>

  <Accordion title="nemoclaw <name> logs">
    View sandbox logs. Use `--follow` to stream output in real time.

    ```bash theme={null}
    nemoclaw <name> logs [--follow]
    ```

    **Examples:**

    ```bash theme={null}
    nemoclaw my-assistant logs
    nemoclaw my-assistant logs --follow
    ```
  </Accordion>

  <Accordion title="nemoclaw <name> destroy">
    Stop the NIM container and delete the sandbox from OpenShell. Removes the sandbox from the local registry.

    ```bash theme={null}
    nemoclaw <name> destroy
    ```

    **Example:**

    ```bash theme={null}
    nemoclaw my-assistant destroy
    ```

    <Warning>
      This command is irreversible. The sandbox and all its data will be deleted.
    </Warning>
  </Accordion>

  <Accordion title="nemoclaw <name> policy-add">
    Add a policy preset to a sandbox interactively. Shows available presets with a `●` marker for already-applied presets and `○` for unapplied ones, then prompts for confirmation before applying.

    ```bash theme={null}
    nemoclaw <name> policy-add
    ```

    **Example:**

    ```bash theme={null}
    nemoclaw my-assistant policy-add
    ```

    See [`policy-list`](#nemoclaw-name-policy-list) to view available presets without applying them.
  </Accordion>

  <Accordion title="nemoclaw <name> policy-list">
    List available policy presets and show which ones are applied to the sandbox. Applied presets are marked with `●`, unapplied with `○`.

    ```bash theme={null}
    nemoclaw <name> policy-list
    ```

    **Example:**

    ```bash theme={null}
    nemoclaw my-assistant policy-list
    ```
  </Accordion>

  <Accordion title="nemoclaw start / stop / status">
    Manage auxiliary services (Telegram bridge and cloudflared tunnel).

    ```bash theme={null}
    nemoclaw start    # Start services (Telegram bridge, cloudflared tunnel)
    nemoclaw stop     # Stop all auxiliary services
    nemoclaw status   # Show sandbox list and service status
    ```

    `nemoclaw start` requires `TELEGRAM_BOT_TOKEN` for the Telegram bridge.

    **Example:**

    ```bash theme={null}
    TELEGRAM_BOT_TOKEN=your-token nemoclaw start
    nemoclaw status
    nemoclaw stop
    ```
  </Accordion>

  <Accordion title="nemoclaw setup-spark">
    Set up NemoClaw on DGX Spark. Applies cgroup v2 and Docker configuration fixes required for Ubuntu 24.04. Run with `sudo` on the Spark host.

    ```bash theme={null}
    sudo nemoclaw setup-spark
    ```

    This command sets `"default-cgroupns-mode": "host"` in `/etc/docker/daemon.json` and restarts the Docker daemon. Run this before `nemoclaw onboard` on DGX Spark systems.
  </Accordion>

  <Accordion title="openshell term">
    Open the OpenShell TUI to monitor sandbox activity and approve or deny network egress requests in real time. Run this on the host where the sandbox is running.

    ```bash theme={null}
    openshell term
    ```

    For a remote Brev instance, SSH to the instance and run `openshell term` there, or use a port-forward to the gateway.

    ```bash theme={null}
    ssh my-gpu-box
    openshell term
    ```
  </Accordion>
</AccordionGroup>
