---
title: "Zed — Your last next editor"
url: https://stacklist.com/card/126a1e57-b35e-4116-883f-b868ccc8682f
source_url: "https://zed.dev/"
stack: https://stacklist.com/stack/5e4316a0-7e5b-4d27-b0a8-830a0298a01f
summary: "Zed is a minimal, high-performance code editor written in Rust that enables collaborative development with support for parallel AI agents, real-time teamwork, and native speed across macOS, Linux, and Windows. The content showcases active development including accessibility improvements, bug fixes, and feature enhancements across multiple project repositories."
tags: "code-editor, collaboration, rust, ai-agents, developer-tools, open-source"
key_entities: "Zed (technology), Rust (technology), GPUI (technology), AccessKit (technology), React (technology), TanStack (technology), Claude Opus (technology), parallel-agents (concept), collaborative-editing (concept)"
classification: "reference"
content_hash: "sha256:95d072a658d178f2065f5a776b1648033ce19cd5ca430ff2df11f5c2314280db"
acp_version: "0.2"
token_counts_approximate: 4118
visibility: public
agent_accessible: true
status: "final"
---

# Zed — Your last next editor

Introducing: Parallel Agents → Your last next editor Zed is a minimal code editor crafted for speed and collaboration with humans and AI. Download now D Clone source C Available for macOS, Linux, and Windows Fast Written from scratch in Rust to efficiently leverage multiple CPU cores and your GPU. Agentic Run agents in parallel to smoothly edit files, navigate code, and run tools at native speed. Collaborative Chat with teammates, code together, and share your screen and project. Search… zed Add AccessKit support to GPUI elements gpui-accesskit / main • 4m Fix panic in buffer rope on large paste rope-panic-fix • 12m Add vim motion for surround pairs + 23 - 2 • 48m Workspace close button hidden with single tab 2h GPUI text shaping perf regression text-shaping-opt • 5h LSP hover tooltip positioning off-screen 1d Refactor project panel tree diffing tree-diff-refactor • 2d Add multicursor support in search replace 4d cloud Migrate billing endpoints to axum router axum-billing • + 43 - 11 • 8m Add TanStack query keys for team settings + 2 - 127 • 1h Fix stale cache on org membership change 6h Rust SDK pagination for collab sessions sdk-pagination / first-pass • 1d Dashboard table sorting with TanStack 3d zed.dev Break out page sections into components parallel-agents-page • 2m Fix hydration mismatch in blog layout 45m Refactor email submit API route api-route-cleanup • 3h Add OG image generation for blog posts 8h Tailwind v4 migration for global.css tokens tailwind-v4 • 1d Fix flaky MDX content loader tests 2d Add dark mode toggle to theme preview theme-builder-dark • 3d personal-project zed main / main Add AccessKit support to GPUI elements I want to add AccessKit support to GPUI so screen readers can traverse the element tree. Can you start by figuring out where the accessibility tree should be built and how elements currently expose their roles? Read crates/gpui/src/element.rs Search &quot;accessibility&quot; in crates/gpui/ List crates/gpui/src/platform/ Let me look at the GPUI element trait and the window&#x27;s paint cycle to understand where we can hook into the tree. I&#x27;ll also check if there&#x27;s any existing accessibility scaffolding. Write Claude Opus 4.6 scheduler.tsx catware.rs Uncommitted Changes panic src/components/scheduler.tsx 1 &quot;use client&quot; 2 ​ 3 import * as React from &quot;react&quot; 4 import { format , addMinutes , isAfter } from &quot;date-fns&quot; 5 ​ 6 // Types for our &quot;essential&quot; meeting system 7 interface Meeting { 8 id : string 9 title : string 10 couldHaveBeenAnEmail : boolean &#x27;couldHaveBeenAnEmail&#x27; is declared but its value is never read. 11 attendees : string [ ] 12 snacksProvided : boolean 13 actuallyStartsOnTime : number Type &#x27;string&#x27; is not assignable to type &#x27;number&#x27;. 14 } 15 ​ 16 type MeetingStatus = &quot;scheduled&quot; | &quot;running-late&quot; | &quot;cancelled&quot; | &quot;eternal&quot; 17 ​ 18 function validateMeeting ( atendees : string [ ] ) : boolean { Consider using &#x27;attendees&#x27; instead of &#x27;atendees&#x27; for clarity. 19 return atendees . length &gt; 0 &amp;&amp; atendees . length &lt; 50 20 } 21 ​ 22 let agendaItem = &quot;Discuss why we need more meetings&quot; &#x27;agendaItem&#x27; can be declared as &#x27;const&#x27; since it is never reassigned. 23 ​ 24 const MEETING_EXCUSES = [ 25 &quot;Sorry, I was on mute&quot; , 26 &quot;Can everyone see my screen?&quot; , 27 &quot;Let&#x27;s take this offline&quot; , 28 &quot;Per my last email...&quot; , 29 &quot;I have a hard stop in 5 minutes&quot; , 30 ] as const 31 ​ 32 /** Props for the world&#x27;s most essential component */ 33 interface MeetingSchedulerProps { 34 defaultDuration ? : number 35 maxAttendees ? : number 36 requiresSnacks ? : boolean 37 onMeetingCreate ? : ( meeting : Meeting ) =&gt; void 38 onEscapeAttempt ? : ( ) =&gt; never 39 } 40 ​ 41 /** 42 * MeetingScheduler - Because your calendar wasn&#x27;t full enough 43 * @description Helps you schedule meetings about scheduling meetings 44 */ 45 export function MeetingScheduler ( { 46 defaultDuration = 60 , 47 maxAttendees = 100 , 48 requiresSnacks = true , 49 onMeetingCreate , 50 onEscapeAttempt , 51 } : MeetingSchedulerProps ) : React . ReactElement { 52 const [ meetings , setMeetings ] = React . useState &lt; Meeting [ ] &gt; ( [ ] ) 53 const [ excuseIndex , setExcuseIndex ] = React . useState ( 0 ) 54 const [ isLoading , setIsLoading ] = React . useState &lt; boolean &gt; ( false ) 55 ​ 56 const formRef = React . useRef &lt; HTMLFormElement &gt; ( null ) 57 const sanityRef = React . useRef &lt; number &gt; ( 100 ) 58 ​ 59 // Memoized excuse rotation 60 const currentExcuse = React . useMemo ( ( ) =&gt; { 61 return MEETING_EXCUSES [ excuseIndex % MEETING_EXCUSES . length ] 62 } , [ excuseIndex ] ) 63 ​ 64 // Effect: Gradually decrease sanity 65 React . useEffect ( ( ) =&gt; { 66 const interval = setInterval ( ( ) =&gt; { 67 sanityRef . current = Math . max ( 0 , sanityRef . current - 1 ) 68 if ( sanityRef . current === 0 ) { 69 console . warn ( &quot;Developer sanity depleted&quot; ) 70 } 71 } , 60000 ) 72 ​ 73 return ( ) =&gt; clearInterval ( interval ) 74 } , [ ] ) 75 ​ 76 // Callback for creating meetings 77 const handleCreateMeeting = React . useCallback ( 78 async ( title : string , attendees : string [ ] ) =&gt; { 79 if ( ! validateMeeting ( attendees ) ) { 80 throw new Error ( &quot;Invalid attendee count&quot; ) 81 } 82 ​ 83 setIsLoading ( true ) 84 ​ 85 try { 86 const newMeeting : Meeting = { 87 id : crypto . randomUUID ( ) , 88 title : title || &quot;Meeting about meetings&quot; , 89 couldHaveBeenAnEmail : true , 90 attendees , 91 snacksProvided : requiresSnacks , 92 actuallyStartsOnTime : &quot;never&quot; , // This causes the error 93 } 94 ​ 95 setMeetings ( ( prev ) =&gt; [ ... prev , newMeeting ] ) 96 onMeetingCreate ?. ( newMeeting ) 97 setExcuseIndex ( ( i ) =&gt; i + 1 ) 98 } catch ( error ) { 99 console . error ( &quot;Failed to create meeting:&quot; , error ) 100 } finally { 101 setIsLoading ( false ) 102 } 103 } , 104 [ requiresSnacks , onMeetingCreate ] 105 ) 106 ​ 107 // Render the meeting madness 108 return ( 109 &lt; div className = &quot;meeting-scheduler p-6 bg-white rounded-lg shadow-xl&quot; &gt; 110 &lt; header className = &quot;mb-4 border-b pb-2&quot; &gt; 111 &lt; h1 className = &quot;text-2xl font-bold text-gray-900&quot; &gt; 112 📅 Meeting Scheduler Pro™ 113 &lt;/ h1 &gt; 114 &lt; p className = &quot;text-sm text-gray-500 italic&quot; &gt; 115 &quot; { currentExcuse } &quot; 116 &lt;/ p &gt; 117 &lt;/ header &gt; 118 ​ 119 &lt; form 120 ref = { formRef } 121 onSubmit = { ( e ) =&gt; { 122 e . preventDefault ( ) 123 handleCreateMeeting ( &quot;Sync&quot; , [ &quot; [email&#160;protected] &quot; ] ) 124 } } 125 className = &quot;space-y-4&quot; 126 &gt; 127 &lt; input 128 type = &quot;text&quot; 129 placeholder = &quot;Meeting title (optional, like agendas)&quot; 130 className = &quot;w-full px-3 py-2 border rounded&quot; 131 maxLength = { 255 } 132 /&gt; 133 ​ 134 &lt; select 135 defaultValue = { defaultDuration } 136 className = &quot;w-full px-3 py-2 border rounded&quot; 137 &gt; 138 &lt; option value = { 30 } &gt; 30 min (ambitious) &lt;/ option &gt; 139 &lt; option value = { 60 } &gt; 1 hour (realistic) &lt;/ option &gt; 140 &lt; option value = { 120 } &gt; 2 hours (why?) &lt;/ option &gt; 141 &lt; option value = { 480 } &gt; All day (send help) &lt;/ option &gt; 142 &lt;/ select &gt; 143 ​ 144 &lt; button 145 type = &quot;submit&quot; 146 disabled = { isLoading } 147 className = &quot;w-full py-2 bg-blue-600 text-white rounded hover:bg-blue-700 disabled:opacity-50&quot; 148 &gt; 149 { isLoading ? &quot;Syncing calendars...&quot; : &quot;Schedule Meeting&quot; } 150 &lt;/ button &gt; 151 &lt;/ form &gt; 152 ​ 153 { meetings . length &gt; 0 &amp;&amp; ( 154 &lt; ul className = &quot;mt-6 divide-y&quot; &gt; 155 { meetings . map ( ( meeting ) =&gt; ( 156 &lt; li key = { meeting . id } className = &quot;py-3&quot; &gt; 157 &lt; span className = &quot;font-medium&quot; &gt; { meeting . title } &lt;/ span &gt; 158 &lt; span className = &quot;text-gray-400 ml-2&quot; &gt; 159 ( { meeting . attendees . length } victims) 160 &lt;/ span &gt; 161 &lt;/ li &gt; 162 ) ) } 163 &lt;/ ul &gt; 164 ) } 165 &lt;/ div &gt; 166 ) 167 } 168 ​ 169 export default MeetingScheduler zed.dev — zsh ███████╗███████╗██████╗ ╚══███╔╝██╔════╝██╔══██╗ ███╔╝ █████╗ ██║ ██║ ███╔╝ ██╔══╝ ██║ ██║ ███████╗███████╗██████╔╝ ╚══════╝╚══════╝╚═════╝ Editor : Zed Version : 1.3.5 Platform : macOS 1 5 Rust Trusted by world-class developers &amp; industry leading teams Yes! Now I can have shortcuts to run and debug tests. Ever since snippets were added, Zed has all of the features I could ask for in an editor. JV José Valim Creator of Elixir I&#x27;ve had my mind blown using Zed with Claude 3.5 Sonnet. I wrote up a few sentences around a research idea and Claude 3.5 Sonnet delivered a first pass in seconds. When I spotted some small mistakes, I highlighted the parts I wanted to change and shared feedback for it to fix. I was able to go from idea to running experiment code in half an hour —it was really easy and fun. EP Ethan Perez Adversarial Robustness Research Lead This is obviously a product built with love and care. I can tell it from two minutes of using it. Kudos to the team. DA Dan Abramov React Core Team Member My god it is so fast. Boot time, UI interaction, typing latency. I feel it. I knew VS Code always felt sluggish, but I didn&#x27;t realize how good things could really be. I&#x27;m honestly astounded. MB Matt Baker Principal Engineer I’ve started using Zed, and I love it. Lots of subtle innovations (multibuffers, inlay hints, collaboration). Thoughtful, precise design. And the speed, the speed! MB Mike Bostock Creator of D3.js, founder of Observable Zed Just Works Incredibly powerful out of the box. And it only gets better as, every week, there&#x27;s always a new version. View Roadmap View Releases Learn More → Parallel Agents Run multiple threads of your favorite agents across several projects so you never leave your flow. Learn More → Expand Video Play Video Debugger Built on the Debug Adapter Protocol (DAP), native support for debugging across multiple programming languages. Learn More → Expand Video Play Video Agentic Editing Zed natively supports agentic editing, enabling fluent collaboration between humans and AI. Learn More → Expand Video Play Video Native Git Support First-class support for staging, committing, pulling, pushing, viewing diffs, and many more Git operations. Learn More → Expand Video Play Video Edit Prediction A tool that anticipates your next move. Powered by Zeta2, our open-weight language model. Parallel Agents Run multiple threads of your favorite agents across several projects so you never leave your flow. Debugger Built on the Debug Adapter Protocol (DAP), native support for debugging across multiple programming languages. Agentic Editing Zed natively supports agentic editing, enabling fluent collaboration between humans and AI. Native Git Support First-class support for staging, committing, pulling, pushing, viewing diffs, and many more Git operations. Edit Prediction A tool that anticipates your next move. Powered by Zeta2, our open-weight language model. Remote Development Your machine only runs the Zed UI, while the actual codebase runs on a remote server. Multibuffer editing Multibuffers compose excerpts from across the codebase in one editable surface. Vim-friendly First-class modal editing via Vim bindings, including features like text objects and marks. Loading… AI that works the way you code Zed doesn&#x27;t lock you into one model, it gives you the fastest way to collaborate with any agent. Learn about AI in Zed Agentic Editing Agentic Editing Delegate work to the agent, follow their progress live and review changes with ease. Learn More Edit Prediction Edit Prediction An open-source, open-data language model that predicts what you&#x27;ll type next. Learn More Inline Assistant Inline Assistant Easily transform your code in-line by sending selected code to a language model. Learn More Any Agent, Any Tool Any Agent, Any Tool Bring agents like Claude Agent, Codex, or OpenCode via ACP. Connect MCP servers for extending the agent&#x27;s knowledge. Learn More Expand Video Play Video Agentic Editing Delegate work to the agent, follow their progress live and review changes with ease. Edit Prediction An open-source, open-data language model that predicts what you&#x27;ll type next. Inline Assistant Easily transform your code in-line by sending selected code to a language model. Any Agent, Any Tool Bring agents like Claude Agent, Codex, or OpenCode via ACP. Connect MCP servers for extending the agent&#x27;s knowledge. Growing extensions ecosystem Boost your Zed experience by choosing from hundreds of extensions that broaden language support, offer different themes, and more. Create Extension View All Extensions HTML 5.5M HTML support. Isaac Clayton TOML 1.1M TOML support. Max Brunsfeld, Ammar Arif Git Firefly 1.1M Provides Git Syntax Highlighting d1y, Peter Tripp Catppuccin 886k 🦀 Soothing pastel theme for Zed Catppuccin Java 878k Java support. Java Extension Contributors Dockerfile 710k Dockerfile support. d1y, joshmeads PHP 579k PHP support. Piotr Osiewicz SQL 579k SQL language support. nervenes, notpeter, phileix, tammyxiong Vue 502k Vue support. Zed Industries Ruby 452k Ruby support. Vitaly Slobodin macOS Classic Theme 419k A macOS native style theme, let it same like native app in macOS. Jason Lee Catppuccin Icons 411k 🦊 Soothing pastel icons for Zed Catppuccin SCSS &amp; SASS 382k SCSS and SASS support Raunak Raj OpenCode 366k The open source coding agent. Anomaly Make 354k Makefile syntax highlighting Caius Durling, d1y, Marshall Bowers, Luke Naylor, Igor Támara, Michael Alexander, Donnie Adams Material Icon Theme 345k Material Design icons. Zed Industries Tokyo Night Themes 343k Tokyo Night Themes ssaunderss Lua 287k Lua support. Max Brunsfeld XML 275k XML syntax support. sweetppro C# 266k C# support. fminkowski, Fabian Freimueller Built with ultimate care Every single feature in Zed has been designed to advance the state of the art. Anything less isn&#x27;t worth building. Learn More Language Server Protocol support Language Server Protocol support Fully integrate your language of choice. Learn More Outline view Outline view Navigate through a file&#x27;s symbols. Learn More Text and line manipulation Text and line manipulation Code efficiently with advanced text editing capacities. Learn More Expand Video Play Video Language Server Protocol support Fully integrate your language of choice. Outline view Navigate through a file&#x27;s symbols. Text and line manipulation Code efficiently with advanced text editing capacities. Helix Mode Feel at home with Helix and Vim. Diagnostics Multibuffer Project-wide errors and warnings. Dev Containers Consistent development environment. CLI Use Zed from the command line. Rainbow Brackets Easily move around deeply nested code. Built-in REPL Run code interactively through Jupyter kernels. Syntax-aware selections Efficiently select syntax nodes. Inlay Hints Peek through your code. A letter From the team Programming and the tools we use to do so are changing. As the culmination of 15 years of work developing industry-leading tools for developers like Atom, Electron, and Tree-sitter, Zed strives to be at the forefront of this transformation. We&#x27;re confident that the future of software development lies in fluent collaboration between humans and AI. Crafted from the ground up, Zed is here to make this vision a reality. Zed Industries Nathan Sobo, Antonio Scandurra, Max Brunsfeld The latest from Zed Check out recent announcements, the Zed Decoded series, and other in-depth posts about Zed behind the curtains. View Blog Terminal Threads Are Live in Zed Run Claude Code, Amp, or any terminal agent as threads in Zed&#x27;s sidebar. Ben Brandt May 20th, 2026 Newest Why and How to Run Local Models in Zed You can run local AI models in Zed to get better performance and control over your data. Here&#x27;s how. Cameron Mcloughlin May 19th, 2026 Use Your ChatGPT Subscription in Zed Sign in with your ChatGPT account and use OpenAI&#x27;s models in Zed. Morgan Krey May 15th, 2026 Daily drive with Zed Code at the speed of thought. Download now D Clone source C
