SkillAgentSearch skills...

AutoCommit

Automate your Git workflow. Generate AI-powered commit messages, gain repo analytics, and create custom automation rules for issues & PRs

Install / Use

/learn @Alqudimi/AutoCommit
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

AutoCommit - Intelligent Git Automation Platform

<div align="center">

AutoCommit Logo

Revolutionizing Git workflow automation with AI-powered commit message generation and intelligent repository management

License: MIT Python 3.8+ React 18+ Flask 2.3+

Developed by Alqudimi Technology - All rights reserved

</div>

🚀 Overview

AutoCommit is a comprehensive Git automation platform that leverages artificial intelligence to streamline development workflows. Built with modern web technologies, it provides intelligent commit message generation, automated issue management, pull request automation, and comprehensive analytics for development teams.

Key Features

  • 🤖 AI-Powered Commit Messages: Generate meaningful, conventional commit messages using advanced language models
  • 📊 Repository Analytics: Comprehensive insights into development activity, contributor performance, and project health
  • âš„1¤7 Automation Rules: Create custom workflows for issue management, PR reviews, and notifications
  • 🔗 GitHub Integration: Seamless integration with GitHub repositories and workflows
  • 📈 Performance Reports: Automated generation of weekly, monthly, and custom reports
  • 🔔 Smart Notifications: Slack and email notifications for important events
  • 🎨 Modern UI: Responsive, dark-mode enabled interface built with React and Tailwind CSS

📋 Table of Contents

🛠 Installation

Prerequisites

  • Python 3.8 or higher
  • Node.js 16 or higher
  • Git
  • GitHub account with personal access token

Backend Setup

  1. Clone the repository

    git clone https://github.com/Alqudimi/AutoCommit.git
    cd AutoCommit
    
  2. Set up Python virtual environment

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    
  3. Install Python dependencies

    cd backend
    pip install -r requirements.txt
    
  4. Configure environment variables

    cp .env.example .env
    # Edit .env with your configuration
    
  5. Initialize the database

    python -c "from app import create_app; from models import init_db; app = create_app(); init_db(app)"
    

Frontend Setup

  1. Navigate to frontend directory

    cd ../frontend
    
  2. Install Node.js dependencies

    npm install
    # or
    pnpm install
    
  3. Start the development server

    npm run dev
    # or
    pnpm run dev
    

🚀 Quick Start

1. Start the Backend Server

cd backend
python app.py

The API server will start on http://localhost:5000

2. Start the Frontend Development Server

cd frontend
npm run dev

The web application will be available at http://localhost:5173

3. Configure Your First Repository

  1. Open the web application in your browser
  2. Navigate to the "Repositories" section
  3. Click "Add Repository" and enter your GitHub repository URL
  4. Configure automation settings for the repository
  5. Start generating intelligent commit messages!

⚙️ Configuration

Environment Variables

Create a .env file in the backend directory with the following variables:

# Flask Configuration
FLASK_ENV=development
SECRET_KEY=your-secret-key-here

# Database Configuration
DATABASE_URL=sqlite:///autocommit.db

# GitHub Integration
GITHUB_TOKEN=your-github-personal-access-token

# OpenAI Configuration
OPENAI_API_KEY=your-openai-api-key

# Slack Integration (Optional)
SLACK_WEBHOOK_URL=your-slack-webhook-url

# Email Configuration (Optional)
SMTP_SERVER=smtp.gmail.com
SMTP_PORT=587
SMTP_USERNAME=your-email@gmail.com
SMTP_PASSWORD=your-app-password

GitHub Token Setup

  1. Go to GitHub Settings ↄ1¤7 Developer settings ↄ1¤7 Personal access tokens
  2. Generate a new token with the following permissions:
    • repo (Full control of private repositories)
    • read:user (Read user profile data)
    • read:org (Read organization data)

OpenAI API Key

  1. Visit OpenAI API
  2. Create a new API key
  3. Add it to your .env file

📚 API Documentation

Authentication

All API endpoints require authentication using JWT tokens or API keys.

Core Endpoints

Repositories

  • GET /api/repositories - List all repositories
  • POST /api/repositories - Add a new repository
  • GET /api/repositories/{id} - Get repository details
  • PUT /api/repositories/{id} - Update repository settings
  • DELETE /api/repositories/{id} - Remove repository

Commit Generation

  • POST /api/commit/generate - Generate commit messages
  • GET /api/commit/templates - List available templates
  • POST /api/commit/templates - Create custom template

Reports

  • GET /api/reports - List available reports
  • POST /api/reports/generate - Generate new report
  • GET /api/reports/{id}/download - Download report

Automation Rules

  • GET /api/automation/rules - List automation rules
  • POST /api/automation/rules - Create new rule
  • PUT /api/automation/rules/{id} - Update rule
  • DELETE /api/automation/rules/{id} - Delete rule

For detailed API documentation, visit /docs when the server is running.

✄1¤7 Features

Intelligent Commit Message Generation

AutoCommit analyzes your code changes and generates meaningful commit messages following conventional commit standards:

  • Conventional Commits: feat:, fix:, docs:, style:, refactor:, test:, chore:
  • Angular Style: type(scope): description
  • Gitmoji: Emoji-based commit messages
  • Custom Templates: Create your own commit message formats

Repository Management

  • Multi-repository support: Manage multiple GitHub repositories from a single dashboard
  • Automation settings: Configure per-repository automation rules
  • Real-time synchronization: Stay updated with the latest repository changes
  • Branch management: Monitor and manage different branches

Analytics and Reporting

  • Development metrics: Track commits, issues, pull requests, and contributor activity
  • Performance insights: Identify bottlenecks and improvement opportunities
  • Custom reports: Generate reports for specific time periods and metrics
  • Export capabilities: Download reports in PDF, CSV, and JSON formats

Automation Workflows

Create powerful automation rules for:

  • Pull Request Management: Auto-assign reviewers, add labels, request changes
  • Issue Management: Auto-close issues, assign team members, add comments
  • Notifications: Send alerts to Slack, email, or other communication channels
  • Code Quality: Trigger code reviews, run tests, enforce standards

🏗 Architecture

AutoCommit follows a modern microservices architecture:

Backend (Python/Flask)

  • API Layer: RESTful API built with Flask
  • Service Layer: Business logic and integrations
  • Data Layer: SQLAlchemy ORM with SQLite/PostgreSQL
  • Integration Layer: GitHub API, OpenAI API, Slack API

Frontend (React/TypeScript)

  • Component Architecture: Reusable React components
  • State Management: React hooks and context
  • UI Framework: Tailwind CSS with shadcn/ui components
  • Routing: React Router for navigation

Key Technologies

  • Backend: Python, Flask, SQLAlchemy, OpenAI API, GitHub API
  • Frontend: React, TypeScript, Tailwind CSS, Vite
  • Database: SQLite (development), PostgreSQL (production)
  • Authentication: JWT tokens
  • Deployment: Docker, Gunicorn, Nginx

🤝 Contributing

We welcome contributions from the community! Please read our Contributing Guide for details on our code of conduct and the process for submitting pull requests.

Development Setup

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes and add tests
  4. Commit your changes: git commit -m 'feat: add amazing feature'
  5. Push to the branch: git push origin feature/amazing-feature
  6. Open a pull request

Code Style

  • Python: Follow PEP 8 guidelines
  • JavaScript/TypeScript: Use ESLint and Prettier
  • Commit Messages: Follow conventional commit format

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🆘 Support

Documentation

Commercial Support

For enterprise support, custom integrations, and professional services, contact [Alqudimi Technology].


<div align="center">

Made with ❤️ by [Alqudimi Technology]

Empowering developers with intelligent automation

</div>
View on GitHub
GitHub Stars18
CategoryData
Updated5mo ago
Forks0

Languages

JavaScript

Security Score

72/100

Audited on Oct 22, 2025

No findings