From 58591d9e34163ef4a92cfa88b4c357d96332be78 Mon Sep 17 00:00:00 2001 From: zccyman <16263913+zccyman@users.noreply.github.com> Date: Tue, 19 May 2026 03:02:47 -0700 Subject: [PATCH] feat: show names of user-modified skills in bundled skill sync summary When 'hermes update' syncs bundled skills, the summary line only shows the count of user-modified skills that were kept (e.g. '3 user-modified (kept)'), but not *which* skills. Once the update finishes, the user has no way to know which skills need triage. Append the skill names to the summary line, truncated to 5 with a '+N more' suffix for long lists: Done: 12 new, 3 updated, 7 unchanged, 3 user-modified (kept): hermes-agent, debugging-hermes-tui-commands, system-health. 25 total bundled. Closes #28121 --- tools/skills_sync.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tools/skills_sync.py b/tools/skills_sync.py index 3c2baef0765..24374d51791 100644 --- a/tools/skills_sync.py +++ b/tools/skills_sync.py @@ -423,7 +423,12 @@ if __name__ == "__main__": f"{result['skipped']} unchanged", ] if result["user_modified"]: - parts.append(f"{len(result['user_modified'])} user-modified (kept)") + names = result["user_modified"] + MAX_SHOW = 5 + shown = ", ".join(names[:MAX_SHOW]) + if len(names) > MAX_SHOW: + shown += f", +{len(names) - MAX_SHOW} more" + parts.append(f"{len(names)} user-modified (kept): {shown}") if result["cleaned"]: parts.append(f"{len(result['cleaned'])} cleaned from manifest") print(f"\nDone: {', '.join(parts)}. {result['total_bundled']} total bundled.")