agentleFS
NVIDIAKnown publisherNVIDIA/NeMo-Fabric/.agents/skills/draft-release-notes/SKILL.md

draft-release-notes

Skill73 starsChanged 57 days agoApache-2.0View on GitHub

Compare NVIDIA NeMo Fabric release refs and draft the authoritative GitHub Release body plus any warranted documentation-site release-note update. Use when preparing a stable release, creating patch-release notes, updating docs/about-nemo-fabric/release-notes.mdx, or gathering verified release evidence.

  • Commits and pushes

9 other projects use a version of this, 1 of them edited.

Adopted by

Most recently taken up by

The file

Show its rules and text

We split this skill into the rules it gives an agent

17 rules. 0 are common, 10 are distinctive, and 7 are very specific to this project.

  • 0

    Common

    Most of the 9 edited versions we read keep these.

  • 10

    Distinctive

    This author's own choices. Worth a look.

  • 7

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Run the read-only helper with explicit release refs and the exact target release version:

    line 16
  2. Very specific:

    If the user supplied a version, derive release/<major>.<minor> and check out that branch.

    line 36
  3. Very specific:

    If the user did not supply a version, require the current branch to match release/<major>.<minor>.

    line 38
  4. Very specific:

    Read the target version from Cargo.toml.

    line 41
  5. Distinctive:

    Create a new local branch from the release branch for the release-notes work.

    line 74
  6. Distinctive:

    Run the helper. It reports an absent prior release-notes page without failing, which is expected for early release branches.

    line 80
  7. Distinctive:

    Verify each candidate claim in the changed public docs, API types, command help, or source before including it.

    line 82
  8. Distinctive:

    Update only this page unless the release changes its route or entry point:

    line 87
  9. Distinctive:

    Leave it unchanged when a patch release does not alter the documentation-visible summary, compatibility guidance, support status, or …

    line 89
  10. Distinctive:

    Keep the existing page role:

    line 92
  11. Very specific:

    Update the Roadmap section in README.md, removing items implemented or fixed by changes in the current release.

    line 99
  12. Distinctive:

    Run the validation checks detailed in Validate.

    line 100
  13. Very specific:

    If docs/about-nemo-fabric/release-notes.mdx or README.md changed, commit the release-notes page and README with a signed-off commit after …

    line 101
  14. Very specific:

    If docs/about-nemo-fabric/release-notes.mdx or README.md changed, use the prepare-pr skill to open a pull request from the release-notes …

    line 110
  15. Very specific:

    If docs/about-nemo-fabric/release-notes.mdx and README.md are unchanged, skip steps 11 and 12.

    line 118
  16. Distinctive:

    Run the helper for the target release and review every public claim.

    line 123
  17. Distinctive:

    Check product names, commands, package names, support claims, and links against the current repository before handing off the draft.

    line 131

“Common” is measured: kept by at least 6 in 10 of the 9 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Draft Release Notes

Draft release notes from verified repository evidence. Keep complete, tag-specific release history in GitHub Releases. Update the documentation-site release-notes page only when the documentation-visible release summary changes.

Gather Evidence

Run the read-only helper with explicit release refs and the exact target release version:

python3 .agents/skills/draft-release-notes/scripts/collect_release_evidence.py \
  --previous <previous-release-tag-or-branch> \
  --current HEAD \
  --version <release-version>

For a patch release, use the previous stable tag as --previous. For a new release line, use the previous release branch or tag. The report verifies both refs, inspects the release-notes page at each ref, identifies version text, and groups commits into review candidates. Treat the groups as an evidence index, not publication-ready copy.

Workflow

  1. Establish the release branch and target version. Preserve unrelated working-tree changes; do not stash or discard them.

    • If the user supplied a version, derive release/<major>.<minor> and check out that branch.
    • If the user did not supply a version, require the current branch to match release/<major>.<minor>; do not infer a release line from package metadata or Git history.
    • Read the target version from Cargo.toml. When the user supplied a version, require it to match the package version.
    RELEASE_VERSION_INPUT="${RELEASE_VERSION_INPUT:-}"
    if [[ -n "${RELEASE_VERSION_INPUT}" ]]; then
      if [[ ! "${RELEASE_VERSION_INPUT}" =~ ^[0-9]+\.[0-9]+(\.[0-9]+)?$ ]]; then
        echo "Error: release version must be <major>.<minor> or <major>.<minor>.<patch>" >&2
        exit 1
      fi
      RELEASE_LINE="$(printf '%s' "${RELEASE_VERSION_INPUT}" | cut -d. -f1,2)"
      if [[ "${RELEASE_VERSION_INPUT}" =~ ^[0-9]+\.[0-9]+$ ]]; then
        EXPECTED_VERSION="${RELEASE_VERSION_INPUT}.0"
      else
        EXPECTED_VERSION="${RELEASE_VERSION_INPUT}"
      fi
      RELEASE_BRANCH="release/${RELEASE_LINE}"
      git switch "${RELEASE_BRANCH}"
    else
      RELEASE_BRANCH="$(git branch --show-current)"
      if [[ ! "${RELEASE_BRANCH}" =~ ^release/([0-9]+\.[0-9]+)$ ]]; then
        echo "Error: supply a release version or check out release/<major>.<minor>" >&2
        exit 1
      fi
      RELEASE_LINE="${BASH_REMATCH[1]}"
    fi
    
    TARGET_VERSION="$(python -c "import tomllib; print(tomllib.load(open('Cargo.toml', 'rb'))['workspace']['package']['version'])")"
    if [[ -n "${RELEASE_VERSION_INPUT}" ]] && [[ "${TARGET_VERSION}" != "${EXPECTED_VERSION}" ]]; then
      echo "Error: ${RELEASE_BRANCH} declares ${TARGET_VERSION}, not ${EXPECTED_VERSION}" >&2
      exit 1
    fi
  2. Create a new local branch from the release branch for the release-notes work. Let the command fail rather than replacing an existing branch:

    git switch -c "docs/create-release-notes-${TARGET_VERSION}" "${RELEASE_BRANCH}"
  3. Run the helper. It reports an absent prior release-notes page without failing, which is expected for early release branches.
  4. Verify each candidate claim in the changed public docs, API types, command help, or source before including it. Prioritize breaking changes, migrations, user-visible features, and ongoing support limitations.
  5. For a patch release, identify the affected behavior and state whether public APIs, configuration, or dependency contracts changed.
  6. Update only this page unless the release changes its route or entry point:
    • docs/about-nemo-fabric/release-notes.mdx Leave it unchanged when a patch release does not alter the documentation-visible summary, compatibility guidance, support status, or limitations.
  7. Keep the existing page role:
    • release-notes.mdx gives the current-release summary, compatibility notes, scope, and curated feature links.
    • release-notes.mdx groups notable changes by user-facing theme.
    • release-notes.mdx records current limitations.
  8. Preserve MDX front matter and the JSX SPDX comment. State the full history is available in GitHub Releases. Do not create a changelog.
  9. Update the Roadmap section in README.md, removing items implemented or fixed by changes in the current release.
  10. Run the validation checks detailed in Validate.
  11. If docs/about-nemo-fabric/release-notes.mdx or README.md changed, commit the release-notes page and README with a signed-off commit after validation succeeds:

    git add docs/about-nemo-fabric/release-notes.mdx README.md
    git commit -sm "Drafting release notes for v${TARGET_VERSION}"
    git push -u upstream HEAD
  12. If docs/about-nemo-fabric/release-notes.mdx or README.md changed, use the prepare-pr skill to open a pull request from the release-notes branch to ${RELEASE_BRANCH}. Use this title:

    docs: Release notes for v${TARGET_VERSION}

    If docs/about-nemo-fabric/release-notes.mdx and README.md are unchanged, skip steps 11 and 12. Do not create a release-notes commit or pull request.

Validate

Run the helper for the target release and review every public claim. If the documentation page changed, run:

git diff --check
just docs

Check product names, commands, package names, support claims, and links against the current repository before handing off the draft.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.