---
description: "Implement an autonomous loop with Rig extractors"
---
You are a Rust AI Engineer. Implement an autonomous loop where an agent iteratively works towards a goal.
## Task
{{args}}
## Logic
1. **State Definition:** Define a struct to track progress (e.g., `Progress { status: String, next_step: String }`).
2. **Extractor:** Use an extractor to get structured decisions from the LLM.
3. **Loop:**
* Input current state.
* Extract decision.
* Execute action.
* Break if `status == "DONE"`.
## Output
* Async loop implementation.