Wipecraft

AI エージェントが Mac に残したもの

Claude Code、Codex、Cursor、Claude Desktop は、セッション履歴、worktree、VM イメージ、キャッシュをディスクに残します。Wipecraft はそれぞれのサイズと、それが何かを表示し、作業中のものには手を触れず、自動では作り直されないものは 7 日間元に戻せるようにします。

macOS 版をダウンロードスキャンは無料 · macOS 14 以降

作業中のものはそのまま残ります

作業中のものを含む行はロックされます。表示はされますが、選択はできません。

  • Claude Code または Codex の実行中:開いているセッション、過去 24 時間以内に変更したもの、作業中の worktree。
  • Cursor が開いている間の Cursor のキャッシュ。
  • 未コミットの変更がある worktree、過去 7 日以内に変更された worktree、コミットがメインブランチにもリモートにもない worktree。
  • 起動中のシミュレータ。
  • Claude Desktop の使用中のサンドボックスイメージ。

最初は何も選択されていません。「推奨項目を選択」は「削除しても問題なし」と「また増える」にある項目だけを選び、「あなたが判断」にある項目は選びません。

スキャンは読み取りのみです。テストでは、テスト用ホームフォルダ内のすべてのファイルをフルスキャンの前後で比較し、コマンドラインの scan と status の後にも比較しています。

考え直すための 7 日間

どのアプリも作り直さないファイルは、削除すると同じディスク上の隔離に移動されます。各行には残り日数と「復元」ボタンが表示されます。7 日が過ぎると、次に Wipecraft を開いたとき、または毎日の確認が実行されたときに、隔離は自動で空になります。今日すぐに容量が必要な場合は、「今すぐ空にする」で 2 回目の確認の後に解放できます。

隔離を経由しない操作が 3 種類あります。

  • 対応するアプリが自分で作り直すキャッシュ、ログ、一時ファイルは、直接削除されます。復元はできず、確認する前に、行またはカードでそのことが示されます。Wipecraft がこれを行うのは、アプリが作り直すと分かっているフォルダとファイルだけです。作り直す仕組みが分かっていないものは、すべて隔離に移動されます。
  • worktree は Git で削除され、そのブランチはリポジトリに残ります。
  • 一部のツールのコマンドは「取り消し不可」と表示され、Wipecraft はそのコマンドを示したうえで、もう一度確認します。

一部のキャッシュは、ツール自身が元に戻せないため、隔離に残ります。JetBrains と Android Studio のキャッシュ(IDE のローカル履歴も含まれます)、Maven と Go のモジュール、そして Library/Caches 内のツールのデータ(Poetry の環境、Playwright と Cypress のブラウザ、llama.cpp のモデルなど)です。

セッション履歴は削除されません。圧縮されたアーカイブに移動され、復元できます。

何かが増えたら知らせます

モニタリングは、オンにするまでオフのままです。オンのときはメニューバーのアイコンで分かり、Wipecraft は 1 日 1 回、指定した時刻に確認します。次の場合に通知します:

  • 1 つの項目が 7 日間で 2 GB 以上増えたとき
  • ディスクの空き容量が 10% 未満になったとき
  • 1 GB 以上の worktree またはシミュレータが 7 日間使われていないとき
  • 最後の Time Machine バックアップから 7 日を超えたとき

アプリを終了すると、すべて止まります。

自分で決めるルールとフィルタ

クリーンアップのルールは任意です。「設定」>「自動クリーンアップ」で追加するまで、ルールは 1 つもありません。

  • ルールでは、対象のソース、項目が使われていない日数(7~365)、最小サイズを指定します。
  • 毎日の確認の後、ルールに一致する項目は隔離またはアーカイブに移動され、その件数が通知されます。
  • ルールはロック中の行を対象にしません。コマンドを実行することも、worktree を削除することも、取り消せない操作を行うこともありません。直接削除されるキャッシュは予定されたクリーンアップの対象外で、ルールが扱うのは隔離またはアーカイブに移動される項目だけです。
  • ルールはモニタリングがオンのときだけ実行されます。
  • ライセンスがない場合、ルールは何も移動しません。ルールで移動されるはずの項目があった場合、Wipecraft はクリーンアップが実行されなかったことを 1 日 1 回お知らせします。

検出結果のリストはすべて、使われていない期間、ソース、安全性のレベルで絞り込めます。フィルタで非表示になった行は選択からも外れます。

プッシュしていない作業には手を触れません

Git リポジトリが残っている worktree は、そのコミットが別の場所にも存在する場合にだけ削除の対象として表示されます。唯一の例外はリポジトリがなくなった worktree です。最後の項目を参照してください。

  • コミットがメインブランチまたはリモートブランチにある必要があります。ない場合、その行はロックされ、「コミットはまだメインブランチにもリモートにもありません。」という理由が表示されます。
  • 最後のプッシュの後に作成したコミットがあると、ロックされたままです。
  • スカッシュマージではメインブランチに新しいコミットが作られるため、ブランチ自体のコミットはそこに現れません。GitHub でそのブランチのプルリクエストがマージ済みになっている場合、Wipecraft はそのロックだけを解除します。問い合わせはお使いの gh のログインを通じて、gh がインストールされサインイン済みの場合にだけ行われます。「設定」>「プライバシー」でオフにできます。未コミットの変更がある worktree は引き続きロックされます。
  • Wipecraft は worktree を削除する直前にもう一度確認します。コミットがメインブランチにもリモートにもなくなっていた場合や、プルリクエストがマージ済みと表示されなくなっていた場合は、何も削除しません。
  • メインリポジトリが移動または削除された worktree は、Git で確認できません。Wipecraft はこうした worktree を、変更のない状態が 30 日(デフォルト)続いた後にだけ削除対象として提示し、フォルダ全体を隔離に移動します。「復元」で元に戻せます。

worktree を削除するときも .env は残します

git worktree remove はフォルダを削除し、Git が無視するファイル(.env、ローカルデータベース、エディタの設定)も一緒に消えます。Wipecraft はそれらのファイルを先に移動します。

  • worktree を削除する前に、Wipecraft はビルド出力ではない無視対象のファイルを隔離に移動し、7 日間保管します。node_modules や target などのビルド出力は worktree と一緒に削除されます。
  • 確定する前に、隔離に移動するファイルの数が行に表示されます。
  • Git が worktree の削除を拒否した場合、Wipecraft はファイルを元の場所に戻します。
  • 「復元」は、それらのファイルがあったフォルダも作り直します。
  • これらのファイルが単独で削除対象として表示されることはありません。ビルド出力は別の行として表示され、worktree がロック中でも表示されます。

ターミナルからも Claude Code の中からも使えます

コマンドライン。 Wipecraft のアプリには wipecraft コマンドが含まれています。「設定」>「一般」> 「コマンドラインツール」に、これを PATH にリンクするための 1 行が表示されます。

  • wipecraft scan と wipecraft status は解放できるものを一覧表示し、--json を付けるとバージョン付きの JSON を出力します。どちらも何も変更しません。
  • wipecraft clean は何を行うかを表示します。--apply を付けるまで何も変わりません。
  • --apply を付けると、wipecraft clean は指定した各項目に対してアプリと同じ処理を行います。対応するアプリが作り直すキャッシュ、ログ、一時ファイルは直接削除され、復元はできません(計画には「Would remove directly」と表示されます)。それ以外のファイルは隔離に移動し、セッション履歴はアーカイブに移動し、使い終わった worktree は、ビルド出力ではない無視対象のファイルを隔離に移した後、git worktree remove で削除されます。各操作は削除ログに記録されます。--all-safe は隔離に移動する項目だけを選びます。アプリと同じライセンスが必要です。
  • ロック中の行と、スキャン後に変更された行は拒否します。「取り消し不可」と表示される操作は実行せず、アプリを開くよう案内します。
  • wipecraft quarantine list は隔離中のものを表示し、wipecraft quarantine restore <id> はエントリを 1 つ元に戻します。どちらもライセンスは不要です。
  • アプリや別のターミナルがファイルを移動している間は、Wipecraft が処理中であることを伝えるメッセージを出して停止し、何も移動しません。
  • zsh、bash、fish 用の補完スクリプトを出力します。

Claude Code プラグイン。 このプラグインは 2 つのコマンドと 2 つのセッションフックを追加します。

  • /wipecraft:status は wipecraft scan --json の結果を要約します。/wipecraft:tidy はまずドライランを表示し、チャットで「はい」と答えた後にだけ --apply を実行します。
  • セッションの開始時に 1 GB を超える容量を解放できる場合、セッションに 1 行を追加します。この行は前回の更新時に保存したサマリーから表示されるため、セッションがスキャンを待つことはありません。過去 24 時間以内のサマリーがない場合は何も表示せず、バックグラウンドでサマリーを更新します。
  • リンクされた worktree の中でセッションが終了すると、その worktree の状態を 1 行で表示します。
  • 使い終わった worktree の整理はデフォルトでオフです。「設定」>「エージェント」のスイッチで切り替えます。
  • スイッチがオンの場合、セッションの終了後、少し時間をおいてから、そのセッションの worktree だけを対象に wipecraft clean がバックグラウンドで実行されます。コマンドと同じ確認を通り、まだロック中の worktree は残ります。

その他のエージェント(MCP)。 wipecraft mcp は、Claude Code、Codex、Cursor などのエージェントがお使いの Mac 上で起動できるサーバです。通信は標準入出力だけで行い、ソースコードにはネットワーク接続がなく、どのポートでも待ち受けません。

  • エージェントは、合計の確認、項目の一覧表示と説明、隔離中のものの確認ができます。これらのリクエストは何も変更しません。
  • エージェントによるクリーンアップは、「設定」>「エージェント」で「エージェントに MCP 経由のクリーンアップを許可」をオンにするまでオフです。
  • オンの場合、エージェントが適用を求めない限り、リクエストには計画を表示します。適用にはライセンスが必要で、ロック中の行は除外されます。エージェントが指定した各 ID に対して wipecraft clean --apply と同じ処理を行います:対応するアプリが作り直すキャッシュ、ログ、一時ファイルは直接削除され、復元はできません。それ以外のファイルは隔離に移動し、セッション履歴はアーカイブに移動し、使い終わった worktree は Git で削除されます。ツールの説明には復元できない項目が示されるため、エージェントは適用の前にそれを伝えられます。Time Machine のローカルスナップショットの削除など、「取り消し不可」と表示される操作は、引き続き拒否されます。
  • 「設定」>「エージェント」には、Claude Code、Codex、Cursor 用の設定テキストが表示されます。Wipecraft はテキストを表示するだけで、エージェントの設定は変更しません。

見つかるもの

各行には、それが何か、サイズ、削除するとどうなるかが表示されます。元に戻せるものには、その方法も表示されます。

Claude Code、Codex、worktree、以下の開発ツールは、開発者モードがオンのときに表示されます。よくある質問を参照してください。

AI エージェントと AI アプリ

開発ツール

作者の Mac では:Claude Desktop の VM バンドル 11 GB、シミュレータ 62 GB、古い worktree 9 GB。

システムデータ

「システム設定」の「ストレージ」では、システムデータは 1 つの数値で表示されます。Wipecraft はディスクの使用済み容量から始めて、使用中のすべてのバイトを 4 つに分けます:macOS、アプリ、あなたのファイル、システムデータ。4 つを合わせると使用済み容量になります。

システムデータはさらに 5 つのグループに分けられます。各グループには色と、1 文の説明があります。

カードのゴミ箱が削除するのは、安全なものだけです。「削除しても問題なし」と「また増える」にある項目のうち、ロックされていないものです。「あなたが判断」の項目は決して対象にならず、アプリが開いている項目はロックされたままです。カードはまず裏返り、何が起きるか、取り消せるかどうかを示します。

Time Machine のローカルスナップショットは、グループの外に、日付とともに 1 つずつ表示されます。macOS はローカルスナップショットのサイズを報告しないため、Wipecraft はサイズを推測しません。スナップショットの削除は「取り消し不可」と表示され、毎回管理者パスワードを求めます。

これらのフォルダの一部にはフルディスクアクセスが必要です。許可しなくてもユーザフォルダはスキャンされ、集計できなかったフォルダは概要に表示されます。

元に戻す仕組み

行の種類Wipecraft が行うこと元に戻す方法
自動で再生成隔離を経由せず、直接削除します。対応するアプリが作り直すキャッシュ、ログ、一時ファイルだけが対象です。確認する前に、行またはカードでそのことが示されます。復元するものはありません。必要になればアプリが作り直します。取り消せません。
復元可能ファイルを隔離に移動します。7 日以内に「復元」。または、もう一度ダウンロードするか再ビルドします。
セッション履歴(「復元可能」と表示)アーカイブに圧縮してから、元のファイルを削除します。アーカイブを復元します。アーカイブは復元するまで残ります。
worktree(「復元可能」と表示)ビルド出力ではない無視対象のファイル(.env など)を隔離に移動してから、git worktree remove を実行します。フォルダはビルド出力と一緒に、隔離を経由せず直接削除されます。ブランチはリポジトリに残ります。もう一度チェックアウトするには、そのブランチを指定して git worktree add を実行します。残したファイルは「復元」で戻ります。
取り消し不可ツール自身のコマンドを実行します。先にコマンドを示し、もう一度確認します。再び入手する方法は確認画面に表示されます。
ロック中何もしません。戻すものはありません。

ツール自身が元に戻せないキャッシュは、最初の行には含まれません。これらは隔離に移動します:JetBrains と Android Studio のキャッシュ、Maven と Go のモジュール、そして Library/Caches 内のツールのデータ(Poetry の環境、Playwright と Cypress のブラウザ、llama.cpp のモデルなど)です。

取り消し不可の操作は次のとおりです:Time Machine のローカルスナップショットの削除、シミュレータランタイムの削除、シミュレータの内容の消去、Docker のイメージまたはボリュームの削除、Docker のビルドキャッシュの削除。

Wipecraft は、リポジトリがある worktree を、クリーンな場合にだけ削除対象として表示します。クリーンとは、追跡中のファイルに変更がなく、Git が無視しない未追跡のファイルがなく、7 日間変更がなく(デフォルト。「設定」で変更できます)、コミットがメインブランチかリモートにある状態です。メインリポジトリがなくなった worktree は Git で確認できません。こうした worktree は変更のない状態が 30 日(デフォルト)続いた後に削除対象として提示され、フォルダ全体が隔離に移動されます。Git が無視するファイル(ビルド出力、依存関係)も別の行になり、隔離に移動されます。この行は、worktree 自体がロック中でも(たとえば未コミットの変更がある場合でも)表示されることがあります。

隔離では同じディスク上でファイルを移動するため、容量は隔離を空にしたときに戻ります。隔離画面には「隔離中」と「今すぐ空にした場合の解放量」の両方の数値が表示されます。

すべての操作はローカルの削除ログに記録されます:日時、対象、容量、操作の種類。「設定」から CSV として書き出せます。

Wipecraft がしないこと

プライバシーに関する 10 の原則

  1. アカウントは不要です。
  2. アプリにテレメトリも分析機能もありません。
  3. Wipecraft はファイル名やパスをどこにも送信しません。ご自身で接続したコーディングエージェントは、お使いの Mac 上でローカル接続を通じてスキャン結果を受け取ります。受け取ったものをそのエージェントがどう扱うかは、そのエージェントの提供元の扱いによります。
  4. スキャンでは、この Mac 上のサイズ、日付、ツールの状態(git、simctl、Docker)を読み取ります。何もアップロードしません。
  5. アプリがネットワーク通信を行うのは 2 つの目的だけです:ライセンス(アクティベートした場合。Mac の名前をアクティベーションのラベルとして使います)と、アップデートの確認です。任意の確認が 1 つあり、お使いの gh のログインを通じて、gh がインストールされサインイン済みの場合にだけ行われます。「設定」でオフにでき、オフにすると gh は一切実行されません。
  6. クラッシュレポートはデフォルトでオフです。オンにした場合、アプリがクラッシュしたときにだけ、ファイル名やパスを含まずに送信されます(Sentry、EU リージョン)。
  7. モニタリングをオンにしない限り、バックグラウンドでは何も動作しません。オンのときはメニューバーのアイコンで分かります。ほかには Claude Code プラグインをインストールした場合だけで、そのフックがセッションの開始時と終了時に wipecraft を実行します。
  8. 管理者用のヘルパーはインストールしません。管理者パスワードを求めるのはスナップショットを削除するときだけで、毎回求めます。wipecraft コマンドはお使いのユーザ権限で実行され、管理者コマンドは実行しません。
  9. 削除ログはお使いの Mac に残ります。書き出しはご自身で行います。
  10. ライセンスキーはキーチェーンに保存されます。wipecraft コマンドは、ライセンスを確認するためにそこから読み取ります。

詳細:wipecraft.app/privacy/ja

価格

先着 500 名は 買い切り $9.99。その後は $19。

Wipecraft を購入ダウンロードして無料でスキャン

よくある質問

スキャンは本当に無料ですか?

はい。フルスキャン、すべての行とその詳細、モニタリングの通知はライセンスなしで使えます。隔離への移動、アーカイブ、削除にはライセンスが必要です。

Wipecraft が自動で何かを削除することはありますか?

デフォルトではありません。最初は何も選択されておらず、「適用」を選ぶまで何も削除されません。すでに隔離に移動した項目は 7 日後に削除されます。これは Wipecraft を開いたときと毎日の確認のときに行われます。3 つの任意の設定は、オンにすると「適用」を押さなくても項目を移動または削除できます:クリーンアップのルール(「設定」> 「自動クリーンアップ」)、Claude Code セッション後の使い終わった worktree の整理、エージェントが求めたときの MCP 経由のクリーンアップ。3 つともデフォルトでオフで、いずれもアプリと同じ確認を通ります:ロック中の行と、スキャン後に変更された項目は拒否されます。

Claude Code や Codex の実行中はどうなりますか?

開いているセッション、過去 24 時間以内に変更したもの、作業中の worktree はロックされます。Claude Code の場合は、作業中のプロジェクトの最新の月もロックされます。それより古いセッションは選択できます。ツールが実行中かどうかを Wipecraft が判断できない場合、それらの行は次のスキャンまでロックされたままです。

worktree を削除するとコミットが失われることはありますか?

Wipecraft は、リポジトリがある worktree を、クリーンで、7 日間(デフォルト)変更がなく、コミットがメインブランチかリモートにある場合にだけ削除対象として提示します。ブランチ上のコミットはリポジトリに残ります。コミットがどのブランチにもない worktree は削除対象として提示されません。例外は、メインリポジトリが移動または削除された worktree です:Git で確認できないため、Wipecraft は変更のない状態が 30 日(デフォルト)続いた後に削除対象として提示し、フォルダ全体を隔離に移動します。「復元」で元に戻せます。

外部と通信しますか?

2 つの目的で通信します:ライセンス(アクティベートするとき。Mac の名前をアクティベーションのラベルとして使います。起動ごとに 1 回の確認。Mac から解除するとき)と、アップデートの確認です。任意の確認が 1 つあり、お使いの gh のログインを通じて、ブランチのプルリクエストがマージされたかどうかを GitHub に問い合わせます。送信するのはブランチ名とコミット ID で、gh がインストールされサインイン済みの場合にだけ実行され、「設定」でオフにできます。Wipecraft はファイル名、パス、スキャン結果を送信しません。各通信の内容はプライバシーページに記載しています。

Claude Code プラグインやエージェントは何かを送信しますか?

Wipecraft は何も送信しません。プラグインと wipecraft mcp は、お使いの Mac 上のエージェントに結果を渡します。/wipecraft:status はフォルダのパスを含むスキャン結果を Claude に渡し、セッション開始時の行はサイズを含む 1 行を渡します。そのため、Claude の提供元は、そのセッションで表示される内容を受け取ります。MCP で接続するほかのエージェントも同じです。

エージェントがディスクをクリーンアップすることはできますか?

オンにしない限りできません。読み取りは常に許可されています。MCP 経由のクリーンアップは「設定」>「エージェント」でオンにするまでオフで、ライセンスが必要です。適用前に計画を表示し、指定された各 ID に対して wipecraft clean --apply と同じ処理を行います:対応するアプリが作り直すキャッシュ、ログ、一時ファイルは直接削除され、復元はできません。それ以外のファイルは隔離に移動して 7 日間保管し、セッション履歴はアーカイブに移動し、使い終わった worktree は Git で削除されます。「取り消し不可」と表示される操作は拒否されます。Claude Code のセッション後の整理は別のスイッチで、これもデフォルトではオフです。

Codex や worktree が表示されないのはなぜですか?

これらは開発者モードに含まれます。開発者モードでは、コーディングエージェント、worktree、Xcode、シミュレータ、パッケージキャッシュ、Docker が対象に加わります。Wipecraft が ~/.claude フォルダまたは Xcode を見つけた場合はデフォルトでオンです。それ以外の場合は「設定」>「開発者モード」でオンにしてください。次回のスキャンから適用されます。

フルディスクアクセスを求められるのはなぜですか?

macOS では、メールのダウンロード、メッセージの添付ファイル、iOS バックアップなど一部のフォルダは、フルディスクアクセスがないとアプリから読み取れません。許可しなくても構いません。ユーザフォルダは引き続きスキャンされ、集計できなかったフォルダは Wipecraft が表示します。

Mac がオフラインの場合はどうなりますか?

すべて引き続き動作し、何もロックされません。Wipecraft は、次にネットワークに接続した状態で開いたときにライセンスを再確認します。

動作環境を教えてください。

macOS 14 Sonoma 以降、Apple シリコンまたは Intel 搭載の Mac。Wipecraft は Mac App Store ではなく直接販売しています。インターフェイスは英語、簡体中国語、日本語、ドイツ語、フランス語、スペイン語、ポルトガル語(ブラジル)、韓国語、ロシア語、イタリア語、トルコ語に対応し、ライトモードとダークモードで使えます。表示言語は Mac の言語設定に従います。