Follow Discord
Sweep 02 Oct 2026 · 18:55Z Build v2.1.288 509 read Stable v2.1.285 Latest v2.1.288 Next v2.1.288 Feeds RSS JSON llms.txt llms-full.txt Unofficial

Claude Code v2.1.288 ·

Unset plugin options can now be left as placeholders instead of causing an error

Filling in a plugin's ${user_config.*} placeholders can now leave an unset option as written instead of always failing; failing is still the default

You'll notice Improvements
JSON All of v2.1.288
You'll noticeTier: how much it should matter to you
2Useful: my rating, 1 to 5
1Signal: worth watching, 1 to 5
PluginsArea: what it touches
ImprovementsKind: in v2.1.288,
ImprovementsSection of the release
What

Plugins can declare options, called userConfig, that you set yourself, and the plugin refers to them with placeholders written as ${user_config.<name>}. Before, if Claude Code filled in one of those placeholders and you had not set that option, it always stopped with an error telling you the option isn't set and to open /plugin to configure it.

The step that fills in placeholders now has a second mode. In that mode an unset option is left as its placeholder text and no error is raised. The default has not changed: unless a part of Claude Code asks for the new mode, an unset option still produces the same error.

Why

Some parts of Claude Code only need to show or check a plugin's settings. With this mode they can do that without failing just because you have not filled in every option yet.

Read from
Names in the bundleuserConfig
How sure we are
Something disagreesSomething we can check disagrees with this entry, or the writer said they could not settle it.
The writer flagged doubtIt is not clear which parts of Claude Code use the new mode that leaves unset options as placeholders.
Anthropic's release notes agreeFixed plugin LSP servers receiving literal ${user_config.*} and ${CLAUDE_PLUGIN_ROOT} placeholders in initializationOptions and settings…

See this entry in the whole of v2.1.288 →

Feedback