Expand description
Self-evolution: agent evaluates its own runs and proposes improvements.
After each task, the agent can analyze telemetry and identify bottlenecks.
Improvements are stored as tasks in .tasks/ for the next run.
§Evolution loop
Run task → Collect telemetry → Evaluate → Propose improvements →
→ Pick improvement → Patch code → Test → Commit → Rebuild → Restart →
→ Run task (with improvement) → ...Structs§
- Circuit
Breaker - Circuit breaker: stops after N consecutive identical failures.
- Evolution
Entry - One entry in evolution.jsonl — records a single self-improvement attempt.
- Improvement
- A proposed self-improvement.
- Loop
Options - Loop configuration (mirrors solo-dev.sh flags).
- Loop
State - Loop state — tracks progress across iterations.
- RunStats
- Telemetry from a single agent run.
- Session
Pattern - Pattern found across multiple sessions.
Enums§
- Control
Action - Control commands via file. Compatible with solo-dev.sh. Write “stop”, “pause”, or “skip” to the control file.
- Loop
Mode - Solo
Signal - Solo-compatible signals in agent output.
<solo:done/>= stage complete, move to next<solo:redo/>= go back to previous stage (e.g. review found issues)
Functions§
- analyze_
sessions - Analyze recent session logs for recurring issues.
Reads last
max_sessionsJSONL files from agent home dir. - baseline_
score - Get the latest score (baseline for comparison).
- check_
control - Check control file for commands. Reads and deletes (except pause which persists).
- evaluate
- Analyze run stats and propose improvements.
- evolution_
log_ path - Default evolution log path.
- evolution_
prompt - Build a prompt that asks the agent to improve itself.
- evolution_
prompt_ with_ history - Build an evolution prompt that includes session history analysis.
- evolution_
summary - Count how many “keep” vs “discard” in history.
- format_
improvements - Format improvements as a markdown task list for the agent.
- load_
evolution - Load evolution history.
- log_
evolution - Append an entry to evolution.jsonl.
- parse_
signal - Parse solo signals from agent output.
- score
- Efficiency score: 0.0 (terrible) to 1.0 (perfect).
successful_calls / stepsweighted by completion.