GitHub

difit(ディフィット)とは?git diffをGitHub風に表示するCLIの使い方

difit(ディフィット)は、コマンド1つでローカルにWebサーバーを立ち上げ、git diffの内容をGitHubの「Files changed」画面のようなUIで表示するオープンソースのCLIツールです。yoshiko-pg氏が開発し、MITライセンスで公開されています。差分への行コメントをAIコーディングエージェント向けのプロンプトとしてコピーできる点が特徴で、Claude Codeなどが書いたコードのレビューと相性が良く、日本の開発者コミュニティで急速に広まりました。この記事では、npx difitによる導入手順、比較モードや主要オプションの使い方、difit-reviewスキルを含むAI連携、そしてGitHubのPRレビューとの使い分けまでを、2026年6月公開のv5.0.4時点の情報で解説します。

目次

まとめ:difit導入の要点とAIコードレビュー時代の位置づけ

difitは「PRを作らずに、ローカルの差分をGitHub風の画面でレビューする」ためのツールです。Node.js 21以上があればnpx difitだけで起動でき、インストール作業も設定ファイルも不要です。コミット・ブランチ・未コミット変更・GitHubのPRを引数だけで切り替えて表示でき、差分の行に付けたコメントは「Copy Prompt」ボタンでファイルパスと行番号付きのテキストになるため、そのままClaude Codeなどへの修正指示に使えます。

導入判断の結論を先に示します。AIが生成した大量の差分をコミット前に確認する用途、PRを立てるほどではないセルフレビューの用途なら、導入して損はありません。試すコストがほぼゼロだからです。一方、コメントがブラウザのlocalStorageにしか保存されない設計のため、レビュー記録をチームで共有・監査する正式なコードレビューの置き換えにはなりません。この線引きを理解した上で、個人のレビュー速度を上げる道具として使うのが実務的な結論です。

difitの概要とgit diffとの違い:ローカルで完結するGitHub風差分ビュー

まずdifitが何をするツールなのか、ターミナルのgit diffコマンドと何が違うのかを整理します。名称変更の経緯と開発の活発さも、採用判断の材料になるため合わせて押さえます。

GitHubのFiles changed画面を再現するローカルWebサーバーの仕組み

difitを実行すると、ローカルにWebサーバーが起動し、ブラウザで差分画面が自動的に開きます。デフォルトポートは4966で、使用中の場合は+1のポートへ自動でフォールバックします。画面はGitHubのPull Requestにある「Files changed」タブとほぼ同じ構成です。追加行が緑、削除行が赤でハイライトされ、分割(split)と統合(unified)の表示モードを切り替えられます。起動時に--modeオプションで指定することもでき、デフォルトはsplitです。

実装はTypeScript製で、フロントエンドにReact、サーバーにExpressを使っています。差分の表示も付けたコメントもすべてローカルで完結し、コードが外部に送信されることはありません。GitHubのトークンや認証も、PR連携機能を使わない限り不要です。機密性の高い受託案件のコードでも、ネットワークに出さずに差分を確認できます。

ReviewItからdifitへの改称経緯とv5.0.4までの更新頻度

difitは2025年6月末に「ReviewIt」という名称で公開されました。公開直後から反響が大きく、その日のうちにGitHub Starが100を超え、3週間で1,000 Starを突破しています。その後、類似の商標を持つ企業からの連絡を受けて、2025年7月に現在のdifitへ改称しました。「diff it」を縮めた名前で、fは1つです。検索時に旧名称のReviewItの記事が混ざるのは、この経緯によるものです。

開発は改称後も継続しており、npmレジストリ上の最新版はv5.0.4(2026年6月29日公開)です。2026年5月にv4系からv5系へメジャーアップデートされ、その後も月に複数回のペースでリリースが続いています。GitHubのStar数は2,500に達しています(2026年7月時点)。個人開発のOSSとしては更新頻度が高く、AIコーディング関連ツールの変化に追従している点は採用時の安心材料になります。

ターミナルのgit diffと比べた差分確認の改善点と動作要件

git diffコマンドの出力はプレーンテキストで、ファイル数が多い差分では全体像の把握に時間がかかります。difitはファイルツリーで変更ファイルを一覧し、シンタックスハイライト付きで各差分を表示するため、「どのファイルがどれだけ変わったか」を一目で確認できます。削除されたファイルやpackage-lock.jsonのような自動生成ファイルは初期状態で折りたたまれ、読むべき差分だけに集中できる設計です。

動作要件はNode.js 21.0.0以上と、Gitリポジトリ内で実行することの2点です。PRレビュー機能を使う場合のみ、GitHub CLI(gh)の認証が追加で必要になります。ファイルごとに「Viewed」のチェックを付けて確認済みを管理できる点も、素のgit diffにはない機能です。

npx difitで始める導入手順と比較モード・主要オプションの使い方

difitの導入は1コマンドで終わります。この章では起動方法、差分の指定方法、運用で使うオプションの順に、実際のコマンド例で説明します。

インストール不要のnpx difit実行とグローバルインストールの選択基準

もっとも手軽な起動方法はnpx difitです。npxがパッケージを一時取得して実行するため、事前のインストールは不要です。引数なしで実行すると、最新コミット(HEAD)の差分を表示するサーバーが起動し、ブラウザが開きます。まず試すだけならこれで足ります。

毎日使うと決めたらnpm install -g difitでグローバルインストールし、difitだけで起動できるようにする方が起動が速くなります。npx実行は毎回パッケージの確認が入るためです。バージョンを固定せず常に最新を試したい場合はnpx difit@latestという指定もできます。この使い分けは頻度で決めれば十分です。

コミット・ブランチ・未コミット差分を切り替える比較モードの指定方法

difitは引数の指定だけで比較対象を切り替えられます。よく使うパターンを表にまとめます。

コマンド 表示される差分
difit 最新コミット(HEAD)
difit . 未コミットの変更すべて
difit staged ステージング済みの変更
difit working 未ステージの変更のみ
difit @ main HEADとmainの比較
difit --pr <PR URL> GitHubのPRの差分

実務でもっとも出番が多いのはdifit .です。コミット前のセルフレビューは、この1コマンドで完了する手軽さです。ブランチ間の比較はdifit feature mainのように2つの引数を並べ、@をHEADのエイリアスとして使えます。–prモードは内部でGitHub CLIのgh pr diffを実行して差分を取得する仕組みで、PR上の未解決レビュースレッドも起動時コメントとして取り込まれる設計です。さらにdiff -u file1.txt file2.txt | difitのように標準入力からunified diffを流し込めるため、Git以外のツールが出力した差分の確認にも流用できます。

ポート指定・未追跡ファイル表示・コンテキスト行数など主要オプション

運用で指定する頻度が高いオプションを挙げます。

オプション 内容
--port 使用ポートの指定
--no-open ブラウザを自動で開かない
--include-untracked 未追跡ファイルも差分に含める
--context 変更前後の表示行数を指定
--mode split・unifiedの表示切替
--clean 既存コメントを消して開始
--comment 起動時にコメントをJSONで注入

注意が要るのはSSH先のサーバーで使う場面です。difitはブラウザを開く前提のツールなので、リモート環境では--no-open--hostを指定し、手元のブラウザからアクセスする形にします。新規作成したファイルはGitの追跡外にあると差分に出ないため、AIエージェントがファイルを新規追加した直後の確認では--include-untrackedの指定を忘れないようにします。

Claude Codeと連携するAIコードレビューの流れとdifit-reviewスキル

difitが他のdiffビューアと分かれるのは、AIコーディングエージェントとの連携を最初から設計に組み込んでいる点です。人間からAIへ、AIから人間へ、双方向の連携方法を説明します。

Copy PromptボタンでレビューコメントをAIへの修正指示に変換する手順

差分の行にカーソルを合わせると「Add a comment」ボタンが現れ、行単位または範囲選択でコメントを付けられます。確定したコメントには「Copy Prompt」ボタンが付き、押すとsrc/components/Button.tsx:L42のようにファイルパスと行番号を先頭に付けた形式でクリップボードへ入る仕組みです。これをClaude Codeのプロンプト欄に貼るだけで、対象ファイル・行・修正内容がそろった指示になります。

コメントが複数あるときは、画面上部の「Copy All Prompt」で全コメントを区切り線付きの1テキストにまとめてコピーできます。範囲を選択してコメントした場合はsrc/components/Button.tsx:L42-L48のように行範囲付きでコピーされる形式です。コメントはコミット単位でブラウザのlocalStorageに保存されるため、一度タブを閉じても同じコミットのレビューを再開すれば前回の内容が残っています。

Agent Skills導入によるdifit・difit-reviewスキルの役割分担

difitはAIエージェント向けのAgent Skillsを公式に提供しています。npx skills add yoshiko-pg/difitを実行すると、difitとdifit-reviewの2つのスキルがエージェントに追加されます。前者は「コード変更後にユーザーへレビューを依頼するためにdifitを立ち上げる」スキル、後者は「エージェント自身が差分やPRをレビューし、指摘や解説をコメントとして事前投入した状態でdifitを起動する」スキルです。

difit-reviewの土台は、–commentオプションのJSON注入機能です。エージェントが差分と周辺コードを調査し、変更意図の解説や問題の指摘を各行に付けた状態で画面が開くため、人間は「AIによる一次レビュー済みの差分」から確認を始められます。Claude Codeではスラッシュコマンドの/difit-reviewとして呼び出せます。指摘の質はエージェントの調査に依存するものの、レビューの初動を省ける効果は大きい機能です。

Claude Codeの実装完了後にdifitを自動起動させる運用例

開発者コミュニティで広まっている運用が、個人のカスタム指示に「実装完了したらコミット後、difitスキルでレビュー画面を立ち上げる」と書いておく方法です。作者のyoshiko-pg氏自身がこの運用を公開しており、AIの実装が終わるたびにレビュー画面が自動で開き、人間がコメントを付けてタブを閉じるとコメントがエージェントに渡って修正が続く、というループが回ります。AIからコードレビューを依頼される体験に近い形です。

この確認工程を挟む価値は、AIの出力量が増えるほど上がります。Claude Codeのレビュー機能そのものの仕組みはClaude Code「Code Review」のマルチエージェント構造の解説で扱っており、エージェント側のレビューとdifitでの人間の確認を組み合わせる際の参考になる内容です。Claude Code本体の更新状況はClaude Code 2.1.7のアップデート解説で確認できます。

GitHubのPRレビューとの使い分けとdifitを採用すべきでない場面

便利なツールですが、既存のレビュー体制を置き換えるものではありません。どこまでをdifitに任せ、どこからをGitHubに残すか。判断基準を条件付きで示します。

PR前セルフレビュー・AI差分確認に向く場面とlocalStorage保存の限界

difitが向くのは、レビュー結果を記録として残す必要がない場面です。具体的には、PRを出す前のセルフレビュー、AIが生成した差分のコミット前チェック、PRにするほどでもない実験的な変更の確認が該当します。プッシュせずにGitHub品質の差分画面が手に入るため、「確認のためだけにPRを作る」無駄がなくなります。

制約はデータの置き場所です。コメントもViewedのチェック状態もブラウザのlocalStorageに保存されるため、他のメンバーのブラウザからは見えず、マシンを変えれば消えます。レビューの証跡が残らないという性質は、承認フローや監査が要る開発体制では明確な欠点です。この点は割り切って、difitのコメントは「AIに渡すための一時的な作業メモ」と捉えるのが正しい使い方です。

チームの正式レビューにdifitを採用すべきでない条件と代替手段

次の条件に1つでも当てはまるなら、正式なコードレビューはGitHubのPRレビューに残すべきです。第一に、誰がいつ何を承認したかの記録が必要な場合。第二に、複数人が同じ差分にコメントを重ねる議論が発生する場合。第三に、CIの結果とレビューを紐づけてマージ条件にしている場合です。実務で最初に引っかかるのは1つ目の記録要件です。difitにはこれらを代替する機能がなく、無理に寄せるとレビュー履歴が個人のブラウザに散逸します。

実務では「difitで個人の確認を済ませてからPRを出し、チームのレビューはGitHubで行う」という直列の分担が扱いやすい形です。両者は競合ではなく、レビューの前工程と本工程の関係にあります。ローカル確認の速さと、PRレビューの記録性を両取りする構成です。

受託開発のAIコード品質管理でdifitが果たす役割と導入判断基準

AIコーディングを本格導入した開発現場では、生成されるコード量に対して人間の確認が追いつかない問題が先に来ます。difitのようなローカルレビューツールは、その確認速度を上げる道具として位置づけられます。導入判断は「AIの差分をコミット前に目視する運用があるか」だけで決めて構いません。運用があるなら試すコストはnpx1回分、なければ先に確認の運用そのものを作る必要があります。

確認の運用設計まで含めたAI開発体制の構築は、ツール導入だけでは完結しない領域です。生成AIを組み込んだ開発の進め方や品質管理を外部に相談したい場合は、一創のAI開発サービスで機械学習・生成AIを含む開発支援を行っています。自社のレビュー体制にAIをどう組み込むかという段階の相談にも対応できます。

difitの使い方に関するよくある質問

difitの導入を検討する際によく挙がる質問と回答をまとめます。

difitとは何ですか?git diffコマンドとの違いは?

difitは、ローカルのGit差分をGitHubの「Files changed」風のUIでブラウザ表示するCLIツールです。git diffコマンドがターミナルにプレーンテキストを出力するのに対し、difitはシンタックスハイライト・ファイルツリー・行コメント・確認済みチェックを備えた画面で差分を確認できます。表示だけでなく、コメントをAIコーディングエージェント向けのプロンプトとしてコピーする機能を持つ点が大きな違いです。

difitはインストールしなくても使えますか?

使えます。Node.js 21.0.0以上が入っていれば、Gitリポジトリ内でnpx difitを実行するだけで起動します。事前のインストールも設定ファイルも不要です。利用頻度が高くなったらnpm install -g difitでグローバルインストールすると、毎回のパッケージ確認が省けて起動が速くなります。MITライセンスのOSSなので、利用自体に費用はかかりません。

difitのレビューコメントはチームで共有できますか?

共有できません。コメントとViewedのチェック状態は、コミット単位でブラウザのlocalStorageに保存される仕組みで、外部への送信は行われない設計です。同じコミットを同じブラウザで開き直せば前回のコメントは残っていますが、他のメンバーには見えません。チームで記録を共有するレビューはGitHubのPRレビューで行い、difitは個人のセルフレビューとAIへの指示出しに使う分担が現実的です。

Claude Codeからdifitを起動するにはどうすればよいですか?

npx skills add yoshiko-pg/difitで公式のAgent Skillsを追加すると、Claude Codeからdifitスキルとdifit-reviewスキルを呼び出せるようになります。difit-reviewはスラッシュコマンドの/difit-reviewで実行でき、エージェントが差分を調査してコメントを事前投入した状態でレビュー画面が開く仕組みです。カスタム指示に「実装完了後にdifitでレビュー画面を立ち上げる」と書いておけば、自動起動の運用もできます。

difitの利用は無料ですか?商用プロジェクトでも使えますか?

無料です。difitはMITライセンスで公開されているオープンソースソフトウェアのため、商用プロジェクトでの利用にも制限はありません。差分の表示とコメントの保存はすべてローカルで完結し、コードが外部サーバーに送られることもないため、秘密保持契約のある受託案件のコードにも使えます。ただしOSSである以上、サポート窓口は存在しない点は理解しておく必要があります。

関連記事

資料請求

RELATED POSTS 関連記事