A user asked Claude Code to resize two APFS volumes on an external drive and was explicit about the one thing that mattered: don't touch the data. The agent deleted the volume with the data.
What the source says
Reddit post in r/ClaudeCode, "Claude Code deleted my entire 202GB archive after I explicitly said 'do not remove any data'" (627 upvotes, 246 comments as collected).
The setup: a 2TB external NVMe drive on a Mac Studio, partitioned into two APFS volumes — one empty, one holding a 202GB personal archive migrated from an old Mac Mini (projects, documents, screenshots, years of files). The user asked Claude Code to remove the empty volume and let the other expand to fill the freed space, adding explicitly: "do not remove any data."
Per the account, Claude Code ran diskutil apfs deleteVolume against the volume holding the 202GB archive instead of the empty one. The archive was destroyed. The user describes the loss as unrecoverable; no backup or snapshot is mentioned.
What it doesn't establish
This is a first-person, second-hand report with no independent reproduction and no maintainer confirmation on record. There's no command transcript or session log — only the user's paraphrase of what ran — so the exact sequence, whether a confirmation prompt appeared, and what (if anything) the agent's stated reasoning was for picking that volume are all unknown. Whether a backup existed and simply wasn't mentioned, versus genuinely not existing, also isn't established.
Why it's still worth logging
Growing a volume inside a two-volume APFS container means deleting the other volume so the remaining one can claim the freed space — there's no separate "shrink this one, grow that one" primitive. That makes the direction of the delete the entire task. Getting it backwards doesn't fail loudly; it silently executes a destructive operation that looks, to the tool, like exactly what was asked for.
The user's explicit "do not remove any data" is the part worth sitting with. It shows that a plain-language guardrail doesn't automatically constrain which object a destructive command targets — the agent still had to correctly map "empty" versus "has my files" onto two volume identifiers, and if that mapping is wrong, the guardrail never gets a chance to fire.
Full incident record, including severity scoring and frontmatter: https://www.stupidllm.com/incident/STUPID-2026-0135/
Top comments (0)