From 4454355aadb044392539814de94dbbd79ffefb76 Mon Sep 17 00:00:00 2001 From: YoVinchen Date: Wed, 26 Nov 2025 09:26:23 +0800 Subject: [PATCH] fix(skill): use full key for deduplication to allow same-name skills from different repos --- src-tauri/src/services/skill.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src-tauri/src/services/skill.rs b/src-tauri/src/services/skill.rs index 3a9b05b0..f771cfd7 100644 --- a/src-tauri/src/services/skill.rs +++ b/src-tauri/src/services/skill.rs @@ -353,11 +353,13 @@ impl SkillService { } /// 去重技能列表 + /// 使用完整的 key (owner/name:directory) 来区分不同仓库的同名技能 fn deduplicate_skills(skills: &mut Vec) { let mut seen = HashMap::new(); skills.retain(|skill| { - let key = skill.directory.to_lowercase(); - if let std::collections::hash_map::Entry::Vacant(e) = seen.entry(key) { + // 使用完整 key 而非仅 directory,允许不同仓库的同名技能共存 + let unique_key = skill.key.to_lowercase(); + if let std::collections::hash_map::Entry::Vacant(e) = seen.entry(unique_key) { e.insert(true); true } else {