Git Hotspot AI
A lightweight CLI tool for analyzing git hotspots and triggering AI post-processing tasks.
Features
- Git Hotspot Analysis: Identify the most frequently modified files in your repository
- Flexible Filtering: Filter by time range, file patterns, and minimum commit counts
- AI Task Integration: Trigger AI-powered analysis tasks on hotspot files
- Configurable Output: Select top files by percentage or absolute count
- Dry Run Mode: Preview results without executing AI tasks
Installation
From Source
git clone https://github.com/yourusername/git-hotspot-ai.git
cd git-hotspot-ai
pip install -e .
Development Installation
git clone https://github.com/yourusername/git-hotspot-ai.git
cd git-hotspot-ai
pip install -e ".[dev]"
Usage
Basic Usage
# analyze current directory
git-hotspot-ai
# analyze specific repository
git-hotspot-ai --repo /path/to/repo
# show top 20 files
git-hotspot-ai --top 20
# show top 15% of files
git-hotspot-ai --top 15%
# dry run (preview without AI tasks)
git-hotspot-ai --dry-run
Advanced Options
# analyze files modified in the last 6 months
git-hotspot-ai --since "6 months ago"
# ignore test files and documentation
git-hotspot-ai --ignore "tests/*,docs/*,*.md"
# only consider files with at least 5 commits
git-hotspot-ai --min-commits 5
# run specific AI tasks
git-hotspot-ai --tasks "annotate,structure,performance"
Command Line Options
| Option | Description | Default |
|---|---|---|
--repo |
Path to git repository | Current directory |
--top |
Top files to select (count or percentage) | 10% |
--tasks |
Comma-separated AI tasks | annotate,structure,skills,performance,mvp |
--since |
Git time filter (e.g., "6 months ago") | None |
--dry-run |
Preview without AI tasks | False |
--ignore |
Glob patterns to ignore | Empty |
--min-commits |
Minimum commit count | 1 |
AI Tasks
The tool supports the following AI tasks:
- annotate: Add code annotations and comments
- structure: Analyze and improve code structure
- skills: Identify required skills and expertise
- performance: Analyze performance characteristics
- mvp: Generate MVP recommendations
How It Works
- Git Analysis: Uses
git log --numstatto collect file modification statistics - Scoring: Combines commit count and line changes to score files
- Filtering: Applies time range, ignore patterns, and minimum commit filters
- Selection: Selects top files based on percentage or count
- AI Dispatch: Triggers configured AI tasks on selected files
Scoring Algorithm
Files are scored using the formula:
score = commit_count + 0.1 * line_changes
This balances the frequency of changes with the magnitude of changes.
Examples
Find Most Active Files
# top 10 most active files
git-hotspot-ai --top 10
# top 5% of files with at least 3 commits
git-hotspot-ai --top 5% --min-commits 3
Analyze Recent Changes
# files modified in last 3 months
git-hotspot-ai --since "3 months ago"
# recent changes excluding tests
git-hotspot-ai --since "1 month ago" --ignore "test_*,*_test.py"
Development Workflow
# preview what would be analyzed
git-hotspot-ai --dry-run --top 20
# run AI analysis on top files
git-hotspot-ai --top 20 --tasks "annotate,structure"
Development
Running Tests
pytest
Code Formatting
black git_hotspot_ai/
isort git_hotspot_ai/
Type Checking
mypy git_hotspot_ai/
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
License
MIT License - see LICENSE file for details.
Changelog
0.1.0
- Initial release
- Basic git hotspot analysis
- CLI interface
- AI task dispatch framework
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
git_hotspot_ai-0.8.0.tar.gz
(19.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file git_hotspot_ai-0.8.0.tar.gz.
File metadata
- Download URL: git_hotspot_ai-0.8.0.tar.gz
- Upload date:
- Size: 19.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3a2a5650aa65b5643a17dea459a8050ee61f11362034f303add2d5c723b0f2a0
|
|
| MD5 |
2160bf23dbf05570d6bc6052e321842a
|
|
| BLAKE2b-256 |
75fdf5c14c5872e73629705cc48691e262c649698da3d666d1caba6040fe31c5
|
File details
Details for the file git_hotspot_ai-0.8.0-py3-none-any.whl.
File metadata
- Download URL: git_hotspot_ai-0.8.0-py3-none-any.whl
- Upload date:
- Size: 17.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3708e81a80963e7fcf9443cc85273d844229c387d5d0bd8a71f771103363ad0c
|
|
| MD5 |
6639c4939dc96ac2a35b44255fd1fe82
|
|
| BLAKE2b-256 |
14b7086873e9f0662cc13268aab2c0db038873980e11fb6a978f21b530a866c9
|