Antigravity IDE 在浏览器上 verify 成功但本地 IDE 没反应 “开启Tun依然无济于事” —— 解决方案

Antigravity BigInt 序列化错误修复指南

问题描述

现象: Antigravity 应用点击 "Sign in with Google" 后,浏览器端 OAuth 验证(Verify)成功,但本地 IDE / AI Studio / Console 毫无反应,登录流程卡住。

根本原因: Antigravity 在检查更新或保存认证状态时,调用了 JSON.stringify() 序列化包含 BigInt 类型的数据。JavaScript 原生的 JSON.stringify() 不支持 BigInt 序列化,导致抛出异常:

复制代码
TypeError: Do not know how to serialize a BigInt at JSON.stringify

这个异常是静默崩溃------应用不会弹出任何错误提示,但会导致本地 OAuth 回调服务器(localhost)被终止。因此浏览器端验证虽然成功,回调信息却无法传回本地应用。

解决方案

在 Antigravity 的 main.js 文件开头添加 BigInt 序列化支持代码,让 JSON.stringify() 能正确处理 BigInt 类型。

步骤

1. 备份 main.js

打开终端(PowerShell / CMD),执行:

PowerShell:

powershell 复制代码
copy "$env:LOCALAPPDATA\Programs\Antigravity\resources\app\out\main.js" "$env:LOCALAPPDATA\Programs\Antigravity\resources\app\out\main.js.bak"

CMD:

cmd 复制代码
copy "%localappdata%\Programs\Antigravity\resources\app\out\main.js" "%localappdata%\Programs\Antigravity\resources\app\out\main.js.bak"
2. 编辑 main.js

用记事本打开文件:

cmd 复制代码
notepad "%localappdata%\Programs\Antigravity\resources\app\out\main.js"
3. 添加补丁代码

将光标定位到文件最开头(第 1 行第 1 列),粘贴以下代码:

javascript 复制代码
BigInt.prototype.toJSON = function() { return this.toString(); }; 

确保补丁代码与原有代码之间有空格或分号分隔。

4. 保存并重启
  • 保存文件(Ctrl+S)
  • 关闭 Antigravity 应用
  • 重新启动 Antigravity

Linux (Arch) 用户

bash 复制代码
# 备份
sudo cp /usr/lib/antigravity/out/main.js /usr/lib/antigravity/out/main.js.bak

# 编辑
sudo nano /usr/lib/antigravity/out/main.js

# 在文件最开头添加同样的补丁代码

原理说明

BigInt 是 JavaScript 中用于表示任意精度整数的类型。JSON.stringify() 默认不知道如何将 BigInt 转换为 JSON 值。通过给 BigInt.prototype 添加 toJSON 方法,告诉 JSON.stringify() 在遇到 BigInt 时调用 toString() 将其转为字符串,从而避免序列化异常。

参考来源

相关推荐
天平1 小时前
油猴脚本创建webworker踩坑记录
前端·javascript·typescript
原则猫3 小时前
前端基础大厦
前端
陈随易4 小时前
编程语言级别的Skill市场,AI Agent 的未来形态
前端·后端·程序员
SoaringHeart5 小时前
Flutter进阶:基于 EasyRefresh 的下拉刷新封装 n_easy_refresh_mixin.dart
前端·flutter
IT_陈寒6 小时前
Vite的热更新突然不香了,排查三小时差点砸键盘
前端·人工智能·后端
子兮曰7 小时前
Agency-Agents 深度解析:400+ AI 专家的"梦之队"如何重塑开发工作流
前端·后端·vibecoding
竹林8188 小时前
用 The Graph 查询链上数据实战:从手搓 RPC 到 Subgraph,我的 NFT 项目数据加载快了 10 倍
前端·javascript
妙码生花8 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(十九):点选验证码代码逐行目检
前端·后端·go
Awu12279 小时前
⚡从零开发 Agent CLI(五)实现一个可治理、可扩展的工具系统
前端·人工智能·claude
咪库咪库咪9 小时前
Vue3-生命周期
前端