Plugins issues on Windows
Issues the maintainers labelled both platform:windows and area:plugins.
240 issues · 60 open · 180 resolved (75%) · first seen Jan 30, 2026
Is this getting better or worse?
This class of problem is converging. 100 new reports in the last 90 days vs 136 in the 90 before — -26%. The open backlog peaked at 60 in 2026-08 and sits at 60 today.
Derived by counting each matching issue from its creation date until it closed. First-party
computation over the anthropics/claude-code tracker — the trend is not published
anywhere upstream.
Which builds report this
144 of these reports name the Claude Code build they were running, spanning 78 releases. Heaviest reporters:
- Claude Code v2.1.92
- Claude Code v2.1.81
- Claude Code v2.1.227
- Claude Code v2.1.207
- Claude Code v2.1.200
- Claude Code v2.1.150
- Claude Code v2.1.78
- Claude Code v2.1.247
Report volume, not a defect count: an issue can mention a build without that build having caused the failure. Versions come from the version string in the bug-report template, matched against real published tags.
Do these get fixed?
Median time to close is 32 days across 180 closures. Of the 180 closures with a recorded reason, 23% were closed as completed and 139 as not-planned or duplicate. The most recent completed fix landed in 2026-08.
Workarounds reported by the community
100 of these issues post a workaround someone says worked. The highest-engagement ones:
- [BUG] userConfig prompt not shown during plugin install — substitution fails with "Missing required user configuration value
- …e values at all - Setting the value manually in under works as a workaround - The error message itself says "This should have been validated before variable substitution" — suggesting this is a known code path that was i…
Found in the description of #39827 · resolved - LSP tool: uv_spawn cannot find typescript-language-server despite being in PATH (Windows)
- …starting the Claude Code session does not resolve the issue Workaround None found. The LSP tool appears to use a different PATH resolution mechanism ( ) than the Bash tool.
Found in the description of #59114 · resolved - [BUG] Skills/commands with `disable-model-invocation: true` are hidden from agent, blocking user-initiated slash invocation
- …h plugin's user community has to independently discover the workaround ("just tell the agent to try anyway"). This becomes a de-facto hidden protocol. - In the linked previous issues, multiple users reported the same fri…
Found in the description of #50075 · resolved - [BUG] Local-scoped plugin fails to load on Windows with `plugin-cache-miss` due to case-sensitive `projectPath` comparison
- …nstalled and valid, while the VS Code extension reports . - Workaround confirmed: editing to change the drive letter to match the extension's launch case resolves the issue until the next install/update/enable operation.…
Found in the description of #74912 · still open - Cowork remote plugins: no path to force-update stale marketplace cache (Windows)
- …em serves stale marketplace content with no user-accessible workaround. Unlike the CLI plugin system (where users can the local marketplace clone per 29071), Cowork mounts remote plugins read-only from server-side infras…
Found in the description of #36700 · still open
Excerpts are quoted from the linked issue so you can judge relevance before opening it. Threads that only ask for a workaround, or report that there is none, are excluded. These are community suggestions, not official guidance from Anthropic — read the full thread before applying one.
Matching issues 1–100
Ranked by community engagement (reactions weighted over comments).
- remoteMarketplaceClient rejects all third-party plugin sources: 'External plugin sources are not yet supported'
- [BUG] userConfig prompt not shown during plugin install — substitution fails with "Missing required user configuration value
- MCP server 'claude_design' (frontend-design plugin): 404 Streamable HTTP error
- LSP tool: uv_spawn cannot find typescript-language-server despite being in PATH (Windows)
- [BUG] Skills/commands with `disable-model-invocation: true` are hidden from agent, blocking user-initiated slash invocation
- [BUG] Local-scoped plugin fails to load on Windows with `plugin-cache-miss` due to case-sensitive `projectPath` comparison
- pyright-lsp plugin fails with ENOENT uv_spawn on Windows
- Cowork remote plugins: no path to force-update stale marketplace cache (Windows)
- [BUG] Plugin management is broken in several connected ways (scope flag, UI writes to wrong scope, silent load failures, duplicate entries)
- LSP plugins fail on Windows: spawn ENOENT for npm global binaries
- [BUG] Plugin cache creates duplicate directories on every session when ~/.claude is a git repo
- [BUG] Windows: plugin-shipped MCP servers using bare `npx` fail with `spawn ENOENT` (LSP fix from #17312 missed the MCP spawn path)
- [Windows] --dangerously-load-development-channels does not enable inbound channel notifications
- --channels ignored — Discord plugin channel notifications not working (v2.1.81)
- [BUG] Project-scoped plugin installs (--scope project) load in CLI sessions but are silently ignored by the VS Code extension
- [BUG] Cowork plugin upload: server validation_errors[] swallowed — UI shows only generic "Plugin validation failed."
- Bug Report: Telegram Plugin Inbound Messages Broken on Windows
- [BUG] LSP plugin (csharp-ls) spawn fails with "unsafe location (current directory)" despite valid PATH resolution, then permanently disconnects the LSP MCP server
- [BUG] Telegram channel plugin tools disappear mid-session — Tool not found
- Three intertwined bugs in the Remote/Worktree feature: MCP push, gh ENOENT, plugin-setup hang
- [BUG] telegram bot not replying.
- [BUG] security-guidance plugin: `_glob_match` docstring says `**` matches any depth, but fnmatch implementation silently excludes top-level files from security rules
- [Bug] pdf-viewer plugin: local PDFs always rejected — MCP roots never populated + Windows file:// path mangling (C:\C:\...)
- [BUG] Windows: plugin lspServers bare command (e.g. pwsh, pyright-langserver) refused pre-spawn with 'not found or is in an unsafe location (current directory)' -- breaks official pyright-lsp plugin
- [BUG] Cowork slash commands return "Unknown skill" — affects custom org plugin skills AND built-in /feedback
- [BUG] [Cowork / Plugins] hooks.json silencieusement ignoré en mode Cowork
- plugin install fails on Windows when git is installed under user home directory (false "git not on PATH" error)
- [BUG] `marketplace add` silently overwrites existing marketplace when two repos declare the same marketplace name
- Hook runner doesn't properly quote ${CLAUDE_PLUGIN_ROOT} on Windows paths with spaces
- Telegram channel MCP server dies shortly after startup on Windows
- /plugin install fails on Windows with EBUSY rename errors (Defender real-time scan race)
- Slash-command menu returns zero matches when query contains `.` (regression 2.1.160 → 2.1.161)
- Plugin skills from custom/private marketplaces appear in slash menu but fail with "Unknown skill" on invocation
- Stale officialMarketplaceAutoInstallFailReason causes permanent "Failed to install Anthropic marketplace" banner when marketplace is already installed
- [BUG] ralph-loop Stop hook silently fails on Windows after Claude Code 2.1.126 (worked on 2.1.119)
- [BUG] Plugins fail to load after VSCode restart on Windows — marketplace directory wiped on each startup
- [BUG] --plugin-dir: Marketplace 'inline' not found in configuration
- [BUG] MCP servers, plugins, and credentials not persisting between sessions (Windows)
- Plugin safety: third-party plugins can silently disable auto_memory via env vars
- [plugin: ralph-loop] stop-hook.sh #!/bin/bash shebang fails on Windows + Git Bash
- Plugin hooks: CLAUDE_PLUGIN_ROOT not injected into hook subprocess environment
- [FEATURE] Desktop App: Route incoming Telegram plugin messages to active session (bidirectional support)
- Desktop app generates a new plugin hash dir on every remote SSH connection — plugins re-upload each time and accumulate indefinitely
- [BUG] Plugin hooks.json entries with shell-spawning command silently skipped on Windows; node-spawning entries trigger normally
- --channels flag never matches plugin server identifier — channel notifications always skipped
- Windows: Marketplace update permanently wedged by stale .bak directory (EPERM rename loop)
- Windows: claude mcp add breaks /c flag, Playwright MCP plugin fails — working workaround
- Telegram channel: notifications/claude/channel not delivered to CLI session on Windows
- --channels Discord plugin: duplicate replies per inbound message (multi-cycle re-processing)
- [BUG] Stop hook fails with EEXIST when plugin data directory already exists
- Channel plugin MCP server silently fails to start on restart
- Telegram plugin: inbound MCP notifications not reaching conversation (outbound works)
- [BUG] notifications/claude/channel MCP notifications silently dropped — channel plugins (Telegram, fakechat) non-functional
- [BUG] Channels are not currently available
- [BUG] Plugin skills not directly loaded when invoked via slash command — spawns unnecessary Explore agents
- [BUG] Plugin cache creates infinite recursive directories when marketplace.json and plugin.json coexist in same repo
- LSP: documentSymbol / hover / goToDefinition always return empty; workspaceSymbol works
- typescript-lsp plugin: semantic operations fail in Yarn 1 monorepos with hoisted dependencies
- ralph-loop plugin: hooks.json has invalid schema (causes Stop hook JSON validation error)
- [BUG] Orphaned temp_<epoch-ms> folders accumulate under ~/.claude/plugins/marketplaces
- Desktop: "Add from a repository" (custom plugin marketplace) gone from "+" — now opens Directory only (1.15962.1)
- [BUG] Plugins Installed UI nests only the first bundled MCP server (still reproducible in 2.1.175)
- notifications/claude/channel MCP notifications not injected as <channel> blocks (Telegram plugin)
- [BUG] claude plugins --json fails with "unknown option '--json'" in Manage Plugins panel (v2.1.145)
- Skills from marketplace plugins not activated after installation (missing copy to ~/.claude/skills/)
- [BUG] /plugin lists user-scope plugins under "Project" tab, blocks disable without --scope user
- Plugin slash-command autocomplete drops namespace prefix on accept
- [BUG] [Windows] Plugin install fails with EPERM during rename to versioned cache slot — Defender holds handles on freshly-extracted files
- Third-party LSP plugins: `.lsp.json` at plugin root works on v2.1.119; marketplace.json `lspServers` alone is silently ignored
- [BUG] [Windows] Plugin marketplace install fails with EPERM on rename — path resolution collapses username + .claude into single token
- Plugin-scoped PostToolUse hooks silently skip in Claude Desktop / Agent Mode
- [Bug] Web page scraping fails to retrieve data from app pages
- Plugin install uses SSH clone even when HTTPS URL is specified
- Channels: messages not delivered to session during idle REPL
- [Bug] Plugin agent loader silently filters agents below undocumented system prompt length threshold
- --channels plugin receives Telegram messages but notifications never reach the conversation
- [Bug] --plugin-dir not loading plugins correctly
- [BUG] Plugin installed "locally" leaks to unrelated projects after toggling in a second project
- [Bug] --channels flag ignored despite channelsEnabled: true in remote settings
- Plugin hooks.json: command hooks silently dropped for PreToolUse/PostToolUse events
- [Windows] claude-plugins-official marketplace not pre-registered, requires manual extraKnownMarketplaces unlike macOS
- Skill with unquoted ": " in SKILL.md description is silently dropped from the skills list / slash menu (CLI, no diagnostic)
- [BUG] LSP tool cannot resolve any language server on Windows (v2.1.208) - 'not found or is in an unsafe location' even for real .exe servers on static PATH
- Plugin hooks.json entries using exec form (command + args array) are silently ignored
- Agent mode serves a stale per-session plugin snapshot after a plugin update (removed skills remain listed/invocable)
- [BUG] VS Code extension: namespaced /plugin:skill form is not recognized; skills whose name matches a built-in command are unreachable
- [BUG] /plugin install fails on Windows - missing backslash causes path to resolve .claude as part of username
- [BUG] Windows: npx-based MCP/plugin servers fail to connect (spawn EINVAL from .cmd shim)
- Stop hook: $CLAUDE_PLUGIN_ROOT not injected when running plugin hooks
- Plugin loader errors when cache directory is deleted by concurrent update
- [BUG] VS Code Chat panel Agent Handoff to Claude fails with "Error: Error during execution" (Windows, v2.1.145)
- [BUG] MCP stdio servers torn down during plugin autoupdate, do not auto-respawn
- [BUG] SSH remote session fails when local plugins/skills archive is corrupted
- Telegram channel: mcp.notification() returns success but notification never rendered in conversation
- [BUG] Project-scoped plugins not automatically enabled in git worktrees despite being configured in `.claude/settings.json`
- [BUG] [BUG] Plugin telegram@0.0.6 inbound notification: MCP SDK dispatch resolves OK but Claude Code does not render <channel> block (Windows)
- [Bug] Claude Code not executable from terminal
- [BUG] MCP server push notifications silently ignored by Claude Code on Windows 11 ARM64
- Plugin loader silently breaks when installed_plugins.json and known_marketplaces.json drift after marketplace refresh
- [BUG] Latest version