@pentoshi/clai 4.11.17 → 4.11.19
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/README.md +112 -547
- package/dist/agent/runner.js +4 -2
- package/dist/agent/runner.js.map +1 -1
- package/dist/agent/turn/loop/request-assembly.js +4 -1
- package/dist/agent/turn/loop/request-assembly.js.map +1 -1
- package/dist/classic/chrome/status-rows.js +10 -2
- package/dist/classic/chrome/status-rows.js.map +1 -1
- package/dist/commands/providers.js +8 -0
- package/dist/commands/providers.js.map +1 -1
- package/dist/llm/anthropic.js +29 -1
- package/dist/llm/anthropic.js.map +1 -1
- package/dist/llm/capabilities.d.ts +1 -0
- package/dist/llm/capabilities.js +1 -0
- package/dist/llm/capabilities.js.map +1 -1
- package/dist/llm/capability/state.d.ts +1 -1
- package/dist/llm/capability/state.js +16 -2
- package/dist/llm/capability/state.js.map +1 -1
- package/dist/llm/capability/tool-dialect.js +10 -0
- package/dist/llm/capability/tool-dialect.js.map +1 -1
- package/dist/llm/capability/vision-patterns.d.ts +1 -0
- package/dist/llm/capability/vision-patterns.js +31 -1
- package/dist/llm/capability/vision-patterns.js.map +1 -1
- package/dist/llm/capability/vision-registry.js +8 -2
- package/dist/llm/capability/vision-registry.js.map +1 -1
- package/dist/llm/context-windows.js +1 -0
- package/dist/llm/context-windows.js.map +1 -1
- package/dist/llm/deepseek.d.ts +2 -0
- package/dist/llm/deepseek.js +91 -0
- package/dist/llm/deepseek.js.map +1 -0
- package/dist/llm/glm.d.ts +2 -0
- package/dist/llm/glm.js +91 -0
- package/dist/llm/glm.js.map +1 -0
- package/dist/llm/kimi.d.ts +2 -0
- package/dist/llm/kimi.js +91 -0
- package/dist/llm/kimi.js.map +1 -0
- package/dist/llm/minimax.d.ts +2 -0
- package/dist/llm/minimax.js +91 -0
- package/dist/llm/minimax.js.map +1 -0
- package/dist/llm/model-layers/model-rules.js +24 -0
- package/dist/llm/model-layers/model-rules.js.map +1 -1
- package/dist/llm/ollama.js +26 -1
- package/dist/llm/ollama.js.map +1 -1
- package/dist/llm/provider-identity.js +25 -0
- package/dist/llm/provider-identity.js.map +1 -1
- package/dist/llm/provider-info-text.js +118 -0
- package/dist/llm/provider-info-text.js.map +1 -1
- package/dist/llm/provider-profile-layers.js +118 -0
- package/dist/llm/provider-profile-layers.js.map +1 -1
- package/dist/llm/provider.js +14 -2
- package/dist/llm/provider.js.map +1 -1
- package/dist/llm/reasoning-capability.js +4 -0
- package/dist/llm/reasoning-capability.js.map +1 -1
- package/dist/llm/responses-config.d.ts +1 -0
- package/dist/llm/responses-config.js +6 -0
- package/dist/llm/responses-config.js.map +1 -1
- package/dist/llm/responses-http.d.ts +1 -1
- package/dist/llm/responses-http.js +2 -1
- package/dist/llm/responses-http.js.map +1 -1
- package/dist/llm/responses-stream.d.ts +2 -2
- package/dist/llm/responses-stream.js +3 -2
- package/dist/llm/responses-stream.js.map +1 -1
- package/dist/llm/routing/attempt-complete.js +4 -2
- package/dist/llm/routing/attempt-complete.js.map +1 -1
- package/dist/llm/routing/attempt-request.js +5 -3
- package/dist/llm/routing/attempt-request.js.map +1 -1
- package/dist/llm/routing/attempt-stream.js +4 -2
- package/dist/llm/routing/attempt-stream.js.map +1 -1
- package/dist/llm/routing/provider-selection.js +12 -0
- package/dist/llm/routing/provider-selection.js.map +1 -1
- package/dist/llm/wire/chat-body.js +20 -8
- package/dist/llm/wire/chat-body.js.map +1 -1
- package/dist/llm/wire/image-payloads.d.ts +2 -0
- package/dist/llm/wire/image-payloads.js +34 -0
- package/dist/llm/wire/image-payloads.js.map +1 -0
- package/dist/llm/wire/openai-complete.d.ts +1 -0
- package/dist/llm/wire/openai-complete.js +4 -1
- package/dist/llm/wire/openai-complete.js.map +1 -1
- package/dist/llm/wire/openai-stream.d.ts +1 -0
- package/dist/llm/wire/openai-stream.js +4 -1
- package/dist/llm/wire/openai-stream.js.map +1 -1
- package/dist/llm/wire/responses-first.d.ts +1 -0
- package/dist/llm/wire/responses-first.js +3 -0
- package/dist/llm/wire/responses-first.js.map +1 -1
- package/dist/store/config.js +4 -0
- package/dist/store/config.js.map +1 -1
- package/dist/store/keys.js +8 -1
- package/dist/store/keys.js.map +1 -1
- package/dist/tui-v2/bootstrap/renderer-handle.d.ts +1 -0
- package/dist/tui-v2/bootstrap/renderer-handle.js +2 -1
- package/dist/tui-v2/bootstrap/renderer-handle.js.map +1 -1
- package/dist/tui-v2/bootstrap/shrink-resize-guard.d.ts +27 -0
- package/dist/tui-v2/bootstrap/shrink-resize-guard.js +118 -0
- package/dist/tui-v2/bootstrap/shrink-resize-guard.js.map +1 -0
- package/dist/tui-v2/bootstrap/start-tui-v2.js +3 -0
- package/dist/tui-v2/bootstrap/start-tui-v2.js.map +1 -1
- package/dist/tui-v2/components/status/status-line.js +11 -3
- package/dist/tui-v2/components/status/status-line.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.js +4 -0
- package/dist/types.js.map +1 -1
- package/dist/ui-core/commands/picker-commands.js +7 -3
- package/dist/ui-core/commands/picker-commands.js.map +1 -1
- package/dist/version.generated.d.ts +2 -2
- package/dist/version.generated.js +2 -2
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/llm/capability/state.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE9E,OAAO,EACL,mCAAmC,EACnC,0BAA0B,EAC1B,cAAc,EACd,wBAAwB,EACxB,yBAAyB,EACzB,eAAe,EACf,sBAAsB,GACvB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,GAAG,EAAU,CAAC;AAE5D,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAoB,EAAE,KAAa,EAAU,EAAE,CAC1E,GAAG,QAAQ,IAAI,KAAK;KACjB,IAAI,EAAE;KACN,WAAW,EAAE;KACb,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,EAAE,CAAC;AAElC,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAAU,CAAC;AAE1D,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAA6B,CAAC;AAEzE,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAmB,CAAC;AAElE,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAU,CAAC;AAEzD,MAAM,UAAU,uBAAuB;IACrC,0BAA0B,CAAC,KAAK,EAAE,CAAC;IACnC,wBAAwB,CAAC,KAAK,EAAE,CAAC;IACjC,oBAAoB,CAAC,KAAK,EAAE,CAAC;IAC7B,uBAAuB,CAAC,KAAK,EAAE,CAAC;IAChC,uBAAuB,CAAC,KAAK,EAAE,CAAC;IAChC,uBAAuB,CAAC,KAAK,EAAE,CAAC;IAChC,mBAAmB,CAAC,KAAK,EAAE,CAAC;IAC5B,yBAAyB,EAAE,CAAC;IAC5B,0BAA0B,EAAE,CAAC;IAC7B,aAAa,GAAG,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAGzC,CAAC;AAEJ,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAoB,EAAE,KAAa,EAAU,EAAE,CAC3E,GAAG,QAAQ,IAAI,KAAK,
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/llm/capability/state.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { getConfig } from "../../store/config.js";
|
|
2
2
|
import { isTextOnlyModel } from "../tool-protocol.js";
|
|
3
|
+
import { catalogFactsByRoute, reasoningKey } from "./state.js";
|
|
3
4
|
const providerToolDialect = {
|
|
4
5
|
free: "openai",
|
|
5
6
|
openai: "openai",
|
|
@@ -22,6 +23,10 @@ const providerToolDialect = {
|
|
|
22
23
|
"aws-mantle": "openai",
|
|
23
24
|
gemini: "gemini",
|
|
24
25
|
ollama: "ollama",
|
|
26
|
+
deepseek: "openai",
|
|
27
|
+
kimi: "openai",
|
|
28
|
+
glm: "openai",
|
|
29
|
+
minimax: "openai",
|
|
25
30
|
};
|
|
26
31
|
const nativeToolsDenylist = [
|
|
27
32
|
/embed/i,
|
|
@@ -62,6 +67,11 @@ export function resolveToolDialect(provider, model, toolCalling) {
|
|
|
62
67
|
return "none";
|
|
63
68
|
if (nativeToolsDenylist.some((re) => re.test(model)))
|
|
64
69
|
return "none";
|
|
70
|
+
const facts = catalogFactsByRoute.get(reasoningKey(provider, model));
|
|
71
|
+
if (facts?.acceptedParameters !== undefined &&
|
|
72
|
+
!facts.acceptedParameters.includes("tools")) {
|
|
73
|
+
return "none";
|
|
74
|
+
}
|
|
65
75
|
if (provider === "aws-mantle") {
|
|
66
76
|
return isAwsMantleAnthropicModel(model) ? "anthropic" : "openai";
|
|
67
77
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-dialect.js","sourceRoot":"","sources":["../../../src/llm/capability/tool-dialect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-dialect.js","sourceRoot":"","sources":["../../../src/llm/capability/tool-dialect.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,3 +3,4 @@ export declare const textOnlyPatterns: RegExp[];
|
|
|
3
3
|
export declare const universalVisionPatterns: RegExp[];
|
|
4
4
|
export declare const visionPatterns: Record<ProviderId, RegExp[]>;
|
|
5
5
|
export declare const preferredVisionModels: Partial<Record<ProviderId, string>>;
|
|
6
|
+
export declare function isKnownPatternVisionModel(provider: ProviderId, model: string): boolean;
|
|
@@ -43,9 +43,18 @@ export const universalVisionPatterns = [
|
|
|
43
43
|
/glm-4\.?\d*v/i,
|
|
44
44
|
/kimi-k2\.\d/i,
|
|
45
45
|
/kimi-k[3-9]/i,
|
|
46
|
+
/muse-spark/i,
|
|
47
|
+
/mimo-v?(?:2\.5|[3-9])/i,
|
|
48
|
+
/claude-fable/i,
|
|
49
|
+
/gpt-[6-9]/i,
|
|
50
|
+
/vila/i,
|
|
51
|
+
/neva/i,
|
|
52
|
+
/minimax-m3/i,
|
|
53
|
+
/step-3(?:\.\d+)?/i,
|
|
54
|
+
/qwen3\.[5-9]-(?:plus|max|flash)/i,
|
|
46
55
|
];
|
|
47
56
|
export const visionPatterns = {
|
|
48
|
-
free: [],
|
|
57
|
+
free: [/muse-spark/i, /mimo/i, /step-3/i, /dots-.*note/i],
|
|
49
58
|
gemini: [
|
|
50
59
|
/gemini-/i,
|
|
51
60
|
],
|
|
@@ -188,8 +197,13 @@ export const visionPatterns = {
|
|
|
188
197
|
/vision/i,
|
|
189
198
|
/vl$/i,
|
|
190
199
|
],
|
|
200
|
+
deepseek: [/vl/i, /vision/i, /deepseek-vl/i],
|
|
201
|
+
kimi: [/kimi/i, /moonshot/i],
|
|
202
|
+
glm: [/glm-4.*v/i, /glm-5.*v/i, /vision/i, /vl$/i],
|
|
203
|
+
minimax: [/minimax-m3/i, /vision/i, /vl/i],
|
|
191
204
|
};
|
|
192
205
|
export const preferredVisionModels = {
|
|
206
|
+
free: "free-1/muse-spark-1.2-contributor-free",
|
|
193
207
|
gemini: "gemini-3.5-flash",
|
|
194
208
|
openrouter: "google/gemini-2.5-flash",
|
|
195
209
|
openai: "gpt-4o-mini",
|
|
@@ -209,5 +223,21 @@ export const preferredVisionModels = {
|
|
|
209
223
|
"merge-gateway": "openai/gpt-5.2",
|
|
210
224
|
explabs: "claude-fable-5.1",
|
|
211
225
|
vercel: "openai/gpt-4o",
|
|
226
|
+
deepseek: "deepseek-chat",
|
|
227
|
+
kimi: "kimi-k3",
|
|
228
|
+
glm: "glm-4v-plus",
|
|
229
|
+
minimax: "MiniMax-Text-01",
|
|
212
230
|
};
|
|
231
|
+
function matchesPattern(patterns, model) {
|
|
232
|
+
const normalized = model.trim().replace(/\s+/g, "-");
|
|
233
|
+
return patterns.some((p) => p.test(model) || p.test(normalized));
|
|
234
|
+
}
|
|
235
|
+
export function isKnownPatternVisionModel(provider, model) {
|
|
236
|
+
if (matchesPattern(textOnlyPatterns, model))
|
|
237
|
+
return false;
|
|
238
|
+
const list = visionPatterns[provider];
|
|
239
|
+
if (list && matchesPattern(list, model))
|
|
240
|
+
return true;
|
|
241
|
+
return matchesPattern(universalVisionPatterns, model);
|
|
242
|
+
}
|
|
213
243
|
//# sourceMappingURL=vision-patterns.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vision-patterns.js","sourceRoot":"","sources":["../../../src/llm/capability/vision-patterns.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,gBAAgB,GAAa;IACxC,8CAA8C;CAC/C,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAa;IAC/C,gCAAgC;IAChC,4BAA4B;IAC5B,aAAa;IACb,kBAAkB;IAClB,QAAQ;IACR,WAAW;IACX,YAAY;IACZ,aAAa;IACb,WAAW;IACX,UAAU;IACV,YAAY;IACZ,aAAa;IACb,QAAQ;IACR,SAAS;IACT,OAAO;IACP,UAAU;IACV,aAAa;IACb,kBAAkB;IAClB,UAAU;IACV,WAAW;IACX,0BAA0B;IAC1B,yBAAyB;IACzB,WAAW;IACX,wBAAwB;IACxB,SAAS;IACT,WAAW;IACX,cAAc;IACd,QAAQ;IACR,UAAU;IACV,qBAAqB;IACrB,gDAAgD;IAChD,wBAAwB;IACxB,mCAAmC;IACnC,6BAA6B;IAC7B,yBAAyB;IACzB,4BAA4B;IAC5B,aAAa;IACb,yBAAyB;IACzB,eAAe;IACf,cAAc;IACd,cAAc;
|
|
1
|
+
{"version":3,"file":"vision-patterns.js","sourceRoot":"","sources":["../../../src/llm/capability/vision-patterns.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { getConfig } from "../../store/config.js";
|
|
2
2
|
import { providerIds } from "../../types.js";
|
|
3
|
-
import { preferredVisionModels, textOnlyPatterns, universalVisionPatterns, visionPatterns, } from "./vision-patterns.js";
|
|
3
|
+
import { isKnownPatternVisionModel, preferredVisionModels, textOnlyPatterns, universalVisionPatterns, visionPatterns, } from "./vision-patterns.js";
|
|
4
4
|
import { clearPersistedLearnedVision, persistLearnedVision, } from "../learned-capabilities.js";
|
|
5
5
|
import { capabilityKey, configuredVisionModel, isSelectableModel, loadLearnedCapabilities, setLearnedLoaded, visionCapabilityCache, visionSubstitutions, } from "./state.js";
|
|
6
6
|
export function visionSubstitutionOrigin(provider, substitute) {
|
|
@@ -33,6 +33,8 @@ export function registerModelVisionCapability(input) {
|
|
|
33
33
|
});
|
|
34
34
|
}
|
|
35
35
|
export function learnModelVisionCapability(provider, model, vision) {
|
|
36
|
+
if (!vision && isKnownPatternVisionModel(provider, model))
|
|
37
|
+
return;
|
|
36
38
|
loadLearnedCapabilities();
|
|
37
39
|
const key = capabilityKey(provider, model);
|
|
38
40
|
const existing = visionCapabilityCache.get(key);
|
|
@@ -70,8 +72,10 @@ export function modelVisionSupport(provider, model) {
|
|
|
70
72
|
warnOnUnknownProviderId("modelVisionSupport", provider);
|
|
71
73
|
loadLearnedCapabilities();
|
|
72
74
|
const cached = visionCapabilityCache.get(capabilityKey(provider, model));
|
|
73
|
-
if (cached)
|
|
75
|
+
if (cached && cached.source === "user")
|
|
74
76
|
return cached.vision ? "yes" : "no";
|
|
77
|
+
if (cached?.vision)
|
|
78
|
+
return "yes";
|
|
75
79
|
const configured = configuredVisionModel(provider);
|
|
76
80
|
if (configured?.toLowerCase() === model.trim().toLowerCase())
|
|
77
81
|
return "yes";
|
|
@@ -83,6 +87,8 @@ export function modelVisionSupport(provider, model) {
|
|
|
83
87
|
return "yes";
|
|
84
88
|
if (universalVisionPatterns.some(matches))
|
|
85
89
|
return "yes";
|
|
90
|
+
if (cached && !cached.vision)
|
|
91
|
+
return "no";
|
|
86
92
|
return "unknown";
|
|
87
93
|
}
|
|
88
94
|
export function modelSupportsVision(provider, model) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vision-registry.js","sourceRoot":"","sources":["../../../src/llm/capability/vision-registry.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"vision-registry.js","sourceRoot":"","sources":["../../../src/llm/capability/vision-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -42,6 +42,7 @@ const CONTEXT_WINDOW_RULES = [
|
|
|
42
42
|
{ pattern: /glm-?5/i, tokens: 200_000 },
|
|
43
43
|
{ pattern: /glm-?4\.[56]/i, tokens: 200_000 },
|
|
44
44
|
{ pattern: /glm-?4/i, tokens: 128_000 },
|
|
45
|
+
{ pattern: /minimax-text-01/i, tokens: 4_000_000 },
|
|
45
46
|
{ pattern: /minimax-m3/i, tokens: 1_000_000 },
|
|
46
47
|
{ pattern: /minimax-m2\.7/i, tokens: 204_800 },
|
|
47
48
|
{ pattern: /minimax/i, tokens: 128_000 },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-windows.js","sourceRoot":"","sources":["../../src/llm/context-windows.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context-windows.js","sourceRoot":"","sources":["../../src/llm/context-windows.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { defaultModels, } from "./provider.js";
|
|
2
|
+
import { openAiCompatibleComplete, openAiCompatiblePing, openAiCompatibleStream, toCompletionResult, readJson, ingestOpenAiModelCatalog, } from "./http.js";
|
|
3
|
+
const baseUrl = "https://api.deepseek.com";
|
|
4
|
+
let cachedModels = null;
|
|
5
|
+
let lastFetchTime = 0;
|
|
6
|
+
const CACHE_TTL_MS = 60 * 60 * 1000;
|
|
7
|
+
export const deepseekProvider = {
|
|
8
|
+
id: "deepseek",
|
|
9
|
+
reasoningStyle: "openai",
|
|
10
|
+
displayName: "DeepSeek",
|
|
11
|
+
defaultModel: defaultModels.deepseek,
|
|
12
|
+
envVar: "DEEPSEEK_API_KEY",
|
|
13
|
+
validateKey: (key) => /^sk-[A-Za-z0-9_-]{16,}$/.test(key),
|
|
14
|
+
async listModels(auth) {
|
|
15
|
+
if (!auth.apiKey)
|
|
16
|
+
throw new Error("DeepSeek API key is required");
|
|
17
|
+
const now = Date.now();
|
|
18
|
+
if (cachedModels && now - lastFetchTime < CACHE_TTL_MS) {
|
|
19
|
+
return cachedModels;
|
|
20
|
+
}
|
|
21
|
+
const response = await fetch(`${baseUrl}/models`, {
|
|
22
|
+
headers: { authorization: `Bearer ${auth.apiKey}` },
|
|
23
|
+
});
|
|
24
|
+
const data = await readJson(response);
|
|
25
|
+
const models = ingestOpenAiModelCatalog("deepseek", data);
|
|
26
|
+
if (models.length > 0) {
|
|
27
|
+
cachedModels = models;
|
|
28
|
+
lastFetchTime = now;
|
|
29
|
+
}
|
|
30
|
+
return models;
|
|
31
|
+
},
|
|
32
|
+
async ping(auth) {
|
|
33
|
+
if (!auth.apiKey)
|
|
34
|
+
throw new Error("DeepSeek API key is required");
|
|
35
|
+
await openAiCompatiblePing(baseUrl, auth.apiKey);
|
|
36
|
+
},
|
|
37
|
+
async complete(request, auth) {
|
|
38
|
+
if (!auth.apiKey)
|
|
39
|
+
throw new Error("DeepSeek API key is required");
|
|
40
|
+
const model = request.model ?? defaultModels.deepseek;
|
|
41
|
+
const payload = await openAiCompatibleComplete({
|
|
42
|
+
responsesFirst: true,
|
|
43
|
+
provider: "DeepSeek",
|
|
44
|
+
providerId: "deepseek",
|
|
45
|
+
baseUrl,
|
|
46
|
+
apiKey: auth.apiKey,
|
|
47
|
+
model,
|
|
48
|
+
messages: request.messages,
|
|
49
|
+
maxTokens: request.maxTokens,
|
|
50
|
+
temperature: request.temperature,
|
|
51
|
+
signal: request.signal,
|
|
52
|
+
reasoning: request.thinking,
|
|
53
|
+
reasoningStyle: "openai",
|
|
54
|
+
tools: request.tools,
|
|
55
|
+
toolChoice: request.toolChoice,
|
|
56
|
+
parallelToolCalls: request.parallelToolCalls,
|
|
57
|
+
reasoningArtifactReplayObserver: request.onReasoningArtifactReplayDecision,
|
|
58
|
+
...(request.forceReasoningReplay ? { forceReasoningReplay: true } : {}),
|
|
59
|
+
});
|
|
60
|
+
return toCompletionResult("deepseek", model, payload);
|
|
61
|
+
},
|
|
62
|
+
async stream(request, auth, onToken) {
|
|
63
|
+
if (!auth.apiKey)
|
|
64
|
+
throw new Error("DeepSeek API key is required");
|
|
65
|
+
const model = request.model ?? defaultModels.deepseek;
|
|
66
|
+
const payload = await openAiCompatibleStream({
|
|
67
|
+
responsesFirst: true,
|
|
68
|
+
provider: "DeepSeek",
|
|
69
|
+
providerId: "deepseek",
|
|
70
|
+
baseUrl,
|
|
71
|
+
apiKey: auth.apiKey,
|
|
72
|
+
model,
|
|
73
|
+
messages: request.messages,
|
|
74
|
+
maxTokens: request.maxTokens,
|
|
75
|
+
temperature: request.temperature,
|
|
76
|
+
signal: request.signal,
|
|
77
|
+
onToken,
|
|
78
|
+
onToolCallDelta: request.onToolCallDelta,
|
|
79
|
+
onStreamEvent: request.onStreamEvent,
|
|
80
|
+
reasoning: request.thinking,
|
|
81
|
+
reasoningStyle: "openai",
|
|
82
|
+
tools: request.tools,
|
|
83
|
+
toolChoice: request.toolChoice,
|
|
84
|
+
parallelToolCalls: request.parallelToolCalls,
|
|
85
|
+
reasoningArtifactReplayObserver: request.onReasoningArtifactReplayDecision,
|
|
86
|
+
...(request.forceReasoningReplay ? { forceReasoningReplay: true } : {}),
|
|
87
|
+
});
|
|
88
|
+
return toCompletionResult("deepseek", model, payload);
|
|
89
|
+
},
|
|
90
|
+
};
|
|
91
|
+
//# sourceMappingURL=deepseek.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deepseek.js","sourceRoot":"","sources":["../../src/llm/deepseek.ts"],"names":[],"mappings":"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"}
|
package/dist/llm/glm.js
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { defaultModels, } from "./provider.js";
|
|
2
|
+
import { openAiCompatibleComplete, openAiCompatiblePing, openAiCompatibleStream, toCompletionResult, readJson, ingestOpenAiModelCatalog, } from "./http.js";
|
|
3
|
+
const baseUrl = "https://api.z.ai/api/paas/v4";
|
|
4
|
+
let cachedModels = null;
|
|
5
|
+
let lastFetchTime = 0;
|
|
6
|
+
const CACHE_TTL_MS = 60 * 60 * 1000;
|
|
7
|
+
export const glmProvider = {
|
|
8
|
+
id: "glm",
|
|
9
|
+
reasoningStyle: "openai",
|
|
10
|
+
displayName: "GLM",
|
|
11
|
+
defaultModel: defaultModels.glm,
|
|
12
|
+
envVar: "GLM_API_KEY",
|
|
13
|
+
validateKey: (key) => /^[A-Za-z0-9._-]{16,}$/.test(key),
|
|
14
|
+
async listModels(auth) {
|
|
15
|
+
if (!auth.apiKey)
|
|
16
|
+
throw new Error("GLM API key is required");
|
|
17
|
+
const now = Date.now();
|
|
18
|
+
if (cachedModels && now - lastFetchTime < CACHE_TTL_MS) {
|
|
19
|
+
return cachedModels;
|
|
20
|
+
}
|
|
21
|
+
const response = await fetch(`${baseUrl}/models`, {
|
|
22
|
+
headers: { authorization: `Bearer ${auth.apiKey}` },
|
|
23
|
+
});
|
|
24
|
+
const data = await readJson(response);
|
|
25
|
+
const models = ingestOpenAiModelCatalog("glm", data);
|
|
26
|
+
if (models.length > 0) {
|
|
27
|
+
cachedModels = models;
|
|
28
|
+
lastFetchTime = now;
|
|
29
|
+
}
|
|
30
|
+
return models;
|
|
31
|
+
},
|
|
32
|
+
async ping(auth) {
|
|
33
|
+
if (!auth.apiKey)
|
|
34
|
+
throw new Error("GLM API key is required");
|
|
35
|
+
await openAiCompatiblePing(baseUrl, auth.apiKey);
|
|
36
|
+
},
|
|
37
|
+
async complete(request, auth) {
|
|
38
|
+
if (!auth.apiKey)
|
|
39
|
+
throw new Error("GLM API key is required");
|
|
40
|
+
const model = request.model ?? defaultModels.glm;
|
|
41
|
+
const payload = await openAiCompatibleComplete({
|
|
42
|
+
responsesFirst: false,
|
|
43
|
+
provider: "GLM",
|
|
44
|
+
providerId: "glm",
|
|
45
|
+
baseUrl,
|
|
46
|
+
apiKey: auth.apiKey,
|
|
47
|
+
model,
|
|
48
|
+
messages: request.messages,
|
|
49
|
+
maxTokens: request.maxTokens,
|
|
50
|
+
temperature: request.temperature,
|
|
51
|
+
signal: request.signal,
|
|
52
|
+
reasoning: request.thinking,
|
|
53
|
+
reasoningStyle: "openai",
|
|
54
|
+
tools: request.tools,
|
|
55
|
+
toolChoice: request.toolChoice,
|
|
56
|
+
parallelToolCalls: request.parallelToolCalls,
|
|
57
|
+
reasoningArtifactReplayObserver: request.onReasoningArtifactReplayDecision,
|
|
58
|
+
...(request.forceReasoningReplay ? { forceReasoningReplay: true } : {}),
|
|
59
|
+
});
|
|
60
|
+
return toCompletionResult("glm", model, payload);
|
|
61
|
+
},
|
|
62
|
+
async stream(request, auth, onToken) {
|
|
63
|
+
if (!auth.apiKey)
|
|
64
|
+
throw new Error("GLM API key is required");
|
|
65
|
+
const model = request.model ?? defaultModels.glm;
|
|
66
|
+
const payload = await openAiCompatibleStream({
|
|
67
|
+
responsesFirst: false,
|
|
68
|
+
provider: "GLM",
|
|
69
|
+
providerId: "glm",
|
|
70
|
+
baseUrl,
|
|
71
|
+
apiKey: auth.apiKey,
|
|
72
|
+
model,
|
|
73
|
+
messages: request.messages,
|
|
74
|
+
maxTokens: request.maxTokens,
|
|
75
|
+
temperature: request.temperature,
|
|
76
|
+
signal: request.signal,
|
|
77
|
+
onToken,
|
|
78
|
+
onToolCallDelta: request.onToolCallDelta,
|
|
79
|
+
onStreamEvent: request.onStreamEvent,
|
|
80
|
+
reasoning: request.thinking,
|
|
81
|
+
reasoningStyle: "openai",
|
|
82
|
+
tools: request.tools,
|
|
83
|
+
toolChoice: request.toolChoice,
|
|
84
|
+
parallelToolCalls: request.parallelToolCalls,
|
|
85
|
+
reasoningArtifactReplayObserver: request.onReasoningArtifactReplayDecision,
|
|
86
|
+
...(request.forceReasoningReplay ? { forceReasoningReplay: true } : {}),
|
|
87
|
+
});
|
|
88
|
+
return toCompletionResult("glm", model, payload);
|
|
89
|
+
},
|
|
90
|
+
};
|
|
91
|
+
//# sourceMappingURL=glm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glm.js","sourceRoot":"","sources":["../../src/llm/glm.ts"],"names":[],"mappings":"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"}
|
package/dist/llm/kimi.js
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { defaultModels, } from "./provider.js";
|
|
2
|
+
import { openAiCompatibleComplete, openAiCompatiblePing, openAiCompatibleStream, toCompletionResult, readJson, ingestOpenAiModelCatalog, } from "./http.js";
|
|
3
|
+
const baseUrl = "https://api.moonshot.ai/v1";
|
|
4
|
+
let cachedModels = null;
|
|
5
|
+
let lastFetchTime = 0;
|
|
6
|
+
const CACHE_TTL_MS = 60 * 60 * 1000;
|
|
7
|
+
export const kimiProvider = {
|
|
8
|
+
id: "kimi",
|
|
9
|
+
reasoningStyle: "openai",
|
|
10
|
+
displayName: "Kimi",
|
|
11
|
+
defaultModel: defaultModels.kimi,
|
|
12
|
+
envVar: "KIMI_API_KEY",
|
|
13
|
+
validateKey: (key) => /^sk-[A-Za-z0-9_-]{16,}$/.test(key),
|
|
14
|
+
async listModels(auth) {
|
|
15
|
+
if (!auth.apiKey)
|
|
16
|
+
throw new Error("Kimi API key is required");
|
|
17
|
+
const now = Date.now();
|
|
18
|
+
if (cachedModels && now - lastFetchTime < CACHE_TTL_MS) {
|
|
19
|
+
return cachedModels;
|
|
20
|
+
}
|
|
21
|
+
const response = await fetch(`${baseUrl}/models`, {
|
|
22
|
+
headers: { authorization: `Bearer ${auth.apiKey}` },
|
|
23
|
+
});
|
|
24
|
+
const data = await readJson(response);
|
|
25
|
+
const models = ingestOpenAiModelCatalog("kimi", data);
|
|
26
|
+
if (models.length > 0) {
|
|
27
|
+
cachedModels = models;
|
|
28
|
+
lastFetchTime = now;
|
|
29
|
+
}
|
|
30
|
+
return models;
|
|
31
|
+
},
|
|
32
|
+
async ping(auth) {
|
|
33
|
+
if (!auth.apiKey)
|
|
34
|
+
throw new Error("Kimi API key is required");
|
|
35
|
+
await openAiCompatiblePing(baseUrl, auth.apiKey);
|
|
36
|
+
},
|
|
37
|
+
async complete(request, auth) {
|
|
38
|
+
if (!auth.apiKey)
|
|
39
|
+
throw new Error("Kimi API key is required");
|
|
40
|
+
const model = request.model ?? defaultModels.kimi;
|
|
41
|
+
const payload = await openAiCompatibleComplete({
|
|
42
|
+
responsesFirst: true,
|
|
43
|
+
provider: "Kimi",
|
|
44
|
+
providerId: "kimi",
|
|
45
|
+
baseUrl,
|
|
46
|
+
apiKey: auth.apiKey,
|
|
47
|
+
model,
|
|
48
|
+
messages: request.messages,
|
|
49
|
+
maxTokens: request.maxTokens,
|
|
50
|
+
temperature: request.temperature,
|
|
51
|
+
signal: request.signal,
|
|
52
|
+
reasoning: request.thinking,
|
|
53
|
+
reasoningStyle: "openai",
|
|
54
|
+
tools: request.tools,
|
|
55
|
+
toolChoice: request.toolChoice,
|
|
56
|
+
parallelToolCalls: request.parallelToolCalls,
|
|
57
|
+
reasoningArtifactReplayObserver: request.onReasoningArtifactReplayDecision,
|
|
58
|
+
...(request.forceReasoningReplay ? { forceReasoningReplay: true } : {}),
|
|
59
|
+
});
|
|
60
|
+
return toCompletionResult("kimi", model, payload);
|
|
61
|
+
},
|
|
62
|
+
async stream(request, auth, onToken) {
|
|
63
|
+
if (!auth.apiKey)
|
|
64
|
+
throw new Error("Kimi API key is required");
|
|
65
|
+
const model = request.model ?? defaultModels.kimi;
|
|
66
|
+
const payload = await openAiCompatibleStream({
|
|
67
|
+
responsesFirst: true,
|
|
68
|
+
provider: "Kimi",
|
|
69
|
+
providerId: "kimi",
|
|
70
|
+
baseUrl,
|
|
71
|
+
apiKey: auth.apiKey,
|
|
72
|
+
model,
|
|
73
|
+
messages: request.messages,
|
|
74
|
+
maxTokens: request.maxTokens,
|
|
75
|
+
temperature: request.temperature,
|
|
76
|
+
signal: request.signal,
|
|
77
|
+
onToken,
|
|
78
|
+
onToolCallDelta: request.onToolCallDelta,
|
|
79
|
+
onStreamEvent: request.onStreamEvent,
|
|
80
|
+
reasoning: request.thinking,
|
|
81
|
+
reasoningStyle: "openai",
|
|
82
|
+
tools: request.tools,
|
|
83
|
+
toolChoice: request.toolChoice,
|
|
84
|
+
parallelToolCalls: request.parallelToolCalls,
|
|
85
|
+
reasoningArtifactReplayObserver: request.onReasoningArtifactReplayDecision,
|
|
86
|
+
...(request.forceReasoningReplay ? { forceReasoningReplay: true } : {}),
|
|
87
|
+
});
|
|
88
|
+
return toCompletionResult("kimi", model, payload);
|
|
89
|
+
},
|
|
90
|
+
};
|
|
91
|
+
//# sourceMappingURL=kimi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kimi.js","sourceRoot":"","sources":["../../src/llm/kimi.ts"],"names":[],"mappings":"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"}
|