Where does the bug appear (feature/product)?
Cursor IDE
Describe the Bug
When an agent message contains an absolute Windows path written with backslashes, the chat renders it as a clickable link, but clicking it fails. The backslashes are percent-encoded into the URI instead of being treated as path separators, so the resource can never resolve.
The error dialog shows the mangled path verbatim:
Unable to open 'cursor-bug-1-multiroot-mcp-json-ignored.md'
Unable to resolve resource C:%5CUsers%5CUser%5CAppData%5CLocal%5CTemp%5Ccursor-bug-1-multiroot-mcp-json-ignored.md
Note the %5C (encoded \) where separators should be. The same file opens fine from the file-edit header in the chat, so only the message-body link path is affected.
Steps to Reproduce
-
Ask the agent to create a file at an absolute Windows path, e.g.
C:\Users\<you>\AppData\Local\Temp\demo.md. -
Have it report the location back with the backslash form of the path in the message body (inline code works).
-
Click the rendered link in the chat.
-
Repeat with the same path written using forward slashes (
C:/Users/...).
Expected Behavior
The file opens, the same way it does when clicking the file-edit header for that write. Both separator styles should be recognized on Windows.
Actual Behavior
An “Unable to open” dialog appears with a C:%5C... path. The link never resolves regardless of whether the file exists.
Writing the same path with forward slashes (C:/Users/...) does not help: that form is not linkified at all, so it renders as plain text. The net effect is that there is no way to write an absolute path in chat that is both clickable and resolvable — the form that gets a link is exactly the form that fails to open.
Additional Notes
The file in my case lives outside the workspace folders (in %TEMP%). I have not isolated whether an in-workspace absolute backslash path behaves the same, so that’s worth checking during triage.
Operating System
Windows 10/11
Version Information
Version: 3.15.6 (user setup)
VS Code Extension API: 1.128.0
Commit: a1f686545fd0ce8917bbd2449f733551a9bce420
Date: 2026-08-06T01:41:03.876Z
Layout: IDE
Build Type: Stable
Release Track: Default
Electron: 40.10.3
Chromium: 144.0.7559.236
Node.js: 24.15.0
V8: 14.4.258.32-electron.0
xterm.js: 6.1.0-beta.291
OS: Windows_NT x64 10.0.26200
Does this stop you from using Cursor
No - Cursor works, but with this issue