The Zed team seem to have really learned their lesson on performance from the Atom days, because it's very performant. @nathansobo, @maxbrunsfeld, @as-cii and the team, congrats!
EDIT: Tho if sublime wasn't already "doing everything [you] need", maybe you aren't familiar with the plugin ecosystem!
And I'm not luddite swearing by vi or something, I use VSCode and Idea, and have used Sublime for many years, Xcode on/off for some Obj-C/Swift dev, Eclipse for 5-6 years in the 2000s, and vim for everything cli/lightweight since forever.
Is the GUI tech what's supposed to be novel? I couldn't care less about that backend in my everyday editor use as long as the editor is fast enough. Which on modern hardware, even Idea is.
Don't get me wrong, it's a good editor still.
Any ToS for a company that you send data to process includes similar terms that just allow it to process the data as you are expecting them to in order to provide these services. Eg for the AI tab-completion, they process part of your source code on their servers and provide a tab-completion suggestion ("derivative data"). Some people are evidently either unfamiliar about how these things work or about the data-related legalese terms used (barring any bad intentions assumed). If anything, paragraph 4.2 [1] makes it clear that any data output is owned by the user (and not by zed). This whole discussion made me read the terms and (apart from the arbitration thing imo, though not uncommon), I couldn't see any kind of dark pattern or issue.
I like zed a lot, it works great, I am definitely cautious about the fact that they have received VC money which holds me from getting "all-in", but criticism that is based on misunderstandings or on obviously factually wrong arguments is not very useful.
[0] https://github.com/zed-industries/zed/issues/50568#issuecomm... (could be some better source than a github comment but it has been repeated many times)
(do you comment this same type of thing on github, microsoft, apple, etc. posts? all of these comments seem absolutely tame compared to the vitriol in those threads. most top comments here are supportive. most of the negative ones are constructive.)
To the Zed developers: CONGRATULATIONS! I have been following your project with great interest since your speed demo years ago. And since it’s AI-first, I’m interested to see how we can integrate it with https://safebots.ai (Safebots, Safebox, and Safecloud).
I would love to see how we might be able to increase the safety of agents in Zed, use local models like Qwen/Deepseek and we also have Grokers which can turn any codebase into a graph with tree-sitter and help your agents far more than RAG and similarity search (https://grokers.ai/deck.pdf)
What’s the best way of getting in touch? (If you want, my profile has a way of emailing me).
I don't think overly-opinionated meta-comments are inherently bad, but I don't come to this site for them. I don't even think your comment is bad; I'm mad that this is what the people of HN have decided is the most important remark on the matter. It tells me something unfortunate.
My daily driver is Zed developing on SSH remote servers on exe.dev.
It's crazy to think of all the dev tools I've churned through over the last 18 months but these two feel sticky.
Zed has everything I need in a unified pane. File editor, terminal, agents, SSH remotes. And it's fast and intuitive
exe.dev is the first "dev container" I've ever *loved*. The remote sandbox means `dangerously-skip-permissions` is safe. Being on the internet with good private / shared / public access saves so much time.
I also use https://conductor.build/ and GitHub but this is starting to feel clunky compared hacking directly against online live reloading apps.
A lot of the time I'm developing on a remote server using VSCode Remote-SSH. I mostly love it. But! It consumes a lot of memory. And not only that. At times it gets stuck in some infinite loop or such, and ends up consuming all memory on the machine, preventing all traffic. Takes a few minutes for the OS to finally kill it, so I can get back in. I'm pretty this is happening due to large collections of symlinks (the subprocess eating up the memory is rg). But also just JavaScript editing at times launches up a bunch of ts-servers consuming everything and more.
This is super scary, if I'm poking around on the prod server.
Looking for alternatives. Zed is on my list.
For auth one can use Caddy and basic auth. Yes it takes a bit of work but it isn’t that bad. Plus zero subscription costs if your VPS is a Raspberry
Had to shut everything down, list the port, and then reconnect. A big pain when other tools just automatically figure out what needs to be forwarded, or just let you specify arbitrary ports at runtime.
For each kind of warning, I wish there was a button that said "don't warn me again about issues like this one in this project." Then I could keep the interesting warnings (like undeclared variable) and ditch the ridiculous ones.
Isn't it just the default configuration of whatever LSP zed defaults to for PHP?
So you should be able to either configure the LSP to avoid that or disable the LSP server entirely.
I feel like some people will be put off by all the "AI" mentioned by Zed, but you're sleeping on a top tier editor where you can just ignore the AI stuff if you don't want it. It's very high quality, and probably the reason I wont be renewing next year for JetBrains, unless JetBrains does something impressive, I thought by now they'd have a more native feeling IDE that handles most / any language instead of so many separate ones.
VS Code has gotten so bloated over the years. The gold standard of ST has spoiled me with simpler editors. Zed is the first time I felt like someone finally built an editor that is modern and has a rich set of features.
I’m not sure why though. I do not have the issue you do, but Sublime feels better.
I eat the cost of configuring it manually when I start up something new because it's just not that big of deal, even when you're like me, working across myriad languages and frameworks and organization with varying standards. It's not ideal, but it's not deal-breaker.
I do wish that there was a better way to definitively set it up a particular way and know that it is doing what you want it to do. I want something like presets/profiles. If I'm working with typescript, I want to be able to set it up to use a specific version of tsc, eslint, prettier; I also want to be able to create a different one with biome; I want it to work correctly whether I have my source in the project root or in a sub directory or in a monorepo tree.
Fairness to Zed: it is difficult to support all of these permutations, but I do think that they ought to be able to do something better to abstract these things and make the reusable.
I haven't used Zed, but can you choose the PHP version, or point to a PHP executable for warnings/errors? I know in VS Code, you point to the PHP executable for the version you are using, to catch errors. I haven't created a new PHP project in quite some time, but I did work on many older PHP projects, and never had this issue with VS Code. I suspect even if you don't go about it this way, there has to be configuration to specify what is and isn't an error vs. warning.
Writing C in Zed is a wonderful experience. The LSPs surface errors in an manner that is very easy to view and edit.
My main issues with Zed are:
- Word-wrap: I prefer on-demand, and I haven't been able to figure out which setting triggers that. Of if it is even possible.
- Support for Devanagari and other scripts: I use it as a markdown editor to proofread old texts and it is inadequate for that purpose. Kate/Featherpad offers a superior experience for this, including the ability to zoom to see those visually difficult to parse conjunct consonants.
It really there is no realy good ide or tools for php
I'm sticking with Sublime Text, as its developers actually respect boundaries on my computer.
When you search, Zed opens a new tab, which I hate. Sometimes I just want to have a quick glance at some code and close the search using escape.
Telescope style search in vim, helix or JetBrains tools is so much better.
The multibuffer result is so nice for "hands-on" search and replace.
What I hate though is really unintuitive and "non-standard"[1] shortcuts in search tab.
For example "find in project": cmd+shift+f
Whereas for "find and replace in project" I'd expect: cmd+shift+r , but it's: first toggle find, then toggle find and replace. Ok, absolutely fine, but the keyboard shortcut to toggle is: cmd+shift+h - I never can remember it.
When already searching, for my "convenience", if I'd like to adjust my search or search for something new, I click cmd+shift+f and I am focused back to find input, but here's the kicker. Input have automatically changed to what word was under my cursor. So if I was looking for some long or weird string, I need to retype it again or find and copy/paste it again.
#first-world-problems though.
I got tired of babysitting vim/neovim and all it's plugins and use Zed for most of my editing. It has pretty good vim binding support and maybe I just need to remap some key bindings to have better search experience. Zed is much better at emulating vim than Cursor/VSCode.
[1] there's no standard obviously, but some things are the same/similar across most programs.
How else are you going to have “a quick glance at code” *across* project files without using a new view for that? It sounds like you’re describing something impossible.
Zed’s across files search solves this in a similar way as other tools. Except that in zed you can also edit the code where your search results show up. Zed also has within file search.
Also now they've introduced this "agent first" layout which i cannot undo. They're strength is in perf, idk why try to reinvent the wheel w.r.t DX.
You also have to validate the search, it doesn't start off immediately on its own, which annoys me a lot more.
"4.1. Zed's Use of Customer Data Customer hereby grants Zed a non-exclusive, worldwide, royalty-free, fully paid-up, non-sublicensable (except to service providers and Customer’s designees), non-transferable (except as set forth in Section 15.1) right to use, copy, store, disclose, transmit, transfer, display, modify, create derivative works from, collect, access, store, host, or otherwise process (“Process”) any materials that Customer inputs into or otherwise makes available to the Service (including prompts and other written content) (collectively, “Customer Data”) solely: (a) to perform its obligations set forth in the Terms, including its Support obligations as applicable; (b) to derive and generate Telemetry (see Section 4.4); and (c) as necessary to comply with applicable Laws. Except as required by applicable Laws, Zed will not provide Customer Data to any person or entity other than Customer’s designees (including pursuant to Section 7) or service providers."
Sorry, no I don't agree to make my source code and the product I am working to give you "non-exclusive, worldwide, royalty-free, fully paid-up, non-sublicensable (except to service providers and Customer’s designees), non-transferable (except as set forth in Section 15.1) right to use, copy, store, disclose, transmit, transfer, display, modify, create derivative works from, collect, access, store, host, or otherwise process (“Process”) any materials that Customer inputs into or otherwise makes available to the Service (including prompts and other written content)"
Seems like legalese to be able to take that data for support reasons, telemetry, and local laws that require that data be sent to them. I think ignoring this portion is a little uncharitable to them.
1. Mandatory arbitration by default. You waive your right to a jury trial and cannot join class action lawsuits. You have only 30 days to opt out after agreeing to the terms.
2. 1-year statute of limitations. You must file any legal claim within one year, which is much shorter than the default period under most state laws.
3. Zed can terminate your account at any time, for any reason, with no liability. No notice is required, and they owe you nothing if they pull the plug.
4. Autocomplete sends your code to AI providers in the background unless you turn it off. Worth knowing if you're working on proprietary or sensitive code.
5. No guarantees about data retention. If your payment lapses, they reserve the right to delete your account and all associated data with no liability.
6. All fees are non-refundable except where required by law, with one narrow exception for disagreeing with modified terms.
7. Zed can modify the terms at any time. For existing users, material changes take effect after just 30 days, and continued use counts as acceptance.
8. Zed can use your name, logo, and brand in their marketing without asking. You'd have to send a written request to stop them.
9. No warranties whatsoever. The service is "as is", they disclaim all responsibility for errors, data loss, or AI-generated output being inaccurate or harmful.
10. Liability is capped very low, at most, whatever you paid in the last 12 months, or $100, whichever is higher.
That said the definition of "telemetry" is so broad that I think it would include training a LLM and the like. Telemetry is defined in section 4.4 as
> Zed may collect, generate, and Process information, including technical logs, metrics, and data and learnings, related to the Software and Service (“Telemetry”) to improve and support the Services and for other lawful business purposes.
I guess that it's so opaque is also objectionable. Contracts don't have to be inscrutable.
This is sensible, no?
I’m not associated with Zed in any way except as a user. That said, this is a bonkers misinterpretation of their ToS. You don’t grant them the right to eat all your data just by using the editor. You do give them the right to process your data if you sign up for an account and opt in to send them all your data for processing.
If it's open source it can't have a license agreement to use the software itself
Or is this an agreement to use some cloud service? Supposedly you can opt to not use it
Elsewhere people said that "even if you disable telemetry, Zed can still collect telemetry" but, it being open source means you're still in control
No open source license can force you to run misfeatures
What’s local stays entirely and totally local, always and every time, otherwise what’s the point?
If it is a matter of communication, they can fix and clarify it. If it's genuinely scummy, they can change their approach now that they know they were caught in the act
So far they've been great and product is fantastic as you know.
Customer hereby grants Zed
{{ broad list of rights }}
solely:
{{ for these purposes }}
IANAL, but the term "solely" seems essential to understanding this. Pivotal. As in "if you get it wrong, you'll be wearing a tinfoil hat" essential.Also see "4.4. Telemetry: .... For avoidance of doubt, Telemetry expressly does not include Customer Data."
My two cents: I'm not worried about Zed's contract here. Much more important to pay attention to when your data goes to third-party AI providers: read _their_ contract language.
Meta-comment: Don't let a well-meaning comment like the above trigger a panic. Better to get familiar with typical contracts and/or build your personal network for legal advice.
P.S. Look out for shameless legal slop on the Web, I "promise.legal" it is out there.
With AI being so good why isn't someone making fully open source alternatives to all this crap by now?
Oh Zed is open source, maybe Codex/Claude can make a VSCodium-like fork off it?
1. SaaS Agreements: Key Contractual Provisions https://www.americanbar.org/groups/business_law/resources/bu...
2. Cornell Law School's Wex: https://www.law.cornell.edu/wex
3. Coursera : American Contract Law I (Yale prof): https://www.coursera.org/learn/contracts-1
4. Software as a Service (SaaS) Agreements: Thomson Reuters/Westlaw (paywalled; trial available) https://content.next.westlaw.com/practical-law/document/I61c...
If anyone has good detailed resources that are free, please add.
[1] IANAL but I wasn't that far from going down that path. I've worked for a legal-tech startup, did really well in an undergrad Constitutional Law class, incorporated several small companies, managed lots of contractor agreements. So, I know from experience: legal language is weird and specific in ways you may not realize. So be intellectually humble and defer judgment until you talk to a legal expert. Hopefully people more experienced than I can weigh in with more specifics.
And Mitchell definitely seems to want to make Alacritty an easy target for conversion, he was just talking about being open to help support Warp with it: https://x.com/mitchellh/status/2049159764261925005
That being said, I love the software and will continue to check back on it with the hopes that it sticks one day. Congrats on the 1.0!!
There has been substantial improvement, but the search and symbol follow UX is really bad. Hoping the fix that.
BUT: It's very easy to just choose a different theme and there are plenty to choose from by now. It's even possible to make your own theme and they even have a first-party theme editor (https://zed.dev/theme-builder) which works great. They should maybe include some descriptions for each color instead of just the name but that's the only negative thing I can say right now.
I'd even say that it's easier to theme Zed than VSCode because there are fewer variables.
It also has a much better edit prediction model than Zed
The problem is that Cursor Tab seems kinda psychic, and I didn't realise how conditioned I'd become to just expressing a few keystrokes in the right place and have Tab pick up my intentions. If you're refactoring, you can move between files and it'll remember what you just did in a tab you just closed, and work out how to make the same changes here.
It's also really good at picking up patterns and the right imports from the whole repo. It seems to be working with a much larger, more persistent context.
I tried Zed AI, Copilot, and Mercury. All three seemed forgetful after a year of Cursor Tab. I wish there was a fix because literally everything else about Zed was an improvement.
I did install it in a VM with virtio-gpu, but it was absurdly slow, so I wasn't able to try it.
(there is, of course, a rich tradition of text editors with the same issue, including Vim and Emacs. They 1) have an excuse; 2) provide both workarounds and their own input method systems. Having this in a new program is nuts.)
Tried switching multiple times from vscode but it's just not feature complete for my use cases. Off top:
- no expanding tabs to fill the window until another one is clicked
- file picker hides .gitignored files
- vertical terminal tabs would be nice
- restart doesn't automatically load the previous window (most recent project)
- while faster/more responsive than vscode on large codebases, still pretty heavy compared to its AI-averse fork, gram; thus I can't use it on the macbook neo
Until some/all of that is improved, it's just uncanny valley territory with no particular killer feature to migrate. Appreciate all the work they've put into it (especially remote ssh parity!) though and like what they're doing in broad strokes
2. Uncheck "Hide .gitignore" setting and it won't do this.
3. Agreed
4. This is configured in the "Restore on Startup" setting (I think you want "Last Session")
I wish GPUI could become the go-to Rust UI library and not just an editor backend.
For that, a couple of changes would be highly desirable: being able to switch the GPU backend from Metal to wgpu (so it could be mixed with vello, for instance), and the ability to integrate into an existing event loop like egui allows you to. If this were easy to do, I would switch from egui in a heartbeat.
In case you find it useful, I recently stumbled upon this project:
https://github.com/longbridge/gpui-component
"UI components for building fantastic desktop applications using GPUI."
One of the staff forked it into a community edition https://github.com/gpui-ce/gpui-ce
Does anyone have more details about the state of it?
>Customer may not use the Service in a manner that violates any applicable AI Provider policy
Excuse me?
Zed is the first one that got me to actually migrate. It does a great job of staying out of your way. Search and replace works seamlessly across multiple files with regex, and the extremely fast editing experience feels immediately familiar if you’re coming from Sublime. Being open source also gives confidence in its long-term viability.
Kudos to the team building Zed.
- Doesn't highlight typos in variable, functions, class/struct names etc. Doesn't highlight rust borrow-check, invalid method etc errors.
- Doesn't seem to understand either language beyond superficial syntax
- "Go to definition" (Ctrl + B) Doesn't do anything
- Doesn't show which versions are valid in Cargo.toml and pyproject.toml
- No ability to move functions/classes/structs etc to different modules
- Doesn't seem to understand rust feature gates
- Doesn't seem to understand what fields a struct has, or params a function has, let a lone what types are valid in them.
- Rename seems naive
Overall: It is taking a superficial view of the code base, and treating it more as text than a cohesive structure.edit: Thank you very much for those who have pointed out I needed to disable restricted mode. This has added some introspection and in-line error handling. Some of my concerns are partially-mitigated. It seems when introspection and in-line editing/complete/data appears is inconsistent (But working in many cases), and I do not yet know what rules define this. Refactoring tools like moving are still absent. I will continue to use Zed on my tablet with the LSPs enabled, and observe.
I do think they should have a more obvious warning that the current directory is untrusted, right now the little green warning in the corner is way too unobtrusive and will result in many people having the same issue as you.
The latest x86_64 Linux build is 136MB. (https://zed.dev/docs/linux#downloading-manually)
As for your list of grievances, they all seem to boil down to the respective LSPs not doing their job? Does Ctrl-Alt-l (lowercase L, not Shift+i) include the language's server in the context menu, and are there any errors reported for it if it does?
That is the part that makes the space heater
Or am I missing something?
1. Zed insists on opening files in the active panel AND Terminal opens in a panel -> I constantly open files over my terminal. Arghh.
2. On macOS, when I open another workspace (e.g. by drag and dropping to the app in the dock but also from CLI), it opens in one of the existing windows in a sort of workspace-level tab (?). I want a window per workspace. No way to configure that (or it is so unclear that I could never find it).
Bonus: I want code in a light scheme and terminal in a dark scheme. It is stupid, but my eyes just start hurting otherwise. I created a custom color scheme for that and it sort of works, BUT Zed seem to do some additional post-processing to colors based on the scheme-wide light/dark setting, so I cannot get the colors quite right. If I set scheme to "light" – terminal colors are a bit off. If I set to "dark" – code editor is off, cannot get it fixed with scheme level overrides.
I'm trying right now the ACP with my own agent and I'm of mixed opinions but that's maybe because I care how my agent works. I believe that for the agent view a plain buffer with small ui elements would be the best ui for an agent conversation but I may have been spoiled by their text threads. I may spin a personal fork but the thought of tens of mins of compile time isn't that attractive.
Edit: I realized I started moving to terminal based editors like helix due to agents: claude -> codex -> custom pi, with the open sourcing of warp I was considering making a native integration for warp + pi but now I'm thinking zed's text threads (~17k lines) + pi might be a better way, any thoughts or ideas?
People are sooo picky when it comes to editors. Guaranteed they will not be satisfied. Too fast? Then it is not doing a lot. Too many features? Well now it is too heavy. Does it use sane key bindings? FU we want vim shortcuts.
Anyway, congrats on the launch folks. Hope you keep delivering excellent software despite the noisy feedback.
I just wanted a custom action when I right click on a file (or multiple files) in the file tree - uh-oh, sorry, you can't have that.
Basically all text editors should be extensible. Emacs and vim, Notepad++ or Sublime - this is one of their core features. Do I need to explain this to the HN crowd?
GPU acceleration is nice, and in general, the whole basic editing experience is quite nice. But lack of extensibility is just a punch below the belt.
Maybe Zed 2.0 will be worth another look.
There’s tons of extensions for Zed, but you’re asking for particular extension hooks that don’t exist yet.
I expect the reason they don’t is that Zed sandboxes extensions quite aggressively (they’re essentially WASM running under wasmtime), which is fantastic for both security and performance, and it means they don’t break when the app updates, but it also means that a bit more care needs to be put into designing extension points.
I’m sure it’ll come.
That said, the current UX is pretty confusing.
There’s a mismatch in visual hierarchy: selecting an agent in the sidebar appears to change the entire editor’s worktree/branch, but the worktree/branch selector lives in the window titlebar, which strongly implies it controls the whole window. So it’s unclear which is the source of truth—the agent or the window.
That ambiguity shows up in the workflow too. If I want to create a new branch/worktree and then start an agent on it, I can’t do that directly. I have to:
1. create an agent 2. start a conversation (to instantiate it) 3. then switch the branch/worktree
That ordering feels backwards—I’d expect to define the context first, then start the agent.
Even basic navigation is unclear. If I switch the branch in the titlebar, does that affect the current agent, or the whole window? If I want to return to a previous worktree, is that tied to the agent or not? I still don’t have a solid mental model.
It feels like there are two competing concepts:
* agents as independent workspaces * the window as the workspace
Right now they overlap in a way that’s hard to reason about.
The feature has a lot of promise, but the current UX makes it difficult to predict what’s going to happen, which makes it hard to rely on.
Not sure if it is the plugin or something else, but unfortunately makes it very hard to try out for me.
Migrating from VS Code was also super simple and integrations with AI assistant seem to just work.
I can definitely appreciate the engineering work that went into it. Loving it so far! Thanks!
Just opened my current TS/TSX project and everything is working as expected.
Performance is fantastic. I used Sublime for a decade and always missed its native performance after switching to VSCode due to needing first class Svelte, Vue, or Astro support.
The only thing that bothered me is that it enabled the Tailwind LSP even though I'm not using TW and I couldn't stop it. Had to disable that LSP completely in the settings:
"language_servers": [
"...",
"!tailwindcss-language-server"
]Congrats to the team
I use it for Elixir and ansible stuff. I may eventually be open to using it instead of PyCharm for python and/or Nova for C.
If there's one area I still feel that Zed lets me down is in pane management. Maybe I need to just learn more key shortcuts. But I spend a bit of time "managing" the secondary panes and having to switch back and forth between outline, files, search. I'm not sure what the solution is. Just wish the secondary panes weren't a scarce resource that had to be mux'ed betwixt.
I really like(d) the agent integration, but we're currently experimenting with Claude Code Desktop, and I really miss not having the tight integration. My guess is that I'm going to switch back to using the Pro subsidized version. I was getting by with ~$40-$50 a month. Now the company is paying $125 for Claude Team premium seat, and it's a lesser experience.
Even selecting it from the menu does nothing.
An internet search turned up nothing useful. And oddly 'expand selection' is not listed in the keymap?
None of this makes any sense. And if expand selection doesn't work I'm simply not going to use it.
-----------------------------------------------------------------------------------------
edit: I found that (possibly my intellij mappings) remapped ctrl+w to "close editor" and I deleted that and now it works.
It's weird that it's not to be found in the keymap editor though... I had to manually insert it as a binding AND why would it show up as "Expand Selection Ctrl+W" in the select menu when it isn't? That's got to be a bug or two.
1. In Zed, all my Rust files are reformatted on save. (I also code in Go, and don't like this approach at all.)
2. It takes ages to find out where to configure the language servers, and find those little options several layers deep, that I need to switch. (E.g. turn of rustfmt, or turn off some PEP8 checks.)
3. Zed is still missing the killer feature of Rust in VS Code -- underlining the mutable vars. (TBH, VS Code custom themes also lack this, and it's unclear how to turn that feature on, but at least the default ones have it.)
For comparison, I have bought all 4 Sublime editions. I tried Pycharm, and still preferred Sublime. VS Code came when I needed interactive debugger for Rust.
I think it's fantastic. I still keep my Emacs chops up because it's 50 years old and I know it'll be here another 50 years from now, but Zed's open on my desktop more than any other app.
But it is not for me. Multiple issues on Linux and high memory usage makes it a worse alternative to vscode and jetbrains.
Maybe it's better on OSX, but I dont use that anymore and why use an editor that treats your platform as a second class citizen?
The only time VSCode gets slow is if you use a bunch of poorly written plugins, which hasn't been an issue for me in years. It's just like Chrome, chrome is extremely fast as a base but you can mess it up by not being careful with what you add to it.
I still plan to revisit Zed in another year or so once it progresses further, as I find it's still behind Cursor in many ways.
Zed for me on my Linux machine opened to a massive C++ project (the Ladybird browser if you were curious) is (not including LSP or extension processes) using around 480MB of memory.
VSCode on the other hand with nothing open but a 20 line JSON file is (again not including any LSP or extension processes) using around 920MB of memory as reported by its own builtin task manager thing.
I suppose 480MB for a text editor might be a tad high but calling it worse than VSCode is a massive stretch.
If you have a reproducible setup for a bug we don't know about, we'd love to get a proper report of it.
You can schedule 15mins with me here: https://calendar.app.google/fyLQkqvne7EdvR8XA
Congrats to the team on 1.0!
I found the Extensions screen, searched "Java" and tried installing the most popular extension. Clicking "Install" makes the button gray out for a second but does nothing before the button becomes clickable again. Not sure how to proceed from here. (On a work-managed MacBook)
I gave it weeks though, and the surrounding UI just never clicked for me. The various AI panels are confusing, the global search is awkward, and something about the type rendering just didn’t ever look right (maybe I’m hallucinating this?). I use VS Code only grudgingly, but I do think its ergonomics are actually pretty reasonable. I came from Sublime before that. I’ll keep trying Zed, and I hope you succeed.
I tried it for a bit and it was definitely usable and I got a few features built out, but I eventually moved back to using CC in the terminal. I'm sure they're working on it, though.
Once I got that running on my machine it was also easy (literally a drop-down+ API key) to switch and explore using models on OpenRouter.
It lacks a lot of features, but IMO feels less "busy" than the terminal version, which I like.
Very recently Zed also gained support for parallel sessions, which is nice. In general it's very obvious that a lot of effort goes into improving it, and it gets better with every release.
And the markdown preview is basically unreadable, everything is the same font size and all crammed together.
I’m hoping the roadmap contains support for even more things that extensions can do, such as rendering images or Markdown in-editor.
UPDATE: Looks like they haven't yet, bummer, and doesn't seem to have much traction either. They redirect to discord, but AFAIK that doesn't have a way to make a feature request directly?
https://github.com/zed-industries/zed/discussions/47593
The demo video voice felt super AI generated. Which it many ways felt like it was going against the target audience, people that still code by using an editor and it's shortcuts.
What I love:
- the speed, of course
- the high consistency between features, tabs, and panes, while Cursor looks like a crumbly assemblage of plugins. At first I was worried about the lack of plugins, but Zed made me realize you don't need many
- the visual elegance: the padding, the proportions... It reminds me of the best of JetBrains (though I haven't used their products in years). It feels closer to the IDEs I used in the past (for Java or C#), in the sense that it seems to encompass everything you need, without the heaviness.
- the numerous keyboard shortcuts, often displayed visibly, which makes them easier to remember
- the transparency of their roadmap and their velocity: now that we finally have the vertical git diff as promised, my doubts are gone!
Truly one of my favorite pieces of dev software in 15 years.
i started with vs ode, then quickly switched to antigravity and felt it was so much less bloated than vscode.
then i tried zed, and i've never looked back. i don't think i've "loved" a software product this much. it looks super clean and so intentional.
thanks for making this, and making this available for free.
i bet there will be a huge group of developers looking up to zed as a quality benchmark. i certainly am.
for the everything else it was a win. will give it another chance in a month or three to see if it can do, excited to have a setup that easily navigates code diffs.
While it's been hard to use zed when the pull of claude/chatgpt desktop and terminal apps feel more full featured and take up more of the share of daily work, I continue to use Zed any time I do need to explore a codebase or review a markdown plan from an agent.
I hope that there can be improvements to the markdown preview because at least in my case, I'm using that feature a LOT these days.
I have now one week experience, and I like it very much. Some settings take a bit time to get right for my taste, and themes doesn't look polished, but otherwise it is excellent choice (even when thinking Sublime, which I considered the best of all). AI-things can be disabled for now, so let's hope it stays that way.
I also tried VSCode, and omg, I can't understand who want to use that... It is almost Visual Studio grade bad. At least by default settings. It couldn't even open 900 kb text file without freezing (Zed/Sublime had no problem, like 2026 computers/software shouldn't have with 1 mb file).
- I tried to use the Cursor Agent via ACP, it worked but it seemed markedly stupider than when I would use Cursor directly (saying that i18n strings were being used when they weren't, editing code differently than what I asked for, also when it is running terminal commands it seems to just say "Run Command: Terminal" and has no information on what's going on). Maybe I just need to not use Cursor Agent, but my company pays for it already so that's what I tried.
- Providing context is also cludgier - In cursor I often highlight specific chunks of code and add it to the AI context via Cmd+L, but I couldn't figure out any specific way of doing that with a keyboard in Zed besides clicking a tiny + button to add "Selection" to context, which got old fast.
- Maybe I just need to get used to it but reviewing code with the git integration is just hard for me to follow; one giant editor with every change in it is just harder for me to grok than showing each file one by one; so it was tiring to review the big changes produced by LLMs. Also, when you stage changes the file just stays where it is with a barely noticeable check in the checkbox in the sidebar - I prefer the behavior of Cursor where it actually moves the staged files to a separate section, but some kind of more obvious visual indication besides that perhaps would help. I did like the tree view, though!
- The tsgo and oxlint LSP servers kept crashing, which was frustrating. GraphQL LSP server also couldn't understand graphql.config.mjs, which is strange as that's supported out of box by graphql-config and works fine in Cursor/VSCode.
- I tried using a few of the different Edit Suggestion LLM options, but unfortunately Cursor is just way too good compared to any of them (slow, and just not very helpful in comparison).
- Just in general figuring out how to configure them is confusing, there's like 3-4 different places to configure agents and LLMs for different purposes, I found it very fragmented and confusing and the docs didn't make it particularly easy to set things up.
That all said, the performance was muuuuch better than Cursor. But the UX issues and general bugginess of ACP and these LSP plugins were impeding my workflow too much for me to tolerate it so back to Cursor for me. If anyone has tips on how I might make some of these better that would be cool, but if it's just inherent limitations then maybe I'll try again in 6 months or something.
The editor is so good it has been defining how I work - at first I would quickly copy relevant files into multiple AI chat apps using Text Threads (was quite annoyed when it was replaced by the Agent Panel which at the time made it very awkward to add relevant context and copy text), and now I really can't imagine living without the new Threads Sidebar.
It's not perfect, but whenever something is broken then I know it's just a matter of time before it gets fixed or improved.
e.g. its "run" gutter icons rely on context free grammar queries, but of course Scala allows to define main methods via inheritance from a class. Zed's extension api should let the extension report entry points via whatever internal mechanism it needs.
This also goes for the various testing libraries in Scala that because only tree-sitter queries are supported therefore need a custom pattern match for each library as they have their own mechanisms, rather than letting the extension provide its own test harness (easily handled by build tools automatically) - Zed should provide something similar to VS Code's Test Explorer and Testing API interface.
Also extensions can't add new UI, so you are stuck fitting to the recipe Zed team provides for you to plug into, and often enough this is not satisfactory.
What did you have in mind for "new UI"? I'm hoping to see basic text transformation myself: https://news.ycombinator.com/item?id=47950471
This turned out to be pretty awesome because I built something completely customized to my workflow and it has increased my productivity by several factors.
https://x.com/MatthewTse_/status/2042680214187315683
If they can fix tab complete, I'll give it another try!
PS: One thing I'm really missing is the ctrl+shift+f equivalent
Still, congrats to the team. Hopefully this launch means more money to fix issues so I can start using it again.
Despite promising it for years and every comparable product having it.
Helix lovers who are dying waiting for helix plugins, please try this out
Main problem: No menu. Where are the settings? The first thing I wanted to do was move the file treeview to the left side; I don't know what country the authors live in, but in Western countries we read from left to right. But nope, there's no View menu or anything of the sort.
Then I examined every other little button around the UI, to no avail. I want to get stuff done; not play with an Advent calendar, hunting for goodies.
Control + , > Window & Layout > Show Menus = true
This unhides the menu instead of hiding everything behind a burger. This should be the default. The defaults are awful in many ways and they've only gotten worse with the recent panel rearrangement.
It has some issues and is missing some stuff I want, but I'm happy with it anyway.
One feature I use a lot is remote development over SSH.
not sure how 1.0 ships with that massive pile of bugs. but ai agents are the first-class citizen in this editor, and developer experience is not a priority.
funny thing is i uninstalled zed right before the 1.0 release. kinda relieved i didn't miss anything.
It's a nice departure from the visual overstimulation I get while in VS Code (for which I have to take some blame as I need to remove some installed plugins).
There are a couple of features shown in the v1.0 video that I was unaware of and am keen to check out.
I don't need much from an editor. Instant cold start, sane colors, sane folding in origami style , like "kent folding" allows to do on vim ( https://www.vim.org/scripts/script.php?script_id=416 ).
Not much, but it seems all modern editors fail to do good origami folding.
Does Zed do this?
For better or worse, my current workflow is to do most things through WSL on Windows 11. VSCode supports running the editor natively on Windows, but then having an agent or something inside WSL that lets me remote control what's going on there. Does Zed do anything similar?
Currently I'm just access the workspace in Zed via Windows Explorer, but I wonder if that's going to kneecap some of the integrations.
EDIT: nm, Zed supports exactly the same kind of remote editor session, via hamburger -> File -> Open Remote
The only thing stopping me from leaving Cursor is their tab completion, which is honestly just incredible.
I tried Zed once, but unfortunately had to give up because of:
- constant CPU usage when idle,
- blurry fonts,
- low-contrast light themes.I love that most of my (small but important) set of keyboard shortcuts from VSCode jsut works.
- Terminal - Ctrl + P (and siblings).
Suggestion (minor):
To me, font size is as import these days as dark/light mode. Would be cool if basic font-size (ui panel etc, were part of default/first-run config)
Also like that AI is a "first class citizen" it seems on Zed.
Well done guys :)
On the agent side, I really like their ACP approach but for now it seems buggy and limited in functionality (previous message editing, occasionally never-ending work, ...)
PS: Pretty daring move to think of building an editor when there's already sublime, textmate, Jetbrains and VSCode.
Though it's a pretty big bummer to see that extension improvements were removed from the roadmap.
The debugger in Python FastAPI and mainly Django is not working as expected. Hopefully soon will be fixed.
Create issue in the Zed Github repository?
What an awesome journey!
That seems risky.
Gotta say farewell to Sublime. Now Zed is my general purposed text editor. For doing most of my coding work, still use VSCode and nvim.
The newer layout that came along with the parallel agents feature is very nice; even without using parallel agents regularly, this is a breath of fresh air.
I don't use AI tools in 90% of the projects.
It's snappy, fast, everything just works. I have the vim mode turned on while editing.
I use Zed as my daily driver - I'm happy with it - besides the occasional freeze.
Whenever I think to myself “yikes that sounds too hard”, my next thought is “well, Zed team could probably do it”.
I don't like how it loses the session when I reopen it randomly (and not randomly every upgrade).
and then the whole telemetry bit.
bye.
Interesting times…
This will never be an IDE like Jetbrains Rider if you use a language like C# where those guys excel at: sheer volume of refactorings, static and dynamic analysis, cpu and memory analysis, what have you.
And for a scratchpad: is this really better than neovim?
Simply love it!
My editor is dumb. No AI anywhere.
The only unusual thing is that I use ruby as primary glue language to everything, so in a way that editor (no longer maintained, similar to Linus' editor) is just a wrapper over ruby as such, and functionality in these scripts.
I have also found that it is not the editor that slows me down, but the need to have to think. This is also one reason why I try to make the specification as useful as possible. For instance, in one project that I use to compile everything from source, I use a ton of simple, mostly smallish .yml files that describe everything - allowed keys, allowed values, settings that are mostly just a pointer to where to fetch the source, how, how to compile it then and so forth. The ruby code then is mostly just a glue over that data. And that approach, while very simple, works quite well. Users can also modify settings, by modifying the .yml file or via commandline flags. And if need be, I could also use and populate a SQL database with that data (but for the most part, yaml actually suffices; I don't understand why people are so upset about yaml, and then only point at use cases where folks use mega-nested yaml files. These guys don't understand why simplicity is a benefit; admittedly yaml is not a perfect format either, I notice this when I have a long .yml file and then some forgotten ":" or "," due to manual copy/paste error, then it takes me a few seconds to notice what's wrong).
> "These guys don't understand why simplicity is a benefit"
I'm not really criticizing, clearly your system works for you. Ironically, as I've been using AI more, I've been rolling more systems that work for me instead of relying on existing ones. It's very freeing.
I was admittedly skeptical of Zed in the beginning, because they started out with so few features, and it seemed impossible to really switch permanently to it and still be as productive. The Jetbrains platform has got such an amazingly rich set of features and an uncanny ability to just nail the editor experience. It seems almost unthinkable that anyone would be able to compete, and for a long time Zed was very far behind, but this year I feel they're finally a viable alternative.
What ultimately pushed me towards Zed was performance and the sheer amount of work-stopping bugs. I would have days where Jetbrains would get unresponsive or extremely sluggish. Suddenly "undo" would stop working (!). Major and minor upgrades often introduced perplexing performance degradation. In short, I've wasted insane amounts of time on bugs and on filing detailed bug reports that are never looked at. That undo bug has been open for maybe a year now.
For all the bells and whistles, I think Jetbrains faces an intractable problem. It's just utterly unrealistic that they'll be able to solve everything unless they stopped all development to focus on just stability. The product is too big, too complex, too unwieldy, and too bloated. I was always allocating 16GB RAM to Jetbrains, and often had it sit there consuming 1000% (!) CPU. Zed chews up a couple of gigs at most, and rarely uses much CPU. There's a tendency for editors to get bloated as they evolve. This certainly happens with Atom. I'm really hoping Zed will stay lean.
everything gets a warning until the app has some minimum count of installs
Does anyone have any suggestions here? I would love to use Zed more.
I use the default theme + the Catppuccin Icon Theme : https://github.com/catppuccin/zed-icons
Jetbrains “just worked”, but work isn’t paying for the license anymore because AI so I’ll just bang my head against these plugins.
Is it targeted for IDE people or vscode users, or is there something else i can benefit from coming from vim?
Regardless of everything else being said, does anyone actually still do it? I thought this practice more or less died with Eclipse, where proprietary editors often shipped as Eclipse plugin and then the ops of a company that bought the plugin would have to configure it for every developer, set up with home-made automation etc.
I haven't seen anything like this in the last ten years at least and assumed the practice was dead, and, instead, developers were allowed to use whatever editor they want, while committing editor-specific (configuration) files, for example, would be considered a noobie mistake.
Or was I just happily living in the world where the long arm of the corporate was unable to reach me?
There are still a few things PyCharm does better (debugging, for one), but overall Zed is very good and I haven't used PyCharm in months.
I still use CC in the terminal instead of inside Zed, and lazygit for reviewing git changes and other git actions (though Zed now does a decent job of the basics).
Request: please be sincere if you claim "the one thing that keeps me from using Zed is X" ... because let's face it, there is probably more than one thing. Editor ecosystems are complex beasts, and it is ok if people are slow to switch, but the "one thing" claims are rarely credible to me. Anyhow, such comments are rarely consistent with how human nature works. People find rationalizations, and that's fine. It would just be nice if people were a little more self-aware. Changing editors is harder for some people more than others.
My suggestion: if you want to make Zed better for your use case, please smart by explaining who you are as a developer, what you've used, what your expectations are. And be intellectually honest about the last time you've made a big change to your development workflow. End soapbox.
- Evaluate, a plugin that evaluates the selections as python expressions and replaces them by their respective results. I added "iota" as a variable in the evaluation context, that gives me the current selection index (like iota in go). With that, so many math or text manipulations can be done in bulk.
- Alignment, to align all my cursor into a vertical column by adding spaces.
what do i actually need from a text editor that i dont already have? Sublime's killer feature was column editing, and vscode's was kinda typescript and kinda language servers.
... and why do i want an actual text editor as the primary view, vs a side view to agent TUI? from what Ive experienced, the editor is now a secondary interface to the text, rather than the primary one
if i am picking up a new editor, i think i want it to be focused on how to better understand llm outputs, and how to give really structured feedback without having to write a ton of imprecise text.
how does zed make it easy to have agents build several proposals for a solution, and help me choose which one is actually the best?
I have no affiliation with Zed, though I have applied to work there, so I'm hardly neutral. I've been an enthusiastic user for probably two years. I don't expect perfect alignment with what I want, and sometimes the team doesn't respond how I would like with particular issues. But man, in a pretty suboptimal world right now, Zed is an amazing thing to have: open source, regular updates, extensions, nice settings. In the past I've used BBEdit, Eclipse, TextEdit, Sublime, Emacs, VS Code, Jetbrains, Helix. Zed is my favorite by far, probably because of the latency. It is an intangible feeling that just clicked immediately for me.
Personally, as a mostly independent developer/researcher, I go through bursts of re-evaluating my tools. To give some context about my newer tools over the last few years: Ghostty, Nushell, Podman, Nix, Mochi, Monodraw, Swish (window manager for macOS), Base (macOS SQLite editor by Menial), LM Studio, (probably obviously) Claude Code. So for a "seasoned" developer, I'm probably more open to new tools than most? Oh, totally off-topic but I think some of the lesser appreciated new open source tools / formats / conventions are: KDL (https://kdl.dev), Typst, and (evaluating) Djot, Cocogitto (Conventional Commits, took me long enough).
[1] https://alok.github.io/2018/04/26/using-vim-s-conceal-to-mak...
Sorry, can't help it, every time I see Zed i think of the ZFS Event Daemon
This is why I say Docker is the only real "success" story here. And note, I mean a success story for the users; Docker tries real hard to enshittify and fails, and that's good.