+
+ Pick where inference runs. Any OpenAI-compatible provider (OpenAI, Anthropic, OpenRouter,
+ Ollama, your own gateway).
+
+
+ {!loaded ? (
+
Loading current settings…
+ ) : (
+ <>
+
+
+
+ {PROVIDER_PRESETS.map(preset => {
+ const selected = preset.id === activePreset.id;
+ return (
+
+ );
+ })}
+
+ {activePreset.note}
+
+
+ {isOpenHuman && (
+
+
+
+ Congrats! You’re using the most optimized setup
+
+
+ OpenHuman's built-in smart router picks the best model giving you top-tier
+ quality at the lowest blended cost. All within your current subscription.
+
+
+
+ )}
+
+ {!isOpenHuman && (
+
+
+ Consider switching to OpenHuman as it comes with a built-in smart router that
+ picks the best model for each request, cutting costs and improving quality.
+
+
+ )}
+
+ {activePreset.id === 'custom' && (
+
+ )}
+
+ {!isOpenHuman && (
+
+ )}
+
+ {!isOpenHuman && (
+
+
+
+ The core router dispatches each task to the right model. Leave a field blank to
+ skip routing for that role.
+
+
+ {ROLE_HINTS.map(hint => (
+
+
+ {
+ const next = e.target.value;
+ setRoleModels(prev => ({ ...prev, [hint]: next }));
+ setRoleModelsDirty(true);
+ }}
+ placeholder={ROLE_LABELS[hint].help}
+ className="w-full rounded-lg border border-stone-200 bg-white px-3 py-2 text-sm text-stone-900 placeholder:text-stone-400 focus:border-primary-400 focus:outline-none focus:ring-1 focus:ring-primary-200"
+ autoComplete="off"
+ spellCheck={false}
+ />
+
+ ))}
+
+
+ )}
+
+
+
+ {status.kind === 'ok' && (
+ {status.message}
+ )}
+ {status.kind === 'error' && (
+ {status.message}
+ )}
+
+ >
+ )}
+