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.readevent sends the layers of your effective settings to plugin hooks, and they can answer with their own values to override them. $.settings.readtakes{ 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.
Names in the bundlesettings.read
One source agreesOne thing we can check says the same as this entry.
Anthropic's release notes agree
Changed mods' settings.read hooks to receive each settings layer and rewrite the merged settings, so a managed mod can make an…