aura-code 0.6.3 → 0.10.1
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 +47 -164
- package/dist/agent/affect.d.ts +13 -0
- package/dist/agent/affect.js +34 -0
- package/dist/agent/affect.js.map +1 -0
- package/dist/agent/compactor.d.ts +27 -4
- package/dist/agent/compactor.js +185 -54
- package/dist/agent/compactor.js.map +1 -1
- package/dist/agent/confess.d.ts +35 -0
- package/dist/agent/confess.js +296 -0
- package/dist/agent/confess.js.map +1 -0
- package/dist/agent/context.d.ts +0 -4
- package/dist/agent/context.js +0 -38
- package/dist/agent/context.js.map +1 -1
- package/dist/agent/domain-expertise.d.ts +22 -0
- package/dist/agent/domain-expertise.js +110 -0
- package/dist/agent/domain-expertise.js.map +1 -0
- package/dist/agent/executive-queue.d.ts +26 -0
- package/dist/agent/executive-queue.js +50 -0
- package/dist/agent/executive-queue.js.map +1 -0
- package/dist/agent/generational-flush.d.ts +28 -0
- package/dist/agent/generational-flush.js +48 -0
- package/dist/agent/generational-flush.js.map +1 -0
- package/dist/agent/loop-profile.d.ts +50 -0
- package/dist/agent/loop-profile.js +88 -0
- package/dist/agent/loop-profile.js.map +1 -0
- package/dist/agent/loop.d.ts +14 -5
- package/dist/agent/loop.js +167 -39
- package/dist/agent/loop.js.map +1 -1
- package/dist/agent/memory-consolidate.d.ts +14 -0
- package/dist/agent/memory-consolidate.js +141 -0
- package/dist/agent/memory-consolidate.js.map +1 -0
- package/dist/agent/mixture.d.ts +33 -0
- package/dist/agent/mixture.js +138 -0
- package/dist/agent/mixture.js.map +1 -0
- package/dist/agent/spawner.js +2 -2
- package/dist/agent/spawner.js.map +1 -1
- package/dist/agent/system-prompt.d.ts +1 -1
- package/dist/agent/system-prompt.js +50 -22
- package/dist/agent/system-prompt.js.map +1 -1
- package/dist/agent/unified-memory.d.ts +15 -0
- package/dist/agent/unified-memory.js +164 -0
- package/dist/agent/unified-memory.js.map +1 -0
- package/dist/checkpoints/engine.d.ts +44 -0
- package/dist/checkpoints/engine.js +324 -0
- package/dist/checkpoints/engine.js.map +1 -0
- package/dist/cli/command-palette.d.ts +26 -0
- package/dist/cli/command-palette.js +133 -0
- package/dist/cli/command-palette.js.map +1 -0
- package/dist/cli/context-health.d.ts +51 -0
- package/dist/cli/context-health.js +187 -0
- package/dist/cli/context-health.js.map +1 -0
- package/dist/cli/diamond.d.ts +67 -0
- package/dist/cli/diamond.js +222 -12
- package/dist/cli/diamond.js.map +1 -1
- package/dist/cli/dic.d.ts +2 -0
- package/dist/cli/dic.js +106 -0
- package/dist/cli/dic.js.map +1 -0
- package/dist/cli/diff-view.d.ts +18 -0
- package/dist/cli/diff-view.js +114 -0
- package/dist/cli/diff-view.js.map +1 -0
- package/dist/cli/display.d.ts +18 -4
- package/dist/cli/display.js +74 -151
- package/dist/cli/display.js.map +1 -1
- package/dist/cli/help-data.d.ts +7 -0
- package/dist/cli/help-data.js +80 -0
- package/dist/cli/help-data.js.map +1 -0
- package/dist/cli/index.js +1002 -852
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/markdown.d.ts +5 -0
- package/dist/cli/markdown.js +128 -0
- package/dist/cli/markdown.js.map +1 -0
- package/dist/cli/model-select.d.ts +39 -0
- package/dist/cli/model-select.js +65 -0
- package/dist/cli/model-select.js.map +1 -0
- package/dist/cli/tui.d.ts +34 -0
- package/dist/cli/tui.js +1176 -0
- package/dist/cli/tui.js.map +1 -0
- package/dist/config/defaults.d.ts +6 -17
- package/dist/config/defaults.js +25 -46
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/project-config.d.ts +2 -6
- package/dist/config/project-config.js +2 -2
- package/dist/config/project-config.js.map +1 -1
- package/dist/doctor/checks.d.ts +18 -0
- package/dist/doctor/checks.js +524 -0
- package/dist/doctor/checks.js.map +1 -0
- package/dist/doctor/index.d.ts +4 -0
- package/dist/doctor/index.js +229 -0
- package/dist/doctor/index.js.map +1 -0
- package/dist/doctor/repair.d.ts +19 -0
- package/dist/doctor/repair.js +126 -0
- package/dist/doctor/repair.js.map +1 -0
- package/dist/doctor/types.d.ts +38 -0
- package/dist/doctor/types.js +10 -0
- package/dist/doctor/types.js.map +1 -0
- package/dist/dream/dream.d.ts +79 -59
- package/dist/dream/dream.js +324 -144
- package/dist/dream/dream.js.map +1 -1
- package/dist/dream/episode.d.ts +17 -0
- package/dist/dream/episode.js +116 -0
- package/dist/dream/episode.js.map +1 -0
- package/dist/kanban/engine.d.ts +26 -0
- package/dist/kanban/engine.js +208 -0
- package/dist/kanban/engine.js.map +1 -0
- package/dist/kanban/types.d.ts +19 -0
- package/dist/kanban/types.js +9 -1
- package/dist/kanban/types.js.map +1 -1
- package/dist/machina/render-html.js +4 -2
- package/dist/machina/render-html.js.map +1 -1
- package/dist/machina/render-terminal.js +11 -4
- package/dist/machina/render-terminal.js.map +1 -1
- package/dist/machina/repair.d.ts +23 -0
- package/dist/machina/repair.js +98 -0
- package/dist/machina/repair.js.map +1 -0
- package/dist/machina/spec.js +12 -12
- package/dist/machina/spec.js.map +1 -1
- package/dist/machina/verify.d.ts +13 -1
- package/dist/machina/verify.js +12 -2
- package/dist/machina/verify.js.map +1 -1
- package/dist/mining/extract.d.ts +34 -0
- package/dist/mining/extract.js +229 -0
- package/dist/mining/extract.js.map +1 -0
- package/dist/mining/refine.d.ts +28 -0
- package/dist/mining/refine.js +256 -0
- package/dist/mining/refine.js.map +1 -0
- package/dist/perception/extractor.js +5 -3
- package/dist/perception/extractor.js.map +1 -1
- package/dist/perception/graph-store.d.ts +0 -11
- package/dist/perception/graph-store.js +0 -33
- package/dist/perception/graph-store.js.map +1 -1
- package/dist/perception/index.d.ts +1 -1
- package/dist/perception/index.js +1 -2
- package/dist/perception/index.js.map +1 -1
- package/dist/plugins/commands.d.ts +38 -0
- package/dist/plugins/commands.js +134 -0
- package/dist/plugins/commands.js.map +1 -0
- package/dist/plugins/frontmatter.d.ts +14 -0
- package/dist/plugins/frontmatter.js +78 -0
- package/dist/plugins/frontmatter.js.map +1 -0
- package/dist/plugins/hooks.d.ts +12 -0
- package/dist/plugins/hooks.js +148 -0
- package/dist/plugins/hooks.js.map +1 -0
- package/dist/plugins/loader.d.ts +7 -0
- package/dist/plugins/loader.js +255 -0
- package/dist/plugins/loader.js.map +1 -0
- package/dist/plugins/market.d.ts +23 -0
- package/dist/plugins/market.js +281 -0
- package/dist/plugins/market.js.map +1 -0
- package/dist/plugins/types.d.ts +90 -0
- package/dist/plugins/types.js +20 -0
- package/dist/plugins/types.js.map +1 -0
- package/dist/providers/anthropic-oauth-draft.d.ts +119 -0
- package/dist/providers/anthropic-oauth-draft.js +414 -0
- package/dist/providers/anthropic-oauth-draft.js.map +1 -0
- package/dist/providers/anthropic.d.ts +4 -1
- package/dist/providers/anthropic.js +35 -7
- package/dist/providers/anthropic.js.map +1 -1
- package/dist/providers/factory.d.ts +43 -19
- package/dist/providers/factory.js +183 -129
- package/dist/providers/factory.js.map +1 -1
- package/dist/providers/google.js +9 -22
- package/dist/providers/google.js.map +1 -1
- package/dist/providers/live-models.d.ts +23 -0
- package/dist/providers/live-models.js +145 -0
- package/dist/providers/live-models.js.map +1 -0
- package/dist/providers/openai-compatible.d.ts +1 -12
- package/dist/providers/openai-compatible.js +71 -108
- package/dist/providers/openai-compatible.js.map +1 -1
- package/dist/providers/resilient-factory.js +1 -1
- package/dist/providers/resilient-factory.js.map +1 -1
- package/dist/repl/queue.d.ts +22 -0
- package/dist/repl/queue.js +165 -0
- package/dist/repl/queue.js.map +1 -0
- package/dist/repl/side-channel.d.ts +23 -0
- package/dist/repl/side-channel.js +63 -0
- package/dist/repl/side-channel.js.map +1 -0
- package/dist/research/council.d.ts +2 -0
- package/dist/research/council.js +29 -4
- package/dist/research/council.js.map +1 -1
- package/dist/ruby/alternator.d.ts +11 -30
- package/dist/ruby/alternator.js +59 -38
- package/dist/ruby/alternator.js.map +1 -1
- package/dist/ruby/episode-capture.d.ts +0 -10
- package/dist/ruby/episode-capture.js +0 -33
- package/dist/ruby/episode-capture.js.map +1 -1
- package/dist/ruby/types.js +1 -1
- package/dist/ruby/types.js.map +1 -1
- package/dist/safety/path-jail.d.ts +17 -0
- package/dist/safety/path-jail.js +100 -0
- package/dist/safety/path-jail.js.map +1 -0
- package/dist/safety/permissions.d.ts +12 -21
- package/dist/safety/permissions.js +81 -216
- package/dist/safety/permissions.js.map +1 -1
- package/dist/safety/ssrf.d.ts +29 -0
- package/dist/safety/ssrf.js +185 -0
- package/dist/safety/ssrf.js.map +1 -0
- package/dist/server/index.js +64 -10
- package/dist/server/index.js.map +1 -1
- package/dist/setup/first-run.d.ts +0 -24
- package/dist/setup/first-run.js +10 -344
- package/dist/setup/first-run.js.map +1 -1
- package/dist/setup/key-store.d.ts +12 -0
- package/dist/setup/key-store.js +108 -0
- package/dist/setup/key-store.js.map +1 -0
- package/dist/setup/provider-registry.js +31 -18
- package/dist/setup/provider-registry.js.map +1 -1
- package/dist/setup/provider-test.d.ts +7 -0
- package/dist/setup/provider-test.js +73 -10
- package/dist/setup/provider-test.js.map +1 -1
- package/dist/setup/provider-wizard.d.ts +4 -1
- package/dist/setup/provider-wizard.js +92 -26
- package/dist/setup/provider-wizard.js.map +1 -1
- package/dist/setup/xiaomi.d.ts +1 -1
- package/dist/setup/xiaomi.js +3 -3
- package/dist/setup/xiaomi.js.map +1 -1
- package/dist/tools/browser.js +14 -10
- package/dist/tools/browser.js.map +1 -1
- package/dist/tools/clipboard.js +7 -1
- package/dist/tools/clipboard.js.map +1 -1
- package/dist/tools/dictate.d.ts +60 -0
- package/dist/tools/dictate.js +983 -0
- package/dist/tools/dictate.js.map +1 -0
- package/dist/tools/dictate_patched.js +1057 -0
- package/dist/tools/edit-file.js +10 -2
- package/dist/tools/edit-file.js.map +1 -1
- package/dist/tools/http-request.js +14 -4
- package/dist/tools/http-request.js.map +1 -1
- package/dist/tools/image-read.js +34 -2
- package/dist/tools/image-read.js.map +1 -1
- package/dist/tools/index.d.ts +16 -1
- package/dist/tools/index.js +59 -8
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/mcp.js +12 -0
- package/dist/tools/mcp.js.map +1 -1
- package/dist/tools/read-file.js +10 -14
- package/dist/tools/read-file.js.map +1 -1
- package/dist/tools/telegram-audio-policy.d.ts +30 -0
- package/dist/tools/telegram-audio-policy.js +49 -0
- package/dist/tools/telegram-audio-policy.js.map +1 -0
- package/dist/tools/telegram-bot.js +1136 -537
- package/dist/tools/telegram-bot.js.map +1 -1
- package/dist/tools/telegram-voice.d.ts +18 -5
- package/dist/tools/telegram-voice.js +54 -12
- package/dist/tools/telegram-voice.js.map +1 -1
- package/dist/tools/telegram.d.ts +3 -3
- package/dist/tools/telegram.js +5 -84
- package/dist/tools/telegram.js.map +1 -1
- package/dist/tools/tools.d.ts +2 -14
- package/dist/tools/tools.js +79 -144
- package/dist/tools/tools.js.map +1 -1
- package/dist/tools/web-fetch.js +39 -7
- package/dist/tools/web-fetch.js.map +1 -1
- package/dist/tools/web-search.d.ts +0 -20
- package/dist/tools/web-search.js +40 -137
- package/dist/tools/web-search.js.map +1 -1
- package/dist/util/errors.js +1 -15
- package/dist/util/errors.js.map +1 -1
- package/dist/util/json-repair.d.ts +11 -0
- package/dist/util/json-repair.js +31 -0
- package/dist/util/json-repair.js.map +1 -0
- package/dist/util/rate-limiter.js +2 -8
- package/dist/util/rate-limiter.js.map +1 -1
- package/dist/viz/index.js +793 -792
- package/dist/viz/index.js.map +1 -1
- package/package.json +12 -32
|
@@ -33,31 +33,39 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.
|
|
36
|
+
exports.KNOWN_MODELS = exports.ZHIPU_CODING_BASE_URL = exports.ZHIPU_GENERAL_BASE_URL = void 0;
|
|
37
37
|
exports.registerCustomProviders = registerCustomProviders;
|
|
38
38
|
exports.getCustomProviders = getCustomProviders;
|
|
39
|
+
exports.getContextWindow = getContextWindow;
|
|
40
|
+
exports.apiKeyEnvVarForModel = apiKeyEnvVarForModel;
|
|
39
41
|
exports.detectProviderKind = detectProviderKind;
|
|
40
42
|
exports.modelProviderFamily = modelProviderFamily;
|
|
41
|
-
exports.apiKeyEnvVarForModel = apiKeyEnvVarForModel;
|
|
42
43
|
exports.getApiKeyForModel = getApiKeyForModel;
|
|
43
44
|
exports.resolveProviderTransport = resolveProviderTransport;
|
|
44
45
|
exports.resolveTaskModelBaseUrl = resolveTaskModelBaseUrl;
|
|
45
46
|
exports.createProvider = createProvider;
|
|
46
47
|
exports.getAllModels = getAllModels;
|
|
47
|
-
exports.getContextWindow = getContextWindow;
|
|
48
48
|
exports.checkOllamaHealth = checkOllamaHealth;
|
|
49
49
|
exports.isModelConfigured = isModelConfigured;
|
|
50
50
|
const anthropic_js_1 = require("./anthropic.js");
|
|
51
51
|
const openai_compatible_js_1 = require("./openai-compatible.js");
|
|
52
52
|
const google_js_1 = require("./google.js");
|
|
53
53
|
const env_js_1 = require("../util/env.js");
|
|
54
|
-
const
|
|
54
|
+
const live_models_js_1 = require("./live-models.js");
|
|
55
|
+
const provider_registry_js_1 = require("../setup/provider-registry.js");
|
|
56
|
+
const xiaomi_js_1 = require("../setup/xiaomi.js");
|
|
57
|
+
// Circular with provider-wizard (it imports the ZHIPU_* consts below) — safe
|
|
58
|
+
// because both sides only touch the other's exports inside function bodies.
|
|
55
59
|
const provider_wizard_js_1 = require("../setup/provider-wizard.js");
|
|
56
60
|
const global_config_js_1 = require("../setup/global-config.js");
|
|
57
|
-
const
|
|
61
|
+
const http = __importStar(require("http"));
|
|
58
62
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
59
63
|
// Custom provider registry (populated from .aura.json or programmatically)
|
|
60
64
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
65
|
+
/** Zhipu (Z.ai) General/International endpoint — pay-as-you-go API keys. */
|
|
66
|
+
exports.ZHIPU_GENERAL_BASE_URL = 'https://api.z.ai/api/paas/v4';
|
|
67
|
+
/** Zhipu (Z.ai) Coding Plan endpoint — GLM Coding Plan subscription quota. */
|
|
68
|
+
exports.ZHIPU_CODING_BASE_URL = 'https://api.z.ai/api/coding/paas/v4';
|
|
61
69
|
let customProviders = [];
|
|
62
70
|
/**
|
|
63
71
|
* Register custom providers from .aura.json or any other source.
|
|
@@ -70,6 +78,66 @@ function registerCustomProviders(providers) {
|
|
|
70
78
|
function getCustomProviders() {
|
|
71
79
|
return customProviders;
|
|
72
80
|
}
|
|
81
|
+
/**
|
|
82
|
+
* Strip Aura's internal routing prefixes from a model id so it can be looked
|
|
83
|
+
* up against registry entries (which store unprefixed ids).
|
|
84
|
+
*/
|
|
85
|
+
function stripRoutingPrefix(model) {
|
|
86
|
+
return model.replace(/^(opencode|zen|zhipu(-coding)?|ollama|local|lmstudio|xai|xiaomi|mimo|go-anthropic|local-profile)\//, '');
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Context window (in tokens) for a model, from the provider registry.
|
|
90
|
+
* Returns undefined for unknown models — callers supply their own default.
|
|
91
|
+
* (Reinstated: the original was lost in the backup-restore commit 6e5481a5.)
|
|
92
|
+
*/
|
|
93
|
+
function getContextWindow(model) {
|
|
94
|
+
// Lazy import would be circular-safe, but provider-registry has no factory
|
|
95
|
+
// dependency, so a static import is fine (see top of file).
|
|
96
|
+
const candidates = [model, stripRoutingPrefix(model)];
|
|
97
|
+
for (const entry of provider_registry_js_1.PROVIDER_REGISTRY) {
|
|
98
|
+
for (const m of entry.models) {
|
|
99
|
+
if (candidates.includes(m.id) && m.contextWindow > 0)
|
|
100
|
+
return m.contextWindow;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
return undefined;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Env var name whose value holds the API key for a given model id, matching
|
|
107
|
+
* createProvider's routing rules. Custom providers (registered from
|
|
108
|
+
* .aura.json) win over built-in prefixes. Returns undefined for models that
|
|
109
|
+
* need no key (ollama/local) or aren't recognized.
|
|
110
|
+
* (Reinstated: the original was lost in the backup-restore commit 6e5481a5.)
|
|
111
|
+
*/
|
|
112
|
+
function apiKeyEnvVarForModel(model) {
|
|
113
|
+
const m = model.toLowerCase();
|
|
114
|
+
for (const p of customProviders) {
|
|
115
|
+
if (p.apiKeyEnv && (p.prefixes ?? []).some(pre => m.startsWith(pre.toLowerCase()))) {
|
|
116
|
+
return p.apiKeyEnv;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
if (m.startsWith('go-anthropic/'))
|
|
120
|
+
return 'OPENCODE_GO_API_KEY';
|
|
121
|
+
if (m.startsWith('opencode/') || m.startsWith('zen/'))
|
|
122
|
+
return 'OPENCODE_API_KEY';
|
|
123
|
+
if (m.startsWith('deepseek/') || m.startsWith('deepseek-'))
|
|
124
|
+
return 'DEEPSEEK_API_KEY';
|
|
125
|
+
if (m.startsWith('glm-') || m.startsWith('zhipu'))
|
|
126
|
+
return 'ZHIPU_API_KEY';
|
|
127
|
+
if (m.startsWith('mimo-') || m.startsWith('mimo/') || m.startsWith('xiaomi/'))
|
|
128
|
+
return 'XIAOMI_API_KEY';
|
|
129
|
+
if (m.startsWith('gpt-') || m.startsWith('o1') || m.startsWith('o3') || m.startsWith('o4'))
|
|
130
|
+
return 'OPENAI_API_KEY';
|
|
131
|
+
if (m.startsWith('claude') || m.startsWith('anthropic'))
|
|
132
|
+
return 'ANTHROPIC_API_KEY';
|
|
133
|
+
if (m.startsWith('gemini'))
|
|
134
|
+
return 'GOOGLE_API_KEY';
|
|
135
|
+
if (m.includes('grok') || m.startsWith('xai/'))
|
|
136
|
+
return 'XAI_API_KEY';
|
|
137
|
+
if (m.startsWith('openrouter/'))
|
|
138
|
+
return 'OPENROUTER_API_KEY';
|
|
139
|
+
return undefined;
|
|
140
|
+
}
|
|
73
141
|
/**
|
|
74
142
|
* Detect which provider class would handle a given model name.
|
|
75
143
|
* Exported so the resilience layer can pre-build the right class.
|
|
@@ -89,6 +157,8 @@ function modelProviderFamily(modelId) {
|
|
|
89
157
|
return 'deepseek';
|
|
90
158
|
if (m.startsWith('mimo-') || m.startsWith('xiaomi/') || m.startsWith('mimo/'))
|
|
91
159
|
return 'xiaomi';
|
|
160
|
+
if (m.startsWith('glm-') || m.startsWith('zhipu/') || m.startsWith('zhipu-coding/'))
|
|
161
|
+
return 'zhipu';
|
|
92
162
|
if (m.startsWith('claude-'))
|
|
93
163
|
return 'anthropic';
|
|
94
164
|
if (m.startsWith('gemini-'))
|
|
@@ -97,7 +167,7 @@ function modelProviderFamily(modelId) {
|
|
|
97
167
|
return 'openrouter';
|
|
98
168
|
if (m.startsWith('grok-') || m.startsWith('xai/'))
|
|
99
169
|
return 'xai';
|
|
100
|
-
if (m.startsWith('opencode/') || m.startsWith('zen/'))
|
|
170
|
+
if (m.startsWith('opencode/') || m.startsWith('zen/') || m.startsWith('go-anthropic/'))
|
|
101
171
|
return 'opencode';
|
|
102
172
|
if (m.startsWith('ollama/'))
|
|
103
173
|
return 'ollama';
|
|
@@ -106,6 +176,7 @@ function modelProviderFamily(modelId) {
|
|
|
106
176
|
const FAMILY_API_KEY_ENV = {
|
|
107
177
|
deepseek: 'DEEPSEEK_API_KEY',
|
|
108
178
|
xiaomi: 'XIAOMI_API_KEY',
|
|
179
|
+
zhipu: 'ZHIPU_API_KEY',
|
|
109
180
|
anthropic: 'ANTHROPIC_API_KEY',
|
|
110
181
|
google: 'GOOGLE_API_KEY',
|
|
111
182
|
openrouter: 'OPENROUTER_API_KEY',
|
|
@@ -113,15 +184,6 @@ const FAMILY_API_KEY_ENV = {
|
|
|
113
184
|
opencode: 'OPENCODE_API_KEY',
|
|
114
185
|
'openai-compatible': 'OPENAI_API_KEY',
|
|
115
186
|
};
|
|
116
|
-
/**
|
|
117
|
-
* The name of the environment variable that holds the API key for a given
|
|
118
|
-
* model's provider family (e.g. "deepseek/..." → "DEEPSEEK_API_KEY"). Returns
|
|
119
|
-
* the key's *name*, not its value — used by setup wizards to tell the user
|
|
120
|
-
* which variable to set. Falls back to OPENAI_API_KEY for unknown families.
|
|
121
|
-
*/
|
|
122
|
-
function apiKeyEnvVarForModel(model) {
|
|
123
|
-
return FAMILY_API_KEY_ENV[modelProviderFamily(model)] ?? 'OPENAI_API_KEY';
|
|
124
|
-
}
|
|
125
187
|
/**
|
|
126
188
|
* Resolves an API key for a given model, trying that model's own provider
|
|
127
189
|
* family first — falling back to other configured keys only as a last
|
|
@@ -129,6 +191,7 @@ function apiKeyEnvVarForModel(model) {
|
|
|
129
191
|
* then..." chain: that ordering picks whichever key happens to exist first,
|
|
130
192
|
* completely independent of which model is actually being called, which is
|
|
131
193
|
* exactly how a MiMo model string ends up paired with a DeepSeek key.
|
|
194
|
+
* (Reinstated: the original was lost in the backup-restore commit 6e5481a5.)
|
|
132
195
|
*/
|
|
133
196
|
function getApiKeyForModel(model) {
|
|
134
197
|
const family = modelProviderFamily(model);
|
|
@@ -163,10 +226,13 @@ function getApiKeyForModel(model) {
|
|
|
163
226
|
const KNOWN_PROVIDER_BASE_URLS = {
|
|
164
227
|
'https://api.deepseek.com/v1': 'deepseek',
|
|
165
228
|
'https://token-plan-sgp.xiaomimimo.com/v1': 'xiaomi',
|
|
229
|
+
[exports.ZHIPU_GENERAL_BASE_URL]: 'zhipu',
|
|
230
|
+
[exports.ZHIPU_CODING_BASE_URL]: 'zhipu',
|
|
166
231
|
'https://api.anthropic.com': 'anthropic',
|
|
167
232
|
'https://generativelanguage.googleapis.com/v1beta': 'google',
|
|
168
233
|
'https://openrouter.ai/api/v1': 'openrouter',
|
|
169
234
|
'https://api.x.ai/v1': 'xai',
|
|
235
|
+
'https://opencode.ai/zen/v1': 'opencode',
|
|
170
236
|
};
|
|
171
237
|
function baseUrlFamily(url) {
|
|
172
238
|
if (!url)
|
|
@@ -175,6 +241,7 @@ function baseUrlFamily(url) {
|
|
|
175
241
|
}
|
|
176
242
|
/**
|
|
177
243
|
* Drop baseUrl/apiKey from a different wizard setup so we never send DeepSeek to MiMo URL.
|
|
244
|
+
* (Reinstated: the original was lost in the backup-restore commit 6e5481a5.)
|
|
178
245
|
*/
|
|
179
246
|
function resolveProviderTransport(model, opts) {
|
|
180
247
|
const saved = (0, provider_wizard_js_1.loadProviderConfig)();
|
|
@@ -228,11 +295,10 @@ function resolveProviderTransport(model, opts) {
|
|
|
228
295
|
* with a 400 ("supported API model names are deepseek-v4-pro or
|
|
229
296
|
* deepseek-v4-flash, but you passed big-pickle").
|
|
230
297
|
*
|
|
231
|
-
*
|
|
232
|
-
*
|
|
233
|
-
* covers
|
|
234
|
-
*
|
|
235
|
-
* before ever reaching createProvider().
|
|
298
|
+
* Callers like telegram-bot.ts read the project fileConfig and the global
|
|
299
|
+
* config independently before ever reaching createProvider() — this guard
|
|
300
|
+
* covers those two sources.
|
|
301
|
+
* (Reinstated: the original was lost in the backup-restore commit 6e5481a5.)
|
|
236
302
|
*/
|
|
237
303
|
function resolveTaskModelBaseUrl(opts) {
|
|
238
304
|
return opts.envBaseUrl
|
|
@@ -254,20 +320,15 @@ function resolveTaskModelBaseUrl(opts) {
|
|
|
254
320
|
*/
|
|
255
321
|
function createProvider(config) {
|
|
256
322
|
const model = config.model.toLowerCase();
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
config = { ...config, baseUrl: config.baseUrl ?? savedCfg.baseUrl };
|
|
267
|
-
if (!config.apiKey && savedCfg.apiKey) {
|
|
268
|
-
config = { ...config, apiKey: savedCfg.apiKey };
|
|
269
|
-
}
|
|
270
|
-
}
|
|
323
|
+
// ── OpenCode Go (Anthropic-style models at /v1/messages) ───────────────
|
|
324
|
+
if (model.startsWith('go-anthropic/')) {
|
|
325
|
+
const goModel = model.replace('go-anthropic/', '');
|
|
326
|
+
return new anthropic_js_1.AnthropicProvider({
|
|
327
|
+
...config,
|
|
328
|
+
model: goModel,
|
|
329
|
+
baseUrl: config.baseUrl ?? 'https://opencode.ai/zen/go/v1',
|
|
330
|
+
apiKey: config.apiKey ?? (0, env_js_1.getApiKey)('OPENCODE_GO_API_KEY'),
|
|
331
|
+
}, 'OpenCode Go');
|
|
271
332
|
}
|
|
272
333
|
// ── Custom providers (from .aura.json) ─────────────────────────────────
|
|
273
334
|
for (const def of customProviders) {
|
|
@@ -278,8 +339,8 @@ function createProvider(config) {
|
|
|
278
339
|
const stripPrefix = def.prefixes.find(p => p.endsWith('/') && model.startsWith(p.toLowerCase()));
|
|
279
340
|
const rawModel = stripPrefix ? model.slice(stripPrefix.length) : model;
|
|
280
341
|
const apiKey = config.apiKey
|
|
281
|
-
?? (def.
|
|
282
|
-
?? (def.
|
|
342
|
+
?? (def.apiKeyEnv ? (0, env_js_1.getApiKey)(def.apiKeyEnv) : undefined)
|
|
343
|
+
?? (def.apiKey ?? undefined);
|
|
283
344
|
return new openai_compatible_js_1.OpenAICompatibleProvider({
|
|
284
345
|
...config,
|
|
285
346
|
model: rawModel || model,
|
|
@@ -308,22 +369,32 @@ function createProvider(config) {
|
|
|
308
369
|
// ── Xiaomi MiMo ────────────────────────────────────────────────────────────
|
|
309
370
|
if (model.startsWith('mimo-') || model.startsWith('xiaomi/') || model.startsWith('mimo/')) {
|
|
310
371
|
const mimoModel = model.replace(/^(xiaomi|mimo)\//, '');
|
|
372
|
+
const mimoKey = config.apiKey ?? (0, env_js_1.getApiKey)('XIAOMI_API_KEY');
|
|
311
373
|
return new openai_compatible_js_1.OpenAICompatibleProvider({
|
|
312
374
|
...config,
|
|
313
375
|
model: mimoModel,
|
|
314
|
-
|
|
315
|
-
|
|
376
|
+
// Key-type aware default: tp- keys → Token Plan endpoint, sk- keys →
|
|
377
|
+
// pay-as-you-go api.xiaomimimo.com. A hardcoded token-plan URL used to
|
|
378
|
+
// send pay-as-you-go keys to the wrong host.
|
|
379
|
+
baseUrl: config.baseUrl ?? (0, env_js_1.getEnv)('XIAOMI_BASE_URL') ?? (0, xiaomi_js_1.defaultXiaomiBaseUrl)(mimoKey),
|
|
380
|
+
apiKey: mimoKey,
|
|
316
381
|
}, 'Xiaomi MiMo');
|
|
317
382
|
}
|
|
318
|
-
// ──
|
|
319
|
-
|
|
320
|
-
|
|
383
|
+
// ── Zhipu (Z.ai GLM) — two endpoints ───────────────────────────────────────
|
|
384
|
+
// glm-* / zhipu/* → General/International https://api.z.ai/api/paas/v4
|
|
385
|
+
// zhipu-coding/* → Coding Plan https://api.z.ai/api/coding/paas/v4
|
|
386
|
+
// ZHIPU_BASE_URL overrides either.
|
|
387
|
+
if (model.startsWith('glm-') || model.startsWith('zhipu/') || model.startsWith('zhipu-coding/')) {
|
|
388
|
+
const coding = model.startsWith('zhipu-coding/');
|
|
389
|
+
const glmModel = model.replace(/^zhipu(-coding)?\//, '');
|
|
321
390
|
return new openai_compatible_js_1.OpenAICompatibleProvider({
|
|
322
391
|
...config,
|
|
323
|
-
model:
|
|
324
|
-
baseUrl: config.baseUrl
|
|
325
|
-
|
|
326
|
-
|
|
392
|
+
model: glmModel,
|
|
393
|
+
baseUrl: config.baseUrl
|
|
394
|
+
?? (0, env_js_1.getEnv)('ZHIPU_BASE_URL')
|
|
395
|
+
?? (coding ? exports.ZHIPU_CODING_BASE_URL : exports.ZHIPU_GENERAL_BASE_URL),
|
|
396
|
+
apiKey: config.apiKey ?? (0, env_js_1.getApiKey)('ZHIPU_API_KEY'),
|
|
397
|
+
}, 'Zhipu');
|
|
327
398
|
}
|
|
328
399
|
// ── xAI / Grok ─────────────────────────────────────────────────────────────
|
|
329
400
|
if (model.startsWith('grok-') || model.startsWith('xai/')) {
|
|
@@ -334,6 +405,15 @@ function createProvider(config) {
|
|
|
334
405
|
apiKey: config.apiKey ?? (0, env_js_1.getApiKey)('XAI_API_KEY'),
|
|
335
406
|
}, 'xAI');
|
|
336
407
|
}
|
|
408
|
+
// ── DeepSeek ──────────────────────────────────────────────────────────────
|
|
409
|
+
if (model.startsWith('deepseek/')) {
|
|
410
|
+
return new openai_compatible_js_1.OpenAICompatibleProvider({
|
|
411
|
+
...config,
|
|
412
|
+
model: model.replace('deepseek/', ''),
|
|
413
|
+
baseUrl: config.baseUrl ?? 'https://api.deepseek.com/v1',
|
|
414
|
+
apiKey: config.apiKey ?? (0, env_js_1.getApiKey)('DEEPSEEK_API_KEY'),
|
|
415
|
+
}, 'DeepSeek');
|
|
416
|
+
}
|
|
337
417
|
// ── Ollama (local) ─────────────────────────────────────────────────────────
|
|
338
418
|
if (model.startsWith('ollama/') || model.startsWith('ollama:')) {
|
|
339
419
|
const ollamaModel = model.replace(/^ollama[/:]/, '');
|
|
@@ -370,6 +450,15 @@ function createProvider(config) {
|
|
|
370
450
|
/**
|
|
371
451
|
* List of well-known model shortcuts for quick selection.
|
|
372
452
|
* Used by `:models` in the REPL and by `--models` on the CLI.
|
|
453
|
+
*
|
|
454
|
+
* NOTE: Anthropic, OpenAI, Google, and OpenRouter entries here are a
|
|
455
|
+
* fallback only — getAllModels() prefers live-fetched lists for these
|
|
456
|
+
* four providers when available (see live-models.ts), since this static
|
|
457
|
+
* list goes stale fast. As of Feb 2026, OpenAI retired gpt-4o, gpt-4.1,
|
|
458
|
+
* gpt-4.1-mini, and o4-mini from the API. The Anthropic list below is
|
|
459
|
+
* also behind the current lineup — Claude Sonnet 5, Claude Opus 4.8, and
|
|
460
|
+
* Claude Fable 5 are the current generation as of this writing and are
|
|
461
|
+
* not listed statically; live fetch is what surfaces them.
|
|
373
462
|
*/
|
|
374
463
|
exports.KNOWN_MODELS = [
|
|
375
464
|
// ── Anthropic Claude ─────────────────────────────────────────────────────
|
|
@@ -379,7 +468,7 @@ exports.KNOWN_MODELS = [
|
|
|
379
468
|
{ id: 'claude-3-5-sonnet-20241022', name: 'Claude 3.5 Sonnet', provider: 'Anthropic', speed: 'Fast · legacy' },
|
|
380
469
|
{ id: 'claude-3-5-haiku-20241022', name: 'Claude 3.5 Haiku', provider: 'Anthropic', speed: 'Fastest · legacy' },
|
|
381
470
|
{ id: 'claude-3-opus-20240229', name: 'Claude 3 Opus', provider: 'Anthropic', speed: 'Powerful · legacy' },
|
|
382
|
-
// ── OpenAI
|
|
471
|
+
// ── OpenAI (offline fallback — prefer live fetch, see note above) ───────
|
|
383
472
|
{ id: 'gpt-4o', name: 'GPT-4o', provider: 'OpenAI', speed: 'Powerful · multimodal' },
|
|
384
473
|
{ id: 'gpt-4o-mini', name: 'GPT-4o mini', provider: 'OpenAI', speed: 'Fast · cheap' },
|
|
385
474
|
{ id: 'gpt-4-turbo', name: 'GPT-4 Turbo', provider: 'OpenAI', speed: 'Powerful · legacy' },
|
|
@@ -390,7 +479,7 @@ exports.KNOWN_MODELS = [
|
|
|
390
479
|
{ id: 'o3', name: 'o3', provider: 'OpenAI', speed: 'Reasoning · new flagship' },
|
|
391
480
|
{ id: 'o3-mini', name: 'o3-mini', provider: 'OpenAI', speed: 'Reasoning · fast' },
|
|
392
481
|
{ id: 'o4-mini', name: 'o4-mini', provider: 'OpenAI', speed: 'Reasoning · fastest' },
|
|
393
|
-
// ── Google Gemini
|
|
482
|
+
// ── Google Gemini (offline fallback — prefer live fetch, see note above) ─
|
|
394
483
|
{ id: 'gemini-2.5-pro', name: 'Gemini 2.5 Pro', provider: 'Google', speed: 'Powerful · long context' },
|
|
395
484
|
{ id: 'gemini-2.5-flash', name: 'Gemini 2.5 Flash', provider: 'Google', speed: 'Fast · cheap' },
|
|
396
485
|
{ id: 'gemini-2.0-pro', name: 'Gemini 2.0 Pro', provider: 'Google', speed: 'Powerful' },
|
|
@@ -401,14 +490,25 @@ exports.KNOWN_MODELS = [
|
|
|
401
490
|
// ── Xiaomi MiMo ─────────────────────────────────────────────────────────
|
|
402
491
|
{ id: 'mimo-v2.5-pro', name: 'MiMo V2.5 Pro', provider: 'Xiaomi MiMo', speed: 'Powerful · 1T params' },
|
|
403
492
|
{ id: 'mimo-v2.5', name: 'MiMo V2.5', provider: 'Xiaomi MiMo', speed: 'Fast · 310B' },
|
|
404
|
-
{ id: 'mimo-v2-flash', name: 'MiMo V2 Flash', provider: 'Xiaomi MiMo', speed: 'Fastest ·
|
|
405
|
-
{ id: 'mimo-v1', name: 'MiMo V1', provider: 'Xiaomi MiMo', speed: 'Legacy' },
|
|
493
|
+
{ id: 'mimo-v2-flash', name: 'MiMo V2 Flash', provider: 'Xiaomi MiMo', speed: 'Fastest · pay-as-you-go (sk-) keys only' },
|
|
494
|
+
{ id: 'mimo-v1', name: 'MiMo V1', provider: 'Xiaomi MiMo', speed: 'Legacy · pay-as-you-go (sk-) keys only' },
|
|
495
|
+
// ── Zhipu (Z.ai GLM) — use zhipu-coding/<id> to route via the Coding Plan ─
|
|
496
|
+
{ id: 'glm-5.2', name: 'GLM-5.2', provider: 'Zhipu', speed: 'Powerful · 1M context' },
|
|
497
|
+
{ id: 'glm-5.1', name: 'GLM-5.1', provider: 'Zhipu', speed: 'Powerful · agentic' },
|
|
498
|
+
{ id: 'glm-5', name: 'GLM-5', provider: 'Zhipu', speed: 'Powerful · 744B MoE' },
|
|
406
499
|
// ── xAI Grok ────────────────────────────────────────────────────────────
|
|
407
500
|
{ id: 'grok-2', name: 'Grok 2', provider: 'xAI', speed: 'Powerful' },
|
|
408
501
|
{ id: 'grok-2-mini', name: 'Grok 2 mini', provider: 'xAI', speed: 'Fast · cheap' },
|
|
409
502
|
{ id: 'grok-beta', name: 'Grok Beta', provider: 'xAI', speed: 'Fast' },
|
|
410
503
|
{ id: 'grok-vision-beta', name: 'Grok Vision Beta', provider: 'xAI', speed: 'Multimodal' },
|
|
411
|
-
// ──
|
|
504
|
+
// ── OpenCode Go (Anthropic-style models — use go-anthropic/ prefix) ──────
|
|
505
|
+
{ id: 'go-anthropic/minimax-m3', name: 'MiniMax M3 (Go)', provider: 'OpenCode Go', speed: 'Anthropic API · agentic' },
|
|
506
|
+
{ id: 'go-anthropic/minimax-m2.7', name: 'MiniMax M2.7 (Go)', provider: 'OpenCode Go', speed: 'Anthropic API · fast' },
|
|
507
|
+
{ id: 'go-anthropic/minimax-m2.5', name: 'MiniMax M2.5 (Go)', provider: 'OpenCode Go', speed: 'Anthropic API · budget' },
|
|
508
|
+
{ id: 'go-anthropic/qwen3.7-max', name: 'Qwen3.7 Max (Go)', provider: 'OpenCode Go', speed: 'Anthropic API · powerful' },
|
|
509
|
+
{ id: 'go-anthropic/qwen3.7-plus', name: 'Qwen3.7 Plus (Go)', provider: 'OpenCode Go', speed: 'Anthropic API · balanced' },
|
|
510
|
+
{ id: 'go-anthropic/qwen3.6-plus', name: 'Qwen3.6 Plus (Go)', provider: 'OpenCode Go', speed: 'Anthropic API · balanced' },
|
|
511
|
+
// ── OpenRouter (offline fallback — prefer live fetch, see note above) ────
|
|
412
512
|
{ id: 'openrouter/anthropic/claude-3.5-sonnet', name: 'Claude 3.5 Sonnet (OR)', provider: 'OpenRouter', speed: 'Fast' },
|
|
413
513
|
{ id: 'openrouter/anthropic/claude-3-opus', name: 'Claude 3 Opus (OR)', provider: 'OpenRouter', speed: 'Powerful' },
|
|
414
514
|
{ id: 'openrouter/openai/gpt-4o', name: 'GPT-4o (OR)', provider: 'OpenRouter', speed: 'Powerful' },
|
|
@@ -421,11 +521,10 @@ exports.KNOWN_MODELS = [
|
|
|
421
521
|
{ id: 'openrouter/mistralai/mixtral-8x7b-instruct', name: 'Mixtral 8x7B (OR)', provider: 'OpenRouter', speed: 'Open · fast' },
|
|
422
522
|
{ id: 'openrouter/qwen/qwen-2.5-72b-instruct', name: 'Qwen 2.5 72B (OR)', provider: 'OpenRouter', speed: 'Open · strong' },
|
|
423
523
|
{ id: 'openrouter/qwen/qwen-2.5-coder-32b-instruct', name: 'Qwen 2.5 Coder 32B (OR)', provider: 'OpenRouter', speed: 'Open · code' },
|
|
424
|
-
{ id: 'openrouter/deepseek/deepseek-
|
|
524
|
+
{ id: 'openrouter/deepseek/deepseek-chat', name: 'DeepSeek V3 (OR)', provider: 'OpenRouter', speed: 'Open · strong' },
|
|
425
525
|
{ id: 'openrouter/deepseek/deepseek-r1', name: 'DeepSeek R1 (OR)', provider: 'OpenRouter', speed: 'Reasoning · open' },
|
|
426
|
-
{ id: 'openrouter/deepseek/deepseek-v4-pro', name: 'DeepSeek V4 Pro (OR)', provider: 'OpenRouter', speed: 'Powerful ·
|
|
526
|
+
{ id: 'openrouter/deepseek/deepseek-v4-pro', name: 'DeepSeek V4 Pro (OR)', provider: 'OpenRouter', speed: 'Powerful · open' },
|
|
427
527
|
{ id: 'openrouter/google/gemma-2-27b-it', name: 'Gemma 2 27B (OR)', provider: 'OpenRouter', speed: 'Open · fast' },
|
|
428
|
-
{ id: 'openrouter/nex-agi/nex-n2-pro:free', name: 'Nex N2 Pro (OR)', provider: 'OpenRouter', speed: 'Free · open' },
|
|
429
528
|
// ── Ollama (local) ──────────────────────────────────────────────────────
|
|
430
529
|
{ id: 'ollama/llama3.2', name: 'Llama 3.2 (local)', provider: 'Ollama', speed: 'Local · small' },
|
|
431
530
|
{ id: 'ollama/llama3.1', name: 'Llama 3.1 (local)', provider: 'Ollama', speed: 'Local · 8B-70B' },
|
|
@@ -445,11 +544,28 @@ exports.KNOWN_MODELS = [
|
|
|
445
544
|
{ id: 'local/llama-3.3-70b-instruct', name: 'Llama 3.3 70B (local)', provider: 'Local', speed: 'Local · strong' },
|
|
446
545
|
{ id: 'local/mistral-large', name: 'Mistral Large (local)', provider: 'Local', speed: 'Local · powerful' },
|
|
447
546
|
];
|
|
547
|
+
const LIVE_PREFERRED_PROVIDERS = new Set(['Anthropic', 'OpenAI', 'Google', 'OpenRouter']);
|
|
448
548
|
/**
|
|
449
|
-
* Get all available models —
|
|
549
|
+
* Get all available models — live-fetched (OpenAI/Google/OpenRouter, when
|
|
550
|
+
* an API key is configured and refreshLiveModels() has run) + static
|
|
551
|
+
* KNOWN_MODELS fallback + custom providers from .aura.json.
|
|
552
|
+
*
|
|
553
|
+
* When a live list exists for a provider, its static KNOWN_MODELS entries
|
|
554
|
+
* are dropped entirely rather than merged — the static list can contain
|
|
555
|
+
* retired model IDs (see the note on KNOWN_MODELS above), and a partial
|
|
556
|
+
* merge would leave dead entries mixed in with real ones with no way to
|
|
557
|
+
* tell them apart in the picker.
|
|
450
558
|
*/
|
|
451
559
|
function getAllModels() {
|
|
452
|
-
const
|
|
560
|
+
const live = (0, live_models_js_1.getLiveModels)();
|
|
561
|
+
const liveProviders = new Set(live.map((m) => m.provider));
|
|
562
|
+
const staticFallback = exports.KNOWN_MODELS.filter((m) => {
|
|
563
|
+
if (LIVE_PREFERRED_PROVIDERS.has(m.provider) && liveProviders.has(m.provider)) {
|
|
564
|
+
return false;
|
|
565
|
+
}
|
|
566
|
+
return true;
|
|
567
|
+
});
|
|
568
|
+
const all = [...staticFallback, ...live];
|
|
453
569
|
for (const def of customProviders) {
|
|
454
570
|
if (def.models) {
|
|
455
571
|
for (const m of def.models) {
|
|
@@ -467,78 +583,6 @@ function getAllModels() {
|
|
|
467
583
|
}
|
|
468
584
|
return all;
|
|
469
585
|
}
|
|
470
|
-
// ── Context window limits per model ─────────────────────────────────────────
|
|
471
|
-
// Published/official context window sizes (in tokens).
|
|
472
|
-
// Only real numbers — verified from provider documentation.
|
|
473
|
-
exports.CONTEXT_WINDOWS = {
|
|
474
|
-
// Anthropic Claude (all 200K)
|
|
475
|
-
'claude-opus-4-5-20251001': 200_000,
|
|
476
|
-
'claude-sonnet-4-5-20251001': 200_000,
|
|
477
|
-
'claude-haiku-4-5-20251001': 200_000,
|
|
478
|
-
'claude-3-5-sonnet-20241022': 200_000,
|
|
479
|
-
'claude-3-5-haiku-20241022': 200_000,
|
|
480
|
-
'claude-3-opus-20240229': 200_000,
|
|
481
|
-
// OpenAI
|
|
482
|
-
'gpt-4o': 128_000,
|
|
483
|
-
'gpt-4o-mini': 128_000,
|
|
484
|
-
'gpt-4-turbo': 128_000,
|
|
485
|
-
'gpt-3.5-turbo': 16_384,
|
|
486
|
-
'o1': 200_000,
|
|
487
|
-
'o1-mini': 128_000,
|
|
488
|
-
'o1-preview': 128_000,
|
|
489
|
-
'o3': 200_000,
|
|
490
|
-
'o3-mini': 200_000,
|
|
491
|
-
'o4-mini': 200_000,
|
|
492
|
-
// Google Gemini
|
|
493
|
-
'gemini-2.5-pro': 1_048_576,
|
|
494
|
-
'gemini-2.5-flash': 1_048_576,
|
|
495
|
-
'gemini-2.0-pro': 2_097_152,
|
|
496
|
-
'gemini-2.0-flash': 1_048_576,
|
|
497
|
-
'gemini-1.5-pro': 2_097_152,
|
|
498
|
-
'gemini-1.5-flash': 1_048_576,
|
|
499
|
-
'gemini-1.5-flash-8b': 1_048_576,
|
|
500
|
-
// Xiaomi MiMo
|
|
501
|
-
'mimo-v2.5-pro': 1_048_576,
|
|
502
|
-
'mimo-v2.5': 1_048_576,
|
|
503
|
-
'mimo-v2-flash': 1_048_576,
|
|
504
|
-
'mimo-v1': 131_072,
|
|
505
|
-
// DeepSeek — also covers OpenRouter-hosted ids; getContextWindow() strips the
|
|
506
|
-
// "openrouter/<vendor>/" prefix before lookup, so "openrouter/deepseek/deepseek-v4-pro"
|
|
507
|
-
// resolves here. Adjust the numbers to the real published limits as needed.
|
|
508
|
-
'deepseek-v4-pro': 1_048_576,
|
|
509
|
-
'deepseek-v4-flash': 1_048_576,
|
|
510
|
-
'deepseek-v4': 1_048_576,
|
|
511
|
-
'deepseek-r1': 131_072,
|
|
512
|
-
'deepseek-chat': 131_072,
|
|
513
|
-
'deepseek-coder-v2': 131_072,
|
|
514
|
-
// xAI Grok
|
|
515
|
-
'grok-2': 131_072,
|
|
516
|
-
'grok-2-mini': 131_072,
|
|
517
|
-
'grok-beta': 131_072,
|
|
518
|
-
'grok-vision-beta': 131_072,
|
|
519
|
-
};
|
|
520
|
-
/**
|
|
521
|
-
* Look up the context window for a model id.
|
|
522
|
-
* Returns undefined for unknown models (caller should suppress the bar).
|
|
523
|
-
*/
|
|
524
|
-
function getContextWindow(modelId) {
|
|
525
|
-
// Direct match
|
|
526
|
-
if (exports.CONTEXT_WINDOWS[modelId] !== undefined)
|
|
527
|
-
return exports.CONTEXT_WINDOWS[modelId];
|
|
528
|
-
// Strip OpenRouter prefix: "openrouter/anthropic/claude-3.5-sonnet" → "claude-3.5-sonnet"
|
|
529
|
-
const orPrefix = modelId.match(/^openrouter\/[^/]+\/(.+)$/);
|
|
530
|
-
if (orPrefix) {
|
|
531
|
-
const base = orPrefix[1];
|
|
532
|
-
if (exports.CONTEXT_WINDOWS[base] !== undefined)
|
|
533
|
-
return exports.CONTEXT_WINDOWS[base];
|
|
534
|
-
}
|
|
535
|
-
// Strip Ollama prefix: "ollama/llama3.2" → check without prefix
|
|
536
|
-
const ollamaPrefix = modelId.replace(/^ollama\//, '');
|
|
537
|
-
if (ollamaPrefix !== modelId && exports.CONTEXT_WINDOWS[ollamaPrefix] !== undefined) {
|
|
538
|
-
return exports.CONTEXT_WINDOWS[ollamaPrefix];
|
|
539
|
-
}
|
|
540
|
-
return undefined;
|
|
541
|
-
}
|
|
542
586
|
/**
|
|
543
587
|
* Check if Ollama is reachable at the given base URL.
|
|
544
588
|
* Returns true if the server responds, false otherwise.
|
|
@@ -559,6 +603,7 @@ function hasApiKey(...names) {
|
|
|
559
603
|
/**
|
|
560
604
|
* True when this model can be called with credentials available in env / saved wizard config.
|
|
561
605
|
* Used to keep competence-based model selection from routing to providers without keys.
|
|
606
|
+
* (Reinstated: the original was lost in the backup-restore commit 6e5481a5.)
|
|
562
607
|
*/
|
|
563
608
|
function isModelConfigured(modelId) {
|
|
564
609
|
const model = modelId.toLowerCase();
|
|
@@ -581,13 +626,22 @@ function isModelConfigured(modelId) {
|
|
|
581
626
|
return hasApiKey('OPENROUTER_API_KEY');
|
|
582
627
|
if (model.startsWith('deepseek/'))
|
|
583
628
|
return hasApiKey('DEEPSEEK_API_KEY');
|
|
584
|
-
if (model.startsWith('
|
|
629
|
+
if (model.startsWith('glm-') || model.startsWith('zhipu/') || model.startsWith('zhipu-coding/')) {
|
|
630
|
+
return hasApiKey('ZHIPU_API_KEY');
|
|
631
|
+
}
|
|
632
|
+
if (model.startsWith('xiaomi/') || model.startsWith('mimo-') || model.startsWith('mimo/')) {
|
|
585
633
|
return hasApiKey('XIAOMI_API_KEY')
|
|
586
634
|
|| !!(savedCfg?.apiKey && savedCfg.model === modelId);
|
|
587
635
|
}
|
|
588
636
|
if (model.startsWith('grok-') || model.includes('grok'))
|
|
589
637
|
return hasApiKey('XAI_API_KEY');
|
|
590
|
-
if (model.startsWith('
|
|
638
|
+
if (model.startsWith('go-anthropic/'))
|
|
639
|
+
return hasApiKey('OPENCODE_GO_API_KEY');
|
|
640
|
+
if (model.startsWith('opencode/') || model.startsWith('zen/'))
|
|
641
|
+
return hasApiKey('OPENCODE_API_KEY');
|
|
642
|
+
if (model.startsWith('ollama/') || model.startsWith('ollama:'))
|
|
643
|
+
return true;
|
|
644
|
+
if (model.startsWith('local/') || model.startsWith('lmstudio/') || model.startsWith('local-profile/'))
|
|
591
645
|
return true;
|
|
592
646
|
if (model === 'deepseek-v4-flash' || model.startsWith('deepseek-')) {
|
|
593
647
|
if (hasApiKey('DEEPSEEK_API_KEY'))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/providers/factory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/providers/factory.ts"],"names":[],"mappings":"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"}
|