nonstop is my fix. Two files, no dependencies.
Before you walk away, /nonstop makes Claude do a pre-flight. It thinks through the whole task, asks every question it might have, and you approve or deny anything destructive (rm -rf, force pushes, posting PRs, calling paid APIs). All the "would block me at 3am" stuff gets resolved while you're still at the keyboard.
Then a stop hook keeps it from quitting. If it gets stuck: try to solve it, try to work around it, or mark it blocked and move on to the next thing. No spinning.
There are other tools for this (Ralph is a ~2k line bash orchestrator that wraps the CLI, taskmaster uses completion tokens). nonstop is deliberately minimal. Skill file + shell script. Felt like the right tradeoff for something I want to trust overnight.