Earlier this week I deleted 93GB of OneDrive cache on the basis of a table Claude produced. The table was wrong. The only reason my data survived is that it was already fully synced to the cloud before I ran the commands — not because I'd verified Claude's analysis, and not because I had a recovery plan.
The session had started as something unrelated. I was working on an AudiobookConstructor project when I noticed two OneDrive Group Containers taking up 145GB of disk space:
~/Library/Group Containers/UBF8T346G9.OneDriveStandaloneSuite 52GB
~/Library/Group Containers/UBF8T346G9.OneDriveSyncClientSuite 93GB
I had a dual-install problem — I'd reinstalled OneDrive after it was misbehaving and ended up with OneDrive and OneDrive(2) on the system. I asked Claude to figure out which was active and which was stale. It ran some checks, looked at last-modified dates and CloudStorage mount sizes, and came back with a confident, tabular result labelling one container Active and the other Stale — directly contradicting information I had explicitly provided. I ran the delete command:
rm -rf ~/Library/Group\ Containers/UBF8T346G9.OneDriveSyncClientSuite
93GB gone. Then OneDrive asked me to sign in again — because I'd just deleted its active cache. Claude had the mapping exactly backwards.
Its response when I pushed back: "You're right, and I got it wrong. You told me OneDrive(2) was the new one you'd signed out of — I concluded SyncClientSuite was the signed-out/orphaned install, but it was actually your active one. I should have verified the mapping more carefully before giving you delete commands."
Clear acknowledgement, accurate post-mortem. Completely useless at that point.
The thing that made this dangerous wasn't that Claude made a mistake — models make mistakes, that's expected. What made it dangerous was that Claude expressed no uncertainty. The output wasn't "I think SyncClientSuite is the stale one, but given what you've told me about OneDrive(2), you should verify before deleting." It was a table with an "Active" column and a "Stale" column, and commands to match.
Large language models don't have a reliable internal signal for "I'm guessing here." The confidence in the output reflects fluency, not correctness. Claude can produce a wrong answer in the same assured prose as a right one — and when it's presenting structured output like a table, the formatting itself implies rigour that isn't there. A table with headers feels like a verified comparison. It isn't. It's a model's inference, rendered in a layout that suggests it was checked.
When you're running a text transformation or generating a Sigma rule, being wrong costs you an iteration. When you're running rm -rf against 93GB, being wrong costs you the data.
There's a common framing around agentic AI use: keep a human in the loop. In practice, most people interpret this as "watch what the agent is doing." I was sat in the terminal, I saw Claude's analysis, I read its summary. It felt supervised.
It wasn't. Reading Claude describe its conclusions is not the same as verifying its conclusions. When Claude produced that table, the supervisory value of me reading it was approximately zero — because I hadn't independently checked which container corresponded to which install. Claude had told me what it concluded. I'd accepted the conclusion. That's not a human in the loop; that's a human in the audience.
Real human-in-the-loop for destructive operations means you have independently verified the inputs before approving the action — not just read the model's summary of the inputs. In this case, that would have meant running something like:
ls -la ~/Library/Group\ Containers/UBF8T346G9.OneDriveSyncClientSuite/OneDrive.noindex/OneDrive/ | head -20
And comparing the folder structure against what I knew was in my active OneDrive. That would have taken 30 seconds. Instead I ran a delete command against a 93GB directory based on a table I hadn't verified.
I also had a data point Claude was apparently ignoring: I had explicitly told it that OneDrive(2) was the new install I'd signed out of. Claude's categorisation directly contradicted user-supplied information. That should have been a flag — if the model's inference conflicts with something you stated explicitly, it deserves interrogation before you act on it.