You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu下多VSCode实例登录Copilot后无法重定向至对应实例

解决VSCode指定user-data-dir实例登录Copilot后重定向问题

方法一:手动指定实例处理认证回调

  • 在指定user-data-dir的VSCode实例中触发Copilot登录,浏览器会打开GitHub认证页面。
  • 先不完成认证,复制浏览器地址栏中的完整认证URL。
  • 走完GitHub认证流程(输入账号密码、授权),当浏览器提示打开VSCode时,不要直接打开,复制页面跳转的vscode://协议链接。
  • 在终端运行命令,让指定实例处理认证回调:
    code --user-data-dir=~/.config/vscode_white "复制的vscode://链接"
    
    执行后,指定实例会接收认证结果,完成Copilot登录。

方法二:复制已认证配置文件到指定目录

如果已在默认VSCode实例完成登录,可直接复制认证文件到目标目录:

  1. 关闭所有VSCode实例。
  2. 执行复制命令:
    cp -r ~/.config/Code/User/globalStorage/github.authentication/ ~/.config/vscode_white/User/globalStorage/
    cp -r ~/.config/Code/User/globalStorage/github.copilot/ ~/.config/vscode_white/User/globalStorage/
    
  3. 启动指定user-data-dir的VSCode实例,Copilot会自动加载认证信息。

方法三:临时修改VSCode协议关联(Ubuntu环境)

  1. 关闭所有VSCode实例。
  2. 创建临时桌面文件并修改:
    cp /usr/share/applications/code.desktop ~/.local/share/applications/code-temp.desktop
    
    编辑~/.local/share/applications/code-temp.desktop,将Exec行改为:
    Exec=code --user-data-dir=~/.config/vscode_white %F
    
  3. 设置临时文件为vscode://协议的默认处理应用:
    xdg-mime default code-temp.desktop x-scheme-handler/vscode
    
  4. 启动指定实例完成登录,此时浏览器会默认用该实例处理回调。
  5. 登录完成后恢复默认设置:
    xdg-mime default code.desktop x-scheme-handler/vscode
    rm ~/.local/share/applications/code-temp.desktop
    

为什么替换windowId无效?

你用xdotool获取的是系统窗口ID,但VSCode认证URL中的windowId是实例内部生成的唯一标识,和系统窗口ID不匹配,所以无法被目标实例识别。

内容的提问来源于stack exchange,提问作者Alexander Phung

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 14:01:10