Follow Discord
Sweep 06 Nov 2026 · 01:32Z Build v2.1.319 537 read Stable v2.1.311 Latest v2.1.318 Next v2.1.319 Feeds RSS JSON llms.txt llms-full.txt Unofficial

Claude Code v2.1.304 ·

Plugins can now supply setting values through a settings.read event

A new settings.read event lets plugin hooks see and override your effective settings, re-checked whenever settings or plugins change

Group of 2 Use it now Internal Changes
JSON All of v2.1.304
Use it nowTier: how much it should matter to you
5Useful: my rating, 1 to 5
4Signal: worth watching, 1 to 5
PluginsArea: what it touches
Internal ChangesKind: in v2.1.304,
What probably matters to youSection of the release

What

Plugins are add-on packages, and their hooks are small programs Claude Code runs at set moments. Before, plugin code could only look settings up through a $.settings.read helper. Now:

  • A new settings.read event sends the layers of your effective settings to plugin hooks, and they can answer with their own values to override them.
  • $.settings.read takes { source }, { key } or nothing; anything else is rejected with an error.
  • An answer that no settings key can hold is refused, and the log says "the settings' own value stands".
  • The combined result is worked out again whenever your settings or the loaded plugins change, and skipped when neither changed. A key whose answer never settles is left out, with a warning that the value in your settings files stands.

Why

A plugin can now shape your settings, and its values stay consistent after reloads. If a setting does not match what your settings file says, a plugin hook may be overriding it; the log notes when a hook's answer was refused.

Read from
Names in the bundlesettings.read
Since it was published

The entry above is what we published on the day. These lines were added later, as Anthropic's own pages caught up, and they sit beside the original rather than replacing it.

Confirmed since Anthropic's documentation has since written up settings.read, on Use the mods API. `$.settings.read()` resolves to one object that holds the settings from all sources in use, merged by [precedence](https://code.claude.com/docs/en/settings.md#settings-precedence). Pass `{ source }` to read one source instead, `{ key }` to… plugins/mods/api see the edit
How sure we are
Two sources agreeTwo things we can check say the same as this entry.
Anthropic's documentation agreesAnthropic's documentation has since written up settings.read, on Use the mods API.
Anthropic's release notes agreeChanged mods' settings.read hooks to receive each settings layer and rewrite the merged settings, so a managed mod can make an…

See this entry in the whole of v2.1.304 →

Feedback