Skip to main content

AI-powered changelog generator from git commits

Project description

brose-changelog-cli

An AI-powered changelog generator that creates structured, user-friendly changelogs from your git history.

Features

  • 🤖 AI-powered analysis of git commits
  • 📝 Structured changelog generation
  • 🌐 Web viewer for changelogs
  • 🔍 Smart filtering of relevant changes
  • 🎯 Relevance scoring for changes
  • 🚫 Automatic exclusion of non-essential files

Installation

uv install brose-changelog-cli

Usage

Generate Changelog

Create or update your changelog based on new git commits:

changelog generate

This will:

  • Analyze new commits in your repository
  • Generate structured changelog entries
  • Create/update changelog/changelog.json
  • Generate a formatted CHANGELOG.md

Web Viewer

Launch a web interface to view your changelog:

changelog web

By default, the web viewer runs at http://127.0.0.1:8000. You can customize the host and port:

changelog web --host 0.0.0.0 --port 3000

Configuration

  1. Set up your OpenAI API key:
export OPENAI_API_KEY=your-api-key
  1. Optional: Create a .env file:
OPENAI_API_KEY=your-api-key

How It Works

  1. Commit Analysis: The tool analyzes your git commits, excluding non-essential files like documentation, tests, and configuration files.

  2. AI Processing: Each commit is processed through OpenAI's GPT model to:

    • Categorize changes (Added, Fixed, Changed, Removed)
    • Generate user-friendly descriptions
    • Assign relevance scores (1-10)
  3. Changelog Generation: Changes are organized by:

    • Week
    • Commit
    • Change category
    • Relevance (prioritizing high-impact changes)

Requirements

  • Python ≥ 3.12
  • Git repository
  • OpenAI API key

Optional Dependencies

Web viewer requires additional packages:

  • FastAPI
  • Uvicorn
  • Jinja2
  • Markdown

These are automatically installed when using the [web] extra:

uv install "brose-changelog-cli[web]"

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

brose_changelog_cli-0.1.1.tar.gz (9.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

brose_changelog_cli-0.1.1-py3-none-any.whl (12.6 kB view details)

Uploaded Python 3

File details

Details for the file brose_changelog_cli-0.1.1.tar.gz.

File metadata

  • Download URL: brose_changelog_cli-0.1.1.tar.gz
  • Upload date:
  • Size: 9.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for brose_changelog_cli-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d61c4737aa2971ce2307d772bccb00fd7ccb681c08e25065e32a16131408b966
MD5 9b6d8906ce0ccb37857b4739ac76213c
BLAKE2b-256 306f3179e08fbfb9c5d3e6833f0670d1248e6c6f9f250b90876e1ff3bf43c7b9

See more details on using hashes here.

File details

Details for the file brose_changelog_cli-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for brose_changelog_cli-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 733d56d8f641aca2272106253e2d954f5e717426394f6e8b0c66a1ab6613a601
MD5 ec61358e742ec479d21ebe617ebe05f2
BLAKE2b-256 92aba919c0579edb6930e9c0eaed5c5a42953767fa99ac92ecf7f964b6aa708d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page