Types of training
Each loop evolves a different layer of your agent against its own production traces:- Prompt evolution: a recursive self-improvement loop over what your agent is told and remembers (system prompts, skills, instructions, memory files), never its application logic. Production sessions show what it misses and should have remembered; the loop distills that back into the scaffolding.
- Harness evolution: the same loop with the whole harness on the table: prompts, tools, and code all improve together, opening a PR with the winner.
- LoRA finetuning: train lightweight LoRA adapters on your traces instead of touching the full weights: cheap to run, quick to iterate, and swappable per task type, on top of the supported open base models. See Model Training.
Harness evolution & prompt evolution: two designs
Both loops start from your repo exactly as it is today (the “seed”); each dataset example is one real trace: the transcript of what your agent actually did, plus its outcome. The difference between the two loops is what may be touched: Harness evolution can edit the whole repo, while Prompt evolution is constrained to scaffolding (prompts, skills, memory files, instructions), so it improves what the agent is told and remembers, never its application logic. Each project also picks a design: the algorithm that proposes changes. Loop 2 is the default; Loop 1 (GEPA) is the original design. Pick it in the setup wizard’s approach step, or withbelvedir setup <project> --design loop1|loop2.