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.267 ·

Hooks plugin API gains a 'to' messaging primitive, 'surface' concept, and table resolution

Hooks/plugin runtime gains a 'to' messaging function, a 'surface' concept, and table-resolution requests

Use it now New Features
JSON All of v2.1.267
Use it nowTier: how much it should matter to you
4Useful: my rating, 1 to 5
3Signal: worth watching, 1 to 5
HooksArea: what it touches
New FeaturesKind: in v2.1.267,
What probably matters to youSection of the release

Unclear What concrete new plugin/hook capabilities this enables, and what a 'surface' or 'table' represents here, isn't explained.

What

Claude Code's hooks and plugin runtime API has been expanded in several related ways:

  • Hook manifests can now declare a surface, carried alongside each module's specification
  • The internal hook-call wrapper gains a to function and a caught handler, in addition to its existing call/signal/event/origin/trace parts
  • A new resolveTables/resolve message type lets a hooks worker request table resolution and get back a resolved or resolve_error response
  • Internal environment-state tracking gained new framing and resolving maps
  • Error text shown to plugin authors now references next.to always next.to(e, "<tier>")
Why

This 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.

Read from
Names in the bundletosurface
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.

Added since A small documentation edit on TypeScript SDK V2 session API (removed) touched a line naming surface after this was published. V2 was an experimental session API that removed the need for async generators and yield coordination. Instead of managing generator state across turns, each turn was a separate `send()`/`stream()` cycle. The API surface reduced to creating… agent-sdk/typescript-v2-preview see the edit
Confirmed since Anthropic's documentation has since written up surface, on Error reference. | [`CLAUDE_CODE_MAX_RETRIES`](/docs/en/env-vars) | 10 | Number of retry attempts. Capped at 15 as of v2.1.186; as of v2.1.199 `CLAUDE_CODE_RETRY_WATCHDOG` raises the default and removes the cap. Lower it to surface failures faster in scrip… errors see the edit
How sure we are
Something disagreesSomething we can check disagrees with this entry, or the writer said they could not settle it.
The writer flagged doubtWhat concrete new plugin/hook capabilities this enables, and what a 'surface' or 'table' represents here, isn't explained.
Anthropic's documentation agreesAnthropic's documentation has since written up surface, on Error reference.

See this entry in the whole of v2.1.267 →

Feedback