@nextclaw/runtime 0.4.19 → 0.4.20

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.js CHANGED
@@ -45,6 +45,7 @@ const dashscopeCodingPlanProviderSpec = {
45
45
  "dashscope-coding-plan/kimi-k2.6",
46
46
  "dashscope-coding-plan/kimi-k2.5"
47
47
  ],
48
+ modelDiscovery: false,
48
49
  modelConfig: {
49
50
  "dashscope-coding-plan/qwen3.7-plus": { vision: true },
50
51
  "dashscope-coding-plan/qwen3.7-max": { vision: true },
@@ -82,6 +83,7 @@ const kimiCodingProviderSpec = {
82
83
  detectByKeyPrefix: "",
83
84
  detectByBaseKeyword: "api.kimi.com/coding",
84
85
  defaultApiBase: "https://api.kimi.com/coding",
86
+ modelDiscovery: false,
85
87
  stripModelPrefix: false,
86
88
  modelOverrides: [],
87
89
  logo: "moonshot.png",
@@ -109,6 +111,12 @@ const opencodeZenProviderSpec = {
109
111
  anonymousApiKey: OPENCODE_ZEN_PUBLIC_API_KEY,
110
112
  defaultModels: [...OPENCODE_ZEN_FREE_MODELS],
111
113
  modelConfig: { ...OPENCODE_ZEN_MODEL_CONFIG },
114
+ modelDiscovery: {
115
+ kind: "models-dev",
116
+ url: "https://models.opencode.ai/api.json",
117
+ providerId: OPENCODE_ZEN_PROVIDER_ID,
118
+ freeOnly: true
119
+ },
112
120
  stripModelPrefix: false,
113
121
  modelOverrides: [],
114
122
  supportsWireApi: true,
@@ -150,6 +158,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
150
158
  "dashscope/qwen3.7-max",
151
159
  "dashscope/qwen3.5-27b"
152
160
  ],
161
+ modelDiscovery: { kind: "openai-compatible" },
153
162
  modelConfig: {
154
163
  "dashscope/qwen3.7-plus": { vision: true },
155
164
  "dashscope/qwen3.7-max": { vision: true },
@@ -189,6 +198,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
189
198
  "openrouter/openai/gpt-5.4",
190
199
  "openrouter/qwen/qwen3.7-plus"
191
200
  ],
201
+ modelDiscovery: { kind: "openai-compatible" },
192
202
  modelConfig: {
193
203
  "openrouter/minimax/minimax-m3": { vision: true },
194
204
  "openrouter/xiaomi/mimo-v2.5-pro": { vision: true },
@@ -231,6 +241,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
231
241
  "aihubmix/minimax-m3",
232
242
  "aihubmix/qwen3.7-plus"
233
243
  ],
244
+ modelDiscovery: { kind: "openai-compatible" },
234
245
  modelConfig: {
235
246
  "aihubmix/gpt-5.5": { vision: true },
236
247
  "aihubmix/gpt-5.4": { vision: true },
@@ -273,6 +284,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
273
284
  "anthropic/claude-opus-4-6": { vision: true },
274
285
  "anthropic/claude-sonnet-4-6": { vision: true }
275
286
  },
287
+ modelDiscovery: { kind: "anthropic" },
276
288
  stripModelPrefix: false,
277
289
  modelOverrides: [],
278
290
  logo: "anthropic.svg"
@@ -292,6 +304,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
292
304
  detectByBaseKeyword: "",
293
305
  defaultApiBase: "https://api.openai.com/v1",
294
306
  defaultModels: ["openai/gpt-5.5", "openai/gpt-5.4"],
307
+ modelDiscovery: { kind: "openai-compatible" },
295
308
  modelConfig: {
296
309
  "openai/gpt-5.5": { vision: true },
297
310
  "openai/gpt-5.4": { vision: true }
@@ -327,6 +340,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
327
340
  "deepseek/deepseek-v4-flash",
328
341
  "deepseek/deepseek-v4-pro"
329
342
  ],
343
+ modelDiscovery: { kind: "openai-compatible" },
330
344
  stripModelPrefix: false,
331
345
  modelOverrides: [],
332
346
  logo: "deepseek.png"
@@ -346,6 +360,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
346
360
  detectByBaseKeyword: "",
347
361
  defaultApiBase: "https://generativelanguage.googleapis.com/v1beta/openai",
348
362
  defaultModels: ["gemini/gemini-3.1-pro-preview", "gemini/gemini-3-flash-preview"],
363
+ modelDiscovery: false,
349
364
  modelConfig: {
350
365
  "gemini/gemini-3.1-pro-preview": { vision: true },
351
366
  "gemini/gemini-3-flash-preview": { vision: true }
@@ -378,6 +393,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
378
393
  detectByBaseKeyword: "",
379
394
  defaultApiBase: "https://open.bigmodel.cn/api/paas/v4",
380
395
  defaultModels: ["zai/glm-5.1", "zai/glm-5"],
396
+ modelDiscovery: false,
381
397
  stripModelPrefix: false,
382
398
  modelOverrides: [],
383
399
  logo: "zhipu.svg"
@@ -401,6 +417,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
401
417
  "dashscope/qwen3.7-max",
402
418
  "dashscope/qwen3.5-27b"
403
419
  ],
420
+ modelDiscovery: false,
404
421
  modelConfig: {
405
422
  "dashscope/qwen3.7-plus": { vision: true },
406
423
  "dashscope/qwen3.7-max": { vision: true },
@@ -428,6 +445,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
428
445
  detectByBaseKeyword: "portal.qwen.ai",
429
446
  defaultApiBase: "https://portal.qwen.ai/v1",
430
447
  defaultModels: ["qwen-portal/coder-model", "qwen-portal/vision-model"],
448
+ modelDiscovery: false,
431
449
  modelConfig: { "qwen-portal/vision-model": { vision: true } },
432
450
  stripModelPrefix: false,
433
451
  modelOverrides: [],
@@ -468,6 +486,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
468
486
  detectByBaseKeyword: "",
469
487
  defaultApiBase: "https://api.moonshot.ai/v1",
470
488
  defaultModels: ["moonshot/kimi-k2.6", "moonshot/kimi-k2.5"],
489
+ modelDiscovery: { kind: "openai-compatible" },
471
490
  modelConfig: {
472
491
  "moonshot/kimi-k2.6": { vision: true },
473
492
  "moonshot/kimi-k2.5": { vision: true }
@@ -495,6 +514,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
495
514
  "minimax/MiniMax-M2.7",
496
515
  "minimax/MiniMax-M2.7-highspeed"
497
516
  ],
517
+ modelDiscovery: { kind: "openai-compatible" },
498
518
  modelConfig: { "minimax/MiniMax-M3": { vision: true } },
499
519
  stripModelPrefix: false,
500
520
  modelOverrides: [],
@@ -530,6 +550,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
530
550
  "minimax-portal/MiniMax-M2.5",
531
551
  "minimax-portal/MiniMax-M2.5-highspeed"
532
552
  ],
553
+ modelDiscovery: false,
533
554
  modelConfig: { "minimax-portal/MiniMax-M3": { vision: true } },
534
555
  stripModelPrefix: false,
535
556
  modelOverrides: [],
@@ -596,6 +617,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
596
617
  detectByBaseKeyword: "xiaomimimo.com",
597
618
  defaultApiBase: "https://api.xiaomimimo.com/v1",
598
619
  defaultModels: ["mimo/mimo-v2.5-pro", "mimo/mimo-v2.5"],
620
+ modelDiscovery: false,
599
621
  modelConfig: { "mimo/mimo-v2.5": { vision: true } },
600
622
  stripModelPrefix: false,
601
623
  modelOverrides: [],
@@ -616,6 +638,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
616
638
  detectByBaseKeyword: "",
617
639
  defaultApiBase: "http://127.0.0.1:8000/v1",
618
640
  defaultModels: ["hosted_vllm/meta-llama/Llama-3.1-8B-Instruct", "hosted_vllm/Qwen/Qwen2.5-7B-Instruct"],
641
+ modelDiscovery: { kind: "openai-compatible" },
619
642
  stripModelPrefix: false,
620
643
  modelOverrides: [],
621
644
  logo: "vllm.svg"
@@ -635,6 +658,7 @@ const BUILTIN_PROVIDER_PLUGINS = [{
635
658
  detectByBaseKeyword: "",
636
659
  defaultApiBase: "https://api.groq.com/openai/v1",
637
660
  defaultModels: ["groq/openai/gpt-oss-120b", "groq/llama-3.1-8b-instant"],
661
+ modelDiscovery: { kind: "openai-compatible" },
638
662
  stripModelPrefix: false,
639
663
  modelOverrides: [],
640
664
  logo: "groq.svg"
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../src/channels/builtin-channel.config.ts","../src/providers/dashscope-coding-plan.provider.ts","../src/providers/kimi-coding.provider.ts","../src/providers/opencode-zen.provider.ts","../src/providers/builtin.provider.ts","../src/providers/builtin-provider-plugins.provider.ts","../src/providers/builtin-provider-registry.provider.ts"],"sourcesContent":["export const BUILTIN_CHANNEL_IDS = [\n \"telegram\",\n \"whatsapp\",\n \"discord\",\n \"feishu\",\n \"dingtalk\",\n \"wecom\",\n \"email\",\n \"slack\",\n \"qq\",\n \"weixin\"\n] as const;\n\nexport type BuiltinChannelId = (typeof BUILTIN_CHANNEL_IDS)[number];\n\nexport function isBuiltinChannelId(value: string): value is BuiltinChannelId {\n return BUILTIN_CHANNEL_IDS.includes(value as BuiltinChannelId);\n}\n","import type { ProviderSpec } from \"@nextclaw/core\";\n\nexport const dashscopeCodingPlanProviderSpec: ProviderSpec = {\n name: \"dashscope-coding-plan\",\n keywords: [\"dashscope-coding-plan\", \"coding-plan\"],\n envKey: \"DASHSCOPE_CODING_PLAN_API_KEY\",\n displayName: \"DashScope Coding Plan\",\n modelPrefix: \"dashscope-coding-plan\",\n litellmPrefix: \"dashscope-coding-plan\",\n skipPrefixes: [\"dashscope-coding-plan/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"sk-sp-\",\n detectByBaseKeyword: \"coding.dashscope.aliyuncs.com\",\n defaultApiBase: \"https://coding.dashscope.aliyuncs.com/v1\",\n defaultModels: [\n \"dashscope-coding-plan/qwen3.7-plus\",\n \"dashscope-coding-plan/qwen3.7-max\",\n \"dashscope-coding-plan/qwen3-max-2026-01-23\",\n \"dashscope-coding-plan/qwen3-coder-next\",\n \"dashscope-coding-plan/qwen3-coder-plus\",\n \"dashscope-coding-plan/MiniMax-M3\",\n \"dashscope-coding-plan/MiniMax-M2.5\",\n \"dashscope-coding-plan/glm-5.1\",\n \"dashscope-coding-plan/glm-5\",\n \"dashscope-coding-plan/glm-4.7\",\n \"dashscope-coding-plan/kimi-k2.6\",\n \"dashscope-coding-plan/kimi-k2.5\",\n ],\n modelConfig: {\n \"dashscope-coding-plan/qwen3.7-plus\": { vision: true },\n \"dashscope-coding-plan/qwen3.7-max\": { vision: true },\n \"dashscope-coding-plan/MiniMax-M3\": { vision: true },\n \"dashscope-coding-plan/kimi-k2.6\": { vision: true },\n \"dashscope-coding-plan/kimi-k2.5\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n supportsResponsesApi: false,\n logo: \"dashscope.png\",\n apiBaseHelp: {\n zh: \"Coding Plan 必须使用专属 Base URL https://coding.dashscope.aliyuncs.com/v1,并配合 sk-sp- 开头的专属 API Key;不要与普通 DashScope 按量计费 Key/Base URL 混用。\",\n en: \"Coding Plan must use the dedicated base URL https://coding.dashscope.aliyuncs.com/v1 together with an sk-sp- API key. Do not mix it with the regular DashScope pay-as-you-go key/base URL.\",\n },\n};\n","import type { ProviderSpec } from \"@nextclaw/core\";\n\nexport const kimiCodingProviderSpec: ProviderSpec = {\n name: \"kimi-coding\",\n keywords: [\"kimi-coding\", \"kimi-code\", \"kimi-for-coding\"],\n envKey: \"KIMI_CODING_API_KEY\",\n displayName: \"Kimi Coding\",\n apiProtocol: \"anthropic-messages\",\n modelPrefix: \"kimi-coding\",\n defaultModels: [\"kimi-coding/kimi-for-coding\"],\n defaultHeaders: {\n \"User-Agent\": \"claude-code/0.1.0\",\n },\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"api.kimi.com/coding\",\n defaultApiBase: \"https://api.kimi.com/coding\",\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"moonshot.png\",\n apiBaseHelp: {\n zh: \"Kimi Coding 需要使用专属 Base URL https://api.kimi.com/coding,并通过 Anthropic Messages 协议访问。\",\n en: \"Kimi Coding requires the dedicated base URL https://api.kimi.com/coding and uses the Anthropic Messages protocol.\",\n },\n};\n","import {\n OPENCODE_ZEN_API_BASE,\n OPENCODE_ZEN_FREE_MODELS,\n OPENCODE_ZEN_MODEL_CONFIG,\n OPENCODE_ZEN_PUBLIC_API_KEY,\n OPENCODE_ZEN_PROVIDER_ID,\n type ProviderSpec\n} from \"@nextclaw/core\";\n\nexport const opencodeZenProviderSpec: ProviderSpec = {\n name: OPENCODE_ZEN_PROVIDER_ID,\n keywords: [\"opencode\", \"big-pickle\"],\n envKey: \"OPENCODE_API_KEY\",\n displayName: \"OpenCode Zen Free Trial\",\n modelPrefix: OPENCODE_ZEN_PROVIDER_ID,\n litellmPrefix: OPENCODE_ZEN_PROVIDER_ID,\n skipPrefixes: [],\n envExtras: [],\n isGateway: true,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"opencode.ai/zen\",\n defaultApiBase: OPENCODE_ZEN_API_BASE,\n anonymousApiKey: OPENCODE_ZEN_PUBLIC_API_KEY,\n defaultModels: [...OPENCODE_ZEN_FREE_MODELS],\n modelConfig: { ...OPENCODE_ZEN_MODEL_CONFIG },\n stripModelPrefix: false,\n modelOverrides: [],\n supportsWireApi: true,\n wireApiOptions: [\"chat\"],\n defaultWireApi: \"chat\",\n supportsResponsesApi: false,\n apiBaseHelp: {\n zh: \"免费试用通过 OpenCode Zen 公共网关提供,限额和模型可能变化;请求数据可能被用于改进模型,请勿发送敏感或机密信息。\",\n en: \"Free trial access uses OpenCode Zen's public gateway. Limits and models may change, and request data may be used to improve models. Do not send sensitive or confidential information.\"\n }\n};\n","import type { ProviderCatalogPlugin } from \"@nextclaw/core\";\nimport { dashscopeCodingPlanProviderSpec } from \"./dashscope-coding-plan.provider.js\";\nimport { kimiCodingProviderSpec } from \"./kimi-coding.provider.js\";\nimport { opencodeZenProviderSpec } from \"./opencode-zen.provider.js\";\nexport const builtinProviderPlugin: ProviderCatalogPlugin = {\n id: \"builtin-runtime-providers\",\n providers: [\n {\n name: \"nextclaw\",\n keywords: [\"nextclaw\", \"dashscope/\", \"qwen3.7\", \"qwen3.5\", \"qwen\"],\n envKey: \"NEXTCLAW_API_KEY\",\n displayName: \"NextClaw Built-in\",\n modelPrefix: \"nextclaw\",\n litellmPrefix: \"nextclaw\",\n skipPrefixes: [],\n envExtras: [],\n isGateway: true,\n isLocal: false,\n detectByKeyPrefix: \"nc_free_\",\n detectByBaseKeyword: \"nextclaw.io\",\n defaultApiBase: \"https://ai-gateway-api.nextclaw.io/v1\",\n defaultModels: [\n \"dashscope/qwen3.7-plus\",\n \"dashscope/qwen3.7-max\",\n \"dashscope/qwen3.5-27b\",\n ],\n modelConfig: {\n \"dashscope/qwen3.7-plus\": { vision: true },\n \"dashscope/qwen3.7-max\": { vision: true },\n \"dashscope/qwen3.5-27b\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n },\n opencodeZenProviderSpec,\n {\n name: \"openrouter\",\n keywords: [\"openrouter\"],\n envKey: \"OPENROUTER_API_KEY\",\n displayName: \"OpenRouter\",\n modelPrefix: \"openrouter\",\n litellmPrefix: \"openrouter\",\n skipPrefixes: [],\n envExtras: [],\n isGateway: true,\n isLocal: false,\n detectByKeyPrefix: \"sk-or-\",\n detectByBaseKeyword: \"openrouter\",\n defaultApiBase: \"https://openrouter.ai/api/v1\",\n defaultModels: [\n \"openrouter/minimax/minimax-m3\",\n \"openrouter/xiaomi/mimo-v2.5-pro\",\n \"openrouter/xiaomi/mimo-v2.5\",\n \"openrouter/stepfun/step-3.5-flash:free\",\n \"openrouter/google/gemini-3-flash-preview\",\n \"openrouter/deepseek/deepseek-v3.2\",\n \"openrouter/x-ai/grok-4.1-fast\",\n \"openrouter/z-ai/glm-5.1\",\n \"openrouter/anthropic/claude-opus-4.8\",\n \"openrouter/anthropic/claude-opus-4.7\",\n \"openrouter/anthropic/claude-opus-4.6\",\n \"openrouter/openai/gpt-5.5\",\n \"openrouter/openai/gpt-5.4\",\n \"openrouter/qwen/qwen3.7-plus\",\n ],\n modelConfig: {\n \"openrouter/minimax/minimax-m3\": { vision: true },\n \"openrouter/xiaomi/mimo-v2.5-pro\": { vision: true },\n \"openrouter/xiaomi/mimo-v2.5\": { vision: true },\n \"openrouter/google/gemini-3-flash-preview\": { vision: true },\n \"openrouter/anthropic/claude-opus-4.8\": { vision: true },\n \"openrouter/anthropic/claude-opus-4.7\": { vision: true },\n \"openrouter/anthropic/claude-opus-4.6\": { vision: true },\n \"openrouter/openai/gpt-5.5\": { vision: true },\n \"openrouter/openai/gpt-5.4\": { vision: true },\n \"openrouter/qwen/qwen3.7-plus\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"openrouter.svg\",\n },\n {\n name: \"aihubmix\",\n keywords: [\"aihubmix\"],\n envKey: \"OPENAI_API_KEY\",\n displayName: \"AiHubMix\",\n modelPrefix: \"aihubmix\",\n litellmPrefix: \"openai\",\n skipPrefixes: [],\n envExtras: [],\n isGateway: true,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"aihubmix\",\n defaultApiBase: \"https://aihubmix.com/v1\",\n defaultModels: [\n \"aihubmix/gpt-5.5\",\n \"aihubmix/gpt-5.4\",\n \"aihubmix/claude-opus-4.8\",\n \"aihubmix/claude-opus-4.7\",\n \"aihubmix/claude-opus-4.6\",\n \"aihubmix/gemini-3.1-pro-preview\",\n \"aihubmix/kimi-k2.6\",\n \"aihubmix/kimi-k2.5\",\n \"aihubmix/minimax-m3\",\n \"aihubmix/qwen3.7-plus\",\n ],\n modelConfig: {\n \"aihubmix/gpt-5.5\": { vision: true },\n \"aihubmix/gpt-5.4\": { vision: true },\n \"aihubmix/claude-opus-4.8\": { vision: true },\n \"aihubmix/claude-opus-4.7\": { vision: true },\n \"aihubmix/claude-opus-4.6\": { vision: true },\n \"aihubmix/gemini-3.1-pro-preview\": { vision: true },\n \"aihubmix/kimi-k2.6\": { vision: true },\n \"aihubmix/kimi-k2.5\": { vision: true },\n \"aihubmix/minimax-m3\": { vision: true },\n \"aihubmix/qwen3.7-plus\": { vision: true },\n },\n stripModelPrefix: true,\n modelOverrides: [],\n logo: \"aihubmix.png\",\n },\n {\n name: \"anthropic\",\n keywords: [\"anthropic\", \"claude\"],\n envKey: \"ANTHROPIC_API_KEY\",\n displayName: \"Anthropic\",\n modelPrefix: \"anthropic\",\n litellmPrefix: \"anthropic\",\n skipPrefixes: [\"anthropic/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.anthropic.com\",\n defaultModels: [\n \"anthropic/claude-opus-4-8\",\n \"anthropic/claude-opus-4-7\",\n \"anthropic/claude-opus-4-6\",\n \"anthropic/claude-sonnet-4-6\",\n ],\n modelConfig: {\n \"anthropic/claude-opus-4-8\": { vision: true },\n \"anthropic/claude-opus-4-7\": { vision: true },\n \"anthropic/claude-opus-4-6\": { vision: true },\n \"anthropic/claude-sonnet-4-6\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"anthropic.svg\",\n },\n {\n name: \"openai\",\n keywords: [\"openai\", \"gpt\"],\n envKey: \"OPENAI_API_KEY\",\n displayName: \"OpenAI\",\n modelPrefix: \"openai\",\n litellmPrefix: \"openai\",\n skipPrefixes: [\"openai/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.openai.com/v1\",\n defaultModels: [\"openai/gpt-5.5\", \"openai/gpt-5.4\"],\n modelConfig: {\n \"openai/gpt-5.5\": { vision: true },\n \"openai/gpt-5.4\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n supportsWireApi: true,\n wireApiOptions: [\"auto\", \"chat\", \"responses\"],\n defaultWireApi: \"auto\",\n logo: \"openai.svg\",\n },\n {\n name: \"deepseek\",\n keywords: [\"deepseek\"],\n envKey: \"DEEPSEEK_API_KEY\",\n displayName: \"DeepSeek\",\n modelPrefix: \"deepseek\",\n litellmPrefix: \"deepseek\",\n skipPrefixes: [\"deepseek/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.deepseek.com\",\n defaultModels: [\n \"deepseek/deepseek-chat\",\n \"deepseek/deepseek-reasoner\",\n \"deepseek/deepseek-v4-flash\",\n \"deepseek/deepseek-v4-pro\",\n ],\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"deepseek.png\",\n },\n {\n name: \"gemini\",\n keywords: [\"gemini\"],\n envKey: \"GEMINI_API_KEY\",\n displayName: \"Gemini\",\n modelPrefix: \"gemini\",\n litellmPrefix: \"gemini\",\n skipPrefixes: [\"gemini/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://generativelanguage.googleapis.com/v1beta/openai\",\n defaultModels: [\n \"gemini/gemini-3.1-pro-preview\",\n \"gemini/gemini-3-flash-preview\",\n ],\n modelConfig: {\n \"gemini/gemini-3.1-pro-preview\": { vision: true },\n \"gemini/gemini-3-flash-preview\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"gemini.svg\",\n },\n {\n name: \"zhipu\",\n keywords: [\"zhipu\", \"glm\", \"zai\"],\n envKey: \"ZAI_API_KEY\",\n displayName: \"Zhipu AI\",\n modelPrefix: \"zai\",\n litellmPrefix: \"zai\",\n skipPrefixes: [\"zhipu/\", \"zai/\", \"openrouter/\", \"hosted_vllm/\"],\n envExtras: [[\"ZHIPUAI_API_KEY\", \"{api_key}\"]],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://open.bigmodel.cn/api/paas/v4\",\n defaultModels: [\"zai/glm-5.1\", \"zai/glm-5\"],\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"zhipu.svg\",\n },\n {\n name: \"dashscope\",\n keywords: [\"qwen\", \"dashscope\"],\n envKey: \"DASHSCOPE_API_KEY\",\n displayName: \"DashScope\",\n modelPrefix: \"dashscope\",\n litellmPrefix: \"dashscope\",\n skipPrefixes: [\"dashscope/\", \"openrouter/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n defaultModels: [\n \"dashscope/qwen3.7-plus\",\n \"dashscope/qwen3.7-max\",\n \"dashscope/qwen3.5-27b\",\n ],\n modelConfig: {\n \"dashscope/qwen3.7-plus\": { vision: true },\n \"dashscope/qwen3.7-max\": { vision: true },\n \"dashscope/qwen3.5-27b\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n supportsResponsesApi: false,\n logo: \"dashscope.png\",\n },\n dashscopeCodingPlanProviderSpec,\n kimiCodingProviderSpec,\n {\n name: \"qwen-portal\",\n keywords: [\"qwen-portal\", \"qwen\"],\n envKey: \"QWEN_PORTAL_TOKEN\",\n displayName: \"Qwen Portal\",\n modelPrefix: \"qwen-portal\",\n litellmPrefix: \"qwen-portal\",\n skipPrefixes: [\"qwen-portal/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"portal.qwen.ai\",\n defaultApiBase: \"https://portal.qwen.ai/v1\",\n defaultModels: [\"qwen-portal/coder-model\", \"qwen-portal/vision-model\"],\n modelConfig: { \"qwen-portal/vision-model\": { vision: true } },\n stripModelPrefix: false,\n modelOverrides: [],\n auth: {\n kind: \"device_code\",\n displayName: \"Qwen OAuth\",\n baseUrl: \"https://chat.qwen.ai\",\n deviceCodePath: \"/api/v1/oauth2/device/code\",\n tokenPath: \"/api/v1/oauth2/token\",\n clientId: \"f0304373b74a44d2b584a3fb70ca9e56\",\n scope: \"openid profile email model.completion\",\n grantType: \"urn:ietf:params:oauth:grant-type:device_code\",\n usePkce: true,\n cliCredential: {\n path: \"~/.qwen/oauth_creds.json\",\n accessTokenField: \"access_token\",\n refreshTokenField: \"refresh_token\",\n expiresAtField: \"expiry_date\",\n },\n note: {\n zh: \"通过浏览器登录 Qwen 后即可在 NextClaw 中使用该 Provider。\",\n en: \"Log in to Qwen in your browser, then use this provider in NextClaw.\",\n },\n },\n },\n {\n name: \"moonshot\",\n keywords: [\"moonshot\", \"kimi\"],\n envKey: \"MOONSHOT_API_KEY\",\n displayName: \"Kimi\",\n modelPrefix: \"moonshot\",\n litellmPrefix: \"moonshot\",\n skipPrefixes: [\"moonshot/\", \"openrouter/\"],\n envExtras: [[\"MOONSHOT_API_BASE\", \"{api_base}\"]],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.moonshot.ai/v1\",\n defaultModels: [\"moonshot/kimi-k2.6\", \"moonshot/kimi-k2.5\"],\n modelConfig: {\n \"moonshot/kimi-k2.6\": { vision: true },\n \"moonshot/kimi-k2.5\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"moonshot.png\",\n },\n {\n name: \"minimax\",\n keywords: [\"minimax\"],\n envKey: \"MINIMAX_API_KEY\",\n displayName: \"MiniMax\",\n modelPrefix: \"minimax\",\n litellmPrefix: \"minimax\",\n skipPrefixes: [\"minimax/\", \"openrouter/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.minimaxi.com/v1\",\n defaultModels: [\n \"minimax/MiniMax-M3\",\n \"minimax/MiniMax-M2.7\",\n \"minimax/MiniMax-M2.7-highspeed\",\n ],\n modelConfig: { \"minimax/MiniMax-M3\": { vision: true } },\n stripModelPrefix: false,\n modelOverrides: [],\n supportsWireApi: true,\n wireApiOptions: [\"auto\", \"chat\", \"responses\"],\n defaultWireApi: \"chat\",\n logo: \"minimax.svg\",\n apiBaseHelp: {\n zh: \"MiniMax 中国区请使用 https://api.minimaxi.com/v1;海外请使用 https://api.minimax.io/v1。AI Coding Tools 推荐使用 MiniMax-M3,并将 Wire API 设为 Chat。\",\n en: \"Use https://api.minimaxi.com/v1 for Mainland China accounts, and https://api.minimax.io/v1 for overseas accounts. For AI Coding Tools, prefer MiniMax-M3 with Wire API set to Chat.\",\n },\n },\n {\n name: \"minimax-portal\",\n keywords: [\"minimax-portal\", \"minimax\"],\n envKey: \"MINIMAX_PORTAL_TOKEN\",\n displayName: \"MiniMax Portal\",\n modelPrefix: \"minimax-portal\",\n litellmPrefix: \"minimax-portal\",\n skipPrefixes: [\"minimax-portal/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.minimax.io/v1\",\n defaultModels: [\n \"minimax-portal/MiniMax-M3\",\n \"minimax-portal/MiniMax-M2.5\",\n \"minimax-portal/MiniMax-M2.5-highspeed\",\n ],\n modelConfig: { \"minimax-portal/MiniMax-M3\": { vision: true } },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"minimax.svg\",\n apiBaseHelp: {\n zh: \"OAuth Global 默认使用 https://api.minimax.io/v1;OAuth 中国区默认使用 https://api.minimaxi.com/v1。\",\n en: \"OAuth Global uses https://api.minimax.io/v1 by default; OAuth CN uses https://api.minimaxi.com/v1.\",\n },\n auth: {\n kind: \"device_code\",\n protocol: \"minimax_user_code\",\n displayName: \"MiniMax OAuth\",\n baseUrl: \"https://api.minimax.io\",\n deviceCodePath: \"/oauth/code\",\n tokenPath: \"/oauth/token\",\n clientId: \"78257093-7e40-4613-99e0-527b14b39113\",\n scope: \"group_id profile model.completion\",\n grantType: \"urn:ietf:params:oauth:grant-type:user_code\",\n usePkce: true,\n defaultMethodId: \"cn\",\n methods: [\n {\n id: \"global\",\n label: {\n zh: \"Global(海外)\",\n en: \"Global\",\n },\n hint: {\n zh: \"适用于海外用户,默认 API Base 为 https://api.minimax.io/v1。\",\n en: \"For international users. Default API base: https://api.minimax.io/v1.\",\n },\n baseUrl: \"https://api.minimax.io\",\n defaultApiBase: \"https://api.minimax.io/v1\",\n },\n {\n id: \"cn\",\n label: {\n zh: \"中国区(CN)\",\n en: \"China Mainland (CN)\",\n },\n hint: {\n zh: \"适用于中国区用户,默认 API Base 为 https://api.minimaxi.com/v1。\",\n en: \"For Mainland China users. Default API base: https://api.minimaxi.com/v1.\",\n },\n baseUrl: \"https://api.minimaxi.com\",\n defaultApiBase: \"https://api.minimaxi.com/v1\",\n },\n ],\n note: {\n zh: \"通过浏览器完成 MiniMax OAuth 授权后即可使用,无需手动填写 API Key。\",\n en: \"Complete MiniMax OAuth in browser to use this provider without manually entering an API key.\",\n },\n },\n },\n {\n name: \"mimo\",\n keywords: [\"mimo\", \"xiaomi\"],\n envKey: \"MIMO_API_KEY\",\n displayName: \"Xiaomi MiMo\",\n modelPrefix: \"mimo\",\n litellmPrefix: \"openai\",\n skipPrefixes: [\"mimo/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"xiaomimimo.com\",\n defaultApiBase: \"https://api.xiaomimimo.com/v1\",\n defaultModels: [\"mimo/mimo-v2.5-pro\", \"mimo/mimo-v2.5\"],\n modelConfig: {\n \"mimo/mimo-v2.5\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"mimo.svg\",\n },\n {\n name: \"vllm\",\n keywords: [\"vllm\"],\n envKey: \"HOSTED_VLLM_API_KEY\",\n displayName: \"vLLM/Local\",\n modelPrefix: \"hosted_vllm\",\n litellmPrefix: \"hosted_vllm\",\n skipPrefixes: [],\n envExtras: [],\n isGateway: false,\n isLocal: true,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"http://127.0.0.1:8000/v1\",\n defaultModels: [\n \"hosted_vllm/meta-llama/Llama-3.1-8B-Instruct\",\n \"hosted_vllm/Qwen/Qwen2.5-7B-Instruct\",\n ],\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"vllm.svg\",\n },\n {\n name: \"groq\",\n keywords: [\"groq\"],\n envKey: \"GROQ_API_KEY\",\n displayName: \"Groq\",\n modelPrefix: \"groq\",\n litellmPrefix: \"groq\",\n skipPrefixes: [\"groq/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.groq.com/openai/v1\",\n defaultModels: [\"groq/openai/gpt-oss-120b\", \"groq/llama-3.1-8b-instant\"],\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"groq.svg\",\n },\n ],\n};\n","import type { ProviderCatalogPlugin } from \"@nextclaw/core\";\nimport { builtinProviderPlugin } from \"./builtin.provider.js\";\n\nexport const BUILTIN_PROVIDER_PLUGINS: ProviderCatalogPlugin[] = [\n builtinProviderPlugin,\n];\n","import {\n ProviderRegistry,\n type ProviderCatalogPlugin,\n type ProviderSpec,\n} from \"@nextclaw/core\";\nimport { BUILTIN_PROVIDER_PLUGINS } from \"./builtin-provider-plugins.provider.js\";\n\nlet builtinProviderRegistry: ProviderRegistry | null = null;\n\nfunction getBuiltinProviderRegistry(): ProviderRegistry {\n builtinProviderRegistry ??= new ProviderRegistry(BUILTIN_PROVIDER_PLUGINS);\n return builtinProviderRegistry;\n}\n\nexport function listBuiltinProviderPlugins(): ProviderCatalogPlugin[] {\n return getBuiltinProviderRegistry().listProviderPlugins();\n}\n\nexport function listBuiltinProviders(): ProviderSpec[] {\n return getBuiltinProviderRegistry().listProviderSpecs();\n}\n\nexport function findBuiltinProviderByName(\n name: string,\n): ProviderSpec | undefined {\n return getBuiltinProviderRegistry().findProviderByName(name);\n}\n\nexport function builtinProviderIds(): string[] {\n return listBuiltinProviders().map((provider) => provider.name);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../src/channels/builtin-channel.config.ts","../src/providers/dashscope-coding-plan.provider.ts","../src/providers/kimi-coding.provider.ts","../src/providers/opencode-zen.provider.ts","../src/providers/builtin.provider.ts","../src/providers/builtin-provider-plugins.provider.ts","../src/providers/builtin-provider-registry.provider.ts"],"sourcesContent":["export const BUILTIN_CHANNEL_IDS = [\n \"telegram\",\n \"whatsapp\",\n \"discord\",\n \"feishu\",\n \"dingtalk\",\n \"wecom\",\n \"email\",\n \"slack\",\n \"qq\",\n \"weixin\"\n] as const;\n\nexport type BuiltinChannelId = (typeof BUILTIN_CHANNEL_IDS)[number];\n\nexport function isBuiltinChannelId(value: string): value is BuiltinChannelId {\n return BUILTIN_CHANNEL_IDS.includes(value as BuiltinChannelId);\n}\n","import type { ProviderSpec } from \"@nextclaw/core\";\n\nexport const dashscopeCodingPlanProviderSpec: ProviderSpec = {\n name: \"dashscope-coding-plan\",\n keywords: [\"dashscope-coding-plan\", \"coding-plan\"],\n envKey: \"DASHSCOPE_CODING_PLAN_API_KEY\",\n displayName: \"DashScope Coding Plan\",\n modelPrefix: \"dashscope-coding-plan\",\n litellmPrefix: \"dashscope-coding-plan\",\n skipPrefixes: [\"dashscope-coding-plan/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"sk-sp-\",\n detectByBaseKeyword: \"coding.dashscope.aliyuncs.com\",\n defaultApiBase: \"https://coding.dashscope.aliyuncs.com/v1\",\n defaultModels: [\n \"dashscope-coding-plan/qwen3.7-plus\",\n \"dashscope-coding-plan/qwen3.7-max\",\n \"dashscope-coding-plan/qwen3-max-2026-01-23\",\n \"dashscope-coding-plan/qwen3-coder-next\",\n \"dashscope-coding-plan/qwen3-coder-plus\",\n \"dashscope-coding-plan/MiniMax-M3\",\n \"dashscope-coding-plan/MiniMax-M2.5\",\n \"dashscope-coding-plan/glm-5.1\",\n \"dashscope-coding-plan/glm-5\",\n \"dashscope-coding-plan/glm-4.7\",\n \"dashscope-coding-plan/kimi-k2.6\",\n \"dashscope-coding-plan/kimi-k2.5\",\n ],\n modelDiscovery: false,\n modelConfig: {\n \"dashscope-coding-plan/qwen3.7-plus\": { vision: true },\n \"dashscope-coding-plan/qwen3.7-max\": { vision: true },\n \"dashscope-coding-plan/MiniMax-M3\": { vision: true },\n \"dashscope-coding-plan/kimi-k2.6\": { vision: true },\n \"dashscope-coding-plan/kimi-k2.5\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n supportsResponsesApi: false,\n logo: \"dashscope.png\",\n apiBaseHelp: {\n zh: \"Coding Plan 必须使用专属 Base URL https://coding.dashscope.aliyuncs.com/v1,并配合 sk-sp- 开头的专属 API Key;不要与普通 DashScope 按量计费 Key/Base URL 混用。\",\n en: \"Coding Plan must use the dedicated base URL https://coding.dashscope.aliyuncs.com/v1 together with an sk-sp- API key. Do not mix it with the regular DashScope pay-as-you-go key/base URL.\",\n },\n};\n","import type { ProviderSpec } from \"@nextclaw/core\";\n\nexport const kimiCodingProviderSpec: ProviderSpec = {\n name: \"kimi-coding\",\n keywords: [\"kimi-coding\", \"kimi-code\", \"kimi-for-coding\"],\n envKey: \"KIMI_CODING_API_KEY\",\n displayName: \"Kimi Coding\",\n apiProtocol: \"anthropic-messages\",\n modelPrefix: \"kimi-coding\",\n defaultModels: [\"kimi-coding/kimi-for-coding\"],\n defaultHeaders: {\n \"User-Agent\": \"claude-code/0.1.0\",\n },\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"api.kimi.com/coding\",\n defaultApiBase: \"https://api.kimi.com/coding\",\n modelDiscovery: false,\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"moonshot.png\",\n apiBaseHelp: {\n zh: \"Kimi Coding 需要使用专属 Base URL https://api.kimi.com/coding,并通过 Anthropic Messages 协议访问。\",\n en: \"Kimi Coding requires the dedicated base URL https://api.kimi.com/coding and uses the Anthropic Messages protocol.\",\n },\n};\n","import {\n OPENCODE_ZEN_API_BASE,\n OPENCODE_ZEN_FREE_MODELS,\n OPENCODE_ZEN_MODEL_CONFIG,\n OPENCODE_ZEN_PUBLIC_API_KEY,\n OPENCODE_ZEN_PROVIDER_ID,\n type ProviderSpec\n} from \"@nextclaw/core\";\n\nexport const opencodeZenProviderSpec: ProviderSpec = {\n name: OPENCODE_ZEN_PROVIDER_ID,\n keywords: [\"opencode\", \"big-pickle\"],\n envKey: \"OPENCODE_API_KEY\",\n displayName: \"OpenCode Zen Free Trial\",\n modelPrefix: OPENCODE_ZEN_PROVIDER_ID,\n litellmPrefix: OPENCODE_ZEN_PROVIDER_ID,\n skipPrefixes: [],\n envExtras: [],\n isGateway: true,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"opencode.ai/zen\",\n defaultApiBase: OPENCODE_ZEN_API_BASE,\n anonymousApiKey: OPENCODE_ZEN_PUBLIC_API_KEY,\n defaultModels: [...OPENCODE_ZEN_FREE_MODELS],\n modelConfig: { ...OPENCODE_ZEN_MODEL_CONFIG },\n modelDiscovery: {\n kind: \"models-dev\",\n url: \"https://models.opencode.ai/api.json\",\n providerId: OPENCODE_ZEN_PROVIDER_ID,\n freeOnly: true,\n },\n stripModelPrefix: false,\n modelOverrides: [],\n supportsWireApi: true,\n wireApiOptions: [\"chat\"],\n defaultWireApi: \"chat\",\n supportsResponsesApi: false,\n apiBaseHelp: {\n zh: \"免费试用通过 OpenCode Zen 公共网关提供,限额和模型可能变化;请求数据可能被用于改进模型,请勿发送敏感或机密信息。\",\n en: \"Free trial access uses OpenCode Zen's public gateway. Limits and models may change, and request data may be used to improve models. Do not send sensitive or confidential information.\"\n }\n};\n","import type { ProviderCatalogPlugin } from \"@nextclaw/core\";\nimport { dashscopeCodingPlanProviderSpec } from \"./dashscope-coding-plan.provider.js\";\nimport { kimiCodingProviderSpec } from \"./kimi-coding.provider.js\";\nimport { opencodeZenProviderSpec } from \"./opencode-zen.provider.js\";\nexport const builtinProviderPlugin: ProviderCatalogPlugin = {\n id: \"builtin-runtime-providers\",\n providers: [\n {\n name: \"nextclaw\",\n keywords: [\"nextclaw\", \"dashscope/\", \"qwen3.7\", \"qwen3.5\", \"qwen\"],\n envKey: \"NEXTCLAW_API_KEY\",\n displayName: \"NextClaw Built-in\",\n modelPrefix: \"nextclaw\",\n litellmPrefix: \"nextclaw\",\n skipPrefixes: [],\n envExtras: [],\n isGateway: true,\n isLocal: false,\n detectByKeyPrefix: \"nc_free_\",\n detectByBaseKeyword: \"nextclaw.io\",\n defaultApiBase: \"https://ai-gateway-api.nextclaw.io/v1\",\n defaultModels: [\n \"dashscope/qwen3.7-plus\",\n \"dashscope/qwen3.7-max\",\n \"dashscope/qwen3.5-27b\",\n ],\n modelDiscovery: { kind: \"openai-compatible\" },\n modelConfig: {\n \"dashscope/qwen3.7-plus\": { vision: true },\n \"dashscope/qwen3.7-max\": { vision: true },\n \"dashscope/qwen3.5-27b\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n },\n opencodeZenProviderSpec,\n {\n name: \"openrouter\",\n keywords: [\"openrouter\"],\n envKey: \"OPENROUTER_API_KEY\",\n displayName: \"OpenRouter\",\n modelPrefix: \"openrouter\",\n litellmPrefix: \"openrouter\",\n skipPrefixes: [],\n envExtras: [],\n isGateway: true,\n isLocal: false,\n detectByKeyPrefix: \"sk-or-\",\n detectByBaseKeyword: \"openrouter\",\n defaultApiBase: \"https://openrouter.ai/api/v1\",\n defaultModels: [\n \"openrouter/minimax/minimax-m3\",\n \"openrouter/xiaomi/mimo-v2.5-pro\",\n \"openrouter/xiaomi/mimo-v2.5\",\n \"openrouter/stepfun/step-3.5-flash:free\",\n \"openrouter/google/gemini-3-flash-preview\",\n \"openrouter/deepseek/deepseek-v3.2\",\n \"openrouter/x-ai/grok-4.1-fast\",\n \"openrouter/z-ai/glm-5.1\",\n \"openrouter/anthropic/claude-opus-4.8\",\n \"openrouter/anthropic/claude-opus-4.7\",\n \"openrouter/anthropic/claude-opus-4.6\",\n \"openrouter/openai/gpt-5.5\",\n \"openrouter/openai/gpt-5.4\",\n \"openrouter/qwen/qwen3.7-plus\",\n ],\n modelDiscovery: { kind: \"openai-compatible\" },\n modelConfig: {\n \"openrouter/minimax/minimax-m3\": { vision: true },\n \"openrouter/xiaomi/mimo-v2.5-pro\": { vision: true },\n \"openrouter/xiaomi/mimo-v2.5\": { vision: true },\n \"openrouter/google/gemini-3-flash-preview\": { vision: true },\n \"openrouter/anthropic/claude-opus-4.8\": { vision: true },\n \"openrouter/anthropic/claude-opus-4.7\": { vision: true },\n \"openrouter/anthropic/claude-opus-4.6\": { vision: true },\n \"openrouter/openai/gpt-5.5\": { vision: true },\n \"openrouter/openai/gpt-5.4\": { vision: true },\n \"openrouter/qwen/qwen3.7-plus\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"openrouter.svg\",\n },\n {\n name: \"aihubmix\",\n keywords: [\"aihubmix\"],\n envKey: \"OPENAI_API_KEY\",\n displayName: \"AiHubMix\",\n modelPrefix: \"aihubmix\",\n litellmPrefix: \"openai\",\n skipPrefixes: [],\n envExtras: [],\n isGateway: true,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"aihubmix\",\n defaultApiBase: \"https://aihubmix.com/v1\",\n defaultModels: [\n \"aihubmix/gpt-5.5\",\n \"aihubmix/gpt-5.4\",\n \"aihubmix/claude-opus-4.8\",\n \"aihubmix/claude-opus-4.7\",\n \"aihubmix/claude-opus-4.6\",\n \"aihubmix/gemini-3.1-pro-preview\",\n \"aihubmix/kimi-k2.6\",\n \"aihubmix/kimi-k2.5\",\n \"aihubmix/minimax-m3\",\n \"aihubmix/qwen3.7-plus\",\n ],\n modelDiscovery: { kind: \"openai-compatible\" },\n modelConfig: {\n \"aihubmix/gpt-5.5\": { vision: true },\n \"aihubmix/gpt-5.4\": { vision: true },\n \"aihubmix/claude-opus-4.8\": { vision: true },\n \"aihubmix/claude-opus-4.7\": { vision: true },\n \"aihubmix/claude-opus-4.6\": { vision: true },\n \"aihubmix/gemini-3.1-pro-preview\": { vision: true },\n \"aihubmix/kimi-k2.6\": { vision: true },\n \"aihubmix/kimi-k2.5\": { vision: true },\n \"aihubmix/minimax-m3\": { vision: true },\n \"aihubmix/qwen3.7-plus\": { vision: true },\n },\n stripModelPrefix: true,\n modelOverrides: [],\n logo: \"aihubmix.png\",\n },\n {\n name: \"anthropic\",\n keywords: [\"anthropic\", \"claude\"],\n envKey: \"ANTHROPIC_API_KEY\",\n displayName: \"Anthropic\",\n modelPrefix: \"anthropic\",\n litellmPrefix: \"anthropic\",\n skipPrefixes: [\"anthropic/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.anthropic.com\",\n defaultModels: [\n \"anthropic/claude-opus-4-8\",\n \"anthropic/claude-opus-4-7\",\n \"anthropic/claude-opus-4-6\",\n \"anthropic/claude-sonnet-4-6\",\n ],\n modelConfig: {\n \"anthropic/claude-opus-4-8\": { vision: true },\n \"anthropic/claude-opus-4-7\": { vision: true },\n \"anthropic/claude-opus-4-6\": { vision: true },\n \"anthropic/claude-sonnet-4-6\": { vision: true },\n },\n modelDiscovery: { kind: \"anthropic\" },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"anthropic.svg\",\n },\n {\n name: \"openai\",\n keywords: [\"openai\", \"gpt\"],\n envKey: \"OPENAI_API_KEY\",\n displayName: \"OpenAI\",\n modelPrefix: \"openai\",\n litellmPrefix: \"openai\",\n skipPrefixes: [\"openai/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.openai.com/v1\",\n defaultModels: [\"openai/gpt-5.5\", \"openai/gpt-5.4\"],\n modelDiscovery: { kind: \"openai-compatible\" },\n modelConfig: {\n \"openai/gpt-5.5\": { vision: true },\n \"openai/gpt-5.4\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n supportsWireApi: true,\n wireApiOptions: [\"auto\", \"chat\", \"responses\"],\n defaultWireApi: \"auto\",\n logo: \"openai.svg\",\n },\n {\n name: \"deepseek\",\n keywords: [\"deepseek\"],\n envKey: \"DEEPSEEK_API_KEY\",\n displayName: \"DeepSeek\",\n modelPrefix: \"deepseek\",\n litellmPrefix: \"deepseek\",\n skipPrefixes: [\"deepseek/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.deepseek.com\",\n defaultModels: [\n \"deepseek/deepseek-chat\",\n \"deepseek/deepseek-reasoner\",\n \"deepseek/deepseek-v4-flash\",\n \"deepseek/deepseek-v4-pro\",\n ],\n modelDiscovery: { kind: \"openai-compatible\" },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"deepseek.png\",\n },\n {\n name: \"gemini\",\n keywords: [\"gemini\"],\n envKey: \"GEMINI_API_KEY\",\n displayName: \"Gemini\",\n modelPrefix: \"gemini\",\n litellmPrefix: \"gemini\",\n skipPrefixes: [\"gemini/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://generativelanguage.googleapis.com/v1beta/openai\",\n defaultModels: [\n \"gemini/gemini-3.1-pro-preview\",\n \"gemini/gemini-3-flash-preview\",\n ],\n modelDiscovery: false,\n modelConfig: {\n \"gemini/gemini-3.1-pro-preview\": { vision: true },\n \"gemini/gemini-3-flash-preview\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"gemini.svg\",\n },\n {\n name: \"zhipu\",\n keywords: [\"zhipu\", \"glm\", \"zai\"],\n envKey: \"ZAI_API_KEY\",\n displayName: \"Zhipu AI\",\n modelPrefix: \"zai\",\n litellmPrefix: \"zai\",\n skipPrefixes: [\"zhipu/\", \"zai/\", \"openrouter/\", \"hosted_vllm/\"],\n envExtras: [[\"ZHIPUAI_API_KEY\", \"{api_key}\"]],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://open.bigmodel.cn/api/paas/v4\",\n defaultModels: [\"zai/glm-5.1\", \"zai/glm-5\"],\n modelDiscovery: false,\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"zhipu.svg\",\n },\n {\n name: \"dashscope\",\n keywords: [\"qwen\", \"dashscope\"],\n envKey: \"DASHSCOPE_API_KEY\",\n displayName: \"DashScope\",\n modelPrefix: \"dashscope\",\n litellmPrefix: \"dashscope\",\n skipPrefixes: [\"dashscope/\", \"openrouter/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n defaultModels: [\n \"dashscope/qwen3.7-plus\",\n \"dashscope/qwen3.7-max\",\n \"dashscope/qwen3.5-27b\",\n ],\n modelDiscovery: false,\n modelConfig: {\n \"dashscope/qwen3.7-plus\": { vision: true },\n \"dashscope/qwen3.7-max\": { vision: true },\n \"dashscope/qwen3.5-27b\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n supportsResponsesApi: false,\n logo: \"dashscope.png\",\n },\n dashscopeCodingPlanProviderSpec,\n kimiCodingProviderSpec,\n {\n name: \"qwen-portal\",\n keywords: [\"qwen-portal\", \"qwen\"],\n envKey: \"QWEN_PORTAL_TOKEN\",\n displayName: \"Qwen Portal\",\n modelPrefix: \"qwen-portal\",\n litellmPrefix: \"qwen-portal\",\n skipPrefixes: [\"qwen-portal/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"portal.qwen.ai\",\n defaultApiBase: \"https://portal.qwen.ai/v1\",\n defaultModels: [\"qwen-portal/coder-model\", \"qwen-portal/vision-model\"],\n modelDiscovery: false,\n modelConfig: { \"qwen-portal/vision-model\": { vision: true } },\n stripModelPrefix: false,\n modelOverrides: [],\n auth: {\n kind: \"device_code\",\n displayName: \"Qwen OAuth\",\n baseUrl: \"https://chat.qwen.ai\",\n deviceCodePath: \"/api/v1/oauth2/device/code\",\n tokenPath: \"/api/v1/oauth2/token\",\n clientId: \"f0304373b74a44d2b584a3fb70ca9e56\",\n scope: \"openid profile email model.completion\",\n grantType: \"urn:ietf:params:oauth:grant-type:device_code\",\n usePkce: true,\n cliCredential: {\n path: \"~/.qwen/oauth_creds.json\",\n accessTokenField: \"access_token\",\n refreshTokenField: \"refresh_token\",\n expiresAtField: \"expiry_date\",\n },\n note: {\n zh: \"通过浏览器登录 Qwen 后即可在 NextClaw 中使用该 Provider。\",\n en: \"Log in to Qwen in your browser, then use this provider in NextClaw.\",\n },\n },\n },\n {\n name: \"moonshot\",\n keywords: [\"moonshot\", \"kimi\"],\n envKey: \"MOONSHOT_API_KEY\",\n displayName: \"Kimi\",\n modelPrefix: \"moonshot\",\n litellmPrefix: \"moonshot\",\n skipPrefixes: [\"moonshot/\", \"openrouter/\"],\n envExtras: [[\"MOONSHOT_API_BASE\", \"{api_base}\"]],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.moonshot.ai/v1\",\n defaultModels: [\"moonshot/kimi-k2.6\", \"moonshot/kimi-k2.5\"],\n modelDiscovery: { kind: \"openai-compatible\" },\n modelConfig: {\n \"moonshot/kimi-k2.6\": { vision: true },\n \"moonshot/kimi-k2.5\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"moonshot.png\",\n },\n {\n name: \"minimax\",\n keywords: [\"minimax\"],\n envKey: \"MINIMAX_API_KEY\",\n displayName: \"MiniMax\",\n modelPrefix: \"minimax\",\n litellmPrefix: \"minimax\",\n skipPrefixes: [\"minimax/\", \"openrouter/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.minimaxi.com/v1\",\n defaultModels: [\n \"minimax/MiniMax-M3\",\n \"minimax/MiniMax-M2.7\",\n \"minimax/MiniMax-M2.7-highspeed\",\n ],\n modelDiscovery: { kind: \"openai-compatible\" },\n modelConfig: { \"minimax/MiniMax-M3\": { vision: true } },\n stripModelPrefix: false,\n modelOverrides: [],\n supportsWireApi: true,\n wireApiOptions: [\"auto\", \"chat\", \"responses\"],\n defaultWireApi: \"chat\",\n logo: \"minimax.svg\",\n apiBaseHelp: {\n zh: \"MiniMax 中国区请使用 https://api.minimaxi.com/v1;海外请使用 https://api.minimax.io/v1。AI Coding Tools 推荐使用 MiniMax-M3,并将 Wire API 设为 Chat。\",\n en: \"Use https://api.minimaxi.com/v1 for Mainland China accounts, and https://api.minimax.io/v1 for overseas accounts. For AI Coding Tools, prefer MiniMax-M3 with Wire API set to Chat.\",\n },\n },\n {\n name: \"minimax-portal\",\n keywords: [\"minimax-portal\", \"minimax\"],\n envKey: \"MINIMAX_PORTAL_TOKEN\",\n displayName: \"MiniMax Portal\",\n modelPrefix: \"minimax-portal\",\n litellmPrefix: \"minimax-portal\",\n skipPrefixes: [\"minimax-portal/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.minimax.io/v1\",\n defaultModels: [\n \"minimax-portal/MiniMax-M3\",\n \"minimax-portal/MiniMax-M2.5\",\n \"minimax-portal/MiniMax-M2.5-highspeed\",\n ],\n modelDiscovery: false,\n modelConfig: { \"minimax-portal/MiniMax-M3\": { vision: true } },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"minimax.svg\",\n apiBaseHelp: {\n zh: \"OAuth Global 默认使用 https://api.minimax.io/v1;OAuth 中国区默认使用 https://api.minimaxi.com/v1。\",\n en: \"OAuth Global uses https://api.minimax.io/v1 by default; OAuth CN uses https://api.minimaxi.com/v1.\",\n },\n auth: {\n kind: \"device_code\",\n protocol: \"minimax_user_code\",\n displayName: \"MiniMax OAuth\",\n baseUrl: \"https://api.minimax.io\",\n deviceCodePath: \"/oauth/code\",\n tokenPath: \"/oauth/token\",\n clientId: \"78257093-7e40-4613-99e0-527b14b39113\",\n scope: \"group_id profile model.completion\",\n grantType: \"urn:ietf:params:oauth:grant-type:user_code\",\n usePkce: true,\n defaultMethodId: \"cn\",\n methods: [\n {\n id: \"global\",\n label: {\n zh: \"Global(海外)\",\n en: \"Global\",\n },\n hint: {\n zh: \"适用于海外用户,默认 API Base 为 https://api.minimax.io/v1。\",\n en: \"For international users. Default API base: https://api.minimax.io/v1.\",\n },\n baseUrl: \"https://api.minimax.io\",\n defaultApiBase: \"https://api.minimax.io/v1\",\n },\n {\n id: \"cn\",\n label: {\n zh: \"中国区(CN)\",\n en: \"China Mainland (CN)\",\n },\n hint: {\n zh: \"适用于中国区用户,默认 API Base 为 https://api.minimaxi.com/v1。\",\n en: \"For Mainland China users. Default API base: https://api.minimaxi.com/v1.\",\n },\n baseUrl: \"https://api.minimaxi.com\",\n defaultApiBase: \"https://api.minimaxi.com/v1\",\n },\n ],\n note: {\n zh: \"通过浏览器完成 MiniMax OAuth 授权后即可使用,无需手动填写 API Key。\",\n en: \"Complete MiniMax OAuth in browser to use this provider without manually entering an API key.\",\n },\n },\n },\n {\n name: \"mimo\",\n keywords: [\"mimo\", \"xiaomi\"],\n envKey: \"MIMO_API_KEY\",\n displayName: \"Xiaomi MiMo\",\n modelPrefix: \"mimo\",\n litellmPrefix: \"openai\",\n skipPrefixes: [\"mimo/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"xiaomimimo.com\",\n defaultApiBase: \"https://api.xiaomimimo.com/v1\",\n defaultModels: [\"mimo/mimo-v2.5-pro\", \"mimo/mimo-v2.5\"],\n modelDiscovery: false,\n modelConfig: {\n \"mimo/mimo-v2.5\": { vision: true },\n },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"mimo.svg\",\n },\n {\n name: \"vllm\",\n keywords: [\"vllm\"],\n envKey: \"HOSTED_VLLM_API_KEY\",\n displayName: \"vLLM/Local\",\n modelPrefix: \"hosted_vllm\",\n litellmPrefix: \"hosted_vllm\",\n skipPrefixes: [],\n envExtras: [],\n isGateway: false,\n isLocal: true,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"http://127.0.0.1:8000/v1\",\n defaultModels: [\n \"hosted_vllm/meta-llama/Llama-3.1-8B-Instruct\",\n \"hosted_vllm/Qwen/Qwen2.5-7B-Instruct\",\n ],\n modelDiscovery: { kind: \"openai-compatible\" },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"vllm.svg\",\n },\n {\n name: \"groq\",\n keywords: [\"groq\"],\n envKey: \"GROQ_API_KEY\",\n displayName: \"Groq\",\n modelPrefix: \"groq\",\n litellmPrefix: \"groq\",\n skipPrefixes: [\"groq/\"],\n envExtras: [],\n isGateway: false,\n isLocal: false,\n detectByKeyPrefix: \"\",\n detectByBaseKeyword: \"\",\n defaultApiBase: \"https://api.groq.com/openai/v1\",\n defaultModels: [\"groq/openai/gpt-oss-120b\", \"groq/llama-3.1-8b-instant\"],\n modelDiscovery: { kind: \"openai-compatible\" },\n stripModelPrefix: false,\n modelOverrides: [],\n logo: \"groq.svg\",\n },\n ],\n};\n","import type { ProviderCatalogPlugin } from \"@nextclaw/core\";\nimport { builtinProviderPlugin } from \"./builtin.provider.js\";\n\nexport const BUILTIN_PROVIDER_PLUGINS: ProviderCatalogPlugin[] = [\n builtinProviderPlugin,\n];\n","import {\n ProviderRegistry,\n type ProviderCatalogPlugin,\n type ProviderSpec,\n} from \"@nextclaw/core\";\nimport { BUILTIN_PROVIDER_PLUGINS } from \"./builtin-provider-plugins.provider.js\";\n\nlet builtinProviderRegistry: ProviderRegistry | null = null;\n\nfunction getBuiltinProviderRegistry(): ProviderRegistry {\n builtinProviderRegistry ??= new ProviderRegistry(BUILTIN_PROVIDER_PLUGINS);\n return builtinProviderRegistry;\n}\n\nexport function listBuiltinProviderPlugins(): ProviderCatalogPlugin[] {\n return getBuiltinProviderRegistry().listProviderPlugins();\n}\n\nexport function listBuiltinProviders(): ProviderSpec[] {\n return getBuiltinProviderRegistry().listProviderSpecs();\n}\n\nexport function findBuiltinProviderByName(\n name: string,\n): ProviderSpec | undefined {\n return getBuiltinProviderRegistry().findProviderByName(name);\n}\n\nexport function builtinProviderIds(): string[] {\n return listBuiltinProviders().map((provider) => provider.name);\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nextclaw/runtime",
3
- "version": "0.4.19",
3
+ "version": "0.4.20",
4
4
  "private": false,
5
5
  "description": "NextClaw runtime assembly for builtin providers and channels.",
6
6
  "type": "module",
@@ -15,7 +15,7 @@
15
15
  "dist"
16
16
  ],
17
17
  "dependencies": {
18
- "@nextclaw/core": "0.15.19"
18
+ "@nextclaw/core": "0.15.20"
19
19
  },
20
20
  "devDependencies": {
21
21
  "@types/node": "^20.17.6",