GitButler

Git, but better. AI ワークフロー向けのモダンな Git GUI / CLI。

1 — 概要

GitButler は、既存の Git リポジトリでそのまま使える「より良い Git」インターフェース。GUI デスクトップアプリと but CLI の両方を持ち、スタックブランチ・並列ブランチ・無制限 Undo・コミットの自在な編集・Forge(GitHub/GitLab)連携・AI 連携を備え、エージェント作業にも向く設計になっている。

GUITauri + Svelte
CLIbut
Stackブランチ
AI連携

既存リポジトリにドロップインで使え、ユーザーとエージェントの両方にとって「より強力で使いやすい Git」を提供する。

2 — 主な機能
機能説明
Stacked Branchesブランチを積み重ねて管理。amend や編集で自動リスタック。
Parallel Branches複数ブランチで同時に作業。ブランチ切り替えの頻度を減らす。
コミット操作uncommit / reword / amend / move / split / squash をドラッグ&ドロップや CLI で。rebase -i 不要。
Undo Timeline操作ログから任意の操作を undo / revert。
コンフリクトリベースは常に成功。コンフリクトはコミット単位でマークし、任意の順で解消。
Forge 連携GitHub / GitLab 認証で PR 作成・更新・ブランチ一覧・CI 状態取得など。
AI 連携コミットメッセージ・ブランチ名・PR 説明の生成、エージェント用フックやスキルの導入。
3 — テックスタック・構成

デスクトップアプリは Tauri(Rust バックエンド + ネイティブウィンドウ)。UI は Svelte + TypeScript。ディスクや Git 操作はすべて Rust。CLI の but は同じ Rust エンジンに Rust 製の CUI を載せたもの。

リポジトリ構成(抜粋)

場所内容
apps/desktopTauri デスクトップアプリ
apps/lite軽量版アプリ
apps/webWeb 版 UI
crates/butbut CLI(Rust CUI)
crates/but-coreコア Git 操作エンジン
crates/but-forge, but-github, but-gitlabForge 連携
crates/but-llm, but-claude, but-cursorAI 連携

ビルド・実行の詳細はリポジトリの DEVELOPMENT.md を参照。Tauri の前提(Rust, Node, 各 OS のシステム依存)を満たした上で、フロントは pnpm、バックエンドは Cargo でビルドする。

4 — 使い方

既存の Git リポジトリを開くだけで利用開始。GUI は Downloads から、CLI は but をインストールして利用する。ドキュメントは docs.gitbutler.com で、機能別・CLI チュートリアルが揃っている。

AI エージェント向け: バージョン管理タスクでは but(gitbutler)スキルの利用が推奨される(AGENTS.md より)。