--- id: plugin-infrastructure/a-plugin-cannot-claim-a-websocket-provider title: "A plugin cannot claim a WebSocket provider" theme: plugin-infrastructure status: open created: 2026-08-21 date_source: stated order: 1 --- **A plugin cannot claim a WebSocket provider.** `pluginPermissions` in mount.ts sets `api` and `routes` and never `ws`, and `server.tsx`'s handler map is a literal — so a plugin's socket has no door. The desktop plugin ships one that cannot be mounted (`plugins/desktop/BLOCKERS.md` §2), and it will not be the last: agreed 2026-08-21 that this is real infrastructure to build, not a per-plugin workaround.