|
1 | 1 | # Coder Desktop
|
2 | 2 |
|
3 |
| -Coder Desktop provides seamless access to your remote workspaces without the need to install a CLI or configure manual port forwarding. |
4 |
| -Connect to workspace services using simple hostnames like `myworkspace.coder`, launch native applications with one click, |
5 |
| -and synchronize files between local and remote environments. |
| 3 | +Coder Desktop provides seamless access to your remote workspaces through a native application. Connect to workspace services using simple hostnames like `myworkspace.coder`, launch applications with one click, and synchronize files between local and remote environments—all without installing a CLI or configuring manual port forwarding. |
6 | 4 |
|
7 |
| -Coder Desktop requires a Coder deployment running [v2.20.0](https://github.com/coder/coder/releases/tag/v2.20.0) or later. |
| 5 | +## What You'll Need |
8 | 6 |
|
9 |
| -## Install Coder Desktop |
| 7 | +- A Coder deployment running `v2.20.0` or [later](https://github.com/coder/coder/releases/latest) |
| 8 | +- Administrator privileges on your local machine (for VPN extension installation) |
| 9 | +- Access to your Coder deployment URL |
10 | 10 |
|
11 |
| -<div class="tabs"> |
12 |
| - |
13 |
| -You can install Coder Desktop on macOS or Windows. |
14 |
| - |
15 |
| -### macOS |
16 |
| - |
17 |
| -1. Use [Homebrew](https://brew.sh/) to install Coder Desktop: |
18 |
| - |
19 |
| - ```shell |
20 |
| - brew install --cask coder/coder/coder-desktop |
21 |
| - ``` |
| 11 | +## Quick Start |
22 | 12 |
|
23 |
| - Alternatively, you can manually install Coder Desktop from the [releases page](https://github.com/coder/coder-desktop-macos/releases). |
| 13 | +1. Install: `brew install --cask coder/coder/coder-desktop` (macOS) or `winget install Coder.CoderDesktop` (Windows) |
| 14 | +1. Open Coder Desktop and approve any system prompts to complete the installation. |
| 15 | +1. Sign in with your deployment URL and session token |
| 16 | +1. Enable "Coder Connect" toggle |
| 17 | +1. Access workspaces at `workspace-name.coder` |
24 | 18 |
|
25 |
| -1. Open **Coder Desktop** from the Applications directory. |
| 19 | +## How It Works |
26 | 20 |
|
27 |
| -1. The application is treated as a system VPN. macOS will prompt you to confirm with: |
| 21 | +**Coder Connect** the primmary component of Coder Desktop creates a secure tunnel to your Coder deployment, allowing you to: |
28 | 22 |
|
29 |
| - **"Coder Desktop" would like to use a new network extension** |
| 23 | +- **Access workspaces directly**: Connect via `workspace-name.coder` hostnames |
| 24 | +- **Use any application**: SSH clients, browsers, IDEs work seamlessly |
| 25 | +- **Sync files**: Bidirectional sync between local and remote directories |
| 26 | +- **Work offline**: Edit files locally, sync when reconnected |
30 | 27 |
|
31 |
| - Select **Open System Settings**. |
| 28 | +The VPN extension routes only Coder traffic—your other internet activity remains unchanged. |
32 | 29 |
|
33 |
| -1. In the **Network Extensions** system settings, enable the Coder Desktop extension. |
| 30 | +## Installation |
34 | 31 |
|
35 |
| -1. Continue to the [configuration section](#configure). |
| 32 | +<div class="tabs"> |
36 | 33 |
|
37 |
| -### Windows |
| 34 | +### macOS |
38 | 35 |
|
39 |
| -If you use [WinGet](https://github.com/microsoft/winget-cli), run `winget install Coder.CoderDesktop`. |
| 36 | +<div class="tabs"> |
40 | 37 |
|
41 |
| -To manually install Coder Desktop: |
| 38 | +#### Homebrew (Recommended) |
42 | 39 |
|
43 |
| -1. Download the latest `CoderDesktop` installer executable (`.exe`) from the [coder-desktop-windows release page](https://github.com/coder/coder-desktop-windows/releases). |
| 40 | +```shell |
| 41 | +brew install --cask coder/coder/coder-desktop |
| 42 | +``` |
44 | 43 |
|
45 |
| - Choose the architecture that fits your Windows system, `x64` or `arm64`. |
| 44 | +#### Manual Installation |
46 | 45 |
|
47 |
| -1. Open the `.exe` file, acknowledge the license terms and conditions, and select **Install**. |
| 46 | +1. Download the latest release from [coder-desktop-macos releases](https://github.com/coder/coder-desktop-macos/releases) |
| 47 | +1. Drag `Coder Desktop.app` to your Applications folder |
| 48 | +1. Open from Applications directory |
48 | 49 |
|
49 |
| -1. If a suitable .NET runtime is not already installed, the installation might prompt you with the **.NET Windows Desktop Runtime** installation. |
| 50 | +</div> |
50 | 51 |
|
51 |
| - In that installation window, select **Install**. Select **Close** when the runtime installation completes. |
| 52 | +Coder Desktop requires VPN extension permissions: |
52 | 53 |
|
53 |
| -1. When the Coder Desktop installation completes, select **Close**. |
| 54 | +1. When prompted with **"Coder Desktop" would like to use a new network extension**, select **Open System Settings** |
| 55 | +1. In **Network Extensions** settings, enable the Coder Desktop extension |
| 56 | +1. You may need to enter your password to authorize the extension |
54 | 57 |
|
55 |
| -1. Find and open **Coder Desktop** from your Start Menu. |
| 58 | +✅ **Verify Installation**: Coder Desktop should appear in your menu bar |
56 | 59 |
|
57 |
| -1. Some systems require an additional Windows App Runtime SDK. |
| 60 | +### Windows |
58 | 61 |
|
59 |
| - Select **Yes** if you are prompted to install it. |
60 |
| - This will open your default browser where you can download and install the latest stable release of the Windows App Runtime SDK. |
| 62 | +<div class="tabs"> |
61 | 63 |
|
62 |
| - Reopen Coder Desktop after you install the runtime. |
| 64 | +#### WinGet (Recommended) |
63 | 65 |
|
64 |
| -1. Coder Desktop starts minimized in the Windows System Tray. |
| 66 | +```shell |
| 67 | +winget install Coder.CoderDesktop |
| 68 | +``` |
65 | 69 |
|
66 |
| - You might need to select the **^** in your system tray to show more icons. |
| 70 | +#### Manual Installation |
67 | 71 |
|
68 |
| -1. Continue to the [configuration section](#configure). |
| 72 | +1. Download the latest `CoderDesktop` installer (`.exe`) from [coder-desktop-windows releases](https://github.com/coder/coder-desktop-windows/releases) |
| 73 | +1. Choose the correct architecture (`x64` or `arm64`) for your system |
| 74 | +1. Run the installer and accept the license terms |
| 75 | +1. If prompted, install the .NET Windows Desktop Runtime |
| 76 | +1. Install Windows App Runtime SDK if prompted |
69 | 77 |
|
70 | 78 | </div>
|
71 | 79 |
|
72 |
| -## Configure |
73 |
| - |
74 |
| -Before you can use Coder Desktop, you will need to sign in. |
75 |
| - |
76 |
| -1. Open the Desktop menu and select **Sign in**: |
| 80 | +- [.NET Windows Desktop Runtime](https://dotnet.microsoft.com/en-us/download/dotnet/8.0) (installed automatically if not present) |
| 81 | +- Windows App Runtime SDK (may require manual installation) |
77 | 82 |
|
78 |
| - <div class="tabs"> |
| 83 | +✅ **Verify Installation**: Coder Desktop should appear in your system tray (you may need to click **^** to show hidden icons) |
79 | 84 |
|
80 |
| - ## macOS |
| 85 | +</div> |
81 | 86 |
|
82 |
| -  |
| 87 | +## Testing Your Connection |
83 | 88 |
|
84 |
| - ## Windows |
| 89 | +Once connected, test access to your workspaces: |
85 | 90 |
|
86 |
| -  |
| 91 | +<div class="tabs"> |
87 | 92 |
|
88 |
| - </div> |
| 93 | +### SSH Connection |
89 | 94 |
|
90 |
| -1. In the **Sign In** window, enter your Coder deployment's URL and select **Next**: |
| 95 | +```shell |
| 96 | +ssh your-workspace.coder |
| 97 | +``` |
91 | 98 |
|
92 |
| -  |
| 99 | +### Ping Test |
93 | 100 |
|
94 |
| -1. macOS: Select the link to your deployment's `/cli-auth` page to generate a [session token](../../admin/users/sessions-tokens.md). |
| 101 | +```shell |
| 102 | +# macOS |
| 103 | +ping6 -c 3 your-workspace.coder |
95 | 104 |
|
96 |
| - Windows: Select **Generate a token via the Web UI**. |
| 105 | +# Windows |
| 106 | +ping -n 3 your-workspace.coder |
| 107 | +``` |
97 | 108 |
|
98 |
| -1. In your web browser, you may be prompted to sign in to Coder with your credentials. |
| 109 | +### Web Services |
99 | 110 |
|
100 |
| -1. Copy the session token to the clipboard: |
| 111 | +Open `http://your-workspace.coder:PORT` in your browser, replacing `PORT` with the specific service port you want to access (e.g. 3000 for frontend, 8080 for API) |
101 | 112 |
|
102 |
| -  |
| 113 | +</div> |
103 | 114 |
|
104 |
| -1. Paste the token in the **Session Token** field of the **Sign In** screen, then select **Sign In**: |
| 115 | +## Troubleshooting |
105 | 116 |
|
106 |
| -  |
| 117 | +### Connection Issues |
107 | 118 |
|
108 |
| -1. macOS: Allow the VPN configuration for Coder Desktop if you are prompted: |
| 119 | +#### Can't connect to workspace |
109 | 120 |
|
110 |
| -  |
| 121 | +- Verify Coder Connect is enabled (toggle should be ON) |
| 122 | +- Check that your deployment URL is correct |
| 123 | +- Ensure your session token hasn't expired |
| 124 | +- Try disconnecting and reconnecting Coder Connect |
111 | 125 |
|
112 |
| -1. Select the Coder icon in the menu bar (macOS) or system tray (Windows), and click the **Coder Connect** toggle to enable the connection. |
| 126 | +#### VPN extension not working |
113 | 127 |
|
114 |
| -  |
| 128 | +- Restart Coder Desktop |
| 129 | +- Check system permissions for network extensions |
| 130 | +- Ensure only one copy of Coder Desktop is installed |
115 | 131 |
|
116 |
| - This may take a few moments, because Coder Desktop will download the necessary components from the Coder server if they have been updated. |
| 132 | +### Known Limitations |
117 | 133 |
|
118 |
| -1. macOS: You may be prompted to enter your password to allow Coder Connect to start. |
| 134 | +#### Secure Browser Context |
119 | 135 |
|
120 |
| -1. Coder Connect is now running! |
| 136 | +Some web applications require HTTPS for certain features. While Coder Connect uses encrypted WireGuard tunnels, browsers may show security warnings for HTTP connections to `.coder` hostnames. |
121 | 137 |
|
122 |
| -## Troubleshooting |
| 138 | +### Getting Help |
123 | 139 |
|
124 |
| -If you encounter an issue with Coder Desktop that is not listed here, file an issue in the GitHub repository for |
125 |
| -Coder Desktop for [macOS](https://github.com/coder/coder-desktop-macos/issues) or |
126 |
| -[Windows](https://github.com/coder/coder-desktop-windows/issues), in the |
127 |
| -[main Coder repository](https://github.com/coder/coder/issues), or consult the |
128 |
| -[community on Discord](https://coder.com/chat). |
| 140 | +If you encounter issues not covered here: |
129 | 141 |
|
130 |
| -### Known Issues |
| 142 | +- **File an issue**: [macOS](https://github.com/coder/coder-desktop-macos/issues) | [Windows](https://github.com/coder/coder-desktop-windows/issues) | [General](https://github.com/coder/coder/issues) |
| 143 | +- **Community support**: [Discord](https://coder.com/chat) |
131 | 144 |
|
132 |
| -#### macOS: Do not install more than one copy of Coder Desktop |
| 145 | +## Uninstalling |
133 | 146 |
|
134 |
| -To avoid system VPN configuration conflicts, only one copy of `Coder Desktop.app` should exist on your Mac, and it must remain in `/Applications`. |
| 147 | +<div class="tabs"> |
135 | 148 |
|
136 |
| -#### Coder Desktop can't connect through another VPN |
| 149 | +### macOS |
137 | 150 |
|
138 |
| -If the logged in Coder deployment requires a corporate VPN to connect, Coder Connect can't establish communication |
139 |
| -through the VPN, and will time out. |
| 151 | +1. **Disable Coder Connect** in the app menu |
| 152 | +2. **Quit Coder Desktop** completely |
| 153 | +3. **Remove VPN extension** from System Settings > Network Extensions |
| 154 | +4. **Delete the app** from Applications folder |
| 155 | +5. **Remove configuration** (optional): `rm -rf ~/Library/Application\ Support/Coder\ Desktop` |
140 | 156 |
|
141 |
| -This issue has been fixed in Coder v2.24.3 and later. For macOS clients, Coder Desktop v0.8.0 or later is also required. |
| 157 | +### Windows |
142 | 158 |
|
143 |
| -## Next Steps |
| 159 | +1. **Disable Coder Connect** in the app menu |
| 160 | +2. **Quit Coder Desktop** from system tray |
| 161 | +3. **Uninstall** via Settings > Apps or Control Panel |
| 162 | +4. **Remove configuration** (optional): Delete `%APPDATA%\Coder Desktop` |
144 | 163 |
|
145 |
| -- [Connect to and work on your workspace](./desktop-connect-sync.md) |
| 164 | +</div> |
0 commit comments