DEV Community

Cover image for Tower 16 for Mac – Introducing AI Commits ✨
Bruno Brito
Bruno Brito

Posted on • Originally published at git-tower.com

Tower 16 for Mac – Introducing AI Commits ✨

Writing commit messages pulls you out of your flow. You've just finished implementing something, your head is full of context, and now you have to stop and summarize it in a way your future self (and your teammates) will actually understand.

This has been one of the most requested features for Tower, our Git client for Mac, and I'm excited to share that it's finally here: AI Commits can now generate commit messages and descriptions for you, directly from the Working Copy.

Here's a quick tour of what's new in Tower 16.

.

A refreshed Working Copy view

When you open the Working Copy, you'll notice the Commit Composing area has been redesigned with a few handy additions:

  • Expanded Body View — keep the description field visible at all times.
  • Commit Templates — apply a previously saved template to the subject and description fields with one click.
  • Hard Line Wrap — toggle automatic line wrapping for your commit descriptions.

Tower 16 for Mac — New Working Copy View

But the real star is the new button on the right side.

AI Commits in action

Stage your changes, click the new "✨ Generate" button, and Tower will produce a commit message and description in seconds.

Next to the button, there's a dropdown that lets you pick from preset prompts — handy for switching between a quick one-liner and a more detailed, thorough message depending on the situation.

Preset Prompts dropdown

Configuring it your way

A new "AI" tab in Settings gives you full control:

  1. Pick your AI provider — Tower 16 supports Claude Code and Codex.
  2. Create, edit, and delete custom prompts to match your team's conventions.

New

The custom prompt system is where things get really interesting. If your team follows Conventional Commits, uses Gitmoji, or has any other formatting rules, you can encode that directly into a prompt so every generated message fits your style.

Here are a few prompts to get you started:

Quick & Simple

Summarize the following code changes in a single short commit message (under 72 characters). Be direct and describe what changed, not why.

Gitmoji

Write a commit message for the following changes using the gitmoji convention. Start the subject line with the most appropriate gitmoji (e.g. ✨ for a new feature, 🐛 for a bug fix, ♻️ for refactoring, 🎨 for style/structure improvements). Keep the subject under 72 characters.

Conventional Commits

Write a commit message following the Conventional Commits specification. Use the format type(scope): description. Choose the appropriate type (feat, fix, refactor, chore, docs, style, test, perf, ci, build). Include a body paragraph explaining the motivation and what changed if the diff is non-trivial.

Other new features

  • Partial Stash — drag individual files from the Working Copy onto Stashes to create a partial stash, including untracked files.

Improvements and fixes

A selection of the most notable changes in this release:

  • Graphite: Performance with large numbers of branches has been significantly improved.
  • Diff/Merge Tools: Tower now validates the tool configuration before launching and provides better error feedback on failure.
  • History: Fixed a crash that could occur when reloading history; the fully merged badge and history banner now update correctly after fetch.
  • Worktrees: Fixed an issue where worktree repositories could lose their connection to the main repository.
  • Performance: Fixed unnecessary UI updates in repositories with Graphite or worktrees that could cause sluggish performance.
  • Startup: Fixed a crash during app initialization that could prevent users from registering or using Tower.
  • macOS 26: Several fixes, including a sidebar crash in tabbed windows and toolbar separator issues.

Tower 16 is currently in Beta. If you try AI Commits, I'd love to hear which prompts work best for your team — drop a comment below!

Top comments (0)