@prestyj/core 5.22.2 → 5.23.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/index.d.cts CHANGED
@@ -256,8 +256,8 @@ declare function providerStorageKeys(provider: string): string[];
256
256
  /**
257
257
  * Storage key for the Xiaomi API Credits credential (`https://api.xiaomimimo.com/v1`).
258
258
  * Kept distinct from the `xiaomi` Token Plan entry (`token-plan-sgp.xiaomimimo.com`)
259
- * so a user can configure BOTH — `mimo-v2.5-pro-ultraspeed` is API Credits-only,
260
- * while `mimo-v2.5-pro`/`mimo-v2.5` prefer the Token Plan but fall back to API
259
+ * so a user can configure BOTH — `mimo-v2.6-pro-ultraspeed` is API Credits-only,
260
+ * while `mimo-v2.6-pro`/`mimo-v2.6-flash` prefer the Token Plan but fall back to API
261
261
  * Credits when only that's configured. Which key(s) a model tries, and in what
262
262
  * order, is decided per-model via `getAuthStorageKeys()` in model-registry.ts.
263
263
  */
package/dist/index.d.ts CHANGED
@@ -256,8 +256,8 @@ declare function providerStorageKeys(provider: string): string[];
256
256
  /**
257
257
  * Storage key for the Xiaomi API Credits credential (`https://api.xiaomimimo.com/v1`).
258
258
  * Kept distinct from the `xiaomi` Token Plan entry (`token-plan-sgp.xiaomimimo.com`)
259
- * so a user can configure BOTH — `mimo-v2.5-pro-ultraspeed` is API Credits-only,
260
- * while `mimo-v2.5-pro`/`mimo-v2.5` prefer the Token Plan but fall back to API
259
+ * so a user can configure BOTH — `mimo-v2.6-pro-ultraspeed` is API Credits-only,
260
+ * while `mimo-v2.6-pro`/`mimo-v2.6-flash` prefer the Token Plan but fall back to API
261
261
  * Credits when only that's configured. Which key(s) a model tries, and in what
262
262
  * order, is decided per-model via `getAuthStorageKeys()` in model-registry.ts.
263
263
  */
package/dist/index.js CHANGED
@@ -54,7 +54,7 @@ import {
54
54
  registerRuntimeModels,
55
55
  usesOpenAICodexTransport,
56
56
  withFileLock
57
- } from "./chunk-Z3QR45IX.js";
57
+ } from "./chunk-SQLBQOQH.js";
58
58
  import {
59
59
  getAppPaths
60
60
  } from "./chunk-CRU3SSNX.js";
@@ -541,54 +541,71 @@ var MODELS = [
541
541
  maxThinkingLevel: "high"
542
542
  },
543
543
  // ── Xiaomi (MiMo) ──────────────────────────────────────
544
- // Pro series: text-only coding/agentic flagship. The legacy mimo-v2-pro
545
- // auto-routes to v2.5 on 2026-06-01 and is fully deprecated by 2026-06-30.
546
- {
547
- id: "mimo-v2.5-pro",
548
- name: "MiMo-V2.5-Pro",
544
+ // V2.6 series (2026-09) supersedes V2.5 one-for-one: pro → pro, the omni
545
+ // `mimo-v2.5` → flash, ultraspeed → ultraspeed. The whole series is now
546
+ // full-modality, so unlike V2.5-Pro the flagship no longer needs a separate
547
+ // omni sibling for attachments. V2.5 entries are retired here — a session
548
+ // that still has one saved falls back to the provider default on next start.
549
+ //
550
+ // Capabilities below are measured against the Token Plan host, not taken
551
+ // from marketing copy: image and video both come back with `image_tokens` /
552
+ // `video_tokens` in usage, and an oversized `max_tokens` is rejected with
553
+ // "supports at most 131072 completion tokens". A deliberately oversized
554
+ // prompt billed 1,048,570 tokens and was accepted, so the window is the
555
+ // binary 1M below (2^20) and not the decimal 1e6 V2.5 was listed with — the
556
+ // few-token gap is the chat envelope the server adds on top of the content.
557
+ {
558
+ id: "mimo-v2.6-pro",
559
+ name: "MiMo-V2.6-Pro",
549
560
  provider: "xiaomi",
550
- contextWindow: 1e6,
561
+ contextWindow: 1048576,
551
562
  maxOutputTokens: 131072,
552
563
  supportsThinking: true,
553
- supportsImages: false,
554
- supportsVideo: false,
564
+ supportsImages: true,
565
+ supportsVideo: true,
566
+ maxVideoBytes: 36 * 1024 * 1024,
555
567
  costTier: "medium",
556
568
  maxThinkingLevel: "high",
557
569
  authStorageKeys: ["xiaomi", XIAOMI_CREDITS_KEY]
558
570
  },
559
- // UltraSpeed: lower-latency sibling of the Pro coding flagship, same
560
- // text-only capability surface, premium-priced for the throughput gain.
561
- // API-only — not served over the Token Plan endpoint, so credentials
562
- // resolve from the distinct API Credits key only (see authStorageKeys doc).
571
+ // Flash: the cheap, high-frequency sibling at the same modality surface and
572
+ // window as Pro. It is the provider's `low` tier, so scout sub-agents and
573
+ // compaction summaries route here instead of paying Pro rates.
563
574
  {
564
- id: "mimo-v2.5-pro-ultraspeed",
565
- name: "MiMo-V2.5-Pro-UltraSpeed",
575
+ id: "mimo-v2.6-flash",
576
+ name: "MiMo-V2.6-Flash",
566
577
  provider: "xiaomi",
567
- contextWindow: 1e6,
578
+ contextWindow: 1048576,
568
579
  maxOutputTokens: 131072,
569
580
  supportsThinking: true,
570
- supportsImages: false,
571
- supportsVideo: false,
572
- costTier: "high",
581
+ supportsImages: true,
582
+ supportsVideo: true,
583
+ maxVideoBytes: 36 * 1024 * 1024,
584
+ costTier: "low",
573
585
  maxThinkingLevel: "high",
574
- authStorageKeys: [XIAOMI_CREDITS_KEY]
586
+ authStorageKeys: ["xiaomi", XIAOMI_CREDITS_KEY]
575
587
  },
576
- // Omni series: native full-modal understanding (image + audio + video).
577
- // Video/image ride the OpenAI-compatible transport as base64 data URLs
578
- // (`video_url`/`image_url`), which the shared transform already emits.
579
- {
580
- id: "mimo-v2.5",
581
- name: "MiMo-V2.5",
588
+ // UltraSpeed: Pro-grade quality at much lower latency, premium-priced for
589
+ // the throughput gain. API-only — not served over the Token Plan endpoint,
590
+ // so credentials resolve from the distinct API Credits key only (see the
591
+ // authStorageKeys doc). The Token Plan host rejects it with "Not supported
592
+ // model" — the known-model/wrong-host reply — where an invented id gets
593
+ // "Unsupported model", which is how this id was confirmed without a
594
+ // Credits key. Attachment support is inferred from the series announcement
595
+ // ("full modality across the series") rather than measured: images are
596
+ // enabled, video stays off until it can be verified on the platform host.
597
+ {
598
+ id: "mimo-v2.6-pro-ultraspeed",
599
+ name: "MiMo-V2.6-Pro-UltraSpeed",
582
600
  provider: "xiaomi",
583
- contextWindow: 1e6,
601
+ contextWindow: 1048576,
584
602
  maxOutputTokens: 131072,
585
603
  supportsThinking: true,
586
604
  supportsImages: true,
587
- supportsVideo: true,
588
- maxVideoBytes: 36 * 1024 * 1024,
589
- costTier: "medium",
605
+ supportsVideo: false,
606
+ costTier: "high",
590
607
  maxThinkingLevel: "high",
591
- authStorageKeys: ["xiaomi", XIAOMI_CREDITS_KEY]
608
+ authStorageKeys: [XIAOMI_CREDITS_KEY]
592
609
  },
593
610
  // ── DeepSeek ───────────────────────────────────────────
594
611
  {
@@ -724,7 +741,7 @@ function getVideoByteLimit(modelId) {
724
741
  return model.maxVideoBytes ?? DEFAULT_MAX_VIDEO_BYTES;
725
742
  }
726
743
  function getDefaultModel(provider) {
727
- if (provider === "xiaomi") return MODELS.find((m) => m.id === "mimo-v2.5-pro");
744
+ if (provider === "xiaomi") return MODELS.find((m) => m.id === "mimo-v2.6-pro");
728
745
  if (provider === "openai") return MODELS.find((m) => m.id === "gpt-5.6-sol");
729
746
  if (provider === "gemini") return MODELS.find((m) => m.id === "gemini-3.1-flash-lite");
730
747
  if (provider === "glm") return MODELS.find((m) => m.id === "glm-5.3");