GittonGitton
ブログ一覧に戻る
philosophy

Gittonを作った理由

VSCodeを開かなくても開発ができる時代。Gittonはなぜ「Gitクライアント+ターミナル」という形になったのか、その設計思想を解説します。

Gittonを作った理由

エディタを開かなくなった

2025年、自分の開発スタイルが根本から変わっていることに気づいた。

Claude Code、Cursor CLI、Aider。これらのAIコーディングツールを使い始めてから、VSCodeを開く時間が激減した。コードを書く主役が、いつの間にかエディタからターミナルに移っていたのだ。

考えてみれば当然だ。「この機能を実装して」とAIに伝えれば、AIがコードを書いてくれる。自分がやることは、指示を出すことと、結果を確認すること。エディタで1行1行コードを書く必要がなくなった。

そうなると、開発に本当に必要なものは何かが見えてくる。AIに指示を出すターミナル。変更を確認してコミットするGitクライアント。PRを管理するGitHub連携。この3つが1つのアプリにあれば、エディタを開く必要がなくなる。

それがGittonの出発点だった。

AIが書くからこそ、Gitが重要になる

意外かもしれないが、AI時代にはシンプルなGitクライアントでは足りない。むしろ逆で、高機能なGitクライアントが必要になる。

理由は単純だ。AIは大量のコードを一気に書く。しかも、こちらが意図しない変更を加えることもある。そうなると、変更履歴を細かく追跡したり、特定の状態に戻したり、複数の変更を整理したりする機会が格段に増える。

だからGittonには、Gitの機能をこれでもかと詰め込んだ。

reflogで過去の操作履歴をすべて確認できる。AIが変な変更をしても、どの時点にでも戻れる安心感がある。マージするときはfast-forward、squash、no-ffから選べる。pullするときもmerge、rebase、fast-forward onlyを使い分けられる。コミット履歴はグラフ表示で視覚的に把握でき、任意のコミット間の差分も簡単に確認できる。スタッシュの中身もプレビューできるから、何を退避したか忘れても大丈夫だ。

自分でコードを書いていた頃は、こんなに細かいGit操作は必要なかった。変更内容を把握しているから、シンプルなcommit、push、pullで十分だった。でもAIが書いたコードは、自分が書いたコードほど把握できていない。だからこそ、履歴を遡ったり、変更を比較したり、操作を取り消したりする機能が重要になる。

AI時代のGitクライアントには、むしろ高度なGit機能が求められるのだ。

GitHubだけでいい

Gittonの開発を始めるとき、1つの決断をした。GitLab、Bitbucket、Azure DevOpsのサポートは一切しない。GitHubだけに集中する。

複数のプラットフォームに対応しようとすると、どの機能も中途半端になる。それより、1つのプラットフォームを徹底的に使いこなせるようにしたほうがいい。

実際、ほとんどの開発者はGitHubを使っている。GitHubさえ完璧にサポートしていれば、大多数のユーザーにとって十分なのだ。

その代わり、GitHubの機能は徹底的に作り込んだ。PR一覧をリポジトリ内で確認できる。ファイル差分を見ながらインラインでコメントを追加できる。コミット履歴からAIがPR説明文を自動生成してくれる。AIがコードレビューを実施してGitHubに投稿してくれる。マージも承認も変更リクエストも、すべてアプリ内で完結する。

1つのプラットフォームに集中したからこそ、ここまで作り込めた。

待ち時間をなくす

AIコーディングで最も無駄なのは待ち時間だ。AIに指示を出して、実装を待って、確認して、また次の指示を出す。この直列フローでは、AIの能力を最大限に活かせない。

だからGittonにはWorktree機能を搭載した。

Worktreeを使えば、1つのリポジトリから複数の作業ディレクトリを作成できる。それぞれのディレクトリで別々のAIセッションを起動すれば、3つの機能を同時に開発できる。

1つのAIが作業している間に、別のWorktreeで別のAIに指示を出す。コーヒーを飲みながら進捗を確認していると、3つの機能がほぼ同時に完成している。従来なら90分かかる作業が、30分で終わる。

これがVibe Coding時代の開発スタイルだ。

コードエディタはいらない

GittonにはVSCodeのようなコードエディタ機能はない。代わりに、統合ターミナルがある。

このターミナルでClaude Codeを起動し、AIに指示を出す。AIがコードを書き終わったら、Gittonのステージング画面で差分を確認する。良ければそのままコミットして、PRを作成する。エディタを一度も開くことなく、機能実装が完了する。

もちろん、細かい修正が必要な場合はエディタを開いてもいい。でも、ほとんどの場合は不要だ。「ここを修正して」とAIに言えばいいだけだから。

ファイル差分画面でコードをコピーすると、自動的に行番号が含まれる。src/components/Header.tsx:42-48 という形式でクリップボードにコピーされるので、そのままターミナルに貼り付けてAIに指示を出せる。曖昧な「この行を修正して」ではなく、正確な位置を伝えられる。

必要なものだけを、徹底的に

Gittonの設計思想はシンプルだ。

AIがコードを書く時代、エディタは補助的な存在になった。だからエディタ機能は載せない。でもGit機能は逆に強化する。AIが書いたコードを管理するには、高度なGit操作が必要だからだ。

ターミナルでAIに指示を出し、高機能なGitクライアントで結果を確認してコミットし、GitHub連携でPRを管理する。使わないGitサービスへの対応は切り捨てて、GitHubだけを徹底的にサポートする。Worktreeで並列開発を可能にして、待ち時間をなくす。

必要のない機能を削ぎ落とし、必要な機能を徹底的に磨く。

VSCodeを開かなくても、git管理ができる。AIに指示を出すだけで、高速に開発ができる。それがVibe Codingの時代のGitクライアントだ。

Gitton - The Git Client for Vibe Coding
Integrated terminal for AI coding tools. AI-powered commits, code reviews, and PR management.
/service/gitton

著者

steelydylan
steelydylan

WebデベロッパーでGittonの開発者。GitとAIを愛する開発者のためのツールを作っています。