Coder Desktop
Use Coder Desktop to work on your workspaces as though they're on your LAN, no port-forwarding required.
Note
Coder Desktop requires a Coder deployment running v2.20.0 or later.
Install Coder Desktop
-
Use Homebrew to install Coder Desktop:
brew install --cask coder/coder/coder-desktop
Alternatively, you can manually install Coder Desktop from the releases page.
-
Open Coder Desktop from the Applications directory. When macOS asks if you want to open it, select Open.
-
The application is treated as a system VPN. macOS will prompt you to confirm with:
"Coder Desktop" would like to use a new network extension
Select Open System Settings.
-
In the Network Extensions system settings, enable the Coder Desktop extension.
-
Continue to the configuration section.
Do not install more than one copy of Coder Desktop.
To avoid system VPN configuration conflicts, only one copy of
Coder Desktop.app
should exist on your Mac, and it must remain in/Applications
.
Configure
Before you can use Coder Desktop, you will need to sign in.
-
Open the Desktop menu and select Sign in:
-
In the Sign In window, enter your Coder deployment's URL and select Next:
-
macOS: Select the link to your deployment's
/cli-auth
page to generate a session token.Windows: Select Generate a token via the Web UI.
-
In your web browser, you may be prompted to sign in to Coder with your credentials:
-
Copy the session token to the clipboard:
-
Paste the token in the Session Token field of the Sign In screen, then select Sign In:
-
macOS: Allow the VPN configuration for Coder Desktop if you are prompted.
-
Select the Coder icon in the menu bar (macOS) or system tray (Windows), and click the Coder Connect toggle to enable the connection.
This may take a few moments, as Coder Desktop will download the necessary components from the Coder server if they have been updated.
-
macOS: You may be prompted to enter your password to allow Coder Connect to start.
-
Coder Connect is now running!
Coder Connect
While active, Coder Connect will list the workspaces you own and will configure your system to connect to them over private IPv6 addresses and custom hostnames ending in .coder
.

To copy the .coder
hostname of a workspace agent, you can click the copy icon beside it.
On macOS you can use ping6
in your terminal to verify the connection to your workspace:
ping6 -c 5 your-workspace.coder
On Windows, you can use ping
in a Command Prompt or PowerShell terminal to verify the connection to your workspace:
ping -n 5 your-workspace.coder
Any services listening on ports in your workspace will be available on the same hostname. For example, you can access a web server on port 8080
by visiting http://your-workspace.coder:8080
in your browser.
You can also connect to the SSH server in your workspace using any SSH client, such as OpenSSH or PuTTY:
ssh your-workspace.coder
Note
Currently, the Coder IDE extensions for VSCode and JetBrains create their own tunnel and do not utilize the Coder Connect tunnel to connect to workspaces.
Accessing web apps in a secure browser context
Some web applications require a secure context to function correctly.
A browser typically considers an origin secure if the connection is to localhost
, or over HTTPS
.
As Coder Connect uses its own hostnames and does not provide TLS to the browser, Google Chrome and Firefox will not allow any web APIs that require a secure context.
Note
Despite the browser showing an insecure connection without HTTPS
, the underlying tunnel is encrypted with WireGuard in the same fashion as other Coder workspace connections (e.g. coder port-forward
).
If you require secure context web APIs, you will need to mark the workspace hostnames as secure in your browser settings.
We are planning some changes to Coder Desktop that will make accessing secure context web apps easier. Stay tuned for updates.
-
Open Chrome and visit
chrome://flags/#unsafely-treat-insecure-origin-as-secure
. -
Enter the full workspace hostname, including the
http
scheme and the port (e.g.http://your-workspace.coder:8080
), into the Insecure origins treated as secure text field.If you need to enter multiple URLs, use a comma to separate them.
-
Ensure that the dropdown to the right of the text field is set to Enabled.
-
You will be prompted to relaunch Google Chrome at the bottom of the page. Select Relaunch to restart Google Chrome.
-
On relaunch and subsequent launches, Google Chrome will show a banner stating "You are using an unsupported command-line flag". This banner can be safely dismissed.
-
Web apps accessed on the configured hostnames and ports will now function correctly in a secure context.
Troubleshooting
Mac: Issues updating Coder Desktop
No workspaces!
And
Internal Error: The VPN must be started with the app open during first-time setup.
Due to an issue with the way Coder Desktop works with the macOS interprocess communication mechanism(XPC) system network extension, core Desktop functionality can break when you upgrade the application.
- Delete the application from
/Applications
. - Restart your device.