Claude Code adds an experimental Code Mode where Claude writes JavaScript to call its tools, and plugins must now declare a version range
Synopsis
Anthropic's Claude Code changelog adds Code Mode, an experimental opt-in in which Claude writes JavaScript to call its own tools instead of issuing tool calls one at a time. The same update lets plugins declare an engines["claude-code"] version range in plugin.json, so plugins outside their stated range are not installed, updated or loaded, and install and update pick the newest version that fits. The claude plugin validate command now also type-checks a plugin's TypeScript hooks module and reports each finding as a warning.
Interpretation
Claude Code gains an optional way to call tools: Claude writes JavaScript code that calls its tools, rather than the model emitting tool calls one by one. The mode is experimental and must be turned on by the user; it is not on by default, and an organization can turn it off. The changelog lists Code Mode as an addition and points to documentation for turning it on or off for an organization, which places it in an experimental, explicitly chosen state.
Plugins can now declare the Claude Code version range they fit in plugin.json, and a plugin outside that range is not installed, updated or loaded. Previously plugins had no such version-constraint field, so install and update had no basis for choosing a version that matches the running Claude Code. The changelog states what engines["claude-code"] does and says install and update pick the newest version that fits.
The plugin validation command claude plugin validate now type-checks a plugin's TypeScript hooks module, reports each finding as a warning, and fails on it under --strict. Previously the command did not type-check TypeScript hooks modules, so such problems did not surface as validation warnings. The changelog lists the type checking as a new capability of claude plugin validate and describes the warning and --strict failure behavior.
Perspective
These updates are aimed at developers and plugin authors using Claude Code and describe product features and behavior changes; Code Mode is explicitly labeled experimental and must be turned on, and the plugin version range and type checking apply only within that toolchain.
The changelog gives no comparison or evaluation data for Code Mode and does not describe migration for existing plugins under the version range; Code Mode remains labeled experimental.
