Lastre

See what your disk is carrying.

Your Mac is full of things you never chose — caches, simulators, old libraries, a toolchain from a project that died. Lastre shows you what each one is, where it came from and when you last used it. Then you decide.

Download for macOSbrew install betancur/lastre/lastre

Free and open source. macOS 14+. No account, no admin password, nothing deleted on its own.

19.9 GB free
Downloads · used Aug 2310.3 GB
Simulated iPhones, iPads and Watches · used Aug 9 · 41 of 54 never started30.5 GB
iMovie library · used Aug 810.9 GB
ESP32 toolchain · used May 20 · used by 2 projects12.7 GB
Simulator system cache · no data · protected by macOS28.9 GB
Arduino boards and libraries · no project uses it8.4 GB
53 smaller rows you can act on43.8 GB
App data — shown, never suggested149 GB

Depth is time, thickness is size. Hover a layer — that is the whole app.

10 GB.
A perfectly useless number.

That is what a disk report says about an iMovie library. To turn it into a decision, you had to:

  1. Open Finder
  2. Find ~/Movies
  3. Right-click the library
  4. Show Package Contents
  5. Dig through folders with opaque names
  6. Guess which project those clips belonged to

Six steps to answer a one-second question: what is this, and do I need it? Lastre exists to remove that trip. It shows the clips inside — without opening iMovie — and the date you last opened the library. The number becomes a decision.

Size orders the list. Last use decides.

Any disk tool can tell you what is big. The question is whether you still need it — and that answer lives somewhere different for every kind of thing. Lastre asks the right source for each one.

node_modules
368 MB · inside a project

Repository keyba on main

Last commit June 24, 2026

2 commits not pushed · 1 file changed — they live in the project, not in this folder

From git. The warning nobody else gives.

Simulator runtime: iOS 18.5
8.8 GB · a complete copy of iOS

Your projects' minimum iOS 17.0 (Affirmio, keyba) · 18.2 (Sinfonia)

Can run on iOS 18.5 5 of 6 projects

Devices on it 13, none ever started

From your Xcode projects and simctl.

Buzz_0.4.26.dmg
142 MB · in Downloads

Came from buzz.xyz

Last opened July 26, 2026

If you trash it only by downloading it again

From the file itself. Each download, one by one.

If you know what a node_modules is

You don't need explanations, you need evidence next to the size — and the exact command when the Trash is not the right tool (xcrun simctl runtime delete …, brew cleanup). Lastre shows the command. You run it.

If you've never opened a terminal

Your disk fills with things an AI created for you, and nobody told you what they are. Every row has a human title and one plain sentence: what this is, where it came from, what happens if you trash it. Commands you can paste into Claude and ask.

cloud quota, not space on this Mac

Your disk and your iCloud are two different units.

The word disk in the title is a switch. Click it and the whole screen changes unit: what each folder holds in the cloud, when it was added or changed, and what is inside — level by level, down to the file. A gigabyte freed on one side is not a gigabyte freed on the other, so the two never share a screen.

disk
room on this Mac
iCloud
quota in the cloud

Removing 400 GB from iCloud frees nothing here. That is why the mode says cloud quota, not space on this Mac under the title, and why it never mixes the two.

iCloud is read only

Lastre will not delete from iCloud. Removing a file there takes it off your iPhone and your iPad too, and the Trash on this Mac cannot bring it back — so it shows you everything and leaves the deleting to you, in Finder.

Remove download

On the disk side, the copies iCloud left on this Mac are rows of their own, with the files listed. Removing them frees exactly that space and deletes nothing anywhere: each file comes back the moment you open it. It is the one action more reversible than the Trash.

The tools you never chose.

If you build with an AI assistant, something has been installing things on your Mac for months. Homebrew wrote down what it did — Lastre reads those records and turns one opaque number into a row per tool.

jpeg-turbo
128 MB · a tool in Homebrew

JPEG image codec that accelerates baseline JPEG

Arrived September 20, 2025

You asked for this one — and 20 other tools here need it too

From Homebrew's own install receipts. No brew is ever run.

Asked for, or dragged in

Every tool says which it was, when it arrived and what still depends on it — so removing one cannot quietly break another. What nobody asked for and nothing needs is its own row. The versions Homebrew replaced are one row with the command that clears them, and the 168 libraries something else needs are a single line, because there is nothing to decide there.

Compared to what you know.

Most tools answer how big. The one that matters is do I still need it.

LastreDaisyDiskCleanMyMacOnyXMole
Shows why: last use per kind of thingyes — git, simctl, Spotlight, your projectssize onlysize and agenono
Decides for younevernoyes, Smart Scanpresetsyes, a "safe" tier
Asks for admin passwordnevernoyesyesfor system items
Deletes permanentlynever, Trash onlyyesyesyespartly
Pricefree, MIT$10subscriptionfree$19 app

From each product's own site, August 2026. Tell us if something changed.

What it never does.

Cleaners earn distrust by doing things you didn't ask for. Lastre is built on the opposite bet: it is useful precisely because it is restrained.

Install.

Signed and notarized by Apple. Opens like any app. Updates itself when you say so.

Requires macOS 14 Sonoma or later. On first launch macOS asks once whether Lastre may read Downloads — the only folder it needs permission for.

Download Lastre for macOS

or with Homebrew

brew install betancur/lastre/lastre

Drag to Applications. That's it.

Questions.

Is it safe?

It cannot delete anything permanently, it never runs with elevated privileges, and it never executes commands. The worst it can do is move something to the Trash because you asked it to. The code is public.

Why doesn't it just clean my Mac?

Because the questions that matter — is this project dead? do I still need iOS 17? — depend on context no app can have. A tool that guesses eventually deletes something that mattered. Lastre would rather show you the last commit, the date and a thumbnail, and let you take one second to decide.

What does "no data" mean on a layer?

That nothing on your Mac records when that thing was last used — for example the simulator's system cache. Lastre says so instead of inventing a date. "Never used" and "no project uses it" are different, and it tells them apart.

Why does it show my app data if it won't suggest deleting it?

Because hiding 149 GB would be dishonest. You deserve to know where your disk went, even when the right move is to leave it alone.

What is "remove download"?

iCloud keeps a copy on your Mac of the files you have opened. Removing that copy frees the space and deletes nothing anywhere — the file stays in iCloud and downloads itself again the moment you open it. It is the only action in Lastre that is more reversible than the Trash, and it is the only one offered on the iCloud side of things.

Why won't it delete from iCloud?

Because that is not a local delete. A file removed from iCloud leaves your iPhone and your iPad with it, and the Trash on this Mac cannot bring it back — it lives for about thirty days in "Recently Deleted", in another app. That is a different promise from the one this app makes, so the iCloud mode is read only.

I emptied the Trash and the space didn't come back.

APFS frees space asynchronously, and local Time Machine snapshots can hold the blocks for up to a day. Lastre shows both numbers — what is free now and what macOS can still purge — so the two never look like a bug.