cascade-ai 0.12.20 → 0.12.22
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/cli.cjs +9 -10
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.js +9 -10
- package/dist/cli.js.map +1 -1
- package/dist/desktop-core.cjs +9 -10
- package/dist/index.cjs +9 -10
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +9 -10
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -58,7 +58,7 @@ var __export = (target, all) => {
|
|
|
58
58
|
var CASCADE_VERSION, CASCADE_CONFIG_FILE, CASCADE_DB_FILE, CASCADE_DASHBOARD_SECRET_FILE, GLOBAL_CONFIG_DIR, GLOBAL_DB_FILE, GLOBAL_KEYSTORE_FILE, GLOBAL_RUNTIME_DB_FILE, DEFAULT_DASHBOARD_PORT, DEFAULT_CONTEXT_LIMIT, DEFAULT_AUTO_SUMMARIZE_AT, MODELS, T1_MODEL_PRIORITY, T2_MODEL_PRIORITY, T3_MODEL_PRIORITY, VISION_MODEL_PRIORITY, COMPLEXITY_T2_COUNT, THEME_NAMES, DEFAULT_THEME, OLLAMA_BASE_URL, LM_STUDIO_BASE_URL, AZURE_BASE_URL_TEMPLATE, TOOL_NAMES, DEFAULT_APPROVAL_REQUIRED;
|
|
59
59
|
var init_constants = __esm({
|
|
60
60
|
"src/constants.ts"() {
|
|
61
|
-
CASCADE_VERSION = "0.12.
|
|
61
|
+
CASCADE_VERSION = "0.12.22";
|
|
62
62
|
CASCADE_CONFIG_FILE = ".cascade/config.json";
|
|
63
63
|
CASCADE_DB_FILE = ".cascade/memory.db";
|
|
64
64
|
CASCADE_DASHBOARD_SECRET_FILE = ".cascade/dashboard-secret";
|
|
@@ -1470,7 +1470,7 @@ var init_openai_compatible = __esm({
|
|
|
1470
1470
|
init_net();
|
|
1471
1471
|
OpenAICompatibleProvider = class extends OpenAIProvider {
|
|
1472
1472
|
constructor(config, model) {
|
|
1473
|
-
super(config, model);
|
|
1473
|
+
super({ ...config, apiKey: config.apiKey ?? "not-required" }, model);
|
|
1474
1474
|
this.client = new OpenAI({
|
|
1475
1475
|
apiKey: config.apiKey ?? "not-required",
|
|
1476
1476
|
baseURL: preferIpv4Host(config.baseUrl),
|
|
@@ -4114,10 +4114,10 @@ var CascadeRouter = class _CascadeRouter extends EventEmitter {
|
|
|
4114
4114
|
if (availableProviders.has("ollama")) {
|
|
4115
4115
|
await this.discoverOllamaModels(ollamaCfg);
|
|
4116
4116
|
}
|
|
4117
|
-
|
|
4118
|
-
|
|
4119
|
-
|
|
4120
|
-
);
|
|
4117
|
+
const ocConfigs = config.providers.filter((p) => p.type === "openai-compatible" && p.baseUrl);
|
|
4118
|
+
if (ocConfigs.length > 0) {
|
|
4119
|
+
const results = await Promise.all(ocConfigs.map((cfg) => this.discoverOpenAICompatibleModels(cfg)));
|
|
4120
|
+
if (results.some(Boolean)) this.selector.markProviderAvailable("openai-compatible");
|
|
4121
4121
|
}
|
|
4122
4122
|
for (const tier of ["T1", "T2", "T3"]) {
|
|
4123
4123
|
const override = tier === "T1" ? config.models.t1 : tier === "T2" ? config.models.t2 : config.models.t3;
|
|
@@ -4588,6 +4588,7 @@ var CascadeRouter = class _CascadeRouter extends EventEmitter {
|
|
|
4588
4588
|
} catch {
|
|
4589
4589
|
}
|
|
4590
4590
|
}
|
|
4591
|
+
/** Returns true when at least one real model was discovered from the endpoint. */
|
|
4591
4592
|
async discoverOpenAICompatibleModels(cfg) {
|
|
4592
4593
|
try {
|
|
4593
4594
|
const seed = {
|
|
@@ -4607,8 +4608,10 @@ var CascadeRouter = class _CascadeRouter extends EventEmitter {
|
|
|
4607
4608
|
for (const m of models) {
|
|
4608
4609
|
this.selector.addDynamicModel(m);
|
|
4609
4610
|
}
|
|
4611
|
+
return models.length > 0;
|
|
4610
4612
|
} catch (err) {
|
|
4611
4613
|
console.warn("[router] OpenAI-compatible model discovery failed:", err instanceof Error ? err.message : err);
|
|
4614
|
+
return false;
|
|
4612
4615
|
}
|
|
4613
4616
|
}
|
|
4614
4617
|
ensureProvider(model, configs) {
|
|
@@ -14865,11 +14868,9 @@ var DashboardServer = class {
|
|
|
14865
14868
|
this.activeSessions.set(sessionId, cascade);
|
|
14866
14869
|
cascade.on("stream:token", (e) => {
|
|
14867
14870
|
this.socket.emitToSocket(socketId, "stream:token", { sessionId, tierId: e.tierId, text: e.text });
|
|
14868
|
-
this.socket.broadcast("stream:token", { sessionId, tierId: e.tierId, text: e.text });
|
|
14869
14871
|
});
|
|
14870
14872
|
cascade.on("tier:status", (e) => {
|
|
14871
14873
|
this.socket.emitToSocket(socketId, "tier:status", { sessionId, ...e });
|
|
14872
|
-
this.socket.broadcast("tier:status", { sessionId, ...e });
|
|
14873
14874
|
});
|
|
14874
14875
|
cascade.on("permission:user-required", (e) => {
|
|
14875
14876
|
this.socket.emitToSocket(socketId, "permission:user-required", { sessionId, ...e });
|
|
@@ -15364,11 +15365,9 @@ var DashboardServer = class {
|
|
|
15364
15365
|
const cascade = new Cascade(this.config, this.workspacePath, this.store);
|
|
15365
15366
|
this.activeSessions.set(sessionId, cascade);
|
|
15366
15367
|
cascade.on("stream:token", (e) => {
|
|
15367
|
-
this.socket.broadcast("stream:token", { sessionId, tierId: e.tierId, text: e.text });
|
|
15368
15368
|
this.socket.broadcastToRoom(`session:${sessionId}`, "stream:token", { sessionId, tierId: e.tierId, text: e.text });
|
|
15369
15369
|
});
|
|
15370
15370
|
cascade.on("tier:status", (e) => {
|
|
15371
|
-
this.socket.broadcast("tier:status", { sessionId, ...e });
|
|
15372
15371
|
this.socket.broadcastToRoom(`session:${sessionId}`, "tier:status", { sessionId, ...e });
|
|
15373
15372
|
});
|
|
15374
15373
|
cascade.on("permission:user-required", (e) => {
|