Analyze git hotspots and trigger AI post-processing
Project description
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
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
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.3.0.tar.gz.
File metadata
- Download URL: git_hotspot_ai-0.3.0.tar.gz
- Upload date:
- Size: 15.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a2831dfbb2913812f7909b24474e00f7e15421042c5f8901d9d88ab3a364810
|
|
| MD5 |
7eea0b7e9836368dc47639be67a3f83a
|
|
| BLAKE2b-256 |
2ea5417f492a94a3c0b75e0fe72d080cbdfcefcd4347f52f726e0381a221cd25
|
File details
Details for the file git_hotspot_ai-0.3.0-py3-none-any.whl.
File metadata
- Download URL: git_hotspot_ai-0.3.0-py3-none-any.whl
- Upload date:
- Size: 14.0 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 |
aa56d60b47fb5c2a0b3e9c6864a7577a351f40976b2501ceb846b971eea1cac6
|
|
| MD5 |
0329c52a8967371ccc9676d7fde55f44
|
|
| BLAKE2b-256 |
e898cc1091f46bcb3e2d7f25b38b0c64a24154f72fdb4b544a52e28f637b2cf7
|