diff --git a/src/vs/workbench/contrib/terminalContrib/links/browser/terminalLinkResolver.ts b/src/vs/workbench/contrib/terminalContrib/links/browser/terminalLinkResolver.ts index 6090c628f8a..c3315837a51 100644 --- a/src/vs/workbench/contrib/terminalContrib/links/browser/terminalLinkResolver.ts +++ b/src/vs/workbench/contrib/terminalContrib/links/browser/terminalLinkResolver.ts @@ -25,6 +25,14 @@ export class TerminalLinkResolver implements ITerminalLinkResolver { } async resolveLink(processManager: Pick & { backend?: Pick }, link: string, uri?: URI): Promise { + // Correct scheme and authority for remote terminals + if (uri && uri.scheme === Schemas.file && processManager.remoteAuthority) { + uri = uri.with({ + scheme: Schemas.vscodeRemote, + authority: processManager.remoteAuthority + }); + } + // Get the link cache let cache = this._resolvedLinkCaches.get(processManager.remoteAuthority ?? ''); if (!cache) {