This week's release includes screen-sharing support on Wayland/Linux, multi-line search and replace, git status indicators in the project panel, pasting files and folders into the Agent Panel, and vim/emacs modeline support for per-file language detection and editor settings.
Shipped by the Zed Guild ๐ก๏ธ
- Added support for multi-line search and replace input in Buffer Search and Project Search. (#50783; thanks claiwe)
- Improved "Diff Clipboard with Selection" to support side-by-side diff view style. (#51966; thanks OmChillure)
- Improved Linux auto-update failure issue caused by missing
rsyncby surfacing actionable install guidance in the update UI. (#50637; thanks nihalxkumar) - Improved semantic token highlighting for parameters and Python. (#52130; thanks lingyaochu)
- Updated Settings UI such that enabling Vim or Helix mode now disables the other if it was previously active. (#51706; thanks feitreim)
- Fixed copy for some Wayland users. (#52053; thanks mchisolm0)
- Editor: Fixed multi-line cursor expansion dealing with multi-byte characters. (#51780; thanks feitreim)
- Helix: Fixed binds for splitting window. (#51962; thanks feitreim)
- Helix: Fixed helix paste not pasting from system clipboard. (#51703; thanks feitreim)
- Language Models: Fixed partial JSON streaming. (#51976; thanks feitreim)
- Settings Editor: Fixed the display issue with narrow windows on the Edit Prediction configuration page. (#51878; thanks feitreim)
- Windows: Fixed an issue where text copied from Office applications couldn't be pasted into Zed. (#51807)
- Fixed "Replace All" in project search not working on the first attempt when the search query was changed or results hadn't loaded yet. (#50852; thanks OmChillure)
- Fixed
[x]and[ ]checkboxes not rendering in markdown table cells. (#50595; thanks iam-liam) - Fixed
awaitkeyword not being highlighted askeyword.controlin JavaScript, TypeScript, and TSX files. (#52034; thanks OmChillure) - Fixed file and directory renaming failing in the project panel on FUSE-based filesystems (e.g., NTFS, exFAT drives on Linux). (#51779; thanks OmChillure)
- Fixed garbled characters in window titles on Linux X11 (e.g., Settings window). (#51899; thanks OmChillure)
- Fixed Go
goplscode actions soAdd test for ...appears in the generic code actions menu. (#50979; thanks loadingalias) - Fixed incorrect diff region when using "Diff Clipboard with Selection" with expanded diff hunks in the editor. (#51985; thanks OmChillure)
- Fixed markdown table columns to use content-based auto-width instead of equal-width distribution in both markdown preview and agent panel. (#50839; thanks YEDASAVG)
- Fixed rewrapping paragraphs in markdown when you have nothing selected. (#51742; thanks polyesterswing)
- Fixed SSH host picker showing git provider domains (e.g., github.com, gitlab.com) from SSH config. (#51528; thanks sarmadgulzar)
- Fixed text corruption when using macOS Accessibility Keyboard word completion. (#50676; thanks criticic)
- Fixed switching between Vim and Helix mode needing multiple calls to have an effect while an editor is already open. (#51706; thanks feitreim)
- Fixed two items appearing highlighted simultaneously in pickers (command palette, file finder, etc.) when using keyboard navigation and then hovering with the mouse. (#50827; thanks OmChillure)
Learn about the Zed Guild.
Features
AI
- Added support for pasting files and folders into the Agent Panel. (#52300)
- Anthropic: Added support for selecting reasoning effort. (#51946)
- OpenAI: Enabled parallel tool calling support for models that support it. (#52203)
- Added Opencode Zen to list of providers. (#49589; thanks ripgrim)
- Added support for Native Thinking toggle instead of model variants. (#50673; thanks 5herlocked)
- Added OAuth authentication support for remote MCP servers. Servers requiring OAuth now show an "Authenticate" button when they need you to log in. You will be redirected in your browser to the authorization server of the MCP server to go through the authorization flow. (#51768)
- Changed the agent panel to have a flexible width, similar to the center panes of the workspace. (#52276)
- Changed the terminal permissions UI to allow selecting individual subcommands independently. (#49547)
Git
- Added git status indicators in Project Panel. It can be enabled by setting
git_status_indicatortotrueinproject_panelsettings. (#50216; thanks davidescaccia) - Added
git_panel.starts_opensetting to control whether the git panel opens automatically in new workspaces (default:false). (#51601; thanks mvanhorn) - Improved UI responsiveness to branch/worktree changes. (#51882)
Languages
- Gopls: Added semantic token rule for format string interpolations. (#52394; thanks MFattakhov)
- Added JSON syntax highlighting for
.babelrc,.eslintrc,.stylelintrc, and.swcrcconfiguration files. (#50800; thanks rodrii-dp)
Terminal
- Improved
terminal: New Terminal(cmd-n) to open in the center pane when a terminal tab there is focused, instead of always opening in the terminal panel. (#48609; thanks srbsingh3)
Vim / Helix
Collaboration
- Added automatic volume control to calls. (#51919)
- Added call diagnostics when collaborating with other Zed users in collab. (#51816)
Remote Development
- Added a toggle to control password visibility when connecting to a remote project. (#52297; thanks cppcoffee)
Linux
- Added screen-sharing support on Wayland/Linux. (#51957)
- Added support for GNOME's window buttons configuration on Linux. (#47506; thanks mufeedali)
Other
- Added support for pasting files from Finder (and other file managers) into the project panel via the system clipboard (macOS only). Copying or cutting files in the project panel now also writes their paths to the system clipboard for use in other apps. (#49367; thanks davidgatea)
- Changed go to definition (and similar actions) to no longer open a multi buffer if there are multiple results that all fit into a single excerpt. (#51461)
- Changed clicking a sticky header to put the cursor at the clicked column. (#51911)
- Allowed the keymap and settings UI to be opened without an active window. (#49527; thanks claiwe)
- Added support for vim and emacs modeline comments, allowing per-file language detection and editor settings (e.g.,
# vim: set ft=python :or-*- mode: ruby -*-). (#49267; thanks elmarco) - Added "Reveal in Finder" to the tab context menu. (#51615; thanks mvanhorn)
- Changed the order of the collab and outline status bar buttons. (#52232)
Bug Fixes
- ACP: Fixed the agent server not starting in a project directory. (#52005)
- ACP: Fixed plan stats showing all tasks as done when items were still in progress. (#52196)
- Agent: Fixed cursor position being reset when editing queued messages. (#52210)
- Agent: Fixed rendering of filenames in edit tool header. (#49668; thanks kbidlack)
- Agent: Fixed pasting image files copied from Finder inserting the file path instead of attaching the image in the Agent Panel. (#51575; thanks monkey-mode)
- Copilot Chat: Fixed subagent requests being marked as user requests. (#52350)
- DeepSeek: Fixed issue with tool calling (
An assistant message with 'tool_calls' must be followed by tool messages responding to each 'tool_call_id'...). (#52199) - Fixed
.vscode/tasks.jsonstill being used when.zed/tasks.jsonis present. (#51797; thanks moktamd) - Fixed 1-2 seconds of audio silence when unmuting for the first time during a call with Bluetooth headphones when
mute_on_joinis enabled. (#52236) - Fixed
.githandling when.gitis a file instead of directory, e.g., when using worktrees or submodules. (#51563; thanks steveej) - Fixed
code_actions_on_formatedits being reverted whenformatter: "auto"resolves to an unavailable formatter. (#51605; thanks mvanhorn) - Fixed a bug where a removed workspace could reappear on next launch due to a serialization race. (#52035)
- Fixed a bug where closing an agent thread could lose unsaved changes (e.g., draft prompts) made in the same frame. (#52030)
- Fixed a crash when pasting text into the prompt editor in the agent panel. (#51918)
- Fixed a Linux/X11 issue where closing the Settings window could cause Zed to hang. (#51561; thanks AxXxB)
- Fixed an issue where dismissing an edit prediction would not fully discard it, causing it to re-appear. (#52334)
- Fixed an issue where large changes to buffers, or edits in buffers with extremely long lines would cause edit prediction requests to fail. (#51938)
- Fixed an issue where using
@fetchin the agent panel would break if URL contained an@character. (#51953) - Fixed copy marker for copied file being appended in the wrong position of filename. (#48845; thanks pigletfly)
- Fixed branch picker showing parent repository's branch instead of the nested repository's branch when working in submodules or nested git repos. (#51898; thanks Caio-Ze)
- Fixed code folding incorrectly collapsing when multiline strings or block comments contained unindented content. (#50049; thanks ryan-m-walker)
- Fixed deleted files persisting in project search results. (#50551; thanks Dnreikronos)
- Fixed documentation tooltip reappearing after editor regains focus. (#48924; thanks feeiyu)
- Fixed git panel context menu jitter caused by keybinding dispatch context flickering when right-clicking on tracked files. (#52217; thanks Dnreikronos)
- Fixed highlight tree view usability. (#51927)
- Fixed image context mentions always showing
Imageinstead of the actual filename when pasting from Finder or using the image picker in the Agent Panel. (#52082; thanks monkey-mode) - Fixed IME composition on macOS in Vim insert mode so multi-stroke keybindings like
jjwork correctly. (#52192; thanks kouphasi) - Fixed incorrect worktree root when
settings.jsonis a symlink on Windows. (#51453; thanks bryanpth) - Fixed indent-based code folding to display the closing delimiter (
},),]) on the same line as the fold placeholder instead of on a separate line. (#50090; thanks Dnreikronos) - Fixed line wrapping splitting words at typographic apostrophes (e.g., "won't" breaking as "won" / "'t"). (#51973)
- Fixed loading environment variables when nushell is used as shell. (#51420; thanks NotLebedev)
- Fixed rainbow brackets in Markdown when quotes caused parentheses to match incorrectly. (#52107; thanks kaikozlov)
- Fixed stale diagnostic data persisting after file reloads, server restarts, and filesystem entry removals. (#49333; thanks ArthurDEV44)
- Fixed the first line of terminal output sometimes missing in Agent Panel terminal blocks. (#52111; thanks Dnreikronos)
- Fixed the tooltip on the terminal dock icon. (#52357; thanks msmolkin)
- Fixed window title displaying garbled characters (e.g., "Zed รขโโ Settings") on Linux X11 due to missing UTF-8 encoding for the
_NET_WM_NAMEproperty. (#51909; thanks Vastargazing) - Fixed find-and-replace (
Ctrl+H) to focus the replacement input instead of the search bar when opened. (#51061; thanks CCXLV) - Fixed a crash (index out of bounds) during editor rendering when block decorations repeatedly resize, exhausting the recursive prepaint budget. (#49664; thanks jean-humann)
- Fixed the error message on compilation of regular expressions containing variable-length lookbehind assertions. (#51549; thanks prertik)
- Fixed "No Apps Available" dialog when opening URIs on Linux/Wayland. (#49752; thanks tahayvr)
- Fixed inline assistant 400 errors for GPT-4.1, Gemini, and other non-Anthropic models via the copilot_chat provider (
tool_choicewas sending"any"instead of"required"). (#52015; thanks Vastargazing) - Fixed git panel status icons still showing when
git_panel.status_styleis set tolabel_color. (#51947; thanks Vastargazing) - Fixed
action::Sequencekeybindings not working in the Rules Library window. (#51890; thanks Dnreikronos) - Fixed macOS font rendering being clipped when using
.SystemUIFont. (#47001; thanks huacnlee)
Breaking Changes and Notices
- Removed the experimental rodio audio backend. (#51945)
- Removed support for using the Sweep AI edit prediction provider through their proprietary API, as the servers are shutting down. (#52348)
- Changed edited buffers to be saved before running a task. This can be configured with the new "save" field in
tasks.json. (#48861; thanks abenea) - Changed
{ "autosave": "on_focus_change" }to now always save on focus loss, except when activating the command palette in Vim/Helix mode. (#51949)