Files

23 lines
3.8 KiB
YAML

name: quota
repo: https://github.com/rarf/hermes-quota-plugin
sha: 89a2ca39a28dddcdcf01cf587519ea3861274b7a
version: "3.0.0"
description: "Per-provider quota / rate-limit status via /quota command and desktop widget. Reads precomputed quota_cache.json so the widget never does network I/O. Disclosure — refreshes your Gemini OAuth token using the Gemini CLI's public client identity, in memory only; queries Copilot's internal usage endpoint with VS Code client headers and Anthropic's OAuth usage endpoint using the hermes-quota-plugin User-Agent, caching Anthropic usage responses and rate-limit cooldowns in the Hermes root directory keyed by a token hash so profiles sharing one Claude login share them; optional additional Claude accounts read access tokens only from explicitly configured Claude Code credentials files and send them only to Anthropic's fixed OAuth usage endpoint (read-only, no refresh-token exchange or credential write-back; tokens and paths excluded from the quota cache). Linux extra accounts verified; Windows experimental, extra macOS Keychain accounts unsupported. The openai-codex check reads every saved Codex account from Hermes' own auth.json credential pool (read-only, never refreshed; expired accounts show reauth-required) and queries the Codex usage endpoint with the codex-cli User-Agent; when a Codex account is configured, each refresh also fetches public Codex reset announcements from the third-party site codex-resets.com (anonymous request, no credentials sent); the opencode-go check reads the OpenCode CLI's local auth.json, Hermes' auth.json pool and OPENCODE_GO_API_KEY_N variables (read-only). The cursor check reads the Cursor CLI token from the macOS Keychain or Cursor's auth.json (read-only, never refreshed or rewritten; on expiry it asks you to run cursor-agent login) and queries api2.cursor.sh; the opt-in (default off) antigravity check reads Antigravity's OAuth token from Windows Credential Manager, the macOS Keychain or ~/.gemini/antigravity-cli (read-only), refreshes it in memory with Antigravity's public client identity and sends Antigravity's User-Agent to Google's cloudcode endpoint; the opt-in (default off) grok.com check first sends Hermes' own xai-oauth access token (read via Hermes or from auth.json, read-only) to grok.com's billing endpoint with a browser User-Agent, and on an authentication failure falls back to local browser cookies, using secret-tool on Linux, the macOS Keychain or Windows DPAPI for the browser's cookie key and decrypting only grok.com cookies from a temporary copy of the cookie DB; the commandcode check reads ~/.commandcode/auth.json (read-only) or every saved commandcode credential in Hermes' credential store and uses the Command Code CLI's User-Agent; zai, kimi, minimax, deepseek, openrouter, ollama (which may read OLLAMA_API_KEY from ~/.hermes/.env and calls ollama.com/api/usage, /api/balance and /api/me) and experientiallabs send keys from Hermes' credential store or env only to their own vendor's usage or balance endpoints. The opt-in (default off) Agent Monitor reads this profile's Hermes session database and the local process list to show running sessions, spend estimates and model health, locally only."
maintainer: rarf
tier: community
category: desktop
docs_url: https://github.com/rarf/hermes-quota-plugin#readme
readme: true
image: https://raw.githubusercontent.com/rarf/hermes-quota-plugin/89a2ca39a28dddcdcf01cf587519ea3861274b7a/docs/images/quota-banner.png
screenshots:
- https://raw.githubusercontent.com/rarf/hermes-quota-plugin/89a2ca39a28dddcdcf01cf587519ea3861274b7a/docs/images/quota-pane.png
- https://raw.githubusercontent.com/rarf/hermes-quota-plugin/89a2ca39a28dddcdcf01cf587519ea3861274b7a/docs/images/quota-app.png
capabilities:
provides_tools: []
provides_hooks:
- footer
- usage_extra
provides_middleware: []
requires_env: []
requires_hermes: ">=0.21.7"