This commit is contained in:
decolua
2026-04-01 11:48:38 +07:00
parent 9708541f6d
commit 93b8668e9e
8 changed files with 148 additions and 119 deletions
@@ -1185,9 +1185,6 @@ function PassthroughModelRow({ modelId, fullModel, copied, onCopy, onDeleteAlias
<div className="flex items-center gap-1 mt-1">
<code className="text-xs text-text-muted font-mono bg-sidebar px-1.5 py-0.5 rounded">{fullModel}</code>
{isFree && (
<span className="text-[10px] font-medium px-1.5 py-0.5 rounded bg-green-500/10 text-green-600 dark:text-green-400">Free</span>
)}
<div className="relative group/btn">
<button
onClick={() => onCopy(fullModel, `model-${modelId}`)}
@@ -95,6 +95,7 @@ export async function POST(request) {
if (!settings.agents) settings.agents = {};
if (!settings.agents.defaults) settings.agents.defaults = {};
if (!settings.agents.defaults.model) settings.agents.defaults.model = {};
if (!settings.agents.defaults.models) settings.agents.defaults.models = {};
if (!settings.models) settings.models = {};
if (!settings.models.providers) settings.models.providers = {};
@@ -102,7 +103,13 @@ export async function POST(request) {
const normalizedBaseUrl = baseUrl.endsWith("/v1") ? baseUrl : `${baseUrl}/v1`;
// Update agents.defaults.model.primary
settings.agents.defaults.model.primary = `9router/${model}`;
const fullModelId = `9router/${model}`;
settings.agents.defaults.model.primary = fullModelId;
// IMPORTANT: Add to allowlist in agents.defaults.models
if (!settings.agents.defaults.models[fullModelId]) {
settings.agents.defaults.models[fullModelId] = {};
}
// Update models.providers.9router
settings.models.providers["9router"] = {
@@ -161,6 +168,17 @@ export async function DELETE() {
}
}
// Remove 9router models from agents.defaults.models allowlist
if (settings.agents?.defaults?.models) {
const keysToRemove = Object.keys(settings.agents.defaults.models).filter((k) => k.startsWith("9router/"));
for (const key of keysToRemove) {
delete settings.agents.defaults.models[key];
}
if (Object.keys(settings.agents.defaults.models).length === 0) {
delete settings.agents.defaults.models;
}
}
// Reset agents.defaults.model.primary if it uses 9router
if (settings.agents?.defaults?.model?.primary?.startsWith("9router/")) {
delete settings.agents.defaults.model.primary;