Official agent skill

Maintain Dynamic Plugins

by NVIDIA in NVIDIA/NeMo-Relay

Change NeMo Relay dynamic plugin loaders, manifests, native ABI, gRPC worker protocol, or Python worker SDK.

OfficialApache-2.0Auto-check passedBackend & APIs

Install Maintain Dynamic Plugins

skills CLI
$ npx skills add NVIDIA/NeMo-Relay --skill maintain-dynamic-plugins -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install NVIDIA/NeMo-Relay maintain-dynamic-plugins --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/NVIDIA/NeMo-Relay.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/maintain-dynamic-plugins .claude/skills/maintain-dynamic-plugins && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
maintain-dynamic-plugins
GitHub stars
190
Token cost
~1.2k tokens
SKILL.md length
523 words
Files
1
Skills in repo
30
Repo updated
First seen
Licence
Apache-2.0

At a glance

Change NeMo Relay dynamic plugin loaders, manifests, native ABI, gRPC worker protocol, or Python worker SDK.

  • Ordinary built-in plugin configuration
  • SKILL.md covers Rules, Checklist, Validation and References
  • Calls just
  • Tasks that involve gRPC and Protobuf

What it does

Maintain Dynamic Plugins is an agent skill from NVIDIA/NeMo-Relay, published by the product's own GitHub organization. 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.

Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Backend & APIs, covering gRPC and Protobuf. It works with gRPC, Python and Rust. The repository describes itself as: Multi-language agent runtime and library for execution scope management, lifecycle events, and middleware on tool and LLM calls. The licence is Apache-2.0.

When your agent uses it

  • Ordinary built-in plugin configuration
  • Tasks that involve gRPC and Protobuf

Example prompts

  • “/maintain-dynamic-plugins”

Requirements

  • Python 3

What it can do on your machine

Read from SKILL.md and the folder at commit 651453f. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • just

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Maintain Dynamic Plugins loads about 1.2k tokens when it runs. Until then it costs about 47 tokens; SKILL.md has 523 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~47
When it runs · the whole SKILL.md, loaded when a task matches
~1.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from NVIDIA/NeMo-Relay at commit 651453f, republished under its Apache-2.0 licence (© NVIDIA). 523 words, ~1,152 tokens.

Download SKILL.mdSave it as .claude/skills/maintain-dynamic-plugins/SKILL.md (or your agent's skills folder).
name
maintain-dynamic-plugins
description
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.
license
Apache-2.0

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 adapter.
  • Relay 0.8 retains the 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.
  • Do not add tests under src; Rust tests belong in crate tests/ trees and Python SDK tests belong under python/tests.
  • Native and worker plugins are trusted extensions. Document that native plugins are in-process and unsandboxed; worker plugins provide process isolation but not a security sandbox.
Show full SKILL.md (237 more words)Show less

Checklist

  • Manifest validation covers kind, compatibility, load contract, integrity, capability mismatch, and disabled-plugin behavior.
  • Native loader keeps libraries alive until registered callbacks are cleared and deregisters plugin kinds before unload.
  • Worker activation covers process launch, token auth, handshake, validation, declarative registration, proxy rollback, cancellation, and shutdown.
  • Rust and Python SDKs expose every supported registration surface.
  • Runtime helpers cover marks, scopes, continuations, and isolated scope stacks.
  • plugins list, plugins inspect, and plugins validate report lifecycle and compatibility status without leaking secret config.
  • Top-level doctor reports resolved dynamic plugin and host configuration status.
  • When detailed dynamic plugin guides exist, they keep Rust native, Python worker, and grpc-v1 protocol details on separate pages.
  • justfile, Codecov, and CI package/test workflows include new plugin crates and packages.

Validation

Choose checks by the changed layer:

  • Manifest or shared types: test the owning Rust crate.
  • Native loader or ABI: prepare plugin fixtures and run the focused native plugin integration test.
  • Worker protocol or host: test the worker crates and regenerate or test the Python worker SDK only when its protocol surface changes.
  • Shared runtime behavior: run the Rust suite and only binding suites whose observable plugin behavior changes.
  • Documentation or packaging: run their targeted checks only when changed.

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.

References

  • crates/core/src/plugin/dynamic/
  • crates/plugin
  • crates/worker
  • crates/worker-proto
  • crates/types
  • python/plugin
  • examples/rust-native-plugin
  • docs/build-plugins
  • examples/python-grpc-worker-plugin

© NVIDIA, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/maintain-dynamic-plugins of NVIDIA/NeMo-Relay.

Open the folder on GitHubat commit 651453f

Compare with similar skills

Maintain Dynamic Plugins next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Maintain Dynamic Plugins compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Maintain Dynamic Plugins this skillNVIDIA/NeMo-Relay190—~1.2kAutomated safety check: PassApache-2.0
Databricks Zerobus Ingestdatabricks/databricks-agent-skills345—~3.1kAutomated safety check: PassCustom licence
Doca Flow Grpc ServerNVIDIA/skills3.5k—~4.2kAutomated safety check: PassApache-2.0
Adding Personhog RpcPostHog/posthog-foss721—~2.1kAutomated safety check: PassMIT
Regenerate Grpc StubsGetBindu/Bindu10k—~810Automated safety check: PassCustom licence
Spider Kingaoyunyang/spider-king-skill507—~7.3kAutomated safety check: PassMIT

Similar skills

  • Databricks Zerobus Ingest

    databricks/databricks-agent-skills

    Official

    Build Zerobus Ingest clients for near real-time data ingestion into Databricks Delta tables via gRPC.

    345 GitHub stars~3.1k tokensUpdated yesterday
    Backend & APIsAuto-check passed
  • Official

    PLAINTEXT-ONLY: the shipped docaflowgrpc server uses grpc::InsecureServerCredentials() with NO TLS / mTLS / token-auth knob on the binary — transport security must come from external infrastructure…

    3.5k GitHub stars~4.2k tokensUpdated today
    Backend & APIsAuto-check passed
  • Adding Personhog Rpc

    PostHog/posthog-foss

    Official

    Guide for adding a new RPC to personhog-replica and personhog-router.

    721 GitHub stars~2.1k tokensUpdated today
    Backend & APIsAuto-check passed
  • Regenerate Grpc Stubs

    GetBindu/Bindu

    Regenerate Python + TypeScript gRPC stubs after editing proto files.

    10k GitHub stars~810 tokensUpdated 1 mo ago
    Backend & APIsAuto-check passed
  • Spider King

    aoyunyang/spider-king-skill

    Pure-web protocol reverse skill: turn hostile browser clients into browser-free Python collectors.

    507 GitHub stars~7.3k tokensUpdated 1 mo ago
    Backend & APIsAuto-check passed
  • Dev Rules

    rust-dd/tako

    General coding-style rules to apply to every project. An agent skill from rust-dd/tako.

    162 GitHub stars~810 tokensUpdated 6 days ago
    Backend & APIsAuto-check passed

More from NVIDIA/NeMo-Relay

All 30 skills in this repo
  • Draft Release Notes

    NVIDIA/NeMo-Relay

    Official

    Compare NeMo Relay release refs and draft the current documentation release-notes page from verified repository evidence.

    190 GitHub stars~575 tokensUpdated today
    Auto-check passed
  • Official

    A skill your agent uses when migrating applications, examples, integrations, documentation, manifests, or repository code from NeMo Flow to NeMo Relay across Python, Rust, Node.js, Go, C FFI, CLI…

    190 GitHub stars~1.8k tokensUpdated today
    Auto-check passed
  • Add Middleware

    NVIDIA/NeMo-Relay

    Official

    Add a new NeMo Relay guardrail or intercept type, registration surface, or pipeline stage.

    190 GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Contribute Docs

    NVIDIA/NeMo-Relay

    Official

    Author or edit NeMo Relay documentation or examples when repository-specific MDX, public API, integration, or release-history conventions matter.

    190 GitHub stars~710 tokensUpdated today
    Auto-check passed
  • Maintain CI

    NVIDIA/NeMo-Relay

    Official

    Change or review NeMo Relay GitHub Actions workflows where permissions, pinned actions, caching, reusable workflows, or release gates require repository-specific handling.

    190 GitHub stars~1k tokensUpdated today
    Auto-check passed
  • Nemo Relay Install

    NVIDIA/NeMo-Relay

    Official

    A skill your agent uses when choosing or running NeMo Relay installation for the CLI, Python, Node.js, Rust, OpenClaw, or maintained framework integrations, or when explaining Hermes Agent's…

    190 GitHub stars~1.7k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Maintain Dynamic Plugins

What does Maintain Dynamic Plugins do?

Change NeMo Relay dynamic plugin loaders, manifests, native ABI, gRPC worker protocol, or Python worker SDK. Maintain Dynamic Plugins is an agent skill from NVIDIA/NeMo-Relay, published by the product's own GitHub organization. Change NeMo Relay dynamic plugin loaders, manifests, native ABI, gRPC worker protocol, or Python worker SDK.

When should I use Maintain Dynamic Plugins?

Maintain Dynamic Plugins fits situations like: ordinary built-in plugin configuration; tasks that involve gRPC and Protobuf.

How do I install Maintain Dynamic Plugins in Claude Code?

Run `npx skills add NVIDIA/NeMo-Relay --skill maintain-dynamic-plugins -a claude-code`. Or copy the skill folder (.agents/skills/maintain-dynamic-plugins in NVIDIA/NeMo-Relay) into .claude/skills/maintain-dynamic-plugins in your project. Claude Code loads it when a task matches its description.

How do I install Maintain Dynamic Plugins in Codex?

Run `npx skills add NVIDIA/NeMo-Relay --skill maintain-dynamic-plugins -a codex`. Or copy the skill folder (.agents/skills/maintain-dynamic-plugins in NVIDIA/NeMo-Relay) into .agents/skills/maintain-dynamic-plugins in your project. Codex loads it when a task matches its description.

Can I use Maintain Dynamic Plugins in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add NVIDIA/NeMo-Relay --skill maintain-dynamic-plugins -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/maintain-dynamic-plugins, .gemini/skills/maintain-dynamic-plugins, .github/skills/maintain-dynamic-plugins and .opencode/skills/maintain-dynamic-plugins in your project.

What does Maintain Dynamic Plugins need to run?

Going by SKILL.md and its folder, Maintain Dynamic Plugins needs the command-line tools its instructions call (just). Our summary lists: Python 3.

Does Maintain Dynamic Plugins access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Maintain Dynamic Plugins safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Maintain Dynamic Plugins use?

Maintain Dynamic Plugins is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Maintain Dynamic Plugins use?

About 1.2k tokens (SKILL.md is roughly 4.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Maintain Dynamic Plugins?

Skills that share tags, products or a category with Maintain Dynamic Plugins: Databricks Zerobus Ingest (databricks/databricks-agent-skills, 345 stars), Doca Flow Grpc Server (NVIDIA/skills, 3.5k stars), Adding Personhog Rpc (PostHog/posthog-foss, 721 stars) and Regenerate Grpc Stubs (GetBindu/Bindu, 10k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Maintain Dynamic Plugins?

NVIDIA (a GitHub organization, an official publisher) maintains it in NVIDIA/NeMo-Relay, which has 190 GitHub stars. The repository holds 30 skills in this directory. The repository was last updated on October 7, 2026.

Source: NVIDIA/NeMo-Relay on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.