Skills Agentes

Gstack Openclaw Retro

Retrospectiva semanal de ingeniería: analiza commits, patrones de trabajo y calidad de código con historial persistente, tendencias y análisis por persona con elogios y áreas de mejora.

Estrellas
129k

en todo el repo

Actividad
60

0–100, la ruta de este skill

Actualizado
hace 7 días

último commit aquí

Commits
1

últimos 90 días

Contexto
2.4k tok

74 tok en reposo

Paquete
1 archivo

9 KB

Instalar

Funciona con cualquier agente que lea SKILL.md

npx -y skills add garrytan/gstack --skill gstack-openclaw-retro --agent claude-code

Se instala solo en este repositorio.

Qué hace

  • Analiza el historial de commits de git para generar una retrospectiva semanal de ingeniería
  • Calcula métricas de código: LOC, ratio de tests, hotspots, tipos de commit, tamaño de PRs
  • Detecta sesiones de trabajo, patrones horarios y rachas de shipping por persona y por equipo
  • Genera análisis por persona con elogios y áreas de mejora ancladas en commits reales
  • Guarda snapshots en memory/ para comparar tendencias semana a semana

Úsalo cuando

  • Se pide una retro semanal, qué se envió esta semana, o una retrospectiva de ingeniería
  • Se quiere comparar la ventana actual contra la semana o periodo anterior (modo compare)

No lo uses cuando

    Qué lo activa

    Di cualquiera de estas frases y el agente debería cargar este skill.

    • Dame la retro de ingeniería de esta semana
    • ¿Qué shippeamos esta semana?
    • Genera la retrospectiva de las últimas 24h
    • Compara esta semana con la anterior
    • Muéstrame la retro de los últimos 14 días

    SKILL.md

    En inglés

    Weekly Engineering Retrospective

    Generates a comprehensive engineering retrospective analyzing commit history, work patterns, and code quality metrics. Team-aware: identifies the user running the command, then analyzes every contributor with per-person praise and growth opportunities.

    Arguments

    • Default: last 7 days
    • 24h: last 24 hours
    • 14d: last 14 days
    • 30d: last 30 days
    • compare: compare current window vs prior same-length window

    Instructions

    Parse the argument to determine the time window. Default to 7 days. All times should be reported in the user's local timezone.

    Midnight-aligned windows: For day units, compute an absolute start date at local midnight. For example, if today is 2026-03-18 and the window is 7 days, the start date is 2026-03-11. Use --since="2026-03-11T00:00:00" for git log queries. For hour units, use --since="N hours ago".


    Step 1: Gather Raw Data

    First, fetch origin and identify the current user:

    git fetch origin main --quiet
    git config user.name
    git config user.email
    

    The name returned by git config user.name is "you" ... the person reading this retro. All other authors are teammates.

    Run ALL of these git commands (they are independent):

    # All commits with timestamps, subject, hash, author, files changed
    git log origin/main --since="<window>" --format="%H|%aN|%ae|%ai|%s" --shortstat
    
    # Per-commit test vs total LOC breakdown with author
    git log origin/main --since="<window>" --format="COMMIT:%H|%aN" --numstat
    
    # Commit timestamps for session detection and hourly distribution
    git log origin/main --since="<window>" --format="%at|%aN|%ai|%s" | sort -n
    
    # Files most frequently changed (hotspot analysis)
    git log origin/main --since="<window>" --format="" --name-only | grep -v '^$' | sort | uniq -c | sort -rn
    
    # PR numbers from commit messages
    git log origin/main --since="<window>" --format="%s" | grep -oE '[#!][0-9]+' | sort -t'#' -k1 | uniq
    
    # Per-author file hotspots
    git log origin/main --since="<window>" --format="AUTHOR:%aN" --name-only
    
    # Per-author commit counts
    git shortlog origin/main --since="<window>" -sn --no-merges
    
    # Test file count
    git ls-files 2>/dev/null | grep -E '(\.test\.|\.spec\.|_test\.|_spec\.)' | wc -l
    
    # Test files changed in window
    git log origin/main --since="<window>" --format="" --name-only | grep -E '\.(test|spec)\.' | sort -u | wc -l
    

    Step 2: Compute Metrics

    Calculate and present these metrics in a summary:

    • Commits to main: N
    • Contributors: N
    • PRs merged: N
    • Total insertions: N
    • Total deletions: N
    • Net LOC added: N
    • Test LOC (insertions): N
    • Test LOC ratio: N%
    • Version range: vX.Y.Z → vX.Y.Z
    • Active days: N
    • Detected sessions: N
    • Avg LOC/session-hour: N

    Then show a per-author leaderboard immediately below:

    Contributor         Commits   +/-          Top area
    You (garry)              32   +2400/-300   browse/
    alice                    12   +800/-150    app/services/
    bob                       3   +120/-40     tests/
    

    Sort by commits descending. The current user always appears first, labeled "You (name)".


    Step 3: Commit Time Distribution

    Show hourly histogram in local time:

    Hour  Commits  ████████████████
     00:    4      ████
     07:    5      █████
     ...
    

    Identify:

    • Peak hours
    • Dead zones
    • Bimodal pattern (morning/evening) vs continuous
    • Late-night coding clusters (after 10pm)

    Step 4: Work Session Detection

    Detect sessions using 45-minute gap threshold between consecutive commits.

    Classify sessions:

    • Deep sessions (50+ min)
    • Medium sessions (20-50 min)
    • Micro sessions (<20 min, single-commit)

    Calculate:

    • Total active coding time
    • Average session length
    • LOC per hour of active time

    Step 5: Commit Type Breakdown

    Categorize by conventional commit prefix (feat/fix/refactor/test/chore/docs). Show as percentage bar:

    feat:     20  (40%)  ████████████████████
    fix:      27  (54%)  ███████████████████████████
    refactor:  2  ( 4%)  ██
    

    Flag if fix ratio exceeds 50% ... signals a "ship fast, fix fast" pattern that may indicate review gaps.


    Step 6: Hotspot Analysis

    Show top 10 most-changed files. Flag:

    • Files changed 5+ times (churn hotspots)
    • Test files vs production files in the hotspot list
    • VERSION/CHANGELOG frequency

    Step 7: PR Size Distribution

    Estimate PR sizes and bucket them:

    • Small (<100 LOC)
    • Medium (100-500 LOC)
    • Large (500-1500 LOC)
    • XL (1500+ LOC)

    Step 8: Focus Score + Ship of the Week

    Focus score: Percentage of commits touching the single most-changed top-level directory. Higher = deeper focused work. Lower = scattered context-switching.

    Ship of the week: The single highest-LOC PR in the window. Highlight PR number, LOC changed, and why it matters.


    Step 9: Team Member Analysis

    For each contributor (including the current user), compute:

    1. Commits and LOC ... total commits, insertions, deletions, net LOC
    2. Areas of focus ... which directories/files they touched most (top 3)
    3. Commit type mix ... their personal feat/fix/refactor/test breakdown
    4. Session patterns ... when they code (peak hours), session count
    5. Test discipline ... their personal test LOC ratio
    6. Biggest ship ... their single highest-impact commit or PR

    For the current user ("You"): Deepest treatment. Include all session analysis, time patterns, focus score. Frame in first person.

    For each teammate: 2-3 sentences covering what they shipped and their pattern. Then:

    • Praise (1-2 specific things): Anchor in actual commits. Not "great work" ... say exactly what was good.
    • Opportunity for growth (1 specific thing): Frame as leveling-up, not criticism. Anchor in actual data.

    If solo repo: Skip team breakdown.

    AI collaboration: If commits have Co-Authored-By AI trailers, track "AI-assisted commits" as a separate metric.


    Step 10: Week-over-Week Trends (if window >= 14d)

    Split into weekly buckets and show trends:

    • Commits per week (total and per-author)
    • LOC per week
    • Test ratio per week
    • Fix ratio per week
    • Session count per week

    Step 11: Streak Tracking

    Count consecutive days with at least 1 commit, going back from today:

    # Team streak
    git log origin/main --format="%ad" --date=format:"%Y-%m-%d" | sort -u
    
    # Personal streak
    git log origin/main --author="<user_name>" --format="%ad" --date=format:"%Y-%m-%d" | sort -u
    

    Display both:

    • "Team shipping streak: 47 consecutive days"
    • "Your shipping streak: 32 consecutive days"

    Step 12: Load History & Compare

    Check for prior retro history in memory/:

    If prior retros exist, load the most recent one and calculate deltas:

                        Last        Now         Delta
    Test ratio:         22%    →    41%         ↑19pp
    Sessions:           10     →    14          ↑4
    LOC/hour:           200    →    350         ↑75%
    Fix ratio:          54%    →    30%         ↓24pp (improving)
    

    If no prior retros exist, note "First retro recorded, run again next week to see trends."


    Step 13: Save Retro History

    Save a JSON snapshot to memory/retro-YYYY-MM-DD.json with metrics, authors, version range, streak, and tweetable summary.


    Step 14: Write the Narrative

    Format for Telegram (bullets, bold, no markdown tables in the final output).

    Structure:

    Tweetable summary (first line):

    Week of Mar 1: 47 commits (3 contributors), 3.2k LOC, 38% tests, 12 PRs, peak: 10pm | Streak: 47d

    Then sections:

    • Summary ... key metrics
    • Trends vs Last Retro ... deltas (skip if first retro)
    • Time & Session Patterns ... when the team codes, session lengths, deep vs micro
    • Shipping Velocity ... commit types, PR sizes, fix-chain detection
    • Code Quality Signals ... test ratio, hotspots, churn
    • Focus & Highlights ... focus score, ship of the week
    • Your Week ... personal deep-dive for the current user
    • Team Breakdown ... per-teammate analysis with praise + growth (skip if solo)
    • Top 3 Team Wins ... highest-impact things shipped
    • 3 Things to Improve ... specific, actionable, anchored in commits
    • 3 Habits for Next Week ... small, practical, realistic (<5 min to adopt)

    Compare Mode

    When the user says "compare":

    • Run the retro for the current window
    • Run the retro for the prior same-length window
    • Present side-by-side metrics with arrows showing improvement/regression
    • Brief narrative on biggest changes

    Important Rules

    • All times in local timezone. Never set TZ.
    • Format for Telegram. Use bullets and bold. Avoid markdown tables in the final output.
    • Praise anchored in commits. Never say "great work" without naming what was good.
    • Growth areas anchored in data. Never criticize without evidence.
    • Save history. Every retro saves to memory/ for trend tracking.
    • Completion status:
      • DONE ... retro generated, history saved
      • DONE_WITH_CONCERNS ... generated but missing data (e.g., no prior retros for comparison)
      • BLOCKED ... not in a git repo or no commits in window

    Reproducido de garrytan/gstack bajo licencia MIT. Leer esta página en markdown.

    Archivos

    1 archivo en el paquete. Solo se lee SKILL.md al activarse — las referencias se cargan si el skill decide que las necesita.

    Antes de instalar

    Requiere estar en un repositorio git con acceso a origin/main y commits en la ventana analizada.

    Necesita en el PATH:git

    Detalles

    Creador
    garrytan
    Licencia
    MIT
    Recursos incluidos
    Solo SKILL.md
    Repositorio
    garrytan/gstack
    Código fuente
    Ver SKILL.md

    Más de garrytan/gstack

    Este repo incluye 59 skills. Si instalas uno, normalmente ya tienes los demás.

    Browse

    129k

    Navegador headless rápido para QA testing y dogfooding de sitios (gstack).

    Costo de contexto al activarse
    14.8k tok
    Tamaño del paquete
    237 archivos
    Última actualización
    hace 7 horas
    Permisos
    testing qa

    Ship

    129k

    Flujo de ship: detecta y fusiona la rama base, corre tests, revisa el diff, sube VERSION, actualiza CHANGELOG, hace commit, push y crea el PR (gstack).

    Costo de contexto al activarse
    22.8k tok
    Tamaño del paquete
    21 archivos
    Última actualización
    anteayer
    Permisos
    devops infraestructura

    Ios Qa

    129k

    QA en dispositivo iOS real para apps SwiftUI, con bucle de agente guiado por visión sobre USB (gstack).

    Costo de contexto al activarse
    15.4k tok
    Tamaño del paquete
    38 archivos
    Última actualización
    anteayer
    Permisos
    testing qa

    Revisión de planes con ojo de diseñador — interactiva, al estilo de las revisiones de CEO e Ingeniería. (gstack)

    Costo de contexto al activarse
    22.8k tok
    Tamaño del paquete
    5 archivos
    Última actualización
    anteayer
    Permisos
    diseno ui

    Revisión de plan en modo gerente de ingeniería: arquitectura, flujo de datos, diagramas, casos límite, cobertura de pruebas y rendimiento. (gstack)

    Costo de contexto al activarse
    17.9k tok
    Tamaño del paquete
    5 archivos
    Última actualización
    anteayer
    Permisos
    herramientas desarrollo

    Actualización de documentación posterior al ship (gstack).

    Costo de contexto al activarse
    14.4k tok
    Tamaño del paquete
    5 archivos
    Última actualización
    anteayer
    Permisos
    documentos

    Skills relacionados

    Úsalo cuando la implementación esté completa, todos los tests pasen, y necesites decidir cómo integrar el trabajo.

    Costo de contexto al activarse
    1.9k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 9 días
    herramientas desarrollo

    Úsalo al empezar trabajo de feature que necesita aislamiento del workspace actual, o antes de ejecutar planes de implementación: asegura un workspace aislado vía herramientas nativas o fallback a git worktree.

    Costo de contexto al activarse
    1.7k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    herramientas desarrollo

    Úsala al crear nuevas skills, editar skills existentes o verificar que funcionan antes de desplegarlas.

    Costo de contexto al activarse
    6.6k tok
    Tamaño del paquete
    7 archivos
    Última actualización
    hace 9 días
    herramientas desarrollo