Skip to content

Plugin catalog: nvidia-app and nvidia-broadcast (official, Windows only) - #119265

Merged
alt-glitch merged 1 commit into
mainfrom
feat/catalog-nvidia-plugins
Sep 22, 2026
Merged

alt-glitch merged 1 commit into
mainfrom
feat/catalog-nvidia-plugins

Conversation

@alt-glitch

Copy link
Copy Markdown

Two NVIDIA plugins join the catalog: nvidia-app and nvidia-broadcast, Windows only, official tier.

What they are

Portable Agent Plugins (no Python of their own) from NousResearch/hermes-nvidia, one per NVIDIA application,
each in its own subdirectory of the repo, both pinned to 5023f3a4ea. Each carries one MCP server entry
(the vendor's own local server), one skill, and an application declaration under
plugin.json → extensions["com.nousresearch.hermes"].servers.

entry app it needs how the server is reached tools seen live
nvidia-app NVIDIA App ≥ 11.0 endpoint + token re-read from the app's own McpServer/server.json on every connection 12
nvidia-broadcast NVIDIA Broadcast ≥ 2.3 loopback gateway, 18100-18109; needs the app running in the user's desktop session 10

What gates them

flowchart LR
  A["hermes plugins install nvidia-app<br/>(or the catalog card / deep link)"] --> B{"platforms: [windows]<br/>catalog gate"}
  B -- other OS --> R1["refused: unsupported_os"]
  B -- Windows --> C{"declaration:<br/>app present ≥ min version?"}
  C -- no --> R2["refused before the swap:<br/>missing_app / version_too_old"]
  C -- yes --> D["installed + enabled"]
  D --> E{"liveness at connect time"}
  E -- app running --> F["tools registered"]
  E -- not running --> G["card pill + catalog line:<br/>'start NVIDIA Broadcast'"]
Loading

The catalog platforms field is the coarse gate (plugins_cmd_catalog.py::_refuse_unsupported_catalog_platform);
the per-server declaration is the fine one (NS-942, #119049). Neither launches anything.

Evidence

Two real Windows machines, real sessions, upstream main:

machine result
ARM64 laptop (vendor drop builds) MCP: registered 22 tool(s) from 2 server(s)
x64 desktop (RTX 5090) same 22/2 from the temp-home run; then installed from the desktop deep link into the real profile, model called NVIDIA App tools; Broadcast correctly reported not running (it cannot start inside an RDP session)
this Mac hermes plugins validate → server availability: … unsupported_os, install refused

Rows with timestamps are in the plugin repo's EVIDENCE.md.

Expected CI state

  • validate job (schema + static checks): green, 240 entries.
  • pinned-sha job: red for these two entries until the repo is public. It does a plain git clone on a
    public runner; the repo is private until release. That is the only expected failure. Flip the repo public, re-run,
    and the job clones and validates at the pin.

Notes for the reviewer

  • Tool names: on current main these register as mcp__agent_plugin_nvidia_app_<sha8>__nvidia_app__…, over 64
    chars and hash-clamped. Portable plugin MCP tools keep their names instead of a hash (64-char provider cap) #119263 fixes the loader namespace so they come out as
    mcp__nvidia_app__nvapp_client_get_driver_status. Independent of this PR; better together.
  • security scan — caution on nvidia-broadcast: one line in the vendor skill (dump_all_env, a documented
    troubleshooting step). Read at admission per catalog rule 7; a catalog install accepts it without a prompt.

…ows only)

Two portable Agent Plugins from NousResearch/hermes-nvidia, one per NVIDIA application, each in its
own subdir of the repo and pinned to 5023f3a4ea. Both declare the application they need through
the plugin.json extensions namespace: install is refused when the app is absent or too old
(NS-942), and the tools appear only while the app is running (NS-943). `platforms: [windows]` is
the catalog-level gate; the declaration is the per-server gate.

Proven live on two Windows machines (ARM64 laptop and x64 desktop): 12 NVIDIA App tools and
10 NVIDIA Broadcast tools registered from real sessions; the x64 desktop installed the package from
the desktop deep link and the model called the tools. The evidence rows are in the plugin repo.

The repository is private until release. The catalog CI clone step is expected to fail for these
two entries until the repo is flipped public; the static validation job passes (240 entries).
@github-actions

github-actions Bot commented Sep 22, 2026 •

Copy link
Copy Markdown

૮ >ﻌ< ა ci review

ran on 47b1077 — feat(plugin-catalog): nvidia-app and nvidia-broadcast (offic

debug info

CI timings

CI timings · View report · View job

Wall time 5m51s vs 6m19s (-7.4%). 7 job(s) slower, 3 faster, 2 unchanged.

  • Python tests / Run tests: -60.0s
  • OS-specific tests / macOS-only tests: -16.0s
  • Python tests / e2e: +13.0s
  • Python lints / Windows footguns (blocking): +10.0s
  • Detect affected areas: +10.0s

@alt-glitch
alt-glitch merged commit abfa59a into main Sep 22, 2026
35 of 36 checks passed
@alt-glitch
alt-glitch deleted the feat/catalog-nvidia-plugins branch September 22, 2026 16:26
@alt-glitch alt-glitch added type/feature New feature or request P3 Low — cosmetic, nice to have Plugin Catalog Plugin catalog entries, discovery, metadata, and catalog management platform/windows Native Windows-specific behavior or breakage labels Sep 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

P3 Low — cosmetic, nice to have platform/windows Native Windows-specific behavior or breakage Plugin Catalog Plugin catalog entries, discovery, metadata, and catalog management type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant