import { useSettings } from "../../hooks/useSettings"; import Tooltip from "../ui/Tooltip"; export default function OpenAiCompatibleSettings() { const { appSettings, saveSettings } = useSettings(); const globalOai = appSettings?.global_openai_compatible ?? { base_url: null, default_model_id: null, }; const handleChange = async (field: "base_url" | "default_model_id", value: string) => { if (!appSettings) return; await saveSettings({ ...appSettings, global_openai_compatible: { ...globalOai, [field]: value || null }, }); }; return (

Global defaults for any OpenAI-compatible endpoint (LiteLLM, OpenRouter, vLLM, etc.). Used when a per-project field is blank. Changes require a container rebuild.

Default Base URL handleChange("base_url", e.target.value)} placeholder="http://host.docker.internal:4000" className="w-full px-2 py-1.5 text-xs bg-[var(--bg-primary)] border border-[var(--border-color)] rounded focus:outline-none focus:border-[var(--accent)]" />
Default Model handleChange("default_model_id", e.target.value)} placeholder="gpt-4o / gemini-pro / etc." className="w-full px-2 py-1.5 text-xs bg-[var(--bg-primary)] border border-[var(--border-color)] rounded focus:outline-none focus:border-[var(--accent)]" />
); }