@pentoshi/clai 4.11.21 → 4.11.23
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/agent/evidence/task-selection.d.ts +0 -15
- package/dist/agent/evidence/task-selection.js +1 -33
- package/dist/agent/evidence/task-selection.js.map +1 -1
- package/dist/agent/plan/actions/plan-clear.js.map +1 -1
- package/dist/agent/plan/actions/plan-create.js.map +1 -1
- package/dist/agent/plan/actions/task-add.js.map +1 -1
- package/dist/agent/plan/actions/task-move.js.map +1 -1
- package/dist/agent/plan/handle-plan-tool.js +5 -154
- package/dist/agent/plan/handle-plan-tool.js.map +1 -1
- package/dist/agent/runner.js +1 -13
- package/dist/agent/runner.js.map +1 -1
- package/dist/agent/session-policy.d.ts +0 -6
- package/dist/agent/session-policy.js +0 -2
- package/dist/agent/session-policy.js.map +1 -1
- package/dist/agent/task-evidence.d.ts +2 -2
- package/dist/agent/task-evidence.js +1 -1
- package/dist/agent/task-evidence.js.map +1 -1
- package/dist/agent/turn/compaction-admission.d.ts +5 -0
- package/dist/agent/turn/compaction-admission.js +24 -0
- package/dist/agent/turn/compaction-admission.js.map +1 -1
- package/dist/agent/turn/compaction-coordinator.d.ts +1 -0
- package/dist/agent/turn/compaction-coordinator.js +2 -0
- package/dist/agent/turn/compaction-coordinator.js.map +1 -1
- package/dist/agent/turn/loop/run-rounds.js +17 -24
- package/dist/agent/turn/loop/run-rounds.js.map +1 -1
- package/dist/agent/turn/loop/state.d.ts +1 -2
- package/dist/agent/turn/loop/state.js +1 -2
- package/dist/agent/turn/loop/state.js.map +1 -1
- package/dist/agent/turn/setup/compaction-services.d.ts +1 -0
- package/dist/agent/turn/setup/compaction-services.js +1 -0
- package/dist/agent/turn/setup/compaction-services.js.map +1 -1
- package/dist/agent/turn/setup/task-gate-setup.d.ts +1 -11
- package/dist/agent/turn/setup/task-gate-setup.js +4 -19
- package/dist/agent/turn/setup/task-gate-setup.js.map +1 -1
- package/dist/agent/turn/tool-execution/deps.d.ts +1 -5
- package/dist/agent/turn/tool-execution/guards.d.ts +0 -4
- package/dist/agent/turn/tool-execution/guards.js +3 -12
- package/dist/agent/turn/tool-execution/guards.js.map +1 -1
- package/dist/agent/turn/tool-execution/meta-tools.d.ts +0 -2
- package/dist/agent/turn/tool-execution/meta-tools.js +0 -17
- package/dist/agent/turn/tool-execution/meta-tools.js.map +1 -1
- package/dist/agent/turn/tool-execution/single-tool.js +0 -14
- package/dist/agent/turn/tool-execution/single-tool.js.map +1 -1
- package/dist/app/commands/catalog.js +32 -1
- package/dist/app/commands/catalog.js.map +1 -1
- package/dist/classic/panels/keys-panel.js +8 -1
- package/dist/classic/panels/keys-panel.js.map +1 -1
- package/dist/classic/panels/pager-panel.d.ts +2 -2
- package/dist/classic/panels/pager-panel.js +10 -7
- package/dist/classic/panels/pager-panel.js.map +1 -1
- package/dist/classic/panels/panel-host.js +1 -1
- package/dist/classic/panels/panel-host.js.map +1 -1
- package/dist/commands/providers.d.ts +17 -0
- package/dist/commands/providers.js +317 -28
- package/dist/commands/providers.js.map +1 -1
- package/dist/index.js +31 -1
- package/dist/index.js.map +1 -1
- package/dist/llm/agentrouter.js +1 -1
- package/dist/llm/anthropic.d.ts +4 -2
- package/dist/llm/anthropic.js +186 -178
- package/dist/llm/anthropic.js.map +1 -1
- package/dist/llm/bynara.js +1 -1
- package/dist/llm/capability/state.d.ts +1 -1
- package/dist/llm/capability/tool-dialect.js +3 -0
- package/dist/llm/capability/tool-dialect.js.map +1 -1
- package/dist/llm/capability/vision-patterns.js +3 -0
- package/dist/llm/capability/vision-patterns.js.map +1 -1
- package/dist/llm/catalog-facts.js +50 -2
- package/dist/llm/catalog-facts.js.map +1 -1
- package/dist/llm/catalog-prefetch.js +1 -1
- package/dist/llm/cline-auth.d.ts +34 -0
- package/dist/llm/cline-auth.js +248 -0
- package/dist/llm/cline-auth.js.map +1 -0
- package/dist/llm/cline.d.ts +2 -0
- package/dist/llm/cline.js +147 -0
- package/dist/llm/cline.js.map +1 -0
- package/dist/llm/codex-auth.d.ts +53 -0
- package/dist/llm/codex-auth.js +512 -0
- package/dist/llm/codex-auth.js.map +1 -0
- package/dist/llm/codex.d.ts +4 -0
- package/dist/llm/codex.js +239 -0
- package/dist/llm/codex.js.map +1 -0
- package/dist/llm/copilot-auth.d.ts +38 -0
- package/dist/llm/copilot-auth.js +258 -0
- package/dist/llm/copilot-auth.js.map +1 -0
- package/dist/llm/copilot.d.ts +4 -0
- package/dist/llm/copilot.js +226 -0
- package/dist/llm/copilot.js.map +1 -0
- package/dist/llm/custom-providers.js +1 -1
- package/dist/llm/deepseek.js +1 -1
- package/dist/llm/explabs.js +1 -1
- package/dist/llm/fireworks.js +1 -1
- package/dist/llm/free-default-model.js +9 -4
- package/dist/llm/free-default-model.js.map +1 -1
- package/dist/llm/free.d.ts +1 -0
- package/dist/llm/free.js +44 -36
- package/dist/llm/free.js.map +1 -1
- package/dist/llm/glm.js +1 -1
- package/dist/llm/hetzner.js +1 -1
- package/dist/llm/key-rotation.js +1 -1
- package/dist/llm/key-rotation.js.map +1 -1
- package/dist/llm/kimi.js +1 -1
- package/dist/llm/lightning.js +1 -1
- package/dist/llm/merge-gateway.js +1 -1
- package/dist/llm/meta.js +1 -1
- package/dist/llm/minimax.js +1 -1
- package/dist/llm/model-families.js +1 -1
- package/dist/llm/model-families.js.map +1 -1
- package/dist/llm/model-layers/model-rules.js +6 -0
- package/dist/llm/model-layers/model-rules.js.map +1 -1
- package/dist/llm/nvidia.js +1 -1
- package/dist/llm/openrouter.js +1 -1
- package/dist/llm/orcarouter.js +1 -1
- package/dist/llm/provider-identity.d.ts +2 -0
- package/dist/llm/provider-identity.js +35 -0
- package/dist/llm/provider-identity.js.map +1 -1
- package/dist/llm/provider-info-text.js +115 -13
- package/dist/llm/provider-info-text.js.map +1 -1
- package/dist/llm/provider-profile-layers.js +101 -0
- package/dist/llm/provider-profile-layers.js.map +1 -1
- package/dist/llm/provider-profiles.js +2 -1
- package/dist/llm/provider-profiles.js.map +1 -1
- package/dist/llm/provider.d.ts +6 -4
- package/dist/llm/provider.js +2 -2
- package/dist/llm/provider.js.map +1 -1
- package/dist/llm/qwen-cloud.js +1 -1
- package/dist/llm/reasoning-capability.js +14 -0
- package/dist/llm/reasoning-capability.js.map +1 -1
- package/dist/llm/responses/item-events.js +10 -0
- package/dist/llm/responses/item-events.js.map +1 -1
- package/dist/llm/responses-config.d.ts +4 -0
- package/dist/llm/responses-config.js.map +1 -1
- package/dist/llm/responses-parse.js +23 -11
- package/dist/llm/responses-parse.js.map +1 -1
- package/dist/llm/responses-request.js +31 -8
- package/dist/llm/responses-request.js.map +1 -1
- package/dist/llm/responses-stream-events.js +21 -5
- package/dist/llm/responses-stream-events.js.map +1 -1
- package/dist/llm/routing/attempt-complete.js +1 -1
- package/dist/llm/routing/attempt-complete.js.map +1 -1
- package/dist/llm/routing/attempt-request.js +1 -1
- package/dist/llm/routing/attempt-request.js.map +1 -1
- package/dist/llm/routing/attempt-stream.js +2 -2
- package/dist/llm/routing/attempt-stream.js.map +1 -1
- package/dist/llm/routing/failure-report.js +1 -1
- package/dist/llm/routing/failure-report.js.map +1 -1
- package/dist/llm/routing/key-rotation.js +9 -4
- package/dist/llm/routing/key-rotation.js.map +1 -1
- package/dist/llm/routing/provider-selection.d.ts +2 -1
- package/dist/llm/routing/provider-selection.js +18 -4
- package/dist/llm/routing/provider-selection.js.map +1 -1
- package/dist/llm/tokenrouter.js +1 -1
- package/dist/llm/vercel.js +1 -1
- package/dist/llm/wire/chat-body.js +5 -3
- package/dist/llm/wire/chat-body.js.map +1 -1
- package/dist/llm/wire/openai-complete.d.ts +1 -0
- package/dist/llm/wire/openai-complete.js +9 -0
- package/dist/llm/wire/openai-complete.js.map +1 -1
- package/dist/store/config.js +3 -0
- package/dist/store/config.js.map +1 -1
- package/dist/store/keys/search-providers.d.ts +2 -0
- package/dist/store/keys/search-providers.js +6 -0
- package/dist/store/keys/search-providers.js.map +1 -1
- package/dist/store/keys.d.ts +6 -1
- package/dist/store/keys.js +46 -17
- package/dist/store/keys.js.map +1 -1
- package/dist/store/plan/mutation.d.ts +0 -1
- package/dist/store/plan/mutation.js +1 -22
- package/dist/store/plan/mutation.js.map +1 -1
- package/dist/store/plan.d.ts +1 -1
- package/dist/store/plan.js +1 -4
- package/dist/store/plan.js.map +1 -1
- package/dist/tui-v2/components/modal/keys-modal-pick.d.ts +5 -0
- package/dist/tui-v2/components/modal/keys-modal-pick.js +13 -0
- package/dist/tui-v2/components/modal/keys-modal-pick.js.map +1 -1
- package/dist/tui-v2/components/modal/keys-modal.js +15 -13
- package/dist/tui-v2/components/modal/keys-modal.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -1
- package/dist/ui-core/bootstrap/capabilities.d.ts +1 -0
- package/dist/ui-core/bootstrap/capabilities.js +14 -0
- package/dist/ui-core/bootstrap/capabilities.js.map +1 -1
- package/dist/ui-core/commands/key-commands.d.ts +6 -3
- package/dist/ui-core/commands/key-commands.js +506 -15
- package/dist/ui-core/commands/key-commands.js.map +1 -1
- package/dist/ui-core/commands/keys/editors.js +10 -4
- package/dist/ui-core/commands/keys/editors.js.map +1 -1
- package/dist/ui-core/commands/picker-commands.js +86 -32
- package/dist/ui-core/commands/picker-commands.js.map +1 -1
- package/dist/ui-core/commands/subagent-models-editor.js +12 -4
- package/dist/ui-core/commands/subagent-models-editor.js.map +1 -1
- package/dist/ui-core/controllers/overlay-controller.d.ts +4 -0
- package/dist/ui-core/controllers/overlay-controller.js.map +1 -1
- package/dist/ui-core/rendering/format-keys.js +4 -2
- package/dist/ui-core/rendering/format-keys.js.map +1 -1
- package/dist/ui-core/rendering/format-usage.js +3 -1
- package/dist/ui-core/rendering/format-usage.js.map +1 -1
- package/dist/ui-core/rendering/intro-header.js +4 -1
- package/dist/ui-core/rendering/intro-header.js.map +1 -1
- package/dist/version.generated.d.ts +2 -2
- package/dist/version.generated.js +2 -2
- package/package.json +1 -1
- package/dist/agent/task-sync.d.ts +0 -40
- package/dist/agent/task-sync.js +0 -105
- package/dist/agent/task-sync.js.map +0 -1
- package/dist/agent/turn/task-batch-guard.d.ts +0 -18
- package/dist/agent/turn/task-batch-guard.js +0 -83
- package/dist/agent/turn/task-batch-guard.js.map +0 -1
- package/dist/agent/turn/task-gate.d.ts +0 -13
- package/dist/agent/turn/task-gate.js +0 -34
- package/dist/agent/turn/task-gate.js.map +0 -1
- package/dist/agent/turn/task-update-gate.d.ts +0 -13
- package/dist/agent/turn/task-update-gate.js +0 -40
- package/dist/agent/turn/task-update-gate.js.map +0 -1
- package/dist/store/task-transitions.d.ts +0 -12
- package/dist/store/task-transitions.js +0 -40
- package/dist/store/task-transitions.js.map +0 -1
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
import { GITHUB_COPILOT_DISPLAY_NAME, defaultModels, } from "./provider.js";
|
|
2
|
+
import { openAiCompatibleComplete, openAiCompatibleStream, toCompletionResult, readJson, ingestModelCatalogEntries, ProviderError, } from "./http.js";
|
|
3
|
+
import { COPILOT_REQUEST_HEADERS, copilotRequestHeaders, copilotInitiator, invalidateCopilotApiToken, isCopilotOAuthToken, resolveCopilotApiToken, } from "./copilot-auth.js";
|
|
4
|
+
import { currentRequestPurpose } from "./request-purpose.js";
|
|
5
|
+
import { executeAnthropicComplete, executeAnthropicStream } from "./anthropic.js";
|
|
6
|
+
export const copilotFallbackModels = [
|
|
7
|
+
"gpt-4o",
|
|
8
|
+
"gpt-4o-mini",
|
|
9
|
+
"claude-sonnet-4.5",
|
|
10
|
+
"claude-3.5-sonnet",
|
|
11
|
+
"o1",
|
|
12
|
+
"o3-mini",
|
|
13
|
+
];
|
|
14
|
+
let cachedModels = null;
|
|
15
|
+
let lastFetchTime = 0;
|
|
16
|
+
const CACHE_TTL_MS = 30 * 60 * 1000;
|
|
17
|
+
export function resetCopilotModelCache() {
|
|
18
|
+
cachedModels = null;
|
|
19
|
+
lastFetchTime = 0;
|
|
20
|
+
}
|
|
21
|
+
function requireKey(auth) {
|
|
22
|
+
if (!auth.apiKey) {
|
|
23
|
+
throw new Error(`${GITHUB_COPILOT_DISPLAY_NAME} authentication required. Run \`clai auth copilot\` (device sign-in) or add a key with \`clai set copilot <github-token>\`.`);
|
|
24
|
+
}
|
|
25
|
+
return auth.apiKey;
|
|
26
|
+
}
|
|
27
|
+
async function withCopilotApiToken(auth, run) {
|
|
28
|
+
const githubToken = requireKey(auth);
|
|
29
|
+
const api = await resolveCopilotApiToken(githubToken);
|
|
30
|
+
try {
|
|
31
|
+
return await run(api.token, api.baseUrl);
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
const status = error instanceof ProviderError ? error.status : undefined;
|
|
35
|
+
const renewable = status === 401 && currentRequestPurpose() === undefined;
|
|
36
|
+
if (!renewable)
|
|
37
|
+
throw error;
|
|
38
|
+
invalidateCopilotApiToken(githubToken);
|
|
39
|
+
const renewed = await resolveCopilotApiToken(githubToken);
|
|
40
|
+
if (!renewed.token || renewed.token === api.token)
|
|
41
|
+
throw error;
|
|
42
|
+
return run(renewed.token, renewed.baseUrl);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
function copilotHeaders(messages) {
|
|
46
|
+
return copilotRequestHeaders({
|
|
47
|
+
"X-Initiator": copilotInitiator(messages),
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
function isAnthropicModel(model) {
|
|
51
|
+
return /(?:^|[./-])(?:anthropic|claude)(?:[./-]|$)/i.test(model);
|
|
52
|
+
}
|
|
53
|
+
function filterCopilotEntries(entries) {
|
|
54
|
+
const usable = entries.filter((raw) => {
|
|
55
|
+
if (!raw || typeof raw !== "object")
|
|
56
|
+
return false;
|
|
57
|
+
const item = raw;
|
|
58
|
+
const policy = item.policy;
|
|
59
|
+
return policy?.state !== "disabled";
|
|
60
|
+
});
|
|
61
|
+
const pickerEnabled = usable.filter((raw) => {
|
|
62
|
+
const item = raw;
|
|
63
|
+
return item.model_picker_enabled === true;
|
|
64
|
+
});
|
|
65
|
+
return pickerEnabled.length > 0 ? pickerEnabled : usable;
|
|
66
|
+
}
|
|
67
|
+
export const copilotProvider = {
|
|
68
|
+
id: "copilot",
|
|
69
|
+
displayName: GITHUB_COPILOT_DISPLAY_NAME,
|
|
70
|
+
reasoningStyle: "openai",
|
|
71
|
+
defaultModel: defaultModels.copilot,
|
|
72
|
+
envVar: "COPILOT_API_KEY",
|
|
73
|
+
validateKey: (key) => isCopilotOAuthToken(key.trim()),
|
|
74
|
+
async listModels(auth) {
|
|
75
|
+
const now = Date.now();
|
|
76
|
+
if (cachedModels && now - lastFetchTime < CACHE_TTL_MS) {
|
|
77
|
+
return cachedModels;
|
|
78
|
+
}
|
|
79
|
+
const githubToken = requireKey(auth);
|
|
80
|
+
const api = await resolveCopilotApiToken(githubToken);
|
|
81
|
+
const response = await fetch(`${api.baseUrl}/models`, {
|
|
82
|
+
headers: {
|
|
83
|
+
authorization: `Bearer ${api.token}`,
|
|
84
|
+
accept: "application/json",
|
|
85
|
+
...COPILOT_REQUEST_HEADERS,
|
|
86
|
+
},
|
|
87
|
+
});
|
|
88
|
+
const payload = await readJson(response);
|
|
89
|
+
const entries = Array.isArray(payload.data) ? payload.data : [];
|
|
90
|
+
const filtered = filterCopilotEntries(entries);
|
|
91
|
+
const models = ingestModelCatalogEntries("copilot", filtered);
|
|
92
|
+
const result = models.length > 0 ? models : [...copilotFallbackModels];
|
|
93
|
+
if (result.length > 0) {
|
|
94
|
+
cachedModels = result;
|
|
95
|
+
lastFetchTime = now;
|
|
96
|
+
}
|
|
97
|
+
return result;
|
|
98
|
+
},
|
|
99
|
+
async ping(auth) {
|
|
100
|
+
const githubToken = requireKey(auth);
|
|
101
|
+
const api = await resolveCopilotApiToken(githubToken);
|
|
102
|
+
const response = await fetch(`${api.baseUrl}/models`, {
|
|
103
|
+
headers: {
|
|
104
|
+
authorization: `Bearer ${api.token}`,
|
|
105
|
+
accept: "application/json",
|
|
106
|
+
...COPILOT_REQUEST_HEADERS,
|
|
107
|
+
},
|
|
108
|
+
});
|
|
109
|
+
if (!response.ok) {
|
|
110
|
+
throw new ProviderError(`${GITHUB_COPILOT_DISPLAY_NAME} authentication failed (HTTP ${response.status}). Run \`clai auth copilot\` to sign in.`, response.status);
|
|
111
|
+
}
|
|
112
|
+
},
|
|
113
|
+
async complete(request, auth) {
|
|
114
|
+
const model = await resolveCopilotModel(auth, request.model);
|
|
115
|
+
if (isAnthropicModel(model)) {
|
|
116
|
+
return withCopilotApiToken(auth, async (token, baseUrl) => {
|
|
117
|
+
const headers = {
|
|
118
|
+
"content-type": "application/json",
|
|
119
|
+
authorization: `Bearer ${token}`,
|
|
120
|
+
"anthropic-version": "2023-06-01",
|
|
121
|
+
...copilotHeaders(request.messages),
|
|
122
|
+
};
|
|
123
|
+
return executeAnthropicComplete({ ...request, provider: "copilot", model }, { apiKey: token, baseUrl: `${baseUrl}/v1` }, headers);
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
return withCopilotApiToken(auth, async (token, baseUrl) => {
|
|
127
|
+
const isGpt = /(?:^|[./-])(?:gpt|o\d)(?:[./-]|$)/i.test(model);
|
|
128
|
+
const payload = await openAiCompatibleComplete({
|
|
129
|
+
provider: GITHUB_COPILOT_DISPLAY_NAME,
|
|
130
|
+
providerId: "copilot",
|
|
131
|
+
baseUrl,
|
|
132
|
+
apiKey: token,
|
|
133
|
+
model,
|
|
134
|
+
messages: request.messages,
|
|
135
|
+
maxTokens: isGpt ? undefined : request.maxTokens,
|
|
136
|
+
temperature: request.temperature,
|
|
137
|
+
headers: copilotHeaders(request.messages),
|
|
138
|
+
signal: request.signal,
|
|
139
|
+
reasoning: request.thinking,
|
|
140
|
+
reasoningStyle: "openai",
|
|
141
|
+
tools: request.tools,
|
|
142
|
+
toolChoice: request.toolChoice,
|
|
143
|
+
parallelToolCalls: request.parallelToolCalls,
|
|
144
|
+
reasoningArtifactReplayObserver: request.onReasoningArtifactReplayDecision,
|
|
145
|
+
...(request.forceReasoningReplay ? { forceReasoningReplay: true } : {}),
|
|
146
|
+
});
|
|
147
|
+
return toCompletionResult("copilot", model, payload);
|
|
148
|
+
});
|
|
149
|
+
},
|
|
150
|
+
async stream(request, auth, onToken) {
|
|
151
|
+
const model = await resolveCopilotModel(auth, request.model);
|
|
152
|
+
if (isAnthropicModel(model)) {
|
|
153
|
+
return withCopilotApiToken(auth, async (token, baseUrl) => {
|
|
154
|
+
const headers = {
|
|
155
|
+
"content-type": "application/json",
|
|
156
|
+
authorization: `Bearer ${token}`,
|
|
157
|
+
"anthropic-version": "2023-06-01",
|
|
158
|
+
...copilotHeaders(request.messages),
|
|
159
|
+
};
|
|
160
|
+
return executeAnthropicStream({ ...request, provider: "copilot", model }, { apiKey: token, baseUrl: `${baseUrl}/v1` }, onToken, headers);
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
return withCopilotApiToken(auth, async (token, baseUrl) => {
|
|
164
|
+
const isGpt = /(?:^|[./-])(?:gpt|o\d)(?:[./-]|$)/i.test(model);
|
|
165
|
+
const payload = await openAiCompatibleStream({
|
|
166
|
+
provider: GITHUB_COPILOT_DISPLAY_NAME,
|
|
167
|
+
providerId: "copilot",
|
|
168
|
+
baseUrl,
|
|
169
|
+
apiKey: token,
|
|
170
|
+
model,
|
|
171
|
+
messages: request.messages,
|
|
172
|
+
maxTokens: isGpt ? undefined : request.maxTokens,
|
|
173
|
+
temperature: request.temperature,
|
|
174
|
+
headers: copilotHeaders(request.messages),
|
|
175
|
+
signal: request.signal,
|
|
176
|
+
onToken,
|
|
177
|
+
onToolCallDelta: request.onToolCallDelta,
|
|
178
|
+
onStreamEvent: request.onStreamEvent,
|
|
179
|
+
reasoning: request.thinking,
|
|
180
|
+
reasoningStyle: "openai",
|
|
181
|
+
tools: request.tools,
|
|
182
|
+
toolChoice: request.toolChoice,
|
|
183
|
+
parallelToolCalls: request.parallelToolCalls,
|
|
184
|
+
reasoningArtifactReplayObserver: request.onReasoningArtifactReplayDecision,
|
|
185
|
+
...(request.forceReasoningReplay ? { forceReasoningReplay: true } : {}),
|
|
186
|
+
});
|
|
187
|
+
return toCompletionResult("copilot", model, payload);
|
|
188
|
+
});
|
|
189
|
+
},
|
|
190
|
+
};
|
|
191
|
+
async function resolveCopilotModel(auth, requestedModel) {
|
|
192
|
+
let available = [];
|
|
193
|
+
try {
|
|
194
|
+
available = await copilotProvider.listModels(auth);
|
|
195
|
+
}
|
|
196
|
+
catch {
|
|
197
|
+
available = cachedModels ?? [...copilotFallbackModels];
|
|
198
|
+
}
|
|
199
|
+
if (!available.length) {
|
|
200
|
+
return requestedModel ?? defaultModels.copilot;
|
|
201
|
+
}
|
|
202
|
+
if (requestedModel && available.includes(requestedModel)) {
|
|
203
|
+
return requestedModel;
|
|
204
|
+
}
|
|
205
|
+
if (requestedModel) {
|
|
206
|
+
const normalized = requestedModel.trim().toLowerCase();
|
|
207
|
+
const match = available.find((m) => m.trim().toLowerCase() === normalized);
|
|
208
|
+
if (match)
|
|
209
|
+
return match;
|
|
210
|
+
}
|
|
211
|
+
const preferred = [
|
|
212
|
+
"gpt-4o-mini",
|
|
213
|
+
"gpt-4.1-mini",
|
|
214
|
+
"gpt-4o",
|
|
215
|
+
"gpt-4.1",
|
|
216
|
+
"claude-3.5-sonnet",
|
|
217
|
+
"claude-sonnet-4.5",
|
|
218
|
+
];
|
|
219
|
+
for (const candidate of preferred) {
|
|
220
|
+
if (available.includes(candidate)) {
|
|
221
|
+
return candidate;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
return available[0] ?? defaultModels.copilot;
|
|
225
|
+
}
|
|
226
|
+
//# sourceMappingURL=copilot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"copilot.js","sourceRoot":"","sources":["../../src/llm/copilot.ts"],"names":[],"mappings":"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"}
|
|
@@ -73,7 +73,7 @@ function responsesConfig(def, baseUrl) {
|
|
|
73
73
|
export function buildCustomProvider(def) {
|
|
74
74
|
const providerId = def.id;
|
|
75
75
|
const modelCache = new Map();
|
|
76
|
-
const CACHE_TTL_MS =
|
|
76
|
+
const CACHE_TTL_MS = 30 * 60 * 1000;
|
|
77
77
|
const keyless = def.profile?.authType === "none-keyless" ||
|
|
78
78
|
def.profile?.authType === "custom-headers";
|
|
79
79
|
const declaredStreamOptions = def.profile?.streamOptions;
|
package/dist/llm/deepseek.js
CHANGED
|
@@ -3,7 +3,7 @@ import { openAiCompatibleComplete, openAiCompatiblePing, openAiCompatibleStream,
|
|
|
3
3
|
const baseUrl = "https://api.deepseek.com";
|
|
4
4
|
let cachedModels = null;
|
|
5
5
|
let lastFetchTime = 0;
|
|
6
|
-
const CACHE_TTL_MS =
|
|
6
|
+
const CACHE_TTL_MS = 30 * 60 * 1000;
|
|
7
7
|
export const deepseekProvider = {
|
|
8
8
|
id: "deepseek",
|
|
9
9
|
reasoningStyle: "openai",
|
package/dist/llm/explabs.js
CHANGED
|
@@ -155,7 +155,7 @@ export function explabsCatalogIndex(rows) {
|
|
|
155
155
|
}
|
|
156
156
|
let cachedModels = null;
|
|
157
157
|
let lastFetchTime = 0;
|
|
158
|
-
const CACHE_TTL_MS =
|
|
158
|
+
const CACHE_TTL_MS = 30 * 60 * 1000;
|
|
159
159
|
export function resetExplabsCatalogCache() {
|
|
160
160
|
cachedModels = null;
|
|
161
161
|
lastFetchTime = 0;
|
package/dist/llm/fireworks.js
CHANGED
|
@@ -12,7 +12,7 @@ export const fireworksFallbackModels = [
|
|
|
12
12
|
];
|
|
13
13
|
let cachedModels = null;
|
|
14
14
|
let lastFetchTime = 0;
|
|
15
|
-
const CACHE_TTL_MS =
|
|
15
|
+
const CACHE_TTL_MS = 30 * 60 * 1000;
|
|
16
16
|
export const fireworksProvider = {
|
|
17
17
|
id: "fireworks",
|
|
18
18
|
reasoningStyle: "openai",
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { defaultModels } from "./provider.js";
|
|
2
2
|
import { freeProvider } from "./free.js";
|
|
3
3
|
const CATALOG_TIMEOUT_MS = 2_500;
|
|
4
|
+
const DEFAULT_PICK_TTL_MS = 30 * 60 * 1000;
|
|
4
5
|
function withTimeout(work, timeoutMs) {
|
|
5
6
|
return new Promise((resolve) => {
|
|
6
7
|
const timer = setTimeout(() => resolve(undefined), timeoutMs);
|
|
@@ -28,14 +29,18 @@ export function resetFreeDefaultModelCache() {
|
|
|
28
29
|
cachedPick = undefined;
|
|
29
30
|
}
|
|
30
31
|
export async function resolveFreeDefaultModel(deps = {}) {
|
|
31
|
-
if (cachedPick !== undefined &&
|
|
32
|
-
|
|
32
|
+
if (cachedPick !== undefined &&
|
|
33
|
+
deps.listModels === undefined &&
|
|
34
|
+
Date.now() - cachedPick.pickedAt < DEFAULT_PICK_TTL_MS) {
|
|
35
|
+
return cachedPick.value;
|
|
36
|
+
}
|
|
33
37
|
const list = deps.listModels ??
|
|
34
38
|
(() => freeProvider.listModels?.({ apiKey: undefined }) ?? Promise.resolve([]));
|
|
35
39
|
const catalog = await withTimeout(Promise.resolve().then(() => list()), deps.timeoutMs ?? CATALOG_TIMEOUT_MS);
|
|
36
40
|
const picked = pickFreeModel(catalog ?? []);
|
|
37
|
-
if (deps.listModels === undefined)
|
|
38
|
-
cachedPick = picked;
|
|
41
|
+
if (deps.listModels === undefined) {
|
|
42
|
+
cachedPick = { value: picked, pickedAt: Date.now() };
|
|
43
|
+
}
|
|
39
44
|
return picked;
|
|
40
45
|
}
|
|
41
46
|
//# sourceMappingURL=free-default-model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"free-default-model.js","sourceRoot":"","sources":["../../src/llm/free-default-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,kBAAkB,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"free-default-model.js","sourceRoot":"","sources":["../../src/llm/free-default-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,kBAAkB,GAAG,KAAK,CAAC;AACjC,MAAM,mBAAmB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAO3C,SAAS,WAAW,CAClB,IAAuB,EACvB,SAAiB;IAEjB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI,CACP,CAAC,KAAK,EAAE,EAAE;YACR,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC,EACD,GAAG,EAAE;YACH,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,OAAO,CAAC,SAAS,CAAC,CAAC;QACrB,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAA0B;IACtD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC5D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,aAAa,CAAC,IAAI,CAAC;IACnD,IAAI,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC;QAAE,OAAO,aAAa,CAAC,IAAI,CAAC;IACnE,OAAO,CACL,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC7C,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC7C,aAAa,CAAC,IAAI,CACnB,CAAC;AACJ,CAAC;AAED,IAAI,UAA2D,CAAC;AAEhE,MAAM,UAAU,0BAA0B;IACxC,UAAU,GAAG,SAAS,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAA6B,EAAE;IAE/B,IACE,UAAU,KAAK,SAAS;QACxB,IAAI,CAAC,UAAU,KAAK,SAAS;QAC7B,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,QAAQ,GAAG,mBAAmB,EACtD,CAAC;QACD,OAAO,UAAU,CAAC,KAAK,CAAC;IAC1B,CAAC;IACD,MAAM,IAAI,GACR,IAAI,CAAC,UAAU;QACf,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAClF,MAAM,OAAO,GAAG,MAAM,WAAW,CAC/B,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,EACpC,IAAI,CAAC,SAAS,IAAI,kBAAkB,CACrC,CAAC;IACF,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAC5C,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAClC,UAAU,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;IACvD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/llm/free.d.ts
CHANGED
package/dist/llm/free.js
CHANGED
|
@@ -13,17 +13,12 @@ const CURATED_ZEN_MODELS = [
|
|
|
13
13
|
"deepseek-v4-flash-free",
|
|
14
14
|
"big-pickle",
|
|
15
15
|
"mimo-v2.5-free",
|
|
16
|
-
"hy3-free",
|
|
17
16
|
"nemotron-3-ultra-free",
|
|
18
|
-
"north-mini-code-free",
|
|
19
17
|
];
|
|
20
18
|
const CURATED_KILO_MODELS = [
|
|
21
19
|
"kilo-auto/free",
|
|
22
|
-
"deepseek/deepseek-v4-flash-0731:free",
|
|
23
20
|
"stepfun/step-3.7-flash:free",
|
|
24
21
|
"poolside/laguna-s-2.1:free",
|
|
25
|
-
"tencent/hy3:free",
|
|
26
|
-
"inclusionai/ling-3.0-tiny:free",
|
|
27
22
|
"poolside/laguna-xs-2.1:free",
|
|
28
23
|
"cohere/north-mini-code:free",
|
|
29
24
|
"nvidia/nemotron-3.5-content-safety:free",
|
|
@@ -106,6 +101,7 @@ const zenSource = {
|
|
|
106
101
|
baseUrl: ZEN_BASE_URL,
|
|
107
102
|
curated: CURATED_ZEN_MODELS,
|
|
108
103
|
responsesApi: false,
|
|
104
|
+
requiredTools: true,
|
|
109
105
|
requestHeaders: zenClientHeaders,
|
|
110
106
|
catalogFreeIds(payload) {
|
|
111
107
|
return ingestModelCatalogEntries("free", catalogEntries(payload)).filter((id) => /free/i.test(id));
|
|
@@ -164,13 +160,11 @@ export function isKeylessModel(model) {
|
|
|
164
160
|
function assertModelAllowed(model, apiKey) {
|
|
165
161
|
if (apiKey || isKeylessModel(model))
|
|
166
162
|
return;
|
|
167
|
-
|
|
168
|
-
throw new ProviderError(`Free (${source.name}): model "${model}" is premium and requires an API key (402). ` +
|
|
163
|
+
throw new ProviderError(`Free (model=${model}): this model is premium and requires an API key (402). ` +
|
|
169
164
|
`Pick a free model from /model (free-1/… or free-2/… ids) or set a key with: clai set free <key>`, 402);
|
|
170
165
|
}
|
|
171
|
-
const RESPONSES_DIALECT_PATTERN = /muse-spark/i;
|
|
172
166
|
function usesResponsesDialect(source, model) {
|
|
173
|
-
return source.id === "free-1" &&
|
|
167
|
+
return source.id === "free-1" && /muse-spark/i.test(model);
|
|
174
168
|
}
|
|
175
169
|
function zenResponsesHeaders(auth, accept) {
|
|
176
170
|
return {
|
|
@@ -179,7 +173,7 @@ function zenResponsesHeaders(auth, accept) {
|
|
|
179
173
|
...zenClientHeaders(auth.apiKey),
|
|
180
174
|
};
|
|
181
175
|
}
|
|
182
|
-
function
|
|
176
|
+
function ensureRequiredTools(request, dialect) {
|
|
183
177
|
const existingTools = request.tools ?? [];
|
|
184
178
|
const hasRead = existingTools.some((t) => t.name === "read" || t.wireName === "read");
|
|
185
179
|
const hasShell = existingTools.some((t) => t.name === "shell" || t.wireName === "shell");
|
|
@@ -203,8 +197,16 @@ function ensureZenRequiredTools(request) {
|
|
|
203
197
|
});
|
|
204
198
|
}
|
|
205
199
|
}
|
|
206
|
-
const toolChoice = request.toolChoice === "auto" ? "auto" : undefined;
|
|
207
200
|
const suppressTools = !request.tools?.length || request.toolChoice === "none";
|
|
201
|
+
if (dialect === "chat") {
|
|
202
|
+
return {
|
|
203
|
+
...request,
|
|
204
|
+
tools,
|
|
205
|
+
toolChoice: suppressTools ? undefined : (request.toolChoice ?? "auto"),
|
|
206
|
+
...(suppressTools ? { onToolCallDelta: undefined } : {}),
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
const toolChoice = request.toolChoice === "auto" ? "auto" : undefined;
|
|
208
210
|
return {
|
|
209
211
|
...request,
|
|
210
212
|
tools,
|
|
@@ -221,7 +223,7 @@ function zenReasoningPayload(reasoning) {
|
|
|
221
223
|
const ZEN_RESPONSES_CONFIG = {
|
|
222
224
|
baseUrl: ZEN_BASE_URL,
|
|
223
225
|
providerId: "free",
|
|
224
|
-
displayName: "Free
|
|
226
|
+
displayName: "Free",
|
|
225
227
|
artifactDialect: "openai-compatible",
|
|
226
228
|
terminalPolicy: META_STREAM_TERMINAL,
|
|
227
229
|
buildHeaders: zenResponsesHeaders,
|
|
@@ -232,7 +234,7 @@ const ZEN_RESPONSES_CONFIG = {
|
|
|
232
234
|
}),
|
|
233
235
|
};
|
|
234
236
|
const modelCache = new Map();
|
|
235
|
-
const CACHE_TTL_MS =
|
|
237
|
+
const CACHE_TTL_MS = 30 * 60 * 1000;
|
|
236
238
|
async function listSourceModels(source, key) {
|
|
237
239
|
const cacheKey = `${source.id}:${key}`;
|
|
238
240
|
const now = Date.now();
|
|
@@ -258,7 +260,7 @@ async function listSourceModels(source, key) {
|
|
|
258
260
|
export const freeProvider = {
|
|
259
261
|
id: "free",
|
|
260
262
|
reasoningStyle: "openai",
|
|
261
|
-
displayName: "Free
|
|
263
|
+
displayName: "Free",
|
|
262
264
|
defaultModel: defaultModels.free,
|
|
263
265
|
envVar: "FREE_API_KEY",
|
|
264
266
|
validateKey: (key) => key.trim().length >= 8,
|
|
@@ -286,12 +288,15 @@ export const freeProvider = {
|
|
|
286
288
|
assertModelAllowed(requested, apiKey);
|
|
287
289
|
const { source, model } = resolveFreeSource(requested);
|
|
288
290
|
if (usesResponsesDialect(source, model)) {
|
|
289
|
-
const zenRequest =
|
|
291
|
+
const zenRequest = ensureRequiredTools(request, "responses");
|
|
290
292
|
const result = await responsesStream(ZEN_RESPONSES_CONFIG, zenRequest, auth, () => undefined, model);
|
|
291
293
|
const suppressTools = !request.tools?.length || request.toolChoice === "none";
|
|
292
294
|
const toolCalls = suppressTools ? undefined : result.toolCalls;
|
|
293
295
|
return { ...result, model: requested, toolCalls };
|
|
294
296
|
}
|
|
297
|
+
const effective = source.requiredTools
|
|
298
|
+
? ensureRequiredTools(request, "chat")
|
|
299
|
+
: request;
|
|
295
300
|
const payload = await openAiCompatibleComplete({
|
|
296
301
|
responsesFirst: source.responsesApi,
|
|
297
302
|
headers: source.requestHeaders(apiKey),
|
|
@@ -300,15 +305,15 @@ export const freeProvider = {
|
|
|
300
305
|
baseUrl: source.baseUrl,
|
|
301
306
|
apiKey,
|
|
302
307
|
model,
|
|
303
|
-
messages:
|
|
304
|
-
maxTokens:
|
|
305
|
-
temperature:
|
|
306
|
-
signal:
|
|
307
|
-
reasoning:
|
|
308
|
+
messages: effective.messages,
|
|
309
|
+
maxTokens: effective.maxTokens,
|
|
310
|
+
temperature: effective.temperature,
|
|
311
|
+
signal: effective.signal,
|
|
312
|
+
reasoning: effective.thinking,
|
|
308
313
|
reasoningStyle: FREE_REASONING_STYLE,
|
|
309
|
-
tools:
|
|
310
|
-
toolChoice:
|
|
311
|
-
parallelToolCalls:
|
|
314
|
+
tools: effective.tools,
|
|
315
|
+
toolChoice: effective.toolChoice,
|
|
316
|
+
parallelToolCalls: effective.parallelToolCalls,
|
|
312
317
|
reasoningArtifactReplayObserver: request.onReasoningArtifactReplayDecision,
|
|
313
318
|
...(request.forceReasoningReplay ? { forceReasoningReplay: true } : {}),
|
|
314
319
|
});
|
|
@@ -327,13 +332,16 @@ export const freeProvider = {
|
|
|
327
332
|
assertModelAllowed(requested, apiKey);
|
|
328
333
|
const { source, model } = resolveFreeSource(requested);
|
|
329
334
|
if (usesResponsesDialect(source, model)) {
|
|
330
|
-
const zenRequest =
|
|
335
|
+
const zenRequest = ensureRequiredTools(request, "responses");
|
|
331
336
|
const result = await responsesStream(ZEN_RESPONSES_CONFIG, zenRequest, auth, onToken, model);
|
|
332
337
|
const suppressTools = !request.tools?.length || request.toolChoice === "none";
|
|
333
338
|
const toolCalls = suppressTools ? undefined : result.toolCalls;
|
|
334
339
|
return { ...result, model: requested, toolCalls };
|
|
335
340
|
}
|
|
336
|
-
const
|
|
341
|
+
const effective = source.requiredTools
|
|
342
|
+
? ensureRequiredTools(request, "chat")
|
|
343
|
+
: request;
|
|
344
|
+
const budgets = streamIdleBudgets(Boolean(effective.thinking?.enabled));
|
|
337
345
|
const payload = await openAiCompatibleStream({
|
|
338
346
|
responsesFirst: source.responsesApi,
|
|
339
347
|
headers: source.requestHeaders(apiKey),
|
|
@@ -342,23 +350,23 @@ export const freeProvider = {
|
|
|
342
350
|
baseUrl: source.baseUrl,
|
|
343
351
|
apiKey,
|
|
344
352
|
model,
|
|
345
|
-
messages:
|
|
346
|
-
maxTokens:
|
|
347
|
-
temperature:
|
|
348
|
-
signal:
|
|
353
|
+
messages: effective.messages,
|
|
354
|
+
maxTokens: effective.maxTokens,
|
|
355
|
+
temperature: effective.temperature,
|
|
356
|
+
signal: effective.signal,
|
|
349
357
|
onToken,
|
|
350
|
-
onToolCallDelta:
|
|
351
|
-
onStreamEvent:
|
|
352
|
-
reasoning:
|
|
358
|
+
onToolCallDelta: effective.onToolCallDelta,
|
|
359
|
+
onStreamEvent: effective.onStreamEvent,
|
|
360
|
+
reasoning: effective.thinking,
|
|
353
361
|
reasoningStyle: FREE_REASONING_STYLE,
|
|
354
362
|
idleTimeoutMs: budgets.idleTimeoutMs,
|
|
355
|
-
initialIdleTimeoutMs:
|
|
363
|
+
initialIdleTimeoutMs: effective.thinking?.enabled
|
|
356
364
|
? THINKING_STREAM_INITIAL_IDLE_TIMEOUT_MS
|
|
357
365
|
: 60_000,
|
|
358
366
|
outputIdleTimeoutMs: budgets.outputIdleTimeoutMs,
|
|
359
|
-
tools:
|
|
360
|
-
toolChoice:
|
|
361
|
-
parallelToolCalls:
|
|
367
|
+
tools: effective.tools,
|
|
368
|
+
toolChoice: effective.toolChoice,
|
|
369
|
+
parallelToolCalls: effective.parallelToolCalls,
|
|
362
370
|
reasoningArtifactReplayObserver: request.onReasoningArtifactReplayDecision,
|
|
363
371
|
...(request.forceReasoningReplay ? { forceReasoningReplay: true } : {}),
|
|
364
372
|
});
|
package/dist/llm/free.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"free.js","sourceRoot":"","sources":["../../src/llm/free.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"free.js","sourceRoot":"","sources":["../../src/llm/free.ts"],"names":[],"mappings":"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"}
|
package/dist/llm/glm.js
CHANGED
|
@@ -3,7 +3,7 @@ import { openAiCompatibleComplete, openAiCompatiblePing, openAiCompatibleStream,
|
|
|
3
3
|
const baseUrl = "https://api.z.ai/api/paas/v4";
|
|
4
4
|
let cachedModels = null;
|
|
5
5
|
let lastFetchTime = 0;
|
|
6
|
-
const CACHE_TTL_MS =
|
|
6
|
+
const CACHE_TTL_MS = 30 * 60 * 1000;
|
|
7
7
|
export const glmProvider = {
|
|
8
8
|
id: "glm",
|
|
9
9
|
reasoningStyle: "openai",
|
package/dist/llm/hetzner.js
CHANGED
package/dist/llm/key-rotation.js
CHANGED
|
@@ -2,7 +2,7 @@ import { mentionsQuotaExhaustion } from "./quota-signals.js";
|
|
|
2
2
|
export const MAX_PROVIDER_KEYS = 10;
|
|
3
3
|
export const MULTI_KEY_ATTEMPTS = 2;
|
|
4
4
|
export const RATE_LIMIT_RETRY_WAIT_MS = [
|
|
5
|
-
5_000, 10_000, 15_000,
|
|
5
|
+
5_000, 8_000, 10_000, 15_000,
|
|
6
6
|
];
|
|
7
7
|
export function rateLimitRetryWaitMs(attempt, maxMs = Number.POSITIVE_INFINITY) {
|
|
8
8
|
const index = Math.min(Math.max(0, attempt), RATE_LIMIT_RETRY_WAIT_MS.length - 1);
|