update-project-version
Skill73 starsChanged 58 days agoApache-2.0View on GitHub
Update the NVIDIA NeMo Fabric release version across Cargo, Python, and TypeScript package metadata, internal Python dependency pins, integration metadata, and lockfiles. Use when bumping, synchronizing, or auditing NeMo Fabric package versions for a release.
1 other project uses a version of this.
Adopted by
Most recently taken up by
- NVIDIA/NeMo-Relaytheir own version, first seen Sep 8, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- NVIDIA/NeMo-Relay★ 238same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository25 other files it gives its agents.
- AGENTS.mdAGENTS.md
- check-release-deploymentsSkill
- contribute-adapterSkill
- contribute-apiSkill
- contribute-docsSkill
- create-beta-tagSkill
- create-rc-tagSkill
- create-release-tagSkill
- draft-release-notesSkill
- karpathy-guidelinesSkill
- maintain-ciSkill
- maintain-packagingSkill
- prepare-code-freezeSkill
- prepare-prSkill
- python-testsSkill
- qualify-harborSkill
- review-doc-styleSkill
- small-fixSkill
- validate-changeSkill
- code-reviewSkill
- swebench-debuggingSkill
- nemo-fabric-build-adapterSkill
- nemo-fabric-integrateSkill
- alternateSkill
- defaultSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
13 rules. About 0 are common, 3 are distinctive, and 10 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
10
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 13
Use karpathy-guidelines alongside this skill for implementation or review work.
- Distinctive: line 17
Use this skill when changing the NeMo Fabric version, including pre-release or build-metadata variants used during packaging.
- Very specific: line 25
Keep Cargo.toml [workspace.dependencies] self-references aligned when the workspace version changes.
- Distinctive: line 38
Keep internal Python package requirement pins aligned with the Python release version:
- Very specific: line 44
Keep adapter-contract/typescript/package.json and the root package entries in its package-lock.json aligned with the Cargo SemVer release …
- Very specific: line 55
Read the current version from Cargo.toml and decide the exact Cargo, Python, and TypeScript target version strings.
- Very specific: line 57
Run just set-version <cargo-version>.
- Very specific: line 64
Every internal nemo-fabric-* exact-version requirement
- Distinctive: line 73
If editing the helper code, keep these contracts aligned:
- Very specific: line 101
Run just build-python to verify all Python package metadata resolves.
- Very specific: line 102
Run just test-python when the integration version or Python packaging behavior changes materially.
- Very specific: line 104
Run just wheels for release-facing validation of every Python wheel.
- Very specific: line 105
Run just pack-typescript to verify the stamped TypeScript package metadata.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Update Project Version
Companion Guidance
Use karpathy-guidelines alongside this skill for implementation or review
work. Keep changes scoped, surface assumptions, and define focused validation
before editing.
Use this skill when changing the NeMo Fabric version, including pre-release or build-metadata variants used during packaging.
Source Of Truth
Cargo.toml[workspace.package].versionis the source of truth for the Rust workspace and the release version stamped into Python and TypeScript package metadata.- Keep
Cargo.toml[workspace.dependencies]self-references aligned when the workspace version changes. sdk/python/nemo-fabric-runtime/pyproject.tomlis the exception among the Python projects: do not add a literalproject.version. Keepproject.dynamic = ["version"]because Maturin derivesnemo-fabric-runtime's version fromcrates/fabric-python/Cargo.toml, which inherits the workspace version.- The setuptools projects do not derive their versions from Cargo. Update the
literal
project.versionin every one of these files:sdk/python/nemo-fabric/pyproject.tomlsdk/python/nemo-fabric-evidence/pyproject.tomladapter-contract/python/pyproject.tomladapters/python/*/pyproject.toml
- Keep internal Python package requirement pins aligned with the Python release
version:
- The unconditional
nemo-fabric-runtime == <version>dependency in the publishedsdk/python/nemo-fabric/pyproject.toml. - All
nemo-fabric-* == <version>requirements in its optional dependencies. - Each adapter's
nemo-fabric-adapters-common == <version>dependency.
- The unconditional
- Keep
adapter-contract/typescript/package.jsonand the root package entries in itspackage-lock.jsonaligned with the Cargo SemVer release version.
For a normal release, use the same X.Y.Z string everywhere. For a prerelease
or build-metadata version, use valid Cargo SemVer in Cargo.toml and the
equivalent PEP 440 version in explicit Python metadata. Confirm that the
Maturin-built runtime and setuptools-built packages resolve to equivalent
versions rather than blindly copying incompatible syntax.
Workflow
- Read the current version from
Cargo.tomland decide the exact Cargo, Python, and TypeScript target version strings. - Run
just set-version <cargo-version>. The recipe preserves the normalized SemVer for Cargo and TypeScript, converts it to PEP 440 for Python, and updates:Cargo.toml[workspace.package].versionCargo.tomlworkspace.dependencies.nemo-fabric-core.version- The setuptools
project.versionin the published SDK metapackage, shared Python contract, Python adapter contract, and every adapterpyproject.toml - Every internal
nemo-fabric-*exact-version requirement - The TypeScript adapter-contract
package.jsonandpackage-lock.json Cargo.lockthrough Cargo metadata resolution- The root, runtime, and adapter
uv.lockfiles throughjust lock-python
- Confirm that
sdk/python/nemo-fabric-runtime/pyproject.tomlremains dynamic and unchanged. - Audit references to the old version with targeted searches. Distinguish package-version surfaces from examples and unrelated dependency versions.
If editing the helper code, keep these contracts aligned:
set_project_versionmust call the Cargo, Python, and TypeScript project version helpers.set_cargo_workspace_versionmust update the workspace version and thenemo-fabric-coreworkspace dependency, then verify everynemo-fabric-*workspace package through Cargo metadata.set_python_project_versionsmust update the published SDK metapackage, shared Python contract, Python adapter contract, every adapterpyproject.tomldiscovered underadapters/python/, and all internal exact-version pins while rejecting a static version insdk/python/nemo-fabric-runtime/pyproject.toml.set_typescript_project_versionmust update the package manifest and both root version entries in the npm lockfile without changing dependency versions.- The
set-versionrecipe must runjust lock-pythonafter source metadata is updated.
Validation
- Inspect Cargo version fields:
rg -n '^version =|nemo-fabric-core = \{ path = .*version =' Cargo.toml - Inspect explicit Python versions and internal pins:
rg -n '^version =|nemo-fabric-[a-z-]+(?:\[[^]]+\])? == ' pyproject.toml sdk adapter-contract/python adapters/python --glob 'pyproject.toml' - Confirm the runtime remains dynamic:
rg -n 'dynamic = \["version"\]' sdk/python/nemo-fabric-runtime/pyproject.toml - Inspect the TypeScript package and lockfile root versions:
rg -n '"version":' adapter-contract/typescript/package{,-lock}.json - Run
cargo check --workspace --locked. - Run
just build-pythonto verify all Python package metadata resolves. - Run
just test-pythonwhen the integration version or Python packaging behavior changes materially. - Run
just wheelsfor release-facing validation of every Python wheel. - Run
just pack-typescriptto verify the stamped TypeScript package metadata. - Run
git diff --check.
Avoid
- Updating only
Cargo.tomland leaving the setuptools packages stale. - Adding a literal version to
sdk/python/nemo-fabric-runtime/pyproject.toml; Maturin owns that version. - Updating Python package versions without their exact internal dependency pins.
- Forgetting
Cargo.lock, the rootuv.lock, or per-projectuv.lockfiles. - Updating the TypeScript package manifest without its npm lockfile root entry.
- Blind repository-wide replacement of version-like strings.
References
Cargo.tomlCargo.lockpyproject.tomluv.locksdk/python/nemo-fabric/pyproject.tomlsdk/python/nemo-fabric/uv.locksdk/python/nemo-fabric-runtime/pyproject.tomlsdk/python/nemo-fabric-runtime/uv.locksdk/python/nemo-fabric-evidence/pyproject.tomlsdk/python/nemo-fabric-evidence/uv.lockadapter-contract/python/pyproject.tomladapter-contract/python/uv.lockadapters/python/*/pyproject.tomladapters/python/*/uv.lockadapter-contract/typescript/package.jsonadapter-contract/typescript/package-lock.jsonjustfile
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
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.

