diff --git a/.github/.linkspector.yml b/.github/.linkspector.yml index d8fa76b582f..60908ec03f2 100644 --- a/.github/.linkspector.yml +++ b/.github/.linkspector.yml @@ -22,6 +22,10 @@ ignorePatterns: - pattern: "code.visualstudio.com" - pattern: "marketplace.visualstudio.com" - pattern: "codeium.com" + # windsurf.com and devin.ai (Devin Desktop's vendor) rate-limit repeated + # automated requests with 429s, including from GitHub runner IPs. + - pattern: "windsurf.com" + - pattern: "devin.ai" - pattern: "www.emacswiki.org" - pattern: "linux.die.net/man" - pattern: "www.gnu.org" diff --git a/docs/about/contributing/modules.md b/docs/about/contributing/modules.md index d04616d02ed..8d92f5bab39 100644 --- a/docs/about/contributing/modules.md +++ b/docs/about/contributing/modules.md @@ -8,7 +8,7 @@ Coder modules are Terraform modules that integrate with Coder workspaces to prov Examples of modules include: -- **Desktop IDEs**: [`jetbrains-fleet`](https://registry.coder.com/modules/coder/jetbrains-fleet), [`cursor`](https://registry.coder.com/modules/coder/cursor), [`windsurf`](https://registry.coder.com/modules/coder/windsurf), [`zed`](https://registry.coder.com/modules/coder/zed) +- **Desktop IDEs**: [`jetbrains-fleet`](https://registry.coder.com/modules/coder/jetbrains-fleet), [`cursor`](https://registry.coder.com/modules/coder/cursor), [`devin-desktop`](https://registry.coder.com/modules/coder/devin-desktop), [`zed`](https://registry.coder.com/modules/coder/zed) - **Web IDEs**: [`code-server`](https://registry.coder.com/modules/coder/code-server), [`vscode-web`](https://registry.coder.com/modules/coder/vscode-web), [`jupyter-notebook`](https://registry.coder.com/modules/coder/jupyter-notebook), [`jupyter-lab`](https://registry.coder.com/modules/coder/jupyterlab) - **Integrations**: [`devcontainers-cli`](https://registry.coder.com/modules/coder/devcontainers-cli), [`vault-github`](https://registry.coder.com/modules/coder/vault-github), [`jfrog-oauth`](https://registry.coder.com/modules/coder/jfrog-oauth), [`jfrog-token`](https://registry.coder.com/modules/coder/jfrog-token) - **Workspace utilities**: [`git-clone`](https://registry.coder.com/modules/coder/git-clone), [`dotfiles`](https://registry.coder.com/modules/coder/dotfiles), [`filebrowser`](https://registry.coder.com/modules/coder/filebrowser), [`coder-login`](https://registry.coder.com/modules/coder/coder-login), [`personalize`](https://registry.coder.com/modules/coder/personalize) diff --git a/docs/ai-coder/ai-gateway/clients/index.md b/docs/ai-coder/ai-gateway/clients/index.md index 481aaf1884d..f0d78aae31e 100644 --- a/docs/ai-coder/ai-gateway/clients/index.md +++ b/docs/ai-coder/ai-gateway/clients/index.md @@ -39,25 +39,25 @@ For information about authenticating with AI Gateway, visit [AI Gateway Authenti The table below shows tested AI clients and their compatibility with AI Gateway. -| Client | OpenAI | Anthropic | BYOK | Notes | -|----------------------------------|--------|-----------|------|--------------------------------------------------------------------------------------------------------------------------------------------------------| -| [Mux](./mux.md) | ✅ | ✅ | - | | -| [Claude Code](./claude-code.md) | - | ✅ | ✅ | | -| [Codex CLI](./codex.md) | ✅ | - | ✅ | | -| [OpenCode](./opencode.md) | ✅ | ✅ | ✅ | | -| [Factory](./factory.md) | ✅ | ✅ | ✅ | | -| [Cline](./cline.md) | ✅ | ✅ | ✅ | | -| [Kilo Code](./kilo-code.md) | ✅ | ✅ | ❌ | | -| [VS Code](./vscode.md) | ✅ | ✅ | ❌ | VS Code 1.122+ via Custom Endpoint provider. GitHub sign-in not required. Inline suggestions still require GitHub Copilot. | -| [JetBrains IDEs](./jetbrains.md) | ✅ | ❌ | ❌ | Works in Chat mode via [third-party model configuration](https://www.jetbrains.com/help/ai-assistant/use-custom-models.html#provide-your-own-api-key). | -| [Zed](./zed.md) | ✅ | ✅ | ❌ | | -| [GitHub Copilot](./copilot.md) | ⚙️ | - | - | Requires [AI Gateway Proxy](../ai-gateway-proxy/index.md). Uses per-user GitHub tokens. | -| WindSurf | ❌ | ❌ | ❌ | No option to override base URL. | -| Cursor | ❌ | ❌ | ❌ | Override for OpenAI broken ([upstream issue](https://forum.cursor.com/t/requests-are-sent-to-incorrect-endpoint-when-using-base-url-override/144894)). | -| Sourcegraph Amp | ❌ | ❌ | ❌ | No option to override base URL. | -| Kiro | ❌ | ❌ | ❌ | No option to override base URL. | -| Gemini CLI | ❌ | ❌ | ❌ | No Gemini API support. Upvote [this issue](https://github.com/coder/coder/issues/24804). | -| Antigravity | ❌ | ❌ | ❌ | No option to override base URL. | +| Client | OpenAI | Anthropic | BYOK | Notes | +|-----------------------------------|--------|-----------|------|--------------------------------------------------------------------------------------------------------------------------------------------------------| +| [Mux](./mux.md) | ✅ | ✅ | - | | +| [Claude Code](./claude-code.md) | - | ✅ | ✅ | | +| [Codex CLI](./codex.md) | ✅ | - | ✅ | | +| [OpenCode](./opencode.md) | ✅ | ✅ | ✅ | | +| [Factory](./factory.md) | ✅ | ✅ | ✅ | | +| [Cline](./cline.md) | ✅ | ✅ | ✅ | | +| [Kilo Code](./kilo-code.md) | ✅ | ✅ | ❌ | | +| [VS Code](./vscode.md) | ✅ | ✅ | ❌ | VS Code 1.122+ via Custom Endpoint provider. GitHub sign-in not required. Inline suggestions still require GitHub Copilot. | +| [JetBrains IDEs](./jetbrains.md) | ✅ | ❌ | ❌ | Works in Chat mode via [third-party model configuration](https://www.jetbrains.com/help/ai-assistant/use-custom-models.html#provide-your-own-api-key). | +| [Zed](./zed.md) | ✅ | ✅ | ❌ | | +| [GitHub Copilot](./copilot.md) | ⚙️ | - | - | Requires [AI Gateway Proxy](../ai-gateway-proxy/index.md). Uses per-user GitHub tokens. | +| Devin Desktop (formerly Windsurf) | ❌ | ❌ | ❌ | No option to override base URL. | +| Cursor | ❌ | ❌ | ❌ | Override for OpenAI broken ([upstream issue](https://forum.cursor.com/t/requests-are-sent-to-incorrect-endpoint-when-using-base-url-override/144894)). | +| Sourcegraph Amp | ❌ | ❌ | ❌ | No option to override base URL. | +| Kiro | ❌ | ❌ | ❌ | No option to override base URL. | +| Gemini CLI | ❌ | ❌ | ❌ | No Gemini API support. Upvote [this issue](https://github.com/coder/coder/issues/24804). | +| Antigravity | ❌ | ❌ | ❌ | No option to override base URL. | | *Legend: ✅ supported, ⚙️ requires AI Gateway Proxy, ❌ not supported, - not applicable.* diff --git a/docs/ai-coder/ide-agents.md b/docs/ai-coder/ide-agents.md index a6e960f28ee..8bf8bd0da86 100644 --- a/docs/ai-coder/ide-agents.md +++ b/docs/ai-coder/ide-agents.md @@ -1,4 +1,4 @@ -Learn how to use Coder Workspaces with IDEs and plugins to run coding agents like Cursor, GitHub Copilot, Windsurf, RooCode, and more. +Learn how to use Coder Workspaces with IDEs and plugins to run coding agents like Cursor, GitHub Copilot, Devin Desktop, RooCode, and more. ## How it works diff --git a/docs/ai-coder/index.md b/docs/ai-coder/index.md index c9f8dc0aeb1..0381687a3ce 100644 --- a/docs/ai-coder/index.md +++ b/docs/ai-coder/index.md @@ -6,7 +6,7 @@ workspaces and for background task execution. ## Agents in the IDE Coder [integrates with IDEs](../user-guides/workspace-access/index.md) such as -Cursor, Windsurf, and Zed that include built-in coding agents to work alongside +Cursor, Devin Desktop, and Zed that include built-in coding agents to work alongside developers. Additionally, template admins can [pre-install extensions](https://registry.coder.com/modules/coder/vscode-web) for agents such as GitHub Copilot. diff --git a/docs/get-started/customize-your-template/add-a-language.md b/docs/get-started/customize-your-template/add-a-language.md index cd047ce0721..bfe82540729 100644 --- a/docs/get-started/customize-your-template/add-a-language.md +++ b/docs/get-started/customize-your-template/add-a-language.md @@ -403,9 +403,9 @@ data "coder_parameter" "ides" { icon = "/icon/zed.svg" } option { - name = "Windsurf" - value = "windsurf" - icon = "/icon/windsurf.svg" + name = "Devin Desktop" + value = "devin-desktop" + icon = "/icon/devin.svg" } } @@ -609,9 +609,9 @@ module "zed" { order = 5 } -module "windsurf" { - count = data.coder_workspace.me.start_count * (contains(local.ides, "windsurf") ? 1 : 0) - source = "registry.coder.com/coder/windsurf/coder" +module "devin-desktop" { + count = data.coder_workspace.me.start_count * (contains(local.ides, "devin-desktop") ? 1 : 0) + source = "registry.coder.com/coder/devin-desktop/coder" version = "~> 1.0" agent_id = coder_agent.main.id folder = "/home/coder" diff --git a/docs/get-started/customize-your-template/authenticate-to-github.md b/docs/get-started/customize-your-template/authenticate-to-github.md index aa0e811985b..126c6573de0 100644 --- a/docs/get-started/customize-your-template/authenticate-to-github.md +++ b/docs/get-started/customize-your-template/authenticate-to-github.md @@ -246,9 +246,9 @@ data "coder_parameter" "ides" { icon = "/icon/zed.svg" } option { - name = "Windsurf" - value = "windsurf" - icon = "/icon/windsurf.svg" + name = "Devin Desktop" + value = "devin-desktop" + icon = "/icon/devin.svg" } } @@ -458,9 +458,9 @@ module "zed" { order = 5 } -module "windsurf" { - count = data.coder_workspace.me.start_count * (contains(local.ides, "windsurf") ? 1 : 0) - source = "registry.coder.com/coder/windsurf/coder" +module "devin-desktop" { + count = data.coder_workspace.me.start_count * (contains(local.ides, "devin-desktop") ? 1 : 0) + source = "registry.coder.com/coder/devin-desktop/coder" version = "~> 1.0" agent_id = coder_agent.main.id folder = "/home/coder" diff --git a/docs/get-started/customize-your-template/install-command-line-tools.md b/docs/get-started/customize-your-template/install-command-line-tools.md index 449756527d2..189d16015e4 100644 --- a/docs/get-started/customize-your-template/install-command-line-tools.md +++ b/docs/get-started/customize-your-template/install-command-line-tools.md @@ -501,9 +501,9 @@ data "coder_parameter" "ides" { icon = "/icon/zed.svg" } option { - name = "Windsurf" - value = "windsurf" - icon = "/icon/windsurf.svg" + name = "Devin Desktop" + value = "devin-desktop" + icon = "/icon/devin.svg" } } @@ -734,9 +734,9 @@ module "zed" { order = 5 } -module "windsurf" { - count = data.coder_workspace.me.start_count * (contains(local.ides, "windsurf") ? 1 : 0) - source = "registry.coder.com/coder/windsurf/coder" +module "devin-desktop" { + count = data.coder_workspace.me.start_count * (contains(local.ides, "devin-desktop") ? 1 : 0) + source = "registry.coder.com/coder/devin-desktop/coder" version = "~> 1.0" agent_id = coder_agent.main.id folder = "/home/coder" diff --git a/docs/manifest.json b/docs/manifest.json index 32a67a041cb..c4aa0ee5549 100644 --- a/docs/manifest.json +++ b/docs/manifest.json @@ -320,9 +320,9 @@ "path": "./user-guides/workspace-access/cursor.md" }, { - "title": "Windsurf", - "description": "Access your Coder workspace with Windsurf, the AI-powered code editor, over SSH.", - "path": "./user-guides/workspace-access/windsurf.md" + "title": "Devin Desktop", + "description": "Access your Coder workspace with Devin Desktop (formerly Windsurf), the AI-powered code editor, over SSH.", + "path": "./user-guides/workspace-access/devin-desktop.md" }, { "title": "Antigravity", diff --git a/docs/reference/glossary.md b/docs/reference/glossary.md index a172d2dd961..2dc29929f34 100644 --- a/docs/reference/glossary.md +++ b/docs/reference/glossary.md @@ -123,7 +123,7 @@ Refer to [Coder Desktop](../user-guides/desktop/index.md). ### Coder extension for VS Code -The editor extension that connects VS Code, and forks such as Cursor and Windsurf, to Coder workspaces. +The editor extension that connects VS Code, and forks such as Cursor and Devin Desktop (formerly Windsurf), to Coder workspaces. Refer to [VS Code](../user-guides/workspace-access/vscode.md). ### Coder Tasks @@ -514,7 +514,7 @@ Refer to [Support bundle](../support/support-bundle.md). ### Supported editors and IDEs -The editors and IDEs that connect to Coder workspaces, including [VS Code](../user-guides/workspace-access/vscode.md), [code-server](../user-guides/workspace-access/code-server.md), [Cursor](../user-guides/workspace-access/cursor.md), [Windsurf](../user-guides/workspace-access/windsurf.md), [Antigravity](../user-guides/workspace-access/antigravity.md), [Zed](../user-guides/workspace-access/zed.md), and JetBrains IDEs through [Gateway](../user-guides/workspace-access/jetbrains/gateway.md) and [Fleet](../user-guides/workspace-access/jetbrains/fleet.md). +The editors and IDEs that connect to Coder workspaces, including [VS Code](../user-guides/workspace-access/vscode.md), [code-server](../user-guides/workspace-access/code-server.md), [Cursor](../user-guides/workspace-access/cursor.md), [Devin Desktop](../user-guides/workspace-access/devin-desktop.md), [Antigravity](../user-guides/workspace-access/antigravity.md), [Zed](../user-guides/workspace-access/zed.md), and JetBrains IDEs through [Gateway](../user-guides/workspace-access/jetbrains/gateway.md) and [Fleet](../user-guides/workspace-access/jetbrains/fleet.md). ### Swagger diff --git a/docs/user-guides/workspace-access/devin-desktop.md b/docs/user-guides/workspace-access/devin-desktop.md new file mode 100644 index 00000000000..4c3b6a6849d --- /dev/null +++ b/docs/user-guides/workspace-access/devin-desktop.md @@ -0,0 +1,63 @@ +# Devin Desktop + +[Devin Desktop](https://windsurf.com/editor) is Cognition's AI-powered code editor +designed for AI-assisted development. Cognition, the maker of the Devin autonomous +coding agent, rebranded the Windsurf Editor (formerly Codeium) as Devin Desktop +on June 2, 2026. If you installed Windsurf before that date, it updated to Devin +Desktop automatically, your plan, extensions, and settings carried over. + +Follow this guide to use Devin Desktop to access your Coder workspaces. + +If your team uses Devin Desktop regularly, ask your Coder administrator to add Devin Desktop as a workspace application in your template. +You can also use the [devin-desktop module](https://registry.coder.com/modules/coder/devin-desktop) to easily add Devin Desktop to your Coder templates. + +## Install Devin Desktop + +Devin Desktop can connect to your Coder workspaces via SSH: + +1. [Install Devin Desktop](https://docs.windsurf.com/getstarted/overview) on your local machine. + +1. Open Devin Desktop and select **Get started**. + + Import your settings from another IDE, or select **Start fresh**. + +1. Complete the setup flow and log in or [create an account](https://windsurf.com) + if you don't have one already. + +## Install the Coder extension + +![Coder extension in Devin Desktop](../../images/user-guides/ides/windsurf-coder-extension.png) + +1. You can install the Coder extension through the Marketplace built in to Devin Desktop or manually. + +
+ + ## Extension Marketplace + + Search for Coder from the Extensions Pane and select **Install**. + + ## Manually + + 1. Download the [latest vscode-coder extension](https://github.com/coder/vscode-coder/releases/latest) `.vsix` file. + + 1. Drag the `.vsix` file into the extensions pane of Devin Desktop. + + Alternatively: + + 1. Open the Command Palette + (Ctrl+Shift+P or Cmd+Shift+P) and search for `vsix`. + + 1. Select **Extensions: Install from VSIX** and select the vscode-coder extension you downloaded. + +
+ +## Open a workspace in Devin Desktop + +1. From the Devin Desktop Command Palette (Ctrl+Shift+P or Cmd+Shift+P), + enter `coder` and select **Coder: Login**. + +1. Follow the prompts to login and copy your session token. + + Paste the session token in the **Coder API Key** dialogue in Devin Desktop. + +1. Devin Desktop prompts you to open a workspace, or you can use the Command Palette to run **Coder: Open Workspace**. diff --git a/docs/user-guides/workspace-access/index.md b/docs/user-guides/workspace-access/index.md index e6a437035a7..f506f438fc9 100644 --- a/docs/user-guides/workspace-access/index.md +++ b/docs/user-guides/workspace-access/index.md @@ -149,10 +149,10 @@ Cursor connects using the Coder extension. Read more about [using Cursor with your workspace](./cursor.md). -## Windsurf +## Devin Desktop -[Windsurf](./windsurf.md) is Codeium's code editor designed for AI-assisted development. -Windsurf connects using the Coder extension. +[Devin Desktop](./devin-desktop.md) (formerly Windsurf, formerly Codeium) is Cognition's AI-powered code editor designed for AI-assisted development. +Devin Desktop connects using the Coder extension. ## Antigravity diff --git a/docs/user-guides/workspace-access/windsurf.md b/docs/user-guides/workspace-access/windsurf.md deleted file mode 100644 index 1edd656fc1b..00000000000 --- a/docs/user-guides/workspace-access/windsurf.md +++ /dev/null @@ -1,60 +0,0 @@ -# Windsurf - -[Windsurf](https://codeium.com/windsurf) is Codeium's code editor designed for AI-assisted -development. - -Follow this guide to use Windsurf to access your Coder workspaces. - -If your team uses Windsurf regularly, ask your Coder administrator to add Windsurf as a workspace application in your template. -You can also use the [Windsurf module](https://registry.coder.com/modules/coder/windsurf) to easily add Windsurf to your Coder templates. - -## Install Windsurf - -Windsurf can connect to your Coder workspaces via SSH: - -1. [Install Windsurf](https://docs.codeium.com/windsurf/getting-started) on your local machine. - -1. Open Windsurf and select **Get started**. - - Import your settings from another IDE, or select **Start fresh**. - -1. Complete the setup flow and log in or [create a Codeium account](https://codeium.com/windsurf/signup) - if you don't have one already. - -## Install the Coder extension - -![Coder extension in Windsurf](../../images/user-guides/ides/windsurf-coder-extension.png) - -1. You can install the Coder extension through the Marketplace built in to Windsurf or manually. - -
- - ## Extension Marketplace - - Search for Coder from the Extensions Pane and select **Install**. - - ## Manually - - 1. Download the [latest vscode-coder extension](https://github.com/coder/vscode-coder/releases/latest) `.vsix` file. - - 1. Drag the `.vsix` file into the extensions pane of Windsurf. - - Alternatively: - - 1. Open the Command Palette - (Ctrl+Shift+P or Cmd+Shift+P) and search for `vsix`. - - 1. Select **Extensions: Install from VSIX** and select the vscode-coder extension you downloaded. - -
- -## Open a workspace in Windsurf - -1. From the Windsurf Command Palette (Ctrl+Shift+P or Cmd+Shift+P), - enter `coder` and select **Coder: Login**. - -1. Follow the prompts to login and copy your session token. - - Paste the session token in the **Coder API Key** dialogue in Windsurf. - -1. Windsurf prompts you to open a workspace, or you can use the Command Palette to run **Coder: Open Workspace**.