feat: add Cursor usage quota tracking

Adds Cursor as a supported quota provider
Reads Cursor auth from env, token files, or local app data
Improves Cursor usage labels in the UI
This commit is contained in:
Bohdan Triapitsyn
2026-06-11 00:16:48 +03:00
parent 7b33805ea0
commit b46153801b
16 changed files with 381 additions and 0 deletions
+5
View File
@@ -2571,6 +2571,11 @@ export const dict = {
'quota.window.monthly': 'Monthly Limit',
'quota.window.credits': 'Credits',
'quota.window.creditsBalance': 'Credits Balance',
'quota.window.billingCycle': 'Billing Cycle',
'quota.window.auto': 'Auto',
'quota.window.api': 'API',
'quota.window.planLimit': 'Plan Limit',
'quota.window.onDemand': 'On-demand',
'quota.window.session': 'Session',
'quota.window.premium': 'Premium Interactions',
'quota.window.chat': 'Chat Requests',
+5
View File
@@ -2572,6 +2572,11 @@ export const dict: Record<I18nKey, string> = {
"quota.window.monthly": "Monthly Limit",
"quota.window.credits": "Credits",
"quota.window.creditsBalance": "Credits Balance",
"quota.window.billingCycle": "Billing Cycle",
"quota.window.auto": "Auto",
"quota.window.api": "API",
"quota.window.planLimit": "Plan Limit",
"quota.window.onDemand": "On-demand",
"quota.window.session": "Session",
"quota.window.premium": "Premium Interactions",
"quota.window.chat": "Chat Requests",
+5
View File
@@ -2381,6 +2381,11 @@ export const dict = {
'quota.window.monthly': 'Limite mensuelle',
'quota.window.credits': 'Crédits',
'quota.window.creditsBalance': 'Solde de crédits',
'quota.window.billingCycle': 'Cycle de facturation',
'quota.window.auto': 'Auto',
'quota.window.api': 'API',
'quota.window.planLimit': 'Limite du forfait',
'quota.window.onDemand': 'À la demande',
'quota.window.session': 'Session',
'quota.window.premium': 'Interactions premium',
'quota.window.chat': 'Requêtes de chat',
+5
View File
@@ -2571,6 +2571,11 @@ export const dict: Record<I18nKey, string> = {
'quota.window.monthly': 'Monthly Limit',
'quota.window.credits': 'Credits',
'quota.window.creditsBalance': 'Credits Balance',
'quota.window.billingCycle': 'Billing Cycle',
'quota.window.auto': 'Auto',
'quota.window.api': 'API',
'quota.window.planLimit': 'Plan Limit',
'quota.window.onDemand': 'On-demand',
'quota.window.session': 'Session',
'quota.window.premium': 'Premium Interactions',
'quota.window.chat': 'Chat Requests',
+5
View File
@@ -2588,6 +2588,11 @@ export const dict: Record<I18nKey, string> = {
'quota.window.monthly': 'Monthly Limit',
'quota.window.credits': 'Credits',
'quota.window.creditsBalance': 'Credits Balance',
'quota.window.billingCycle': 'Billing Cycle',
'quota.window.auto': 'Auto',
'quota.window.api': 'API',
'quota.window.planLimit': 'Plan Limit',
'quota.window.onDemand': 'On-demand',
'quota.window.session': 'Session',
'quota.window.premium': 'Premium Interactions',
'quota.window.chat': 'Chat Requests',
@@ -2572,6 +2572,11 @@ export const dict: Record<I18nKey, string> = {
"quota.window.monthly": "Monthly Limit",
"quota.window.credits": "Credits",
"quota.window.creditsBalance": "Credits Balance",
"quota.window.billingCycle": "Billing Cycle",
"quota.window.auto": "Auto",
"quota.window.api": "API",
"quota.window.planLimit": "Plan Limit",
"quota.window.onDemand": "On-demand",
"quota.window.session": "Session",
"quota.window.premium": "Premium Interactions",
"quota.window.chat": "Chat Requests",
+5
View File
@@ -2572,6 +2572,11 @@ export const dict: Record<I18nKey, string> = {
"quota.window.monthly": "Monthly Limit",
"quota.window.credits": "Credits",
"quota.window.creditsBalance": "Credits Balance",
"quota.window.billingCycle": "Billing Cycle",
"quota.window.auto": "Auto",
"quota.window.api": "API",
"quota.window.planLimit": "Plan Limit",
"quota.window.onDemand": "On-demand",
"quota.window.session": "Session",
"quota.window.premium": "Premium Interactions",
"quota.window.chat": "Chat Requests",
@@ -2572,6 +2572,11 @@ export const dict: Record<I18nKey, string> = {
'quota.window.monthly': 'Monthly Limit',
'quota.window.credits': 'Credits',
'quota.window.creditsBalance': 'Credits Balance',
'quota.window.billingCycle': 'Billing Cycle',
'quota.window.auto': 'Auto',
'quota.window.api': 'API',
'quota.window.planLimit': 'Plan Limit',
'quota.window.onDemand': 'On-demand',
'quota.window.session': 'Session',
'quota.window.premium': 'Premium Interactions',
'quota.window.chat': 'Chat Requests',
@@ -2571,6 +2571,11 @@ export const dict: Record<I18nKey, string> = {
'quota.window.monthly': 'Monthly Limit',
'quota.window.credits': 'Credits',
'quota.window.creditsBalance': 'Credits Balance',
'quota.window.billingCycle': 'Billing Cycle',
'quota.window.auto': 'Auto',
'quota.window.api': 'API',
'quota.window.planLimit': 'Plan Limit',
'quota.window.onDemand': 'On-demand',
'quota.window.session': 'Session',
'quota.window.premium': 'Premium Interactions',
'quota.window.chat': 'Chat Requests',