Browse by type
一个专为 Antigravity(Google 基于 Windsurf 修改的 IDE)开发的插件,用于实时监控所有聊天会话的上下文窗口使用情况。
🇺🇸 English Documentation / 英文文档
[!WARNING] 平台支持
🍏 macOS: 完全支持。通过
ps和lsof命令实现进程发现。🐧 Linux: 完全支持(v1.6.0+)。通过
ps和lsof/ss实现进程发现。已在 Ubuntu 22.04 (x64 & ARM64) 上测试通过。🪟 Windows: 完全支持(v1.8.0+)。通过
wmic缓存和 PowerShell 回退机制优化了发现逻辑。🐧🪟 WSL: 完全支持(v1.12.0+)。通过
/proc/version检测 WSL 环境,利用 WSL 互操作调用 Windows 端工具进行 LS 发现。v1.12.1 新增extensionKind: ["ui", "workspace"],通过 Remote-WSL 或 Remote SSH 连接时扩展自动运行在本地 Windows 宿主机上。v1.13.0 新增 Remote-WSL LS 发现 — 连接 WSL 工作区时,扩展通过wsl -d <distro>发现 WSL 内部运行的language_server_linux_x64进程,通过 WSL2 端口转发连接并显示正确的上下文数据。
👉 阅读技术实现说明
⚡ 实时 Token 监控
状态栏显示当前 Token 消耗,格式如 125k/200k, 62.5%。Token 数据优先取自模型 checkpoint 的精确值(inputTokens + outputTokens),两次 checkpoint 之间通过基于实际文本内容的字符估算实时计算增量(v1.4.0 起替代了固定常量)。仅在步骤数据结构缺失时 fallback 到固定常量。
🪪 状态栏计划层级显示稳定
当 Antigravity 后续轮询不再返回最新 userTierName 时,状态栏悬浮提示会主动清空旧的二级计划/层级后缀,避免过期标签在后续轮询中残留。
🌐 语言切换
用户可选择仅中文、仅英文或双语显示模式。点击状态栏 → 设置 → 切换显示语言即可访问。偏好通过 globalState 跨会话持久化。
🔒 多窗口隔离 每个 Antigravity 窗口优先显示本工作区的对话数据,通过 workspace URI 过滤。遇到 Antigravity 切换项目后仍上报旧 workspace 的情况,监控会跟随共享语言服务器里当前 RUNNING 的对话,避免状态栏直接空掉。未打开文件夹的窗口显示所有对话。
🗜️ 上下文压缩检测
当模型自动压缩对话历史时,插件通过双层检测机制识别:主层比较连续 checkpoint 的 inputTokens(下降超过 5000 tokens 即判定,天然免疫 Undo 误报),降级层比较跨轮询 contextUsed 变化(带 Undo 排除守卫)。状态栏显示 ~100% 🗜 压缩标识。
⏪ Undo/Rewind 支持
撤销对话步骤后,插件检测到 stepCount 减少,会重新计算 Token 用量,显示回滚后的准确值。
| 回退前 | 回退后 |
|---|---|
![]() |
![]() |
🔄 动态模型切换
对话中切换模型时,上下文窗口上限自动更新为当前模型的限制值。v1.4.0 起通过 GetUserStatus API 动态获取模型显示名称。
🎨 图片生成追踪
使用 Gemini Pro 对话中调用 Nano Banana Pro 生成图片时,相关 Token 消耗会被计入,tooltip 中以 📷 标记。检测逻辑基于 step type 和 generator model 名称匹配。

🛌 自动退避轮询
语言服务器不可用时,轮询间隔按 baseInterval × 2^n 递增,采用双上限策略:发现失败上限 15 秒(5s → 10s → 15s,快速检测 LS),RPC 失败上限 60 秒。重连后立即恢复正常间隔。
📊 WebView 监控面板 (v1.10.1 新增)
点击状态栏打开侧边面板全景仪表盘。展示账户计划与等级、Prompt / Flow Credits(额度)余额、每模型配额使用量(带颜色进度条)、功能开关、团队配置(MCP Servers、Auto-Run 等)、Google AI 额度。所有数据来自已有的 GetUserStatus API——零额外网络请求。
⚙️ 交互式设置仪表盘 (v1.11.0 新增,持续增强至 v1.16.9)
WebView 面板重构为「监控」和「设置」双标签页。设置页提供直观的图形化界面,一站式配置扩展行为——无需手动编辑 settings.json。
🟢、🟡、🔴)直接显示在状态栏上。⚡14,701),使用 || 包裹格式(如 || ⚠ 121.2k/160k || 🟡40% || ⏳4h6m || ⚡14,701 ||)。积分为零时自动隐藏。可在设置页通过 statusBar.showAiCredits 开关控制。🧠 模型活动监控 (v1.11.2 新增,持续增强至 v1.16.4)
新增活动标签页,实时追踪 AI 推理调用、工具使用、Token 消耗和每模型耗时。通过主状态栏或 Show Model Activity 命令访问。
view_file、gh/search_issues)和步骤序号标签。globalState 跨 VS Code 重启保存,写入频率限制为每 30 秒一次。triggeredBy),生成每周期使用报告。📊 标记明确区分。| 模型 | Internal ID / 内部 ID | 上下文上限 |
|---|---|---|
| Gemini 3.1 Pro (High) | MODEL_PLACEHOLDER_M16 | 128,000 |
| Gemini 3.1 Pro (Low) | MODEL_PLACEHOLDER_M36 | 128,000 |
| Gemini 3.5 Flash (High) | MODEL_PLACEHOLDER_M132 | 128,000 |
| Gemini 3.5 Flash (Medium) | MODEL_PLACEHOLDER_M20 | 128,000 |
| Gemini 3 Flash | MODEL_PLACEHOLDER_M133 | 128,000 |
| Gemini 3 Flash(历史 ID) | MODEL_PLACEHOLDER_M84 / M47 / M18 | 128,000-160,000 |
| Claude Sonnet 4.6 (Thinking) | MODEL_PLACEHOLDER_M35 | 160,000 |
| Claude Opus 4.6 (Thinking) | MODEL_PLACEHOLDER_M26 | 160,000 |
| GPT-OSS 120B (Medium) | MODEL_OPENAI_GPT_OSS_120B_MEDIUM | 80,000 |
这些数值是 Antigravity 平台截断阈值,不是模型原生上下文窗口。模型 ID 来自 Antigravity 本地语言服务器的 GetUserStatus API。如果新增了模型,可以在 IDE 设置中手动覆盖上下文上限。
.vsix 文件安装到 Antigravity IDE。
监控 (Monitor) — 额度概览、GM 快照、成本快照、活跃会话详情(含输出分解和 LLM 调用明细)。


GM 数据 (GM Data) — 每模型 Token 用量明细、调用次数、缓存命中率、重试统计、工具排行和可折叠工具目录。


会话 (Sessions) — 浏览所有对话会话,查看上下文用量、步骤数和模型信息。

成本 (Cost) — 月度成本分拆,按模型定价、成本概览可视化,以及覆盖已调用模型和内置默认价格模型的自定义价格编辑器。

模型 (Models) — 所有可用模型的额度状态、上下文上限和重置倒计时。

日历 (Calendar) — 按日期组织的历史使用数据,包含每周期成本和 Token 分解。

个人 (Profile) — 账户信息、计划详情和额度余额。

设置 (Settings) — 配置扩展行为:压缩阈值、状态栏开关、轮询间隔等。


[!IMPORTANT] 同一工作区多窗口 如果在同一个文件夹上打开多个 Antigravity 窗口,它们共享相同的 workspace URI,会话数据可能会混合。
解决方法: 不同窗口打开不同的文件夹。
[!NOTE] 上下文压缩提示 压缩完成通知(🗜 图标)持续约 15 秒(3 个轮询周期)后恢复正常显示。
[!IMPORTANT] Antigravity 内部总结机制 Antigravity IDE 对检查点总结有一个硬编码的 7500 token "总结阈值" (Summarization Threshold)。这意味着当对话非常长且跨过该阈值后,Token 计数可能会出现轻微偏差。更多细节请参考 Reddit 社区讨论。
[!NOTE] 子智能体动态切换 使用 Claude 模型时,Antigravity 可能会调用 Gemini 2.5 Flash Lite 作为子智能体处理轻量任务。自 v1.10.0 起,Claude 4.6 模型也拥有 1M 上下文限制(2026-03-13 GA),因此子智能体切换不再导致可见的上下文上限变化。
[!IMPORTANT] "LS not found" 与请勿以管理员身份运行 IDE(Windows) 若状态栏卡在
LS not found,请打开 Output → "Antigravity Context Monitor",查看PATH check:那一行——扩展现在会记录究竟是哪一步发现失败。自 v1.16.13 起,扩展以%SystemRoot%绝对路径调用wmic/powershell.exe/netstat,因此 Extension Host 的PATH被裁剪(例如 Win11 24H2+ 移除 WMIC 后缺少System32\wbem)不再导致发现失败。 请勿以管理员身份运行 Antigravity —— 这对检测毫无帮助(LS 发现无需提权),还可能导致 IDE 启动崩溃并报The window terminated unexpectedly (reason: 'launch-failed', code: '18');该崩溃属于 Electron/Chromium 沙箱问题,与本扩展无关。
| 设置项 | 默认 | 说明 |
|---|---|---|
pollingInterval |
5 | 轮询频率(秒) |
contextLimits |
(见默认值) | 手动覆盖模型的上下文上限 |
compressionWarningThreshold |
150000 | 压缩警告阈值(token 数)。状态栏颜色基于此值判断。 |
statusBar.showContext |
true | 状态栏显示上下文用量(如 45k/1M, 4.5%) |
statusBar.showQuota |
true | 状态栏显示当前模型额度指示灯(如 🟢85%) |
statusBar.showResetCountdown |
true | 状态栏显示重置倒计时(如 ⏳4h32m) |
| quotaNotificationThreshold | 20 | 模型剩余额度低于此百分比时弹出警告(设为 0 可禁用) |
| activity.maxRecentSteps | 100 | 活动时间线最多保留的操作条数 |
| activity.maxArchives | 20 | 活动归档最多保留份数 |
| 命令 | 说明 |
|---|---|
Show Context Window Details |
打开 QuickPick 面板显示所有被追踪的会话 |
Refresh Context Window Monitor |
重新发现语言服务器并重启轮询 |
Switch Display Language |
选择仅中文、仅英文或双语显示模式 |
Show Model Activity |
打开监控面板的 GM 数据标签页 |
作者: AGI-is-going-to-arrive 版本 / Version: 1.16.10
$ claude mcp add Antigravity-Context-Window-Monitor \
-- python -m otcore.mcp_server <graph>