Cursorでフォルダ比較ツールを作ってみた

Cursorで開発したフォルダ比較ツールのアイキャッチ画像。追加・削除・更新ファイルの差分を一覧表示できるWindows向けアプリを、AI爆速開発の実験ログとして紹介。ダークテーマのUIで比較結果やCSV出力機能を搭載した experimental release 版。 Cursor開発

今回作ったもの

今回は Cursor を使って、Windows向けのフォルダ比較ツールを作ってみました。

できることはシンプルです。

2つのフォルダを比較して、

  • 追加ファイル
  • 削除ファイル
  • 更新ファイル

を一覧表示します。

例えば、

バックアップ前フォルダ

↓

バックアップ後フォルダ

を比較して、

何が追加されたのか、

何が削除されたのか、

どのファイルが更新されたのかを確認できます。

地味ですが、実務では意外と使う場面が多いツールです。


今回Cursorに入力した内容

今回も細かい設計書は作らず、

かなりざっくり依頼しました。

依頼した内容は、

Windows向けのフォルダ比較ツールを開発してください。

2つのフォルダを比較し、

・追加ファイル
・削除ファイル
・更新ファイル

を一覧表示できるようにしてください。

UIは直感的に操作できるリッチなUIにしてください。

最終成果物はexe形式で利用できるようにしてください。

程度です。

ポモドーロタイマー比較企画でも感じましたが、

Cursorはかなり自律的に補完してくれる印象があります。


実際に使ってみた感想

思った以上に実用的なものが出来上がりました。

比較元フォルダと比較先フォルダを指定して実行すると、

  • 追加
  • 削除
  • 更新

が色分けされて表示されます。

CSV出力もできるので、

比較結果を保存したい場合にも使えそうです。

実際に使う場面を考えると、

  • NASバックアップ確認
  • 写真整理
  • フォルダ同期前の差分確認

などがありそうです。


Cursorは差分検出ロジックまで考えてくれる

今回面白かったのは、

こちらが細かいアルゴリズムを書かなくても、

Cursor側がかなり自律的に差分検出ロジックを組み立ててくれたことです。

例えば、

追加

削除

更新

という概念は伝えましたが、

実際の実装方法までは指定していません。

それでも、

  • ファイル名比較
  • サイズ比較
  • 更新日時比較

などを組み合わせて、

比較ロジックを作っていました。

以前作ったポモドーロタイマーでも感じましたが、

最近のAIは単なるコード補完ではなく、

かなり設計まで踏み込んでいる印象があります。


細かく指示しすぎない方が良いのかもしれない

最近の実験で感じていることです。

以前は、

要件定義書
↓
詳細設計
↓
開発

のように細かく指示した方が良いと思っていました。

しかし実際に試してみると、

ざっくり作らせる
↓
気になるところだけ修正

の方が結果が良いケースが結構あります。

まさに vibe coding です。


開発中に起きたこと

今回も順調には進みませんでした。

比較ロジック自体は問題なく出来上がったのですが、

テストデータ作成で思わぬところにハマりました。

まず、

Pythonが動かない。

と思ったら、

実際には Windows の Microsoft Store版の python ランチャーでした。

python --version

↓

Python

という謎の表示。

本物のPythonは、

py --version

でした。


さらに、

テストデータ生成スクリプトを作ったところ、

今度はコードの貼り付けで文字化け。

SyntaxError

↓

IndentationError

↓

文字化け

というコンボが発生。

結局、

テストデータ生成スクリプトは英語のみで作り直しました。

AI爆速開発のはずが、

気付けば環境周りで時間を使っていました。

この辺りも含めて experimental release です。


テストデータもAIに作らせた

今回面白かったのは、

アプリだけでなく、

比較用のテストデータ生成スクリプトまでAIに作らせたことです。


追記(2026/06/10)

先日の公開まではがーっと勢いでやってしまったのですが、公開後に改めてテストを実施したところ、不具合を確認しました。

テスト内容

比較ツールの動作確認用として、以下の期待結果になるテストデータを作成しました。

(というか、していたようです。。。ここもAI任せで確認をそこまで丁寧にしていませんでした)

追加:3件

削除:1件

更新:2件

実際の結果

ツールで比較を実行したところ、

追加:3件

削除:1件

更新:5件

となりました。

追加・削除については期待通りでしたが、更新ファイルが想定より多く検出されています。

現時点で考えられる原因

今回のツールでは、

  • ファイルサイズ
  • 更新日時

などを利用して更新判定を行っています。

そのため、

テストデータ生成時に意図せず更新日時が変わったファイルや、比較ロジック上で更新扱いとなるファイルが含まれている可能性があります。

詳細な原因は現在調査中です。

今回感じたこと

正直なところ、

テストデータを作った
↓
期待結果も整理した
↓
これで大丈夫だろう

と思っていました。

しかし実際に検証してみると、想定外の結果が出てきました。

AIがコードを書いてくれる時代になっても、

テスト
検証
結果確認

はやはり重要だと改めて感じました。

今後について

この不具合は v0.2 で調査・修正予定です。

Cursor実験室では、完成品だけではなく、

  • バグ
  • 試行錯誤
  • 修正過程

も含めて experimental release として公開していこうと思います。


GitHub Release

最新版はこちらからダウンロードできます。

▼ EXEダウンロード(GitHub Release)

Release v0.1 experimental release ?? scrap-apps/folder-compare
Experimental folder compare tool built with Cursor – Release v0.1 experimental release ?? scrap-apps/folder-compare

今後やりたいこと

今回のバージョンは v0.1 です。

今後は、

  • フォルダツリー表示
  • フィルタ機能
  • 差分検索
  • フォルダ同期機能
  • 大量ファイル対応

なども試してみたいと思っています。

また、

1000ファイル規模のテストデータを作って、

性能面も検証してみたいです。


まとめ

今回も、

まず動くものを作る。

という方針で進めました。

完成度100%を目指すより、

まず動かしてみる。

そして実際に使いながら改善する。

AI開発では、この進め方の方が合っている気がしています。

Cursor実験室では引き続き、

AIと一緒に試行錯誤しながら、

アプリを量産していきます。