30 open-source projects similar to commitizen/cz-cli, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Cz Cli alternative.
This project is a build orchestration engine and development toolkit designed for managing large-scale monorepos. It provides a unified workspace environment that maps project relationships and dependencies, enabling the system to perform intelligent impact analysis and execute only the tasks affected by specific code changes. The system distinguishes itself through a persistent daemon that monitors file changes for near-instant feedback and a content-addressable caching mechanism that stores task outputs to prevent redundant computation across local and remote environments. It further suppor
Opencommit is a command-line tool and automation suite that uses large language models to analyze staged changes and generate descriptive git commit messages. It functions as an AI-driven commit generator that can be integrated directly into the version control lifecycle. The project distinguishes itself through support for both cloud-based AI providers and locally hosted models to ensure data privacy. It provides specialized automation via git hooks for real-time suggestions and GitHub Actions for refining commit messages during continuous integration workflows. The tool includes capabiliti
gitmoji-cli is a command line interface and Git extension used to generate structured commit messages with standardized emojis. It functions as a commit message generator that allows users to visually categorize code changes and track modifications through a predefined library of visual icons. The tool provides an interactive workflow that replaces raw text entry with guided prompts for selecting categories, scopes, and descriptions. It includes a searchable emoji library with keyword-based indexing and local caching to facilitate the selection of accurate visual markers. The project support
Conventional Changelog is a set of tools for automatically generating formatted release notes by parsing Git commit messages that follow a structured specification. It includes a commit message parser to transform raw strings into structured data, a changelog generator for producing release notes, and a commit linter to ensure messages adhere to specific conventions before they are merged. The project provides a system for semantic versioning automation, analyzing commit history to recommend the next version bump based on the types of changes recorded. It supports extensibility through config
This project provides a specification for a structured commit message convention that enables automated semantic versioning and changelog generation. It defines a standard grammar for commit messages to ensure project history is readable by both humans and machines. The specification maps specific commit types and breaking change indicators to version increment logic, allowing tools to automatically determine whether a patch, minor, or major release is required. This standardized format also facilitates the automatic production of human-readable release notes by parsing commit history. The c
Semantic-release is an automated release management tool that determines version increments, generates changelogs, and publishes software packages by analyzing commit history against standardized conventions. It functions as a plugin-based orchestrator that integrates directly into continuous integration pipelines to manage the entire release lifecycle, from verifying environment conditions to distributing artifacts. The project distinguishes itself through its commit-message-driven approach, which enforces consistent versioning standards and automates the creation of release notes based on t
This project is a version control documentation tool designed to automate the generation of release notes and changelogs. It functions as a pipeline-based engine that parses repository history, categorizes commits, and transforms them into structured documentation. By leveraging conventional commit patterns or custom regular expressions, it provides a consistent method for tracking project evolution and managing semantic versioning. What distinguishes this tool is its highly flexible template-driven architecture, which allows for deep customization of output formatting, grouping, and sorting.
git-extras is a collection of command line extensions for Git that provide utilities for managing repositories, analyzing commit history, and automating version control workflows. The suite includes tools for generating automated changelogs from commit history and utilities for identifying and cleaning up merged or stale branches. The project provides a set of analysis tools to quantify project contributions by calculating commit percentages and author metrics. It further includes capabilities for summarizing repository metadata and state to optimize routine inspections. The toolset is imple
git-extras is a collection of command line utilities that extend the functionality of the Git version control system. It provides a suite of shortcuts and additional commands for history manipulation, remote management, repository analysis, and workflow automation. The project distinguishes itself by offering deep integration with hosting providers to manage pull requests and forks, alongside advanced history tools for obliterating sensitive files and rewriting author metadata. It also includes a specialized interactive shell that allows users to execute commands without repeating the binary
This project is a configuration framework and environment manager for the Zsh shell. It functions as a plugin manager and prompt theme engine, automating the installation, organization, and updating of terminal workflow configurations. The framework decouples visual presentation from shell logic using a library of interchangeable themes and a prompt engine that supports asynchronous rendering to maintain interface responsiveness. It employs a plugin-based architecture to inject custom aliases and specialized tools into the shell session. Users can manage shell settings and environment variab
Commander.js is a framework for building command-line interfaces and terminal applications. It functions as an argument parsing library and command lifecycle manager, transforming raw terminal input strings into structured, validated objects for use in executable scripts. The system utilizes a recursive command tree pattern, allowing developers to organize complex execution flows through nested subcommands. It features a declarative interface for defining command-line flags and arguments, which maps user input directly to internal state properties. To assist with usability, the framework auto
Inquirer.js is a command line input framework and prompt library for Node.js applications. It provides a structured set of tools for building interactive terminal interfaces, including menus, checklists, and text inputs, to gather user data and manage complex interactions. The framework allows for the creation of dynamic user experiences through branching prompt logic and the resolution of asynchronous configurations. Users can define custom prompts using a provided API and localize interface text into different languages. The library covers a wide range of input capabilities, including sing
This project provides a comprehensive collection of standardized conventions and architectural patterns designed to maintain consistent code quality, secure workflows, and project stability. It serves as a structured guide for implementing engineering processes, including automated testing, dependency management, and environment configuration across diverse software development lifecycles. The framework distinguishes itself by offering a unified approach to version control and interface design. It enforces linear development practices through standardized commit messages and branch protection
aicommits is a command line tool and AI code summarizer that generates descriptive git commit messages by analyzing staged code changes. It functions as an LLM git commit generator, transforming technical diffs into human-readable summaries based on standardized formats. The project features a multi-provider AI interface that connects to either cloud-based or local artificial intelligence models. Users can customize generation logic through specific language locales, length constraints, and custom prompts to ensure consistent version control documentation. The tool integrates directly into v
Commitlint is a command-line utility designed to lint and validate Git commit messages against established conventions. By parsing commit messages into structured components, it ensures that project history remains consistent, which facilitates automated changelog generation and semantic versioning. The tool distinguishes itself through a schema-driven validation engine that supports custom rule definitions and plugin-based extensions. It enables standardized project governance by allowing teams to distribute and inherit shared configuration rule sets across multiple repositories, ensuring un
This project is a Git commit standardization tool and semantic commit generator. It serves as an assistant to align code changes with semantic versioning by enforcing a consistent commit structure and formatting rules. The utility uses interactive prompts to gather user input, which it then validates against semantic categories and interpolates into predefined templates. This process automates the generation of standardized messages, ensuring that each commit follows a specific format to improve project history and traceability. The system also handles commit metadata structuring, including
This project is a version control style guide providing standardized rules for commit messages, branch naming, and history management. It serves as a comprehensive framework for maintaining a consistent and readable project history through a set of defined guidelines and workflow documentation. The guide emphasizes a linear history branching model, utilizing rebasing and squashing techniques to maintain a straight timeline of commits. It specifies a structured commit layout using imperative language and a kebab-case naming convention for branches to ensure organizational clarity across teams.
Release Drafter is an automation engine designed to manage the software release lifecycle by maintaining draft release notes and calculating version increments. It functions as an event-driven workflow that aggregates merged pull requests, categorizes them into structured documentation, and updates release drafts automatically whenever changes are merged into a target branch. The tool distinguishes itself through highly configurable content management and metadata processing. It uses template-based rendering to format release summaries and applies regular expression transformations to sanitiz
This project is an automated release note tool and markdown history generator that transforms repository activity into structured documentation. It functions as a GitHub API client and CI/CD pipeline component, aggregating tags, issues, and pull requests to produce categorized summaries of project changes. The tool distinguishes itself through native GitHub Enterprise integration, supporting custom API endpoints for self-hosted server instances. It employs a label-based categorization system to group changes into specific sections and utilizes personal access tokens or OAuth to manage API rat
release-it is a Git release automation tool designed to coordinate software versioning, changelog generation, and package publishing. It functions as a semantic versioning manager that increments project versions and updates configuration files based on semantic standards or custom schemes. The project distinguishes itself through a plugin-based extension system that allows for custom versioning and publishing logic. It supports complex project structures via monorepo versioning automation to synchronize internal dependencies across multiple workspaces. The tool covers a broad range of capab
release-it is an automated software release tool used for version bumping, Git tagging, and publishing software packages to registries. It functions as a Git versioning manager and changelog generator, facilitating the transition from code changes to official releases. The tool provides a non-interactive mode for executing release pipelines within continuous integration environments, as well as an interactive command-line workflow for manual configuration. It utilizes a plugin architecture to allow for custom versioning schemes and changelog generators. The system handles semantic versioning
Standard-version is a semantic versioning release automation tool and Git versioning manager. It calculates the next semantic version by parsing commit messages that follow the Conventional Commits specification and automates the process of updating project files and creating signed Git tags. The tool distinguishes itself by generating formatted changelogs automatically from commit history and providing a release process simulation to preview version bumps without modifying files or Git history. It supports pre-release version management for experimental builds and allows for manual version o
This project is a comprehensive technical interview preparation resource and computer science interview guide. It serves as an educational reference for developers to study core software engineering fundamentals and common coding patterns required for employment screenings. The repository provides detailed guides and references covering data structures and algorithms, networking and security, operating systems, and web development. It specifically focuses on the implementation and complexity analysis of sorting, searching, and graph algorithms. The material encompasses a wide breadth of comp
SourceGit is a cross-platform desktop Git GUI client and version control tool compatible with Windows, macOS, and Linux. It provides a graphical user interface for cloning, merging, and analyzing code changes, acting as a visual manager for Git repositories. The application includes an AI-powered commit generator to draft standardized commit messages and a pull request manager to initiate and manage merges across supported hosting services via web APIs. The software covers broad version control capabilities, including advanced operations such as interactive rebasing, cherry-picking, and subm
Aider is a terminal-based AI coding assistant and pair programmer that uses large language models to write, edit, and refactor source code across multiple files and programming languages. It functions as a command line interface for automating programming tasks and managing codebase modifications. The tool distinguishes itself by creating structural maps of entire codebases to provide language models with the necessary context for navigating and modifying large repositories. It further expands input capabilities through a speech-to-text pipeline for voice-driven development and multi-modal in
This project is a collection of configuration files designed to standardize the behavior and appearance of Zsh, Vim, and Tmux across development machines. It provides a unified environment by combining shell settings, editor configurations, and terminal multiplexer layouts. The suite focuses on increasing productivity through Zsh shell customizations and history management, Vim editor optimizations including real-time linting and symbol indexing, and Tmux session management for improved window organization. It also includes a standardized Git workflow configuration with custom aliases and com
Forgecode is an AI agent orchestrator, shell integration tool, and terminal-based pair programmer. It enables the deployment of specialized AI roles for research, planning, and implementation, while providing a semantic code search tool to index project files for meaning-based retrieval. The system integrates as a Model Context Protocol client to extend AI capabilities via external servers and supports multi-provider model orchestration to switch between different large language model APIs. It transforms natural language into functional shell commands and allows for the execution of AI prompt
Changesets is a workflow tool designed for managing semantic versioning and automated changelog generation within monorepos. It functions as a release management system that coordinates the versioning and publishing of multiple interdependent software packages, ensuring that updates remain consistent across a modular project. The tool distinguishes itself by using a change-file-based state tracking system, which captures granular developer intent by storing individual modification descriptions as small files. These files are aggregated during the release process to calculate version increment