> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flowdeck.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Disk Cleanup

> See where Apple development put your disk space, and reclaim exactly what you choose

Xcode and FlowDeck both leave a lot behind: build output per project, downloaded simulator
runtimes, debug symbols for every OS build you ever connected, worktrees for branches that
merged months ago. None of it announces itself, and most of it is regenerable.

**Tools ▸ Disk Cleanup** (**⇧⌘D**) scans for all of it, shows you what it found, and reclaims
only what you tick.

## The summary

With nothing selected, the window shows one row per category: what it holds, how much of it is
selected and safe to reclaim, and a chevron into the list. There is no select-all on a summary
row on purpose — selecting happens inside a category, where you can see what you are agreeing to.

## What it scans

| Category                         | What it holds                                                                                                   |
| -------------------------------- | --------------------------------------------------------------------------------------------------------------- |
| **Archives & Installers**        | Archives and installers. These cannot be recovered, so each one needs a look.                                   |
| **Developer Downloads & Caches** | Platform downloads and the shared Swift package cache. Re-downloaded when next needed.                          |
| **Device Support Symbols**       | Debug symbols for OS builds you have connected. Needed again only to symbolicate a crash from that exact build. |
| **Documentation Cache**          | Xcode's downloaded documentation. The same documentation stays available.                                       |
| **FlowDeck DerivedData**         | Build output FlowDeck produces per project. Rebuilt on the next build.                                          |
| **FlowDeck Logs**                | Rotated FlowDeck log segments. The current log is never offered.                                                |
| **Sessions & Attachments**       | Chat history and attachments from agent sessions. Only sessions with no worktree left are offered.              |
| **Simulators & Runtimes**        | Unused simulators and superseded runtimes. Deleted immediately, not moved to the Trash.                         |
| **Worktrees**                    | Checkouts whose branch is merged and clean. Removed for good, though the branch itself survives.                |
| **Xcode DerivedData**            | Xcode's per-workspace build output. Only workspaces that no longer exist are offered.                           |

## What gets preselected

Only items that are genuinely regenerable — things a rebuild or a re-download replaces. Anything
that costs you real work is listed and selectable but never ticked for you.

Build output for a project you still have is a good example: it is listed, because reclaiming it
is a legitimate choice, but it is not preselected, because the cost is a full rebuild. Build
output for a project that no longer exists is preselected, because nothing is lost.

## Reclaiming

Two scopes, one confirmation:

* **Reclaim Selected** in the toolbar takes everything ticked, across all categories.
* The broom on a summary row takes just that category's selection.

Both go through the same confirmation sheet, so nothing is ever deleted on a single click, and a
scoped reclaim leaves your selections elsewhere alone.

## Where things go

Almost everything is moved to the **Trash**, so a mistake is recoverable until you empty it.

Two things cannot be, and both are labelled as permanent in the window:

* **Simulators and runtimes** — there is no supported way to move a simulator to the Trash, so
  they are deleted outright.
* **Worktrees** — trashing the folder would leave broken git metadata in the parent repository,
  so FlowDeck removes the worktree properly instead. **The branch always survives.**

## What is never offered

* The worktree you are working in, and any worktree sitting on the repository's base branch.
* Anything with a live agent session or a running build or test on it.
* The current FlowDeck log.
* Sessions whose worktree still exists.

FlowDeck also re-checks every item immediately before acting, and skips anything that changed
since the scan — so a build you started after scanning does not lose its output mid-flight.

<Note>
  Deleting a session already reclaims its own build output for you. That happens automatically
  when the session is deleted; it is not something you have to come here for.
</Note>
