Direct prompting is asking an agent to do a task.
A loop is the structure around repeated work: what triggers it, what input it uses, what it is allowed to change, how it verifies progress, when it retries, when it stops, and what evidence it leaves behind.
Citadel already had looping workflows. This pass made them more formal and inspectable: loop contracts, status surfaces, bounded /loop runs, templates, shared stop states, verifier budgets, and evidence trails.
The goal is not “prompt the agent harder.”
It’s to make the operating loop clear enough that agents can work inside it without the user manually steering every turn.
Shared below is an article I wrote about going from zero to fleets of agents (which covers a bit on workflows that would contribute to loops) as well as the Citadel OSS repo.
Here’s your monthly reminder that you shouldn’t be prompting coding agents anymore.
You should be designing loops that prompt your agents.