File size: 2,089 Bytes
e249c6d | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | import type { OpenClawConfig } from "../../config/types.openclaw.js";
import {
allowsPluginModelNormalization,
findConfiguredModelProvider,
} from "../configured-provider-model.js";
import { normalizeConfiguredProviderCatalogModelId } from "../model-ref-shared.js";
import type { ModelManifestNormalizationContext } from "../model-ref-shared.js";
import {
buildModelAliasIndex,
normalizeModelRef,
normalizeProviderId,
resolveModelRefFromString,
} from "../model-selection.js";
export function normalizeAgentCommandModelRef(
cfg: OpenClawConfig,
provider: string,
model: string,
modelManifestContext: ModelManifestNormalizationContext,
) {
return normalizeModelRef(provider, model, {
...modelManifestContext,
allowPluginNormalization: allowsPluginModelNormalization({ cfg, provider, model }),
});
}
export function normalizeAgentCommandDefaultModelRef(
cfg: OpenClawConfig,
provider: string,
model: string,
modelManifestContext: ModelManifestNormalizationContext,
) {
const normalizedProvider = normalizeProviderId(provider);
if (findConfiguredModelProvider(cfg, normalizedProvider)) {
return {
provider: normalizedProvider,
model: normalizeConfiguredProviderCatalogModelId(normalizedProvider, model, {
manifestPlugins: modelManifestContext.manifestPlugins,
}),
};
}
return normalizeAgentCommandModelRef(cfg, provider, model, modelManifestContext);
}
export function parseAgentCommandModelRef(
cfg: OpenClawConfig,
agentId: string,
raw: string,
defaultProvider: string,
modelManifestContext: ModelManifestNormalizationContext,
) {
const parsed = resolveModelRefFromString({
cfg,
agentId,
raw,
defaultProvider,
aliasIndex: buildModelAliasIndex({
cfg,
agentId,
defaultProvider,
...modelManifestContext,
allowPluginNormalization: false,
}),
...modelManifestContext,
allowPluginNormalization: false,
})?.ref;
return parsed
? normalizeAgentCommandModelRef(cfg, parsed.provider, parsed.model, modelManifestContext)
: null;
}
|