PluginBench
Skill
Official
Review
Audit score 70

repo-story-time

github/awesome-copilot

Turns a repo's commit history and structure into a technical summary plus a narrative "story" of its development.

What is repo-story-time?

repo-story-time analyzes a repository's file structure and git commit history to generate two markdown deliverables: a technical REPOSITORY_SUMMARY.md and a narrative THE_STORY_OF_THIS_REPO.md. Use it when you want an automated, evidence-based technical and human-interest overview of a codebase's architecture and development history.

  • Explores repository file structure and configuration to identify purpose, architecture, technologies, and key components
  • Runs a systematic series of git commands to gather commit counts, contributor stats, monthly activity, file change frequency, and merge commit history
  • Analyzes the gathered data for narrative patterns: main contributors, seasonal trends, dominant themes, and notable turning points
  • Writes a REPOSITORY_SUMMARY.md covering overview, architecture, key components, technologies, data flow, and ownership
  • Writes a THE_STORY_OF_THIS_REPO.md covering yearly statistics, contributor profiles, seasonal patterns, major themes, turning points, and current state

How to install repo-story-time

npx skills add https://github.com/github/awesome-copilot --skill repo-story-time
Prerequisites
  • Must be run inside a Git repository with accessible commit history
  • Agent environment must support PowerShell-style commands (Get-ChildItem, Select-Object, ForEach-Object) or equivalent
  • Agent must have an editFiles tool/capability to write files to the repository root
Claude Code
Cursor
Windsurf
Cline

How to use repo-story-time

  1. 1.Invoke the skill while working inside the target repository's root directory.
  2. 2.Allow it to run the listed PowerShell and git exploration commands (file listing, directory structure, semantic search) to map the repository.
  3. 3.Allow it to run the git history commands (commit counts, contributor stats, monthly activity, file change frequency, merge commits, seasonal breakdown).
  4. 4.Let it analyze the outputs for patterns: contributors, themes, seasonal trends, and turning points.
  5. 5.Confirm it creates REPOSITORY_SUMMARY.md and THE_STORY_OF_THIS_REPO.md in the repo root using the editFiles tool, then review the generated files.

Use cases

Good for
  • Onboarding new team members with a quick technical and historical overview of an unfamiliar repository
  • Generating documentation that explains a codebase's architecture and key components
  • Producing a retrospective narrative of a project's past year of development for stakeholders or team retros
  • Identifying top contributors, seasonal work patterns, and major themes (features vs fixes vs refactors) in a project
  • Creating shareable artifacts (markdown files) summarizing both the technical and cultural evolution of a repo
Who it's for
  • Engineering managers wanting a quick architecture and history overview of a project
  • Developers onboarding onto a new or legacy codebase
  • Tech leads preparing retrospectives or documentation about project evolution
  • Open-source maintainers wanting a narrative summary of contributor activity

repo-story-time FAQ

What files does this skill produce?

It creates two files in the repository root: REPOSITORY_SUMMARY.md (technical architecture overview) and THE_STORY_OF_THIS_REPO.md (a narrative built from commit history analysis).

Does it output the analysis in chat?

No. The skill is designed to write content directly into the two markdown files using the editFiles tool rather than printing the content in the chat.

Does this require a Git repository?

Yes, it relies on git history (commit counts, contributors, file changes, merges) to build the narrative, so it must be run inside a git repository with accessible history.

What shell/commands does it use?

It uses PowerShell-style commands (Get-ChildItem, Select-Object, ForEach-Object) combined with git commands like git log, git shortlog, and git rev-list.

Can it analyze any codebase or framework?

Yes, it's language/framework agnostic - it inspects config files, README files, source and test directories to infer purpose, architecture, and technologies generically.

Full instructions (SKILL.md)

Source of truth, from github/awesome-copilot.


name: repo-story-time description: 'Generate a comprehensive repository summary and narrative story from commit history'

Role

You're a senior technical analyst and storyteller with expertise in repository archaeology, code pattern analysis, and narrative synthesis. Your mission is to transform raw repository data into compelling technical narratives that reveal the human stories behind the code.

Task

Transform any repository into a comprehensive analysis with two deliverables:

  1. REPOSITORY_SUMMARY.md - Technical architecture and purpose overview
  2. THE_STORY_OF_THIS_REPO.md - Narrative story from commit history analysis

CRITICAL: You must CREATE and WRITE these files with complete markdown content. Do NOT output the markdown content in the chat - use the editFiles tool to create the actual files in the repository root directory.

Methodology

Phase 1: Repository Exploration

EXECUTE these commands immediately to understand the repository structure and purpose:

  1. Get repository overview by running: Get-ChildItem -Recurse -Include "*.md","*.json","*.yaml","*.yml" | Select-Object -First 20 | Select-Object Name, DirectoryName

  2. Understand project structure by running: Get-ChildItem -Recurse -Directory | Where-Object {$_.Name -notmatch "(node_modules|\.git|bin|obj)"} | Select-Object -First 30 | Format-Table Name, FullName

After executing these commands, use semantic search to understand key concepts and technologies. Look for:

  • Configuration files (package.json, pom.xml, requirements.txt, etc.)
  • README files and documentation
  • Main source directories
  • Test directories
  • Build/deployment configurations

Phase 2: Technical Deep Dive

Create comprehensive technical inventory:

  • Purpose: What problem does this repository solve?
  • Architecture: How is the code organized?
  • Technologies: What languages, frameworks, and tools are used?
  • Key Components: What are the main modules/services/features?
  • Data Flow: How does information move through the system?

Phase 3: Commit History Analysis

EXECUTE these git commands systematically to understand repository evolution:

Step 1: Basic Statistics - Run these commands to get repository metrics:

  • git rev-list --all --count (total commit count)
  • (git log --oneline --since="1 year ago").Count (commits in last year)

Step 2: Contributor Analysis - Run this command:

  • git shortlog -sn --since="1 year ago" | Select-Object -First 20

Step 3: Activity Patterns - Run this command:

  • git log --since="1 year ago" --format="%ai" | ForEach-Object { $_.Substring(0,7) } | Group-Object | Sort-Object Count -Descending | Select-Object -First 12

Step 4: Change Pattern Analysis - Run these commands:

  • git log --since="1 year ago" --oneline --grep="feat|fix|update|add|remove" | Select-Object -First 50
  • git log --since="1 year ago" --name-only --oneline | Where-Object { $_ -notmatch "^[a-f0-9]" } | Group-Object | Sort-Object Count -Descending | Select-Object -First 20

Step 5: Collaboration Patterns - Run this command:

  • git log --since="1 year ago" --merges --oneline | Select-Object -First 20

Step 6: Seasonal Analysis - Run this command:

  • git log --since="1 year ago" --format="%ai" | ForEach-Object { $_.Substring(5,2) } | Group-Object | Sort-Object Name

Important: Execute each command and analyze the output before proceeding to the next step. Important: Use your best judgment to execute additional commands not listed above based on the output of previous commands or the repository's specific content.

Phase 4: Pattern Recognition

Look for these narrative elements:

  • Characters: Who are the main contributors? What are their specialties?
  • Seasons: Are there patterns by month/quarter? Holiday effects?
  • Themes: What types of changes dominate? (features, fixes, refactoring)
  • Conflicts: Are there areas of frequent change or contention?
  • Evolution: How has the repository grown and changed over time?

Output Format

REPOSITORY_SUMMARY.md Structure

# Repository Analysis: [Repo Name]

## Overview
Brief description of what this repository does and why it exists.

## Architecture
High-level technical architecture and organization.

## Key Components
- **Component 1**: Description and purpose
- **Component 2**: Description and purpose
[Continue for all major components]

## Technologies Used
List of programming languages, frameworks, tools, and platforms.

## Data Flow
How information moves through the system.

## Team and Ownership
Who maintains different parts of the codebase.

THE_STORY_OF_THIS_REPO.md Structure

# The Story of [Repo Name]

## The Chronicles: A Year in Numbers
Statistical overview of the past year's activity.

## Cast of Characters
Profiles of main contributors with their specialties and impact.

## Seasonal Patterns
Monthly/quarterly analysis of development activity.

## The Great Themes
Major categories of work and their significance.

## Plot Twists and Turning Points
Notable events, major changes, or interesting patterns.

## The Current Chapter
Where the repository stands today and future implications.

Key Instructions

  1. Be Specific: Use actual file names, commit messages, and contributor names
  2. Find Stories: Look for interesting patterns, not just statistics
  3. Context Matters: Explain why patterns exist (holidays, releases, incidents)
  4. Human Element: Focus on the people and teams behind the code
  5. Technical Depth: Balance narrative with technical accuracy
  6. Evidence-Based: Support observations with actual git data

Success Criteria

  • Both markdown files are ACTUALLY CREATED with complete, comprehensive content using the editFiles tool
  • NO markdown content should be output to chat - all content must be written directly to the files
  • Technical summary accurately represents repository architecture
  • Narrative story reveals human patterns and interesting insights
  • Git commands provide concrete evidence for all claims
  • Analysis reveals both technical and cultural aspects of development
  • Files are ready to use immediately without any copy/paste from chat dialog

Critical Final Instructions

DO NOT output markdown content in the chat. DO use the editFiles tool to create both files with complete content. The deliverables are the actual files, not chat output.

Remember: Every repository tells a story. Your job is to uncover that story through systematic analysis and present it in a way that both technical and non-technical audiences can appreciate.