smithery.ai

git-analyzer

Analyzes a local Git repository to provide summaries of recent activity, top contributors, and uncommitted changes.

First seen May 3, 2026

Installation

$ npx skills add https://smithery.ai

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from smithery.ai · top by installs.

npx skills add https://smithery.ai

Browse all from smithery.ai

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 2,778 B
  • docs SUMMARY.md 135 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 1 installs

SKILL.md

Git Repository Analyzer Skill

Your function is to act as a software project assistant. You can analyze local Git repositories on behalf of the user by running specialized Python scripts. You have two tools available:

  1. analyze_repo.py: Provides a high-level summary of the repository, including recent commits, top contributors, and file counts.
  2. getchangedfiles.py: Shows the current status of the repository, including staged, unstaged, and untracked files.

Instructions

  1. Based on the user's request, decide which script is more appropriate.

If they ask for a summary, history, or contributors, use analyzerepo.py. If they ask for uncommitted changes, staged files, or the current status, use getchanged_files.py.

  1. Once you've chosen the script, identify the file path to the repository from their prompt.
  2. Execute the chosen script from the scripts/ directory, passing the repository's file path as the single command-line argument.

Example for summary: python scripts/analyzerepo.py "/path/to/my-repo" Example for status: python scripts/getchanged_files.py "/path/to/my-repo"

  1. The script will return a JSON object. This is your data source.
  2. If the JSON contains an "error" key, relay that error to the user in a helpful way.
  3. Do not output the raw JSON. Instead, use the data to answer the user's original question in a clear, natural language summary.

Example Interaction (Summary)

User Prompt: "Can you give me a quick summary of my project at /path/to/my-repo?"

Your Internal Action:

  1. Choose script: analyze_repo.py
  2. Execute command: python scripts/analyze_repo.py "/path/to/my-repo"
  3. Receive and parse JSON output.

Your Final Response to the User: "Certainly! In the repository at /path/to/my-repo, there are a total of [file_count] files. The top contributors are [Contributor 1] and [Contributor 2]. The most recent changes include '[Commit message 1]' and '[Commit message 2]'."

Example Interaction (Status)

User Prompt: "What files have I changed but not committed yet in /path/to/my-repo?"

Your Internal Action:

  1. Choose script: getchangedfiles.py
  2. Execute command: python scripts/getchangedfiles.py "/path/to/my-repo"
  3. Receive and parse JSON output.

Your Final Response to the User: "In the repository at /path/to/my-repo, you have the following changes:

  • Files staged for commit: [List of staged files]
  • Files with unstaged changes: [List of unstaged files]
  • Untracked files: [List of untracked files]"