{"name":"session.receive","slug":"session-receive","family":"setting","title":"Settings keys","noun":"settings key","description":"A new `session.compact` plugin hook can intercept and rewrite conversation compaction","description_source":"entry","described_by":{"version":"2.1.267","anchor":"compaction-can-now-be-intercepted-and-rewritten-by-a-session"},"presence":{"first_seen":null,"removed_in":null,"in_current_build":false,"newest_mined":"2.1.319","builds":0,"mined_builds":159,"first_cited":{"version":"2.1.267","released_at":"2026-09-09 18:25:42","spans":6}},"aliases":[],"entries":[{"version":"2.1.300","anchor":"mod-event-table-gains-promptchange-policy-decision-gets-se","heading":"Plugin mods gain a prompt-change event and richer permission decisions","line":"Plugin mods get a `prompt.change` event, and permission decisions can now name a setting and a decider","released_at":"2026-10-14 14:27:26","reason":"found in this entry's text"},{"version":"2.1.280","anchor":"new-plugin-hookable-event-sessionsend","heading":"New plugin-hookable event: session.send","line":"Plugin hooks can now listen for a new session.send event, alongside session.receive\/detach\/end","released_at":"2026-09-22 15:44:39","reason":"found in this entry's text"},{"version":"2.1.280","anchor":"teammate-mailbox-entries-can-now-be-consumed-by-a-sessionre","heading":"Teammate mailbox entries can now be consumed by a session.receive hook","line":"Incoming teammate mailbox messages can now be intercepted and consumed by a session.receive hook","released_at":"2026-09-22 15:44:39","reason":"found in this entry's text, named in this entry"},{"version":"2.1.269","anchor":"sessionreceive-hook-path-now-returns-a-disposable-queuei","heading":"session.receive hook path now returns a disposable queueing handle","line":"session.receive hook dispatch now always returns a disposable 'queueing' handle","released_at":"2026-09-11 18:12:49","reason":"found in this entry's text, named in this entry"},{"version":"2.1.267","anchor":"compaction-can-now-be-intercepted-and-rewritten-by-a-session","heading":"Compaction can now be intercepted and rewritten by a session.compact plugin hook","line":"A new `session.compact` plugin hook can intercept and rewrite conversation compaction","released_at":"2026-09-09 18:25:42","reason":"found in this entry's text"},{"version":"2.1.267","anchor":"hooks-engine-gains-sessioncompact-sessionreceive-uireso","heading":"Hooks engine gains session.compact, session.receive, ui.resolve event contracts","line":"The plugin hooks system adds validated event types for session compaction, session receive, and UI resolution","released_at":"2026-09-09 18:25:42","reason":"found in this entry's text, named in this entry"},{"version":"2.1.267","anchor":"inbound-message-ingestion-bridge-and-cli-stdin-now-runs-th","heading":"Inbound message ingestion (bridge and CLI stdin) now runs through a session.receive plugin hook","line":"Incoming messages from both Remote Control and the CLI now pass through a `session.receive` plugin hook before being queued","released_at":"2026-09-09 18:25:42","reason":"found in this entry's text, named in this entry"}],"entries_total":7,"docs":[{"source":"claude-code","path":"changelog","title":"Claude Code changelog","documented":false},{"source":"claude-code","path":"plugins\/mods\/api","title":"Use the mods API","documented":false},{"source":"claude-code","path":"plugins\/mods\/reference","title":"Mods reference","documented":false},{"source":"claude-code","path":"plugins\/mods\/test","title":"Test a mod","documented":false}],"docs_total":4,"gates":[],"related":[{"name":"session","slug":"session","description":"A per-session workshop document gets snapshotted with your session files and is only writable in plan mode."},{"name":"session.attach","slug":"session-attach","description":"Plugin hooks can now react to tool-call dry-runs, config changes, and session attach\/detach events."},{"name":"session.authorize","slug":"session-authorize","description":"Plugins gain $.session.authorize(), which mints an auth handle for the session."},{"name":"session.compact","slug":"session-compact","description":"A new `session.compact` plugin hook can intercept and rewrite conversation compaction"},{"name":"session.detach","slug":"session-detach","description":"Plugin hooks can now react to tool-call dry-runs, config changes, and session attach\/detach events."},{"name":"session.end","slug":"session-end","description":"Two new lifecycle events, `session.end` and `session.measure`, added for plugins and hooks"},{"name":"session.measure","slug":"session-measure","description":"Two new lifecycle events, `session.end` and `session.measure`, added for plugins and hooks"},{"name":"session.root","slug":"session-root","description":"Plugin API policy list adds session.root, prompt.read, and ui.panes as permitted actions"},{"name":"session.send","slug":"session-send","description":"Plugin hooks can now listen for a new session.send event, alongside session.receive\/detach\/end"},{"name":"session.start","slug":"session-start","description":"Two hook events arrive: session.start fires on terminal session start, and prompt.context is registered but has no emitter here."}],"url":"https:\/\/changelogs.core-directive.com\/reference\/setting\/session-receive","family_url":"https:\/\/changelogs.core-directive.com\/reference\/setting.json"}