SillyGit

A desktop Git client. It draws your history as a graph, lets you stage a single line, gives you a three-way editor for merge conflicts, and can run Claude Code in the repository you have open.

Free and MIT licensed. Builds for macOS and Windows; Linux from source.

SillyGit showing a commit graph with coloured branch lanes, tags, a branch sidebar and the working changes panel

It runs your Git

Every button runs the git already on your machine, with your config, hooks, credentials and signing keys. SillyGit doesn't ship its own copy. Actions → Activity log lists the exact commands it ran.

You can switch to a terminal at any point. The graph and file list update when the repository changes on disk, and Undo works from Git's reflog, which means it can take back a commit, checkout, merge, rebase or reset even if you ran it in the terminal.

Try a pull request without leaving your branch

Select any commit in the graph, such as the newest commit on a pull request you're reviewing, and choose Run in isolation. SillyGit checks that commit out into a private copy of the repository, installs dependencies when they've changed, and runs your project's command there: npm run dev, ./gradlew bootRun, dotnet run or whatever you've set.

Your branch and your uncommitted changes stay exactly as they were. You don't stash anything or check anything out, and you can keep your own working copy running alongside to compare the two. Files a project needs but never commits, like .env and local.properties, are copied into the private copy for you.

Merge conflicts

Click a conflicted file and you get your side and their side next to each other, with the result underneath. Tick the lines or chunks you want from each side, in either order, and type into the result for anything neither side has.

If a merge leaves a dozen files in conflict, select several and take one side for all of them. There's an undo for that. The same editor handles conflicts from rebases, cherry-picks and stash pops.

The three-way merge tool with the current and incoming sides above the output

Lanes

Git checks out one branch per folder; with lanes you can have several. Each lane is a real branch, and each change in your working copy belongs to one lane.

Say you're halfway through a feature and spot an unrelated bug. Fix it, drag the file into a second lane, and commit each lane to its own branch. Both sets of changes stay in your working copy the whole time, so you can still build and test them together.

The lanes panel with two lanes, each with its own files and commit box

Claude Code in a side panel

The Claude panel runs Claude Code in the repository you have open. By default it asks before it edits a file or runs a command, and shows you the diff or the command first.

Whatever it changes ends up in your working copy like any other edit, so you review and commit it the usual way. It needs Claude Code signed in or an Anthropic API key. Everything else in SillyGit works without one.

The Claude panel asking permission to make an edit, showing the diff

Staging, fixups and absorb

Stage or discard a single line straight from the diff. To fix an older commit, stage the fix, right-click the commit and choose Fix up this commit with staged changes.

If you have fixes for several commits, Absorb works out which unpushed commit last touched each hunk, shows you where each one will go, and folds them in. Both rewrite history, so they're meant for commits you haven't pushed.

A file diff with Stage Hunk and Discard Hunk buttons

Help inside the app

Press F1 or ? for the help centre: 53 short articles, each ending with a worked example. The first time you open a repository there's a quick walkthrough of the window, which you can skip.

The help centre with topics on the left and popular articles

Also in there

How it compares

SillyGit next to the Git clients people usually switch from. Checked against each app's own site and release notes in October 2026. If something here is wrong or out of date, please open an issue.

SillyGitGitKrakenForkGitHub DesktopSourcetreeTower
PriceFreeFree for local and public repos, paid for private$59.99 onceFreeFreeFrom $69 a year
Source codeOpen (MIT)ClosedClosedOpen (MIT)ClosedClosed
macOS and Windows✓✓✓✓✓✓
LinuxBuild it yourself✓––––
Signed installers–✓✓✓✓✓
Updates itself–✓✓✓✓✓
Built withElectronElectronNativeElectronNativeNative
Around sinceOctober 2026YearsYearsYearsYearsYears
Commit graph✓✓✓– (a list)✓✓
Stage single lines✓✓✓✓✓✓
Three-way merge editor✓✓✓– (AI suggestion or your editor)– (external tool)– (pick a side, or an external tool)
Interactive rebase✓✓✓Reorder and squash only✓✓
Undo most operations✓✓–Last commit only–✓
Review pull requestsGitHub, Azure DevOps✓–––✓
Branch from an issue or Jira ticket✓✓––––
AI commit messages✓ (Claude)Paid plans✓✓ (Copilot)–macOS only
Coding agent inside the app✓ (Claude Code)–––––
Several branches in one folder (lanes)✓–––––
Run any commit without checking it out✓–––––

What you give up

  • It's new and it's a one-person project. The first release was in October 2026, so expect bugs and things that change between releases.
  • The builds aren't signed. macOS and Windows both warn you the first time you open it.
  • It doesn't update itself. When a new release comes out you download it again.
  • There's no Linux download. You can build an AppImage from source.
  • It's an Electron app, so it uses more memory and starts slower than Fork, Sourcetree or Tower, which are native. GitKraken and GitHub Desktop are Electron too.
  • The test suite runs on a Mac, so Windows gets less testing.
  • The Claude features need Claude Code signed in or an Anthropic API key, which you pay for separately. Everything else works without one.
  • There's no paid support. Problems go in GitHub issues.

What you get

  • Everything is free, including private repositories, pull request review and Jira. GitKraken needs a paid plan for private repos, Tower is a subscription and Fork is a one-off licence.
  • The source is open, so you can read what it does to your repository or change it.
  • Claude Code runs in a side panel, and asks before it edits files or runs commands.
  • Lanes let you keep several branches checked out in one working copy and commit to each.
  • Run in isolation runs any commit in a private copy, without touching your branch.
  • Undo reads Git's reflog, so it can take back things you did in the terminal too.

Download

This is an early release. The builds aren't signed yet, so your system will warn you the first time you open SillyGit.

macOS

A .dmg for Apple silicon or Intel.

The first time, right-click the app and choose Open.

Download

Windows

A .zip for 64-bit Windows 10 and 11. Unzip it and run SillyGit.exe.

If SmartScreen stops it, click More info, then Run anyway.

Download

Linux

No prebuilt download yet. Run it from a clone, or make an AppImage with npm run dist.

Needs Git and Node.js 22.

Build from source