• 是人类

    前言:

    反重力中支持的几个模型对powershell的命令不熟悉[1],这导致某些在bash下很简单的命令,需要叠杀人书才能正常在powershell下运行,特别是当用的模型比较轴的时候[2],所以我一直有个想法,为什么不能让反重力的Agent直接用WSL2的终端呢?

    寻找到几种方案:

    ^-^ A: 直接在WSL2 里安装Antigravity[3],主用debian,兼容性不行,运行Antigravity后,会建议让你直接用windows版本。 界面在高分屏的缩放也是一个问题,听从官方建议,遂卸载。

    ^-^ B: 使用bash风格的终端,WSL2面世后,这种做法没必要了

    ^-^ C: VM/Hyper-v,直接不考虑,还需要切环境,重,繁琐

    ^-^ D: 修改Antigravity 默认终端为WSL2[4],失败

    ^-^ E: Remote WSL,就它了!

    先说下前置条件:

    - ◆ 必选 Antigravity 更新到最新版本

    - ◇ 可选 - 推荐 WSL2 网络Mirrored模式

    - ◆ 必选 WSL2 里安装的发行版和Windows互通

    - ◆ 必选 WSL2 里安装的发行版已安装wget工具

    - ◇ 可选 - 推荐 Windows 网络环境为 tun模式

    前置条件实施:

    Antigravity 相关:

    升级到最新版本,Antigravity下载地址

    WSL2 相关:

    1.把wsl 升级到最新版本(powershell)

    wsl --update

    升级完成后

    wsl --shutdown

    2.settings 里面设置网络为Mirrored模式[5],并确认

    文件管理器输入%USERPROFILE% 到根目录看看.wslconfig是否有```
    [wsl2]
    networkingMode=Mirrored
    ```图片

    3.wsl2 的debian的 /etc/wsl.conf[6] 配置文件中至少有如下配置```
    [boot]
    systemd=true

    [automount]
    enabled=true

    [interop]
    enabled=true
    appendWindowsPath=true
    ```其他相关:

    关于反重力浏览器打不开的问题 - 开发调优 / 开发调优, Lv1 - LINUX DO [7]

    4.需要在WSL2 里的发行版安装wget```
    sudo apt update && sudo apt install wget ca-certificates -y
    ``5.完成上述改动后在powershell 运行wsl --shutdown` 让改动生效

    windows网络环境:

    mihomo内核 tun模式 自定义规则 [8]

    如果是非tun模式下遇到问题,详见 antigravity国内远程之不可设置 - 搞七捻三 - LINUX DO

    好了,前置任务做完了,开始正式安装 wsl remote

    1.在反重力里面 按ctrl + shift + P,选择Connect to WSL using Distro…[9]

    图片

    2.选择需要Remote的发行版,我这是用的debian,点击保持网络通畅,等待自动安装完成

    图片

    3.当左下角状态栏出现WSL:发行版时,恭喜,你成功了^-^

    图片

    关于一些Remote WSL的环境下的一些使用说明:

    1.如果要使用windows文件夹下的项目,请使用WSL内的挂载路径打开目标文件夹,默认挂载在/mnt/windows盘符例如D盘那就是/mnt/d/,C盘就是/mnt/c/,不要使用Show Local

    图片

    2.在WSL2中也能用 agy . 从debian(或你的发行版)的当前目录打开反重力IDE [10]

    在你发行版中直接输入以下命令,记得最后source ~/.bashrc```
    cat << 'EOF' >> ~/.bashrc

    Antigravity 启动函数:修复路径解析与远程连接

    agy() {
    # 强制将相对路径(如 . 或 ./)转换为绝对路径,解决 Windows 识别障碍
    local TARGET_PATH=$(realpath "${1:-.}")
    antigravity --remote wsl+$WSL_DISTRO_NAME "$TARGET_PATH"
    }
    EOF
    ```图片

    3.在powershell中使用 agy . 也可以直接 Remote 指定发行版并把当前目录作为反重力IDE的工作目录[11][12]

    打开powershell 运行以下命令

    if (!(Test-Path $PROFILE)) { New-Item -Type File -Path $PROFILE -Force } notepad $PROFILE

    在弹出的记事本中输入以下内容,

    [string]$Distro = "debian" 这行中的debian需要改成你实际使用的的发行版,例如wsl+ubuntu```
    function agy {
    param(
    [Parameter(Position=0)]
    [string]$Path = ".",

    [Parameter(Position=1)]
    [string]$Distro = "debian" # 默认分发版
    )

    # 1. 将相对路径解析为绝对路径 (例如 . 转为 C:\Users\...)
    $WinPath = (Resolve-Path $Path).Path

    # 2. 路径转换逻辑:将 D:\project 转换为 /mnt/d/project
    # 提取盘符并转为小写
    $Drive = $WinPath.Substring(0,1).ToLower()
    # 提取剩余路径并把反斜杠 \ 替换为斜杠 /
    $Rest = $WinPath.Substring(2).Replace('\', '/')
    $WslPath = "/mnt/$Drive$Rest"

    # 3. 提示并启动
    Write-Host "Connecting to WSL ($Distro)..." -ForegroundColor Green
    Write-Host "Path: $WslPath" -ForegroundColor Cyan

    & antigravity --remote "wsl+$Distro" "$WslPath"
    }
    ``保存后在powershell窗口输入. $PROFILE`重新加载终端

    4.一些未归类参考资料

    https://itecsonline.com/post/antigravity-setup-guide

    https://www.reddit.com/r/google_antigravity/comments/1qmvzli/antigravity_is_trying_to_use_the_windows_shell_to/?tl=zh-hans

    learn.microsoft.com

    图片

    Windows Subsystem for Linux 文档

    适用于 Linux 的 Windows 子系统文档概述。

    5.一些过时参考资料(避坑,勿用)

    Antigravity CLI (agy) on WSL: broken launcher & missing scripts (manual repair report - Google Antigravity - Google AI Developers Forum

    https://medium.com/google-cloud/working-with-google-antigravity-in-wsl-944c96c949f3

    后记:

    暂时没有后记,写着写着想做的都做完了,本来想留下补坑来着。


    - 熟悉才奇怪,文档不足,社区也可以说没有 ↩︎

    - 说的就是你Gemini 3.1 Pro,在powershell下用bash命令不停重复十分钟都没有停下 ↩︎

    - Google Antigravity ↩︎

    - Antigravityの更新でDevContainerが使えない?WSL2移行時のターミナル設定の罠と解決法 #Windows11 - Qiita ↩︎

    - 这样就可以直接使用localhost:端口来启动连接WSL启动的服务了 ↩︎

    - WSL 中的高级设置配置 | Microsoft Learn ↩︎

    - Browser agent not working - #2 by leo_huang - Google Antigravity - Google AI Developers Forum ↩︎

    - 推荐 Sparkle,小问题还有,但基础功能稳定 ↩︎

    - 直接选Remote-WSL:connect to WSL的话,会自动连接默认的发行版 ↩︎

    - 不知道怎么的,写到这里突然很执着这个功能,所以加上了 ↩︎

    - 理由如上 ↩︎

    - 请教一下佬友们,我的 antigravity 的 agy . 在终端中为什么不起作用呀(已解决) ↩︎

    主楼
  • 大帅哥

    哇,感谢大佬

    #1
  • DragonJay

    听说这样很省token,有大佬能实测一下可以省多少嘛

    #2
  • AlexD

    好像前置条件大概是:win11+WSL2(win10很可能不支持mirrored模式)

    前置条件

    而且项目如果不很大,也不追求性能,倒可以直接在集成终端中打开WSL

    #3
  • 是人类

    图片

    net也可以的,写mirrored是因为这样可以省去一些可能的麻烦,只运行反重力的话,是一个"可选"配置。

    #4
  • 你看看你那个熊样子

    不是很可能,就是不支持

    #5
  • LinuxDo-linuxdo

    由于 Antigravity 彻底转向了“Agent-First(智能体优先)”架构,Agent 可以在后台自主规划任务、跨文件写代码甚至操作终端。为了防止 AI 暴走执行破坏性操作,系统设计了三档针对 Agent 的终端安全设置:

    - Off 模式(高度受限):Agent 永远不会自动执行任何终端命令,除非该命令精确匹配你手动配置的 Allow list(允许清单)。其他所有命令都会被拦截,强制要求你进行人工 Review 和点击确认。

    - Auto 模式(智能研判):这是默认状态。是否自动执行交由大模型自行判断。如果 Agent 认为该命令(如 npm run build)是常规且安全的,它会直接运行;如果涉及到敏感操作,它会暂停并弹窗向你申请权限。

    - Turbo 模式(火力全开):Agent 会始终自动执行所有终端命令,一路狂奔去完成任务。除非它试图执行的命令正好命中了系统内置或你自定义的 Deny list(拒绝清单)才会被拦截。

    ——————————————————————

    佬,请问把Antigravity的终端调到turbo模式会好点吗?

    #6
  • Kassiny

    tun模式下,我的wsl使用mirrored也访问不了外网,得tun+nat才行,很奇怪

    #7
  • 是人类

    在你用的物理网卡的网络适配器里把ipv6关了再试试看

    图片

    #8
  • Yuen_Sze_Hong

    这玩意跟vscode一样,直接wsl里就能开吧,至于agy的话…alias不行吗

    #9
  • X-linuxdo

    我的wsl 18.04 ,说我版本太老,不能连接

    #10
  • 是人类

    升级吧,或者再装一个ubuntu或debian

    安装命令 2debian或2ubuntu可以改成你喜欢的名字

    wsl --install debian --name 2debian

    或

    wsl --install ubuntu --name 2ubuntu

    #11
  • Kassiny

    我去真的好了,这是什么原因呀?

    另外把ipv6关掉会影响平时使用吗

    #12
  • 是人类

    因为佬用的代理内核没有接管v6的流量,现在主机上v6流量都是直连。wls2优先使用v6,所以就连不上外网。

    主要影响:

    1.访问不了只支持ipv6的网站(不是很多)

    2.然后目前国内运营商给的ipv6一般是公网地址,能从外访问家里的主机(运营商光猫一般会默认设置ipv6防火墙来阻止访问),关了后有这个需求就需要自己打洞了。

    #13
  • wojiaonioo

    佬,连上wsl了,但是模型卡在回复了,在windows下是可以正常使用的

    图片

    图片

    #14
  • 是人类

    在这个ubuntu里面执行curl ipinfo.io看看代理成功没,代理没配好也可能这样

    #15
  • RJ

    如果windows段已经登录使用, 然后再配置的wsl工作区打开, 然后就出现了模型卡住. 就像之前19.4的版本一样, Generate , Working , Loading 反复.

    需要重新登录吗?

    #16
  • 是人类

    网络问题,如果是tun的话,按这个试试看

    在你用的物理网卡的网络适配器里把ipv6关了再试试看

    图片

    如果不是tun的话,重新在wsl2配置下代理

    #17
  • China-Uncle

    win11+WSL2(win10很可能不支持mirrored模式)

    的确.要想好用还是要升级到win11 ,win10 在搜索多点文件或者打开两个ide是,另一个总是丢失wsl的连接

    我正在寻求win10 升级到win11的方法中…

    #18
  • hukarida

    反重力切换连接Ubuntu后,会话全没了怎么办,切回window又看到会话了。似乎是路径问题

    #19

发表回复

登录后回复