Skip to main content
Releases v2.1.263 → v2.1.2692 features · September 7–11
Test plugins with claude plugin evalv2.1.269

claude plugin eval runs your plugin against a suite of test cases, scores the results, and by default runs each case again without the plugin so you can see what it contributes. claude plugin eval init asks you what a good result looks like, then proposes test cases and the checks that score them, tries the suite once, and writes the files. Every run, and every check that has a second model judge the reply, is a real model call on your account.

Terminal output of claude plugin eval: a table of seven cases with each case's score with and without the plugin, the delta between them, the run count, and the cost, followed by a summary line with the mean delta, total duration, and total cost

From your plugin’s root directory, have Claude draft the suite:

terminal

When Claude tells you the suite is ready, exit the session that claude plugin eval init opened and run claude plugin eval . to score every case. The summary table prints in your terminal, and report.html under evals/results/ has the per-run detail.

Test plugins with evals
Pop Desktop panes out into their own windowsDesktop

In the Claude Code Desktop app, you can pop any pane out into its own window. Drag the diff or terminal to a second screen while Claude keeps working in the main window, then dock the pane back when you’re done.

Arrange your workspace

Other wins

Set maxEffortLevel at the top level or per model under modelSettings to cap the effort level on every provider, including Amazon Bedrock, Google Cloud’s Agent Platform, and Microsoft Foundry; any higher level runs at the cap
Point --plugin-dir at a folder of plugins to load each immediate subfolder that has a manifest
If WebFetch hasn’t finished downloading a page within five minutes, the fetch fails with a deadline error instead of hanging; set CLAUDE_CODE_WEBFETCH_DEADLINE_MS to change the deadline, or to 0 to remove the limit
Pass --json to claude plugin install, uninstall, update, enable, or disable to print the result as one JSON object on the last line of stdout
When the auto mode classifier blocks an action, the reason Claude receives usually names the rule that matched, such as [Data Exfiltration]
When you type / partway through a prompt, you can now pick from a list of matching commands instead of a single suggestion. The list opens as you type in fullscreen rendering. A plugin skill also matches on its name without the plugin prefix
In the VS Code extension, click the agent count at the bottom of the prompt box to open the agent map, where you can open a subagent’s read-only transcript or stop it
In the VS Code extension, select Hooks or Permissions in the command menu’s Customize section to add or remove hooks and permission rules in your user, project, and local settings
Claude can pick a browser-tab icon to match each artifact it publishes
In Claude Code on the web, take back a queued message in a cloud session before Claude reads it: remove it from the queue, or press Esc or Up, and the text returns to the message box
Full changelog for v2.1.263–v2.1.269 →