Skip to content

docs: remaining fern doc fixes - #3780

Merged
ericksoa merged 1 commit into
mainfrom
docs/minor-fixes
May 19, 2026
Merged

docs: remaining fern doc fixes#3780
ericksoa merged 1 commit into
mainfrom
docs/minor-fixes

Conversation

@miyoungc

@miyoungc miyoungc commented May 19, 2026

Copy link
Copy Markdown
Collaborator

Summary

Polishes the remaining Fern migration details so the NemoClaw docs preview matches the legacy docs structure more closely. This aligns sidebar labels, MDX page titles, landing-page badges, and Fern component wiring.

Related Issue

None.

Changes

  • Aligns docs/index.yml navigation labels and ordering with the intended table of contents, including the nested Windows prerequisites page and Runtime Controls entry.
  • Syncs MDX frontmatter title values with the first H1 from the corresponding legacy .md pages.
  • Adds a reusable Fern MDX badge component and CSS so landing-page badges render inline without Fern external-link icon artifacts.
  • Registers the docs component directory in fern/docs.yml for Fern preview/build resolution.

Type of Change

  • Code change (feature, bug fix, or refactor)
  • Code change with doc updates
  • Doc only (prose changes, no code sample modifications)
  • Doc only (includes code sample changes)

Verification

  • npx prek run --all-files passes
  • npm test passes
  • Tests added or updated for new or changed behavior
  • No secrets, API keys, or credentials committed
  • Docs updated for user-facing behavior changes
  • make docs builds without warnings (doc changes only)
  • Doc pages follow the style guide (doc changes only)
  • New doc pages include SPDX header and frontmatter (new pages only)

Additional local verification:

  • ReadLints reported no docs diagnostics after the edits.
  • A local script verified every docs/**/*.mdx frontmatter title matches the first H1 in the corresponding legacy .md file.
  • git diff --check passed.
  • npm run docs:strict was attempted earlier, but the sandboxed environment returned 403 Forbidden while fetching fern-api from npm, so Fern CLI validation was not completed locally.

Signed-off-by: Miyoung Choi miyoungc@nvidia.com

Summary by CodeRabbit

  • New Features

    • Added a badge display component to the homepage featuring linked status, license, security, and community badges for quick access.
  • Documentation

    • Streamlined documentation page titles throughout the site and reorganized sidebar navigation for improved clarity and consistency.
  • Style

    • Enhanced badge link styling with flexible layout, proper spacing, and responsive behavior.

Review Change Stack

@coderabbitai

coderabbitai Bot commented May 19, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

This PR introduces a reusable BadgeLinks component to display status and policy badges on the homepage, standardizes documentation page titles across 24+ files by removing product-name prefixes, and restructures the navigation configuration with updated labels and a new Runtime Controls section.

Changes

Badge Component Feature

Layer / File(s) Summary
Badge component definition and type declarations
docs/_components/BadgeLinks.tsx, docs/_components/jsx.d.ts
BadgeItem type with href, src, and alt fields; BadgeLinks component accepts an optional badges array and renders a div wrapping external anchor links with badge images.
Badge rendering, configuration, and styling
fern/docs.yml, fern/main.css, docs/index.mdx
Fern configuration registers the mdx-components directory; CSS styling adds .badge-links flex container with proper alignment and margin handling for images and anchors; homepage imports BadgeLinks and renders status, license, security, and Discord badges.

Documentation Standardization

Layer / File(s) Summary
Page title and metadata simplification
docs/about/*, docs/deployment/*, docs/get-started/*, docs/inference/*, docs/manage-sandboxes/*, docs/monitoring/*, docs/network-policy/*, docs/reference/*, docs/resources/*, docs/security/*
Frontmatter title and sidebar-title fields updated across 24 pages to shorten descriptive text and remove "NemoClaw" product prefix (e.g., "NemoClaw Inference Options" → "Inference Options", "NemoClaw Architecture Overview: Plugin, Blueprint, and Sandbox Lifecycle" → "Architecture Overview").
Navigation structure and label updates
docs/index.yml
Navigation labels updated to match simplified page titles; "How It Works" changed to "Architecture Overview"; Windows prerequisites marked with "(Windows Only)" prefix; new "Runtime Controls" entry added under "Manage Sandboxes"; "Architecture" renamed to "Architecture Details"; "Report Vulnerabilities" link reordered before "License" in Resources.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Suggested labels

documentation, Migration

Suggested reviewers

  • ahunnargikar-nvidia
  • cv
  • ericksoa

🐰 New badges sparkle bright,
Docs trimmed clean, organized right!
Navigation flows smooth,
Product names we soothe,
Homepage glows—what a sight!

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive The title 'docs: remaining fern doc fixes' is vague and generic. It uses imprecise language like 'remaining' and 'fixes' that doesn't convey what specific documentation changes were made. Revise the title to be more specific about the primary changes, such as 'docs: simplify page titles and add badge links component' or similar to better describe the actual changes.
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

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

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/minor-fixes

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 ESLint

If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.

ESLint skipped: no ESLint configuration detected in root package.json. To enable, add eslint to devDependencies.


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

@github-actions

Copy link
Copy Markdown
Contributor

@github-actions

Copy link
Copy Markdown
Contributor

E2E Advisor Recommendation

Required E2E: None
Optional E2E: None

Workflow run

Full advisor summary

E2E Recommendation Advisor

Base: origin/main
Head: HEAD
Confidence: high

Required E2E

  • None. No NemoClaw E2E jobs are recommended because this PR is documentation-site only. It does not modify installer/onboarding implementation, sandbox lifecycle code, credential handling, security boundaries, network policy assets, inference routing logic, deployment automation, plugin/runtime code, or real assistant workflow behavior. Docs build/lint checks may be appropriate, but runtime E2E would not provide merge-blocking signal for these changes.

Optional E2E

  • None.

New E2E recommendations

  • None.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 3

🤖 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/_components/BadgeLinks.tsx`:
- Around line 1-6: Add the required SPDX license header at the very top of
docs/_components/BadgeLinks.tsx (above the existing file comment) by inserting
an SPDX copyright line with the appropriate copyright holder/year and the
SPDX-License-Identifier for Apache-2.0; ensure the header appears before the
current module comment so the file complies with the repository rule that every
.tsx source must include an SPDX copyright and Apache-2.0 license identifier.

In `@docs/_components/jsx.d.ts`:
- Line 1: Add the required SPDX license header to the top of this new TypeScript
declaration file so it includes both the copyright notice and the Apache-2.0
license identifier; specifically insert the SPDX copyright line and
"SPDX-License-Identifier: Apache-2.0" as the first lines of the file that
contains the declaration "declare const React: unknown;" so the file meets the
repository rule that every source file includes an SPDX header.

In `@docs/index.mdx`:
- Around line 26-27: The badge link targets the wrong filename: update the href
value that currently points to "release-notes.md" so it points to the actual
docs file "release-notes.mdx" (leave the src badge image unchanged);
specifically locate the href assignment in the docs/index.mdx frontmatter and
replace "release-notes.md" with "release-notes.mdx" to fix the broken
cross-reference.
🪄 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: 88df8664-b13e-4fd7-83c9-c3e0dd850600

📥 Commits

Reviewing files that changed from the base of the PR and between 5a03166 and 028aa50.

📒 Files selected for processing (30)
  • docs/_components/BadgeLinks.tsx
  • docs/_components/jsx.d.ts
  • docs/about/ecosystem.mdx
  • docs/about/how-it-works.mdx
  • docs/about/overview.mdx
  • docs/about/release-notes.mdx
  • docs/deployment/deploy-to-remote-gpu.mdx
  • docs/deployment/install-openclaw-plugins.mdx
  • docs/get-started/prerequisites.mdx
  • docs/get-started/quickstart-hermes.mdx
  • docs/get-started/windows-preparation.mdx
  • docs/index.mdx
  • docs/index.yml
  • docs/inference/inference-options.mdx
  • docs/inference/set-up-sub-agent.mdx
  • docs/inference/switch-inference-providers.mdx
  • docs/inference/use-local-inference.mdx
  • docs/manage-sandboxes/messaging-channels.mdx
  • docs/monitoring/monitor-sandbox-activity.mdx
  • docs/network-policy/approve-network-requests.mdx
  • docs/network-policy/customize-network-policy.mdx
  • docs/reference/architecture.mdx
  • docs/reference/commands.mdx
  • docs/reference/network-policies.mdx
  • docs/reference/troubleshooting.mdx
  • docs/resources/license.mdx
  • docs/security/best-practices.mdx
  • docs/security/credential-storage.mdx
  • fern/docs.yml
  • fern/main.css

Comment on lines +1 to +6
/**
* Badge links for GitHub, License, project status, Discord, etc.
* Uses a flex wrapper to display badges horizontally and hides Fern's
* external-link icon that otherwise stacks under each badge image.
* Requires the `.badge-links` CSS rule from main.css.
*/

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Add SPDX license header to this new TSX source file.

This file is missing the required SPDX copyright and license header.

As per coding guidelines, **/*.{js,ts,tsx,jsx,sh,yaml,yml,json,md,mdx}: Every source file must include an SPDX license header for copyright and Apache-2.0 license.

🤖 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/BadgeLinks.tsx` around lines 1 - 6, Add the required SPDX
license header at the very top of docs/_components/BadgeLinks.tsx (above the
existing file comment) by inserting an SPDX copyright line with the appropriate
copyright holder/year and the SPDX-License-Identifier for Apache-2.0; ensure the
header appears before the current module comment so the file complies with the
repository rule that every .tsx source must include an SPDX copyright and
Apache-2.0 license identifier.

Comment thread docs/_components/jsx.d.ts
@@ -0,0 +1 @@
declare const React: unknown;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Add SPDX license header to this new TypeScript declaration file.

The file currently has no required SPDX copyright/license header.

As per coding guidelines, **/*.{js,ts,tsx,jsx,sh,yaml,yml,json,md,mdx}: Every source file must include an SPDX license header for copyright and Apache-2.0 license.

🤖 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/jsx.d.ts` at line 1, Add the required SPDX license header to
the top of this new TypeScript declaration file so it includes both the
copyright notice and the Apache-2.0 license identifier; specifically insert the
SPDX copyright line and "SPDX-License-Identifier: Apache-2.0" as the first lines
of the file that contains the declaration "declare const React: unknown;" so the
file meets the repository rule that every source file includes an SPDX header.

Comment thread docs/index.mdx
Comment on lines +26 to +27
href: "https://github.com/NVIDIA/NemoClaw/blob/main/docs/about/release-notes.md",
src: "https://img.shields.io/badge/status-alpha-orange",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix the Release Notes badge target URL.

Line 26 links to release-notes.md, but this docs page is release-notes.mdx in the current structure, so the badge target is likely broken.

As per coding guidelines, Missing SPDX header, broken cross-references, or incorrect code block language: flag as issues.

🤖 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.mdx` around lines 26 - 27, The badge link targets the wrong
filename: update the href value that currently points to "release-notes.md" so
it points to the actual docs file "release-notes.mdx" (leave the src badge image
unchanged); specifically locate the href assignment in the docs/index.mdx
frontmatter and replace "release-notes.md" with "release-notes.mdx" to fix the
broken cross-reference.

@ericksoa ericksoa left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewed the docs-only changes at 028aa50. Fern validation and docs-to-skills dry run pass locally, the generated Release Notes Markdown target exists, and the GitHub docs/link/security/self-hosted checks are green. I do not see a merge-blocking correctness issue here.

@ericksoa
ericksoa merged commit f3b9b17 into main May 19, 2026
30 of 31 checks passed
@miyoungc
miyoungc deleted the docs/minor-fixes branch May 27, 2026 20:51
@wscurran wscurran added area: docs Documentation, examples, guides, or docs build chore Build, CI, dependency, or tooling maintenance and removed documentation labels Jun 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: docs Documentation, examples, guides, or docs build chore Build, CI, dependency, or tooling maintenance

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants