antigravity-balance

⚖️ AI 配额实时监控助手

本地查询 Antigravity/Windsurf AI 配额余额的 Node.js 工具,通过检测本地语言服务器进程并调用其私有 API 获取实时用量数据,帮助开发者监控 token 消耗避免服务中断。

收藏
4.2k
安装
2k
版本
127.0.0
CLS 安全性认证2026-07-07
点击查看完整报告 >

使用说明

核心用法

Antigravity Balance 是一款专为 Antigravity(及 Windsurf)用户设计的本地配额查询工具。其核心工作流程分为五步:首先自动检测本地运行的 language_server 进程(支持 macOS ARM/Intel、Linux、Windows 全平台),然后从进程参数中提取 --extension_server_port--csrf_token,接着扫描邻近端口定位 HTTPS API 端点,再向 https://127.0.0.1:{port}/exa.language_server_pb.LanguageServerService/GetUserStatus 发送认证请求,最终以可视化进度条或结构化 JSON 格式展示用户层级、模型名称、剩余配额百分比及重置倒计时。

使用方式极为简洁,执行 node scripts/agquota.js 即可自动检测并输出结果;添加 --json 参数可获得机器可解析的结构化数据,便于集成到自动化监控脚本;-v 参数则开启详细调试模式,帮助排查连接问题。

显著优点

零外部依赖是最大亮点——仅使用 Node.js 内置的 httpschild_processutil 模块,无需 npm install 即可运行,彻底规避了供应链攻击风险。全平台兼容设计周到,通过 process.platform 自动识别操作系统并调用对应的进程查询命令(macOS/Linux 用 ps aux,Windows 用 PowerShell)。输出体验优秀,彩色进度条直观展示配额状态(绿>50%、黄>20%、红≤20%),倒计时格式人性化。本地闭环通信确保敏感 token 和用量数据绝不外泄,全部流量限制在 127.0.0.1 回环接口。

潜在缺点与局限性

环境强依赖是首要限制:必须预先启动 Antigravity/Windsurf 且语言服务器进程需包含 --app_data_dir antigravity 参数标识,否则脚本直接报错退出。HTTPS 证书验证被禁用rejectUnauthorized: false)虽为对接本地自签名证书的必要妥协,但理论上存在中间人攻击窗口,尽管实际风险因本地回环而极低。系统命令执行依赖 child_process.exec 调用 pspowershell,虽命令硬编码无注入风险,但在严格受限的沙箱环境(如某些 CI/CD 容器)可能被安全策略拦截。无持久化功能,每次查询均为实时调用,无法历史趋势分析。平台进程名硬编码,若 Antigravity 更新更改二进制命名规则,脚本将失效。

适合的目标群体

  • Antigravity/Windsurf 重度用户:需要频繁监控多模型配额消耗,避免关键时刻触顶
  • 自动化工作流开发者:希望将配额检查集成到 CI/CD 或定时任务,利用 --json 输出做阈值告警
  • 本地开发环境管理员:统一管理团队成员的 AI 工具用量,优化资源分配
  • 效率工具爱好者:偏好命令行交互,追求快速无干扰的信息获取

使用风险

性能层面:进程扫描和端口探测在系统负载高时可能超时(Windows 15s/macOS&Linux 5s),频繁调用会轻微增加 CPU 占用。依赖项风险:虽无外部 npm 包,但强绑定 Node.js 运行时版本,极旧版本可能缺失 util.parseArgs 等新 API。功能稳定性:依赖 Antigravity 内部 API 契约,官方更新可能破坏接口兼容性,需关注版本匹配。安全边界rejectUnauthorized: falsechild_process.exec 的组合在理论上扩大了攻击面,建议仅在可信本地环境使用,避免部署到共享服务器或容器平台。

安全解读

核心用法

Antigravity Balance 是一款本地配额查询工具,专为 Antigravity(Windsurf)用户设计,用于实时监控 AI 模型的 token 使用量和剩余额度。

使用场景

  • 快速检查 Claude/GPT 等模型的剩余配额百分比
  • 查看配额重置倒计时(如"4h 32m"后刷新)
  • 批量脚本集成(支持 --json 结构化输出)

技术原理
1. 通过 ps 命令检测本地运行的 language_server_* 进程

2. 提取进程参数中的 --extension_server_port--csrf_token

3. 扫描邻近端口定位 HTTPS API 端点

4. 调用本地 127.0.0.1 的 gRPC-over-HTTP 接口获取配额状态

显著优点

| 特性 | 说明 |
|------|------|
| **零第三方依赖** | 仅使用 Node.js 内置模块(https, child_process),无 npm 供应链风险 |
| **纯本地操作** | 不连接任何外部服务器,数据零外泄 |
| **多平台支持** | 自动识别 macOS ARM/Intel、Linux、Windows 的进程名差异 |
| **可视化输出** | 彩色进度条直观显示配额状态(绿>50%、黄>20%、红≤20%) |

潜在局限

  • 环境依赖强:必须保持 Antigravity/Windsurf 处于运行状态
  • 进程检测脆弱:依赖命令行参数正则匹配(/app_data_dir\s+antigravity/),若 IDE 更新参数格式可能失效
  • TLS 验证关闭:使用 rejectUnauthorized: false 连接本地自签名证书服务,存在理论上的本地中间人风险
  • child_process.exec 使用:虽命令硬编码且已过滤,但 exec 函数本身存在 shell 注入风险

适合人群

  • Antigravity/Windsurf 重度用户:需频繁监控多模型配额消耗
  • 自动化工作流开发者:通过 --json 输出集成到 CI/CD 或通知系统
  • 隐私敏感用户:拒绝使用云端 API 查询工具,坚持本地化处理

常规风险

| 风险项 | 等级 | 说明 |
|--------|------|------|
| 供应链攻击 | 极低 | 无第三方依赖 |
| 数据外泄 | 极低 | 仅访问 127.0.0.1 |
| 本地权限滥用 | 低 | 需读取进程列表,无写操作 |
| 来源可信度 | 中 | T3 级别个人开发者,建议企业额外审查 |

企业使用建议

建议在隔离环境预演,监控更新动态,或封装至只读沙箱运行。

antigravity-balance 内容

scripts文件夹
手动下载zip · 5.2 kB
agquota.jstext/javascript
请选择文件