Files
openclaw/src/agents/model-suppression.ts
2026-04-07 12:18:22 +01:00

34 lines
1.0 KiB
TypeScript

import { resolveProviderBuiltInModelSuppression } from "../plugins/provider-runtime.js";
import { normalizeLowercaseStringOrEmpty } from "../shared/string-coerce.js";
import { normalizeProviderId } from "./provider-id.js";
function resolveBuiltInModelSuppression(params: { provider?: string | null; id?: string | null }) {
const provider = normalizeProviderId(params.provider ?? "");
const modelId = normalizeLowercaseStringOrEmpty(params.id);
if (!provider || !modelId) {
return undefined;
}
return resolveProviderBuiltInModelSuppression({
env: process.env,
context: {
env: process.env,
provider,
modelId,
},
});
}
export function shouldSuppressBuiltInModel(params: {
provider?: string | null;
id?: string | null;
}) {
return resolveBuiltInModelSuppression(params)?.suppress ?? false;
}
export function buildSuppressedBuiltInModelError(params: {
provider?: string | null;
id?: string | null;
}): string | undefined {
return resolveBuiltInModelSuppression(params)?.errorMessage;
}