feat(provider): add MiMo Free no-auth provider

Bootstrap → JWT → chat flow with auto-retry. Inject the MiMoCode
system marker required to pass the upstream 403 anti-abuse gate,
derive JWT expiry from the exp claim, and use a stable per-machine
fingerprint as the bootstrap client.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Fadjrir Herlambang
2026-06-13 10:14:21 +07:00
committed by decolua
parent 0aaa5ab3c2
commit b40e96d0ef
8 changed files with 429 additions and 0 deletions

View File

@@ -17,4 +17,10 @@ export const FILTERS = {
models
.filter((m) => m.id?.endsWith("-free") || KNOWN_FREE_OPENCODE_MODELS.includes(m.id))
.map((m) => ({ id: m.id, name: m.id })),
// models.dev returns a large catalog; keep only mimo models
"mimo-free": (models) =>
(Array.isArray(models) ? models : [])
.filter((m) => m.id?.startsWith("mimo") || m.name?.toLowerCase().includes("mimo"))
.map((m) => ({ id: m.id, name: m.name || m.id })),
};