Transcription
[Music] [Applause]
Hi, welcome to another video. So, Zed recently launched their Claude code integration in Zed, and I really wanted to talk about this. They have also expanded their ACP agent client protocol to make it much more accessible and super easy to understand. That's why we'll get into how it works as well.
But first, let's take a look at what's new here. So, first of all, if you don't know, Zed launched their Gemini CLI integration a while back in collaboration with Google's Gemini CLI team, meaning it was first-class and official support for Gemini CLI. It basically integrated the Gemini CLI agent into Zed's agent panel, giving it a graphical interface while maintaining the same capabilities that it had. You can check out my previous video on this to see how it works.
Along with that, they also launched their new ACP or agent client protocol, which allows agents like Gemini CLI to seamlessly integrate with interfaces like Zed. This is pretty cool because it means if you like Rue or if you like Claude, then you don't need to be limited to their interfaces. All the developers of those tools need to do is support ACP, similar to how companies have started to integrate MCP, and you can easily get agent capabilities in any interface that also supports ACP, which in this case is Zed.
And because this is relatively easy to do, the Zed team and contributors were able to integrate Claude code in Zed's agent panel as well using ACP. This is now awesome if you're a Claude code user. They say that it lets you run Claude code as a first-class citizen in Zed's high-performance editor, not just in a terminal interface. You can also follow along as it edits across multiple files with full syntax highlighting and language server support. I think this is enabled by the follow-along feature at the bottom of the agent panel.
You can also review and approve granular changes with it, which isn't really possible with the terminal-based Claude code. There, you always have to either approve the whole thing or reject the whole thing. But here, you can accept different code chunks individually as well. It also allows you to keep Claude code's task list anchored in your sidebar so you always see what the agent is working on. Claude code slash commands are also integrated seamlessly, letting you use custom workflows that you've already built with Claude code.
Since it is built on their open-source ACP protocol, any editor or tool that supports ACP interfacing can also use this. That's why Code Companion in Neovim now supports it too, which is great if you use that. I hope more editors start supporting ACP because that way, any agent can be plugged into any editor. You'll be able to use the agent that is best for your task without having to compromise on which editor you use.
If you are planning to integrate ACP, then there's pretty detailed documentation for it made by the team at Zed. It just uses JSON RPC and reuses MCP types where possible. So integrators don't need to build yet another representation for common data types. It basically just has the agent running in the background and interfaces with it based on the protocol. The editor here gives the agent context of files and MCP servers, as well as allowing the agent to get approval for tool calls from the user. MCP settings also trickle down to these agents.
And for features or tools that the code editor wants to give the agent, the editors create a proxy MCP server to integrate those tools into an MCP server and then communicate with the editor to get the work done. So if the editor wants to give it tools like linting or language server checks, it basically wraps those tools in an MCP proxy and gives the agent that MCP server, allowing it to seamlessly integrate with the tools. It's a bit more complex since the MCP proxy is not exactly the tool itself, but rather a proxy. The tool itself lives in the editor, and the proxy is more like a relayer.
Anyway, I won't go into too much detail. You can check out the Claude code adapter since that is also open source and honestly, it's not super complex. It's very similar to how MCP servers are set up but with changes for agentic communication.
Now, if I show you how it works, I can open up Zed. Here in the agent panel, you can see the add button, and there you'll find the Claude code option, which just opens up the Claude code agent for you to use. You can mention files with the at symbol, and you can also use the slash commands you set up in Claude code through the slash option. You also get the follow option to see what's happening as Claude code works. But if you want to just let it run in the background, you can do that as well.
Let me send a quick prompt here, and you'll see that it goes ahead and starts working on the task. It also asks for approval of tool calls as things happen, so that's great for control. If there are more agents that start supporting ACP, you can also add them by heading over to the settings. There you'll get the option to add a new agent. Then it will open up the settings where you can paste in the configuration to make it work. This is very similar to how you configure MCP. It's pretty simple to add any of them, and it mostly works seamlessly, which is awesome.
That is majorly about it. I really like this ACP thing because it streamlines agents and it makes sense since agents should be able to integrate with tons of tools. They shouldn't be limited to what one company or one developer thinks is the best interface. Just the thought of being able to seamlessly integrate JetBrains, Zed, VS Code, and everything else with the same agent that lives on one server is awesome. That's completely doable, and it can come in really handy for enterprise teams and much more, especially where different teams use different editors but require the same agent for their tasks.
So, yeah, this is pretty amazing. The Claude code integration in itself is amazing because I use Zed a lot for the performance it delivers. Getting a proper integration for Claude code is awesome, especially for people who don't like the terminal interface. Also, if you use GLM coding plan with Claude code, then that also works well. You just need to make sure that you have set it up correctly in the settings file of Claude code, and you should be off to the races. They are working to show which model is being used in the interface, but they seem to be limited by Claude code SDK's capability, so it should come soon. Overall, it's pretty cool.
Anyway, share your thoughts below and subscribe to the channel. You can also donate via super thanks option or join the channel as well and get some perks. I'll see you in the next video. Bye.
[Music]