DevTools Logo

AI Commit Message Generator

AI Commit Message Generator

Conventional Commits from a unified diff — on-device WebLLM

Git diff

Examples

New exported function

Input
+ export const slugify = (s: string) => s.trim().toLowerCase().replace(/\s+/g, "-")

An added export usually maps to a feat commit.

Typo/property fix

Input
- if (user?.mail) {
+ if (user?.email) {

A small corrected property maps to a fix commit.

Dependency bump

Input
-"react": "19.0.0"
+"react": "19.1.0"

Version bumps map to a chore(deps) commit.

About this tool

Suggest Conventional Commits from a unified diff using on-device WebLLM. Diff never leaves the browser after model load.

How to use

  1. Copy your diff

    Run git diff (or git diff --staged) and copy the unified diff into the input box.

  2. Pick a model

    Quality (1.5B) writes more accurate subjects; Light (0.5B) is faster to download.

  3. Generate

    Get three Conventional Commits suggestions with a type and scope.

  4. Review and edit

    Pick the closest one and adjust the scope — the model cannot know your team's conventions.

Use cases

Conventional Commits discipline

Keep a feat/fix/chore history without stopping to phrase subjects by hand.

Changelog-driven repos

Repos that generate changelogs from commit types get consistent input.

First draft when stuck

Turn a large diff into three candidate messages, then edit instead of starting from blank.

Common mistakes

Mistake:Pasting file contents instead of a unified diff.

Fix:The tool is trained on diff text — feed it git diff output, not whole files.

Mistake:One giant diff mixing unrelated changes.

Fix:Stage related changes per commit; a mixed diff forces a vague subject.

Mistake:Committing the suggestion without reading it.

Fix:A 0.5B-1.5B model can pick the wrong type or scope; review before committing.

Frequently asked questions

References & standards