Release Docs Sync
UfoMiao/zcf
Compares code changes since the last Git tag with the multilingual docs and CLAUDE.md, then updates them or only reports mismatches with --check-only.
Adds, updates, moves and removes pages on the NeMo Curator Fern documentation site, keeping navigation entries, links and redirects in step.
$ npx skills add NVIDIA-NeMo/Curator --skill nemo-curator-docs -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install NVIDIA-NeMo/Curator nemo-curator-docs --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/NVIDIA-NeMo/Curator.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/nemo-curator-docs .claude/skills/nemo-curator-docs && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "nemo-curator-docs" agent skill from https://github.com/NVIDIA-NeMo/Curator/tree/main/.claude/skills/nemo-curator-docs into .claude/skills/nemo-curator-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nemo-curator-docs", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/NVIDIA-NeMo/Curator/tree/main/.claude/skills/nemo-curator-docsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add NVIDIA-NeMo/Curator --skill nemo-curator-docs -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install NVIDIA-NeMo/Curator nemo-curator-docs --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NVIDIA-NeMo/Curator.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/nemo-curator-docs .agents/skills/nemo-curator-docs && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "nemo-curator-docs" agent skill from https://github.com/NVIDIA-NeMo/Curator/tree/main/.claude/skills/nemo-curator-docs into .agents/skills/nemo-curator-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nemo-curator-docs", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add NVIDIA-NeMo/Curator --skill nemo-curator-docs -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install NVIDIA-NeMo/Curator nemo-curator-docs --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NVIDIA-NeMo/Curator.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/nemo-curator-docs .cursor/skills/nemo-curator-docs && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "nemo-curator-docs" agent skill from https://github.com/NVIDIA-NeMo/Curator/tree/main/.claude/skills/nemo-curator-docs into .cursor/skills/nemo-curator-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nemo-curator-docs", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/NVIDIA-NeMo/Curator.git --path .claude/skills/nemo-curator-docs--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add NVIDIA-NeMo/Curator --skill nemo-curator-docs -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install NVIDIA-NeMo/Curator nemo-curator-docs --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NVIDIA-NeMo/Curator.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/nemo-curator-docs .gemini/skills/nemo-curator-docs && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "nemo-curator-docs" agent skill from https://github.com/NVIDIA-NeMo/Curator/tree/main/.claude/skills/nemo-curator-docs into .gemini/skills/nemo-curator-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nemo-curator-docs", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install NVIDIA-NeMo/Curator nemo-curator-docsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add NVIDIA-NeMo/Curator --skill nemo-curator-docs -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/NVIDIA-NeMo/Curator.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/nemo-curator-docs .github/skills/nemo-curator-docs && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "nemo-curator-docs" agent skill from https://github.com/NVIDIA-NeMo/Curator/tree/main/.claude/skills/nemo-curator-docs into .github/skills/nemo-curator-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nemo-curator-docs", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add NVIDIA-NeMo/Curator --skill nemo-curator-docs -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install NVIDIA-NeMo/Curator nemo-curator-docs --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NVIDIA-NeMo/Curator.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/nemo-curator-docs .opencode/skills/nemo-curator-docs && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "nemo-curator-docs" agent skill from https://github.com/NVIDIA-NeMo/Curator/tree/main/.claude/skills/nemo-curator-docs into .opencode/skills/nemo-curator-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nemo-curator-docs", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
nemo-curator-docsAdds, updates, moves and removes pages on the NeMo Curator Fern documentation site, keeping navigation entries, links and redirects in step.
All documentation work happens under `fern/`; the old `docs/` directory is deprecated, and even release notes and migration guides go in the new tree. New pages default to the current version `v26.04`, which `latest` points to through a symlinked config, unless you name another version. A page is a kebab-case `.mdx` file with frontmatter, plus an entry in `fern/versions/v26.04.yml`.
Updating covers content edits, title changes in both frontmatter and navigation, section moves with `git mv` and link fixes, and slug changes with a redirect in `fern/docs.yml`. Removing a page means finding incoming links with grep, running `git rm`, deleting its navigation block (and the section if it empties), fixing links and adding a redirect when the URL was public. A further section deals with back-porting to an older version.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 77ec4a7. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitnpmpythonpython3From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comAlso links to:
buildwithfern.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
FERN_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
NeMo Curator Docs Maintenance loads about 4.3k tokens when it runs. Until then it costs about 36 tokens; SKILL.md has 1,506 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from NVIDIA-NeMo/Curator at commit 77ec4a7, republished under its Apache-2.0 licence (© NVIDIA-NeMo). 1,506 words, ~4,301 tokens.
.claude/skills/nemo-curator-docs/SKILL.md (or your agent's skills folder).Unified skill for adding, updating, moving, and removing pages on the NeMo Curator Fern documentation site.
ALL docs edits happen under fern/. The legacy docs/ directory is deprecated — do not add or move content into it. Release notes, migration guides, and every new page belong under fern/.
fern/
├── fern.config.json # Minimal Fern config (org + CLI version)
├── docs.yml # Site config: versions, tabs, redirects, libraries
├── versions/
│ ├── latest.yml # Symlink → v26.04.yml (do not edit directly)
│ ├── v26.04.yml # Nav tree for current train
│ ├── v26.04/pages/ # MDX content for current train
│ ├── v25.09.yml
│ └── v25.09/pages/
├── components/ # Custom TSX components (footer, etc.)
├── assets/ # Images, SVGs, favicon
├── substitute_variables.py # CI: resolves {{ variables }} in MDX
└── AUTODOCS_GUIDE.md # Library reference generation guideCurrent train: v26.04. Default all new pages there unless the user specifies a version.
File system Published URL
─────────────────────────────────────── ────────────────────────────────────────
fern/versions/v26.04/pages/ docs.nvidia.com/nemo/curator/latest/
└─ get-started/text.mdx └─ get-started/text
fern/versions/v26.04.yml ── nav for ──┐ docs.nvidia.com/nemo/curator/v26.04/
fern/versions/latest.yml ─ symlink ───┘ └─ get-started/text
fern/versions/v25.09/pages/ docs.nvidia.com/nemo/curator/v25.09/
└─ get-started/text.mdx └─ get-started/text.mdx), subdirectory under fern/versions/v26.04/pages/.fern/versions/v26.04/pages/<subdirectory>/<filename>.mdx:---
description: "One-line SEO description"
categories: ["<category>"]
tags: ["<tag-1>", "<tag-2>"]
personas: ["<persona>"]
difficulty: "beginner" # beginner | intermediate | advanced
content_type: "tutorial" # tutorial | how-to | reference | concept | index
modality: "text-only" # text-only | image-only | video-only | audio-only | universal
---
# <Page Title>
<content>fern/versions/v26.04.yml under the correct section:- page: <Page Title>
path: ./v26.04/pages/<subdirectory>/<filename>.mdx
slug: <filename>latest, no action needed — latest.yml is a symlink to v26.04.yml.grep -rn in fern/versions/v26.04/pages/).- page: name in fern/versions/v26.04.yml.git mv the file, update its path: in the nav, and fix all incoming links.slug: in the nav and add a redirect in fern/docs.yml so old URLs keep working.grep -r "<filename>" fern/versions/v26.04/pages/ --include="*.mdx".git rm fern/versions/v26.04/pages/<subdirectory>/<filename>.mdx.- page: block from fern/versions/v26.04.yml. If it was the last page in a section, remove the - section: block.fern/docs.yml if the URL was public.Only when explicitly asked. Repeat the operation in the corresponding fern/versions/vXX.YY/ tree and vXX.YY.yml nav. MDX content often diverges between trains — do not blindly copy.
Request: "Add a how-to for benchmarking text pipelines under Curate Text."
Create fern/versions/v26.04/pages/curate-text/benchmarking.mdx:
---
description: "Benchmark text curation pipelines and interpret throughput and memory metrics"
categories: ["how-to"]
tags: ["text-curation", "benchmarking", "performance"]
personas: ["mle-focused"]
difficulty: "intermediate"
content_type: "how-to"
modality: "text-only"
---
# Benchmark Text Pipelines
<content>Add nav entry in fern/versions/v26.04.yml under the existing Curate Text section:
- page: Benchmark Text Pipelines
path: ./v26.04/pages/curate-text/benchmarking.mdx
slug: benchmarkingcd fern && fern check then fern docs dev and verify the page renders at /curate-text/benchmarking.
Request: "Rename /curate-text/benchmarking to /curate-text/performance."
Update slug: in fern/versions/v26.04.yml: slug: performance.
(Optional) git mv the MDX file if you want the filename to match the slug.
Add a redirect to fern/docs.yml so old links keep working:
redirects:
- source: "/nemo/curator/latest/curate-text/benchmarking"
destination: "/nemo/curator/latest/curate-text/performance"
- source: "/nemo/curator/v26.04/curate-text/benchmarking"
destination: "/nemo/curator/v26.04/curate-text/performance"grep -rn "/curate-text/benchmarking" fern/versions/v26.04/pages/ and update any incoming links.
NeMo Curator uses Fern-native MDX components directly (unlike Dynamo, which converts GitHub callouts in CI). Do not use > [!NOTE] syntax — it will not render.
| Purpose | Component |
|---|---|
| Neutral aside | <Note>...</Note> |
| Helpful tip | <Tip>...</Tip> |
| Informational callout | <Info>...</Info> |
| Warning | <Warning>...</Warning> |
| Error / danger | <Error>...</Error> |
| Card grid on index pages | <Cards> with <Card title="..." href="..."> children |
Images live in fern/assets/ (shared) or fern/versions/vXX.YY/pages/_images/ (version-scoped). Reference with root-relative paths.
Component examples:
<Tip>
If `uv` is not installed, see the [Installation Guide](/admin/installation).
</Tip>
<Warning>
GPU-accelerated dedup requires CUDA {{ recommended_cuda }} or later.
</Warning>
<Cards>
<Card title="Text Curation" href="/get-started/text">
Set up and run text curation workflows.
</Card>
<Card title="Image Curation" href="/get-started/image">
Set up and run image curation workflows.
</Card>
</Cards>Required: description.
Optional but strongly preferred: categories, tags, personas, difficulty, content_type, modality. Existing pages in the same section are the best reference for valid values.
title is taken from the - page: entry in the nav file; the MDX file itself uses an # H1 heading matching the page name.
Tokens like {{ product_name }}, {{ container_version }}, {{ current_release }}, {{ github_repo }}, {{ min_python_version }} are resolved by fern/substitute_variables.py at CI time. Use them instead of hard-coding versions or URLs. Canonical list in DEFAULT_VARIABLES at the top of that file.
Example in MDX:
Install {{ product_name }} {{ current_release }} from {{ github_repo }}.
Requires Python {{ min_python_version }}+ and CUDA {{ recommended_cuda }}.After substitution at CI time:
Install NeMo Curator 25.09 from https://github.com/NVIDIA-NeMo/Curator.
Requires Python 3.10+ and CUDA 12.0+.To preview substitution locally:
python fern/substitute_variables.py versions/v26.04 --version 26.04 --dry-runcd fern
fern check # YAML + frontmatter validation
fern docs broken-links # link check
fern docs dev # localhost:3000 hot-reload previewfern check must pass before commit. Broken-link check can be deferred but must pass in CI.
git add fern/
git commit -s -m "docs: <add|update|remove> <page-title>"DCO sign-off (-s) is required on every commit. CI enforces it. If you forget, amend with git commit --amend --no-edit -s and force-push the branch.
PRs that touch fern/** get an automatic Fern preview URL posted as a comment by .github/workflows/fern-docs-preview-comment.yml. No manual step needed.
┌─ fern-docs-ci.yml → fern check + autodocs
PR (touches fern/) ─┼─ fern-docs-preview.yml → preview build
└─ fern-docs-preview-*.yml → 🌿 preview URL comment
Merge to main → NO publish. Site is unchanged.
Tag push (docs/v*) → publish-fern-docs.yml → docs.nvidia.com/nemo/curatorMerging to main does NOT publish. Production only updates when a tag matching docs/v* is pushed (or the workflow is manually dispatched from the Actions tab). Do not push tags unless the user asks.
Tag must be docs/v<MAJOR>.<MINOR>.<PATCH> — the docs/v prefix is required by the workflow trigger and the semver suffix should match the docs release in CHANGELOG.md.
# Correct — triggers publish
git tag docs/v1.1.0
git push origin docs/v1.1.0
git tag docs/v1.2.0-rc1 # pre-release suffix is fine, still matches docs/v*
git push origin docs/v1.2.0-rc1
# Wrong — these will NOT trigger publish
git tag v1.1.0 # missing docs/ prefix
git tag docs/1.1.0 # missing v
git tag docs-v1.1.0 # wrong separatorURL → version mapping after publish:
docs.nvidia.com/nemo/curator/latest/... → symlink to current train (v26.04 today)
docs.nvidia.com/nemo/curator/v26.04/... → 26.04 train
docs.nvidia.com/nemo/curator/v26.02/... → 26.02 train
docs.nvidia.com/nemo/curator/v25.09/... → 25.09 trainWhen the user ships a new version (e.g. cutting v26.06 while v26.04 is current):
fern/versions/v26.04/pages/ → fern/versions/v26.06/pages/ and edit content.fern/versions/v26.04.yml → fern/versions/v26.06.yml and update all ./v26.04/ path prefixes to ./v26.06/.ln -sf v26.06.yml fern/versions/latest.yml.fern/docs.yml versions: list — add the new display-name, mark older trains stable.fern/docs.yml for /nemo/curator/26.06/:path* → /nemo/curator/v26.06/:path* (see existing patterns).*/index.html redirect for the new version (e.g. /nemo/curator/v26.06/index.html → /nemo/curator/v26.06). The :path* rule does not match the empty-path case, so each version-root index.html needs its own explicit rule.display-name strings with CHANGELOG.md and nemo_curator/package_info.py.A version is included in the published site only when it appears in the versions: block of fern/docs.yml. The MDX tree (fern/versions/vXX.YY/) and nav file (fern/versions/vXX.YY.yml) can sit in the repo unpublished — Fern doesn't auto-publish every YAML it finds.
To stage a version without publishing it (e.g. work-in-progress on v26.06 while v26.04 is current):
# fern/docs.yml
versions:
- display-name: "Latest · v1.1.2 (26.04)"
path: versions/latest.yml
slug: latest
- display-name: "26.04 · v1.1.2"
path: versions/v26.04.yml
slug: v26.04
# v26.06 staged in repo but not listed here → not publishedTo pull an already-shipping version back (e.g. hold v26.04 while pushing fixes to older trains):
v26.04 entry from versions: in fern/docs.yml.latest should also stop serving 26.04 content, repoint the symlink: ln -sf v26.02.yml fern/versions/latest.yml. Otherwise leave latest alone — it will keep serving v26.04 content under /latest/ even with v26.04 removed (since latest.yml references the v26.04 pages directly).docs/v* to publish.This is a temporary maneuver — track the change so it gets reverted.
Audiences (alternative): Fern supports audiences: on versions plus separate instances: (e.g. staging vs production). This is heavier setup — only adopt if multi-instance publishing is genuinely needed. NeMo Curator does not currently configure instances. References: Fern versioning, Fern publishing.
Do not use hidden: true to hide a version from publish. Hidden versions are removed from navigation/search/indexing but remain accessible by direct URL — still effectively published.
fern/docs.yml declares one libraries: entry, and a script provides a second, temporary one (both write to fern/product-docs/nemo-curator/Full-Library-Reference/, gitignored):
nemo-curator (input.git, committed in docs.yml) — used by CI/publish/preview; requires fern login or FERN_TOKEN. Workflows run fern docs md generate --library nemo-curator.nemo-curator-local (input.path: ../nemo_curator, injected temporarily by fern/scripts/generate-library-local.sh) — local dev without Fern auth; requires Docker. Run npm run generate:library:local from fern/. The entry must NOT be committed to docs.yml: fern docs dev rejects path-input libraries ("'path' input which is not yet supported") and renders a blank page, while --local generation only accepts path inputs.For a full API reference locally (424 pages), use npm run generate:library. The local Docker parser is beta and currently produces fewer pages — fine for testing the no-auth flow, not a substitute for CI generation.
Known bug in the Fern Python library generator (filed upstream): the generator emits cross-references that miss the /nemo/curator site basepath (links use /nemo-curator/... instead of /nemo/curator/nemo-curator/...) and tacks on Sphinx-style #nemo_curator-… fragments that don't match any rendered anchor. Result: ~540 broken links across the generated API reference.
No in-repo workaround currently. A post-generation rewrite (walking the generated MDX, fixing the basepath, dropping stale fragments) is feasible but not yet wired up. Track the upstream Fern fix; revisit if it doesn't land soon.
fern/_fix_broken_links.py separately rewrites a long list of legacy URL patterns (/api/reference/api-reference/, old Sphinx slugs, etc.) on the committed MDX under fern/versions/v25.09/pages/ and fern/versions/v26.02/pages/. CI does not run it, so committed pages can drift. Re-run locally and commit the diff if you see drift:
python3 fern/_fix_broken_links.py:path* does not match the empty-path case. /nemo/curator/:path*/index.html will not catch /nemo/curator/index.html — that needs its own explicit rule. Same for every version-root: /nemo/curator/{latest,vXX.YY}/index.html each need a dedicated entry. Pattern: define the explicit empty-path rules before the :path* rule.fern/docs.yml use the vXX.YY form (e.g. v26.04). Calendar-train forms (26.04) need redirects to the v-prefixed slug.| Symptom | Fix |
|---|---|
fern check YAML error | 2-space indent; - page: inside contents:; path: is relative to the version YAML file |
| Page 404 in preview | slug: missing or duplicated in the same section; confirm in vXX.YY.yml |
{{ variable }} shows literally on site | Not in DEFAULT_VARIABLES in substitute_variables.py — add it there |
| MDX parse error | Replace bare <https://...> with [text](https://...); escape < in prose with < or backticks |
| Old Sphinx URL breaks | Add a redirects: entry in fern/docs.yml |
| Library reference missing | Run npm run generate:library in fern/ (full reference; needs Fern auth). Or npm run generate:library:local without auth (Docker; beta, fewer pages). See fern/AUTODOCS_GUIDE.md. |
| Broken image | Path is relative to the MDX file; check fern/assets/ or pages/_images/ exists |
| File | Purpose |
|---|---|
fern/docs.yml | Site config, versions, redirects, libraries |
fern/versions/vXX.YY.yml | Navigation tree for a version |
fern/versions/vXX.YY/pages/ | MDX content for a version |
fern/versions/latest.yml | Symlink → current train's nav (do not edit) |
fern/components/ | Custom TSX (footer, release banner) |
fern/assets/ | Shared images, SVGs, favicon |
fern/substitute_variables.py | Variable definitions + CI replacement |
fern/AUTODOCS_GUIDE.md | Generating library reference MDX from source |
fern/README.md | Full docs architecture guide |
.github/workflows/fern-docs-*.yml | CI: validation, preview, publish |
© NVIDIA-NeMo, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/nemo-curator-docs of NVIDIA-NeMo/Curator.
Open the folder on GitHubat commit 77ec4a7
NeMo Curator Docs Maintenance next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| NeMo Curator Docs Maintenance this skillNVIDIA-NeMo/Curator | 1.8k | — | ~4.3k | Automated safety check: Pass | Apache-2.0 | |
| Release Docs SyncUfoMiao/zcf | 6.1k | — | ~4k | Automated safety check: Pass | MIT | |
| Doc SyncJetBrains/ideavim | 10k | 2 repos | ~2.6k | Automated safety check: Pass | MIT | |
| Mermaid Diagramsjjmartres/opencode | 133 | 6 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Acquire Codebase Knowledgegithub/awesome-copilot | 40k | 1 repos | ~2.3k | Automated safety check: Pass | MIT | |
| Releasejrswab/axe | 895 | — | ~1.4k | Automated safety check: Pass | Apache-2.0 |
UfoMiao/zcf
Compares code changes since the last Git tag with the multilingual docs and CLAUDE.md, then updates them or only reports mismatches with --check-only.
JetBrains/ideavim
Keeps IdeaVim documentation in sync with code changes. An agent skill from JetBrains/ideavim.
jjmartres/opencode
Helps an agent pick the right Mermaid diagram type and write the syntax for class, sequence, flow, ER, C4, state and other software diagrams.
github/awesome-copilot
Maps an unfamiliar codebase into seven evidence-backed documents in docs/codebase/, using a scan script and templates, for onboarding or architecture write-ups.
jrswab/axe
Prepare code for release (version bumps, changelog, README updates) and create an annotated tag to trigger the GoReleaser workflow.
LennartHennigs/Button2
Stage and commit current changes for Button2 — checks for needed CHANGELOG/README/CLAUDE.md updates, creates a branch if on master, writes a commit message, and commits
NVIDIA-NeMo/Curator
Supplies the review rubric behind the formal /review command in NeMo Curator: light or strict depth, a narrow focus on real defects and findings filed through the review contract.
Works with
Categories
Adds, updates, moves and removes pages on the NeMo Curator Fern documentation site, keeping navigation entries, links and redirects in step. All documentation work happens under `fern/`; the old `docs/` directory is deprecated, and even release notes and migration guides go in the new tree.04`, which `latest` points to through a symlinked config, unless you name another version.
NeMo Curator Docs Maintenance fits situations like: adding a new documentation page to the NeMo Curator Fern site; renaming or moving a page without breaking existing links; removing an outdated page and cleaning up navigation and redirects.
Run `npx skills add NVIDIA-NeMo/Curator --skill nemo-curator-docs -a claude-code`. Or copy the skill folder (.claude/skills/nemo-curator-docs in NVIDIA-NeMo/Curator) into .claude/skills/nemo-curator-docs in your project. Claude Code loads it when a task matches its description.
Run `npx skills add NVIDIA-NeMo/Curator --skill nemo-curator-docs -a codex`. Or copy the skill folder (.claude/skills/nemo-curator-docs in NVIDIA-NeMo/Curator) into .agents/skills/nemo-curator-docs in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add NVIDIA-NeMo/Curator --skill nemo-curator-docs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/nemo-curator-docs, .gemini/skills/nemo-curator-docs, .github/skills/nemo-curator-docs and .opencode/skills/nemo-curator-docs in your project.
Going by SKILL.md and its folder, NeMo Curator Docs Maintenance needs the command-line tools its instructions call (git, npm, python and python3) and credentials named FERN_TOKEN. Our summary lists: A checkout of the NeMo Curator repository with its `fern/` docs tree.
SKILL.md names 2 domains. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. As links in the text: buildwithfern.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
NeMo Curator Docs Maintenance is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.3k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with NeMo Curator Docs Maintenance: Release Docs Sync (UfoMiao/zcf, 6.1k stars), Doc Sync (JetBrains/ideavim, 10k stars), Mermaid Diagrams (jjmartres/opencode, 133 stars) and Acquire Codebase Knowledge (github/awesome-copilot, 40k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
NVIDIA-NeMo (a GitHub organization) maintains it in NVIDIA-NeMo/Curator, which has 1,802 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 7, 2026.
Source: NVIDIA-NeMo/Curator on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.