@slkiser/opencode-quota 4.1.0 → 4.2.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 +84 -28
- package/dist/lib/api-key-resolver.d.ts +73 -22
- package/dist/lib/api-key-resolver.d.ts.map +1 -1
- package/dist/lib/api-key-resolver.js +102 -15
- package/dist/lib/api-key-resolver.js.map +1 -1
- package/dist/lib/chutes-config.d.ts.map +1 -1
- package/dist/lib/chutes-config.js +2 -4
- package/dist/lib/chutes-config.js.map +1 -1
- package/dist/lib/copilot.d.ts.map +1 -1
- package/dist/lib/copilot.js +82 -31
- package/dist/lib/copilot.js.map +1 -1
- package/dist/lib/deepseek-auth.d.ts.map +1 -1
- package/dist/lib/deepseek-auth.js +3 -7
- package/dist/lib/deepseek-auth.js.map +1 -1
- package/dist/lib/entries.d.ts +7 -4
- package/dist/lib/entries.d.ts.map +1 -1
- package/dist/lib/glm-coding-plan.d.ts +18 -0
- package/dist/lib/glm-coding-plan.d.ts.map +1 -0
- package/dist/lib/glm-coding-plan.js +68 -0
- package/dist/lib/glm-coding-plan.js.map +1 -0
- package/dist/lib/google-agy-companion.d.ts +4 -25
- package/dist/lib/google-agy-companion.d.ts.map +1 -1
- package/dist/lib/google-agy-companion.js +47 -272
- package/dist/lib/google-agy-companion.js.map +1 -1
- package/dist/lib/google-agy.d.ts.map +1 -1
- package/dist/lib/google-agy.js +7 -25
- package/dist/lib/google-agy.js.map +1 -1
- package/dist/lib/google-antigravity-companion.d.ts +4 -25
- package/dist/lib/google-antigravity-companion.d.ts.map +1 -1
- package/dist/lib/google-antigravity-companion.js +44 -283
- package/dist/lib/google-antigravity-companion.js.map +1 -1
- package/dist/lib/google-companion-credentials.d.ts +70 -0
- package/dist/lib/google-companion-credentials.d.ts.map +1 -0
- package/dist/lib/google-companion-credentials.js +265 -0
- package/dist/lib/google-companion-credentials.js.map +1 -0
- package/dist/lib/google-gemini-cli-companion.d.ts +4 -25
- package/dist/lib/google-gemini-cli-companion.d.ts.map +1 -1
- package/dist/lib/google-gemini-cli-companion.js +47 -258
- package/dist/lib/google-gemini-cli-companion.js.map +1 -1
- package/dist/lib/google-gemini-cli.d.ts.map +1 -1
- package/dist/lib/google-gemini-cli.js +2 -20
- package/dist/lib/google-gemini-cli.js.map +1 -1
- package/dist/lib/google.d.ts.map +1 -1
- package/dist/lib/google.js +23 -45
- package/dist/lib/google.js.map +1 -1
- package/dist/lib/kimi-auth.d.ts +3 -26
- package/dist/lib/kimi-auth.d.ts.map +1 -1
- package/dist/lib/kimi-auth.js +24 -91
- package/dist/lib/kimi-auth.js.map +1 -1
- package/dist/lib/map-with-concurrency.d.ts +2 -0
- package/dist/lib/map-with-concurrency.d.ts.map +1 -0
- package/dist/lib/map-with-concurrency.js +17 -0
- package/dist/lib/map-with-concurrency.js.map +1 -0
- package/dist/lib/nanogpt-config.d.ts.map +1 -1
- package/dist/lib/nanogpt-config.js +2 -4
- package/dist/lib/nanogpt-config.js.map +1 -1
- package/dist/lib/openrouter.d.ts +13 -0
- package/dist/lib/openrouter.d.ts.map +1 -0
- package/dist/lib/openrouter.js +41 -0
- package/dist/lib/openrouter.js.map +1 -0
- package/dist/lib/provider-metadata.d.ts +11 -0
- package/dist/lib/provider-metadata.d.ts.map +1 -1
- package/dist/lib/provider-metadata.js +11 -0
- package/dist/lib/provider-metadata.js.map +1 -1
- package/dist/lib/quota-dialog-commands.d.ts.map +1 -1
- package/dist/lib/quota-dialog-commands.js +3 -10
- package/dist/lib/quota-dialog-commands.js.map +1 -1
- package/dist/lib/quota-providers-remote.d.ts +0 -1
- package/dist/lib/quota-providers-remote.d.ts.map +1 -1
- package/dist/lib/quota-providers-remote.js +3 -16
- package/dist/lib/quota-providers-remote.js.map +1 -1
- package/dist/lib/quota-render-data.d.ts.map +1 -1
- package/dist/lib/quota-render-data.js +17 -6
- package/dist/lib/quota-render-data.js.map +1 -1
- package/dist/lib/quota-status.d.ts +7 -17
- package/dist/lib/quota-status.d.ts.map +1 -1
- package/dist/lib/quota-status.js +116 -1036
- package/dist/lib/quota-status.js.map +1 -1
- package/dist/lib/synthetic-config.d.ts.map +1 -1
- package/dist/lib/synthetic-config.js +2 -4
- package/dist/lib/synthetic-config.js.map +1 -1
- package/dist/lib/types.d.ts +11 -1
- package/dist/lib/types.d.ts.map +1 -1
- package/dist/lib/types.js.map +1 -1
- package/dist/lib/zai-auth.d.ts +3 -26
- package/dist/lib/zai-auth.d.ts.map +1 -1
- package/dist/lib/zai-auth.js +24 -94
- package/dist/lib/zai-auth.js.map +1 -1
- package/dist/lib/zai.d.ts +1 -8
- package/dist/lib/zai.d.ts.map +1 -1
- package/dist/lib/zai.js +11 -97
- package/dist/lib/zai.js.map +1 -1
- package/dist/lib/zhipu-auth.d.ts +3 -26
- package/dist/lib/zhipu-auth.d.ts.map +1 -1
- package/dist/lib/zhipu-auth.js +24 -94
- package/dist/lib/zhipu-auth.js.map +1 -1
- package/dist/lib/zhipu.d.ts +1 -8
- package/dist/lib/zhipu.d.ts.map +1 -1
- package/dist/lib/zhipu.js +10 -89
- package/dist/lib/zhipu.js.map +1 -1
- package/dist/providers/alibaba-coding-plan.d.ts.map +1 -1
- package/dist/providers/alibaba-coding-plan.js +33 -6
- package/dist/providers/alibaba-coding-plan.js.map +1 -1
- package/dist/providers/anthropic.d.ts.map +1 -1
- package/dist/providers/anthropic.js +35 -7
- package/dist/providers/anthropic.js.map +1 -1
- package/dist/providers/chutes.d.ts.map +1 -1
- package/dist/providers/chutes.js +10 -3
- package/dist/providers/chutes.js.map +1 -1
- package/dist/providers/copilot.d.ts.map +1 -1
- package/dist/providers/copilot.js +79 -29
- package/dist/providers/copilot.js.map +1 -1
- package/dist/providers/cursor.d.ts.map +1 -1
- package/dist/providers/cursor.js +34 -6
- package/dist/providers/cursor.js.map +1 -1
- package/dist/providers/deepseek.d.ts.map +1 -1
- package/dist/providers/deepseek.js +10 -3
- package/dist/providers/deepseek.js.map +1 -1
- package/dist/providers/glm-coding-plan-provider.d.ts +9 -0
- package/dist/providers/glm-coding-plan-provider.d.ts.map +1 -1
- package/dist/providers/glm-coding-plan-provider.js +24 -2
- package/dist/providers/glm-coding-plan-provider.js.map +1 -1
- package/dist/providers/google-agy.d.ts.map +1 -1
- package/dist/providers/google-agy.js +23 -6
- package/dist/providers/google-agy.js.map +1 -1
- package/dist/providers/google-antigravity.d.ts.map +1 -1
- package/dist/providers/google-antigravity.js +31 -6
- package/dist/providers/google-antigravity.js.map +1 -1
- package/dist/providers/google-gemini-cli.d.ts.map +1 -1
- package/dist/providers/google-gemini-cli.js +24 -6
- package/dist/providers/google-gemini-cli.js.map +1 -1
- package/dist/providers/kimi-code.d.ts.map +1 -1
- package/dist/providers/kimi-code.js +27 -8
- package/dist/providers/kimi-code.js.map +1 -1
- package/dist/providers/mimo.d.ts.map +1 -1
- package/dist/providers/mimo.js +12 -5
- package/dist/providers/mimo.js.map +1 -1
- package/dist/providers/minimax-coding-plan.d.ts.map +1 -1
- package/dist/providers/minimax-coding-plan.js +37 -6
- package/dist/providers/minimax-coding-plan.js.map +1 -1
- package/dist/providers/nanogpt.d.ts.map +1 -1
- package/dist/providers/nanogpt.js +41 -4
- package/dist/providers/nanogpt.js.map +1 -1
- package/dist/providers/openai.d.ts.map +1 -1
- package/dist/providers/openai.js +20 -3
- package/dist/providers/openai.js.map +1 -1
- package/dist/providers/opencode-go.d.ts.map +1 -1
- package/dist/providers/opencode-go.js +33 -15
- package/dist/providers/opencode-go.js.map +1 -1
- package/dist/providers/opencode-zen.d.ts.map +1 -1
- package/dist/providers/opencode-zen.js +27 -22
- package/dist/providers/opencode-zen.js.map +1 -1
- package/dist/providers/openrouter.d.ts +6 -0
- package/dist/providers/openrouter.d.ts.map +1 -0
- package/dist/providers/openrouter.js +25 -0
- package/dist/providers/openrouter.js.map +1 -0
- package/dist/providers/quota-providers.js +2 -1
- package/dist/providers/quota-providers.js.map +1 -1
- package/dist/providers/qwen-code.d.ts.map +1 -1
- package/dist/providers/qwen-code.js +19 -5
- package/dist/providers/qwen-code.js.map +1 -1
- package/dist/providers/registry.d.ts.map +1 -1
- package/dist/providers/registry.js +2 -0
- package/dist/providers/registry.js.map +1 -1
- package/dist/providers/result-helpers.d.ts +29 -1
- package/dist/providers/result-helpers.d.ts.map +1 -1
- package/dist/providers/result-helpers.js +69 -0
- package/dist/providers/result-helpers.js.map +1 -1
- package/dist/providers/synthetic.d.ts.map +1 -1
- package/dist/providers/synthetic.js +10 -3
- package/dist/providers/synthetic.js.map +1 -1
- package/dist/providers/zai.d.ts.map +1 -1
- package/dist/providers/zai.js +2 -1
- package/dist/providers/zai.js.map +1 -1
- package/dist/providers/zhipu.d.ts.map +1 -1
- package/dist/providers/zhipu.js +2 -1
- package/dist/providers/zhipu.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -132,36 +132,90 @@ Use the CLI for scripts, CI, or a quick terminal check outside OpenCode.
|
|
|
132
132
|
|
|
133
133
|
### Pre-configured providers
|
|
134
134
|
|
|
135
|
-
Most providers work automatically. If a provider has a “Needs setup” link, open that setup note only if you use that provider.
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
|
143
|
-
|
|
|
144
|
-
|
|
|
145
|
-
|
|
|
146
|
-
|
|
|
147
|
-
|
|
|
148
|
-
|
|
|
149
|
-
|
|
|
150
|
-
|
|
|
151
|
-
|
|
|
152
|
-
|
|
|
153
|
-
|
|
|
154
|
-
|
|
|
155
|
-
|
|
|
156
|
-
|
|
|
157
|
-
| xAI SuperGrok
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
135
|
+
Most providers work automatically. If a provider has a “Needs setup” link, open that setup note only if you use that provider. Providers can appear in both audience sections when the vendor supports both.
|
|
136
|
+
|
|
137
|
+
### American providers
|
|
138
|
+
|
|
139
|
+
<details open>
|
|
140
|
+
<summary><strong>Personal</strong></summary>
|
|
141
|
+
|
|
142
|
+
| Provider | Auth/setup | Data from | Reports |
|
|
143
|
+
| ------------------ | ------------------------------------------------------------------------ | ------------------ | ------------------ |
|
|
144
|
+
| Anthropic (Claude) | [Needs setup](docs/readme/providers.md#anthropic-claude) | Local CLI/OAuth | Quota |
|
|
145
|
+
| Chutes AI | API key/config | Remote API | Quota |
|
|
146
|
+
| Cursor | [Needs setup](docs/readme/providers.md#cursor) | Local estimate | Budget and spend |
|
|
147
|
+
| GitHub Copilot | Automatic OAuth / [billing PAT](docs/readme/providers.md#github-copilot) | Remote API | Usage and budget |
|
|
148
|
+
| Google AGY | [Needs setup](docs/readme/providers.md#google-agy-quick-setup) | Remote API | Quota |
|
|
149
|
+
| Google Antigravity | [Needs setup](docs/readme/providers.md#google-antigravity) | Remote API | Quota |
|
|
150
|
+
| NanoGPT | API key/config | Remote API | Quota and balance |
|
|
151
|
+
| Ollama Cloud | [Needs setup](docs/readme/providers.md#ollama-cloud) | Dashboard scraping | Quota |
|
|
152
|
+
| OpenAI | Automatic | Remote API | Quota |
|
|
153
|
+
| OpenCode Go | [Needs setup](docs/readme/providers.md#opencode-go) | Dashboard scraping | Quota |
|
|
154
|
+
| OpenCode Zen | [Needs setup](docs/readme/providers.md#opencode-zen) | Dashboard scraping | Budget and balance |
|
|
155
|
+
| OpenRouter | Automatic | Remote API | Budget and spend |
|
|
156
|
+
| Synthetic | Automatic | Remote API | Quota |
|
|
157
|
+
| xAI SuperGrok | OpenCode OAuth (`/connect` xAI) | Remote API | Quota |
|
|
158
|
+
|
|
159
|
+
</details>
|
|
160
|
+
|
|
161
|
+
<details>
|
|
162
|
+
<summary><strong>Business / Enterprise</strong></summary>
|
|
163
|
+
|
|
164
|
+
| Provider | Auth/setup | Data from | Reports |
|
|
165
|
+
| ----------------------- | ------------------------------------------------------------------------ | ------------------ | ------------------ |
|
|
166
|
+
| Anthropic (Claude) | [Needs setup](docs/readme/providers.md#anthropic-claude) | Local CLI/OAuth | Quota |
|
|
167
|
+
| Chutes AI | API key/config | Remote API | Quota |
|
|
168
|
+
| Cursor | [Needs setup](docs/readme/providers.md#cursor) | Local estimate | Budget and spend |
|
|
169
|
+
| Gemini CLI (deprecated) | [Existing setups only](docs/readme/providers.md#gemini-cli) | Remote API | Quota |
|
|
170
|
+
| GitHub Copilot | Automatic OAuth / [billing PAT](docs/readme/providers.md#github-copilot) | Remote API | Usage and budget |
|
|
171
|
+
| Google AGY | [Needs setup](docs/readme/providers.md#google-agy-quick-setup) | Remote API | Quota |
|
|
172
|
+
| Google Antigravity | [Needs setup](docs/readme/providers.md#google-antigravity) | Remote API | Quota |
|
|
173
|
+
| NanoGPT | API key/config | Remote API | Quota and balance |
|
|
174
|
+
| OpenAI | Automatic | Remote API | Quota |
|
|
175
|
+
| OpenCode Zen | [Needs setup](docs/readme/providers.md#opencode-zen) | Dashboard scraping | Budget and balance |
|
|
176
|
+
| OpenRouter | Automatic | Remote API | Budget and spend |
|
|
177
|
+
| Synthetic | Automatic | Remote API | Quota |
|
|
178
|
+
| xAI SuperGrok | OpenCode OAuth (`/connect` xAI) | Remote API | Quota |
|
|
179
|
+
|
|
180
|
+
Business placement describes vendor plan availability. Except for configured Copilot organization/enterprise billing, current integrations generally report one signed-in account, seat, API key, or workspace.
|
|
162
181
|
|
|
163
182
|
Gemini CLI quota support is deprecated for new installs. Existing v4 configurations still work, with removal planned for v5.0.0. See the [provider guide](docs/readme/providers.md#gemini-cli) before choosing a replacement.
|
|
164
183
|
|
|
184
|
+
</details>
|
|
185
|
+
|
|
186
|
+
### Chinese providers
|
|
187
|
+
|
|
188
|
+
<details open>
|
|
189
|
+
<summary><strong>Personal</strong></summary>
|
|
190
|
+
|
|
191
|
+
| Provider | Auth/setup | Data from | Reports |
|
|
192
|
+
| ------------------------ | --------------------------------------------------- | -------------- | ------------------ |
|
|
193
|
+
| Alibaba Coding Plan | OpenCode config | Local estimate | Quota |
|
|
194
|
+
| DeepSeek | API key/config | Remote API | Balance and status |
|
|
195
|
+
| Kimi Code | OpenCode config | Remote API | Quota |
|
|
196
|
+
| MiniMax Coding Plan | OpenCode config | Remote API | Quota |
|
|
197
|
+
| MiniMax Coding Plan (CN) | OpenCode config | Remote API | Quota |
|
|
198
|
+
| Qwen Code | [Needs setup](docs/readme/providers.md#qwen-code) | Local estimate | Quota |
|
|
199
|
+
| Xiaomi MiMo | [Needs setup](docs/readme/providers.md#xiaomi-mimo) | Dashboard API | Quota and balance |
|
|
200
|
+
| Z.ai Coding Plan | OpenCode config | Remote API | Quota |
|
|
201
|
+
| Zhipu Coding Plan | OpenCode config | Remote API | Quota |
|
|
202
|
+
|
|
203
|
+
</details>
|
|
204
|
+
|
|
205
|
+
<details>
|
|
206
|
+
<summary><strong>Business / Team</strong></summary>
|
|
207
|
+
|
|
208
|
+
| Provider | Auth/setup | Data from | Reports |
|
|
209
|
+
| ------------------------ | --------------- | ---------- | ------- |
|
|
210
|
+
| Kimi Code | OpenCode config | Remote API | Quota |
|
|
211
|
+
| MiniMax Coding Plan | OpenCode config | Remote API | Quota |
|
|
212
|
+
| MiniMax Coding Plan (CN) | OpenCode config | Remote API | Quota |
|
|
213
|
+
| Zhipu Coding Plan | OpenCode config | Remote API | Quota |
|
|
214
|
+
|
|
215
|
+
These vendors offer team or business plans, but the current integrations report only the configured member API key rather than organization-wide usage.
|
|
216
|
+
|
|
217
|
+
</details>
|
|
218
|
+
|
|
165
219
|
The quota view uses short labels such as `Day quota`, `5h quota`, `Day budget`, and `Balance`. Bar width varies by surface. JSON keeps the precise accounting type for scripts.
|
|
166
220
|
|
|
167
221
|
### Custom providers
|
|
@@ -172,7 +226,9 @@ You can add a provider with an HTTPS quota API, or track a local usage estimate
|
|
|
172
226
|
npx @slkiser/opencode-quota@latest provider add
|
|
173
227
|
```
|
|
174
228
|
|
|
175
|
-
|
|
229
|
+
OpenRouter works automatically with the API key already configured in OpenCode. A custom OpenRouter definition remains available when you need a different endpoint or label.
|
|
230
|
+
|
|
231
|
+
For another API, choose the response format it uses: `quota-v1` for OpenCode Quota's standard response, `json-v1` to point to each value in a JSON response, or `openrouter-key-v1` for OpenRouter's key endpoint. The setup asks one question at a time, never asks for a response body or secret, and shows the complete config before saving.
|
|
176
232
|
|
|
177
233
|
Setup details live in the [Provider setup guide](docs/readme/providers.md#custom-providers).
|
|
178
234
|
|
|
@@ -74,25 +74,83 @@ export interface ResolveApiKeyConfig<Source extends string> extends ResolveEnvAn
|
|
|
74
74
|
/** Source label for auth.json */
|
|
75
75
|
authSource: Source;
|
|
76
76
|
}
|
|
77
|
-
|
|
78
|
-
|
|
77
|
+
/** Shared configuration for provider-specific API key resolution. */
|
|
78
|
+
export interface ResolveProviderApiKeyBaseConfig<Source extends string> {
|
|
79
79
|
envVars: EnvVarDef<Source>[];
|
|
80
|
-
/** Provider keys to inspect under provider.<key>.options.apiKey */
|
|
81
80
|
providerKeys: readonly string[];
|
|
82
|
-
/** Allowed env vars for {env:VAR_NAME} config values. */
|
|
83
81
|
allowedEnvVars?: readonly string[];
|
|
84
|
-
/** Source label for opencode.json */
|
|
85
82
|
configJsonSource: Source;
|
|
86
|
-
/** Source label for opencode.jsonc */
|
|
87
83
|
configJsoncSource: Source;
|
|
88
|
-
/** Candidate config file paths to trust for provider-secret lookup. */
|
|
89
84
|
getConfigCandidates?: () => ConfigCandidate[];
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
85
|
+
}
|
|
86
|
+
export interface StrictApiKeyAuthConfig<Source extends string> {
|
|
87
|
+
policy?: "strict-api-key";
|
|
88
|
+
readAuth: () => Promise<unknown | null>;
|
|
89
|
+
getAuthPaths?: () => string[];
|
|
90
|
+
authKeys?: readonly string[];
|
|
91
|
+
authSource: Source;
|
|
92
|
+
}
|
|
93
|
+
export interface InvalidAwareApiKeyAuthConfig<AuthSource extends string> {
|
|
94
|
+
policy: "invalid-aware-api-key";
|
|
95
|
+
readAuth: (maxAgeMs: number) => Promise<unknown | null>;
|
|
96
|
+
getAuthPaths: () => string[];
|
|
97
|
+
authKeys: readonly string[];
|
|
98
|
+
authSource: AuthSource;
|
|
99
|
+
displayName: string;
|
|
100
|
+
defaultMaxAgeMs: number;
|
|
101
|
+
}
|
|
102
|
+
/** Configuration for simple nullable API key resolution. */
|
|
103
|
+
export interface ResolveProviderApiKeyConfig<Source extends string> extends ResolveProviderApiKeyBaseConfig<Source> {
|
|
104
|
+
auth?: StrictApiKeyAuthConfig<Source>;
|
|
105
|
+
}
|
|
106
|
+
/** Configuration for providers that surface malformed winning auth.json entries. */
|
|
107
|
+
export interface ResolveInvalidAwareProviderApiKeyConfig<Source extends string, AuthSource extends Source> extends ResolveProviderApiKeyBaseConfig<Source> {
|
|
108
|
+
auth: InvalidAwareApiKeyAuthConfig<AuthSource>;
|
|
109
|
+
}
|
|
110
|
+
export type InvalidAwareAuthResult = {
|
|
111
|
+
state: "none";
|
|
112
|
+
} | {
|
|
113
|
+
state: "configured";
|
|
114
|
+
apiKey: string;
|
|
115
|
+
} | {
|
|
116
|
+
state: "invalid";
|
|
117
|
+
error: string;
|
|
118
|
+
};
|
|
119
|
+
export type InvalidAwareAuthDiagnostics<Source extends string, AuthSource extends Source> = {
|
|
120
|
+
state: "none";
|
|
121
|
+
source: null;
|
|
122
|
+
checkedPaths: string[];
|
|
123
|
+
authPaths: string[];
|
|
124
|
+
} | {
|
|
125
|
+
state: "configured";
|
|
126
|
+
source: Source;
|
|
127
|
+
checkedPaths: string[];
|
|
128
|
+
authPaths: string[];
|
|
129
|
+
} | {
|
|
130
|
+
state: "invalid";
|
|
131
|
+
source: AuthSource;
|
|
132
|
+
checkedPaths: string[];
|
|
133
|
+
authPaths: string[];
|
|
134
|
+
error: string;
|
|
135
|
+
};
|
|
136
|
+
export interface ProviderApiKeyResolver<Source extends string> {
|
|
137
|
+
resolve: () => Promise<ApiKeyResult<Source> | null>;
|
|
138
|
+
has: () => Promise<boolean>;
|
|
139
|
+
diagnostics: () => Promise<{
|
|
140
|
+
configured: boolean;
|
|
141
|
+
source: Source | null;
|
|
142
|
+
checkedPaths: string[];
|
|
143
|
+
authPaths: string[];
|
|
144
|
+
}>;
|
|
145
|
+
}
|
|
146
|
+
export interface InvalidAwareProviderApiKeyResolver<Source extends string, AuthSource extends Source> {
|
|
147
|
+
parseAuth: (auth: unknown) => InvalidAwareAuthResult;
|
|
148
|
+
resolve: (params?: {
|
|
149
|
+
maxAgeMs?: number;
|
|
150
|
+
}) => Promise<InvalidAwareAuthResult>;
|
|
151
|
+
diagnostics: (params?: {
|
|
152
|
+
maxAgeMs?: number;
|
|
153
|
+
}) => Promise<InvalidAwareAuthDiagnostics<Source, AuthSource>>;
|
|
96
154
|
}
|
|
97
155
|
export interface ApiKeyCheckedPathsConfig {
|
|
98
156
|
/** Environment variable names to check */
|
|
@@ -104,15 +162,8 @@ export interface ApiKeyCheckedPathsConfig {
|
|
|
104
162
|
*/
|
|
105
163
|
getConfigCandidates?: () => ConfigCandidate[];
|
|
106
164
|
}
|
|
107
|
-
export declare function createProviderApiKeyResolver<Source extends string>(config:
|
|
108
|
-
|
|
109
|
-
has: () => Promise<boolean>;
|
|
110
|
-
diagnostics: () => Promise<{
|
|
111
|
-
configured: boolean;
|
|
112
|
-
source: Source | null;
|
|
113
|
-
checkedPaths: string[];
|
|
114
|
-
}>;
|
|
115
|
-
};
|
|
165
|
+
export declare function createProviderApiKeyResolver<Source extends string, AuthSource extends Source>(config: ResolveInvalidAwareProviderApiKeyConfig<Source, AuthSource>): InvalidAwareProviderApiKeyResolver<Source, AuthSource>;
|
|
166
|
+
export declare function createProviderApiKeyResolver<Source extends string>(config: ResolveProviderApiKeyConfig<Source>): ProviderApiKeyResolver<Source>;
|
|
116
167
|
/**
|
|
117
168
|
* Resolve an API key from trusted env vars and config files.
|
|
118
169
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-key-resolver.d.ts","sourceRoot":"","sources":["../../src/lib/api-key-resolver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"api-key-resolver.d.ts","sourceRoot":"","sources":["../../src/lib/api-key-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* to resolve API keys with consistent priority and behavior.
|
|
6
6
|
*/
|
|
7
7
|
import { existsSync } from "fs";
|
|
8
|
+
import { sanitizeDisplayText } from "./display-sanitize.js";
|
|
8
9
|
import { resolveEnvTemplate } from "./env-template.js";
|
|
9
10
|
import { getOpencodeRuntimeDirCandidates } from "./opencode-runtime-paths.js";
|
|
10
11
|
import { buildOpenCodeConfigCandidates, readOpenCodeConfigCandidate, } from "./opencode-config-read.js";
|
|
@@ -95,15 +96,110 @@ export function extractAuthApiKeyEntry(auth, authKeys) {
|
|
|
95
96
|
}
|
|
96
97
|
return null;
|
|
97
98
|
}
|
|
99
|
+
function buildProviderEnvAndConfig(config) {
|
|
100
|
+
return {
|
|
101
|
+
envVars: config.envVars,
|
|
102
|
+
extractFromConfig: (candidate) => extractProviderOptionsApiKey(candidate, {
|
|
103
|
+
providerKeys: config.providerKeys,
|
|
104
|
+
allowedEnvVars: config.allowedEnvVars,
|
|
105
|
+
}),
|
|
106
|
+
configJsonSource: config.configJsonSource,
|
|
107
|
+
configJsoncSource: config.configJsoncSource,
|
|
108
|
+
getConfigCandidates: config.getConfigCandidates,
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
function parseInvalidAwareAuth(auth, config) {
|
|
112
|
+
const entry = getFirstAuthEntryValue(auth, config.authKeys);
|
|
113
|
+
if (entry === null || entry === undefined)
|
|
114
|
+
return { state: "none" };
|
|
115
|
+
if (typeof entry !== "object") {
|
|
116
|
+
return { state: "invalid", error: `${config.displayName} auth entry has invalid shape` };
|
|
117
|
+
}
|
|
118
|
+
const record = entry;
|
|
119
|
+
if (typeof record.type !== "string") {
|
|
120
|
+
return {
|
|
121
|
+
state: "invalid",
|
|
122
|
+
error: `${config.displayName} auth entry present but type is missing or invalid`,
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
if (record.type !== "api") {
|
|
126
|
+
const sanitized = sanitizeDisplayText(record.type).replace(/\s+/g, " ").trim();
|
|
127
|
+
return {
|
|
128
|
+
state: "invalid",
|
|
129
|
+
error: `Unsupported ${config.displayName} auth type: "${(sanitized || "unknown").slice(0, 120)}"`,
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
const apiKey = typeof record.key === "string" ? record.key.trim() : "";
|
|
133
|
+
return apiKey
|
|
134
|
+
? { state: "configured", apiKey }
|
|
135
|
+
: {
|
|
136
|
+
state: "invalid",
|
|
137
|
+
error: `${config.displayName} auth entry present but key is empty`,
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
function createInvalidAwareProviderApiKeyResolver(config) {
|
|
141
|
+
const parseAuth = (auth) => parseInvalidAwareAuth(auth, config.auth);
|
|
142
|
+
const resolveWithSource = async (params) => {
|
|
143
|
+
const envOrConfig = await resolveApiKeyFromEnvAndConfig(buildProviderEnvAndConfig(config));
|
|
144
|
+
if (envOrConfig) {
|
|
145
|
+
return {
|
|
146
|
+
auth: { state: "configured", apiKey: envOrConfig.key },
|
|
147
|
+
source: envOrConfig.source,
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
const maxAgeMs = Math.max(0, params?.maxAgeMs ?? config.auth.defaultMaxAgeMs);
|
|
151
|
+
const auth = parseAuth(await config.auth.readAuth(maxAgeMs));
|
|
152
|
+
return {
|
|
153
|
+
auth,
|
|
154
|
+
source: auth.state === "none" ? null : config.auth.authSource,
|
|
155
|
+
};
|
|
156
|
+
};
|
|
157
|
+
return {
|
|
158
|
+
parseAuth,
|
|
159
|
+
resolve: async (params) => (await resolveWithSource(params)).auth,
|
|
160
|
+
diagnostics: async (params) => {
|
|
161
|
+
const { auth, source } = await resolveWithSource(params);
|
|
162
|
+
const paths = {
|
|
163
|
+
checkedPaths: getApiKeyCheckedPaths({
|
|
164
|
+
envVarNames: config.envVars.map((envVar) => envVar.name),
|
|
165
|
+
getConfigCandidates: config.getConfigCandidates,
|
|
166
|
+
}),
|
|
167
|
+
authPaths: config.auth.getAuthPaths(),
|
|
168
|
+
};
|
|
169
|
+
if (auth.state === "none")
|
|
170
|
+
return { state: "none", source: null, ...paths };
|
|
171
|
+
if (auth.state === "invalid") {
|
|
172
|
+
return {
|
|
173
|
+
state: "invalid",
|
|
174
|
+
source: config.auth.authSource,
|
|
175
|
+
error: auth.error,
|
|
176
|
+
...paths,
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
return {
|
|
180
|
+
state: "configured",
|
|
181
|
+
source: source ?? config.auth.authSource,
|
|
182
|
+
...paths,
|
|
183
|
+
};
|
|
184
|
+
},
|
|
185
|
+
};
|
|
186
|
+
}
|
|
98
187
|
export function createProviderApiKeyResolver(config) {
|
|
99
|
-
|
|
188
|
+
if (config.auth?.policy === "invalid-aware-api-key") {
|
|
189
|
+
return createInvalidAwareProviderApiKeyResolver(config);
|
|
190
|
+
}
|
|
191
|
+
const simpleConfig = config;
|
|
192
|
+
const resolve = () => resolveProviderApiKey(simpleConfig);
|
|
100
193
|
return {
|
|
101
194
|
resolve,
|
|
102
195
|
has: async () => (await resolve()) !== null,
|
|
103
|
-
diagnostics: () =>
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
196
|
+
diagnostics: async () => ({
|
|
197
|
+
...(await getApiKeyDiagnostics({
|
|
198
|
+
envVarNames: simpleConfig.envVars.map((envVar) => envVar.name),
|
|
199
|
+
resolve,
|
|
200
|
+
getConfigCandidates: simpleConfig.getConfigCandidates,
|
|
201
|
+
})),
|
|
202
|
+
authPaths: simpleConfig.auth?.getAuthPaths?.() ?? [],
|
|
107
203
|
}),
|
|
108
204
|
};
|
|
109
205
|
}
|
|
@@ -175,16 +271,7 @@ export async function resolveApiKey(config, readAuth) {
|
|
|
175
271
|
return null;
|
|
176
272
|
}
|
|
177
273
|
export async function resolveProviderApiKey(config) {
|
|
178
|
-
const envAndConfig =
|
|
179
|
-
envVars: config.envVars,
|
|
180
|
-
extractFromConfig: (candidate) => extractProviderOptionsApiKey(candidate, {
|
|
181
|
-
providerKeys: config.providerKeys,
|
|
182
|
-
allowedEnvVars: config.allowedEnvVars,
|
|
183
|
-
}),
|
|
184
|
-
configJsonSource: config.configJsonSource,
|
|
185
|
-
configJsoncSource: config.configJsoncSource,
|
|
186
|
-
getConfigCandidates: config.getConfigCandidates,
|
|
187
|
-
};
|
|
274
|
+
const envAndConfig = buildProviderEnvAndConfig(config);
|
|
188
275
|
if (!config.auth) {
|
|
189
276
|
return resolveApiKeyFromEnvAndConfig(envAndConfig);
|
|
190
277
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-key-resolver.js","sourceRoot":"","sources":["../../src/lib/api-key-resolver.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"api-key-resolver.js","sourceRoot":"","sources":["../../src/lib/api-key-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chutes-config.d.ts","sourceRoot":"","sources":["../../src/lib/chutes-config.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,eAAe,CAAC;CACzB;AAKD,MAAM,MAAM,eAAe,GACvB,oBAAoB,GACpB,eAAe,GACf,gBAAgB,GAChB,WAAW,CAAC;AAEhB,OAAO,EAAE,qCAAqC,IAAI,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"chutes-config.d.ts","sourceRoot":"","sources":["../../src/lib/chutes-config.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,eAAe,CAAC;CACzB;AAKD,MAAM,MAAM,eAAe,GACvB,oBAAoB,GACpB,eAAe,GACf,gBAAgB,GAChB,WAAW,CAAC;AAEhB,OAAO,EAAE,qCAAqC,IAAI,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;AAgBjH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAE9E;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC,CAExD;AAED,wBAAsB,uBAAuB,IAAI,OAAO,CAAC;IACvD,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;IAC/B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC,CAED"}
|
|
@@ -12,6 +12,7 @@ const chutesApiKeyResolver = createProviderApiKeyResolver({
|
|
|
12
12
|
getConfigCandidates: getGlobalOpencodeConfigCandidatePaths,
|
|
13
13
|
auth: {
|
|
14
14
|
readAuth: readAuthFile,
|
|
15
|
+
getAuthPaths,
|
|
15
16
|
authSource: "auth.json",
|
|
16
17
|
},
|
|
17
18
|
});
|
|
@@ -22,9 +23,6 @@ export async function hasChutesApiKey() {
|
|
|
22
23
|
return chutesApiKeyResolver.has();
|
|
23
24
|
}
|
|
24
25
|
export async function getChutesKeyDiagnostics() {
|
|
25
|
-
return
|
|
26
|
-
...(await chutesApiKeyResolver.diagnostics()),
|
|
27
|
-
authPaths: getAuthPaths(),
|
|
28
|
-
};
|
|
26
|
+
return chutesApiKeyResolver.diagnostics();
|
|
29
27
|
}
|
|
30
28
|
//# sourceMappingURL=chutes-config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chutes-config.js","sourceRoot":"","sources":["../../src/lib/chutes-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EACL,4BAA4B,EAC5B,qCAAqC,GACtC,MAAM,uBAAuB,CAAC;AAO/B,MAAM,uBAAuB,GAAG,CAAC,gBAAgB,CAAU,CAAC;AAC5D,MAAM,oBAAoB,GAAG,CAAC,QAAQ,CAAU,CAAC;AAQjD,OAAO,EAAE,qCAAqC,IAAI,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;AAEjH,MAAM,oBAAoB,GAAG,4BAA4B,CAAkB;IACzE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;IACnE,YAAY,EAAE,oBAAoB;IAClC,cAAc,EAAE,uBAAuB;IACvC,gBAAgB,EAAE,eAAe;IACjC,iBAAiB,EAAE,gBAAgB;IACnC,mBAAmB,EAAE,qCAAqC;IAC1D,IAAI,EAAE;QACJ,QAAQ,EAAE,YAAY;QACtB,UAAU,EAAE,WAAW;KACxB;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,OAAO,oBAAoB,CAAC,OAAO,EAAE,CAAC;AACxC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,OAAO,oBAAoB,CAAC,GAAG,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAM3C,OAAO
|
|
1
|
+
{"version":3,"file":"chutes-config.js","sourceRoot":"","sources":["../../src/lib/chutes-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EACL,4BAA4B,EAC5B,qCAAqC,GACtC,MAAM,uBAAuB,CAAC;AAO/B,MAAM,uBAAuB,GAAG,CAAC,gBAAgB,CAAU,CAAC;AAC5D,MAAM,oBAAoB,GAAG,CAAC,QAAQ,CAAU,CAAC;AAQjD,OAAO,EAAE,qCAAqC,IAAI,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;AAEjH,MAAM,oBAAoB,GAAG,4BAA4B,CAAkB;IACzE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;IACnE,YAAY,EAAE,oBAAoB;IAClC,cAAc,EAAE,uBAAuB;IACvC,gBAAgB,EAAE,eAAe;IACjC,iBAAiB,EAAE,gBAAgB;IACnC,mBAAmB,EAAE,qCAAqC;IAC1D,IAAI,EAAE;QACJ,QAAQ,EAAE,YAAY;QACtB,YAAY;QACZ,UAAU,EAAE,WAAW;KACxB;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,OAAO,oBAAoB,CAAC,OAAO,EAAE,CAAC;AACxC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,OAAO,oBAAoB,CAAC,GAAG,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAM3C,OAAO,oBAAoB,CAAC,WAAW,EAAE,CAAC;AAC5C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilot.d.ts","sourceRoot":"","sources":["../../src/lib/copilot.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EACV,QAAQ,EAER,mBAAmB,EAKnB,kBAAkB,EAElB,aAAa,EAGd,MAAM,YAAY,CAAC;AAYpB,KAAK,kBAAkB,GAAG,gBAAgB,GAAG,SAAS,GAAG,cAAc,GAAG,qBAAqB,CAAC;AAChG,KAAK,mBAAmB,GAAG,YAAY,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC;AAC1E,KAAK,0BAA0B,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;AAC3D,KAAK,eAAe,GAChB,sBAAsB,GACtB,mCAAmC,GACnC,oBAAoB,GACpB,uBAAuB,GACvB,MAAM,CAAC;AACX,KAAK,kBAAkB,GAAG,YAAY,GAAG,oBAAoB,GAAG,kBAAkB,GAAG,MAAM,CAAC;AAC5F,KAAK,2BAA2B,GAC5B,WAAW,GACX,gCAAgC,GAChC,8BAA8B,GAC9B,qCAAqC,GACrC,mCAAmC,GACnC,aAAa,CAAC;AAClB,KAAK,iBAAiB,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;AACvE,KAAK,2BAA2B,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;AAE5D,UAAU,kBAAkB;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AA6BD,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC;AAE7D,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,eAAe,CAAC;IACvB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACjC;AAED,MAAM,WAAW,2BAA2B;IAC1C,GAAG,EAAE,oBAAoB,CAAC;IAC1B,KAAK,EAAE;QACL,UAAU,EAAE,OAAO,CAAC;QACpB,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAAC;QACnC,eAAe,EAAE,OAAO,CAAC;QACzB,cAAc,EAAE,OAAO,CAAC;QACxB,gBAAgB,EAAE,OAAO,CAAC;KAC3B,CAAC;IACF,UAAU,EAAE,iBAAiB,CAAC;IAC9B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,oBAAoB,EAAE,2BAA2B,CAAC;IAClD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,0BAA0B,CAAC;IAC5C,QAAQ,EAAE,qBAAqB,GAAG,MAAM,CAAC;IACzC,QAAQ,EAAE,eAAe,CAAC;IAC1B,WAAW,EAAE,kBAAkB,CAAC;IAChC,YAAY,EAAE,MAAM,GAAG,cAAc,GAAG,YAAY,GAAG,MAAM,CAAC;IAC9D,sBAAsB,EAAE,OAAO,CAAC;IAChC,oBAAoB,EAAE,2BAA2B,CAAC;IAClD,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC,SAAS,EAAE,sBAAsB,GAAG,oBAAoB,GAAG,eAAe,CAAC;IAC3E,oBAAoB,EAChB,qCAAqC,GACrC,yBAAyB,GACzB,gBAAgB,CAAC;CACtB;
|
|
1
|
+
{"version":3,"file":"copilot.d.ts","sourceRoot":"","sources":["../../src/lib/copilot.ts"],"names":[],"mappings":"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"}
|