# Claude Code v2.1.289

> Claude Code v2.1.289, released 3 Oct 2026 (2026-10-03). 52 entries read out of the shipped bundle. Unofficial, and not affiliated with Anthropic.

[Web version](https://changelogs.core-directive.com/v/2.1.289)

You can now let plugins read the text you have selected in a connected app, in sessions without a terminal. The first non-empty answer that arrives within 5 seconds is used. Plugin agent-launch hooks now also apply when you start a named teammate. Such a hook can block, rewrite or retype the teammate. Running claude plugin eval on a plugin from a folder marketplace now runs it from that folder. When a plugin's view drawn by the desktop app fails, the plugin is told and can draw another view.

A plugin interface that crashes no longer breaks the screen. Claude Code shows its own interface instead and keeps your session running. Plugins now get a teammate's real id and model when they launch agents. The claude auth status command now exits right away with code 0 or 1 after printing your login status. Stale or overdrawn content in scrolled boxes is fixed. A plugin view that crashed while drawing is no longer applied again.

## Sections

Each section is its own markdown document of whole entries, in pages of about 40 KB. The whole release in one document is [full.md](https://changelogs.core-directive.com/v/2.1.289/full.md).

- [What probably matters to you](https://changelogs.core-directive.com/v/2.1.289/what-probably-matters-to-you.md): 8 entries
- [Improvements](https://changelogs.core-directive.com/v/2.1.289/improvements.md): 25 entries
- [Bug Fixes](https://changelogs.core-directive.com/v/2.1.289/bug-fixes.md): 9 entries
- [Internal Changes](https://changelogs.core-directive.com/v/2.1.289/internal-changes.md): 10 entries

## What probably matters to you

One line each. The section's own page has them in full.

- [Plugins can read the user's selected text through ui_read_selection](https://changelogs.core-directive.com/v/2.1.289/e/new-ui-read-selection-client-capability-for-plugin-uisele.json): A new `ui_read_selection` request lets a plugin's `$.ui.selection` read text the user has selected in an attached client
- [Plugin UI failures are now caught, reported and recoverable](https://changelogs.core-directive.com/v/2.1.289/e/new-ui-client-fault-control-request-lets-the-desktop-report.json): When a plugin's on-screen UI throws an error, Claude Code now catches it, draws its own UI instead and lets the plugin recover
- [A new drawing slot for plugin function hooks, plus an interface fault event](https://changelogs.core-directive.com/v/2.1.289/e/new-plugin-function-hooks-feature-slot-plugin-function-hook.json): Claude Code lists a new drawing slot for plugin function hooks and a new interface event for reporting faults
- [Plugin function hooks get a capability named for reading the selection](https://changelogs.core-directive.com/v/2.1.289/e/new-function-hooks-capability-plugin-function-hooks-selecti.json): A plugin function-hook capability called `plugin_function_hooks_selection_read` now exists, along with a new internal control message
- [Permission decisions can now name the hook that made them](https://changelogs.core-directive.com/v/2.1.289/e/toolcheck-hook-decision-accepts-an-optional-hook-string.json): Permission decisions gain an optional `hook` field, which plugin `tool.check` hooks can set, and rules inside nested commands are now found
- [Claude Code can notice when a plugin's folder has been edited](https://changelogs.core-directive.com/v/2.1.289/e/plugin-folder-re-read-detection-added-run.json): Claude Code can detect plugin folders changed since they were last read and show a notice that the plugin was re-read from its folder
- [`claude plugin eval` tests folder marketplace plugins from where sessions load them](https://changelogs.core-directive.com/v/2.1.289/e/claude-plugin-eval-resolves-installed-plugins-from-marketpla.json): Evaluating an installed plugin from a folder marketplace now runs it from that folder, or stops with an error if the folder no longer lists it
- [Plugin text lines described as up to 10000 characters instead of 4096](https://changelogs.core-directive.com/v/2.1.289/e/pinned-plugin-line-limit-changed-from-4096-to-10000-characte.json): Plugin-supplied text lines such as the pinned line are now described as up to 10000 characters followed by an ellipsis, not at most 4096
