@slkiser/opencode-quota 1.3.0 → 1.4.1
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 +170 -73
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +31 -4
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/copilot.d.ts.map +1 -1
- package/dist/lib/copilot.js +8 -1
- package/dist/lib/copilot.js.map +1 -1
- package/dist/lib/firmware.d.ts +22 -0
- package/dist/lib/firmware.d.ts.map +1 -1
- package/dist/lib/firmware.js +96 -7
- package/dist/lib/firmware.js.map +1 -1
- package/dist/lib/markdown-table.d.ts +7 -0
- package/dist/lib/markdown-table.d.ts.map +1 -1
- package/dist/lib/markdown-table.js +76 -9
- package/dist/lib/markdown-table.js.map +1 -1
- package/dist/lib/opencode-auth.d.ts.map +1 -1
- package/dist/lib/opencode-auth.js +3 -1
- package/dist/lib/opencode-auth.js.map +1 -1
- package/dist/lib/quota-stats-format.d.ts.map +1 -1
- package/dist/lib/quota-stats-format.js +9 -3
- package/dist/lib/quota-stats-format.js.map +1 -1
- package/dist/lib/quota-stats.d.ts.map +1 -1
- package/dist/lib/quota-stats.js +36 -2
- package/dist/lib/quota-stats.js.map +1 -1
- package/dist/lib/quota-status.d.ts +3 -1
- package/dist/lib/quota-status.d.ts.map +1 -1
- package/dist/lib/quota-status.js +9 -2
- package/dist/lib/quota-status.js.map +1 -1
- package/dist/lib/types.d.ts +4 -1
- package/dist/lib/types.d.ts.map +1 -1
- package/dist/lib/types.js +2 -2
- package/dist/lib/types.js.map +1 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +159 -181
- package/dist/plugin.js.map +1 -1
- package/dist/providers/copilot.d.ts.map +1 -1
- package/dist/providers/copilot.js +10 -5
- package/dist/providers/copilot.js.map +1 -1
- package/dist/providers/firmware.d.ts.map +1 -1
- package/dist/providers/firmware.js +40 -7
- package/dist/providers/firmware.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Opencode Quota
|
|
2
2
|
|
|
3
3
|
Quota and token tracking for OpenCode providers via Toasts and Commands with no LLM calls.
|
|
4
4
|
|
|
@@ -10,7 +10,7 @@ Quota and token tracking for OpenCode providers via Toasts and Commands with no
|
|
|
10
10
|
|
|
11
11
|
**Token Report Commands** - Track token usage and estimated costs across sessions.
|
|
12
12
|
|
|
13
|
-

|
|
14
14
|
|
|
15
15
|
## Installation
|
|
16
16
|
|
|
@@ -22,9 +22,9 @@ Add to your `opencode.json`:
|
|
|
22
22
|
}
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
That's it. Providers are auto-detected based on your OpenCode configuration. Toasts appear automatically after assistant responses.
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
**Optional:** To restrict which providers are queried, set `enabledProviders` explicitly:
|
|
28
28
|
|
|
29
29
|
```jsonc
|
|
30
30
|
{
|
|
@@ -36,54 +36,70 @@ Enable the providers you use:
|
|
|
36
36
|
}
|
|
37
37
|
```
|
|
38
38
|
|
|
39
|
-
|
|
39
|
+
> **LLM Agents:** Ask your agent to install `https://github.com/slkiser/opencode-quota` with the providers you have enabled. See [LLM Agent Installation Instructions](#llm-agent-installation-instructions) for details.
|
|
40
40
|
|
|
41
41
|
## Commands
|
|
42
42
|
|
|
43
|
-
|
|
43
|
+
| Command | Description |
|
|
44
|
+
| ------------------------ | ------------------------------------------------ |
|
|
45
|
+
| `/quota` | Show quota toast (verbose) |
|
|
46
|
+
| `/quota_status` | Show diagnostics (config, providers, accounts) |
|
|
47
|
+
| | |
|
|
48
|
+
| `/tokens_today` | Tokens used today (calendar day) |
|
|
49
|
+
| `/tokens_daily` | Tokens used in last 24 hours |
|
|
50
|
+
| `/tokens_weekly` | Tokens used in last 7 days |
|
|
51
|
+
| `/tokens_monthly` | Tokens used in last 30 days |
|
|
52
|
+
| `/tokens_all` | Tokens used all time |
|
|
53
|
+
| `/tokens_session` | Tokens used in current session |
|
|
54
|
+
| `/tokens_between` | Tokens between two dates (YYYY-MM-DD) |
|
|
55
|
+
| | |
|
|
56
|
+
| `/firmware_reset_window` | Resets Firmware 5-hour window (requires confirm) |
|
|
44
57
|
|
|
45
|
-
|
|
46
|
-
| ----------------- | -------------------------------------------------------- |
|
|
47
|
-
| `/tokens_today` | Tokens used (Today) (/tokens_today) |
|
|
48
|
-
| `/tokens_daily` | Tokens used (Last 24 Hours) (/tokens_daily) |
|
|
49
|
-
| `/tokens_weekly` | Tokens used (Last 7 Days) (/tokens_weekly) |
|
|
50
|
-
| `/tokens_monthly` | Tokens used (Last 30 Days) (/tokens_monthly) |
|
|
51
|
-
| `/tokens_all` | Tokens used (All Time) (/tokens_all) |
|
|
52
|
-
| `/tokens_session` | Tokens used (Current Session) (/tokens_session) |
|
|
53
|
-
| `/tokens_between` | Tokens used (YYYY-MM-DD .. YYYY-MM-DD) (/tokens_between) |
|
|
58
|
+
## Supported Providers
|
|
54
59
|
|
|
55
|
-
|
|
60
|
+
| Provider | Config ID | Auth Source |
|
|
61
|
+
| ------------------ | -------------------- | --------------------------------------------- |
|
|
62
|
+
| GitHub Copilot | `copilot` | OpenCode auth (automatic) |
|
|
63
|
+
| OpenAI (Plus/Pro) | `openai` | OpenCode auth (automatic) |
|
|
64
|
+
| Firmware AI | `firmware` | OpenCode auth or API key |
|
|
65
|
+
| Chutes AI | `chutes` | OpenCode auth or API key |
|
|
66
|
+
| Google Antigravity | `google-antigravity` | Multi-account via `opencode-antigravity-auth` |
|
|
56
67
|
|
|
57
|
-
|
|
58
|
-
| --------------- | --------------------------------- |
|
|
59
|
-
| `/quota` | Quota Toast (Verbose) (/quota) |
|
|
60
|
-
| `/quota_status` | Quota Diagnostics (/quota_status) |
|
|
68
|
+
### Provider-Specific Setup
|
|
61
69
|
|
|
62
|
-
|
|
70
|
+
<details>
|
|
71
|
+
<summary><strong>GitHub Copilot</strong> (usually no setup needed)</summary>
|
|
63
72
|
|
|
64
|
-
|
|
73
|
+
Copilot works automatically if OpenCode has Copilot configured and logged in.
|
|
65
74
|
|
|
66
|
-
|
|
67
|
-
- `/quota_daily` -> `/tokens_daily`
|
|
68
|
-
- `/quota_weekly` -> `/tokens_weekly`
|
|
69
|
-
- `/quota_monthly` -> `/tokens_monthly`
|
|
70
|
-
- `/quota_all` -> `/tokens_all`
|
|
71
|
-
- `/quota_session` -> `/tokens_session`
|
|
72
|
-
- `/quota_between` -> `/tokens_between`
|
|
75
|
+
**Optional:** For more reliable quota reporting, provide a fine-grained PAT:
|
|
73
76
|
|
|
74
|
-
|
|
77
|
+
1. Create a fine-grained PAT at GitHub with **Account permissions > Plan > Read**
|
|
78
|
+
2. Create `~/.config/opencode/copilot-quota-token.json`:
|
|
75
79
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
80
|
+
```json
|
|
81
|
+
{
|
|
82
|
+
"token": "github_pat_...",
|
|
83
|
+
"username": "your-username",
|
|
84
|
+
"tier": "pro"
|
|
85
|
+
}
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Tier options: `free`, `pro`, `pro+`, `business`, `enterprise`
|
|
89
|
+
|
|
90
|
+
</details>
|
|
83
91
|
|
|
84
|
-
|
|
92
|
+
<details>
|
|
93
|
+
<summary><strong>OpenAI</strong> (no setup needed)</summary>
|
|
85
94
|
|
|
86
|
-
|
|
95
|
+
OpenAI works automatically if OpenCode has OpenAI/ChatGPT configured.
|
|
96
|
+
|
|
97
|
+
</details>
|
|
98
|
+
|
|
99
|
+
<details>
|
|
100
|
+
<summary><strong>Firmware AI</strong></summary>
|
|
101
|
+
|
|
102
|
+
Works automatically if OpenCode has Firmware configured. Alternatively, provide an API key:
|
|
87
103
|
|
|
88
104
|
```jsonc
|
|
89
105
|
{
|
|
@@ -102,11 +118,16 @@ Firmware works automatically if OpenCode has Firmware configured. Alternatively,
|
|
|
102
118
|
}
|
|
103
119
|
```
|
|
104
120
|
|
|
105
|
-
The `apiKey` field supports
|
|
121
|
+
The `apiKey` field supports `{env:VAR_NAME}` syntax or a direct key.
|
|
122
|
+
|
|
123
|
+
**Firmware-specific command:** Use `/firmware_reset_window confirm` to reset your 5-hour spending window (consumes 1 of 2 weekly resets). Running without `confirm` shows a warning first.
|
|
124
|
+
|
|
125
|
+
</details>
|
|
106
126
|
|
|
107
|
-
|
|
127
|
+
<details>
|
|
128
|
+
<summary><strong>Chutes AI</strong></summary>
|
|
108
129
|
|
|
109
|
-
|
|
130
|
+
Works automatically if OpenCode has Chutes configured. Alternatively, provide an API key:
|
|
110
131
|
|
|
111
132
|
```jsonc
|
|
112
133
|
{
|
|
@@ -125,64 +146,140 @@ Chutes works automatically if OpenCode has Chutes configured. Alternatively, you
|
|
|
125
146
|
}
|
|
126
147
|
```
|
|
127
148
|
|
|
128
|
-
|
|
149
|
+
</details>
|
|
129
150
|
|
|
130
|
-
|
|
151
|
+
<details>
|
|
152
|
+
<summary><strong>Google Antigravity</strong></summary>
|
|
131
153
|
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
1. Create a fine-grained PAT at GitHub with **Account permissions > Plan > Read**
|
|
135
|
-
2. Create `~/.config/opencode/copilot-quota-token.json`:
|
|
154
|
+
Requires the `opencode-antigravity-auth` plugin for multi-account support:
|
|
136
155
|
|
|
137
156
|
```json
|
|
138
157
|
{
|
|
139
|
-
"
|
|
140
|
-
"username": "your-username",
|
|
141
|
-
"tier": "pro"
|
|
158
|
+
"plugin": ["opencode-antigravity-auth", "@slkiser/opencode-quota"]
|
|
142
159
|
}
|
|
143
160
|
```
|
|
144
161
|
|
|
145
|
-
|
|
162
|
+
Account credentials are stored in `~/.config/opencode/antigravity-accounts.json`.
|
|
146
163
|
|
|
147
|
-
|
|
164
|
+
</details>
|
|
148
165
|
|
|
149
166
|
## Configuration Reference
|
|
150
167
|
|
|
151
168
|
All options go under `experimental.quotaToast` in `opencode.json`:
|
|
152
169
|
|
|
153
|
-
| Option | Default | Description
|
|
154
|
-
| ------------------- | ------------ |
|
|
155
|
-
| `enabled` | `true` | Enable/disable plugin
|
|
156
|
-
| `enableToast` | `true` | Show popup toasts
|
|
157
|
-
| `enabledProviders` | `
|
|
158
|
-
| `minIntervalMs` | `300000` |
|
|
159
|
-
| `toastDurationMs` | `9000` |
|
|
160
|
-
| `onlyCurrentModel` | `false` | Only show current model
|
|
161
|
-
| `showSessionTokens` | `true` | Show per-model input/output tokens in toast
|
|
162
|
-
| `googleModels` | `["CLAUDE"]` | Google models: `CLAUDE`, `G3PRO`, `G3FLASH`
|
|
163
|
-
| `debug` | `false` | Show debug info in toasts
|
|
170
|
+
| Option | Default | Description |
|
|
171
|
+
| ------------------- | ------------ | ----------------------------------------------- |
|
|
172
|
+
| `enabled` | `true` | Enable/disable plugin |
|
|
173
|
+
| `enableToast` | `true` | Show popup toasts |
|
|
174
|
+
| `enabledProviders` | `"auto"` | Provider IDs to query, or `"auto"` to detect |
|
|
175
|
+
| `minIntervalMs` | `300000` | Minimum ms between API fetches (default: 5 min) |
|
|
176
|
+
| `toastDurationMs` | `9000` | How long toasts display (ms) |
|
|
177
|
+
| `onlyCurrentModel` | `false` | Only show quota for the current model |
|
|
178
|
+
| `showSessionTokens` | `true` | Show per-model input/output tokens in toast |
|
|
179
|
+
| `googleModels` | `["CLAUDE"]` | Google models: `CLAUDE`, `G3PRO`, `G3FLASH` |
|
|
180
|
+
| `debug` | `false` | Show debug info in toasts |
|
|
181
|
+
|
|
182
|
+
## Troubleshooting
|
|
183
|
+
|
|
184
|
+
Toast not appearing? Run `/quota_status` to check config and provider availability.
|
|
185
|
+
|
|
186
|
+
---
|
|
164
187
|
|
|
165
|
-
|
|
188
|
+
<details id="llm-agent-installation-instructions">
|
|
189
|
+
<summary><strong>LLM Agent Installation Instructions</strong></summary>
|
|
166
190
|
|
|
167
|
-
|
|
191
|
+
### For LLM Agents: How to Install and Configure
|
|
192
|
+
|
|
193
|
+
This section provides instructions for LLM agents to install and configure `opencode-quota` based on the user's current OpenCode setup.
|
|
194
|
+
|
|
195
|
+
#### Step 1: Check Current Configuration
|
|
196
|
+
|
|
197
|
+
First, determine what providers the user has connected. You can:
|
|
198
|
+
|
|
199
|
+
1. Read the user's `opencode.json` (typically at `~/.config/opencode/opencode.json`)
|
|
200
|
+
2. Run `/connected` in OpenCode to see active providers
|
|
201
|
+
3. Ask the user which providers they use
|
|
202
|
+
|
|
203
|
+
#### Step 2: Install the Plugin
|
|
204
|
+
|
|
205
|
+
Add the plugin to the user's `opencode.json`:
|
|
206
|
+
|
|
207
|
+
```json
|
|
208
|
+
{
|
|
209
|
+
"plugin": ["@slkiser/opencode-quota"]
|
|
210
|
+
}
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
If the user already has plugins, append to the existing array.
|
|
214
|
+
|
|
215
|
+
#### Step 3: Configure Providers (Optional)
|
|
216
|
+
|
|
217
|
+
By default, providers are auto-detected. If the user wants to restrict which providers are queried, add explicit `enabledProviders`:
|
|
168
218
|
|
|
169
219
|
```jsonc
|
|
170
220
|
{
|
|
171
|
-
"plugin": ["@slkiser/opencode-quota"],
|
|
172
221
|
"experimental": {
|
|
173
222
|
"quotaToast": {
|
|
174
|
-
"enabledProviders": [
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
223
|
+
"enabledProviders": [
|
|
224
|
+
// Add only the providers the user has configured:
|
|
225
|
+
// "copilot" - if using GitHub Copilot
|
|
226
|
+
// "openai" - if using OpenAI/ChatGPT
|
|
227
|
+
// "firmware" - if using Firmware AI
|
|
228
|
+
// "chutes" - if using Chutes AI
|
|
229
|
+
// "google-antigravity" - if using Google Antigravity (requires opencode-antigravity-auth)
|
|
230
|
+
],
|
|
178
231
|
},
|
|
179
232
|
},
|
|
180
233
|
}
|
|
181
234
|
```
|
|
182
235
|
|
|
183
|
-
|
|
236
|
+
#### Provider Detection Guide
|
|
184
237
|
|
|
185
|
-
|
|
238
|
+
| If user's config has... | Add to enabledProviders |
|
|
239
|
+
| ------------------------------------------- | ----------------------- |
|
|
240
|
+
| `github-copilot` provider or Copilot models | `"copilot"` |
|
|
241
|
+
| `openai` / `chatgpt` provider | `"openai"` |
|
|
242
|
+
| `firmware` / `firmware-ai` provider | `"firmware"` |
|
|
243
|
+
| `chutes` provider | `"chutes"` |
|
|
244
|
+
| `google` provider with antigravity models | `"google-antigravity"` |
|
|
245
|
+
| `opencode-antigravity-auth` in plugins | `"google-antigravity"` |
|
|
246
|
+
|
|
247
|
+
#### Example: Full Configuration
|
|
248
|
+
|
|
249
|
+
For a user with Copilot and Google Antigravity:
|
|
250
|
+
|
|
251
|
+
```jsonc
|
|
252
|
+
{
|
|
253
|
+
"plugin": [
|
|
254
|
+
"opencode-antigravity-auth", // Required for google-antigravity
|
|
255
|
+
"@slkiser/opencode-quota",
|
|
256
|
+
],
|
|
257
|
+
"experimental": {
|
|
258
|
+
"quotaToast": {
|
|
259
|
+
"enabledProviders": ["copilot", "google-antigravity"],
|
|
260
|
+
"googleModels": ["CLAUDE"], // Options: CLAUDE, G3PRO, G3FLASH
|
|
261
|
+
"minIntervalMs": 300000, // 5 minutes between fetches
|
|
262
|
+
"toastDurationMs": 9000, // Toast shows for 9 seconds
|
|
263
|
+
},
|
|
264
|
+
},
|
|
265
|
+
}
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
#### Step 4: Verify Installation
|
|
269
|
+
|
|
270
|
+
After configuration, instruct the user to:
|
|
271
|
+
|
|
272
|
+
1. Restart OpenCode (or reload the window)
|
|
273
|
+
2. Run `/quota_status` to verify providers are detected
|
|
274
|
+
3. Run `/quota` to manually trigger a toast
|
|
275
|
+
|
|
276
|
+
#### Common Issues
|
|
277
|
+
|
|
278
|
+
- **Toast not showing**: Run `/quota_status` to diagnose
|
|
279
|
+
- **Google Antigravity not working**: Ensure `opencode-antigravity-auth` plugin is installed and accounts are configured
|
|
280
|
+
- **Copilot quota unreliable**: Consider setting up a fine-grained PAT (see Provider-Specific Setup above)
|
|
281
|
+
|
|
282
|
+
</details>
|
|
186
283
|
|
|
187
284
|
## License
|
|
188
285
|
|
package/dist/lib/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAiB,MAAM,YAAY,CAAC;AASlE,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,KAAK,GAAG,OAAO,GAAG,UAAU,CAAC;IACrC,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wBAAgB,oBAAoB,IAAI,cAAc,CAErD;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAiB,MAAM,YAAY,CAAC;AASlE,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,KAAK,GAAG,OAAO,GAAG,UAAU,CAAC;IACrC,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wBAAgB,oBAAoB,IAAI,cAAc,CAErD;AAiCD;;;;;GAKG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE;IACN,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE;gBAAE,YAAY,CAAC,EAAE;oBAAE,UAAU,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;iBAAE,CAAA;aAAE,CAAA;SAAE,CAAC,CAAC;KAC9F,CAAC;CACH,EACD,IAAI,CAAC,EAAE,cAAc,GACpB,OAAO,CAAC,gBAAgB,CAAC,CAmL3B"}
|
package/dist/lib/config.js
CHANGED
|
@@ -19,6 +19,28 @@ export function createLoadConfigMeta() {
|
|
|
19
19
|
function isValidGoogleModelId(id) {
|
|
20
20
|
return typeof id === "string" && ["G3PRO", "G3FLASH", "CLAUDE", "G3IMAGE"].includes(id);
|
|
21
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* Normalize a provider ID for consistent matching.
|
|
24
|
+
* - Trims whitespace and lowercases
|
|
25
|
+
* - Maps known synonyms to canonical IDs
|
|
26
|
+
*/
|
|
27
|
+
function normalizeProviderId(id) {
|
|
28
|
+
const s = id.trim().toLowerCase();
|
|
29
|
+
switch (s) {
|
|
30
|
+
case "github-copilot":
|
|
31
|
+
case "copilot-chat":
|
|
32
|
+
case "github-copilot-chat":
|
|
33
|
+
return "copilot";
|
|
34
|
+
default:
|
|
35
|
+
return s;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Remove duplicates from an array while preserving order
|
|
40
|
+
*/
|
|
41
|
+
function dedupe(list) {
|
|
42
|
+
return [...new Set(list)];
|
|
43
|
+
}
|
|
22
44
|
/**
|
|
23
45
|
* Load plugin configuration from OpenCode config
|
|
24
46
|
*
|
|
@@ -43,9 +65,14 @@ export async function loadConfig(client, meta) {
|
|
|
43
65
|
? quotaToastConfig.minIntervalMs
|
|
44
66
|
: DEFAULT_CONFIG.minIntervalMs,
|
|
45
67
|
debug: typeof quotaToastConfig.debug === "boolean" ? quotaToastConfig.debug : DEFAULT_CONFIG.debug,
|
|
46
|
-
enabledProviders:
|
|
47
|
-
?
|
|
48
|
-
:
|
|
68
|
+
enabledProviders: quotaToastConfig.enabledProviders === "auto"
|
|
69
|
+
? "auto"
|
|
70
|
+
: Array.isArray(quotaToastConfig.enabledProviders)
|
|
71
|
+
? dedupe(quotaToastConfig.enabledProviders
|
|
72
|
+
.filter((p) => typeof p === "string")
|
|
73
|
+
.map(normalizeProviderId)
|
|
74
|
+
.filter(Boolean))
|
|
75
|
+
: DEFAULT_CONFIG.enabledProviders,
|
|
49
76
|
googleModels: Array.isArray(quotaToastConfig.googleModels)
|
|
50
77
|
? quotaToastConfig.googleModels.filter(isValidGoogleModelId)
|
|
51
78
|
: DEFAULT_CONFIG.googleModels,
|
|
@@ -84,7 +111,7 @@ export async function loadConfig(client, meta) {
|
|
|
84
111
|
: DEFAULT_CONFIG.layout.tinyAt,
|
|
85
112
|
},
|
|
86
113
|
};
|
|
87
|
-
// enabledProviders
|
|
114
|
+
// enabledProviders: "auto" means auto-detect; explicit array means user-specified.
|
|
88
115
|
// Ensure at least one Google model is configured
|
|
89
116
|
if (config.googleModels.length === 0) {
|
|
90
117
|
config.googleModels = DEFAULT_CONFIG.googleModels;
|
package/dist/lib/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAO5B,MAAM,UAAU,oBAAoB;IAClC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAAC,EAAW;IACvC,OAAO,OAAO,EAAE,KAAK,QAAQ,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC1F,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAIC,EACD,IAAqB;IAErB,SAAS,SAAS,CAChB,gBAA8D;QAE9D,IAAI,CAAC,gBAAgB;YAAE,OAAO,cAAc,CAAC;QAE7C,MAAM,MAAM,GAAqB;YAC/B,OAAO,EACL,OAAO,gBAAgB,CAAC,OAAO,KAAK,SAAS;gBAC3C,CAAC,CAAC,gBAAgB,CAAC,OAAO;gBAC1B,CAAC,CAAC,cAAc,CAAC,OAAO;YAE5B,WAAW,EACT,OAAO,gBAAgB,CAAC,WAAW,KAAK,SAAS;gBAC/C,CAAC,CAAC,gBAAgB,CAAC,WAAW;gBAC9B,CAAC,CAAC,cAAc,CAAC,WAAW;YAEhC,UAAU,EACR,gBAAgB,CAAC,UAAU,KAAK,SAAS,IAAI,gBAAgB,CAAC,UAAU,KAAK,SAAS;gBACpF,CAAC,CAAC,gBAAgB,CAAC,UAAU;gBAC7B,CAAC,CAAC,cAAc,CAAC,UAAU;YAC/B,aAAa,EACX,OAAO,gBAAgB,CAAC,aAAa,KAAK,QAAQ,IAAI,gBAAgB,CAAC,aAAa,GAAG,CAAC;gBACtF,CAAC,CAAC,gBAAgB,CAAC,aAAa;gBAChC,CAAC,CAAC,cAAc,CAAC,aAAa;YAElC,KAAK,EACH,OAAO,gBAAgB,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK;YAE7F,gBAAgB,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAO5B,MAAM,UAAU,oBAAoB;IAClC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAAC,EAAW;IACvC,OAAO,OAAO,EAAE,KAAK,QAAQ,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC1F,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,EAAU;IACrC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC;QACV,KAAK,gBAAgB,CAAC;QACtB,KAAK,cAAc,CAAC;QACpB,KAAK,qBAAqB;YACxB,OAAO,SAAS,CAAC;QACnB;YACE,OAAO,CAAC,CAAC;IACb,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,MAAM,CAAI,IAAS;IAC1B,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AAC5B,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAIC,EACD,IAAqB;IAErB,SAAS,SAAS,CAChB,gBAA8D;QAE9D,IAAI,CAAC,gBAAgB;YAAE,OAAO,cAAc,CAAC;QAE7C,MAAM,MAAM,GAAqB;YAC/B,OAAO,EACL,OAAO,gBAAgB,CAAC,OAAO,KAAK,SAAS;gBAC3C,CAAC,CAAC,gBAAgB,CAAC,OAAO;gBAC1B,CAAC,CAAC,cAAc,CAAC,OAAO;YAE5B,WAAW,EACT,OAAO,gBAAgB,CAAC,WAAW,KAAK,SAAS;gBAC/C,CAAC,CAAC,gBAAgB,CAAC,WAAW;gBAC9B,CAAC,CAAC,cAAc,CAAC,WAAW;YAEhC,UAAU,EACR,gBAAgB,CAAC,UAAU,KAAK,SAAS,IAAI,gBAAgB,CAAC,UAAU,KAAK,SAAS;gBACpF,CAAC,CAAC,gBAAgB,CAAC,UAAU;gBAC7B,CAAC,CAAC,cAAc,CAAC,UAAU;YAC/B,aAAa,EACX,OAAO,gBAAgB,CAAC,aAAa,KAAK,QAAQ,IAAI,gBAAgB,CAAC,aAAa,GAAG,CAAC;gBACtF,CAAC,CAAC,gBAAgB,CAAC,aAAa;gBAChC,CAAC,CAAC,cAAc,CAAC,aAAa;YAElC,KAAK,EACH,OAAO,gBAAgB,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK;YAE7F,gBAAgB,EACd,gBAAgB,CAAC,gBAAgB,KAAK,MAAM;gBAC1C,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;oBAChD,CAAC,CAAC,MAAM,CACJ,gBAAgB,CAAC,gBAAgB;yBAC9B,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;yBACjD,GAAG,CAAC,mBAAmB,CAAC;yBACxB,MAAM,CAAC,OAAO,CAAC,CACnB;oBACH,CAAC,CAAC,cAAc,CAAC,gBAAgB;YACvC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,YAAY,CAAC;gBACxD,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,MAAM,CAAC,oBAAoB,CAAC;gBAC5D,CAAC,CAAC,cAAc,CAAC,YAAY;YAC/B,UAAU,EACR,OAAO,gBAAgB,CAAC,UAAU,KAAK,SAAS;gBAC9C,CAAC,CAAC,gBAAgB,CAAC,UAAU;gBAC7B,CAAC,CAAC,cAAc,CAAC,UAAU;YAC/B,cAAc,EACZ,OAAO,gBAAgB,CAAC,cAAc,KAAK,SAAS;gBAClD,CAAC,CAAC,gBAAgB,CAAC,cAAc;gBACjC,CAAC,CAAC,cAAc,CAAC,cAAc;YACnC,aAAa,EACX,OAAO,gBAAgB,CAAC,aAAa,KAAK,SAAS;gBACjD,CAAC,CAAC,gBAAgB,CAAC,aAAa;gBAChC,CAAC,CAAC,cAAc,CAAC,aAAa;YAClC,cAAc,EACZ,OAAO,gBAAgB,CAAC,cAAc,KAAK,SAAS;gBAClD,CAAC,CAAC,gBAAgB,CAAC,cAAc;gBACjC,CAAC,CAAC,cAAc,CAAC,cAAc;YACnC,eAAe,EACb,OAAO,gBAAgB,CAAC,eAAe,KAAK,QAAQ,IAAI,gBAAgB,CAAC,eAAe,GAAG,CAAC;gBAC1F,CAAC,CAAC,gBAAgB,CAAC,eAAe;gBAClC,CAAC,CAAC,cAAc,CAAC,eAAe;YACpC,gBAAgB,EACd,OAAO,gBAAgB,CAAC,gBAAgB,KAAK,SAAS;gBACpD,CAAC,CAAC,gBAAgB,CAAC,gBAAgB;gBACnC,CAAC,CAAC,cAAc,CAAC,gBAAgB;YACrC,iBAAiB,EACf,OAAO,gBAAgB,CAAC,iBAAiB,KAAK,SAAS;gBACrD,CAAC,CAAC,gBAAgB,CAAC,iBAAiB;gBACpC,CAAC,CAAC,cAAc,CAAC,iBAAiB;YACtC,MAAM,EAAE;gBACN,QAAQ,EACN,OAAO,gBAAgB,CAAC,MAAM,EAAE,QAAQ,KAAK,QAAQ;oBACrD,gBAAgB,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC;oBAClC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ;oBAClC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ;gBACpC,QAAQ,EACN,OAAO,gBAAgB,CAAC,MAAM,EAAE,QAAQ,KAAK,QAAQ;oBACrD,gBAAgB,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC;oBAClC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ;oBAClC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ;gBACpC,MAAM,EACJ,OAAO,gBAAgB,CAAC,MAAM,EAAE,MAAM,KAAK,QAAQ,IAAI,gBAAgB,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;oBACvF,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM;oBAChC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM;aACnC;SACF,CAAC;QAEF,mFAAmF;QAEnF,iDAAiD;QACjD,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrC,MAAM,CAAC,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC;QACpD,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,UAAU,QAAQ,CAAC,IAAY;QAClC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC9C,sDAAsD;YACtD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACxC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAC/D,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAY,CAAC;QACxC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,UAAU,aAAa;QAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;QAEhF,6CAA6C;QAC7C,sFAAsF;QACtF,MAAM,UAAU,GAAG;YACjB,IAAI,CAAC,aAAa,EAAE,UAAU,EAAE,gBAAgB,CAAC;YACjD,IAAI,CAAC,aAAa,EAAE,UAAU,EAAE,eAAe,CAAC;YAChD,IAAI,CAAC,GAAG,EAAE,gBAAgB,CAAC;YAC3B,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC;SAC3B,CAAC;QAEF,MAAM,KAAK,GAA8B,EAAE,CAAC;QAC5C,MAAM,SAAS,GAAa,EAAE,CAAC;QAE/B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;gBAAE,SAAS;YAC7B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;gBAAE,SAAS;YAEpD,MAAM,IAAI,GAAG,MAAa,CAAC;YAE3B,MAAM,KAAK,GAA2C;gBACpD,EAAE,GAAG,EAAE,yBAAyB,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE;aAC1E,CAAC;YAEF,MAAM,QAAQ,GAAa,EAAE,CAAC;YAC9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;oBAAE,SAAS;gBAC5D,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1B,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAED,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC;YAC1D,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACzB,CAAC;QAED,OAAO,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAE3C,2EAA2E;QAC3E,gEAAgE;QAChE,MAAM,gBAAgB,GAAI,QAAQ,CAAC,IAAY,EAAE,YAAY,EAAE,UAElD,CAAC;QAEd,IAAI,gBAAgB,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EAAE,CAAC;YAC7D,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;gBACpB,IAAI,CAAC,KAAK,GAAG,CAAC,mBAAmB,CAAC,CAAC;YACrC,CAAC;YACD,OAAO,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,MAAM,aAAa,EAAE,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,aAAa,EAAE,CAAC;IAC/B,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilot.d.ts","sourceRoot":"","sources":["../../src/lib/copilot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAOV,aAAa,EACd,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"copilot.d.ts","sourceRoot":"","sources":["../../src/lib/copilot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAOV,aAAa,EACd,MAAM,YAAY,CAAC;AAmRpB;;;;GAIG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,aAAa,CAAC,CA2DhE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAevE"}
|
package/dist/lib/copilot.js
CHANGED
|
@@ -53,10 +53,17 @@ function buildLegacyTokenHeaders(token) {
|
|
|
53
53
|
}
|
|
54
54
|
/**
|
|
55
55
|
* Read Copilot auth data from auth.json
|
|
56
|
+
*
|
|
57
|
+
* Tries multiple key names to handle different OpenCode versions/configs.
|
|
56
58
|
*/
|
|
57
59
|
async function readCopilotAuth() {
|
|
58
60
|
const authData = await readAuthFile();
|
|
59
|
-
|
|
61
|
+
if (!authData)
|
|
62
|
+
return null;
|
|
63
|
+
// Try known key names in priority order
|
|
64
|
+
const copilotAuth = authData["github-copilot"] ??
|
|
65
|
+
authData["copilot"] ??
|
|
66
|
+
authData["copilot-chat"];
|
|
60
67
|
if (!copilotAuth || copilotAuth.type !== "oauth" || !copilotAuth.refresh) {
|
|
61
68
|
return null;
|
|
62
69
|
}
|
package/dist/lib/copilot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilot.js","sourceRoot":"","sources":["../../src/lib/copilot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAWH,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,gFAAgF;AAChF,YAAY;AACZ,gFAAgF;AAEhF,MAAM,mBAAmB,GAAG,wBAAwB,CAAC;AACrD,MAAM,yBAAyB,GAAG,GAAG,mBAAmB,wBAAwB,CAAC;AACjF,MAAM,0BAA0B,GAAG,GAAG,mBAAmB,4BAA4B,CAAC;AAEtF,gFAAgF;AAChF,MAAM,eAAe,GAAG,QAAQ,CAAC;AACjC,MAAM,cAAc,GAAG,gBAAgB,CAAC;AACxC,MAAM,qBAAqB,GAAG,gBAAgB,eAAe,EAAE,CAAC;AAChE,MAAM,UAAU,GAAG,qBAAqB,eAAe,EAAE,CAAC;AAE1D,MAAM,yBAAyB,GAAG,IAAI,CACpC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,EACzD,UAAU,EACV,0BAA0B,CAC3B,CAAC;AAEF,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAEhF;;GAEG;AACH,MAAM,eAAe,GAA2B;IAC9C,YAAY,EAAE,UAAU;IACxB,gBAAgB,EAAE,cAAc;IAChC,uBAAuB,EAAE,qBAAqB;IAC9C,wBAAwB,EAAE,aAAa;CACxC,CAAC;AAEF,SAAS,kBAAkB,CAAC,KAAa;IACvC,OAAO;QACL,MAAM,EAAE,kBAAkB;QAC1B,aAAa,EAAE,UAAU,KAAK,EAAE;QAChC,GAAG,eAAe;KACnB,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAa;IAC5C,OAAO;QACL,MAAM,EAAE,kBAAkB;QAC1B,aAAa,EAAE,SAAS,KAAK,EAAE;QAC/B,GAAG,eAAe;KACnB,CAAC;AACJ,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"copilot.js","sourceRoot":"","sources":["../../src/lib/copilot.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/firmware.d.ts
CHANGED
|
@@ -5,12 +5,34 @@
|
|
|
5
5
|
* and queries: https://app.firmware.ai/api/v1/quota
|
|
6
6
|
*/
|
|
7
7
|
import type { QuotaError } from "./types.js";
|
|
8
|
+
/** Single window quota info */
|
|
9
|
+
export interface FirmwareWindowQuota {
|
|
10
|
+
percentRemaining: number;
|
|
11
|
+
resetTimeIso?: string;
|
|
12
|
+
}
|
|
8
13
|
export type FirmwareResult = {
|
|
9
14
|
success: true;
|
|
15
|
+
/** Back-compat: worst of 5h window and weekly (for classic toast) */
|
|
10
16
|
percentRemaining: number;
|
|
11
17
|
resetTimeIso?: string;
|
|
18
|
+
/** Individual windows for grouped display */
|
|
19
|
+
windows: {
|
|
20
|
+
window: FirmwareWindowQuota;
|
|
21
|
+
weekly: FirmwareWindowQuota;
|
|
22
|
+
};
|
|
23
|
+
/** Manual resets available this week (0-2) */
|
|
24
|
+
windowResetsRemaining: number;
|
|
25
|
+
} | QuotaError | null;
|
|
26
|
+
export type FirmwareResetWindowResult = {
|
|
27
|
+
success: true;
|
|
28
|
+
windowResetsRemaining?: number;
|
|
12
29
|
} | QuotaError | null;
|
|
13
30
|
export declare function hasFirmwareApiKeyConfigured(): Promise<boolean>;
|
|
14
31
|
export { getFirmwareKeyDiagnostics, type FirmwareKeySource } from "./firmware-config.js";
|
|
15
32
|
export declare function queryFirmwareQuota(): Promise<FirmwareResult>;
|
|
33
|
+
/**
|
|
34
|
+
* Manually reset the 5-hour spending window.
|
|
35
|
+
* Consumes one of the 2 weekly resets available.
|
|
36
|
+
*/
|
|
37
|
+
export declare function resetFirmwareQuotaWindow(): Promise<FirmwareResetWindowResult>;
|
|
16
38
|
//# sourceMappingURL=firmware.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firmware.d.ts","sourceRoot":"","sources":["../../src/lib/firmware.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"firmware.d.ts","sourceRoot":"","sources":["../../src/lib/firmware.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAkB7C,+BAA+B;AAC/B,MAAM,WAAW,mBAAmB;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AA6BD,MAAM,MAAM,cAAc,GACtB;IACE,OAAO,EAAE,IAAI,CAAC;IACd,qEAAqE;IACrE,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,OAAO,EAAE;QACP,MAAM,EAAE,mBAAmB,CAAC;QAC5B,MAAM,EAAE,mBAAmB,CAAC;KAC7B,CAAC;IACF,8CAA8C;IAC9C,qBAAqB,EAAE,MAAM,CAAC;CAC/B,GACD,UAAU,GACV,IAAI,CAAC;AAET,MAAM,MAAM,yBAAyB,GACjC;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,qBAAqB,CAAC,EAAE,MAAM,CAAA;CAAE,GACjD,UAAU,GACV,IAAI,CAAC;AAKT,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,OAAO,CAAC,CAEpE;AAED,OAAO,EAAE,yBAAyB,EAAE,KAAK,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzF,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,cAAc,CAAC,CA2ElE;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,yBAAyB,CAAC,CAsDnF"}
|