It's useful for things where it just needs to get through to completion. Long running tasks. I walk away and expect it to be done without pausing for input.

Can you give an example? And more curious about what you do with the resulting code afterwards I imagine its gonna be a big chunk then?

I feel like "do X untill tests are green" is sort of the prototypical /goal case.

Adding a new lint rule that a lot of code violates.

And that doesn't work with a simple prompt?

It's just a way of defining what "done" means, and passing off evaluation of whether "it's done" is true to a separate context and/or model. If false, it prompts the original context accordingly.