import type { AgentApiClient, AgentChatSessionSummary, AgentModelOption } from "./client"; import { parseUiRegistry, type UIRegistry } from "../ui-envelope"; export const agentBootstrapKey = ["agent", "bootstrap"] as const; export const agentSessionsKey = ["agent", "sessions"] as const; export type AgentBootstrapData = { registry: UIRegistry | null; models: AgentModelOption[]; defaultModel: string; }; export async function fetchAgentBootstrap(client: AgentApiClient): Promise { const [rawRegistry, modelsResponse] = await Promise.all([ client.getUiRegistry(), client.getModels() ]); return { registry: parseUiRegistry(rawRegistry), models: modelsResponse.models, defaultModel: modelsResponse.defaultModel }; } export async function fetchAgentSessions(client: AgentApiClient): Promise { return client.listSessions(); }