Deep links do not work when the URI is handled by an agent window
Les mainteneurs répondent en général sous 2 jours
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 42/100
- Type d'issue
- Bug
- Clarté
- À clarifier
- Activité
- Active
- Stack technique
- typescript, vscode
- Domaine
- developer-experience
Piste de recherche
Commencez par package.json afin d’inspecter l’activation event et les métadonnées de extension kind. Reproduisez le comportement de deep-link dans les scénarios indiqués pour VS Code, Cursor, Devin et VSCodium, et vérifiez si le fix de Cursor a été livré. C’est terminé lorsque les versions concernées sont documentées et que le workaround est placé dans le README ou la Coder deep-link documentation, sauf si les métadonnées permettent une modification viable.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Summary
coder:// / vscode://coder.coder-remote/open?... deep links silently do nothing when the editor routes the URI to an "agent window" (VS Code Agents window, Cursor Agents window / Glass). These windows run a restricted extension host that does not load third-party extensions, so the extension is never activated and its registered vscode.window.registerUriHandler callback is never invoked.
The renderer logs the URI as handled, so no error is surfaced. The link appears to do nothing.
Reproduction (as reported for Cursor)
- Install
coder.coder-remote1.15.2. - Start Cursor 3.14.7 on Linux with a clean
HOMEand the default~/.cursor/extensionsdirectory. - Open
cursor://coder.coder-remote/open?workspace=test&url=https://coder.example.com. - Repeat after initialization completes.
Observed: renderer.log records the URI as handled, but extension-host initialization does not include coder.coder-remote, and there is no activation or URI-handler entry. On the repeat attempt, Cursor invokes workbench.extensions.installExtension even though the extension is already installed.
Expected: the installed extension is loaded and its onUri handler is invoked.
Upstream reports
- Cursor forum report and vendor response: https://forum.cursor.com/t/installed-extensions-onuri-handler-is-not-invoked-for-custom-uri/167316
- Cursor confirmed this is a known issue in 3.14.7:
cursor://links for third-party extensions can be handled in the Agents window, where the extension does not load, soonUridoes not fire. A fix was said to be prepared. - Stated workaround: make a normal IDE window active before opening the link. If only the Agents window is open, open a new editor window first, then click the link again.
- Cursor confirmed this is a known issue in 3.14.7:
- Related Cursor reports about extensions not loading in the Agents window:
- VS Code has shipped its own Agents window
(https://code.visualstudio.com/docs/agents/run/agents-window), which has the same restricted extension host. Related upstream issues:- microsoft/vscode#315776 "Can extensions detect that they are running in the agents window"
- microsoft/vscode#315637 "Add a 'Enable in Agent window' in extensions view"
- microsoft/vscode#317460 "Agents Window: MCP server contributed by extension is not available"
Why this matters
Deep links are the primary entry point from the Coder dashboard ("Open in VS Code" / "Open in Cursor"). If the user's active or only window is an agent window, the flow fails with no feedback.
Scope
Tracking. The root cause is in the editor, not in this extension, so the work here is likely limited to:
- Confirming which editors and versions are affected (VS Code stable/insiders, Cursor, Devin, VSCodium).
- Confirming whether the Cursor fix has shipped and in which version.
- Deciding whether to document the workaround in the README or in the Coder docs deep-link section.
- Investigating whether anything in
package.json(for example an explicitonUriactivation event, or extension kind metadata) changes whether the extension is loaded in these windows.
- Langage dominant
- TypeScript
- Étoiles
- 132
- Forks
- 48
- Merge moyen
- 2 j 4 h
- PR mergées (30 j)
- 25
Préparer son environnement
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de coder/vscode-coder
-
ReconnectingWebSocket drops messages the server sends right after the handshakePeut-être pris @EhabY l’a pris il y a 2 jours. Ouvertebug vs-code
Difficulté 3/5 1-2 jours Accessibilité débutants 72/100
coder/vscode-coder#1141 · 1 commentaire · 1 personne assignée ·
Les mainteneurs répondent en général sous 2 jours
-
Split commands.ts by topicPeut-être pris @EhabY l’a pris il y a 2 jours. OuverteImprovement tech-debt vs-code
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
coder/vscode-coder#1135 · 1 commentaire · 1 personne assignée ·
Les mainteneurs répondent en général sous 2 jours
-
Migrate CI setup to pnpm/setupPeut-être pris @EhabY l’a pris il y a 26 jours. Ouvertetech-debt
coder/vscode-coder#1119 · 1 commentaire · 1 personne assignée ·
Les mainteneurs répondent en général sous 2 jours
-
Design the VS Code Workspaces panelPeut-être à nouveau libre @chrifro l’a pris il y a 29 jours, et aucune pull request n’est ouverte. Ouverte
coder/vscode-coder#1113 · 3 commentaires · 1 personne assignée ·
Les mainteneurs répondent en général sous 2 jours
-
Improvement tech-debt vs-code
Difficulté 3/5 1-2 jours Accessibilité débutants 55/100
coder/vscode-coder#1066 · 2 commentaires ·
Les mainteneurs répondent en général sous 2 jours
Toutes les issues de coder/vscode-coder
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
needs triage
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
homarr-labs/homarr#7191 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
AvaProtocol/ava-sdk-js#276 ·
Les mainteneurs répondent en général sous 1 jour
-
useFragment does not require `variables` when the fragment's variables type has required fieldsOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
apollographql/apollo-client#13493 ·
Les mainteneurs répondent en général sous 1 jour