@kenkaiiii/ggcoder 5.61.1 → 5.62.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/dist/cli/auth.js
CHANGED
|
@@ -72,7 +72,7 @@ export async function runLogin() {
|
|
|
72
72
|
}
|
|
73
73
|
// Xiaomi splits API-key auth across two distinct endpoints: the Token Plan
|
|
74
74
|
// (default, current behavior) and API Credits (required for models like
|
|
75
|
-
// mimo-v2.
|
|
75
|
+
// mimo-v2.6-pro-ultraspeed that aren't served over the Token Plan).
|
|
76
76
|
let xiaomiCredits = false;
|
|
77
77
|
if (provider === "xiaomi") {
|
|
78
78
|
const choice = (await rl.question(chalk.hex("#60a5fa")("Use (1) Token Plan [default] or (2) API Credits (required for UltraSpeed)? "))).trim();
|
package/dist/cli.js
CHANGED
|
@@ -357,7 +357,7 @@ function main() {
|
|
|
357
357
|
if (p === "sakana")
|
|
358
358
|
return "fugu";
|
|
359
359
|
if (p === "xai")
|
|
360
|
-
return "grok-4.
|
|
360
|
+
return "grok-4.7";
|
|
361
361
|
return "claude-opus-5";
|
|
362
362
|
}
|
|
363
363
|
const model = saved.model ?? getHardcodedDefault(provider);
|
|
@@ -419,7 +419,7 @@ async function runInkTUI(opts) {
|
|
|
419
419
|
// fall back to whichever other provider actually resolved. Keyed by
|
|
420
420
|
// auth-storage key (not always the provider id) — e.g. Xiaomi splits into
|
|
421
421
|
// "xiaomi" (Token Plan) and "xiaomi-credits" (API Credits, required for
|
|
422
|
-
// mimo-v2.
|
|
422
|
+
// mimo-v2.6-pro-ultraspeed) since a user may hold either or both.
|
|
423
423
|
const credentialsByProvider = {};
|
|
424
424
|
const expiredProviders = [];
|
|
425
425
|
for (const p of loggedInProviders) {
|
|
@@ -458,7 +458,7 @@ async function runInkTUI(opts) {
|
|
|
458
458
|
// resolved: prefer the provider's default model, but for a provider like
|
|
459
459
|
// Xiaomi that splits credentials across models, fall back to whichever
|
|
460
460
|
// model's specific storage key DID resolve (e.g. a user who configured only
|
|
461
|
-
// API Credits, no Token Plan, must still land on mimo-v2.
|
|
461
|
+
// API Credits, no Token Plan, must still land on mimo-v2.6-pro-ultraspeed,
|
|
462
462
|
// not get treated as logged out of Xiaomi entirely).
|
|
463
463
|
const resolvedKeyFor = (p, modelId) => getAuthStorageKeys(p, modelId).find((key) => credentialsByProvider[key]);
|
|
464
464
|
const modelResolves = (p, modelId) => resolvedKeyFor(p, modelId) !== undefined;
|
|
@@ -475,7 +475,7 @@ async function runInkTUI(opts) {
|
|
|
475
475
|
let model = preferredModel;
|
|
476
476
|
if (!modelResolves(provider, model)) {
|
|
477
477
|
// Same provider, different model first — e.g. Xiaomi Credits-only users
|
|
478
|
-
// land on mimo-v2.
|
|
478
|
+
// land on mimo-v2.6-pro-ultraspeed instead of bouncing to another provider.
|
|
479
479
|
const sameProviderModel = resolvableModelFor(provider);
|
|
480
480
|
if (sameProviderModel) {
|
|
481
481
|
model = sameProviderModel;
|
|
@@ -869,7 +869,7 @@ async function runSessions() {
|
|
|
869
869
|
if (p === "sakana")
|
|
870
870
|
return "fugu";
|
|
871
871
|
if (p === "xai")
|
|
872
|
-
return "grok-4.
|
|
872
|
+
return "grok-4.7";
|
|
873
873
|
return "claude-opus-5";
|
|
874
874
|
}
|
|
875
875
|
const model = saved2.model ?? getDefault(provider);
|
|
@@ -882,8 +882,8 @@ export declare class AgentSession {
|
|
|
882
882
|
* Ordered auth-storage keys the current (provider, model) pair tries, first
|
|
883
883
|
* match wins. Almost always just the provider id; Xiaomi models can prefer
|
|
884
884
|
* one endpoint and fall back to another the user configured instead (e.g.
|
|
885
|
-
* `mimo-v2.
|
|
886
|
-
* API-only `mimo-v2.
|
|
885
|
+
* `mimo-v2.6-pro` prefers the Token Plan, falls back to API Credits; the
|
|
886
|
+
* API-only `mimo-v2.6-pro-ultraspeed` has no fallback).
|
|
887
887
|
*/
|
|
888
888
|
private currentAuthStorageKeys;
|
|
889
889
|
private getPromptCacheKey;
|
|
@@ -3567,8 +3567,8 @@ export class AgentSession {
|
|
|
3567
3567
|
* Ordered auth-storage keys the current (provider, model) pair tries, first
|
|
3568
3568
|
* match wins. Almost always just the provider id; Xiaomi models can prefer
|
|
3569
3569
|
* one endpoint and fall back to another the user configured instead (e.g.
|
|
3570
|
-
* `mimo-v2.
|
|
3571
|
-
* API-only `mimo-v2.
|
|
3570
|
+
* `mimo-v2.6-pro` prefers the Token Plan, falls back to API Credits; the
|
|
3571
|
+
* API-only `mimo-v2.6-pro-ultraspeed` has no fallback).
|
|
3572
3572
|
*/
|
|
3573
3573
|
currentAuthStorageKeys() {
|
|
3574
3574
|
return getAuthStorageKeys(this.provider, this.model);
|
|
@@ -31,7 +31,7 @@ export const AUTH_PROVIDERS = [
|
|
|
31
31
|
{
|
|
32
32
|
value: "xai",
|
|
33
33
|
label: "xAI (Grok)",
|
|
34
|
-
description: "Grok 4.
|
|
34
|
+
description: "Grok 4.7 · OAuth or API key",
|
|
35
35
|
methods: ["oauth", "apikey"],
|
|
36
36
|
apiKeyLabel: "xAI",
|
|
37
37
|
methodDetails: {
|
|
@@ -87,7 +87,7 @@ export const AUTH_PROVIDERS = [
|
|
|
87
87
|
{
|
|
88
88
|
value: "xiaomi",
|
|
89
89
|
label: "Xiaomi (MiMo)",
|
|
90
|
-
description: "MiMo-V2.
|
|
90
|
+
description: "MiMo-V2.6-Pro, MiMo-V2.6-Flash, MiMo-V2.6-Pro-UltraSpeed · Token Plan or API Credits",
|
|
91
91
|
methods: ["apikey"],
|
|
92
92
|
apiKeyLabel: "Xiaomi MiMo",
|
|
93
93
|
apiKeyBaseUrl: "https://token-plan-sgp.xiaomimimo.com/v1",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-providers.js","sourceRoot":"","sources":["../../src/core/auth-providers.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,gFAAgF;AAChF,6EAA6E;AAC7E,0EAA0E;AAE1E,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AA+D1E;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAuB;IAChD;QACE,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,WAAW;QAClB,WAAW,EAAE,+CAA+C;QAC5D,OAAO,EAAE,CAAC,OAAO,CAAC;KACnB;IACD;QACE,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,uDAAuD;QACpE,OAAO,EAAE,CAAC,OAAO,CAAC;KACnB;IACD;QACE,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,QAAQ;QACf,WAAW,EACT,2FAA2F;QAC7F,OAAO,EAAE,CAAC,OAAO,CAAC;KACnB;IACD;QACE,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"auth-providers.js","sourceRoot":"","sources":["../../src/core/auth-providers.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/App.js
CHANGED
|
@@ -379,8 +379,8 @@ export function App(props) {
|
|
|
379
379
|
const pendingActionConsumedRef = useRef(false);
|
|
380
380
|
// Derive credentials for the current provider + model. Almost always keyed
|
|
381
381
|
// by provider id, but a model can prefer one storage key and fall back to
|
|
382
|
-
// another (e.g. Xiaomi's mimo-v2.
|
|
383
|
-
// while mimo-v2.
|
|
382
|
+
// another (e.g. Xiaomi's mimo-v2.6-pro-ultraspeed is API-Credits-only,
|
|
383
|
+
// while mimo-v2.6-pro prefers the Token Plan but falls back to API Credits
|
|
384
384
|
// when only that's configured) — see getAuthStorageKeys().
|
|
385
385
|
const currentCreds = getAuthStorageKeys(currentProvider, currentModel)
|
|
386
386
|
.map((key) => props.credentialsByProvider?.[key])
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kenkaiiii/ggcoder",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.62.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "CLI coding agent with OAuth authentication for Anthropic, OpenAI, and Gemini",
|
|
6
6
|
"license": "MIT",
|
|
@@ -114,9 +114,9 @@
|
|
|
114
114
|
"typescript-language-server": "^5.3.0",
|
|
115
115
|
"wrap-ansi": "^10.0.0",
|
|
116
116
|
"zod": "^4.4.3",
|
|
117
|
-
"@kenkaiiii/gg-agent": "5.
|
|
118
|
-
"@kenkaiiii/gg-ai": "5.
|
|
119
|
-
"@kenkaiiii/gg-core": "5.
|
|
117
|
+
"@kenkaiiii/gg-agent": "5.62.0",
|
|
118
|
+
"@kenkaiiii/gg-ai": "5.62.0",
|
|
119
|
+
"@kenkaiiii/gg-core": "5.62.0"
|
|
120
120
|
},
|
|
121
121
|
"optionalDependencies": {
|
|
122
122
|
"@huggingface/transformers": "4.2.0",
|