{"version":"2.1.281","anchor":"plugin-hook-runtime-gains-request-scopes-asynclocalstorage","canonical_anchor":"plugin-hook-runtime-gains-request-scopes-asynclocalstorage","heading":"Plugin hook runtime gains request scopes (AsyncLocalStorage)","tier":"internal","area":"Plugins","url":"https:\/\/changelogs.core-directive.com\/v\/2.1.281\/e\/plugin-hook-runtime-gains-request-scopes-asynclocalstorage","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.281","markdown":"### Plugin hook runtime gains request scopes (AsyncLocalStorage)\n\nPlugin hooks now run inside a per-request scope that can carry values through the handlers and be ended\n\n**Unclear.** The finding does not say whether plugin authors can reach these scopes or what they would use them for.\n\n**What**\n\nWhen a plugin event fires, Claude Code now runs the plugin's handlers inside a scope tied to the caller who triggered it. The scope holds a set of values and a flag saying whether it has ended. Once a scope has ended, its values are no longer returned.\n\n**Why**\n\nData that belongs to one request can now be passed through all of a plugin's hook handlers and closed off when that request is done.\n\n- Area: Plugins\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 1\/5"}