Skip to content

quota: opencode quota subcommand + per-provider quota functions #1718

Closed

Description

@dezren39

quota: opencode quota subcommand + per-provider quota functions

Program tracker: developing-today/code#6125 (Drew's order 2026-11-05 01:25 CST — the opencode quota subcommand becomes the ONLY producer of quota readings for the gatherer, the Supabase recorder, and every dashboard).

Today the fork has no quota subcommand and no provider quota function; quota is read by the OpenChamber module (packages/web/server/lib/quota in the openchamber repo) imported in-process by the laptop gatherer. Port those fetchers' wire behavior into the providers that own the credentials, behind one CLI subcommand emitting the module's existing result shape ({providerId, ok, configured, usage.windows{usedPercent, resetAt, valueLabel}, fetchedAt, error, planLabel, credentialId}).

Per-provider checklist (deployed pools):

  • antigravity-direct (fork antigravity provider)
  • mistral — incl. admin console budget read (billing.budget; API $15 + Vibe $150 dollar windows; cookie auth)
  • claude (claude-code credentials)
  • codex/openai (both ChatGPT accounts)
  • opendesign
  • cline-pass
  • command-code (plan read, never balance)
  • deepseek
  • opencode-go (per credential)
  • meta — portal-API read per fix(quota-plane): Meta percentage read — restore portal-API fetcher (subscription-quota) as the gatherer's source developing-today/code#6079 design, implemented provider-side
  • turso — built-in fetcher in the subcommand (org usage API)
  • groq — implement if a first-party quota surface exists; otherwise an explicit no-quota-surface class with evidence on code#6125
  • CLI: opencode quota [--json] [PROVIDER ...] [--all]; skips disabled_providers unless --all/named; non-zero exit iff a requested provider has no successful result

vibe-direct's own provider quota is owned by the vibe lane — requirement + acceptance on #1709 (the mistral console read above still surfaces the Vibe budget figures through the subcommand).

Acceptance: live opencode quota --json covering every pool, Mistral dollar figures matching console truth (API $0.47/$15, Vibe $0.04/$150 at filing time).

Activity

  1. dezren39 commented on Nov 5, 2026

    @dezren39
    Author

    Delivered: PR #1722 (provider quota functions + opencode quota subcommand, merged 13ab3dc) and PR #1728 (type cleanup, merged 255fa099). Live-verified against every configured pool; Mistral console budgets match console truth. Follow-up hardening (30s cap, deepseek listing omission, slow default config discovery) tracked on #1729. Program proof: developing-today/code#6125.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions