fix: resolve apiProxy via ctx.get for /model (v0.3.2)

Cordis throws on ctx.apiProxy without inject; use ctx.get and declare apiProxy inject so catalog and model APIs work under dsh web.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
owo
2026-08-14 20:20:55 +08:00
co-authored by Cursor
parent f433cce24d
commit 5dbe833205
18 changed files with 209 additions and 35 deletions
+2 -1
View File
@@ -1,4 +1,5 @@
import { randomUUID } from 'node:crypto';
import { resolveApiProxy } from './apiproxy.js';
import { describeAgent, workspaceName } from './label.js';
function rpcCall(fn, payload) {
if (typeof fn !== 'function')
@@ -27,7 +28,7 @@ function titleOf(summary) {
}
/** Load workspaces + sessions aligned with Web UI (via apiProxy when available). */
export async function loadCatalog(ctx) {
const api = ctx.apiProxy;
const api = resolveApiProxy(ctx);
const wsPromise = rpcCall(api?.workspace?.list, {});
const sessPromise = rpcCall(api?.sessions?.list, {});
if (!wsPromise || !sessPromise)