spb/chat-spboucher-ai
Public
1import type { ProviderAdapter, Provider } from "./types";2import { openaiAdapter } from "./openai";3import { anthropicAdapter } from "./anthropic";45export function adapterFor(provider: Provider): ProviderAdapter {6 switch (provider) {7 case "openai": return openaiAdapter;8 case "anthropic": return anthropicAdapter;9 default: throw Object.assign(new Error(`Provider ${provider} has no adapter yet (MacLustr local inference is a future integration)`), { status: 400 });10 }11}1213export * from "./types";14export { estimateCost, blendedPrice, fmtUsd } from "./cost";15export { route, classifyTask, rankFor } from "./router";16export type { RoutingMode, RoutingDecision, TaskClass } from "./router";17