@slkiser/opencode-quota 2.10.0 → 2.10.1-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -3
- package/dist/lib/nanogpt.d.ts +5 -21
- package/dist/lib/nanogpt.d.ts.map +1 -1
- package/dist/lib/nanogpt.js +16 -82
- package/dist/lib/nanogpt.js.map +1 -1
- package/dist/lib/quota-status.d.ts.map +1 -1
- package/dist/lib/quota-status.js +15 -22
- package/dist/lib/quota-status.js.map +1 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +161 -159
- package/dist/plugin.js.map +1 -1
- package/dist/providers/nanogpt.d.ts.map +1 -1
- package/dist/providers/nanogpt.js +46 -52
- package/dist/providers/nanogpt.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -341,14 +341,15 @@ If detection looks wrong, `/quota_status` prints the candidate paths checked for
|
|
|
341
341
|
<details>
|
|
342
342
|
<summary><strong>NanoGPT</strong></summary>
|
|
343
343
|
|
|
344
|
-
NanoGPT uses live NanoGPT subscription usage
|
|
344
|
+
NanoGPT uses the live NanoGPT subscription usage endpoint, so `/quota`, grouped/classic toasts, and `/quota_status` show weekly input token usage as the primary quota, daily image usage, and daily input token usage only when the API returns it.
|
|
345
345
|
|
|
346
346
|
- Canonical provider id is `nanogpt`. Alias `nano-gpt` also normalizes in `enabledProviders`.
|
|
347
347
|
- Optional API key: `provider.nanogpt.options.apiKey` or `provider["nano-gpt"].options.apiKey`.
|
|
348
348
|
- For security, provider secrets are read from `NANOGPT_API_KEY`, `NANO_GPT_API_KEY`, your user/global OpenCode config, or `auth.json`. Repo-local `opencode.json` / `opencode.jsonc` is ignored for NanoGPT secrets.
|
|
349
349
|
- Allowed env templates are limited to `{env:NANOGPT_API_KEY}` and `{env:NANO_GPT_API_KEY}`.
|
|
350
|
-
- `/quota_status` prints a `nanogpt` section with API-key diagnostics, auth candidate paths, live subscription state,
|
|
351
|
-
-
|
|
350
|
+
- `/quota_status` prints a `nanogpt` section with API-key diagnostics, auth candidate paths, live subscription state, weekly token usage, daily image usage, and optional daily token usage.
|
|
351
|
+
- Balance is intentionally not used for `/quota`, grouped/classic toasts, or `/quota_status`.
|
|
352
|
+
- NanoGPT quota reflects subscription usage windows and is not token-priced in `/tokens_*`.
|
|
352
353
|
|
|
353
354
|
Example user/global config (`~/.config/opencode/opencode.jsonc` on Linux/macOS):
|
|
354
355
|
|
package/dist/lib/nanogpt.d.ts
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* NanoGPT live quota
|
|
2
|
+
* NanoGPT live quota fetcher.
|
|
3
3
|
*
|
|
4
4
|
* Queries:
|
|
5
5
|
* - https://nano-gpt.com/api/subscription/v1/usage
|
|
6
|
-
* - https://nano-gpt.com/api/check-balance
|
|
7
6
|
*/
|
|
8
7
|
import type { QuotaError } from "./types.js";
|
|
9
|
-
export type NanoGptEndpoint = "usage" | "balance";
|
|
10
8
|
export type NanoGptUsageWindow = {
|
|
11
9
|
used: number;
|
|
12
10
|
limit: number;
|
|
@@ -18,30 +16,16 @@ export interface NanoGptSubscription {
|
|
|
18
16
|
active: boolean;
|
|
19
17
|
state: string;
|
|
20
18
|
enforceDailyLimit: boolean;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
weeklyInputTokens?: NanoGptUsageWindow;
|
|
20
|
+
dailyImages?: NanoGptUsageWindow;
|
|
21
|
+
dailyInputTokens?: NanoGptUsageWindow;
|
|
24
22
|
graceUntilIso?: string;
|
|
25
23
|
}
|
|
26
|
-
export interface NanoGptBalance {
|
|
27
|
-
usdBalance?: number;
|
|
28
|
-
usdBalanceRaw?: string;
|
|
29
|
-
nanoBalanceRaw?: string;
|
|
30
|
-
}
|
|
31
24
|
export type NanoGptResult = {
|
|
32
25
|
success: true;
|
|
33
|
-
subscription
|
|
34
|
-
balance?: NanoGptBalance;
|
|
35
|
-
endpointErrors?: Array<{
|
|
36
|
-
endpoint: NanoGptEndpoint;
|
|
37
|
-
message: string;
|
|
38
|
-
}>;
|
|
26
|
+
subscription: NanoGptSubscription;
|
|
39
27
|
} | QuotaError | null;
|
|
40
28
|
export declare function hasNanoGptApiKeyConfigured(): Promise<boolean>;
|
|
41
29
|
export { getNanoGptKeyDiagnostics, type NanoGptKeySource } from "./nanogpt-config.js";
|
|
42
|
-
export declare function formatNanoGptBalanceValue(balance: {
|
|
43
|
-
usdBalance?: number;
|
|
44
|
-
nanoBalanceRaw?: string;
|
|
45
|
-
}): string | null;
|
|
46
30
|
export declare function queryNanoGptQuota(): Promise<NanoGptResult>;
|
|
47
31
|
//# sourceMappingURL=nanogpt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nanogpt.d.ts","sourceRoot":"","sources":["../../src/lib/nanogpt.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"nanogpt.d.ts","sourceRoot":"","sources":["../../src/lib/nanogpt.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAmB7C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,OAAO,CAAC;IAC3B,iBAAiB,CAAC,EAAE,kBAAkB,CAAC;IACvC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,gBAAgB,CAAC,EAAE,kBAAkB,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,aAAa,GACrB;IACE,OAAO,EAAE,IAAI,CAAC;IACd,YAAY,EAAE,mBAAmB,CAAC;CACnC,GACD,UAAU,GACV,IAAI,CAAC;AAmKT,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,OAAO,CAAC,CAEnE;AAED,OAAO,EAAE,wBAAwB,EAAE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEtF,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,aAAa,CAAC,CAqBhE"}
|
package/dist/lib/nanogpt.js
CHANGED
|
@@ -1,17 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* NanoGPT live quota
|
|
2
|
+
* NanoGPT live quota fetcher.
|
|
3
3
|
*
|
|
4
4
|
* Queries:
|
|
5
5
|
* - https://nano-gpt.com/api/subscription/v1/usage
|
|
6
|
-
* - https://nano-gpt.com/api/check-balance
|
|
7
6
|
*/
|
|
8
7
|
import { sanitizeDisplaySnippet, sanitizeDisplayText } from "./display-sanitize.js";
|
|
9
|
-
import { clampPercent
|
|
8
|
+
import { clampPercent } from "./format-utils.js";
|
|
10
9
|
import { fetchWithTimeout } from "./http.js";
|
|
11
10
|
import { hasNanoGptApiKey, resolveNanoGptApiKey, } from "./nanogpt-config.js";
|
|
12
11
|
const USER_AGENT = "OpenCode-Quota-Toast/1.0";
|
|
13
12
|
const NANOGPT_USAGE_URL = "https://nano-gpt.com/api/subscription/v1/usage";
|
|
14
|
-
const NANOGPT_BALANCE_URL = "https://nano-gpt.com/api/check-balance";
|
|
15
13
|
function isRecord(value) {
|
|
16
14
|
return Boolean(value) && typeof value === "object";
|
|
17
15
|
}
|
|
@@ -40,7 +38,7 @@ function getIsoFromEpochMs(value) {
|
|
|
40
38
|
return undefined;
|
|
41
39
|
return new Date(Math.round(ms)).toISOString();
|
|
42
40
|
}
|
|
43
|
-
function normalizeUsageWindow(value, limitValue
|
|
41
|
+
function normalizeUsageWindow(value, limitValue) {
|
|
44
42
|
if (!isRecord(value))
|
|
45
43
|
return undefined;
|
|
46
44
|
const used = getFiniteNumber(value.used);
|
|
@@ -62,7 +60,7 @@ function normalizeUsageWindow(value, limitValue, fallbackResetTimeIso) {
|
|
|
62
60
|
limit: derivedLimit,
|
|
63
61
|
remaining: Math.max(0, safeRemaining),
|
|
64
62
|
percentRemaining,
|
|
65
|
-
resetTimeIso: getIsoFromEpochMs(value.resetAt)
|
|
63
|
+
resetTimeIso: getIsoFromEpochMs(value.resetAt),
|
|
66
64
|
};
|
|
67
65
|
}
|
|
68
66
|
function parseNanoGptUsage(payload) {
|
|
@@ -70,14 +68,15 @@ function parseNanoGptUsage(payload) {
|
|
|
70
68
|
throw new Error("NanoGPT usage response returned an unexpected response shape");
|
|
71
69
|
}
|
|
72
70
|
const data = payload;
|
|
73
|
-
const
|
|
74
|
-
const
|
|
75
|
-
const
|
|
71
|
+
const weeklyInputTokens = normalizeUsageWindow(data.weeklyInputTokens, data.limits?.weeklyInputTokens);
|
|
72
|
+
const dailyImages = normalizeUsageWindow(data.dailyImages, data.limits?.dailyImages);
|
|
73
|
+
const dailyInputTokens = normalizeUsageWindow(data.dailyInputTokens, data.limits?.dailyInputTokens);
|
|
76
74
|
const hasSubscriptionShape = typeof data.active === "boolean" ||
|
|
77
75
|
typeof data.enforceDailyLimit === "boolean" ||
|
|
78
76
|
Boolean(getNonEmptyString(data.state)) ||
|
|
79
|
-
|
|
80
|
-
|
|
77
|
+
weeklyInputTokens !== undefined ||
|
|
78
|
+
dailyImages !== undefined ||
|
|
79
|
+
dailyInputTokens !== undefined;
|
|
81
80
|
if (!hasSubscriptionShape) {
|
|
82
81
|
throw new Error("NanoGPT usage response returned an unexpected response shape");
|
|
83
82
|
}
|
|
@@ -85,29 +84,12 @@ function parseNanoGptUsage(payload) {
|
|
|
85
84
|
active: typeof data.active === "boolean" ? data.active : false,
|
|
86
85
|
state: getNonEmptyString(data.state) ?? (data.active ? "active" : "unknown"),
|
|
87
86
|
enforceDailyLimit: typeof data.enforceDailyLimit === "boolean" ? data.enforceDailyLimit : false,
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
87
|
+
weeklyInputTokens,
|
|
88
|
+
dailyImages,
|
|
89
|
+
dailyInputTokens,
|
|
91
90
|
graceUntilIso: getIsoString(data.graceUntil),
|
|
92
91
|
};
|
|
93
92
|
}
|
|
94
|
-
function parseNanoGptBalance(payload) {
|
|
95
|
-
if (!isRecord(payload)) {
|
|
96
|
-
throw new Error("NanoGPT balance response returned an unexpected response shape");
|
|
97
|
-
}
|
|
98
|
-
const data = payload;
|
|
99
|
-
const usdBalanceRaw = getNonEmptyString(data.usd_balance);
|
|
100
|
-
const nanoBalanceRaw = getNonEmptyString(data.nano_balance);
|
|
101
|
-
const usdParsed = usdBalanceRaw !== undefined ? Number.parseFloat(usdBalanceRaw) : NaN;
|
|
102
|
-
if (usdBalanceRaw === undefined && nanoBalanceRaw === undefined) {
|
|
103
|
-
throw new Error("NanoGPT balance response returned an unexpected response shape");
|
|
104
|
-
}
|
|
105
|
-
return {
|
|
106
|
-
usdBalance: Number.isFinite(usdParsed) ? usdParsed : undefined,
|
|
107
|
-
usdBalanceRaw,
|
|
108
|
-
nanoBalanceRaw,
|
|
109
|
-
};
|
|
110
|
-
}
|
|
111
93
|
async function readNanoGptAuth() {
|
|
112
94
|
const result = await resolveNanoGptApiKey();
|
|
113
95
|
if (!result)
|
|
@@ -139,44 +121,10 @@ async function fetchNanoGptUsage(headers) {
|
|
|
139
121
|
};
|
|
140
122
|
}
|
|
141
123
|
}
|
|
142
|
-
async function fetchNanoGptBalance(headers) {
|
|
143
|
-
try {
|
|
144
|
-
const response = await fetchWithTimeout(NANOGPT_BALANCE_URL, {
|
|
145
|
-
method: "POST",
|
|
146
|
-
headers,
|
|
147
|
-
});
|
|
148
|
-
if (!response.ok) {
|
|
149
|
-
const text = await response.text();
|
|
150
|
-
return {
|
|
151
|
-
success: false,
|
|
152
|
-
message: `NanoGPT API error ${response.status}: ${sanitizeDisplaySnippet(text, 120)}`,
|
|
153
|
-
};
|
|
154
|
-
}
|
|
155
|
-
return {
|
|
156
|
-
success: true,
|
|
157
|
-
balance: parseNanoGptBalance(await response.json()),
|
|
158
|
-
};
|
|
159
|
-
}
|
|
160
|
-
catch (err) {
|
|
161
|
-
return {
|
|
162
|
-
success: false,
|
|
163
|
-
message: sanitizeDisplayText(err instanceof Error ? err.message : String(err)),
|
|
164
|
-
};
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
124
|
export async function hasNanoGptApiKeyConfigured() {
|
|
168
125
|
return await hasNanoGptApiKey();
|
|
169
126
|
}
|
|
170
127
|
export { getNanoGptKeyDiagnostics } from "./nanogpt-config.js";
|
|
171
|
-
export function formatNanoGptBalanceValue(balance) {
|
|
172
|
-
if (typeof balance.usdBalance === "number" && Number.isFinite(balance.usdBalance)) {
|
|
173
|
-
return fmtUsdAmount(balance.usdBalance);
|
|
174
|
-
}
|
|
175
|
-
if (balance.nanoBalanceRaw) {
|
|
176
|
-
return `${balance.nanoBalanceRaw} NANO`;
|
|
177
|
-
}
|
|
178
|
-
return null;
|
|
179
|
-
}
|
|
180
128
|
export async function queryNanoGptQuota() {
|
|
181
129
|
const auth = await readNanoGptAuth();
|
|
182
130
|
if (!auth)
|
|
@@ -185,30 +133,16 @@ export async function queryNanoGptQuota() {
|
|
|
185
133
|
"x-api-key": auth.key,
|
|
186
134
|
"User-Agent": USER_AGENT,
|
|
187
135
|
};
|
|
188
|
-
const
|
|
189
|
-
fetchNanoGptUsage(headers),
|
|
190
|
-
fetchNanoGptBalance(headers),
|
|
191
|
-
]);
|
|
192
|
-
const endpointErrors = [];
|
|
136
|
+
const usageResult = await fetchNanoGptUsage(headers);
|
|
193
137
|
if (!usageResult.success) {
|
|
194
|
-
endpointErrors.push({ endpoint: "usage", message: usageResult.message });
|
|
195
|
-
}
|
|
196
|
-
if (!balanceResult.success) {
|
|
197
|
-
endpointErrors.push({ endpoint: "balance", message: balanceResult.message });
|
|
198
|
-
}
|
|
199
|
-
if (!usageResult.success && !balanceResult.success) {
|
|
200
138
|
return {
|
|
201
139
|
success: false,
|
|
202
|
-
error:
|
|
203
|
-
.map((entry) => `${entry.endpoint === "usage" ? "Usage" : "Balance"}: ${entry.message}`)
|
|
204
|
-
.join("; "),
|
|
140
|
+
error: usageResult.message,
|
|
205
141
|
};
|
|
206
142
|
}
|
|
207
143
|
return {
|
|
208
144
|
success: true,
|
|
209
|
-
subscription: usageResult.
|
|
210
|
-
balance: balanceResult.success ? balanceResult.balance : undefined,
|
|
211
|
-
endpointErrors: endpointErrors.length > 0 ? endpointErrors : undefined,
|
|
145
|
+
subscription: usageResult.subscription,
|
|
212
146
|
};
|
|
213
147
|
}
|
|
214
148
|
//# sourceMappingURL=nanogpt.js.map
|
package/dist/lib/nanogpt.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nanogpt.js","sourceRoot":"","sources":["../../src/lib/nanogpt.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"nanogpt.js","sourceRoot":"","sources":["../../src/lib/nanogpt.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quota-status.d.ts","sourceRoot":"","sources":["../../src/lib/quota-status.ts"],"names":[],"mappings":"AAkDA,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEzE,uDAAuD;AACvD,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;
|
|
1
|
+
{"version":3,"file":"quota-status.d.ts","sourceRoot":"","sources":["../../src/lib/quota-status.ts"],"names":[],"mappings":"AAkDA,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEzE,uDAAuD;AACvD,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAyMD,wBAAsB,sBAAsB,CAAC,MAAM,EAAE;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,gBAAgB,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IACpC,qBAAqB,EAAE,MAAM,GAAG,KAAK,CAAC;IACtC,UAAU,EAAE,eAAe,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,kBAAkB,CAAC,EAAE,IAAI,GAAG,WAAW,GAAG,YAAY,CAAC;IACvD,oBAAoB,EAAE,KAAK,CAAC;QAC1B,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;KAC/B,CAAC,CAAC;IACH,aAAa,CAAC,EAAE;QACd,SAAS,EAAE,OAAO,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,KAAK,CAAC;YAAE,KAAK,CAAC,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACrD,CAAC;IACF,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GAAG,OAAO,CAAC,MAAM,CAAC,CAqflB"}
|
package/dist/lib/quota-status.js
CHANGED
|
@@ -45,6 +45,11 @@ function fmtNanoGptMetric(value) {
|
|
|
45
45
|
return String(Math.trunc(value));
|
|
46
46
|
return value.toFixed(2).replace(/\.?0+$/, "");
|
|
47
47
|
}
|
|
48
|
+
function fmtNanoGptUsageWindow(window) {
|
|
49
|
+
if (!window)
|
|
50
|
+
return "(none)";
|
|
51
|
+
return `${fmtNanoGptMetric(window.used)}/${fmtNanoGptMetric(window.limit)} remaining=${fmtNanoGptMetric(window.remaining)} percent_remaining=${window.percentRemaining} reset_at=${window.resetTimeIso ?? "(none)"}`;
|
|
52
|
+
}
|
|
48
53
|
function computePricingCoverageFromAgg(agg) {
|
|
49
54
|
const byProvider = new Map();
|
|
50
55
|
let pricedKeysSeen = 0;
|
|
@@ -124,7 +129,7 @@ function supportedProviderPricingRow(params) {
|
|
|
124
129
|
return {
|
|
125
130
|
id,
|
|
126
131
|
pricing: "no",
|
|
127
|
-
notes: "subscription
|
|
132
|
+
notes: "subscription usage windows (weekly tokens, daily images, optional daily tokens; not token-priced)",
|
|
128
133
|
};
|
|
129
134
|
}
|
|
130
135
|
// Providers that correspond directly to models.dev providers.
|
|
@@ -351,27 +356,15 @@ export async function buildQuotaStatusReport(params) {
|
|
|
351
356
|
lines.push(`- live_fetch_error: ${nanoGptQuota.error}`);
|
|
352
357
|
}
|
|
353
358
|
else {
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
const monthly = nanoGptQuota.subscription.monthly;
|
|
364
|
-
lines.push(`- monthly_usage: ${fmtNanoGptMetric(monthly.used)}/${fmtNanoGptMetric(monthly.limit)} remaining=${fmtNanoGptMetric(monthly.remaining)} percent_remaining=${monthly.percentRemaining} reset_at=${monthly.resetTimeIso ?? "(none)"}`);
|
|
365
|
-
}
|
|
366
|
-
lines.push(`- billing_period_end: ${nanoGptQuota.subscription.currentPeriodEndIso ?? "(none)"}`);
|
|
367
|
-
if (nanoGptQuota.subscription.graceUntilIso) {
|
|
368
|
-
lines.push(`- grace_until: ${nanoGptQuota.subscription.graceUntilIso}`);
|
|
369
|
-
}
|
|
370
|
-
}
|
|
371
|
-
lines.push(`- balance_usd: ${typeof nanoGptQuota.balance?.usdBalance === "number" ? fmtUsdAmount(nanoGptQuota.balance.usdBalance) : "(none)"}`);
|
|
372
|
-
lines.push(`- balance_nano: ${nanoGptQuota.balance?.nanoBalanceRaw ?? "(none)"}`);
|
|
373
|
-
for (const entry of nanoGptQuota.endpointErrors ?? []) {
|
|
374
|
-
lines.push(`- live_error_${entry.endpoint}: ${entry.message}`);
|
|
359
|
+
const subscription = nanoGptQuota.subscription;
|
|
360
|
+
lines.push(`- subscription_active: ${subscription.active ? "true" : "false"}`);
|
|
361
|
+
lines.push(`- subscription_state: ${subscription.state}`);
|
|
362
|
+
lines.push(`- enforce_daily_limit: ${subscription.enforceDailyLimit ? "true" : "false"}`);
|
|
363
|
+
lines.push(`- weekly_input_tokens_usage: ${fmtNanoGptUsageWindow(subscription.weeklyInputTokens)}`);
|
|
364
|
+
lines.push(`- daily_images_usage: ${fmtNanoGptUsageWindow(subscription.dailyImages)}`);
|
|
365
|
+
lines.push(`- daily_input_tokens_usage: ${fmtNanoGptUsageWindow(subscription.dailyInputTokens)}`);
|
|
366
|
+
if (subscription.graceUntilIso) {
|
|
367
|
+
lines.push(`- grace_until: ${subscription.graceUntilIso}`);
|
|
375
368
|
}
|
|
376
369
|
}
|
|
377
370
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quota-status.js","sourceRoot":"","sources":["../../src/lib/quota-status.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"quota-status.js","sourceRoot":"","sources":["../../src/lib/quota-status.ts"],"names":[],"mappings":"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"}
|
package/dist/plugin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAgTlD;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAgTlD;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAu7C9B,CAAC"}
|
package/dist/plugin.js
CHANGED
|
@@ -1008,6 +1008,160 @@ export const QuotaToastPlugin = async ({ client }) => {
|
|
|
1008
1008
|
}
|
|
1009
1009
|
return lines.join("\n");
|
|
1010
1010
|
}
|
|
1011
|
+
async function injectCommandOutputAndHandle(sessionID, output) {
|
|
1012
|
+
if (output !== undefined && output !== null) {
|
|
1013
|
+
await injectRawOutput(sessionID, output);
|
|
1014
|
+
}
|
|
1015
|
+
handled();
|
|
1016
|
+
}
|
|
1017
|
+
async function handleQuotaSlashCommand(input) {
|
|
1018
|
+
const sessionID = input.sessionID;
|
|
1019
|
+
const generatedAtMs = Date.now();
|
|
1020
|
+
const now = generatedAtMs;
|
|
1021
|
+
const quotaRequestContext = {
|
|
1022
|
+
sessionID,
|
|
1023
|
+
sessionMeta: sessionID ? await getSessionModelMeta(sessionID) : undefined,
|
|
1024
|
+
};
|
|
1025
|
+
const bypassCommandCache = await shouldBypassQuotaCommandCache(sessionID, quotaRequestContext.sessionMeta);
|
|
1026
|
+
const body = bypassCommandCache
|
|
1027
|
+
? await fetchQuotaCommandBody("command:/quota", quotaRequestContext)
|
|
1028
|
+
: await (async () => {
|
|
1029
|
+
const quotaCache = getQuotaCommandCache();
|
|
1030
|
+
pruneQuotaCommandCache(config.minIntervalMs, now);
|
|
1031
|
+
const cacheKey = buildQuotaCommandCacheKey(quotaRequestContext);
|
|
1032
|
+
const cachedEntry = quotaCache.get(cacheKey);
|
|
1033
|
+
if (cachedEntry?.timestamp && now - cachedEntry.timestamp < config.minIntervalMs) {
|
|
1034
|
+
return cachedEntry.body;
|
|
1035
|
+
}
|
|
1036
|
+
const cacheEntry = cachedEntry ?? { body: "", timestamp: 0 };
|
|
1037
|
+
if (!cachedEntry) {
|
|
1038
|
+
quotaCache.set(cacheKey, cacheEntry);
|
|
1039
|
+
}
|
|
1040
|
+
return await (cacheEntry.inFlight ??
|
|
1041
|
+
(cacheEntry.inFlight = (async () => {
|
|
1042
|
+
try {
|
|
1043
|
+
const freshBody = await fetchQuotaCommandBody("command:/quota", quotaRequestContext);
|
|
1044
|
+
if (freshBody) {
|
|
1045
|
+
cacheEntry.body = freshBody;
|
|
1046
|
+
cacheEntry.timestamp = Date.now();
|
|
1047
|
+
}
|
|
1048
|
+
return freshBody;
|
|
1049
|
+
}
|
|
1050
|
+
finally {
|
|
1051
|
+
cacheEntry.inFlight = undefined;
|
|
1052
|
+
if (!cacheEntry.body && cacheEntry.timestamp <= 0) {
|
|
1053
|
+
quotaCache.delete(cacheKey);
|
|
1054
|
+
}
|
|
1055
|
+
}
|
|
1056
|
+
})()));
|
|
1057
|
+
})();
|
|
1058
|
+
if (!body) {
|
|
1059
|
+
if (!configLoaded) {
|
|
1060
|
+
return await injectCommandOutputAndHandle(sessionID, "Quota unavailable (config not loaded, try again)");
|
|
1061
|
+
}
|
|
1062
|
+
if (!config.enabled) {
|
|
1063
|
+
return await injectCommandOutputAndHandle(sessionID, "Quota disabled in config (enabled: false)");
|
|
1064
|
+
}
|
|
1065
|
+
return await injectCommandOutputAndHandle(sessionID, await buildQuotaCommandUnavailableMessage(quotaRequestContext));
|
|
1066
|
+
}
|
|
1067
|
+
const heading = renderCommandHeading({
|
|
1068
|
+
title: "Quota (/quota)",
|
|
1069
|
+
generatedAtMs,
|
|
1070
|
+
});
|
|
1071
|
+
return await injectCommandOutputAndHandle(sessionID, `${heading}\n\n${body}`);
|
|
1072
|
+
}
|
|
1073
|
+
async function handlePricingRefreshSlashCommand(input) {
|
|
1074
|
+
const sessionID = input.sessionID;
|
|
1075
|
+
const generatedAtMs = Date.now();
|
|
1076
|
+
if ((input.arguments ?? "").trim()) {
|
|
1077
|
+
return await injectCommandOutputAndHandle(sessionID, "Invalid arguments for /pricing_refresh\n\nThis command does not accept arguments.\n\nUsage:\n/pricing_refresh");
|
|
1078
|
+
}
|
|
1079
|
+
const result = await maybeRefreshPricingSnapshot({
|
|
1080
|
+
reason: "manual",
|
|
1081
|
+
force: true,
|
|
1082
|
+
snapshotSelection: config.pricingSnapshot.source,
|
|
1083
|
+
allowRefreshWhenSelectionBundled: true,
|
|
1084
|
+
});
|
|
1085
|
+
return await injectCommandOutputAndHandle(sessionID, buildPricingRefreshCommandOutput({
|
|
1086
|
+
result,
|
|
1087
|
+
generatedAtMs,
|
|
1088
|
+
}));
|
|
1089
|
+
}
|
|
1090
|
+
async function handleTokenReportSlashCommand(input, command) {
|
|
1091
|
+
const sessionID = input.sessionID;
|
|
1092
|
+
const untilMs = Date.now();
|
|
1093
|
+
const generatedAtMs = Date.now();
|
|
1094
|
+
await kickPricingRefresh({ reason: "tokens", maxWaitMs: 750 });
|
|
1095
|
+
const spec = TOKEN_REPORT_COMMANDS_BY_ID.get(command);
|
|
1096
|
+
if (spec.kind === "between") {
|
|
1097
|
+
const parsed = parseQuotaBetweenArgs(input.arguments);
|
|
1098
|
+
if (!parsed.ok) {
|
|
1099
|
+
return await injectCommandOutputAndHandle(sessionID, `Invalid arguments for /${spec.id}\n\n${parsed.error}\n\nExpected: /${spec.id} YYYY-MM-DD YYYY-MM-DD\nExample: /${spec.id} 2026-01-01 2026-01-15`);
|
|
1100
|
+
}
|
|
1101
|
+
const sinceMs = startOfLocalDayMs(parsed.startYmd);
|
|
1102
|
+
const rangeUntilMs = startOfNextLocalDayMs(parsed.endYmd);
|
|
1103
|
+
return await injectCommandOutputAndHandle(sessionID, await buildQuotaReport({
|
|
1104
|
+
title: spec.titleForRange(parsed.startYmd, parsed.endYmd),
|
|
1105
|
+
sinceMs,
|
|
1106
|
+
untilMs: rangeUntilMs,
|
|
1107
|
+
sessionID,
|
|
1108
|
+
generatedAtMs,
|
|
1109
|
+
}));
|
|
1110
|
+
}
|
|
1111
|
+
let sinceMs;
|
|
1112
|
+
let filterSessionID;
|
|
1113
|
+
let sessionOnly;
|
|
1114
|
+
let topModels;
|
|
1115
|
+
let topSessions;
|
|
1116
|
+
switch (spec.kind) {
|
|
1117
|
+
case "rolling":
|
|
1118
|
+
sinceMs = untilMs - spec.windowMs;
|
|
1119
|
+
break;
|
|
1120
|
+
case "today": {
|
|
1121
|
+
const now = new Date();
|
|
1122
|
+
const startOfDay = new Date(now.getFullYear(), now.getMonth(), now.getDate());
|
|
1123
|
+
sinceMs = startOfDay.getTime();
|
|
1124
|
+
break;
|
|
1125
|
+
}
|
|
1126
|
+
case "session":
|
|
1127
|
+
filterSessionID = sessionID;
|
|
1128
|
+
sessionOnly = true;
|
|
1129
|
+
break;
|
|
1130
|
+
case "all":
|
|
1131
|
+
topModels = spec.topModels;
|
|
1132
|
+
topSessions = spec.topSessions;
|
|
1133
|
+
break;
|
|
1134
|
+
}
|
|
1135
|
+
return await injectCommandOutputAndHandle(sessionID, await buildQuotaReport({
|
|
1136
|
+
title: spec.title,
|
|
1137
|
+
sinceMs,
|
|
1138
|
+
untilMs: spec.kind === "rolling" || spec.kind === "today" ? untilMs : undefined,
|
|
1139
|
+
sessionID,
|
|
1140
|
+
filterSessionID,
|
|
1141
|
+
sessionOnly,
|
|
1142
|
+
topModels,
|
|
1143
|
+
topSessions,
|
|
1144
|
+
generatedAtMs,
|
|
1145
|
+
}));
|
|
1146
|
+
}
|
|
1147
|
+
async function handleQuotaStatusSlashCommand(input) {
|
|
1148
|
+
const sessionID = input.sessionID;
|
|
1149
|
+
const generatedAtMs = Date.now();
|
|
1150
|
+
const parsed = parseOptionalJsonArgs(input.arguments);
|
|
1151
|
+
if (!parsed.ok) {
|
|
1152
|
+
return await injectCommandOutputAndHandle(sessionID, `Invalid arguments for /quota_status\n\n${parsed.error}\n\nExample:\n/quota_status {"refreshGoogleTokens": true}`);
|
|
1153
|
+
}
|
|
1154
|
+
const out = await buildStatusReport({
|
|
1155
|
+
refreshGoogleTokens: parsed.value["refreshGoogleTokens"] === true,
|
|
1156
|
+
skewMs: typeof parsed.value["skewMs"] === "number"
|
|
1157
|
+
? parsed.value["skewMs"]
|
|
1158
|
+
: undefined,
|
|
1159
|
+
force: parsed.value["force"] === true,
|
|
1160
|
+
sessionID,
|
|
1161
|
+
generatedAtMs,
|
|
1162
|
+
});
|
|
1163
|
+
return await injectCommandOutputAndHandle(sessionID, out);
|
|
1164
|
+
}
|
|
1011
1165
|
// Return hook implementations
|
|
1012
1166
|
return {
|
|
1013
1167
|
// Register built-in slash commands (in addition to /tool quota_*)
|
|
@@ -1038,181 +1192,29 @@ export const QuotaToastPlugin = async ({ client }) => {
|
|
|
1038
1192
|
"command.execute.before": async (input) => {
|
|
1039
1193
|
try {
|
|
1040
1194
|
const cmd = input.command;
|
|
1041
|
-
const
|
|
1042
|
-
const isQuotaCommand = cmd === "quota" ||
|
|
1195
|
+
const isHandledSlashCommand = cmd === "quota" ||
|
|
1043
1196
|
cmd === "quota_status" ||
|
|
1044
1197
|
cmd === "pricing_refresh" ||
|
|
1045
1198
|
isTokenReportCommand(cmd);
|
|
1046
|
-
if (
|
|
1199
|
+
if (isHandledSlashCommand && !configLoaded) {
|
|
1047
1200
|
await refreshConfig();
|
|
1048
1201
|
}
|
|
1049
|
-
if (
|
|
1202
|
+
if (isHandledSlashCommand && !config.enabled) {
|
|
1050
1203
|
handled();
|
|
1051
1204
|
}
|
|
1052
1205
|
if (cmd === "quota") {
|
|
1053
|
-
|
|
1054
|
-
const now = generatedAtMs;
|
|
1055
|
-
const quotaRequestContext = {
|
|
1056
|
-
sessionID,
|
|
1057
|
-
sessionMeta: sessionID ? await getSessionModelMeta(sessionID) : undefined,
|
|
1058
|
-
};
|
|
1059
|
-
const bypassCommandCache = await shouldBypassQuotaCommandCache(sessionID, quotaRequestContext.sessionMeta);
|
|
1060
|
-
const body = bypassCommandCache
|
|
1061
|
-
? await fetchQuotaCommandBody("command:/quota", quotaRequestContext)
|
|
1062
|
-
: await (async () => {
|
|
1063
|
-
const quotaCache = getQuotaCommandCache();
|
|
1064
|
-
pruneQuotaCommandCache(config.minIntervalMs, now);
|
|
1065
|
-
const cacheKey = buildQuotaCommandCacheKey(quotaRequestContext);
|
|
1066
|
-
const cachedEntry = quotaCache.get(cacheKey);
|
|
1067
|
-
if (cachedEntry?.timestamp &&
|
|
1068
|
-
now - cachedEntry.timestamp < config.minIntervalMs) {
|
|
1069
|
-
return cachedEntry.body;
|
|
1070
|
-
}
|
|
1071
|
-
const cacheEntry = cachedEntry ?? { body: "", timestamp: 0 };
|
|
1072
|
-
if (!cachedEntry) {
|
|
1073
|
-
quotaCache.set(cacheKey, cacheEntry);
|
|
1074
|
-
}
|
|
1075
|
-
return await (cacheEntry.inFlight ??
|
|
1076
|
-
(cacheEntry.inFlight = (async () => {
|
|
1077
|
-
try {
|
|
1078
|
-
const freshBody = await fetchQuotaCommandBody("command:/quota", quotaRequestContext);
|
|
1079
|
-
if (freshBody) {
|
|
1080
|
-
cacheEntry.body = freshBody;
|
|
1081
|
-
cacheEntry.timestamp = Date.now();
|
|
1082
|
-
}
|
|
1083
|
-
return freshBody;
|
|
1084
|
-
}
|
|
1085
|
-
finally {
|
|
1086
|
-
cacheEntry.inFlight = undefined;
|
|
1087
|
-
if (!cacheEntry.body && cacheEntry.timestamp <= 0) {
|
|
1088
|
-
quotaCache.delete(cacheKey);
|
|
1089
|
-
}
|
|
1090
|
-
}
|
|
1091
|
-
})()));
|
|
1092
|
-
})();
|
|
1093
|
-
if (!body) {
|
|
1094
|
-
// Provide an actionable message instead of a generic "unavailable".
|
|
1095
|
-
if (!configLoaded) {
|
|
1096
|
-
await injectRawOutput(sessionID, "Quota unavailable (config not loaded, try again)");
|
|
1097
|
-
}
|
|
1098
|
-
else if (!config.enabled) {
|
|
1099
|
-
await injectRawOutput(sessionID, "Quota disabled in config (enabled: false)");
|
|
1100
|
-
}
|
|
1101
|
-
else {
|
|
1102
|
-
await injectRawOutput(sessionID, await buildQuotaCommandUnavailableMessage(quotaRequestContext));
|
|
1103
|
-
}
|
|
1104
|
-
handled();
|
|
1105
|
-
}
|
|
1106
|
-
const heading = renderCommandHeading({
|
|
1107
|
-
title: "Quota (/quota)",
|
|
1108
|
-
generatedAtMs,
|
|
1109
|
-
});
|
|
1110
|
-
await injectRawOutput(sessionID, `${heading}\n\n${body}`);
|
|
1111
|
-
handled();
|
|
1206
|
+
return await handleQuotaSlashCommand(input);
|
|
1112
1207
|
}
|
|
1113
1208
|
if (cmd === "pricing_refresh") {
|
|
1114
|
-
|
|
1115
|
-
if ((input.arguments ?? "").trim()) {
|
|
1116
|
-
await injectRawOutput(sessionID, "Invalid arguments for /pricing_refresh\n\nThis command does not accept arguments.\n\nUsage:\n/pricing_refresh");
|
|
1117
|
-
handled();
|
|
1118
|
-
}
|
|
1119
|
-
const result = await maybeRefreshPricingSnapshot({
|
|
1120
|
-
reason: "manual",
|
|
1121
|
-
force: true,
|
|
1122
|
-
snapshotSelection: config.pricingSnapshot.source,
|
|
1123
|
-
allowRefreshWhenSelectionBundled: true,
|
|
1124
|
-
});
|
|
1125
|
-
await injectRawOutput(sessionID, buildPricingRefreshCommandOutput({
|
|
1126
|
-
result,
|
|
1127
|
-
generatedAtMs,
|
|
1128
|
-
}));
|
|
1129
|
-
handled();
|
|
1209
|
+
return await handlePricingRefreshSlashCommand(input);
|
|
1130
1210
|
}
|
|
1131
|
-
const untilMs = Date.now();
|
|
1132
1211
|
// Handle token report commands (/tokens_*)
|
|
1133
1212
|
if (isTokenReportCommand(cmd)) {
|
|
1134
|
-
|
|
1135
|
-
await kickPricingRefresh({ reason: "tokens", maxWaitMs: 750 });
|
|
1136
|
-
const spec = TOKEN_REPORT_COMMANDS_BY_ID.get(cmd);
|
|
1137
|
-
if (spec.kind === "between") {
|
|
1138
|
-
// Special handling for date range command
|
|
1139
|
-
const parsed = parseQuotaBetweenArgs(input.arguments);
|
|
1140
|
-
if (!parsed.ok) {
|
|
1141
|
-
await injectRawOutput(sessionID, `Invalid arguments for /${spec.id}\n\n${parsed.error}\n\nExpected: /${spec.id} YYYY-MM-DD YYYY-MM-DD\nExample: /${spec.id} 2026-01-01 2026-01-15`);
|
|
1142
|
-
handled();
|
|
1143
|
-
}
|
|
1144
|
-
const sinceMs = startOfLocalDayMs(parsed.startYmd);
|
|
1145
|
-
const rangeUntilMs = startOfNextLocalDayMs(parsed.endYmd); // Exclusive upper bound for inclusive end date
|
|
1146
|
-
const out = await buildQuotaReport({
|
|
1147
|
-
title: spec.titleForRange(parsed.startYmd, parsed.endYmd),
|
|
1148
|
-
sinceMs,
|
|
1149
|
-
untilMs: rangeUntilMs,
|
|
1150
|
-
sessionID,
|
|
1151
|
-
generatedAtMs,
|
|
1152
|
-
});
|
|
1153
|
-
await injectRawOutput(sessionID, out);
|
|
1154
|
-
handled();
|
|
1155
|
-
}
|
|
1156
|
-
// Non-between token report commands
|
|
1157
|
-
let sinceMs;
|
|
1158
|
-
let filterSessionID;
|
|
1159
|
-
let sessionOnly;
|
|
1160
|
-
let topModels;
|
|
1161
|
-
let topSessions;
|
|
1162
|
-
switch (spec.kind) {
|
|
1163
|
-
case "rolling":
|
|
1164
|
-
sinceMs = untilMs - spec.windowMs;
|
|
1165
|
-
break;
|
|
1166
|
-
case "today": {
|
|
1167
|
-
const now = new Date();
|
|
1168
|
-
const startOfDay = new Date(now.getFullYear(), now.getMonth(), now.getDate());
|
|
1169
|
-
sinceMs = startOfDay.getTime();
|
|
1170
|
-
break;
|
|
1171
|
-
}
|
|
1172
|
-
case "session":
|
|
1173
|
-
filterSessionID = sessionID;
|
|
1174
|
-
sessionOnly = true;
|
|
1175
|
-
break;
|
|
1176
|
-
case "all":
|
|
1177
|
-
topModels = spec.topModels;
|
|
1178
|
-
topSessions = spec.topSessions;
|
|
1179
|
-
break;
|
|
1180
|
-
}
|
|
1181
|
-
const out = await buildQuotaReport({
|
|
1182
|
-
title: spec.title,
|
|
1183
|
-
sinceMs,
|
|
1184
|
-
untilMs: spec.kind === "rolling" || spec.kind === "today" ? untilMs : undefined,
|
|
1185
|
-
sessionID,
|
|
1186
|
-
filterSessionID,
|
|
1187
|
-
sessionOnly,
|
|
1188
|
-
topModels,
|
|
1189
|
-
topSessions,
|
|
1190
|
-
generatedAtMs,
|
|
1191
|
-
});
|
|
1192
|
-
await injectRawOutput(sessionID, out);
|
|
1193
|
-
handled();
|
|
1213
|
+
return await handleTokenReportSlashCommand(input, cmd);
|
|
1194
1214
|
}
|
|
1195
1215
|
// Handle /quota_status (diagnostics - not a token report)
|
|
1196
1216
|
if (cmd === "quota_status") {
|
|
1197
|
-
|
|
1198
|
-
const parsed = parseOptionalJsonArgs(input.arguments);
|
|
1199
|
-
if (!parsed.ok) {
|
|
1200
|
-
await injectRawOutput(sessionID, `Invalid arguments for /quota_status\n\n${parsed.error}\n\nExample:\n/quota_status {"refreshGoogleTokens": true}`);
|
|
1201
|
-
handled();
|
|
1202
|
-
}
|
|
1203
|
-
const out = await buildStatusReport({
|
|
1204
|
-
refreshGoogleTokens: parsed.value["refreshGoogleTokens"] === true,
|
|
1205
|
-
skewMs: typeof parsed.value["skewMs"] === "number"
|
|
1206
|
-
? parsed.value["skewMs"]
|
|
1207
|
-
: undefined,
|
|
1208
|
-
force: parsed.value["force"] === true,
|
|
1209
|
-
sessionID,
|
|
1210
|
-
generatedAtMs,
|
|
1211
|
-
});
|
|
1212
|
-
if (out) {
|
|
1213
|
-
await injectRawOutput(sessionID, out);
|
|
1214
|
-
}
|
|
1215
|
-
handled();
|
|
1217
|
+
return await handleQuotaStatusSlashCommand(input);
|
|
1216
1218
|
}
|
|
1217
1219
|
}
|
|
1218
1220
|
catch (err) {
|
package/dist/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nanogpt.d.ts","sourceRoot":"","sources":["../../src/providers/nanogpt.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,aAAa,EAId,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"nanogpt.d.ts","sourceRoot":"","sources":["../../src/providers/nanogpt.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,aAAa,EAId,MAAM,mBAAmB,CAAC;AA4C3B,eAAO,MAAM,eAAe,EAAE,aAuG7B,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* NanoGPT provider wrapper.
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { hasNanoGptApiKeyConfigured, queryNanoGptQuota } from "../lib/nanogpt.js";
|
|
5
5
|
function formatUsageAmount(value) {
|
|
6
6
|
if (!Number.isFinite(value))
|
|
7
7
|
return "0";
|
|
@@ -12,6 +12,23 @@ function formatUsageAmount(value) {
|
|
|
12
12
|
function formatUsageRight(window) {
|
|
13
13
|
return `${formatUsageAmount(window.used)}/${formatUsageAmount(window.limit)}`;
|
|
14
14
|
}
|
|
15
|
+
function createUsageEntry(style, params) {
|
|
16
|
+
if (style === "grouped") {
|
|
17
|
+
return {
|
|
18
|
+
name: params.name,
|
|
19
|
+
group: "NanoGPT",
|
|
20
|
+
label: params.label,
|
|
21
|
+
right: formatUsageRight(params.window),
|
|
22
|
+
percentRemaining: params.window.percentRemaining,
|
|
23
|
+
resetTimeIso: params.window.resetTimeIso,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
return {
|
|
27
|
+
name: params.name,
|
|
28
|
+
percentRemaining: params.window.percentRemaining,
|
|
29
|
+
resetTimeIso: params.window.resetTimeIso,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
15
32
|
export const nanoGptProvider = {
|
|
16
33
|
id: "nanogpt",
|
|
17
34
|
async isAvailable(ctx) {
|
|
@@ -46,60 +63,37 @@ export const nanoGptProvider = {
|
|
|
46
63
|
}
|
|
47
64
|
const style = ctx.config.toastStyle ?? "classic";
|
|
48
65
|
const entries = [];
|
|
49
|
-
const errors =
|
|
50
|
-
label: entry.endpoint === "usage" ? "NanoGPT Usage" : "NanoGPT Balance",
|
|
51
|
-
message: entry.message,
|
|
52
|
-
})) ?? [];
|
|
66
|
+
const errors = [];
|
|
53
67
|
const subscription = result.subscription;
|
|
54
|
-
if (subscription
|
|
55
|
-
entries.push(style
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
:
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
resetTimeIso: subscription.daily.resetTimeIso,
|
|
68
|
-
});
|
|
68
|
+
if (subscription.weeklyInputTokens) {
|
|
69
|
+
entries.push(createUsageEntry(style, {
|
|
70
|
+
name: "NanoGPT Weekly Tokens",
|
|
71
|
+
label: "Weekly:",
|
|
72
|
+
window: subscription.weeklyInputTokens,
|
|
73
|
+
}));
|
|
74
|
+
}
|
|
75
|
+
if (subscription.dailyImages) {
|
|
76
|
+
entries.push(createUsageEntry(style, {
|
|
77
|
+
name: "NanoGPT Daily Images",
|
|
78
|
+
label: "Images:",
|
|
79
|
+
window: subscription.dailyImages,
|
|
80
|
+
}));
|
|
69
81
|
}
|
|
70
|
-
if (subscription
|
|
71
|
-
entries.push(style
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
right: formatUsageRight(subscription.monthly),
|
|
77
|
-
percentRemaining: subscription.monthly.percentRemaining,
|
|
78
|
-
resetTimeIso: subscription.monthly.resetTimeIso,
|
|
79
|
-
}
|
|
80
|
-
: {
|
|
81
|
-
name: "NanoGPT Monthly",
|
|
82
|
-
percentRemaining: subscription.monthly.percentRemaining,
|
|
83
|
-
resetTimeIso: subscription.monthly.resetTimeIso,
|
|
84
|
-
});
|
|
82
|
+
if (subscription.dailyInputTokens) {
|
|
83
|
+
entries.push(createUsageEntry(style, {
|
|
84
|
+
name: "NanoGPT Daily Tokens",
|
|
85
|
+
label: "Daily Tokens:",
|
|
86
|
+
window: subscription.dailyInputTokens,
|
|
87
|
+
}));
|
|
85
88
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
group: "NanoGPT",
|
|
93
|
-
label: "Balance:",
|
|
94
|
-
value: balanceValue,
|
|
95
|
-
}
|
|
96
|
-
: {
|
|
97
|
-
kind: "value",
|
|
98
|
-
name: "NanoGPT Balance",
|
|
99
|
-
value: balanceValue,
|
|
100
|
-
});
|
|
89
|
+
if (!subscription.weeklyInputTokens &&
|
|
90
|
+
(subscription.dailyImages || subscription.dailyInputTokens)) {
|
|
91
|
+
errors.push({
|
|
92
|
+
label: "NanoGPT",
|
|
93
|
+
message: "Weekly input token usage unavailable from NanoGPT subscription API",
|
|
94
|
+
});
|
|
101
95
|
}
|
|
102
|
-
if (subscription
|
|
96
|
+
if (subscription.state && subscription.state.toLowerCase() !== "active") {
|
|
103
97
|
errors.push({
|
|
104
98
|
label: "NanoGPT",
|
|
105
99
|
message: `Subscription state: ${subscription.state}`,
|
|
@@ -108,7 +102,7 @@ export const nanoGptProvider = {
|
|
|
108
102
|
if (entries.length === 0) {
|
|
109
103
|
errors.push({
|
|
110
104
|
label: "NanoGPT",
|
|
111
|
-
message: "No usable NanoGPT
|
|
105
|
+
message: "No usable NanoGPT subscription usage data",
|
|
112
106
|
});
|
|
113
107
|
}
|
|
114
108
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nanogpt.js","sourceRoot":"","sources":["../../src/providers/nanogpt.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"nanogpt.js","sourceRoot":"","sources":["../../src/providers/nanogpt.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@slkiser/opencode-quota",
|
|
3
|
-
"version": "2.10.0",
|
|
3
|
+
"version": "2.10.1-beta.0",
|
|
4
4
|
"description": "OpenCode quota & tokens usage with zero context window pollution. Supports GitHub Copilot, OpenAI (Plus/Pro), Qwen Code, Chutes AI, Firmware AI, Google Antigravity, Z.ai coding plan and more.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|