Usage is metered/billed by the token. This suggests a few possible hypotheses for why they might tend to be verbose.
It's not different than when coding by hand, often we take shortcuts by hand that we then have to pay for later. It really just becomes a judgement call on when to stop prompting new features and start service what you have.
I think with AI and vibecoding its tempting to assume the output is good and chase the dopamine hits of more features, more features, more features, but eventually you get stuck.
That being said AI is also a great tool at paying down tech debt. It's great at helping you read a codebase and can be great at making the mechanical changes you want. And I think there is some truth to the story that newer models will be able to pay down debt (fix the slop) of older models. But its all shades of grey, newer models are better than older ones, but can I emit slop with 5.6 faster than 5.7 will be able to fix it in the future? Nobody knows.
It's not like human projects are devoid of bad code, its all tradeoffs and shades of gray. But to be honest I haven't written a line of code by hand in a while.
Clear goal, share context, delegate but verify. Running a team of engineers also inevitably generates pages and pages of material, design spec, code, test, review. Just that we now do that with agents and agents are way less trust worthy
I've known some people who can never stop talking. Maybe they are overly represented in the training set.