CLAUDE_PLUGIN_DATA

Updated by

CLAUDE_PLUGIN_DATA is a Claude Code environment variable: Provides a filesystem path where plugins can store persistent state that survives plugin updates and reinstalls. Previously, plugin data lived alongside the plugin code itself, meaning every update wiped accumulated state — conversation caches, user preferences, learned patterns. Added between v2.1.77 and v2.1.79 and still present in v2.1.294. It is not in the official reference.

StatusPresent in v2.1.294
AddedAdded between v2.1.77 and v2.1.79
CategoryPlugins and skills
Official docsNot listed

How to set it

For one session, export it in the shell that starts Claude Code:

export CLAUDE_PLUGIN_DATA=<value>
claude

To apply it to every session, add it to the env object of a settings file:

// ~/.claude/settings.json
{
  "env": {
    "CLAUDE_PLUGIN_DATA": "<value>"
  }
}

Release notes that mention it

Related variables

Frequently asked questions

What does CLAUDE_PLUGIN_DATA do?

Provides a filesystem path where plugins can store persistent state that survives plugin updates and reinstalls. Previously, plugin data lived alongside the plugin code itself, meaning every update wiped accumulated state — conversation caches, user preferences, learned patterns.

Which Claude Code version has CLAUDE_PLUGIN_DATA?

Added between v2.1.77 and v2.1.79 and still present in v2.1.294.

How do I set CLAUDE_PLUGIN_DATA?

Export it before starting Claude Code (export CLAUDE_PLUGIN_DATA=value), or add it to the "env" object in ~/.claude/settings.json to apply it to every session.

All variables, searchable: Claude Code environment variables.