author-contributions

Identify files an author contributed to on a branch, tracing contributions through git renames.

Updated Apr 14, 2026
One-click install
npx skills add https://github.com/jimeh/hucode --skill author-contributions-jimeh
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: author-contributions
Source: https://github.com/jimeh/hucode/tree/main/.github/skills/author-contributions
Command: npx skills add https://github.com/jimeh/hucode --skill author-contributions-jimeh

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Determining exactly which files a specific person contributed to on a feature branch is hard when files have been renamed or moved by other contributors, since standard git blame and log queries lose track of authorship across renames. ## Core Features & Use Cases - Author Attribution: Resolves the exact git identity of an author and collects every file they directly committed to on a branch versus its upstream. - Rename Tracing: Builds a transitive rename map across all branch commits so contributions survive multi-hop file moves and bulk refactors. - Merge-Scoped Reporting: Cross-references results against the actual merge diff and returns a markdown table with DIRECT or VIA_RENAME status plus line stats. - Use Case: Before merging a large pull request, run this as a subagent to audit exactly which files a teammate authored, producing a concise table for reviewers. ## Quick Start Ask the agent to find every file that a named author contributed to on the current branch compared to main, tracing contributions through renames, and return a markdown table with status, file path, and line changes.

Frequently Asked Questions about author-contributions

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I find all files an author changed on a git branch?▼

Run git log with --author filtered to the exact author name over the upstream..branch range, then use git diff-tree on each commit to collect touched files. Cross-reference the results with git diff --name-only against the upstream to keep only files that will actually merge.

How to track code authorship through git file renames?▼

Build a rename map by running git diff-tree -r -M on every commit in the branch and parsing R-status lines into new-path to old-path mappings. Walk the map transitively from each file in the merge diff to check whether any ancestor path was touched by the target author.

Why does git log --author not match the person I expect?▼

The --author flag does substring matching, so short usernames often fail to match full display names or match the wrong person. Resolve the exact identity first with git log --format="%an <%ae>" or the GitHub get_me tool before filtering commits.

Does this include files the author edited that were later deleted?▼

No. Only files present in the merge diff between the upstream and the branch are reported, so files the author touched that were subsequently deleted entirely are excluded because they will not land in the upstream.

Should this analysis run as a subagent?▼

Yes. The procedure executes many sequential git commands, so delegating it to a subagent keeps the main context clean and returns only a concise markdown table with status, file path, and line statistics.