Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Generate a comprehensive repo recap (PRs, issues, releases) for sharing with team. Pass "en" or "fr" as argument for language (default fr).
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-07 | ✗→✓ | ▲ Improved | 53% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 37% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 156% | 0% |
| case-19 | ✗→✓ | ▲ Improved | 23% | 0% |
| case-05 | ✓→✗ | ▼ Worse | -7% | 0% |
Generate a structured recap of the repository state: open PRs, open issues, recent releases, and executive summary. Output is formatted as Markdown with clickable GitHub links, ready to share.
en or english → produce the recap in Englishfr, french, or no argument → produce the recap in French (default)Before gathering data, verify:
bash# Must be inside a git repo git rev-parse --is-inside-work-tree # Must have gh CLI authenticated gh auth status
If either fails, stop and tell the user what's missing.
Run these commands in parallel via gh CLI:
bash# Repo identity (for links) gh repo view --json nameWithOwner -q .nameWithOwner # Open PRs with metadata gh pr list --state open --limit 50 --json number,title,author,createdAt,changedFiles,additions,deletions,reviewDecision,isDraft # Open issues with metadata gh issue list --state open --limit 50 --json number,title,author,createdAt,labels,assignees # Recent releases (for version history) gh release list --limit 5 # Recently merged PRs (for contributor activity) gh pr list --state merged --limit 10 --json number,title,author,mergedAt
Note: author in JSON results is an object {login: "..."} — always extract .author.login when processing.
To distinguish "our PRs" from external contributions:
bashgh api repos/{owner}/{repo}/collaborators --jq '.[].login'
If this fails (permissions), fallback: authors with write/admin access are those who merged PRs recently. When in doubt, ask the user.
Our PRs (author is a repo collaborator):
External — Reviewable (manageable size, no major blockers):
External — Problematic (any of: too large, CI failing, overlapping, merge conflict):
Size labels (use in "Taille" column for quick visual triage):
| Label | Additions | | ----- | --------- | | XS | < 50 | | S | 50-200 | | M | 200-500 | | L | 500-1000 | | XL | > 1000 |
Format: +{additions}, {files} files ({label}) — e.g., +245, 2 files (S)
Two PRs overlap if they modify the same files. Use changedFiles from the JSON data. If >50% file overlap between 2 PRs, flag both as overlapping and cross-reference them.
If one author has 3+ open PRs, note it as a "cluster" with suggested review order (smallest first, or by dependency chain).
fixes #N, closes #N, or same topic)From gh release list output, extract version, date, and name. List the 5 most recent.
If no releases found, check merged PRs for release-please pattern (title matching chore(*): release *) as fallback.
Produce 5-6 bullet points:
Structure the full recap as Markdown with:
# {Repo Name} — Récap au {date} as title (FR) or # {Repo Name} — Recap {date} (EN)---[#123](https://github.com/{owner}/{repo}/pull/123) for PRs, .../issues/123 for issuesEmpty data handling:
After displaying the recap, automatically copy it to clipboard:
bash# Cross-platform clipboard clip() { if command -v pbcopy &>/dev/null; then pbcopy elif command -v xclip &>/dev/null; then xclip -selection clipboard elif command -v wl-copy &>/dev/null; then wl-copy else cat fi } cat << 'EOF' | clip {formatted recap content} EOF
Confirm with: "Copié dans le presse-papier." (FR) or "Copied to clipboard." (EN)
markdown# {Repo Name} — Récap au {date} ## Releases récentes | Version | Date | Highlights | | ------- | ---- | ---------- | | ... | ... | ... | --- ## PRs ouvertes ({count} total) ### Nos PRs | PR | Titre | Taille | Status | | -- | ----- | ------ | ------ | ### Contributeurs externes — Reviewables | PR | Auteur | Titre | Taille | Status | Action | | -- | ------ | ----- | ------ | ------ | ------ | ### Contributeurs externes — Problématiques | PR | Auteur | Titre | Taille | Problème | Action | | -- | ------ | ----- | ------ | -------- | ------ | --- ## Issues ouvertes ({count} total) | # | Auteur | Sujet | Priorité | | - | ------ | ----- | -------- | --- ## Résumé exécutif - **Point 1**: ... - **Point 2**: ...
Same structure but with English headers:
gh CLI (not GitHub API directly, except for collaborators list)gh repo view, don't hardcodeauthor in gh JSON is an object — always use .author.loginOther measured skills in the registry, with their headline benchmark lift.