docs: add deepagents doc variant#6344
Conversation
|
Note Reviews pausedIt 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 Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughDeep Agents is added as a supported NemoClaw variant across docs generation, navigation, onboarding, inference, sandbox lifecycle, security, command references, and validation tests. Variant-specific guidance and links are updated, and generated docs/test tooling now recognize the new variant. ChangesDeep Agents variant rollout
Estimated code review effort: 5 (Critical) | ~120 minutes Possibly related PRs
Suggested labels: Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Code Coverage OverviewLanguages: TypeScript TypeScript / code-coverage/pluginThe overall coverage in the branch is 96%. Coverage data for the branch is not yet available. Show a code coverage summary of the most covered files.
TypeScript / code-coverage/cliThe overall coverage in the branch is 76%. Coverage data for the branch is not yet available. Show a code coverage summary of the most covered files.
Updated |
|
🌿 Preview your docs: https://nvidia-preview-pr-6344.docs.buildwithfern.com/nemoclaw |
PR Review Advisor (Nemotron Ultra) — Changes requestedMerge posture: Do not merge yet Action checklist
Findings index
🚨 Required before mergeAddress these before merging unless a maintainer explicitly overrides the advisor with rationale.
|
PR Review Advisor — Changes requestedMerge posture: Do not merge yet Action checklist
Findings index
Review findings by urgency: 0 required fixes, 4 items to resolve/justify, 0 in-scope improvements
|
E2E Advisor RecommendationRequired E2E: Dispatch hint: Full advisor summaryE2E Recommendation AdvisorBase: Required E2E
Optional E2E
New E2E recommendations
Dispatch hint
|
E2E Target RecommendationRequired E2E targets: Dispatch required E2E targets:
Full E2E target advisor summaryE2E Target AdvisorBase: Required E2E targets
Optional E2E targets
Relevant changed files
|
ericksoa
left a comment
There was a problem hiding this comment.
Requesting changes on exact head ae47a350f4bd001f49ff6105a433102ab40e0a18.
Blocking findings:
-
Manual Deep Agents backup exports credential-bearing state (
docs/manage-sandboxes/backup-restore.mdx:183). The recursive.deepagents/.state/download includesauth.jsonandchatgpt-auth.json, and the restore at line 230 uploads them again. This bypasses the built-in backup sanitizer, can copy secrets to the host, and can restore state that the managed launcher refuses. Back up only safe paths or explicitly exclude both auth files. -
The documented provider/model switch command cannot work after completed onboarding (
docs/inference/switch-inference-providers.mdx:61, recurring at lines 129, 232, 297, and 394). Successful onboarding setsresumable=false, so--resume --recreate-sandboxis rejected. During a genuinely interrupted resume, the completed provider selection is reused rather than changed. Please document a fresh named recreation path or implement a true switch path. -
The moved quickstart breaks the published route and generated link graph (
docs/index.yml:233). The existing production OpenClaw-nested URL currently returns 200, but the exact-head preview returns 404 andfern/docs.ymlhas no redirect. Six release-note links remain stale.check-docs.sh --only-links --local-onlyreports 81 failures at this head versus zero at the base, including 54 in new Deep Agents pages. -
The new Deep Agents navigation publishes unadapted OpenClaw workflows (
docs/index.yml:243and:300). The generated local-inference and troubleshooting pages tell Deep Agents users aboutopenclaw.json, Responses API, dashboard ports, OpenClaw plugin installation,recover, andchannels add. Deep Agents is terminal-only, has no gateway runtime, and supports no messaging channels. Variant-scope these sections or omit the pages.
Additional correctness findings:
-
scripts/sync-agent-variant-docs.ts:426rewrites the canonicalnemoclaw onboard --agent langchain-deepagents-codeexample into redundantnemo-deepagents onboard --agent ...; the test attest/sync-agent-variant-docs.test.ts:93currently locks in the wrong output. -
docs/reference/commands.mdx:2023removed variant guards from session-export examples. The generated Hermes page advertises positional keys,--include-trajectory, and--format tarimmediately after stating Hermes rejects them, while OpenClaw receives the Hermes-only--agent hermesexample. -
docs/inference/switch-inference-providers.mdx:246-297exposes OpenClaw model metadata and claims timeout is baked into the Deep Agents image. The Deep Agents Dockerfile and config generator consume none of the timeout, heartbeat, context-window, max-token, or input settings. -
docs/get-started/quickstart-langchain-deepagents-code.mdx:66-68promises an optional Tavily prompt and default sandbox namedeepagents; the agent does not declare web-search support and the actual default isdeepagents-code. -
docs/reference/architecture.mdx:241-263claims the generic sandbox base plus Homebrew and apythonsymlink. Deep Agents uses its agent-specificDockerfile.base, which provides neither helper.
Validation performed: npm run docs passed with zero errors; targeted variant/starter tests passed 17/17; git diff --check and a merge-tree audit passed; the local documentation link check failed with 81 broken links.
There was a problem hiding this comment.
Actionable comments posted: 2
🧹 Nitpick comments (5)
docs/_components/AgentGuide.tsx (1)
14-14: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winCentralize the variant list to avoid triplicated literals.
The
"openclaw" | "hermes" | "deepagents"set is now hardcoded in three places (theGuideVarianttype,resolveGuideVariant's early return, andresolveGuidePathname's early return).scripts/sync-agent-variant-docs.tsalready solves this by derivingAgentVariantfrom a singleagentVariantsarray and exposing anisAgentVariant()helper — worth mirroring here so a future variant addition can't silently miss one of the three checks.♻️ Proposed refactor
-export type GuideVariant = "openclaw" | "hermes" | "deepagents"; +export const GUIDE_VARIANTS = ["openclaw", "hermes", "deepagents"] as const; +export type GuideVariant = (typeof GUIDE_VARIANTS)[number]; +function isGuideVariant(value: unknown): value is GuideVariant { + return GUIDE_VARIANTS.includes(value as GuideVariant); +}- if (source === "openclaw" || source === "hermes" || source === "deepagents") return source; + if (isGuideVariant(source)) return source;- if (!source || source === "openclaw" || source === "hermes" || source === "deepagents") { + if (!source || isGuideVariant(source)) { return null; }Also applies to: 107-116, 118-124, 126-132
🤖 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/_components/AgentGuide.tsx` at line 14, Centralize the guide variant values so the same list is not duplicated across GuideVariant, resolveGuideVariant, and resolveGuidePathname. Mirror the pattern used in scripts/sync-agent-variant-docs.ts by defining a single source of truth for the variants and deriving the type plus an isGuideVariant helper from it, then update both early-return checks to use that helper instead of hardcoded string unions. This keeps the variant set consistent and makes future additions only require one change.docs/about/how-it-works.mdx (1)
168-173: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winUnclear whether Deep Agents inference-route change requires a rebuild.
The Hermes note explicitly states the config "updates ... at runtime without rebuilding the sandbox." The new Deep Agents note only says the runtime "reads the OpenAI-compatible route ... written into
/sandbox/.deepagents/config.toml" without stating whether changing the provider hot-reloads or requires a rebuild. The quickstart doc's troubleshooting section ("rebuild each existing sandbox before troubleshootinginference.localconnectivity") suggests a rebuild may be needed, so this should be stated explicitly here for parity with the Hermes note.🤖 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/about/how-it-works.mdx` around lines 168 - 173, Clarify the Deep Agents config behavior in the docs block for AgentOnly variants so it matches the Hermes note. In the Deep Agents paragraph, explicitly state whether changes to the OpenAI-compatible inference route written by NemoClaw into the managed dcode config hot-reload at runtime or require rebuilding the sandbox, and use the same style of runtime/rebuild wording as the Hermes variant for parity.docs/index.yml (1)
199-199: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low valueNav tab order differs from homepage card/table order.
The variant dropdown lists OpenClaw, then Deep Agents, then Hermes, but
docs/index.mdx's quickstart table and "Select User Guide Variant" cards list OpenClaw, Hermes, Deep Agents. Consider aligning the ordering for consistency.Also applies to: 319-319
🤖 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/index.yml` at line 199, The nav variant order in the docs config does not match the homepage quickstart/cards ordering. Update the variant list in the docs navigation setup so the symbols for the dropdown entries align with the order used in docs/index.mdx (OpenClaw, Hermes, Deep Agents), and make the same ordering adjustment wherever the variant titles are declared for the user guide selection.docs/reference/network-policies.mdx (1)
148-153: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low valueOpenClaw-scoped text mentions Hermes-only behavior, duplicated by the Hermes block below.
Line 149 ("OpenClaw can select
braveortavily, while Hermes can selecttavilyonly.") is rendered only for OpenClaw readers but describes Hermes's constraint, which is redundant with the dedicatedhermesblock on lines 151-153. Trim the OpenClaw-scoped sentence to OpenClaw's own capability.♻️ Suggested trim
<AgentOnly variant="openclaw"> -OpenClaw can select `brave` or `tavily`, while Hermes can select `tavily` only. +OpenClaw can select `brave` or `tavily`. </AgentOnly>🤖 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/network-policies.mdx` around lines 148 - 153, The OpenClaw-specific copy in the AgentOnly variant is mixing in Hermes-only behavior and duplicating the separate Hermes block. Update the text inside the openclaw AgentOnly section in network-policies.mdx so it describes only OpenClaw’s allowed search providers, and leave the hermes AgentOnly block to cover Hermes’s tavily-only restriction; keep the wording aligned with the existing AgentOnly variants and their intent.scripts/sync-agent-variant-docs.ts (1)
133-185: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winConsider extracting a per-variant frontmatter table to reduce duplication.
updateCommandsFrontmatter'shermes/deepagentsbranches duplicate the same four-field structure (title, description, description-agent, keywords) differing only in text. Since this PR is adding a third variant and the pattern will likely repeat for future variants, a small lookup table would reduce copy/paste risk (e.g., a typo in one branch not caught because the other diverges).♻️ Proposed refactor
+const COMMANDS_FRONTMATTER_BY_VARIANT: Record< + Exclude<AgentVariant, "openclaw">, + { title: string; description: string; descriptionAgent: string; keywords: string } +> = { + hermes: { + title: '"NemoHermes CLI Commands Reference"', + description: + '"Full CLI reference for standalone NemoHermes commands and Hermes-specific in-sandbox commands."', + descriptionAgent: + '"Includes the full CLI reference for standalone NemoHermes commands and Hermes-specific in-sandbox commands. Use when looking up a specific `nemohermes` subcommand, flag, argument, or exit code."', + keywords: '["nemohermes cli commands", "hermes command reference", "nemohermes command reference"]', + }, + deepagents: { + title: '"NemoDeepAgents CLI Commands Reference"', + description: + '"Full CLI reference for standalone NemoDeepAgents commands and Deep Agents-specific in-sandbox commands."', + descriptionAgent: + '"Includes the full CLI reference for standalone NemoDeepAgents commands and Deep Agents-specific in-sandbox commands. Use when looking up a specific `nemo-deepagents` subcommand, flag, argument, or exit code."', + keywords: + '["nemo-deepagents cli commands", "deep agents command reference", "nemo-deepagents command reference"]', + }, +}; + function updateCommandsFrontmatter(frontmatter: string, variant: AgentVariant): string { if (variant === "openclaw") return frontmatter; let next = frontmatter; const cli = cliForVariant(variant); - if (variant === "hermes") { - next = replaceFrontmatterLine(next, "title", '"NemoHermes CLI Commands Reference"'); - ... (duplicated blocks removed) - } else { - ... - } + const meta = COMMANDS_FRONTMATTER_BY_VARIANT[variant]; + next = replaceFrontmatterLine(next, "title", meta.title); + next = replaceFrontmatterLine(next, "description", meta.description); + next = replaceFrontmatterLine(next, "description-agent", meta.descriptionAgent); + next = replaceFrontmatterLine(next, "keywords", meta.keywords); next = replaceFrontmatterLine(next, "sidebar-title", '"Commands"'); next = upsertFrontmatterLine(next, "exclude-from-skills-gen", "true"); return next.replaceAll("`nemoclaw`", `\`${cli}\``); }🤖 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 `@scripts/sync-agent-variant-docs.ts` around lines 133 - 185, Refactor updateCommandsFrontmatter to remove the duplicated hermes/deepagents field updates by introducing a per-variant lookup table for the title, description, description-agent, and keywords values. Keep the existing control flow in renderFrontmatter and the shared replacements for sidebar-title, exclude-from-skills-gen, and nemoclaw-to-variant CLI substitution, but have updateCommandsFrontmatter read the variant-specific strings from a single mapping keyed by AgentVariant. This will make future variants easier to add and reduce copy/paste divergence.
🤖 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 `@docs/reference/commands.mdx`:
- Around line 1139-1143: The Deep Agents “Expected output” example is hardcoding
a specific agent version instead of following the placeholder convention used by
the OpenClaw and Hermes examples. Update the example in the relevant markdown
block to use the generic v<version> placeholder, matching the surrounding
variant blocks and keeping the documentation consistent; locate the change by
the LangChain Deep Agents Code example in the commands reference section.
In `@docs/reference/network-policies.mdx`:
- Around line 20-43: The docs page has a duplicated AgentOnly block where
Hermes-specific network policy text is still wrapped in an openclaw variant, so
OpenClaw readers will see the wrong content. Remove the extra openclaw-scoped
<AgentOnly> <Note> block from the network-policies.mdx content and keep the
Hermes baseline policy note only inside the existing hermes variant block,
preserving the intended variant separation.
---
Nitpick comments:
In `@docs/_components/AgentGuide.tsx`:
- Line 14: Centralize the guide variant values so the same list is not
duplicated across GuideVariant, resolveGuideVariant, and resolveGuidePathname.
Mirror the pattern used in scripts/sync-agent-variant-docs.ts by defining a
single source of truth for the variants and deriving the type plus an
isGuideVariant helper from it, then update both early-return checks to use that
helper instead of hardcoded string unions. This keeps the variant set consistent
and makes future additions only require one change.
In `@docs/about/how-it-works.mdx`:
- Around line 168-173: Clarify the Deep Agents config behavior in the docs block
for AgentOnly variants so it matches the Hermes note. In the Deep Agents
paragraph, explicitly state whether changes to the OpenAI-compatible inference
route written by NemoClaw into the managed dcode config hot-reload at runtime or
require rebuilding the sandbox, and use the same style of runtime/rebuild
wording as the Hermes variant for parity.
In `@docs/index.yml`:
- Line 199: The nav variant order in the docs config does not match the homepage
quickstart/cards ordering. Update the variant list in the docs navigation setup
so the symbols for the dropdown entries align with the order used in
docs/index.mdx (OpenClaw, Hermes, Deep Agents), and make the same ordering
adjustment wherever the variant titles are declared for the user guide
selection.
In `@docs/reference/network-policies.mdx`:
- Around line 148-153: The OpenClaw-specific copy in the AgentOnly variant is
mixing in Hermes-only behavior and duplicating the separate Hermes block. Update
the text inside the openclaw AgentOnly section in network-policies.mdx so it
describes only OpenClaw’s allowed search providers, and leave the hermes
AgentOnly block to cover Hermes’s tavily-only restriction; keep the wording
aligned with the existing AgentOnly variants and their intent.
In `@scripts/sync-agent-variant-docs.ts`:
- Around line 133-185: Refactor updateCommandsFrontmatter to remove the
duplicated hermes/deepagents field updates by introducing a per-variant lookup
table for the title, description, description-agent, and keywords values. Keep
the existing control flow in renderFrontmatter and the shared replacements for
sidebar-title, exclude-from-skills-gen, and nemoclaw-to-variant CLI
substitution, but have updateCommandsFrontmatter read the variant-specific
strings from a single mapping keyed by AgentVariant. This will make future
variants easier to add and reduce copy/paste divergence.
🪄 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: ddb9c071-3e70-42cb-aa81-79aa3ba88c13
📒 Files selected for processing (34)
.agents/skills/nemoclaw-user-guide/SKILL.mddocs/AGENTS.mddocs/CONTRIBUTING.mddocs/_components/AgentGuide.tsxdocs/_components/StarterPrompt.tsxdocs/about/ecosystem-deepagents.mdxdocs/about/how-it-works.mdxdocs/about/overview.mdxdocs/deployment/set-up-mcp-bridge.mdxdocs/get-started/quickstart-langchain-deepagents-code.mdxdocs/index.mdxdocs/index.ymldocs/inference/inference-options.mdxdocs/inference/model-capability-audit.mdxdocs/inference/switch-inference-providers.mdxdocs/manage-sandboxes/backup-restore.mdxdocs/manage-sandboxes/lifecycle.mdxdocs/manage-sandboxes/workspace-files.mdxdocs/reference/architecture.mdxdocs/reference/cli-selection-guide.mdxdocs/reference/commands-nemohermes.mdxdocs/reference/commands.mdxdocs/reference/host-files-and-state.mdxdocs/reference/network-policies.mdxdocs/security/best-practices.mdxdocs/security/credential-storage.mdxfern/fern.config.jsonscripts/sync-agent-variant-docs.tsskills/nemoclaw-user-guide/SKILL.mdsrc/lib/actions/sandbox/exec.tstest/agent-variant-docs.test.tstest/internal-commands-docs.test.tstest/starter-prompt-docs.test.tstest/sync-agent-variant-docs.test.ts
There was a problem hiding this comment.
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 `@docs/inference/switch-inference-providers.mdx`:
- Around line 142-154: The Deep Agents CLI examples in this section should use
the `$$nemoclaw` macro form instead of hardcoded `nemo-deepagents` so the shared
page renders consistently. Update the affected code blocks in the
switch-inference-providers content to reference the macro, keeping the
onboarding and use commands unchanged otherwise.
🪄 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: 2838fb9d-387d-43d2-8b40-183008c98e25
📒 Files selected for processing (13)
README.mddocs/about/release-notes.mdxdocs/get-started/prerequisites.mdxdocs/index.ymldocs/inference/inference-options.mdxdocs/inference/switch-inference-providers.mdxdocs/inference/use-local-inference.mdxdocs/manage-sandboxes/backup-restore.mdxdocs/manage-sandboxes/lifecycle.mdxdocs/reference/cli-selection-guide.mdxdocs/reference/commands.mdxdocs/reference/troubleshooting.mdxfern/docs.yml
💤 Files with no reviewable changes (1)
- docs/index.yml
✅ Files skipped from review due to trivial changes (1)
- docs/about/release-notes.mdx
🚧 Files skipped from review as they are similar to previous changes (5)
- docs/reference/cli-selection-guide.mdx
- docs/inference/inference-options.mdx
- docs/manage-sandboxes/backup-restore.mdx
- docs/manage-sandboxes/lifecycle.mdx
- docs/reference/commands.mdx
There was a problem hiding this comment.
🧹 Nitpick comments (1)
test/check-docs-links.test.ts (1)
124-174: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winTest title missing local issue-ref suffix.
Root-level integration tests under
test/should use behavior-oriented titles with a local issue reference in a final(#1234)suffix, per guideline. This new test title doesn't include one.As per path instructions, "Root-level integration tests under
test/should import source code, use ESM imports, and use behavior-oriented titles with local issue refs in a final(#1234)suffix."🤖 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 `@test/check-docs-links.test.ts` around lines 124 - 174, The new integration test title in check-docs-links.test.ts should follow the root-level test naming guideline by using a behavior-oriented description with a local issue reference suffix. Update the title of the test added in the route-relative Deep Agents alias case, keeping the existing intent while appending a final (`#1234`)-style reference so it matches the established convention for tests under test/.
🤖 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 `@test/check-docs-links.test.ts`:
- Around line 124-174: The new integration test title in
check-docs-links.test.ts should follow the root-level test naming guideline by
using a behavior-oriented description with a local issue reference suffix.
Update the title of the test added in the route-relative Deep Agents alias case,
keeping the existing intent while appending a final (`#1234`)-style reference so
it matches the established convention for tests under test/.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: c592ce56-ede3-4833-8917-26e9ed8411a7
📒 Files selected for processing (10)
docs/about/release-notes.mdxdocs/get-started/quickstart-langchain-deepagents-code.mdxdocs/get-started/windows-preparation.mdxdocs/inference/switch-inference-providers.mdxdocs/reference/architecture.mdxdocs/reference/commands.mdxscripts/sync-agent-variant-docs.tstest/check-docs-links.test.tstest/e2e/e2e-cloud-experimental/check-docs.shtest/sync-agent-variant-docs.test.ts
✅ Files skipped from review due to trivial changes (2)
- docs/get-started/quickstart-langchain-deepagents-code.mdx
- docs/about/release-notes.mdx
🚧 Files skipped from review as they are similar to previous changes (4)
- test/sync-agent-variant-docs.test.ts
- scripts/sync-agent-variant-docs.ts
- docs/inference/switch-inference-providers.mdx
- docs/reference/commands.mdx
cv
left a comment
There was a problem hiding this comment.
The follow-up resolves most earlier findings, but two exact-head documentation blockers remain. Deep Agents navigation publishes the troubleshooting page in docs/index.yml, yet docs/reference/troubleshooting.mdx has no deepagents variant guidance for DCode inference, credential rejection, Landlock, MCP v2, rebuild, or Tavily. The shared platform-support matrix also still points at the stale quickstart route. Both exact-head advisors flag the gap, and the branch is currently conflicted; please fix the routes/content and rebase before rereview.
There was a problem hiding this comment.
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 `@docs/reference/commands.mdx`:
- Around line 1228-1241: The NemoClaw exec documentation section is missing the
newline/CR argument restriction and the matching workaround guidance that
already appears in the earlier exec docs. Update this exec section to mention
that commands passed after the `--` separator reject newline/CR characters in
arguments, and include the same three workarounds (semicolon-joining, piping via
stdin, or using a script file) so readers of `--stdin`/`--no-stdin` have the
full behavior and escape hatches in one place.
🪄 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: 30d4dffe-e094-40fd-b8b2-90c2e4069109
📒 Files selected for processing (7)
docs/about/release-notes.mdxdocs/inference/inference-options.mdxdocs/manage-sandboxes/lifecycle.mdxdocs/reference/commands.mdxdocs/reference/troubleshooting.mdxdocs/security/credential-storage.mdxsrc/lib/actions/sandbox/exec.ts
✅ Files skipped from review due to trivial changes (2)
- src/lib/actions/sandbox/exec.ts
- docs/about/release-notes.mdx
🚧 Files skipped from review as they are similar to previous changes (3)
- docs/security/credential-storage.mdx
- docs/manage-sandboxes/lifecycle.mdx
- docs/inference/inference-options.mdx
cv
left a comment
There was a problem hiding this comment.
Current-head rereview on 8fc71c3c34: the published-route checker improvements address the failed link-validation lane, but two current CodeRabbit findings remain valid. docs/reference/network-policies.mdx:37-43 still wraps the Hermes agents/hermes/policy-additions.yaml note in a duplicate variant="openclaw" block, so the OpenClaw page renders Hermes-specific guidance. docs/reference/commands.mdx:1166 also hardcodes LangChain Deep Agents Code v0.1.30 while the sibling examples use v<version>. Please correct the variant boundary and placeholder, resolve the threads, and rerun the docs build/route checks on the exact head.
cv
left a comment
There was a problem hiding this comment.
Current-head rereview on 8f05f84005: the AgentOnly boundary, version placeholder, and route-test type fix are resolved. One exact-head advisor blocker remains unchanged: ci/platform-matrix.json:165 still stores the Deep Agents quickstart link as ../get-started/quickstart-langchain-deepagents-code, and generated docs/reference/platform-support.mdx:68 repeats it, while docs/index.yml:234-235 publishes that page under the Deep Agents route slug quickstart. The new checker still guards only reference/commands.mdx (scripts/check-docs-published-routes.ts:291), so its tests cannot catch this real Platform Support regression.
Please fix the canonical matrix source, regenerate Platform Support, and add a test that renders/checks the real reference/platform-support.mdx page through the real Deep Agents navigation and resolves the link to /user-guide/deepagents/get-started/quickstart (while keeping the matrix/generated table synchronized).
cv
left a comment
There was a problem hiding this comment.
One additional current-head docs follow-up from CodeRabbit is valid: the second exec reference at docs/reference/commands.mdx:1237-1246 documents stdin flags but omits the newline/CR rejection contract and the three supported workarounds that the first exec section documents at :789-793. Please keep both rendered command variants behaviorally complete while addressing the blocking Platform Support route.
cv
left a comment
There was a problem hiding this comment.
Two Deep Agents Landlock sections are also blocking docs correctness on 8f05f84005. docs/reference/troubleshooting.mdx:1108-1110 says a Deep Agents sandbox can run with reduced enforcement, but the source policy is compatibility: strict (agents/langchain-deepagents-code/policy-additions.yaml:29-34) and this PR correctly says startup fails closed elsewhere (network-policies.mdx:63-65, best-practices.mdx:410-417). In addition, the unguarded section at troubleshooting.mdx:1691-1703 renders into the Deep Agents guide and says best-effort degradation is informational and does not block creation. Scope that best-effort guidance to OpenClaw/Hermes and give Deep Agents strict startup-failure/remediation guidance.
cv
left a comment
There was a problem hiding this comment.
One more variant leak on the same exact head: the unguarded managed web-search section at docs/reference/troubleshooting.mdx:436-449,476-478 renders in the Deep Agents guide and says onboarding selects/verifies Brave/Tavily and recreates the sandbox when the provider changes. The Deep Agents-specific section at :1067-1070 correctly says there is no NemoClaw-managed web-search feature. Scope the managed web-search prose to openclaw,hermes (or supply distinct Deep Agents behavior) so the new variant does not give contradictory remediation.
cv
left a comment
There was a problem hiding this comment.
While fixing that same canonical Platform Support row, also remove the unsupported macro form `$$nemo-deepagents onboard` at ci/platform-matrix.json:165 / generated docs/reference/platform-support.mdx:68. $$nemoclaw is the variant macro; a hardcoded alias must not carry $$, especially on this shared non-variant-generated page. Regenerate the table from the corrected matrix source.
cv
left a comment
There was a problem hiding this comment.
Re-reviewed exact head f762f77.
Resolved: the canonical Platform Support quickstart route is corrected and guarded; the Deep Agents render no longer leaks managed web-search guidance; strict fail-closed Landlock guidance is present. Focused route and variant validation passed 31 of 31 tests.
One blocker remains: docs/reference/commands.mdx lines 1214-1246 are the second rendered exec reference. After stdin guidance it goes directly to the flag table, but still omits the newline and carriage-return argument rejection and the semicolon, stdin-pipe, and script-file workarounds documented in the first exec section at lines 789-793. Please include the same contract in every rendered exec reference or deduplicate the shared guidance.
Addressed the change requests. And got cv's approval.
<!-- markdownlint-disable MD041 --> ## Summary Prepares the user-facing documentation for NemoClaw v0.0.76 and closes the release-prep documentation gate. It adds the release highlights, documents the arm64 Local NIM warning and expanded image cleanup behavior, and fixes agent-specific command headings in generated guides. ## Changes - Add the v0.0.76 release-notes section and move the shared-gateway route containment entry out of the v0.0.74 history where it was incorrectly placed. - Document the advisory Linux arm64 Local NIM manifest warning in the canonical platform matrix and local-inference guidance. - Document that `gc` scans both gateway-built and locally prebuilt sandbox image repositories. - Keep OpenClaw and Hermes session headings out of the generated Deep Agents command guide. - Add a focused variant regression test for the agent-specific session headings. ### Source summary | Merged sources | Documentation coverage | | --- | --- | | [#6414](#6414), [#6418](#6418), [#6416](#6416), [#6344](#6344) | v0.0.76 release notes and the Deep Agents quickstart/inference routes | | [#6340](#6340) | v0.0.76 release notes and existing Deep Agents observability guidance | | [#6338](#6338), [#6378](#6378), [#6297](#6297) | v0.0.76 release notes and existing inference/troubleshooting guidance | | [#6362](#6362) | v0.0.76 release notes and existing lifecycle, command, and credential guidance | | [#6330](#6330), [#6307](#6307), [#6008](#6008) | v0.0.76 release notes and existing security, troubleshooting, and command guidance | | [#6382](#6382) | v0.0.76 release notes and existing MCP/command guidance | | [#6326](#6326), [#5868](#5868), [#5539](#5539) | v0.0.76 release notes, platform matrix, inference options, and local-inference guidance | | [#6396](#6396), [#6390](#6390), [#6007](#6007) | v0.0.76 release notes and existing messaging guidance | | [#5388](#5388), [#6249](#6249), [#6303](#6303), [#6306](#6306) | v0.0.76 release notes and command/lifecycle guidance | ## Type of Change - [ ] Code change (feature, bug fix, or refactor) - [x] Code change with doc updates - [ ] Doc only (prose changes, no code sample modifications) - [ ] Doc only (includes code sample changes) ## Quality Gates - [x] Tests added or updated for changed behavior - [ ] Existing tests cover changed behavior — justification: - [ ] Tests not applicable — justification: - [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: ## Verification - [x] PR description includes the DCO sign-off declaration and every commit appears as `Verified` in GitHub - [x] Normal `pre-commit`, `commit-msg`, and `pre-push` hooks passed, or `npm run check:diff` passed 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/generate-platform-docs.test.ts test/agent-variant-docs.test.ts test/sync-agent-variant-docs.test.ts` (3 files, 29 tests passed) - [ ] Applicable broad gate passed — `npm test` for broad runtime/test-harness changes; `npm run check` for repo-wide validation/coverage changes — command/result: - [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 pre-existing Fern warnings - [x] Doc pages follow the [style guide](https://github.com/NVIDIA/NemoClaw/blob/main/docs/CONTRIBUTING.md) (doc changes only) - [ ] New doc pages include SPDX header and frontmatter (new pages only) --- Signed-off-by: Apurv Kumaria <akumaria@nvidia.com> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Added v0.0.76 release notes content, and removed an older conflicting bullet from the surrounding release history. * Expanded Local NVIDIA NIM guidance across inference/provider docs, including an advisory for Linux arm64 DGX Spark/DGX Station hosts when a matching `linux/arm64` image manifest is unavailable. * Updated the command reference for correct session-section rendering and clarified `gc` image cleanup sources. * **Tests** * Added coverage ensuring Deep Agents omits sessions headings while Hermes includes them. * **CI** * Refreshed Local NVIDIA NIM provider notes used in the platform matrix. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
<!-- markdownlint-disable MD041 --> ## Summary Adds Deep Agents as a first-class documentation variant alongside OpenClaw and Hermes, including navigation, generated variant pages, ecosystem overview, quickstart routing, and shared command-reference coverage. The PR also updates the agent-variant docs tooling and published-route checker so generated pages are validated after `AgentOnly` rendering and can use either route-relative or root-absolute docs links. Deep Agents variant staged preview: https://nvidia-preview-pr-6344.docs.buildwithfern.com/nemoclaw/latest/user-guide/deepagents/home ## Related Issue None. ## Changes - Add Deep Agents docs navigation, quickstart updates, and `docs/about/ecosystem-deepagents.mdx`. - Extend `scripts/sync-agent-variant-docs.ts`, `scripts/check-docs-published-routes.ts`, and related tests for the Deep Agents variant. - Consolidate Hermes command-reference content into the shared generated commands page and remove the standalone Hermes commands route. - Update shared docs pages across architecture, lifecycle, inference, security, network policy, troubleshooting, backup/restore, host state, and reference pages for three-variant coverage. - Update user-guide skill routing copy in `.agents/skills/` and `skills/`. - Update the sandbox exec inline doc reference to the consolidated commands doc path. ## Type of Change - [ ] Code change (feature, bug fix, or refactor) - [x] Code change with doc updates - [ ] Doc only (prose changes, no code sample modifications) - [ ] Doc only (includes code sample changes) ## Quality Gates <!-- Check exactly one tests line and one docs line. Check other lines when applicable. Add every requested justification or approval reference. --> - [x] Tests added or updated for changed behavior - [ ] Existing tests cover changed behavior — justification: - [ ] Tests not applicable — justification: - [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: ## Verification <!-- Check each applicable item only when supported by the requested evidence. Run targeted tests once per relevant change set and rerun after later edits or hook autofixes that can affect the tested behavior. Do not rerun hook-covered checks. --> - [x] PR description includes the DCO sign-off declaration and every commit appears as `Verified` in GitHub - [x] Normal `pre-commit`, `commit-msg`, and `pre-push` hooks passed, or `npm run check:diff` passed when hooks were skipped or unavailable - [x] Targeted behavior tests pass for the current change set, or tests are marked not applicable above — command/result or justification: `npx vitest run --project integration test/agent-variant-docs.test.ts test/sync-agent-variant-docs.test.ts test/internal-commands-docs.test.ts test/skills-frontmatter.test.ts` — 39/39 passed; `npm test -- test/repro-5445-docs-published-route.test.ts test/check-docs-published-routes.test.ts` — 11/11 passed - [ ] Applicable broad gate passed — `npm test` for broad runtime/test-harness changes; `npm run check` for repo-wide validation/coverage changes — command/result: - [x] Quality Gates section completed with required justifications or waivers - [x] No secrets, API keys, or credentials committed - [x] `npm run docs` builds without warnings (doc changes only) - [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) --- <!-- DCO sign-off is required in this PR description, and every commit must appear as Verified in GitHub. Run: git config user.name && git config user.email --> Signed-off-by: Miyoung Choi <miyoungc@nvidia.com>
<!-- markdownlint-disable MD041 --> ## Summary Prepares the user-facing documentation for NemoClaw v0.0.76 and closes the release-prep documentation gate. It adds the release highlights, documents the arm64 Local NIM warning and expanded image cleanup behavior, and fixes agent-specific command headings in generated guides. ## Changes - Add the v0.0.76 release-notes section and move the shared-gateway route containment entry out of the v0.0.74 history where it was incorrectly placed. - Document the advisory Linux arm64 Local NIM manifest warning in the canonical platform matrix and local-inference guidance. - Document that `gc` scans both gateway-built and locally prebuilt sandbox image repositories. - Keep OpenClaw and Hermes session headings out of the generated Deep Agents command guide. - Add a focused variant regression test for the agent-specific session headings. ### Source summary | Merged sources | Documentation coverage | | --- | --- | | [NVIDIA#6414](NVIDIA#6414), [NVIDIA#6418](NVIDIA#6418), [NVIDIA#6416](NVIDIA#6416), [NVIDIA#6344](NVIDIA#6344) | v0.0.76 release notes and the Deep Agents quickstart/inference routes | | [NVIDIA#6340](NVIDIA#6340) | v0.0.76 release notes and existing Deep Agents observability guidance | | [NVIDIA#6338](NVIDIA#6338), [NVIDIA#6378](NVIDIA#6378), [NVIDIA#6297](NVIDIA#6297) | v0.0.76 release notes and existing inference/troubleshooting guidance | | [NVIDIA#6362](NVIDIA#6362) | v0.0.76 release notes and existing lifecycle, command, and credential guidance | | [NVIDIA#6330](NVIDIA#6330), [NVIDIA#6307](NVIDIA#6307), [NVIDIA#6008](NVIDIA#6008) | v0.0.76 release notes and existing security, troubleshooting, and command guidance | | [NVIDIA#6382](NVIDIA#6382) | v0.0.76 release notes and existing MCP/command guidance | | [NVIDIA#6326](NVIDIA#6326), [NVIDIA#5868](NVIDIA#5868), [NVIDIA#5539](NVIDIA#5539) | v0.0.76 release notes, platform matrix, inference options, and local-inference guidance | | [NVIDIA#6396](NVIDIA#6396), [NVIDIA#6390](NVIDIA#6390), [NVIDIA#6007](NVIDIA#6007) | v0.0.76 release notes and existing messaging guidance | | [NVIDIA#5388](NVIDIA#5388), [NVIDIA#6249](NVIDIA#6249), [NVIDIA#6303](NVIDIA#6303), [NVIDIA#6306](NVIDIA#6306) | v0.0.76 release notes and command/lifecycle guidance | ## Type of Change - [ ] Code change (feature, bug fix, or refactor) - [x] Code change with doc updates - [ ] Doc only (prose changes, no code sample modifications) - [ ] Doc only (includes code sample changes) ## Quality Gates - [x] Tests added or updated for changed behavior - [ ] Existing tests cover changed behavior — justification: - [ ] Tests not applicable — justification: - [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: ## Verification - [x] PR description includes the DCO sign-off declaration and every commit appears as `Verified` in GitHub - [x] Normal `pre-commit`, `commit-msg`, and `pre-push` hooks passed, or `npm run check:diff` passed 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/generate-platform-docs.test.ts test/agent-variant-docs.test.ts test/sync-agent-variant-docs.test.ts` (3 files, 29 tests passed) - [ ] Applicable broad gate passed — `npm test` for broad runtime/test-harness changes; `npm run check` for repo-wide validation/coverage changes — command/result: - [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 pre-existing Fern warnings - [x] Doc pages follow the [style guide](https://github.com/NVIDIA/NemoClaw/blob/main/docs/CONTRIBUTING.md) (doc changes only) - [ ] New doc pages include SPDX header and frontmatter (new pages only) --- Signed-off-by: Apurv Kumaria <akumaria@nvidia.com> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Added v0.0.76 release notes content, and removed an older conflicting bullet from the surrounding release history. * Expanded Local NVIDIA NIM guidance across inference/provider docs, including an advisory for Linux arm64 DGX Spark/DGX Station hosts when a matching `linux/arm64` image manifest is unavailable. * Updated the command reference for correct session-section rendering and clarified `gc` image cleanup sources. * **Tests** * Added coverage ensuring Deep Agents omits sessions headings while Hermes includes them. * **CI** * Refreshed Local NVIDIA NIM provider notes used in the platform matrix. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Apurv Kumaria <akumaria@nvidia.com>
Summary
Adds Deep Agents as a first-class documentation variant alongside OpenClaw and Hermes, including navigation, generated variant pages, ecosystem overview, quickstart routing, and shared command-reference coverage.
The PR also updates the agent-variant docs tooling and published-route checker so generated pages are validated after
AgentOnlyrendering and can use either route-relative or root-absolute docs links.Deep Agents variant staged preview: https://nvidia-preview-pr-6344.docs.buildwithfern.com/nemoclaw/latest/user-guide/deepagents/home
Related Issue
None.
Changes
docs/about/ecosystem-deepagents.mdx.scripts/sync-agent-variant-docs.ts,scripts/check-docs-published-routes.ts, and related tests for the Deep Agents variant..agents/skills/andskills/.Type of Change
Quality Gates
Verification
Verifiedin GitHubpre-commit,commit-msg, andpre-pushhooks passed, ornpm run check:diffpassed when hooks were skipped or unavailablenpx vitest run --project integration test/agent-variant-docs.test.ts test/sync-agent-variant-docs.test.ts test/internal-commands-docs.test.ts test/skills-frontmatter.test.ts— 39/39 passed;npm test -- test/repro-5445-docs-published-route.test.ts test/check-docs-published-routes.test.ts— 11/11 passednpm testfor broad runtime/test-harness changes;npm run checkfor repo-wide validation/coverage changes — command/result:npm run docsbuilds without warnings (doc changes only)Signed-off-by: Miyoung Choi miyoungc@nvidia.com