tw93/Mole
Macの掃除と監視を、有料アプリを買わずにターミナルで済ませる
- 自社サービス組込み注意 — GPL-3.0 です。組み込んだ側のソース公開が必要になる場合があります。
どういうものか
mo という1つのコマンドの下に、Mac の手入れに要る操作がまとまっている。キャッシュや消したアプリの残骸を消す clean、設定ファイルごとアプリを消す uninstall、ディスクの内訳を対話的にたどる analyze、CPU・メモリ・電力などを実時間で並べる status、node_modules や target のような作り直せる成果物だけを狙って消す purge。有料の掃除アプリやディスク可視化アプリが別々に担ってきた領域を、ターミナルの中に寄せたものと考えると近い。
消す側の道具としては、慎重な作りをしている。削除の前にパスを検証し、共有された場所やシステム所有の場所は保護する。安全だと確認が取れないものは、消さずに飛ばすか拒否すると明記されている。--dry-run を付ければ実際には消さずに結果だけ見られ、消した内容は ~/Library/Logs/mole/operations.log に残る。触ってほしくないものは --whitelist で除外できる。別のアプリがまだ使っている共有データは残す、という判断も入っている。
構造として覚えておきたいのは、無償のCLIと有償のネイティブアプリが別物だということ。CLI は GPL-3.0 で公開されていて、今後も無償だと書かれている。同じ作者が「Mole for Mac」という有償のGUIアプリを別に出しているが、CLI がその機能制限版というわけではない。GUI が欲しいかどうかの違いになる。開発は活発で、2025年9月の公開から62回リリースされ、直近の更新はこの記事を書いた当日。未解決の issue は3件しかない。
どんなときに使うか
ディスクが埋まった理由が分からないとき
「その他」に数十GBが入っているのに、Finder からは追いきれない。mo analyze はターミナルの中でディレクトリを掘り下げていける表示で、どこが重いのかを場所として掴める。消すためというより、まず在り処を知るための道具として先に使える。
アプリを消したのに何かが残っている気がするとき
ゴミ箱に入れただけでは、設定ファイルや起動エージェントが残る。mo uninstall はアプリ本体とあわせてそれらを探して消す。ただし他のアプリが同じデータを使っている場合は残すので、道連れで壊れる心配は小さい。
注意点
ライセンスの警告は、たいていの人には関係ない。 当サイトは GPL-3.0 に対して「自社サービス組込み注意」を自動で出しているが、これは自社の製品に組み込んで配布するときの話で、手元の Mac で実行するだけなら影響しない。なお作者は、フォークして別の製品にするなら違う名前を付けて出典を書いてほしい、と書いている。
管理者パスワードを求められる場面がある。 システム所有のファイルを触るコマンドと、既定の導入先である /usr/local/bin がそれにあたる。~/.local/bin のような自分の領域に入れれば、そのぶんの入力は減らせる。掃除ツールに sudo を渡すこと自体をどう考えるかは、使う人の判断になる。
コードの内訳は、READMEの説明から受ける印象と違う。 README は CLI を Go と説明しているが、GitHub が数えたバイト数では Shell が約366万、Go が約66万で、8割以上がシェルスクリプトになっている。欠点ではないが、中身を自分で読んでから入れたい人は、読む対象が主にシェルスクリプトだと知っておくとよい。