Skip to content

[Ubuntu 24.04][CLI&UX] nemoclaw v0.0.52 tunnel start/stop hidden from help; no tunnel status subcommand #4302

@wangericnv

Description

@wangericnv

Description

On Ubuntu 24.04 (DGX Spark, aarch64) with nemoclaw v0.0.52, the cloudflared public-URL tunnel feature is implemented (subcommands tunnel start and tunnel stop exist and respond to --help), but it is hidden from the top-level help surface and missing a tunnel status introspection subcommand. A user cannot discover the feature through normal exploration:

  • nemoclaw help lists 21 actions under Sandbox Management / Skills / Policy Presets / Messaging Channels — none of them is tunnel. The feature is invisible.
  • nemoclaw tunnel (the natural first try) prints command tunnel not found instead of a subcommand index.
  • nemoclaw tunnel --help ALSO prints command tunnel not found — group-level help is unregistered.
  • nemoclaw tunnel status prints command tunnel:status not found — there is no introspection for "is the tunnel currently running and what is the public URL?". Today the only way to know is to look at nemoclaw <name> doctor output (which exposes a cloudflared: stopped/running line) or to grep the process list.

The subcommands themselves DO work:

  • nemoclaw tunnel start --help → "Start the cloudflared public-URL tunnel"
  • nemoclaw tunnel stop --help → "Stop the cloudflared public-URL tunnel"
  • Source files: src/commands/tunnel/start.ts + src/commands/tunnel/stop.ts in the npm install.

DevTest case 639407 (folder 1179566 \DevTest\NemoClaw\NemoClaw Test\v0.0.52\manual\cli) is what surfaced this. Net effect: feature exists, but pure-help-driven discovery says it does not — and there is no way to query tunnel state without doctor.

Note on the original filing: I initially claimed the feature was absent. That was wrong evidence — strings ~/.local/bin/nemoclaw returns nothing because nemoclaw is a TS-source npm install, not a compiled binary; the bash wrapper at that path has no symbols. I should have checked the npm install tree at ~/.nvm/versions/node/<ver>/lib/node_modules/nemoclaw/src/commands/. Apologies for the false alarm in the original description — this issue body has been rewritten to reflect the actual finding.

Environment

Device:        DGX Spark 10.173.104.110
OS:            Ubuntu 24.04 LTS
Architecture:  aarch64
Node.js:       v22.22.3
npm:           10.9.8
Docker:        present (container runtime functional)
OpenShell CLI: 0.0.44 (docker driver)
NemoClaw:      v0.0.52
OpenClaw:      2026.5.22 (a374c3a)
cloudflared:   not installed on host; `which cloudflared` → command not found

Steps to Reproduce

  1. On a v0.0.52 host with at least one onboarded sandbox, try the natural discovery path:
    nemoclaw help | grep -i tunnel    # no output — feature not listed
    nemoclaw tunnel                   # command tunnel not found
    nemoclaw tunnel --help            # command tunnel not found
  2. With prior knowledge (only obtainable from source code or doctor output), invoke the actual subcommand:
    nemoclaw tunnel start --help      # prints proper usage doc
    nemoclaw tunnel stop --help       # prints proper usage doc
  3. Try the missing status introspection:
    nemoclaw tunnel status --help     # command tunnel:status not found
  4. Confirm doctor exposes the state via a side channel:
    nemoclaw <name> doctor
    # Local services:
    #   [info] cloudflared: stopped
    #        hint: no cloudflared process; run `nemoclaw tunnel start` to start it
    This is currently the only built-in way for a user to learn the feature exists.

Expected Result

  • nemoclaw help should include a "Public-URL Tunnel" or "Sharing" section listing nemoclaw tunnel start / nemoclaw tunnel stop / nemoclaw tunnel status so the feature is discoverable.
  • nemoclaw tunnel (no subcommand) should print a subcommand index (start / stop / status), not "command not found".
  • nemoclaw tunnel --help should print group-level help with the same index.
  • nemoclaw tunnel status should exist and report:
    • whether the local cloudflared process is running,
    • what sandbox dashboard URL it is publishing,
    • the public HTTPS URL,
    • uptime / health.

Actual Result

$ nemoclaw help | grep -i -E 'tunnel|cloudflare|public'
(no output — feature is not listed)

$ nemoclaw tunnel
  command tunnel not found

$ nemoclaw tunnel --help
  command tunnel not found

$ nemoclaw tunnel start --help
Start the cloudflared public-URL tunnel

USAGE
  $ nemoclaw tunnel start

FLAGS
  -h, --help  Show CLI help.

DESCRIPTION
  Start the cloudflared public-URL tunnel
  Start the cloudflared public-URL tunnel for the default sandbox dashboard.

EXAMPLES
  $ nemoclaw tunnel start

$ nemoclaw tunnel stop --help
Stop the cloudflared public-URL tunnel
USAGE
  $ nemoclaw tunnel stop
[...]

$ nemoclaw tunnel status --help
  command tunnel:status not found

Logs

Source-level confirmation (subcommands ARE implemented, just unsurfaced in help):

$ ls ~/.nvm/versions/node/v22.22.3/lib/node_modules/nemoclaw/src/commands/tunnel/
start.ts
stop.ts

$ grep -l -r cloudflared ~/.nvm/versions/node/v22.22.3/lib/node_modules/nemoclaw/src
src/lib/tunnel/services-sandbox.test.ts
src/lib/tunnel/services.ts
src/lib/tunnel/services.test.ts
src/lib/actions/sandbox/doctor.ts
src/commands/tunnel/stop.ts
src/commands/tunnel/start.ts

Doctor exposes the side-channel hint (the only built-in discovery path):

Local services:
  [info] cloudflared: stopped
       hint: no cloudflared process; run `nemoclaw tunnel start` to start it

NVB#6228730

Metadata

Metadata

Assignees

Labels

NV QABugs found by the NVIDIA QA Teamarea: cliCommand line interface, flags, terminal UX, or outputplatform: ubuntuAffects Ubuntu Linux environmentsv0.0.60Release target

Type

No fields configured for Bug.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions