pi-antigravity-status

Additive Pi status line for the active Antigravity account quota.

Packages

Package details

extension

Install pi-antigravity-status from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:pi-antigravity-status
Package
pi-antigravity-status
Version
0.2.0
Published
Oct 1, 2026
Downloads
359/mo · 14/wk
Author
raythunder
License
unknown
Types
extension
Size
28 KB
Dependencies
0 dependencies · 2 peers
Pi manifest JSON
{
  "extensions": [
    "./src/index.ts"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

pi-antigravity-status adds a compact quota indicator for the active pi-antigravity account to the Pi status line. It displays the active account, five-hour allowance, weekly allowance, reset countdowns, and remaining-quota progress bars without replacing the existing footer.

AG ra***er@gmail.com │ 5h 1h40m ███░░░░░ 31.8% │ Week 17h33m █████░░░ 67.8%

This project is an unofficial companion extension for pi-antigravity. It is not affiliated with or endorsed by Google.

Features

  • Displays quota only while the active model uses the antigravity provider.
  • Shows the five-hour and weekly shared quota pools for the active model family.
  • Uses an eight-cell progress bar while retaining the exact percentage and reset countdown.
  • Falls back to per-model quota when aggregate quota groups are unavailable.
  • Masks the email local part as two leading and two trailing characters when its length permits; shorter local parts retain one character at each end.
  • Never renders OAuth tokens, project IDs, or other credential fields.
  • Coexists with statusline-pi and other extensions through an independent Extension Status key.

Requirements

  • Pi Coding Agent >= 0.80.0
  • pi-antigravity >= 0.8.1
  • A Google account authorized for the relevant Antigravity / Cloud Code Assist services

This extension is functionally dependent on pi-antigravity:

  • pi-antigravity registers the antigravity provider and manages Google OAuth, credentials, and linked accounts.
  • This extension retrieves the provider credential through Pi's modelRegistry, reads the active account metadata from antigravity-accounts.json, and requests the quota endpoints.
  • The extension does not import or duplicate the provider's runtime implementation.
  • Pi does not automatically install another Pi package declared through peerDependencies, so pi-antigravity must be installed separately.

Without an installed and authenticated pi-antigravity provider, no quota status is displayed.

Install

Install the provider and the status extension:

pi install npm:pi-antigravity
pi install npm:pi-antigravity-status

Restart Pi or run /reload, then authenticate and select an Antigravity model:

/login antigravity
/model antigravity/gemini-3.8-flash

For environments where pi-antigravity is already installed and authenticated, install only the status extension and run /reload.

Git installation is also supported:

pi install https://github.com/raythunder/pi-antigravity-status

Usage

The status entry refreshes automatically:

  • Immediately after an Antigravity session starts
  • After the selected model or active account changes
  • From cached quota data once per minute to update reset countdowns
  • From the quota API at most once every five minutes

Force an immediate refresh with:

/antigravity-status refresh

Status-Line Compatibility

The extension calls only:

ctx.ui.setStatus("antigravity-usage", text);

It does not call ctx.ui.setFooter(). statusline-pi reads Extension Status entries and appends them to its existing output, allowing both extensions to remain active without a fork or footer replacement.

Development

bun test

The test suite covers account masking, credential parsing, quota parsing, fallback behavior, progress-bar formatting, and status-line output.

Friendly Links

Acknowledgements

  • pi-antigravity for the provider, quota API behavior, and linked-account storage format.
  • Pi Extension API for ctx.ui.setStatus() and Extension Status integration.