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

Global defaults for a local or remote llama-server, which serves the Anthropic Messages API directly. Used when a per-project field is blank. Changes here require a container rebuild to take effect.

Default Base URL handleChange("base_url", e.target.value)} placeholder="http://host.docker.internal:8080" className="w-full px-2 py-1.5 text-xs bg-[var(--bg-primary)] border border-[var(--border-color)] rounded focus:border-[var(--accent)]" />
Default Model handleChange("default_model_id", e.target.value)} placeholder="qwen3.5-coder-30b" className="w-full px-2 py-1.5 text-xs bg-[var(--bg-primary)] border border-[var(--border-color)] rounded focus:border-[var(--accent)]" />
Default Background Model (optional) handleChange("default_haiku_model_id", e.target.value)} placeholder="(same as the model above)" className="w-full px-2 py-1.5 text-xs bg-[var(--bg-primary)] border border-[var(--border-color)] rounded focus:border-[var(--accent)]" />
); }