Something I tell every builder who asks why their agent keeps drifting:
1. Your agent does not know what the product is supposed to do
2. It only knows what you told it in the last prompt
3. Without a spec, every session starts from scratch
4. With one, the agent has context, constraints, and a target
5. You can now run LaunchChair with an agent on a single feature, not the whole product
6. If the output looks wrong, that is a spec problem, not an agent problem
7. Fix the spec. Then run it again.