refactor(agents): share model alias line builder

This commit is contained in:
Peter Steinberger
2026-02-15 07:01:29 +00:00
parent 913b137090
commit cb2f978ed5
3 changed files with 24 additions and 38 deletions

View File

@@ -0,0 +1,20 @@
import type { OpenClawConfig } from "../config/config.js";
export function buildModelAliasLines(cfg?: OpenClawConfig) {
const models = cfg?.agents?.defaults?.models ?? {};
const entries: Array<{ alias: string; model: string }> = [];
for (const [keyRaw, entryRaw] of Object.entries(models)) {
const model = String(keyRaw ?? "").trim();
if (!model) {
continue;
}
const alias = String((entryRaw as { alias?: string } | undefined)?.alias ?? "").trim();
if (!alias) {
continue;
}
entries.push({ alias, model });
}
return entries
.toSorted((a, b) => a.alias.localeCompare(b.alias))
.map((entry) => `- ${entry.alias}: ${entry.model}`);
}