2025-09-03 13:21:55.721 [info] Resolving ssh remot...
创建于:2025年9月3日
使用 GPT-5 Thinking 回答 Chat01
创建于:2025年9月3日
使用 GPT-5 Thinking 回答 Chat01
2025-09-03 13:21:55.721 [info] Resolving ssh remote authority '43.143.57.14' (Unparsed 'ssh-remote+7b22686f73744e616d65223a2234332e3134332e35372e3134227d') (attempt #1)
2025-09-03 13:21:55.721 [info] SSH askpass server listening on port 55199
2025-09-03 13:21:55.722 [error] Error resolving SSH authority Unexpected token '', "{
"q"... is not valid JSON
2025-09-03 13:22:01.625 [info] Reloading window
2025-09-03 13:22:03.125 [info] Resolving ssh remote authority '43.143.57.14' (Unparsed 'ssh-remote+7b22686f73744e616d65223a2234332e3134332e35372e3134227d') (attempt #1)
2025-09-03 13:22:03.128 [info] SSH askpass server listening on port 55215
2025-09-03 13:22:03.133 [error] Error resolving SSH authority Unexpected token '', "{
使用vscode,cmd 都可以连接ssh服务器,
b612@B612 MINGW64 ~/.ssh
$ xxd ~/.ssh/config | head -n 1
00000000: 486f 7374 2034 332e 3134 332e 3537 2e31 Host 43.143.57.1
b612@B612 MINGW64 ~/.ssh
但是cursor 安装拓展就是不能连接,并且报错,找到原因并修复
看日志里这句是关键:
Error resolving SSH authority Unexpected token '', "{ "q"... is not valid JSON
这个
是 UTF-8 的 BOM 字节(0xEF 0xBB 0xBF)。Cursor 里的 Remote-SSH 解析某个 JSON 文件时遇到 BOM,JSON.parse
直接报错,于是你在 VSCode / cmd 能连,唯独 Cursor 的扩展报错。这通常不是 ~/.ssh/config
的问题(你用 xxd
看也没 BOM),而是 Cursor 自己的 Remote-SSH 扩展或它的缓存 JSON 被写成了“带 BOM”的文件,或者装的是 Cursor 的 fork(Open Remote-SSH)而不是微软官方的 Remote-SSH 版本,已知容易出怪问题。(Stack Overflow, Cursor - Community Forum, GitHub)
下面给你一套“从快到稳”的修复步骤(Windows):
powershellRemove-Item -Recurse -Force "$env:APPDATA\Cursor\User\globalStorage\ms-vscode-remote.remote-ssh"
说明:Remote-SSH 会在
…\globalStorage\ms-vscode-remote.remote-ssh\…\data.json
之类的文件里存储信息,一旦这里被写成 带 BOM,解析就会报你看到的错。清空后会重建为无 BOM 的 JSON。类似问题在社区里也常见,用更新扩展 / 清缓存即可恢复。(Stack Overflow)
43.143.57.14
主机重连。A) 确认 Cursor 用的是同一套 ssh.exe
remote.SSH.path
:
C:\Windows\System32\OpenSSH\ssh.exe
C:\Program Files\Git\usr\bin\ssh.exe
B) 检查是否有带 BOM 的本地 JSON
%APPDATA%\Cursor\argv.json
%APPDATA%\Cursor\User\settings.json
239 187 191
就是 BOM):powershell(Get-Content -Encoding Byte -TotalCount 3 "$env:APPDATA\Cursor\User\settings.json") -join ' '
C) 开 Trace 日志定位栈
remote.SSH.logLevel
设为 trace
,再连一次。getProductInfo
/ data.json
等位置,基本就是前面提到的 旧版 bug/缓存 JSON 带 BOM,更新扩展并清缓存即可。(Stack Overflow)D) 已知 Cursor 与 Remote-SSH 的兼容坑
VS Code 用的是官方 Remote-SSH;Cursor 有时会内置/推荐 fork 版本(如 Open Remote-SSH)或在打包时引入与 JSON 解析相关的改动。只要你换回 微软官方 Remote-SSH 并清理 Cursor 的缓存 JSON,这类 “Unexpected token ''(BOM)” 基本都能一次性解决。(Visual Studio Code, GitHub)
需要的话我也可以给你一段小脚本,自动遍历 %APPDATA%\Cursor
下的所有 .json
文件并移除 BOM;不过按照上面的“卸载换官方扩展 + 清缓存”流程,通常不需要走到这一步。