From 78e341ccb980008379e5efb4c7f956903fbb041c Mon Sep 17 00:00:00 2001 From: Jason Date: Fri, 30 Jan 2026 15:39:55 +0800 Subject: [PATCH] feat(providers): add NVIDIA NIM preset for Claude and OpenCode - Add NVIDIA NIM provider preset with API configuration - Add nvidia.svg icon and register in icon system - Add nvidia metadata with keywords and default color (#74B71B) --- src/config/claudeProviderPresets.ts | 19 +++++++++++++++++++ src/config/opencodeProviderPresets.ts | 26 ++++++++++++++++++++++++++ src/icons/extracted/index.ts | 1 + src/icons/extracted/metadata.ts | 7 +++++++ src/icons/extracted/nvidia.svg | 1 + 5 files changed, 54 insertions(+) create mode 100644 src/icons/extracted/nvidia.svg diff --git a/src/config/claudeProviderPresets.ts b/src/config/claudeProviderPresets.ts index 0b117c4ac..6a3fa0145 100644 --- a/src/config/claudeProviderPresets.ts +++ b/src/config/claudeProviderPresets.ts @@ -484,6 +484,25 @@ export const providerPresets: ProviderPreset[] = [ icon: "openrouter", iconColor: "#6566F1", }, + { + name: "Nvidia", + websiteUrl: "https://build.nvidia.com", + apiKeyUrl: "https://build.nvidia.com/settings/api-keys", + settingsConfig: { + env: { + ANTHROPIC_BASE_URL: "https://integrate.api.nvidia.com", + ANTHROPIC_AUTH_TOKEN: "", + ANTHROPIC_MODEL: "moonshotai/kimi-k2.5", + ANTHROPIC_DEFAULT_HAIKU_MODEL: "moonshotai/kimi-k2.5", + ANTHROPIC_DEFAULT_SONNET_MODEL: "moonshotai/kimi-k2.5", + ANTHROPIC_DEFAULT_OPUS_MODEL: "moonshotai/kimi-k2.5", + }, + }, + category: "aggregator", + apiFormat: "openai_chat", + icon: "nvidia", + iconColor: "#000000", + }, { name: "Xiaomi MiMo", websiteUrl: "https://platform.xiaomimimo.com", diff --git a/src/config/opencodeProviderPresets.ts b/src/config/opencodeProviderPresets.ts index 7dd3d6337..7946c5557 100644 --- a/src/config/opencodeProviderPresets.ts +++ b/src/config/opencodeProviderPresets.ts @@ -558,6 +558,32 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [ }, }, }, + { + name: "Nvidia", + websiteUrl: "https://build.nvidia.com", + apiKeyUrl: "https://build.nvidia.com/settings/api-keys", + settingsConfig: { + npm: "@ai-sdk/openai-compatible", + name: "Nvidia", + options: { + baseURL: "https://integrate.api.nvidia.com/v1", + apiKey: "", + }, + models: { + "moonshotai/kimi-k2.5": { name: "Kimi K2.5" }, + }, + }, + category: "aggregator", + icon: "nvidia", + iconColor: "#000000", + templateValues: { + apiKey: { + label: "API Key", + placeholder: "", + editorValue: "", + }, + }, + }, // ========== 第三方合作伙伴 ========== { diff --git a/src/icons/extracted/index.ts b/src/icons/extracted/index.ts index 2e451d36f..a2afa85e5 100644 --- a/src/icons/extracted/index.ts +++ b/src/icons/extracted/index.ts @@ -58,6 +58,7 @@ export const icons: Record = { siliconflow: `SiliconCloud`, catcoder: `KwaiKAT`, mcp: `ModelContextProtocol`, + nvidia: `Nvidia`, }; export const iconList = Object.keys(icons); diff --git a/src/icons/extracted/metadata.ts b/src/icons/extracted/metadata.ts index a8f678da9..4a79f2201 100644 --- a/src/icons/extracted/metadata.ts +++ b/src/icons/extracted/metadata.ts @@ -359,6 +359,13 @@ export const iconMetadata: Record = { keywords: ["xiaomimimo", "xiaomi", "mimo"], defaultColor: "#000000", }, + nvidia: { + name: "nvidia", + displayName: "NVIDIA", + category: "ai-provider", + keywords: ["nvidia", "nim", "gpu"], + defaultColor: "#74B71B", + }, }; export function getIconMetadata(name: string): IconMetadata | undefined { diff --git a/src/icons/extracted/nvidia.svg b/src/icons/extracted/nvidia.svg new file mode 100644 index 000000000..a9683c2e0 --- /dev/null +++ b/src/icons/extracted/nvidia.svg @@ -0,0 +1 @@ +Nvidia \ No newline at end of file