Skip to content

docs(reference): add a complete environment-variable index to the commands reference (#3059)#4170

Open
latenighthackathon wants to merge 1 commit into
NVIDIA:mainfrom
latenighthackathon:docs/3652-env-var-index-v2
Open

docs(reference): add a complete environment-variable index to the commands reference (#3059)#4170
latenighthackathon wants to merge 1 commit into
NVIDIA:mainfrom
latenighthackathon:docs/3652-env-var-index-v2

Conversation

@latenighthackathon
Copy link
Copy Markdown
Contributor

@latenighthackathon latenighthackathon commented May 25, 2026

Summary

The CLI commands reference lists environment variables scattered through prose, with no single place to see what exists (#3059). This adds an At-a-Glance index to the ## Environment Variables section that groups every documented NEMOCLAW_* variable by category, and fills in the variable tables those categories link to: the gateway-lifecycle tuning knobs, the sandbox-runtime overrides, and a few previously-undocumented macOS VM-driver and Docker-GPU networking flags. It is written as current reference material, not release-scoped notes.

Related Issue

Closes #3059

Changes

  • Added an "At a Glance" index that groups every documented NEMOCLAW_* variable by category (service ports, onboarding configuration and flags, probe and onboard timeouts, gateway lifecycle, sandbox runtime, lifecycle flags), each linking to its detail table.
  • Documented the gateway-lifecycle tuning variables (the start, recovery, and health-poll timeout budgets) and the sandbox-runtime overrides (NEMOCLAW_TOOL_CATALOG, NEMOCLAW_OPENCLAW_MANAGED_PROXY, NEMOCLAW_SANDBOX_BASE_VERSION_TAG, NEMOCLAW_HERMES_TOOL_GATEWAY_REFRESH_TOKEN), with each entry explaining when to set it.
  • Added entries for the existing-but-undocumented macOS VM-driver DNS and Docker-GPU networking flags.
  • Regenerated the skill mirror (.agents/skills/nemoclaw-user-reference/references/commands.md) via scripts/docs-to-skills.py.

Type of Change

  • Doc only (prose changes, no code sample modifications)

Verification

  • No secrets, API keys, or credentials committed
  • Docs updated for user-facing behavior changes

Ran python3 scripts/docs-to-skills.py docs/ .agents/skills/ --prefix nemoclaw-user --doc-platform fern-mdx --dry-run (clean), the NEMOCLAW_* env-var documentation gate, and markdownlint-cli2 (clean).

Signed-off-by: latenighthackathon latenighthackathon@users.noreply.github.com

Summary by CodeRabbit

  • Documentation
    • Clarified that nemoclaw tunnel start only starts Cloudflared/dashboard exposure and does not start messaging bridges (Telegram/Discord/Slack); those are configured via onboarding.
    • Added an “At a Glance” env‑var index, VM‑DNS monkeypatch and Docker GPU networking knobs, gateway lifecycle tunables, and Sandbox Runtime (v0.0.50) overrides.
    • Clarified nemoclaw resources/status and expanded messaging-channel docs (wechat, experimental whatsapp).

Review Change Stack

@copy-pr-bot
Copy link
Copy Markdown

copy-pr-bot Bot commented May 25, 2026

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 25, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Clarifies that nemoclaw tunnel start only starts Cloudflared/dashboard exposure (does not start messaging bridges), adds an Environment Variables "At a Glance" index, and documents onboarding VM-DNS flags, gateway lifecycle tunables, and Sandbox Runtime (v0.0.50) override variables.

Changes

NemoClaw Command Reference and Environment Variables Documentation

Layer / File(s) Summary
CLI tunnel behavior clarification
.agents/skills/nemoclaw-user-reference/references/commands.md, docs/reference/commands.mdx
Clarifies nemoclaw tunnel start starts cloudflared/dashboard exposure only and does not start messaging bridges (Telegram/Discord/Slack), which are configured during nemoclaw onboard.
Environment variables — At a Glance index
.agents/skills/nemoclaw-user-reference/references/commands.md, docs/reference/commands.mdx
Adds an "At a Glance" index table listing all documented NEMOCLAW_* variables grouped by category with anchors to detailed subsections.
Env var details: onboarding, gateway, sandbox tunables
.agents/skills/nemoclaw-user-reference/references/commands.md, docs/reference/commands.mdx
Adds VM-DNS monkeypatch controls and Darwin compatibility flag, Linux Docker GPU patch network-mode selector, Gateway Lifecycle Tunables (start/recovery/health/logs timing), and Sandbox Runtime (v0.0.50) overrides (NEMOCLAW_TOOL_CATALOG, NEMOCLAW_OPENCLAW_MANAGED_PROXY, NEMOCLAW_SANDBOX_BASE_VERSION_TAG, NEMOCLAW_HERMES_TOOL_GATEWAY_REFRESH_TOKEN).

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • NVIDIA/NemoClaw#4078: Overlapping CLI docs updates for channels, policy presets, and sandbox/restore semantics.

Suggested reviewers

  • ericksoa
  • cv

Poem

🐰 A docs carrot fresh and bright,
Commands and knobs all set aright.
Env vars gathered in a neat row,
Tunnel notes so users know.
Hop on, read, and let knowledge grow.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Linked Issues check ✅ Passed The PR fully implements all coding requirements from linked issues #3059 and #3652: consolidates env-var documentation into an indexed table grouped by category, documents Gateway Lifecycle Tunables with seven variables, adds four onboarding behavior flags, and regenerates the auto-generated mirror.
Out of Scope Changes check ✅ Passed All changes are in-scope: documentation updates to commands.mdx and the auto-generated mirror align with objectives to create a consolidated env-var reference with categorized index and new lifecycle tunables sections.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Title check ✅ Passed The title accurately summarizes the main change: adding a comprehensive environment-variable index to the commands reference documentation. It directly reflects the primary objective of consolidating scattered environment-variable documentation into a single discoverable reference.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

🧹 Nitpick comments (2)
.agents/skills/nemoclaw-user-reference/references/commands.md (2)

976-976: 💤 Low value

Prefer active voice.

The sentence uses passive constructions "is not started" and "is configured." Rewrite using active voice.

Suggested revision: "Channel messaging (Telegram, Discord, Slack) does not start here; nemoclaw onboard configures it and OpenShell-managed constructs run it."

As per coding guidelines, active voice is required and passive constructions should be flagged.

🤖 Prompt for 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.

In @.agents/skills/nemoclaw-user-reference/references/commands.md at line 976,
Rewrite the passive sentence in the commands.md entry to active voice: replace
"Channel messaging (Telegram, Discord, Slack) is not started here; it is
configured during `nemoclaw onboard` and runs through OpenShell-managed
constructs." with an active-voice variant such as "Channel messaging (Telegram,
Discord, Slack) does not start here; `nemoclaw onboard` configures it and
OpenShell-managed constructs run it." Update the sentence where the original
passive occurs so the subject performs the actions (use `nemoclaw onboard` and
OpenShell-managed constructs as the actors).

984-985: ⚡ Quick win

Split into one sentence per line.

Lines 984-985 contain two sentences on the same line. The source should have one sentence per line to make diffs readable.

Split like this:

-The named tunnel hostname and `localhost:<dashboard-port>` route must already be configured in the Cloudflare dashboard.
-NemoClaw passes the token to `cloudflared` through the `TUNNEL_TOKEN` environment variable, so the token does not appear in the `cloudflared` command-line arguments.
+The named tunnel hostname and `localhost:<dashboard-port>` route must already be configured in the Cloudflare dashboard.
+NemoClaw passes the token to `cloudflared` through the `TUNNEL_TOKEN` environment variable, so the token does not appear in the `cloudflared` command-line arguments.

As per coding guidelines, one sentence per line in source makes diffs readable.

🤖 Prompt for 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.

In @.agents/skills/nemoclaw-user-reference/references/commands.md around lines
984 - 985, Split the two sentences currently on the same line into separate
lines so each sentence is on its own line: place "The named tunnel hostname and
`localhost:<dashboard-port>` route must already be configured in the Cloudflare
dashboard." on one line and "NemoClaw passes the token to `cloudflared` through
the `TUNNEL_TOKEN` environment variable, so the token does not appear in the
`cloudflared` command-line arguments." on the next line to follow the
one-sentence-per-line guideline.
🤖 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.

Nitpick comments:
In @.agents/skills/nemoclaw-user-reference/references/commands.md:
- Line 976: Rewrite the passive sentence in the commands.md entry to active
voice: replace "Channel messaging (Telegram, Discord, Slack) is not started
here; it is configured during `nemoclaw onboard` and runs through
OpenShell-managed constructs." with an active-voice variant such as "Channel
messaging (Telegram, Discord, Slack) does not start here; `nemoclaw onboard`
configures it and OpenShell-managed constructs run it." Update the sentence
where the original passive occurs so the subject performs the actions (use
`nemoclaw onboard` and OpenShell-managed constructs as the actors).
- Around line 984-985: Split the two sentences currently on the same line into
separate lines so each sentence is on its own line: place "The named tunnel
hostname and `localhost:<dashboard-port>` route must already be configured in
the Cloudflare dashboard." on one line and "NemoClaw passes the token to
`cloudflared` through the `TUNNEL_TOKEN` environment variable, so the token does
not appear in the `cloudflared` command-line arguments." on the next line to
follow the one-sentence-per-line guideline.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 6dfccec4-6598-4a68-b4f4-f69e052f102b

📥 Commits

Reviewing files that changed from the base of the PR and between 50c208b and b0215ab.

📒 Files selected for processing (2)
  • .agents/skills/nemoclaw-user-reference/references/commands.md
  • docs/reference/commands.mdx

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
.agents/skills/nemoclaw-user-reference/references/commands.md (1)

1201-1201: ⚡ Quick win

Minor anchor link inconsistency in the At a Glance table.

The "Service Ports" category links to #environment-variables, which is the parent section heading (line 1188). All other categories link to their specific subsection anchors (e.g., #onboarding-configuration, #gateway-lifecycle-tunables).

Consider adding a "### Service Ports" heading before line 1210 so this category can link to a dedicated anchor like the others, improving navigation consistency.

🤖 Prompt for 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.

In @.agents/skills/nemoclaw-user-reference/references/commands.md at line 1201,
The At a Glance table links "Service Ports" to the parent section anchor
(`#environment-variables`) instead of a dedicated subsection; add a new subsection
heading "### Service Ports" (which will generate the anchor `#service-ports`)
before the block starting around line 1210 and then update the table entry to
link to `#service-ports` so the table points to the specific subsection; ensure
the heading text matches the table label exactly ("Service Ports") so the
generated anchor is consistent.
🤖 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.

Nitpick comments:
In @.agents/skills/nemoclaw-user-reference/references/commands.md:
- Line 1201: The At a Glance table links "Service Ports" to the parent section
anchor (`#environment-variables`) instead of a dedicated subsection; add a new
subsection heading "### Service Ports" (which will generate the anchor
`#service-ports`) before the block starting around line 1210 and then update the
table entry to link to `#service-ports` so the table points to the specific
subsection; ensure the heading text matches the table label exactly ("Service
Ports") so the generated anchor is consistent.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: bba7bf80-ae0f-496f-ae92-a3dbe6a7ff53

📥 Commits

Reviewing files that changed from the base of the PR and between b0215ab and 0964291.

📒 Files selected for processing (2)
  • .agents/skills/nemoclaw-user-reference/references/commands.md
  • docs/reference/commands.mdx
✅ Files skipped from review due to trivial changes (1)
  • docs/reference/commands.mdx

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
docs/reference/commands.mdx (1)

1220-1220: ⚡ Quick win

Split this into one sentence per source line.

Line 1220 contains two sentences on the same line, which breaks the docs source-line rule.

As per coding guidelines, “One sentence per line in source (makes diffs readable). Flag paragraphs where multiple sentences appear on the same line.”

🤖 Prompt for 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.

In `@docs/reference/commands.mdx` at line 1220, The line that currently contains
both "These variables override the TCP ports NemoClaw uses for its core
services." and "Each value must be a non-privileged integer between 1024 and
65535." should be split into two source lines so each sentence stands alone;
edit the paragraph containing that sentence pair (the sentence starting "These
variables override the TCP ports NemoClaw uses for its core services.") and
place the first sentence on its own line and the second sentence ("Each value
must be a non-privileged integer between 1024 and 65535.") on the next line to
comply with the one-sentence-per-source-line rule.
🤖 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.

Nitpick comments:
In `@docs/reference/commands.mdx`:
- Line 1220: The line that currently contains both "These variables override the
TCP ports NemoClaw uses for its core services." and "Each value must be a
non-privileged integer between 1024 and 65535." should be split into two source
lines so each sentence stands alone; edit the paragraph containing that sentence
pair (the sentence starting "These variables override the TCP ports NemoClaw
uses for its core services.") and place the first sentence on its own line and
the second sentence ("Each value must be a non-privileged integer between 1024
and 65535.") on the next line to comply with the one-sentence-per-source-line
rule.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: d342e8ac-1a81-4507-a947-562e3fb821a5

📥 Commits

Reviewing files that changed from the base of the PR and between 0964291 and 463408d.

📒 Files selected for processing (2)
  • .agents/skills/nemoclaw-user-reference/references/commands.md
  • docs/reference/commands.mdx
✅ Files skipped from review due to trivial changes (1)
  • .agents/skills/nemoclaw-user-reference/references/commands.md

@wscurran wscurran added CI/CD Use this label to identify issues with NemoClaw CI/CD pipeline or GitHub Actions. documentation Improvements or additions to documentation fix labels May 26, 2026
@wscurran
Copy link
Copy Markdown
Contributor

✨ Thanks for submitting this detailed PR about adding an env-var index and lifecycle documentation. This proposes a way to improve the documentation by adding a categorized index and refreshing the user-facing env-var surface, and it closes issue #3059.


Related open PRs:


Related open issues:

@latenighthackathon latenighthackathon force-pushed the docs/3652-env-var-index-v2 branch 3 times, most recently from b2746ac to 5a273cd Compare May 28, 2026 06:15
@cv cv added the Integration: WhatsApp Use this label to identify WhatsApp communication integration issues with NemoClaw. label May 30, 2026
@latenighthackathon latenighthackathon force-pushed the docs/3652-env-var-index-v2 branch 3 times, most recently from 86cbf98 to 451f819 Compare June 1, 2026 03:21
@latenighthackathon latenighthackathon changed the title docs(reference): add env-var index + lifecycle + v0.0.50 runtime (#3059) docs(reference): add a complete environment-variable index to the commands reference (#3059) Jun 1, 2026
@sandl99 sandl99 added the enhancement: messaging Enhancements related to messing support including Slack, Telegram, Discord and WhatsApp. label Jun 1, 2026
…mands reference (NVIDIA#3059)

Add an At-a-Glance index grouping every documented NEMOCLAW_* environment
variable by category, plus the gateway-lifecycle and sandbox-runtime
variable tables the index links to. The section is written as current
reference material rather than release-scoped notes.

Closes NVIDIA#3059

Signed-off-by: latenighthackathon <latenighthackathon@users.noreply.github.com>
@latenighthackathon latenighthackathon force-pushed the docs/3652-env-var-index-v2 branch from 451f819 to 2aa8d2e Compare June 2, 2026 03:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI/CD Use this label to identify issues with NemoClaw CI/CD pipeline or GitHub Actions. documentation Improvements or additions to documentation enhancement: messaging Enhancements related to messing support including Slack, Telegram, Discord and WhatsApp. fix Integration: WhatsApp Use this label to identify WhatsApp communication integration issues with NemoClaw.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Missing proper reference of ALL environment variables

4 participants