{"version":"2.1.267","anchor":"hooks-plugin-api-gains-a-to-messaging-primitive-surface","canonical_anchor":"hooks-plugin-api-gains-a-to-messaging-primitive-surface","heading":"Hooks plugin API gains a 'to' messaging primitive, 'surface' concept, and table resolution","tier":"use","area":"Hooks","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.267\/e\/hooks-plugin-api-gains-a-to-messaging-primitive-surface","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.267","markdown":"### Hooks plugin API gains a 'to' messaging primitive, 'surface' concept, and table resolution\n\nHooks\/plugin runtime gains a 'to' messaging function, a 'surface' concept, and table-resolution requests\n\n**Unclear.** What concrete new plugin\/hook capabilities this enables, and what a 'surface' or 'table' represents here, isn't explained.\n\n**What**\n\nClaude Code's hooks and plugin runtime API has been expanded in several related ways:\n\n- Hook manifests can now declare a `surface`, carried alongside each module's specification\n\n- The internal hook-call wrapper gains a `to` function and a `caught` handler, in addition to its existing call\/signal\/event\/origin\/trace parts\n\n- A new `resolveTables`\/`resolve` message type lets a hooks worker request table resolution and get back a `resolved` or `resolve_error` response\n\n- Internal environment-state tracking gained new `framing` and `resolving` maps\n\n- Error text shown to plugin authors now references `next.to always next.to(e, \"<tier>\")`\n\n**Why**\n\nThis extends what a hook or plugin can do at runtime, including sending messages via `to` and resolving tables, though the finding does not describe the specific new capabilities these enable for plugin authors.\n\n- Area: Hooks\n- Names: `to`, `surface`\n- Tier: Use it now\n- Useful: 4\/5\n- Signal: 3\/5"}