Update Contributors (solvcon)
SkillDev toolsRegenerate CONTRIBUTORS.md with contrib/lint/analyze-contributors.py and repair the identities the generator gets wrong. Use when the user asks to update the contributor list or add someone to CONTRIBUTORS.md.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Update Contributors (solvcon) skill
What this skill tells your AI
The instructions your AI receives, as published by solvcon/solvcon in .claude/skills/update-contributors/SKILL.md and read by ahel’s review.
CONTRIBUTORS.md is generated by contrib/lint/analyze-contributors.py: a
contributor stays in the list when an address appears in a source-file
copyright header or the identity reaches the commit threshold (5) on the
local master ref.
python3 contrib/lint/analyze-contributors.py --update-file CONTRIBUTORS.md
The script reads the local master, not a remote-tracking ref, so
fast-forward it first; a fetch alone leaves recent contributors out.
Repair a rejected identity in .mailmap
Git author identities are whatever a contributor's machine was configured
with. When an identity carries an unreachable address (@...local, a bare
host name, no @) or a non-ASCII name, the script prints it with the
.mailmap lines that repair it. A kept identity is an error: the script
refuses to write CONTRIBUTORS.md and exits 1. A dropped one is a warning,
because its commits may belong to a listed contributor. Repair both in
.mailmap at the repository root; never edit such an address into the list
by hand. Leave a warning alone only when the real contributor cannot be
found (for example a one-commit ident with no matching GitHub account).
Find the contributor's real name and address (their other commits, or the pull request they landed), then add one line per bad address:
Pat Doe <pat.doe@example.com> <pat@Pat-MacBook-Pro.local>
git log applies the mailmap before the script sees a commit, so the mapped
commits count toward the real address, which is often what carries the
identity over the threshold. Re-run the script and confirm a second run
leaves the file unchanged.
Running the script with no arguments prints a keep/drop report with commit counts and reasons; use it to explain a threshold decision.
Signals
- GitHub stars
- 76
- Forks
- 73
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
update-contributors- Source
- github.com/solvcon/solvcon