Plugins issues on Linux — page 2
Issues the maintainers labelled both platform:linux and area:plugins.
187 issues · 33 open · 154 resolved (82%) · first seen Oct 17, 2025
Is this getting better or worse?
This class of problem is converging. 40 new reports in the last 90 days vs 68 in the 90 before — -41%. The open backlog peaked at 40 in 2026-04 and sits at 33 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
132 of these reports name the Claude Code build they were running, spanning 84 releases. Heaviest reporters:
- Claude Code v2.1.81
- Claude Code v2.1.296
- Claude Code v2.1.119
- Claude Code v2.1.83
- Claude Code v2.1.80
- Claude Code v2.1.289
- Claude Code v2.1.228
- Claude Code v2.1.143
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 31 days across 154 closures. Of the 154 closures with a recorded reason, 29% were closed as completed and 110 as not-planned or duplicate. The most recent completed fix landed in 2026-10.
Workarounds reported by the community
76 of these issues post a workaround someone says worked. The highest-engagement ones:
- [BUG] Adding marketplace with custom SSH git url is not allowed
- …ome reports suggest it does), Option A is the most reliable workaround because it avoids entirely while still using the correct port under the hood.
Found in the thread of #9740 · still open - [BUG] Plugin paths hardcoded with absolute paths fail across environments
- …, the plugins cannot be loaded within the Docker container. As a workaround, I created a symlink to the host's home directory inside the container. However, when I add a plugin within the Docker container, it doesn't wor…
Found in the description of #31388 · still open - Plugin manager doesn't preserve execute permissions on shell scripts
- …ty scripts referenced by plugins - - Session start handlers Workaround Manually fix permissions after plugin updates: Impact - Hooks fail silently or with errors on every session - Users must manually fix permissions aft…
Found in the description of #38901 · resolved - Ralph Loop plugin: stop-hook.sh missing execute permission on Linux
- …marketplace plugin ( ), not just third-party marketplaces. Workaround Expected Fix The plugin should either: 1. Ship files with the execute bit set in the repository ( ) 2. Or have the plugin installer set on hook scrip…
Found in the description of #38686 · resolved - [BUG] Discord plugin shows connected under --channels but does not receive gateway messages on Linux
- …channel cache becoming stale, not an access config problem. Workaround : reconnect from the Claude Code REPL restores functionality immediately. Suggested fix : - Force-fetch the channel (bypass cache) when is falsy: - O…
Found in the thread of #36837 · resolved
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 101–187
Ranked by community engagement (reactions weighted over comments).
- [BUG] Plugin-written project files (e.g. rendered .claude/rules/) silently become global when a plugin is used with cwd=$HOME
- [BUG]/plugin Disable/Enable toggle targets wrong settings key when plugin manifest name differs from marketplace directory name
- [BUG] claude_design MCP server injected dynamically but endpoint returns 404
- --channels: plugin channel not binding under non-root user (works as root)
- Channels: inbound message left as stale composer render with empty input buffer (lost-Enter ghost) — never submits, retry re-ghosts
- `claude plugin list --json` truncates stdout at 64 KB when piped and breaks VS Code plugin manager "available" list
- LSP: first request in a session fails with "server is starting" instead of being queued until the server is ready
- Plugin MCP reconnect fails: ${CLAUDE_PLUGIN_ROOT} not substituted after /model or session reconnect
- Remote plugin cache (~/.claude/remote/plugins) grows unbounded: stale .in_use dead-PID locks starve the GC + non-deterministic materialization
- rust-analyzer-lsp plugin: all LSP operations return internal error when rust-analyzer rustup proxy is present but component not installed
- [BUG] extensibility.py follows symlinks in project-controlled guidance file, sending local file content to API
- Plugin harness resolves skill base directory to marketplaces/ instead of cache/ path
- [Bug] Channels plugin (Telegram) not functioning on Linux - notifications not injected into session
- [Bug] Slash-command dropdown collapses namespaced plugin skills to single entry
- [BUG] Plugin skill count issue
- [BUG] --channels: plugin process exits before Bun.serve starts when launched by Claude Code (fakechat / stdio transport)
- [BUG] `!` preprocessing in slash-command bodies fails in TUI but works in `claude -p` (with `model:` + `context: fork`)
- [Feature Request] Support relative/portable paths in plugin manifest installPath for cross-environment ~/.claude sharing
- [BUG] Team mode subagents don't load system prompts from plugin-defined agents
- settings.json gets "UserPromptSubmit": null written when a plugin contributes that hook
- Outer sandbox blocks /run-codex-review: need per-command bypass or broader default allowWrite for bundled codex plugin
- [BUG] Disabled plugin reported as activation error after /reload-plugins - /feedback not working right now
- [Bug] Plugin initialization error
- telegram plugin: bot polling should be gated by --channels flag (concurrent sessions collide on single Telegram token)
- [BUG] Inline plugin skill content not delivered after /clear — "Successfully loaded skill" but no instructions
- Allow individual users to extend channels allowlist for third-party plugin marketplaces
- uv build cache directories leak into session PATH, shadowing system Python
- Companion feature (duck/Plodder) stopped appearing after update from 2.1.96 to 2.1.100
- [BUG] Telegram channel plugin: inbound messages fail with "out of extra usage" after 2-3 turns on Max subscription; fakechat works indefinitely on same account
- Telegram channel plugin drops messages: mcp.notification() not awaited in handleInbound
- enabledPlugins: true silently fails to start MCP server for local symlink marketplace plugins
- Plugins should declare and verify system dependencies
- Plugin cache installation skips dotfiles (.mcp.json, .npmrc, etc.)
- Telegram plugin: inbound notifications stop working after new session
- Telegram channel plugin: notifications/claude/channel silently ignored in remote-control sessions
- [BUG] Discord Channels Plugin DM bug
- Plugin cache dir deleted mid-session when git commits change HEAD — causes infinite Stop hook loop
- Plugin cache not updated when marketplace plugin version changes
- Plugin marketplace: .sh files installed without execute permission (two root causes identified)
- Plugin cache doesn't preserve execute permission on hook scripts
- Telegram channel plugin: MCP server child process not spawned on Linux (v2.1.83)
- Telegram plugin: MCP channel notifications not received by Claude Code v2.1.81
- Plugin marketplace: stagehand fails to load - incorrect skills path
- [BUG] [Plugin: Telegram] Inbound notifications never delivered to session — outbound works fine
- [BUG] /ralph-loop seems totally broken
- [Bug] Plugin install command reports success but fails to persist plugin data
- [BUG] Marketplace returns 500 error due to unnecessary trailing slash
- /plugin panel clips off the top edge in small terminal splits
- [FEATURE] Let a plugin pane opt out of mouse selection (and copy on select) in the fullscreen TUI
- [FEATURE] Raise the ui.copy plugin event for copy on select, so a plugin can rewrite the copied text
- [BUG] With CLAUDE_CONFIG_DIR set, starting in $HOME records a project-scope install of every user plugin
- [BUG] Plugin userConfig template ${user_config.X} not substituted in lspServers initializationOptions
- [BUG] Orphaned plugin marketplace git clone busy-loops at ~80% CPU for days after the session exits (Linux)
- [BUG] Four shipped plugin agents fail YAML frontmatter parsing and load as placeholders or not at all
- [BUG] Plugins are re-enabled when claude-code is updated.
- allowedChannelPlugins in local managed settings silently shadowed by remote org managed settings; skip message points at the ignored file
- [FEATURE] Support disable-model-invocation in agent frontmatter (plugin agents load descriptions unconditionally)
- claude plugin install fails with empty "Failed to clone repository:" error on Ubuntu server — git never spawned; same install works on macOS
- Telegram MCP plugin (channels) repeatedly disconnects under load
- Plugin-sourced PreToolUse hooks never dispatch for MCP tool-name matchers (mcp__<server>__.*)
- Telegram channel: MCP notification resolves OK but never surfaces as inbound message
- [BUG] installed_plugins.json regeneration silently drops URL-based plugins, startup sync cannot recover them
- Telegram plugin MCP server disconnects after ~3 messages in --channels mode
- Telegram plugin: Channel notifications not waking Claude Code from idle state
- [BUG] Interrupted plugin cache copy leaves a partial version directory that is later installed as "already cached"
- [BUG] An agent started by $.agent.spawn from a $.clock callback can’t reach its own plugin’s tool.call hook
- [BUG] Plugin Input empties on Enter while the hook still draws the same value
- [BUG] Marketplace with plugin "source": "." passes `claude plugin validate` but fails to sync on claude.ai
- [BUG] Refusal followed by terminal-only AskUserQuestion dialog blocks channel-driven sessions
- [Feature] Keep hover (motion tracking) when CLAUDE_CODE_DISABLE_MOUSE_CLICKS=1, for plugin panes
- [Bug] Plugin Incorrectly Flagged as Security Risk for README Review
- [BUG] Plugins: an empty absolute <Client> over a <Raster> on a transcript row stops $.ui.blit repaints from reaching the screen
- Mod API: deliver arrow keys (← →) to a focused pane or Client
- [Bug] Side-agent plugin missing "thanks" acknowledgment button in response flow
- [BUG] claude plugin eval never loads a plugin's declared dependencies, so the plugin under test fails to load and cases score the bare model
- [BUG] Desktop app's --plugin-dir copy of a strict:false LSP plugin drops its lspServers, so 0 servers load and the LSP tool never appears (bundled CLI resolves it)
- claude plugin eval: every Bash call fails with "bwrap: loopback: Failed RTM_NEWADDR" (ref #14719, #55585)
- Plugin marketplace update/refresh forces HTTPS and fails even when the existing clone works fine over SSH
- [BUG] sparsePaths git marketplaces clone empty since 2.1.274 (GIT_NO_LAZY_FETCH=1 on a blob:none clone; git ≤2.34 exits 0) and silently replace healthy clones — 2.1.278 retry never fires
- [BUG] known_marketplaces.json is never repaired once invalid: one entry missing lastUpdated (or a parse error) disables plugins from every marketplace, and the reconciler, marketplace add and marketplace remove all fail re-reading it
- [BUG] Desktop Directory → Plugins: duplicate cards, cards shown under the wrong marketplace, and no working uninstall
- [BUG] plugin skill invoked by its bare name shows a false "isn't a recognized command here" warning
- gopls-lsp plugin installed+enabled but missing lspServers wiring; LSP tool never available for Go
- Plugin slash-commands return "Unknown command" in headless (-p) mode on 2.1.251 — regression from 2.1.250
- [BUG] Plugin-shipped output styles not registered in 2.1.246: force-for-plugin ignored and style unresolvable by name (repro of auto-closed #64914)
- skillOverrides (name-only/user-invocable-only) silently no-ops for plugin-namespaced skill keys
- [BUG] Two plugins can claim the same skill name and both install silently — and it ships in a real config today