This week's release includes side-by-side diff viewing, LSP semantic tokens highlighting, granular per-tool permission settings for the Agent, and further safeguards against the Agent running destructive commands.
Features
AI
- Agent: Introduced per-tool permission settings, including regexes for controlling when tools may be auto-allowed, auto-denied, or always require confirmation. (#48553)
- Agent: Added Claude Opus 4.6 and 4.6 Thinking with Cross region inference for US, EU, and Global endpoints. (#48525; thanks 5herlocked)
- Agent: Improved terminal command safety by auto-blocking a wider range of dangerous commands (e.g.
rm -rf $HOMEin addition torm -rf ~), detecting commands hidden in I/O redirects, here-documents, and compound command constructs, and detecting path traversal attacks in destructive commands. (#48399, #48635, #48640) - Agent: Added a
Latestindicator to highlight the latest models available through the Zed provider. (#48614) - Agent: Added
alt-las an alternate keybinding foragent::CycleFavoriteModelson Linux and Windows, sincealt-tabconflicts with the OS app switcher. (#48390) - Agent: Changed the Agent Panel so that the active thread is restored on restart. (#47795)
- Agent: Changed file and directory tool operations to require confirmation before modifying sensitive settings paths. (#48641)
- Agent: Improved image insertion by placing images at the cursor position. (#48779)
Git
- Added support for viewing diffs in split ("side by side") mode. (#48912)
Debugger
- Improved DAP settings so that it is possible to override individual fields, such as
binary. (#43647; thanks fredr)
Languages
- C++: Added attribute highlighting. (#47825; thanks ozacod)
- C/C++: Changed preprocessor directive highlighting to use a dedicated
@preproccapture group, allowing themes to style them independently from language keywords. (#48109; thanks ozacod)
Vim / Helix
- Improved Vim's subword motions to stop at
$and=characters. (#48276)
Collaboration
- Added a
Show Active Channelsbutton to the collab panel to filter down to only channels with participants. (#48826)
Remote Development
- Added support for
.devcontainer.jsonin project root. (#48814; thanks oliverbarnes)
Linux
Other
- Added LSP semantic tokens highlighting support. (#46356)
- Moved the update Zed button to the title bar and allowed it to be dismissed. (#48467)
- Improved resource usage by reducing work when the system is under high thermal stress. (#45638; thanks marcocondrache)
- Added
tab_switcher::OpenInActivePaneto allow a more vim-like tab switching experience. (#47079; thanks baldwindavid) - Added
project panel: collapse selected entry and childrenaction that collapses the selected directory and all its subdirectories. (#47328; thanks austincummings) - Added
Collapse Alloption to the Project Panel context menu for all directories, not just project roots. (#47328; thanks austincummings) - Added autocomplete support for the
settingsfield in LSP configuration, complementing the existinginitialization_optionsautocomplete. (#48332; thanks aviatesk) - Added
textDocument/foldingRangeLSP support. Use"lsp_folding_ranges": "on"in language settings to fetch and prefer the LSP folds. (#48611) - Added
global_lsp_settings.request_timeoutsetting to configure the maximum timeout duration for LSP-related operations. (#44745; thanks Bertie690) - Improved compatibility with legacy language servers. (#48587; thanks shaz-r)
- REPL: Added error display when parsing a message from a Jupyter kernel fails. (#48837; thanks rgbkrk)
Bug Fixes
- Agent: Fixed Bedrock model catalog URL in Agent Panel settings. (#48382)
- Agent: Fixed bug where streaming edits could apply edits incorrectly if the model requested overlapping edit regions. (#48547)
- Agent: Fixed disabled MCP servers disappearing from UI after restart. (#47758; thanks oliverbarnes)
- Agent: Fixed a bug where cancelling a thread mid-thought would cause further Anthropic requests to fail. (#48548)
- Agent: Fixed a bug where the model configured on a thread would not be persisted alongside that thread. (#48548)
- Agent: Fixed mention links not rendering in pasted text. (#45426; thanks tacshi)
- Agent: Fixed agent thread storage paths to follow the XDG specification on macOS and Linux, with backwards compatibility. (#45771; thanks maekilae)
- Edit Prediction: Fixed a panic when parsing predictions made by zeta1. (#48822)
- Edit Prediction: Fixed focus skipping provider dropdown and GitHub Copilot button in edit prediction settings. (#48530; thanks austincummings)
- Git: Fixed the git panel commit editor not respecting soft wrap settings. (#46422; thanks mchisolm0)
- Git: Fixed an issue where the
git: diffaction would not respect the active worktree. (#48535) - Git: Fixed an issue where Zed would try to open all edited files in
~if your git config had aglobalexcludesin~that did not exist. (#48408) - Git: Fixed issue where viewing a stash entry would not dismiss the modal. (#48491)
- Vim: Fixed
$not sticking to end-of-line on vertical motions (j/k) when the cursor was already at the end of the line vialor arrow keys. (#48867) - Vim: Fixed increment (
ctrl-a) and decrement (ctrl-x) not working on Markdown ordered list markers like1.,2., etc. (#47978; thanks lex00) - Helix: Fixed
HelixSelectLinewith an empty first line and a pre-existing selection. (#48026; thanks jrobsonchase) - REPL: Fixed shutdown of kernels on app exit. (#48760; thanks rgbkrk)
- REPL: Fixed startup for R kernels and Python kernels on Windows. (#48817; thanks rgbkrk)
- Go: Fixed a bug where the
TestMainfunction would incorrectly appear as a runnable test. (#46575; thanks lzakharov) - Go: Fixed wrong syntax highlighting with chained indexing (e.g.
a[b][c]). (#48870; thanks MohibShaikh) - Fixed an issue where blurring the filename editor in the Project Panel could lose the previous selection while creating a file or folder. (#48578)
- Fixed an issue where installing theme extensions could block the main thread. (#48685; thanks marcocondrache)
- Fixed an issue where selecting
Collapse Allon the root directory or triggering theproject panel: collapse all entriesaction would sometimes collapse the entire root instead of keeping it expanded when there's a single worktree. (#48443) - Fixed clicking
Collapse Allfrom the context menu on a project root collapsing all project roots instead of just the selected one. (#47328; thanks austincummings) - Fixed an issue where the welcome screen would show up in the terminal panel if the terminal was slow to load. (#48930)
- Fixed terminal tasks hanging on macOS when a spawned process is killed by a signal. (#48877)
- Fixed C/C++ outline for function definitions and declarations with mixed storage and type qualifiers. (#47500; thanks ozacod)
- Fixed indentation of block comments in C and C++. (#47810; thanks ozacod)
- Fixed issue where certain keywords were incorrectly highlighted in JS files. (#48460)
- Fixed DAP (Debug Adapter Protocol) methods failing for extensions targeting the v0.8.0 extension API. (#48777; thanks Brad-Fullwood)
- Fixed devcontainer operation on Windows for when the devcontainer CLI is not installed globally. (#48387; thanks KyleBarton)
- Fixed project search returning no results in devcontainers with a single visible CPU. (#48798; thanks oliverbarnes)
- Fixed Doom WAD files being erroneously treated as text. (#48349; thanks elf-alchemist)
- Fixed settings migrations to correctly handle settings nested under platform, channel, or profile keys. (#48550)
- Fixed the editor rewrapping like crazy when agent edits were present. (#48423)
- Fixed a bug where tabs could be closed by simply pressing the middle mouse button down, without completing a full middle click. (#44916; thanks Zachiah)
- Fixed and improved font ligature support. (#48504; thanks adb-sh)
- Fixed the Zed CLI opening a new window instead of reusing existing windows for remote workspaces. (#48891)
- Fixed the new file/folder input appearing in the wrong location in the Project Panel when creating inside a collapsed directory path. (#46750; thanks andre-eriksson)
- Fixed
Esckey not canceling inline assist when using the JetBrains keymap. (#45306; thanks tacshi)
Breaking Changes and Notices
- Replaced the
always_allow_tool_actionssetting withtool_permissions.default. (#48553)