contribute-adapter
Menambahkan atau mengubah secara substansial adaptor harness NeMo Fabric, termasuk arsitekturnya, klaim deskriptor, wiring paket, pemetaan kapabilitas dan kebijakan,…
npx skills add https://github.com/nvidia/nemo-fabric --skill contribute-adapterContribute a First-Party NVIDIA NeMo Fabric Adapter
Use the public
nemo-fabric-build-adapter
skill for adapter-contract semantics, descriptor design, configuration mapping,
lifecycle behavior, and conformance evidence. This maintainer skill adds only
the repository integration required for adapters shipped by NVIDIA NeMo
Fabric.
Do not use this skill for a consumer that selects an existing adapter. Use the
consumer nemo-fabric-integrate skill instead.
Companion Guidance
Use karpathy-guidelines to keep the change scoped, python-tests for test
design, maintain-packaging for package or dependency changes,
contribute-docs and review-doc-style for public text, validate-change for
the validation matrix, and prepare-pr for review handoff.
Repository Integration
Follow these repository-specific requirements after applying the public skill:
- Place the adapter under
adapters/<name>/withLICENSE -> ../../LICENSE,README.md,<name>.fabric-adapter.json, language-native package and lock files, a source entry point, and focused tests. - Give each Python leaf adapter a small base installation, a
harnessextra for package-installable target packages, and afullextra for package-installable integrations. The Hermes adapter is the sole source-only exception and omitsharness. Add arelayextra only when the adapter imports NVIDIA NeMo Relay Python APIs. - Add one canonical root extra that delegates to the matching leaf adapter
and its
harnessextra. The Hermes root extra delegates to the bare adapter because users install Hermes Agent separately from source. Keepnemo-fabric-runtimean exact-version, unconditional root dependency. - Add the package to the root adapter-test dependency group,
[tool.uv.sources],python_projectsinjustfile, applicable catalogs, and CI enumerations. Ship its descriptor undershare/nemo-fabric/adapters/<name>. - Regenerate lockfiles and inspect the root and leaf wheel metadata. Verify root-to-leaf delegation and every published leaf extra.
Keep descriptor claims, implementation, focused tests, public documentation, catalog entries, and packaged metadata synchronized. Start with the narrowest truthful capability set.
Repository Evidence
In addition to the evidence required by the public skill, include:
- A subprocess test of the packaged entry point.
- Exact descriptor assertions for every claimed capability.
- A credential-free fixture that exercises
plan,doctor, andrun. - Wheel inspection when package data, dependencies, or extras change.
- Deterministic CI coverage; keep credentialed live-target tests opt-in.
Validation
Use validate-change to select the complete matrix. The common adapter checks
are:
uv sync --group adapter-tests
uv run --no-sync pytest tests/adapters/test_<name>*.py
just test-python
just lock-python && just wheels
just schemas
cargo fmt --all -- --check && just test-rust
just docs
uv run pre-commit run --all-files --show-diff-on-failure
git diff --check
References
- Public contract:
docs/adapter-contract/andschemas/adapter-contract/. - Descriptor schema:
schemas/adapter-contract/adapter-descriptor.schema.json. - Repository packaging: root
pyproject.toml,justfile, adapter catalogs, and CI workflows. - Shared first-party host patterns:
adapters/common/and the closest adapter with the same target boundary.