remote-development.md

 1# Remote Development
 2
 3Remote Development is in the early stages of development. If you'd like to try it please email [alpha@zed.dev](mailto:alpha@zed.dev).
 4
 5Remote Development allows you to code at the speed of thought, even when your codebase is not on your local machine. You use Zed locally so the UI is immediately responsive, but offload heavy computation to the development server so that you can work effectively.
 6
 7## Overview
 8
 9Remote development requires running two instances of Zed. A headless instance on the remote machine, and the editor interface on your local computer. All configuration is done on your local computer, except for starting the headless instance.
10
11Currently the two instances connect via Zed's servers, but we intend to build peer to peer communication in the future.
12
13## Setup
14
15> NOTE: You must be in the alpha program to see this UI. The instructions will likely change as the feature gets closer to launch.
16
171. Open the projects dialog with `cmd-option-o` and then click "Connect…".
182. Click "Add Server"
193. Give it a name, and copy the instructions given.
204. On the remote machine, install Zed
21   ```
22   curl https://zed.dev/install.sh | bash
23   ```
245. On the remote machine, paste the instructions from step 3. You should see `connected!`.
25   > NOTE: If this command runs but doesn't output anything, try running `zed --foreground --dev-server-token YY.XXX`. It is possible that the zed background process is crashing on startup.
266. On your laptop you can now open folders on the remote machine.
27   > NOTE: Zed does not currently handle opening very large directories (e.g. `/` or `~` that may have >100,000 files) very well. We are working on improving this, but suggest in the meantime opening only specific projects, or subfolders of very large mono-repos.
28
29## Supported platforms
30
31The remote machine must be able to run Zed. The following platforms should work, though note that we have not exhaustively tested every linux distribution:
32
33* macOS Catalina or later (Intel or Apple Silicon))
34* Linux (x86_64 only). You must have `glibc` installed at version 2.29 (released in 2019) or greater and available globally.
35* Windows is not yet supported.
36
37## Known Limitations
38
39- The Terminal does not work remotely.
40- You cannot spawn Tasks remotely.
41- Extensions aren't yet supported in headless Zed.
42- You can not run `zed` in headless mode and in GUI mode at the same time on the same machine.
43
44## Feedback
45
46- Please join the #remoting-feedback in the [Zed Discord](https://discord.gg/qSDQ8VWc7k).