Kaleidoscope 5.0 added a view for Git Repositories with capabilities to open many useful git diffs. Since then, we’ve been using the repository feature extensively in our daily work, and we constantly listen to user feedback. Today, we are introducing several major improvements, including a commit history.
Before we get into details, here’s the version introduced in Kaleidoscope 5.0 and the new one, side by side:

Improved Working Copy Changes
The new top section shows the current status of the repository. It immediately answers these questions:
- What is the current branch?
- Are there uncommited changes and how many?
- Are there unstaged and/or staged changes?
- And of course you can immediately open a comparison between the current HEAD and the Working Copy.

If the working copy is clean, you’ll immediately see that as well:

Recent Comparisons
The section showing Recent Comparisons received a small makeover:

- There is a new clear button in the header, allowing you to clear all recents of that repository with one click.
- Changesets for specific commits that you open from within Kaleidoscope are no longer being added to Recents, assuming that you would typically not reopen them later.
- Note that there are also context menu commands for inverting, editing and removing entries, as applicable.
Commit History
Here’s the first major new feature. You can now see a list of recent commits to any branch in your repository, sorted by date, with the latest commit on top. The current working copy branch will be shown by default. You’ll see the most important information about each commit in the row, and for each commit there are two main actions:
- Double-click an entry to immediately show all changes made in that commit (the changeset of that commit).
- Click the more button to see more details about that commit, like the entire formatted commit message.

These and more actions are also available from the context menu.

Toolbar
The Repository view also gained a toolbar. Let’s start from the right side, as the search field is related to the commit history:
Search and Filter Commit History
Using the search field, and by picking one of the two available modes, you can either filter the list of commits, or select commits matching your search in the list. Both options are useful in different scenarios, for example:
- Use Filter mode to see only commits of a certain coworker or from a certain date.
- Use Select mode to see commits adjacent to a certain commit hash you happen to know by selecting that commit in the list.

Open in Finder or Terminal App
The two left items are for opening the working directory in the Finder and your preferred terminal app. BTW, we added support for the recently released Ghostty terminal.
Custom Comparison
In previous versions, this functionality could be found to be on the bottom of the Repository view. For Kaleidoscope 5.3, we moved it into a popover, putting it out of your way while also giving it more space. Note that it can be detached into a window if needed. Tear it off or use the small button in the top right. And, custom comparisons received two additions:

Working Copy Comparisons
Using the new Working Copy option on the right side, you can easily compare any Reference (Branch, Tag, …) or Commit against the current Working Copy. You can even decide between all and only staged changes, if applicable.
Menu Filtering
Some git repositories tend to have lots of tags or branches, making it hard to choose a specific one from a huge menu. Starting with Kaleidoscope 5.3, just start typing in the Reference popup button to interactively filter the list, similar to the function popup in Xcode. There’s even regex support if needed:

Constantly reviewing changes is an important part of any development workflow. All these additions have the goal to make comparing git changes in Kaleidoscope more fun and more productive.
Lookup Git Commit
Knowing about repositories and commits, we added another neat little feature that we find useful: Window > Lookup Git Commit… brings up a small window with a text field.

Enter a unique part of a git commit hash to get information about that git, in a way familiar to any Kaleidoscope user. Also, if you happen to have a commit hash in your clipboard when bringing up that window, no step 2 is needed.
Thanks for reading that far through that post! As always, if you have feedback, ideas, requests, we love hearing from our users! Otherwise stay tuned for what we are up to next 😃