Skip to content

中文: 专为 Antigravity 设计的 SSH 代理插件。通过反向隧道将远程流量路由至本地代理,无需 Root 权限,有效解决远程服务器网络连接受限及防火墙拦截问题。| English: SSH proxy extension for Antigravity. Routes remote server traffic to your local proxy via reverse tunnel. No root privileges required, effectively bypassing remote network restrictions and firewalls.

License

Notifications You must be signed in to change notification settings

dinobot22/antigravity-ssh-proxy

Repository files navigation

Antigravity SSH Proxy (ATP)

简体中文 · English

Version GitHub stars GitHub issues License

这是一个专为 Antigravity 设计的扩展(Open VSX 地址),旨在简化 SSH 远程代理配置。ATP 通过安全路由绕过服务器防火墙,保障远程开发环境的连通性。

无需 root 权限 - 所有操作均在用户空间完成,安全便捷!

注意: 当前版本仅支持 Linux 远程服务器 (x86_64)。ARM 架构暂不支持。

本项目基于 wang-muhan/antigravity-interface 进行二次开发,感谢原作者的出色工作!


⚠️ 重要:需要双端安装

此插件必须同时安装在 本地远程服务器 上:

位置 职责
本地 管理 SSH 端口转发配置 (~/.ssh/config.antigravity)
远程 配置 Language Server 代理包装器 (mgraftcp)

功能特性

  • 自动代理配置:自动部署 mgraftcp 并配置代理。
  • SSH 反向隧道:通过 SSH 端口转发将流量路由到本地代理。
  • 进程重定向:自动拦截并重定向语言服务器进程。
  • DNS 污染防护:集成 FakeDNS 功能,有效解决 DNS 污染导致的连接问题,确保稳定连接。

快速开始

前置条件

在开始之前,请确保满足以下条件:

  • ✅ 本地代理软件(如 Clash、V2Ray)已启动并正常运行
  • ✅ 本地 Antigravity 的 AI 功能可以正常使用(这表明您的网络环境已正确配置)

配置步骤

Step 1 — 本地安装与配置

  1. 打开一个本地的 Antigravity项目并在扩展中搜索并安装 Antigravity SSH Proxy 插件(目前安装量比较小,可能需要按名称排序才能找到)
  2. 安装成功后点击左下角 ATP 面板,配置 localProxyPort 为您本地代理端口(如 7890
  3. 检查面板状态,确认本地配置无异常.

Step 2 — 远程安装

  1. 使用 Antigravity SSH 连接到远程 Linux 服务器. PS: 步骤一启动的本地Antigravity窗口,尽量不要关闭
  2. 在插件视图的 "SSH: [服务器名]" 分类下,再次安装本插件

Step 3 — 激活并验证

  1. 按照提示执行 Reload Window 重启窗口. PS: 由于远程的需要对language server进行wrapper, 插件有的时候会提示您多次重启远程窗口,按提示重启. 本地的Antigravity窗口一般不需要重启)
  2. 打开右下角 ATP 面板,运行 连接诊断 检查代理状态
  3. 显示正常后,远程 AI 功能即可使用 🎉

Step 4 — 简单重试

如果发现功能不能正常使用时:

  1. 关闭所有的(本地+远程)Antigravity窗口
  2. 先打开本地的Antigravity窗口,等待本地插件启动完成(左下角ATP变绿),
  3. 再点击左边的SSH链接远程服务器进行重试, 连接远程终端时一般有两个选项
  1. 在当前窗口链接远程服务(connect SSH host in current window)
  2. 打开新窗口链接远程服务(connect SSH host in new window) <-- 选择这个

进行重试,查看是否可行

当系统提示需要重启窗口时,请重启以确保功能正常使用


故障排查

如果配置+重试后仍无法正常使用,提交Bug日志时请附带一下远程链接服务器的日志信息:

  1. ATP页面中运行诊断, 复制诊断结果
  2. Antigravity的Output 面板内容中的
日志频道 查看路径
Antigravity Output 面板 → Antigravity
Antigravity SSH Proxy Output 面板 → Antigravity SSH Proxy
  1. 一些额外的系统信息
   uname -a                          # 内核版本
   uname -m                          # 架构 (x86_64/aarch64)
   ps -aux |grep language_server     # 查看实际启动的language_server
   cat /proc/sys/kernel/yama/ptrace_scope  # Ptrace 权限信息
   ls -la /.dockerenv                # 是否在 Docker 中

扩展设置

设置 说明
enableLocalForwarding 启用 SSH 反向隧道转发。
localProxyPort 本地计算机上的代理端口。
remoteProxyHost 远程服务器上的代理主机地址。
remoteProxyPort 远程服务器上的代理端口。
showStatusOnStartup 连接远程服务器时显示状态通知。

卸载说明

卸载前,请先执行 Antigravity SSH Proxy: Rollback Remote Environment 命令以恢复原始的 Language Server。

环境要求

  • 远程服务器的 SSH 访问权限。
  • Linux 远程服务器(当前仅支持 x86_64 架构)。
  • 本地运行的代理软件(如 Clash、V2Ray)。

致谢

特别感谢以下项目:

About

中文: 专为 Antigravity 设计的 SSH 代理插件。通过反向隧道将远程流量路由至本地代理,无需 Root 权限,有效解决远程服务器网络连接受限及防火墙拦截问题。| English: SSH proxy extension for Antigravity. Routes remote server traffic to your local proxy via reverse tunnel. No root privileges required, effectively bypassing remote network restrictions and firewalls.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published