Follow Discord
Sweep 03 Oct 2026 · 20:28Z Build v2.1.289 510 read Stable v2.1.285 Latest v2.1.289 Next v2.1.289 Feeds RSS JSON llms.txt llms-full.txt Unofficial

Claude Code v2.1.289 ·

Plugins can read the user's selected text through ui_read_selection

A new ui_read_selection request lets a plugin's $.ui.selection read text the user has selected in an attached client

Group of 2 Under the hood Notable No documentation found New Features
JSON All of v2.1.289
Under the hoodTier: how much it should matter to you
4Useful: my rating, 1 to 5
4Signal: worth watching, 1 to 5
Plugin UIArea: what it touches
New FeaturesKind: in v2.1.289,
What probably matters to youSection of the release

What

Plugins can now ask what text the person has selected. In a headless session (one running without Claude Code's own terminal screen), a plugin's $.ui.selection sends a new request, ui_read_selection, to the attached clients, meaning the apps or pages showing the session.

  • Opt in: a client receives the request only if it lists ui_read_selection under answers when it attaches with ui_attach. Before, that list covered only ui_copy and the prompt requests (ui_prompt_read, ui_prompt_fill, ui_prompt_suggest).
  • Answers: every client that opted in is asked. The first non-empty selection wins. If no client answers within 5 seconds, the plugin gets nothing.
  • Where it travels: the request goes only over the host's own pipes, never over the remote transport.
  • Context: the plugin context object gains a selection entry next to composer.

Why

A plugin can now act on what the person has highlighted in a connected app, while the request stays off the remote connection and only reaches clients that chose to answer it.

Read from
Names in the bundleui_read_selection

See this entry in the whole of v2.1.289 →

Feedback