跳到主要内容

repo-recap 精选

Generate a comprehensive repo recap (PRs, issues, releases) for sharing with team. Pass "en" or "fr" as argument for language (default fr).

编码 Claude CodeCodex CLI Apache-2.0 8.3 万
在 GitHub 打开

安装方式

cp -r .claude/skills/repo-recap ~/.claude/skills/repo-recap

把该 skill 目录放进客户端 skills 目录。不同客户端的目录可能不同,Claude Code 默认是 ~/.claude/skills/

整仓一次性获取:git clone --depth 1 https://github.com/rtk-ai/rtk.git

依赖与权限

  • 无需 API Key
  • 需要联网访问外部服务
  • 依赖外部命令:git gh
  • 以上为按正文与 frontmatter 自动推断的信号,仅供参考;安装前建议先阅读原文。
allowed-tools
Bash Read Grep

SKILL.md 正文

来源 rtk-ai/rtk@311ebcb · 许可 Apache-2.0 · 内容未修改

Repo Recap

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.

Language

  • Check the argument passed to this skill
  • If en or english → produce the recap in English
  • If fr, french, or no argument → produce the recap in French (default)

Preconditions

Before gathering data, verify:

# 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.

Steps

1. Gather Data

Run these commands in parallel via gh CLI:

# 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.

2. Determine Maintainers

To distinguish "our PRs" from external contributions:

gh 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.

3. Analyze and Categorize

PRs — Categorize into 3 groups:

Our PRs (author is a repo collaborator):

  • List with PR number (linked), title, size (+additions, files count), status

External — Reviewable (manageable size, no major blockers):

  • Additions ≤ 1000 AND files ≤ 10
  • No merge conflicts, CI not failing
  • Include: PR link, author, title, size, review status, recommended action

External — Problematic (any of: too large, CI failing, overlapping, merge conflict):

  • Additions > 1000 OR files > 10
  • OR CI failing (reviewDecision = "CHANGES_REQUESTED" or checks failing)
  • OR touches same files as another open PR (= overlap)
  • Include: PR link, author, title, size, specific problem, action taken/needed

Size labels (use in "Taille" column for quick visual triage):

LabelAdditions
XS< 50
S50-200
M200-500
L500-1000
XL> 1000

Format: +{additions}, {files} files ({label}) — e.g., +245, 2 files (S)

Detect overlaps:

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.

Flag clusters:

If one author has 3+ open PRs, note it as a "cluster" with suggested review order (smallest first, or by dependency chain).

Issues — Categorize by status:

  • In progress: has an associated open PR (match by PR body containing fixes #N, closes #N, or same topic)
  • Quick fix: small scope, actionable (bug reports, small enhancements)
  • Feature request: larger scope, needs design discussion
  • Covered by PR: an existing PR addresses this issue (link it)

4. Derive Recent Releases

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.

5. Executive Summary

Produce 5-6 bullet points:

  • Total open PRs and issues count
  • Active contributors (who has the most PRs/issues)
  • Main risks (oversized PRs, CI failures, merge conflicts)
  • Quick wins (small PRs ready to merge — XS/S size, no blockers)
  • Bug fixes needed (hook bugs, regressions)
  • Our own PRs status

6. Format Output

Structure the full recap as Markdown with:

  • # {Repo Name} — Récap au {date} as title (FR) or # {Repo Name} — Recap {date} (EN)
  • Sections separated by ---
  • All PR/issue numbers as clickable links: #123 for PRs, .../issues/123 for issues
  • Tables with Markdown pipe syntax for all listings
  • Bold for emphasis on actions and risks
  • Cross-references between related PRs and issues (e.g., "Covered by [#131](link)")

Empty data handling:

  • 0 open PRs → display "Aucune PR ouverte." (FR) or "No open PRs." (EN) instead of empty table
  • 0 open issues → display "Aucune issue ouverte." (FR) or "No open issues." (EN)
  • 0 releases → display "Aucune release récente." (FR) or "No recent releases." (EN)

7. Copy to Clipboard

After displaying the recap, automatically copy it to clipboard:

# 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)

Output Template (FR)

# {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**: ...

Output Template (EN)

Same structure but with English headers:

  • "Recent Releases", "Open PRs", "Our PRs", "External — Reviewable", "External — Problematic", "Open Issues", "Executive Summary"
  • Action labels: "To review", "Rebase requested", "Split requested", "Trim requested", "CI broken", "Waiting on author", "Feature request", "Quick fix", "Covered by PR"

Notes

  • Always use gh CLI (not GitHub API directly, except for collaborators list)
  • Derive repo owner/name from gh repo view, don't hardcode
  • Keep tables compact — truncate long titles if needed (max ~60 chars)
  • Cross-reference overlapping PRs/issues whenever possible
  • author in gh JSON is an object — always use .author.login

质量与来源

所属仓库
rtk-ai/rtk
仓库星标
8.3 万
最近更新
今天
采集时间
今天
commit
311ebcbfd8ef
内容指纹
sha256:165e7ac9fda7ac4
文件路径
.claude/skills/repo-recap/SKILL.md

同仓库其它 Skill

查看全部 12 个
code-simplifier
Review RTK Rust code for idiomatic simplification. Detects over-engineering, unnecessary allocations, verbose patterns. Applies Rust idioms without changing behavior.
精选 rtk-ai/rtk 8.3 万 原文
Claude CodeCodex CLI
design-patterns
Rust design patterns for RTK. Newtype, Builder, RAII, Trait Objects, State Machine. Applied to CLI filter modules. Use when designing new modules or refactoring existing ones.
精选 rtk-ai/rtk 8.3 万 原文
Claude CodeCodex CLI
issue-triage
Issue triage: audit open issues, categorize, detect duplicates, cross-ref PRs, risk assessment, post comments. Args: "all" for deep analysis of all, issue numbers to focus (e.g. "42 57"), "en"/"fr" for language, no arg = audit only in French.
精选 rtk-ai/rtk 8.3 万 原文
Claude CodeCodex CLI
performance
CLI performance optimization - startup time, memory usage, token savings benchmarking
精选 rtk-ai/rtk 8.3 万 原文
Claude CodeCodex CLI
pr-review
Batch review des PRs RTK par ordre de complexité croissante (XS → S → M → L). Pour chaque PR : vérifie l'état (conflits, CLA, reviews), lit le diff complet, analyse le code en contexte, présente un résumé avec lien + taille + recommandation. Attend validation explicite avant tout merge. Poste des commentaires boldguy-adapt sur les PRs bloquées (conflit, CLA, CHANGES_REQUESTED). Args: "triage" pour lancer un triage complet avant la review. "from:<num>" pour reprendre à partir d'un numéro de PR spécifique.
精选 rtk-ai/rtk 8.3 万 原文
Claude CodeCodex CLI
pr-triage
PR triage: audit open PRs, deep review selected ones, draft and post review comments. Args: "all" to review all, PR numbers to focus (e.g. "42 57"), "en"/"fr" for language, no arg = audit only in French.
精选 rtk-ai/rtk 8.3 万 原文
Claude CodeCodex CLI

相似 Skill

更多「编码」
access
Manage Discord channel access — approve pairings, edit allowlists, set DM/group policy. Use when the user asks to pair, approve someone, check who's allowed, or change policy for the Discord channel.
精选 anthropics/claude-plugins-official 3.8 万 原文
Claude CodeMCP 客户端
configure
Set up the Discord channel — save the bot token and review access policy. Use when the user pastes a Discord bot token, asks to configure Discord, asks "how do I set this up" or "who can reach me," or wants to check channel status.
精选 anthropics/claude-plugins-official 3.8 万 原文
Claude CodeMCP 客户端
access
Manage iMessage channel access — approve pairings, edit allowlists, set DM/group policy. Use when the user asks to pair, approve someone, check who's allowed, or change policy for the iMessage channel.
精选 anthropics/claude-plugins-official 3.8 万 原文
Claude CodeMCP 客户端
configure
Check iMessage channel setup and review access policy. Use when the user asks to configure iMessage, asks "how do I set this up" or "who can reach me," or wants to know why texts aren't reaching the assistant.
精选 anthropics/claude-plugins-official 3.8 万 原文
Claude CodeMCP 客户端
access
Manage Telegram channel access — approve pairings, edit allowlists, set DM/group policy. Use when the user asks to pair, approve someone, check who's allowed, or change policy for the Telegram channel.
精选 anthropics/claude-plugins-official 3.8 万 原文
Claude CodeMCP 客户端
configure
Set up the Telegram channel — save the bot token and review access policy. Use when the user pastes a Telegram bot token, asks to configure Telegram, asks "how do I set this up" or "who can reach me," or wants to check channel status.
精选 anthropics/claude-plugins-official 3.8 万 原文
Claude CodeMCP 客户端