OverviewHistoryStatsSecurity
npx skills add ...
Documentation
SKILL.md
npx skills add nvidia/nemo-relay --skill maintain-dynamic-plugins
Change NeMo Relay dynamic plugin loaders, manifests, native ABI, gRPC worker protocol, or Python worker SDK. Do not use for ordinary built-in plugin configuration.
npx skills add nvidia/nemo-relay --skill maintain-dynamic-plugins
Use this skill for plugin.kind = "rust_dynamic", plugin.kind = "worker",
nemo-relay-plugin, nemo-relay-worker, nemo-relay-worker-proto,
nemo-relay-types, and the Python nemo-relay-plugin package.
grpc-v1.JsonValue or JsonEnvelope rather than google.protobuf.Value.relay-plugin.toml dynamic records separate from generic runtime
components. Enabled dynamic records may synthesize internal component specs;
disabled records stay inspectable but unloaded.grpc-v1 canonical
ToolExecutionResult baseline. Require every dynamic plugin to rebuild and
declare a compat.relay range that excludes versions before 0.8. Recommend
>=0.8.0,<1.0; open-ended or narrower 0.8-or-newer ranges are valid.compat.relay as the plugin author's compatibility assertion, not
proof that an artifact was rebuilt. Do not add a legacy raw-result adapter.grpc-v1 identifier and
nemo.relay.worker.v1 package while changing the tool-result protobuf types;
every worker must regenerate its bindings and rebuild. Native ABI v4 permits
append-only host-table extensions guarded by struct_size; existing fields
must remain frozen at their original offsets. Incompatible native JSON,
reordered or replaced native fields, or incompatible worker protobuf changes
must bump native_api or worker_protocol.src; Rust tests belong in crate tests/ trees and
Python SDK tests belong under python/tests.plugins list, plugins inspect, and plugins validate report lifecycle
and compatibility status without leaking secret config.doctor reports resolved dynamic plugin and host configuration
status.grpc-v1 protocol details on separate pages.justfile, Codecov, and CI package/test workflows include new plugin
crates and packages.Choose checks by the changed layer:
Canonical surface suites prepare plugin fixtures. Before a raw focused native
or worker integration test, run just build-test-plugin-fixtures; never compile
fixtures inside an individual test case.
crates/core/src/plugin/dynamic/crates/plugincrates/workercrates/worker-protocrates/typespython/pluginexamples/rust-native-plugindocs/build-pluginsexamples/python-grpc-worker-plugin