oQuota shows quota and progress counters on the right side of the Visual Studio Code status bar.
It is built for recurring visibility problems such as:
- monthly billing cycles
- year progress
- workday progress such as 09:00 to 17:00
- custom date ranges
- deadline countdowns
- GitHub Copilot premium interaction pacing
Each counter is its own status bar item. Labels are optional. For Copilot Consumption, Pool, and Average, oQuota falls back to those captions when the label is empty.
- Flexible number of counters instead of a fixed three-slot layout
- Default counter that shows the current day of the year
- Monthly, yearly, workday, date-range, deadline, and Copilot modes
- Fixed refresh cadence: Copilot every 60 seconds, workday counters every 60 seconds, everything else every hour
- Add, configure, and remove counters from the Command Palette
- Copilot progress modes with colored state circles, compact bars, and pacing projections
- Local Copilot snapshot history used to anchor tracking from the first local observation
📆 Day of Year 94/365 (26%)⏳ Ship 12d (71%)Copilot 1405 (93.6%)Copilot 95 (6%)🔵 Consumption 10.0% 6.0%🟢 Pool █░░░░ 25/250 (10.0%)⚫ Average ██░░░ 25/50 (50.0%) +2d
In Copilot modes, the colored state circle replaces the configured emoji in the status bar.
oQuota: Open SettingsoQuota: Configure CounteroQuota: Add CounteroQuota: Remove Counter
Use Ctrl+P, type >oQuota, and run the commands to add, edit, or delete counters quickly from the Command Palette.
The guided commands are the easiest way to work with counters because the stock VS Code Settings UI cannot truly hide mode-specific fields.
oquota.counters is an array of counter objects. Each object supports:
enabledlabelemojimode:day-of-year,month,year,day,range,deadline, orcopilotmonthlyCycleDaydailyStartTimedailyEndTimerangeStartDaterangeEndDatedeadlineDatecopilotDisplayMode
Example settings.json:
{
"oquota.counters": [
{
"enabled": true,
"label": "Day of Year",
"emoji": "📆",
"mode": "day-of-year"
},
{
"enabled": true,
"label": "Billing",
"emoji": "💼",
"mode": "month",
"monthlyCycleDay": 3
},
{
"enabled": true,
"label": "Launch",
"emoji": "⏳",
"mode": "deadline",
"deadlineDate": "2026-06-30"
},
{
"enabled": true,
"label": "Copilot",
"emoji": "🤖",
"mode": "copilot",
"copilotDisplayMode": "consumption"
}
]
}Shows the current day number within the current year and the percentage of the year that has elapsed.
Uses a billing-cycle day from 1 to 31. If a month is shorter than the chosen day, oQuota uses that month's last valid day.
Measures progress from the start of the current year to the start of the next year.
Measures the current day's progress between dailyStartTime and dailyEndTime.
Measures progress between rangeStartDate and rangeEndDate. The end date is inclusive.
Shows a countdown in days to deadlineDate and the proportion of the countdown window that has elapsed.
Copilot mode reads quota data from:
https://api.github.com/copilot_internal/user
It uses the GitHub account already signed into VS Code.
Available Copilot display modes:
raw-remaining: shows remaining premium interactions as the raw value and percentage, for example1405 (93.6%)raw-consumption: shows consumed premium interactions as the raw value and percentage, for example95 (6.0%)consumption: showstheoretical cycle progress by billing-cycle day countbesideactual consumed percent, for example10.0% 6.0%remaining-pool: showstoday consumption/pool size (percent)with the pool bar, where pool size is derived from the billing-cycle day target, for example25/250 (10.0%)average-calibration: showstoday consumption/average consumption (percent)with the average bar and projected days, for example25/50 (50.0%) +2d
If there is not enough prior local history yet, oQuota anchors consumption tracking from the first locally recorded snapshot so the consumption view starts at 0% and then grows from there.
The popup documents the state circles in value order:
⚪Very low🟢Low🔵Normal⚫On target🟡High🟠Very high🔴Critical
Contributions are welcome when they stay focused on quota visibility, pacing, and practical status bar feedback.
npm install
npm run compileLaunch the Run oQuota Extension configuration in VS Code to test the extension in an Extension Development Host.
vsce packageIssues and feature requests:
https://github.com/seddik/oquota/issues
- GitHub Copilot quota approach inspired by
kasuken/vscode-copilot-insights: https://github.com/kasuken/vscode-copilot-insights - Icon attribution: Okaicon on Flaticon https://www.flaticon.com/authors/okaikon
