Skip to content

gitset-cli is AI-powered CLI tool that generates semantic commit messages by analyzing your staged changes. Save time and maintain consistency in your Git workflow with intelligent, context-aware commit suggestions.

License

Notifications You must be signed in to change notification settings

gitset-dev/gitset-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitSet CLI
npm version License: MPL 2.0

GitSet CLI - Command Line Interface Commit Message Generation with AI-Driven Analysis

Overview

GitSet CLI is an integral component of the GitSet.dev ecosystem, designed to enhance Git workflow automation through AI-driven commit message generation. By leveraging Google's Gemini Pro AI technology, it provides intelligent analysis of staged changes to generate contextually appropriate commit messages, supporting both semantic and personalized formatting styles.

Key Capabilities

The GitSet CLI enhances repository management through:

  • AI-Powered Analysis: Utilizes advanced AI processing to analyze staged changes and generate contextually appropriate commit messages
  • Semantic Versioning Support: Implements conventional commit standards for maintaining structured version control
  • Style Adaptation: Analyzes existing commit patterns to match personal or team commit message conventions
  • Efficient Processing: Provides rapid analysis and suggestion generation while maintaining minimal resource utilization
  • Cross-Platform Architecture: Ensures consistent operation across various operating systems and environments

System Requirements

  • Node.js Runtime Environment (Version 18.0.0 or higher)
  • Git (Installed and configured)
  • Active internet connection for AI processing

Installation Process

Install the GitSet CLI globally via npm:

npm install -g @gitset-dev/cli

Implementation Guide

Basic Usage

  1. Stage your modifications:
git add .
  1. Generate commit message suggestions:
# Semantic versioning format (default)
gitset suggest

# Custom formatting style
gitset suggest --mode custom
  1. Implement the generated message:
git commit -m "generated_message"

Operational Modes

Semantic Mode (Default Implementation)

Implements conventional commit standards to generate structured, semantic commit messages. This mode is optimized for maintaining consistent and professional Git history in enterprise environments.

Example output:

$ gitset suggest
✨ Generated Suggestion:
------------------------
feat: Implement JWT authentication system

- Add token generation and validation mechanisms
- Integrate login and registration endpoints
- Configure route protection middleware

Custom Mode

Analyzes existing commit patterns to generate messages that align with established conventions:

  • Evaluates recent commit history (default: 20 commits) for pattern recognition
  • Adapts to existing formatting conventions and structural patterns
  • Maintains sequential naming conventions if detected
  • Preserves emoji usage patterns and placement
  • Replicates capitalization and punctuation styles
  • Balances descriptive content with stylistic consistency

Example of style adaptation:

# Given existing commit pattern:
FEATURE_123: Enhanced login interface 🚀
FEATURE_124: Updated navigation system ✨
FEATURE_125: Resolved routing conflicts 🔧

# Generated suggestion maintains consistency:
FEATURE_126: Implemented user preferences 🎯

Configuration Reference

Command Structure

Primary command:

  • gitset suggest - Initiates commit message generation based on staged changes

Available Parameters

  • --mode <mode> - Specifies generation mode ('semantic' or 'custom')
  • --commit-count <count> - Defines number of commits to analyze (default: 20)
  • --version - Displays CLI version information
  • --help - Provides command usage information

Development Contribution

We welcome contributions to enhance the GitSet CLI. Please follow these steps:

  1. Fork the repository
  2. Create a feature branch:
    git checkout -b feature/enhancement-description
  3. Implement modifications:
    git commit -m 'feat: Add enhancement description'
  4. Push changes:
    git push origin feature/enhancement-description
  5. Submit a Pull Request

License Information

This project operates under the Mozilla Public License 2.0 - refer to LICENSE.md for detailed terms.

Support Channels

Acknowledgments

  • Contributors who have helped improve this tool
  • Commander.js for CLI framework support
  • Google's Gemini Pro for AI capabilities

Part of the GitSet.dev ecosystem - Smart AI Documentation & Version Control for GitHub Repositories.

About

gitset-cli is AI-powered CLI tool that generates semantic commit messages by analyzing your staged changes. Save time and maintain consistency in your Git workflow with intelligent, context-aware commit suggestions.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published