Tag: git-worktree

Blog Posts

I Made a Lightweight Git Worktree Manager (Because I Couldn't Find One)

I built a git worktree manager because I couldn't find a simple one.

The problem hit me when running multiple AI coding agents at once—one was refactoring accessibility code while I needed to review the current implementation for a bug. Same files, different contexts. I couldn't commit the half-done work, couldn't stash and lose the agent's state, couldn't review without a clean checkout.

Git worktrees solved this, but the syntax was awkward. Branchyard exists and is great if you want VS Code integration and git hooks, but I wanted something I could drop in my dotfiles and understand in 20 minutes.

So I built gwt (git-worktree-utils): • bash, zero dependencies • Source-based, lives in ~/.config • One branch = one directory (keeps the mental model simple) • Built-in cleanup for orphaned directories

Use cases beyond AI agents: • Code review without losing your place • Emergency hotfixes without stashing • Running tests in one branch while coding in another

The pattern works: multiple branches in separate directories beats constant switching. No stashing, IDE state persists, contexts stay separate.

Project: https://github.com/jamesfishwick/git-worktree-utils

猫(Neko)

I've never done proper Mac app development, and I thought I would never have to touch Objective-C. As new wavers Romeo Void said, "Never say never!" So here we are with a proper app icon, a real menu for switching characters, some restored sprites, and significantly DRYer code (or at least I believe so). I didn't actually look up any real Objective-C idioms). This is Neko as it should be on modern macOS—a proper citizen of the desktop, living in your dock, chasing your cursor just like old times.