Collaboration in Zed
Real-time multiplayer coding and team collaboration
Zed's Collaboration Philosophy
Collaboration is at the heart of Zed's design. Unlike traditional editors that treat collaboration as an add-on feature, Zed was built for real-time multiplayer editing from the start:
- Native integration: Collaboration is a core feature, not a plugin
- Low latency: Designed for real-time interaction with minimal delay
- Channels + contacts: Persistent team rooms alongside ad-hoc private calls
- Ambient awareness: See who is around and what they are working on
Multiple people can work in the same project simultaneously, seeing each other's cursors and edits as they happen—whether you are pairing, mentoring, or refactoring together.
Setting Up Your Account
You must sign in before collaboration features are available. Solo editing still works offline without an account; channels, contacts, and shared projects require authentication.
-
Sign in to Zed
Open the account / sign-in flow from Zed and complete authentication. Collaboration Panel actions stay unavailable until you are signed in.
-
Set Your Display Name
Choose a display name that collaborators will see next to your cursor and in the panel. You can update this later in your profile settings.
-
Open the Collaboration Panel
This is your home base for channels, contacts, and active calls:
Action macOS Linux/Windows Collaboration Panel ⌘ShiftC CtrlShiftC Open Settings ⌘, Ctrl,
Your Zed account is used for collaboration features. You can still use Zed offline without an account for solo development.
Channels and Contacts
The Collaboration Panel has two main sections. Understanding both models helps you pick the right tool for the session:
Channels
Channels are persistent rooms for team collaboration. Each channel can contain shared projects, voice chat, and collaborative notes. A channel usually maps to an ongoing project or workstream.
- Pairing: each person keeps their own screen, mouse, and keyboard
- Mentoring: jump into someone else's context without taking over their machine
- Refactoring: several people join the same large change in real time
- Ambient awareness: see who is in the room without status meetings
- Create a channel with the
+icon next to Channels in the panel - Create a subchannel by right-clicking an existing channel and choosing New Subchannel
- Avatars in the panel show who is currently in a channel
Contacts and Private Calls
Contacts are for ad-hoc private sessions—great for a quick pairing call or one-off debugging help without standing up a long-lived channel. Add teammates as contacts, then start a private call when you need an immediate shared session.
Use channels for ongoing teams and projects. Use contacts / private calls when you only need a short, direct session with one person or a small group.
Creating Collaborative Sessions
Starting from a Channel
There are several ways to start collaborating:
-
Join or create a channel
Open the Collaboration Panel, create a channel if needed, then join it. Joining puts you in a shared room where you can talk and share projects.
Share Project Dialog -
Invite collaborators
By default, channels you create are private to you. Right-click a channel and choose Manage members to invite people. Subchannels inherit permissions from their parent. You can also share a channel link so invited people can join directly.
-
Share a project
After joining a channel, use the Share button in the upper-right of the window. Channel members can then edit the code hosted on your machine as if they had it checked out locally. Guests get a read-only view unless you grant write access.
Sharing a project gives collaborators access to your local file system within that project. Only collaborate with people you trust. See the Data and Privacy FAQs for more details.
Joining Collaborative Sessions
Accepting Invitations
Join a collaborative session through invitations:
- Via the Collaboration Panel: click a channel you have access to
- Via links: open a shared channel link to join directly
- Via contacts: start or accept a private call with someone on your contacts list
The Collaboration Panel
Once connected, the Collaboration Panel shows active participants and rooms:
- View channels, contacts, and who is currently present
- See collaborators' names and presence in the title bar
- Follow a specific collaborator's view from their avatar
- Open channel notes without necessarily joining the call
Working Together in Real-Time
Multiplayer Editing
With Zed's multiplayer editing, everyone can simultaneously edit the same shared files:
- Cursor awareness: see everyone's cursor position with their name label
- Selection visibility: see what others are selecting in real time
- Full editor features: go to definition, diagnostics, search, and AI features still work while editing someone else's shared project
- Your local config: you keep your own keybindings and settings while collaborating
Collaborators appear in color (with a cursor color) when they are in the same project. People in other projects in the same channel appear in gray.
Following Collaborators
Following lets you ride along with another person's navigation:
-
Enable following
Click a collaborator's avatar in the title bar to follow them. When you join a project, you often start by following the person who invited you. A following pane is outlined in their cursor color and tracks their cursor, scroll position, and file changes.
Action macOS Linux/Windows Follow next collaborator Ctrl⌥⌘F CtrlAltShiftF -
Stop following
Move your mouse or make an edit to stop following and resume independent navigation. Following is pane-specific, so you can follow someone in one pane while browsing freely in another.
Following terminals is not supported the same way as following editors. As a workaround, collaborators can share their screen and you can follow that instead.
Communication During Collaboration
Channel Notes
Each channel has a Markdown notes file for status, ideas, and design discussion before coding. Open notes from the document icon next to the channel name. You can view notes without joining the channel.
Voice Chat
Channels include voice chat so you can talk while you edit:
- Mute or unmute with the microphone icon in the upper-right of the window
- When joining a channel, Zed may automatically share your microphone if the OS allows it
- Use the
mute_on_joinsetting if you prefer to start muted
Audio Device Settings
You can select specific input and output devices instead of relying only on system defaults:
-
Open Settings
Press ⌘, / Ctrl,.
-
Open Collaboration → Experimental
Choose Output Audio Device and Input Audio Device from the dropdowns. Changes take effect immediately.
-
Test Audio
Use Test Audio in the same section to verify microphone and speaker setup with the selected devices.
json{ "audio": { "experimental.output_audio_device": "Device Name (device-id)", "experimental.input_audio_device": "Device Name (device-id)" } }
Screen Sharing
Share your screen with the monitor icon in the title bar. Others can open the Screen entry under your name in the Collaboration Panel. If they are following you, Zed can switch between your editor cursor and the screen share depending on focus.
Collaborators can see your entire shared display. Stop screen sharing when you are finished.
Collaboration Workflows
Pair Programming
Zed's collaboration features are a strong fit for pair programming:
- Driver / navigator: one person types while the other follows and reviews nearby code
- Ping-pong: write a failing test, then have your partner make it pass
- Side-by-side: work on different parts of the same shared project simultaneously
Code Reviews
Conduct interactive code reviews in real time:
- Walk through changes together with voice chat
- Make suggested edits immediately in the shared project
- Discuss implementation details while examining code and diagnostics
Team Collaboration
For larger teams, channels support:
- Multiple collaborators working across files in the same shared project
- Subchannels for nested workstreams with inherited membership
- Public channels and guests for livestream-style read-only participation
- Channel notes as a shared Markdown scratchpad
Create channels for different projects or teams to organize collaborative workspaces and keep long-running rooms separate from quick private calls.
Managing Permissions and Security
Access Levels
As a host or channel admin, keep these access ideas in mind:
- Channel members: can join the room and work in projects you share
- Guests: can hear/see the room and have read-only access to projects and notes
- Write access for guests: grant temporarily from the Collaboration Panel when needed
- Unshare: remove a project from the channel so collaborators can no longer rejoin it
Security Considerations
Keep collaborative sessions secure:
- Only share projects with people you trust—shared projects expose local filesystem access inside that project
- Prefer private channels and explicit membership over public links for sensitive work
- Unshare projects and leave calls when the session is done
- Be careful with screen sharing; it shows your entire display
- Review Zed's Data and Privacy FAQs before collaborating on confidential code
Ending Collaboration Sessions
When you're finished collaborating:
-
Save your work
Save the current file with ⌘S / CtrlS. Shared edits land on the host's machine, so confirm important changes are saved before leaving.
-
Unshare the project (host)
Click Unshare in the title bar if you no longer want channel members to access that project. Current collaborators are disconnected from it.
-
Leave the call
Click Leave call in the upper-right of the window to disconnect from the channel or private call.
Channels persist after you leave—they are rooms you can rejoin later. Unsharing a project is separate from leaving the voice/call session.
What's Next?
Now that you've learned how to collaborate in Zed, you're ready to explore the integrated terminal for running commands and managing your development environment without leaving the editor.