From b1a0d1a175f830783b71a28f3b074ba2ff77700e Mon Sep 17 00:00:00 2001 From: Tam Nhu Tran Date: Sat, 25 Apr 2026 11:30:33 -0400 Subject: [PATCH] fix(cliproxy/sync): dedup ANTHROPIC_EXTRA_MODELS entries against primary model --- src/cliproxy/sync/profile-mapper.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/cliproxy/sync/profile-mapper.ts b/src/cliproxy/sync/profile-mapper.ts index cb4b7a10..3a4a120c 100644 --- a/src/cliproxy/sync/profile-mapper.ts +++ b/src/cliproxy/sync/profile-mapper.ts @@ -150,14 +150,21 @@ export function mapProfileToClaudeKey(profile: SyncableProfile): ClaudeKey | nul }, ]; - // Append extra models from ANTHROPIC_EXTRA_MODELS env var (comma-separated) + // Append extra models from ANTHROPIC_EXTRA_MODELS env var (comma-separated). + // Skip duplicates of the primary model and any repeated entries to keep + // the synced CLIProxy `models` array clean. const extraModelsRaw = env.ANTHROPIC_EXTRA_MODELS; if (extraModelsRaw && extraModelsRaw.trim()) { + const seen = new Set([modelName]); const extraModels = extraModelsRaw .split(',') .map((m) => m.trim()) .filter((m) => m.length > 0); for (const extra of extraModels) { + if (seen.has(extra)) { + continue; + } + seen.add(extra); claudeKey.models.push({ name: extra, alias: '',