feat(agent): expose available assistant models

This commit is contained in:
ginnoir
2026-07-08 16:43:22 -05:00
parent 3983c30fe1
commit 27db599444
+31
View File
@@ -0,0 +1,31 @@
import { apiError, apiJson } from "@/lib/api-handler";
import { resolveApiAuth } from "@/lib/api-auth";
import { getAssistantPreferences } from "@/lib/assistant-preference";
import { listLlmModels, resolveAssistantModel } from "@/lib/llm/models";
export async function GET(request: Request) {
const auth = await resolveApiAuth(request);
if (!auth?.userId) {
return apiError("Unauthorized", 401);
}
const assistant = await getAssistantPreferences(auth.userId);
if (!assistant.enabled) {
return apiError("Assistant not enabled", 403);
}
const modelList = await listLlmModels();
const resolved = resolveAssistantModel({
requestedModel: null,
savedModel: assistant.model,
fallbackModel: modelList.fallbackModel,
models: modelList.models,
});
return apiJson({
models: modelList.models,
selectedModel: resolved.model,
fallbackModel: modelList.fallbackModel,
degraded: modelList.degraded,
});
}