[FEATURE] Add enable/disable toggle for DXT extensions without uninstalling

Resolved 💬 3 comments Opened Mar 8, 2026 by gevmatin Closed Mar 12, 2026

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

Currently, installed DXT extensions are either installed (always active) or uninstalled (gone). There is no way to temporarily disable an extension without removing it entirely.

This matters because:

  1. Every installed extension's tool definitions are loaded into the system prompt of every conversation, consuming input tokens even when the tools aren't needed. With multiple extensions (e.g., Desktop Commander = 26 tools, Claude in Chrome = 18 tools), a user can easily have 80-100+ tool definitions loaded, costing ~90,000+ tokens per conversation just in system prompt overhead — before the user even types a word.
  1. Each DXT extension runs as a background Node.js process, consuming RAM and CPU even when idle.
  1. Some extensions are only needed situationally (e.g., travel search tools, C++ language server, code review tools), but there's no way to keep them installed-but-inactive for when they're not needed.
  1. The only workaround is to fully uninstall and reinstall extensions, which is tedious and may lose per-extension configuration/credentials.

Proposed Solution

Add a toggle switch next to each installed extension in the Customize > Personal plugins sidebar (and similarly for connectors), allowing users to:

  • Disable an extension: keeps it installed on disk with all settings/credentials preserved, but does NOT load its tool definitions into the system prompt or start its background Node.js process
  • Enable an extension: loads tools and starts the background process as normal

This is the same UX pattern used by browser extensions (Chrome, Firefox, Safari) which all have an enable/disable toggle separate from uninstall.

Benefits:

  • Users can maintain a large library of extensions without paying the token cost for all of them in every conversation
  • Reduces system resource usage (RAM, CPU) from idle background processes
  • Enables task-specific setups (e.g., coding mode vs. travel planning mode)
  • No re-configuration needed when re-enabling (credentials, settings preserved)
  • Power users with 5+ extensions would see the most benefit — easily saving 30,000-50,000+ tokens per conversation by disabling unused tools

Alternative Solutions

Current workarounds I've tried:

  1. Uninstall/reinstall cycle — Works but tedious. Requires going to Manage > Uninstall, then re-finding and reinstalling from the registry each time. Local .dxt sideloaded extensions need the file re-dragged.
  1. Removing redundant extensions — I identified overlapping tools (e.g., Control Chrome DXT is a subset of Claude in Chrome connector) and removed them. This helped marginally (~2,500 tokens saved) but doesn't address the core problem of situational extensions.
  1. Just living with the overhead — Currently eating ~90,000+ tokens in tool definitions per conversation across ~89 tools, even when most conversations only use 3-5 of them.

Note: Issue #28775 shows that a toggle UI already partially exists in the Code tab's Connectors menu, but it doesn't work due to a config path mismatch. Extending this toggle concept to the main Desktop Customize menu for DXT extensions would solve the problem.

Priority

Medium - Would be very helpful

Feature Category

Configuration and settings

Use Case Example

Real scenario from my setup:

  1. I have 4 DXT extensions installed: Desktop Commander (26 tools), Context7 (2 tools), Apple Notes (4 tools), Airbnb Search (2 tools)
  2. Plus 5 cloud connectors: Kiwi flights, Trivago hotels, Claude in Chrome, Claude Preview, Scheduled Tasks
  3. This loads ~89 tools / ~90,000 tokens into EVERY conversation's system prompt
  4. When I'm doing a coding task, I don't need Kiwi, Trivago, or Airbnb — but their tool definitions still consume ~10,600 tokens
  5. When I'm planning travel, I don't need Desktop Commander's 26 tools (~32,300 tokens)
  6. With a toggle, I could disable travel tools during coding and disable dev tools during travel planning, saving 30,000-50,000 tokens per conversation
  7. This would let me get more out of my context window and reduce rate limit pressure on my Max plan

Additional Context

Technical context:

  • Every active DXT extension injects its full tool JSON schema (name, description, parameters) into the system prompt of every new conversation
  • A single extension like Desktop Commander with 26 tools adds ~32,000 tokens to the system prompt
  • Each DXT also runs a background Node.js process consuming ~50-100MB RAM even when idle
  • The extensions-installations.json file already tracks all installed extensions — adding a "disabled": true field per extension would be a minimal implementation

Related issues:

  • #28775 — DXT extensions have a toggle in Code tab's Connectors menu, but it doesn't work due to config path mismatch (closed as duplicate of #26259). The UI pattern already exists but needs to be extended to the main Desktop Customize sidebar.

Similar UX in other tools:

  • Chrome extensions: enable/disable toggle in chrome://extensions
  • VS Code extensions: disable per-workspace or globally
  • Firefox add-ons: enable/disable without removing

Environment: Claude Desktop on macOS, Claude Max plan

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗