Safeguard
Security Guides•

How do you remove an unused Jenkins plugin safely?

Disable first, then uninstall, then purge old data. How to remove an unused Jenkins plugin without breaking boot, plus the commands that help.

Safeguard Security Team
3 min read

To remove an unused Jenkins plugin safely, back up first, disable it and restart, confirm jobs still work, then uninstall it from the Installed tab and clear leftover data with Manage Old Data. Fewer plugins means a smaller attack surface and fewer updates to track.

Why bother

Every installed plugin is code running inside the controller. It needs patching, and a plugin you no longer use still counts when a new advisory lands. Removing dead weight is one of the cheaper hardening moves available.

Disable, uninstall, delete: what each does

ActionEffect
DisableThe plugin does not start. Its configuration is treated as if the plugin were uninstalled. Reversible.
UninstallRemoves the plugin. The UI only offers it when no other plugin depends on it.
Delete the .jpi fileThe plugin keeps running until restart. Removing one that is required can stop Jenkins from booting.

Uninstalling does not delete the plugin's configuration. Jenkins warns at boot and ignores that data. Use Manage Old Data to purge it.

Steps

  1. Back up your Jenkins home directory.
  2. Find candidates. Look for plugins that no job, folder or global setting uses.
  3. Disable one plugin. In the UI, uncheck it on the Installed tab. Or create a file named PLUGIN_NAME.jpi.disabled on the controller. From the CLI, disable-plugin (added in 2.151) does the same.
  4. Restart, then run a few representative jobs and open the main configuration pages.
  5. If nothing broke after a few days, uninstall it from the Installed tab.
  6. Open Manage Old Data and discard entries for the removed plugin.

The CLI strategy option on disable-plugin matters. The default, none, refuses to disable a plugin if an enabled plugin mandatorily depends on it.

Watch for implied dependencies

Older plugins can depend on features that moved from core into separate plugins, without declaring that. Hovering over the uninstall button in the plugin manager shows these implied dependencies. Check there before you remove anything that looks unused.

Try it yourself

The demo shows how a dependency inventory makes unused and risky components visible.

Click through it at your own pace, or open it full screen.

Where Safeguard fits

Safeguard produces SBOMs and scans dependencies, which gives you a dated list to compare before and after a clean-up. The free scan is a quick way to see the output.

Quick check

Is disabling a plugin the same as uninstalling it?

No. A disabled plugin stays on disk and can be enabled again. An uninstalled plugin is removed, though its old configuration remains until you purge it.

Can I just delete the plugin file?

You can, but the plugin keeps running until restart, and deleting a required plugin can prevent Jenkins from starting. Use the plugin manager instead.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.