Skip to content

Handle Arbitrary URIs through Coder Desktop #18728

@matifali

Description

@matifali

Problem Description

Today, integrating desktop applications with Coder depends on dedicated extensions(e.g, VSCode and JetBrains) or manual configuration via the CLI (e.g., coder config-ssh). This creates:

  • Friction for teams with limited engineering resources.
  • Limited flexibility for integrating new or less commonly used tools.
  • Slower adoption of Coder for users dependent on specific local tools.

Desired Solution

Introduce a standardized, extensible URI scheme (coder://) that leverages Coder Desktop to streamline application launching. This is very similar to the existing RDP handling of Coder Desktop.

Example URI:

coder://authority/v0/open/ws/<workspace>/agent/<agent>/uri?=<custom-app-uri>

Example for Zed IDE:

coder://authority/v0/open/ws/ws-abc123/agent/agent-xyz/uri?=zed://ssh/myworkspace.coder/folder

Behavior:

  • Coder Desktop intercepts the coder:// URI.
  • Verifies if Coder Desktop is installed and running.
  • Handles tunneling and passes the custom URI to the target application.
  • Fallback behavior:
    • Prompt user to install Coder Desktop if not found.
    • Show alert if the target application (e.g., zed://) is unsupported or not installed.
  • UI modal fallback appears after 500ms if the URI fails to invoke, using the AppLink component.

Implementation Requirements

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-evaluationUse this label on feature requests that require joint evaluation by Product and Engineering teams.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions