retro
Weekly engineering retrospective. Analyzes commit history, work patterns, and code quality metrics with persistent history and trend tracking. Use when asked to "weekly retro", "what did we ship", or "engineering retrospective". Proactively suggest at the end of a work week or sprint.
npx skills add majiayu000/claude-skill-registry --skill retro-erickpinos-sai-explorer --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
Generates a weekly retrospective by analyzing commits within a chosen time window, breaking down contributions per author, and surfacing growth areas and praise. It collects data from git logs across the current default branch, computes per-author and global metrics, and presents a per-author leaderboard with the current user first as "You (<name>)". It also optionally reads Greptile history and TODOS.md to enrich the report when those files exist.
How it works
- It expects to be invoked with /retro and an optional window (e.g., 24h, 14d, 30d, or compare variants). It computes a local, midnight-aligned start date for day and week units and uses git log queries against origin/<default> with --since to gather data.
- It runs a batch of git commands in parallel to collect:
- All commits with timestamps, author, and short stats since the window.
- Per-commit test vs total LOC breakdown by author.
- Commit timestamps for session detection and hourly distribution.
- Files most frequently changed for hotspot analysis.
- PR numbers from commit messages.
- Per-author file hotspots.
- Per-author commit counts.
- Optional Greptile history and TODOS.md if present.
- Test file counts and regression/test-related commits within the window.
- It computes a metrics table including:
- Commits to main, Contributors, PRs merged, Total insertions, Total deletions, Net LOC added, Test LOC (insertions), Test LOC ratio, Version range, Active days, Detected sessions, Avg LOC/session-hour, Greptile signal, and Test Health.
- It prints a per-author leaderboard sorted by commits with the current user first as "You (name)".
- If Greptile history exists, it filters by the retro window to compute fix/FP metrics. If TODOS.md exists, it computes backlog health metrics and adds a Backlog Health row.
- If analytics exist, it reads skill-usage.jsonl to separate activations from hook fires and aggregates by skill name within the retro window.
When to use it
- Use when you want a weekly engineering retrospective focused on commit history, work patterns, and code quality metrics. Triggered by /retro, with optional time window arguments, or compare variants to contrast current vs prior periods.
What it can touch
- Reads git history from origin/<default> and local files: ~/.gstack/greptile-history.md, TODOS.md, and ~/.gstack/analytics/skill-usage.jsonl if present. It uses commands listed under Step 1 to gather data and does not modify repository files.
Caveats
- The report relies on local system state and the presence of origin/<default> in the local repo. If the default branch or remote setup differs, outputs may vary. If Greptile history or TODOS.md are absent, related sections are skipped. Time windows follow local timezone and midnight alignment for day/week units; hours use a relative hours format.
<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly --> <!-- Regenerate: bun run gen:skill-docs --> ## Preamble (run first) ```bash _UPD=$(~/.claude/skills/gstack/bin/gstack-update-check 2>/dev/null || .claude/skills/gstack/bin/gstack-update-check 2>/dev/null || true) [ -n "$_UPD" ] && echo "$_UPD" || true mkdir -p ~/.gstack/sessions touch ~/.gstack/sessions/"$PPID" _SESSIONS=$(find ~/.gstack/sessions -mmin -120 -type f 2>/dev/null | wc -l | tr -d ' ') find ~/.gstack/sessions -mmin +120 -type f -delete 2>/dev/null || true _CONTRIB=$(~/.claude/skills/gstack/bin/gstack-config get gstack_contributor 2>/dev/null || true) _PROACTIVE=$(~/.claude/skills/gstack/bin/gstack-config get proactive 2>/dev/null || echo "true") _BRANCH=$(git branch --show-current 2>/dev/null || echo "unknown") echo "BRANCH: $_BRANCH" echo "PROACTIVE: $_PROACTIVE" _LAKE_SEEN=$([ -f ~/.gstack/.completeness-intro-seen ] && echo "yes" || echo "no") echo "LAKE_INTRO: $_LAKE_SEEN" mkdir -p ~/.gstack/analytics echo '{"skill":"retro","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null || echo "unknown")'"}' >> ~/.gstack/analytics/skill-usage.json
- Preamble (run first)
- AskUserQuestion Format
- Completeness Principle — Boil the Lake
- Contributor Mode
- Completion Status Protocol
- Escalation
- Detect default branch
- User-invocable
- Arguments
- Instructions
- Step 1: Gather Raw Data
- Step 2: Compute Metrics
- Step 3: Commit Time Distribution
- Step 4: Work Session Detection
mkdir -p ~/.gstack/sessions touch ~/.gstack/sessions/"$PPID" find ~/.gstack/sessions -mmin +120 -type f -delete 2>/dev/null || true echo "BRANCH: $_BRANCH" echo "PROACTIVE: $_PROACTIVE" echo "LAKE_INTRO: $_LAKE_SEEN" mkdir -p ~/.gstack/analytics open https://garryslist.org/posts/boil-the-ocean touch ~/.gstack/.completeness-intro-seen git fetch origin <default> --quiet
What does the retro skill do?
Weekly engineering retrospective. Analyzes commit history, work patterns, and code quality metrics with persistent history and trend tracking. Use when asked to "weekly retro", "what did we ship", or "engineering retrospective". Proactively suggest at the end of a work week or sprint.
How do I install it?
Run `npx skills add majiayu000/claude-skill-registry --skill retro-erickpinos-sai-explorer --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From majiayu000/claude-skill-registry, a repository with 534 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
