refactor(open-sse): P3 provider registry — split into providers/registry/{id}.js

- 100 registry files: transport + models co-located per provider (Mongoose-style)
- providers/shared.js: shared Claude headers + OS/arch helpers (deduped)
- providers/models/helpers.js: withCodexReviewModels (kept dynamic)
- providers/index.js builds PROVIDERS + PROVIDER_MODELS = old API (content byte-for-byte)
- config/providers.js + providerModels.js → barrel re-export, keep accessors + runtime helpers
- Verified: PROVIDERS/MODELS/OAuth/alias byte-for-byte, golden translator tests pass, 0 new regression

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
decolua
2026-06-13 21:08:37 +07:00
co-authored by Cursor
parent 7134dd71db
commit 5a042840fd
108 changed files with 3918 additions and 1340 deletions
+79 -79
View File
@@ -135,97 +135,97 @@
"blackbox": "blackbox"
},
"idToAlias": {
"claude": "cc",
"gemini": "gemini",
"gemini-cli": "gc",
"codex": "cx",
"qwen": "qw",
"iflow": "if",
"qoder": "qd",
"antigravity": "ag",
"openrouter": "openrouter",
"openai": "openai",
"vercel-ai-gateway": "vercel-ai-gateway",
"glm": "glm",
"glm-cn": "glm-cn",
"kimi": "kimi",
"minimax": "minimax",
"minimax-cn": "minimax-cn",
"agentrouter": "agentrouter",
"ai21": "ai21",
"aimlapi": "aimlapi",
"alicode": "alicode",
"alicode-intl": "alicode-intl",
"volcengine-ark": "volcengine-ark",
"byteplus": "byteplus",
"github": "gh",
"kiro": "kr",
"cursor": "cu",
"kimi-coding": "kmc",
"kilocode": "kc",
"cline": "cl",
"nvidia": "nvidia",
"anthropic": "anthropic",
"deepseek": "deepseek",
"commandcode": "commandcode",
"groq": "groq",
"xai": "xai",
"mistral": "mistral",
"perplexity": "perplexity",
"together": "together",
"fireworks": "fireworks",
"cerebras": "cerebras",
"cohere": "cohere",
"nebius": "nebius",
"siliconflow": "siliconflow",
"hyperbolic": "hyperbolic",
"deepgram": "deepgram",
"antigravity": "ag",
"assemblyai": "assemblyai",
"nanobanana": "nanobanana",
"azure": "azure",
"baseten": "baseten",
"bazaarlink": "bazaarlink",
"blackbox": "blackbox",
"byteplus": "byteplus",
"bytez": "bytez",
"cerebras": "cerebras",
"chutes": "chutes",
"claude": "cc",
"cline": "cl",
"cloudflare-ai": "cloudflare-ai",
"codebuddy": "codebuddy",
"codex": "cx",
"cohere": "cohere",
"commandcode": "commandcode",
"completions": "completions",
"cursor": "cu",
"deepgram": "deepgram",
"deepinfra": "deepinfra",
"deepseek": "deepseek",
"enally": "enally",
"fireworks": "fireworks",
"freetheai": "freetheai",
"gemini": "gemini",
"gemini-cli": "gc",
"github": "gh",
"gitlab": "gitlab",
"glhf": "glhf",
"glm": "glm",
"glm-cn": "glm-cn",
"grok-web": "grok-web",
"groq": "groq",
"hyperbolic": "hyperbolic",
"iflow": "if",
"inference-net": "inference-net",
"kilocode": "kc",
"kimi": "kimi",
"kimi-coding": "kmc",
"kiro": "kr",
"kluster": "kluster",
"lepton": "lepton",
"llm7": "llm7",
"longcat": "longcat",
"mimo-free": "mmf",
"minimax": "minimax",
"minimax-cn": "minimax-cn",
"mistral": "mistral",
"mmf": "mmf",
"modal": "modal",
"morph": "morph",
"nanobanana": "nanobanana",
"nebius": "nebius",
"nlpcloud": "nlpcloud",
"nous-research": "nous-research",
"novita": "novita",
"nscale": "nscale",
"nvidia": "nvidia",
"ollama": "ollama",
"ollama-local": "ollama-local",
"vertex": "vertex",
"vertex-partner": "vertex-partner",
"gitlab": "gitlab",
"codebuddy": "codebuddy",
"openai": "openai",
"opencode": "oc",
"opencode-go": "opencode-go",
"grok-web": "grok-web",
"openrouter": "openrouter",
"perplexity": "perplexity",
"perplexity-web": "perplexity-web",
"azure": "azure",
"cloudflare-ai": "cloudflare-ai",
"xiaomi-mimo": "xiaomi-mimo",
"mimo-free": "mmf",
"mmf": "mmf",
"xiaomi-tokenplan": "xiaomi-tokenplan",
"agentrouter": "agentrouter",
"aimlapi": "aimlapi",
"novita": "novita",
"modal": "modal",
"reka": "reka",
"nlpcloud": "nlpcloud",
"bazaarlink": "bazaarlink",
"completions": "completions",
"enally": "enally",
"freetheai": "freetheai",
"llm7": "llm7",
"lepton": "lepton",
"kluster": "kluster",
"ai21": "ai21",
"inference-net": "inference-net",
"predibase": "predibase",
"bytez": "bytez",
"morph": "morph",
"longcat": "longcat",
"puter": "puter",
"uncloseai": "uncloseai",
"scaleway": "scaleway",
"deepinfra": "deepinfra",
"sambanova": "sambanova",
"nscale": "nscale",
"baseten": "baseten",
"publicai": "publicai",
"nous-research": "nous-research",
"glhf": "glhf",
"blackbox": "blackbox"
"puter": "puter",
"qoder": "qd",
"qwen": "qw",
"reka": "reka",
"sambanova": "sambanova",
"scaleway": "scaleway",
"siliconflow": "siliconflow",
"together": "together",
"uncloseai": "uncloseai",
"vercel-ai-gateway": "vercel-ai-gateway",
"vertex": "vertex",
"vertex-partner": "vertex-partner",
"volcengine-ark": "volcengine-ark",
"xai": "xai",
"xiaomi-mimo": "xiaomi-mimo",
"xiaomi-tokenplan": "xiaomi-tokenplan"
},
"modelKeys": [
"ag",