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>
31 lines
882 B
TypeScript
31 lines
882 B
TypeScript
import type { Context } from '@deepseek-ai/cordis';
|
|
/** Loose ApiProxy surface used by catalog + model helpers. */
|
|
export type ApiProxySessions = {
|
|
list?: (req: {
|
|
rpcId: string;
|
|
payload: unknown;
|
|
}) => Promise<unknown>;
|
|
models?: (req: {
|
|
rpcId: string;
|
|
payload: unknown;
|
|
}) => Promise<unknown>;
|
|
selectModel?: (req: {
|
|
rpcId: string;
|
|
payload: unknown;
|
|
}) => Promise<unknown>;
|
|
};
|
|
export type ApiProxyLike = {
|
|
workspace?: {
|
|
list?: (req: {
|
|
rpcId: string;
|
|
payload: unknown;
|
|
}) => Promise<unknown>;
|
|
};
|
|
sessions?: ApiProxySessions;
|
|
};
|
|
/**
|
|
* Resolve host apiProxy without requiring Cordis inject.
|
|
* Direct `ctx.apiProxy` throws "cannot get property without inject" on real fibers.
|
|
*/
|
|
export declare function resolveApiProxy(ctx: Context): ApiProxyLike | undefined;
|