maintain-dynamic-plugins

Featured

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.

AI & Automation 177 stars 75 forks Updated today Apache-2.0

Install

View on GitHub

Quality Score: 90/100

Stars 20%
75
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# 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. ## Rules - Keep the stable boundary explicit: native plugins cross a C ABI; worker plugins cross `grpc-v1`. - Do not pass Rust runtime types, trait objects, futures, or allocator-owned strings across the native dynamic-library boundary. - Typed native middleware futures run on the SDK-owned Tokio executor. Keep subscribers synchronous and preserve raw synchronous ABI registrations. - Define closed worker transport structures in protobuf when generated clients must enforce their fields. Keep open application payloads lossless by using `JsonValue` or `JsonEnvelope` rather than `google.protobuf.Value`. - Keep `relay-plugin.toml` dynamic records separate from generic runtime components. Enabled dynamic records may synthesize internal component specs; disabled records stay inspectable but unloaded. - Relay 0.8 establishes the native API 1 and `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. - Treat `compat.relay` as the plugin author's compatibility assertion, not proof that an artifact was rebuilt. Do not add a legacy raw-result adap...

Details

Author
NVIDIA
Repository
NVIDIA/NeMo-Relay
Created
5 months ago
Last Updated
today
Language
Rust
License
Apache-2.0

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category