Skip to content

ledbetterljoshua/gitclawd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

GitClawd 🦞

A Git client with Claude AI built-in. Think GitKraken meets Claude Code.

GitClawd Screenshot

What is this?

GitClawd is a visual Git client where you can ask Claude questions about your repository. Select a commit, ask "what does this change do?", and get an actual explanation. Browse your commit history, view diffs, and have Claude help you understand complex code changes.

Features

  • Visual commit graph - See your branch history with colored lanes for different branches
  • Claude AI assistant - Ask questions about commits, diffs, branches, and your codebase
  • File tree view - Browse changed files per commit with syntax-highlighted diffs
  • Persistent chat sessions - Conversations are saved per repository
  • Native desktop app - Electron-based, works on macOS, Windows, and Linux

Quick Start

Prerequisites

  • Node.js 20+
  • An Anthropic API key (set as ANTHROPIC_API_KEY environment variable)

Run in Development

# Clone the repo
git clone https://github.com/joshualedbetter/gitclawd.git
cd gitclawd

# Install dependencies
cd web && npm install
cd ../app && npm install

# Start the server (terminal 1)
cd web && node server.js

# Start the app (terminal 2)
cd app && npm run electron

Build for Distribution

cd app
npm run dist:mac    # macOS .dmg
npm run dist:win    # Windows installer
npm run dist:linux  # Linux AppImage

How It Works

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  GitClawd (Electron)                                        β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  Commit     β”‚      Diff Viewer        β”‚    Claude Panel     β”‚
β”‚  Graph      β”‚                         β”‚                     β”‚
β”‚             β”‚  + import { foo }       β”‚  Q: What changed?   β”‚
β”‚  ● commit1  β”‚  - import { bar }       β”‚                     β”‚
β”‚  β”‚          β”‚                         β”‚  A: This commit     β”‚
β”‚  ● commit2  β”‚  function test() {      β”‚  refactors the      β”‚
β”‚  β”‚          β”‚    // ...               β”‚  imports to use...  β”‚
β”‚  ● commit3  β”‚  }                      β”‚                     β”‚
β”‚             β”‚                         β”‚                     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                           β”‚
                           β–Ό
              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚  Express Server + SDK   β”‚
              β”‚  - Git operations       β”‚
              β”‚  - Claude Agent SDK     β”‚
              β”‚  - MCP Tools            β”‚
              β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Claude's Tools

Claude has access to custom MCP tools for interacting with your repository:

Tool Description
GetGitLog Fetch commit history with messages, authors, dates
GetGitStatus Get current branch and working tree status
GetFileDiff Get the diff for any commit or working changes
GetSelectedCommit See which commit you've selected in the UI
GetBranches List all local and remote branches

Plus standard tools: Read, Glob, Grep for exploring your codebase.

Example Questions

  • "What does this commit do?"
  • "Summarize the changes in the last week"
  • "Which files change the most in this repo?"
  • "Explain the difference between main and this branch"
  • "What's the history of changes to auth.js?"
  • "Are there any potential bugs in this diff?"

Project Structure

gitclawd/
β”œβ”€β”€ app/                    # Electron + React frontend
β”‚   β”œβ”€β”€ electron/          # Main process (window, IPC)
β”‚   β”œβ”€β”€ src/               # React components
β”‚   β”‚   β”œβ”€β”€ components/    # UI (CommitGraph, DiffViewer, ClaudePanel)
β”‚   β”‚   └── lib/           # Utilities (chat storage)
β”‚   └── package.json       # Build config + electron-builder
β”œβ”€β”€ web/                   # Backend server
β”‚   └── server.js          # Express API + Claude Agent SDK
β”œβ”€β”€ spikes/                # Early prototypes
└── design/                # Design explorations

Roadmap

  • Visual commit graph
  • Diff viewer with syntax highlighting
  • Claude chat with persistence
  • Write operations (stage, commit)
  • Branch operations (create, switch, merge)
  • GitHub/GitLab PR integration
  • Conflict resolution assistance
  • Smaller binary via Tauri

Why "Clawd"?

Claude + Claw = Clawd. 🦞

License

MIT

Contributing

Issues and PRs welcome!

About

Git client with Claude built-in 🦞

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •