- Goal. Caveman wants meat for food without getting sick.
- Tool. Caveman has wood and fire.
- Desired output. Medium rare mammoth.
- Constraint. Caveman must not hold the meat with his hands while it cooks.
That is a complete prompt. Then you add layers. Optimise: burn a different wood to cook faster, build a bigger flame for more char. Validate: the caveman tastes it, which is a human in the loop. Repeat with a new test: next time, try the bigger flame and taste again.
An agent is no different, with one gap: the agent cannot taste the mammoth. So it checks with what it was trained on (the wall carvings) or with a tool it can run (a thermometer, a colour check). And the final validation of any loop is still the caveman's tongue: a person tastes the last one.