When --channels asks for an entry of the form plugin:<name>@<marketplace>, Claude Code now also checks that the installed plugin's own name matches the name you gave. For development channels the names must match exactly. Otherwise a looser comparison is used.
The allowlist lookup now uses the installed plugin's own name and marketplace. When a channel is skipped, the message names the installed plugin as name@marketplace, or says it is from an unknown source.
Why
A channel is only loaded when the plugin actually installed is the one you asked for. If it is skipped, the message shows both what you requested and what is installed, so the mismatch is easy to spot.
How sure we are
One source agreesOne thing we can check says the same as this entry.
Anthropic's release notes agreeFixed --channels plugin entries being checked against the installed plugin's marketplace alone; the installed plugin's name must now match…