npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@howaboua/opencode-usage-plugin

v0.1.10

Published

opencode plugin for tracking AI provider usage, rate limits, and quotas

Readme

OpenCode Usage Plugin

Track AI provider rate limits and quotas in real-time.

Features

  • Live rate limits – See Codex/OpenAI hourly/weekly limits at a glance
  • Anthropic subscription limits – Track Claude OAuth windows (5h, 7d, Sonnet/Opus/cowork tiers)
  • Proxy quota stats – Monitor Mirrowel Proxy credentials and tier usage
  • Copilot usage – Track GitHub Copilot chat + completions quotas
  • Z.ai usage – Track GLM Coding Plan 5-hour token quota and monthly tool quota
  • OpenRouter usage – Track API credit usage and remaining balance
  • Inline status – Results appear directly in your chat, no context switching
  • Zero setup – Auto-detects providers from your existing config

Installation

Add to your opencode.json:

{
  "$schema": "https://opencode.ai/config.json",
  "plugin": ["@howaboua/opencode-usage-plugin"]
}

OpenCode installs dependencies automatically on next launch.

Configuration

The plugin creates a default config file on first run at:

Linux/macOS: ~/.config/opencode/usage-config.jsonc
Windows: %APPDATA%\opencode\usage-config.jsonc

{
  // REQUIRED: Proxy server endpoint (default: "http://localhost:8000")
  // Leave empty ONLY if you don't use the proxy
  "endpoint": "http://localhost:8000",

  // REQUIRED: API key for proxy auth (default: "VerysecretKey")
  // Leave empty if your proxy doesn't require authentication
  "apiKey": "VerysecretKey",

  // Optional: Request timeout in milliseconds (default: 10000)
  "timeout": 10000,

  // Optional: Z.ai API endpoint (default: "https://api.z.ai")
  "zaiEndpoint": "https://api.z.ai",

  // Optional: Show/hide providers in /usage output
  "providers": {
    "openai": true,
    "anthropic": true,
    "proxy": true,
    "copilot": true,
    "zai": true,
    "openrouter": true
  },

  // Model group display configuration (optional)
  "modelGroups": {
    // Show all model groups from proxy (default: true)
    // When true: auto-discovers all groups, uses displayNames as overrides
    // When false: only shows groups listed in displayNames (whitelist mode)
    "showAll": true,

    // Override display names for specific groups (optional)
    // Groups not listed here use their original name from the proxy
    "displayNames": {
      "g3-pro": "Gemini Pro",
      "g3-flash": "Gemini Flash",
      "claude": "Claude"
    }
  }
}

⚠️ Important: If using the Mirrowel Proxy, both endpoint and apiKey must be set. The proxy defaults to endpoint: http://localhost:8000 and apiKey: VerysecretKey. If you changed these during your proxy setup, you MUST update your config file to match.

Model Group Configuration

The modelGroups section controls how quota groups are displayed:

| showAll | displayNames | Behavior | |-----------|----------------|----------| | true (default) | empty/missing | Show all groups with original names | | true | provided | Show all groups, apply display name overrides | | false | provided | Only show groups in displayNames (whitelist mode) | | false | empty/missing | Shows no groups (all filtered out) | | missing section | — | Legacy behavior (hardcoded group whitelist) |

If missing, the plugin creates a default template on first run.

Copilot auth

Copilot is detected from either of these locations:

  • ~/.local/share/opencode/copilot-usage-token.json
  • ~/.local/share/opencode/auth.json with a github-copilot entry
  • ~/.config/opencode/copilot-quota-token.json (optional override)

Usage

Check all providers

/usage

Check specific provider

/usage codex
/usage anthropic
/usage claude
/usage proxy
/usage copilot
/usage zai
/usage glm
/usage openrouter
/usage or

Support the proxy

/usage support

Supported Providers

| Provider | Source | |----------|--------| | Codex / OpenAI | Auth tokens + /wham/usage endpoint | | Anthropic Claude | OAuth profile + /api/oauth/usage windows | | Mirrowel Proxy | Local /v1/quota-stats endpoint | | GitHub Copilot | GitHub internal usage APIs | | Z.ai GLM Coding Plan | chat.z.ai auth + Z.ai usage APIs | | OpenRouter | API key + openrouter.ai/api/v1/key |

Troubleshooting

Proxy shows "not configured" error

  • Ensure endpoint and apiKey are set in usage-config.jsonc
  • Default values: endpoint: http://localhost:8000, apiKey: VerysecretKey
  • If you changed these during proxy setup, update your config file to match
  • Verify your proxy is running at the specified endpoint

Missing provider data

  • Use providers: { ... } in config to disable unused providers
  • For Codex: Ensure you have valid auth tokens
  • For Copilot: Check token file locations in Configuration section above
  • For Z.ai: Ensure your OpenCode auth includes chat.z.ai credentials
  • For Anthropic: Ensure Claude OAuth credentials are available (anthropic in auth.json)
  • For OpenRouter: Ensure OpenRouter API key is available (openrouter or or in auth.json)

Config file not found

  • The plugin auto-creates usage-config.jsonc on first run
  • Check the path in Configuration section above
  • Manually create the file if needed

See AGENTS.md for internal architecture.