Agentic AI
New Survey Maps How AI Coding Agents Learn and Adapt Over Time
A comprehensive review of self-evolving coding agents reveals how these systems improve their future performance by continuously updating their capabilities from real-world software engineering feedback.
Researchers from the software engineering community have published a structured analysis of an emerging class of AI systems—coding agents that don't just perform tasks, but actively learn and refine themselves as they work. Unlike traditional large language model-based tools deployed in software workflows, these self-evolving agents use the continuous feedback from code repositories, test results, and debugging attempts to enhance their behavior over time.
How Self-Evolving Agents Work#
Contemporary coding agents already handle substantial technical workloads: they navigate codebases, call external tools, run test suites, troubleshoot errors, and produce fixes. The key innovation explored in this survey is that the most advanced systems now persist and apply lessons from each interaction to improve future performance. Agents can refine their internal frameworks, expand their memory and skill sets, sharpen their tools, tune model parameters, restructure their workflows, or adjust their environment and context based on what they encounter.
What Makes Software Engineering Unique#
Software development presents distinctive advantages for agent self-evolution. The domain offers executable feedback—agents can immediately validate whether their repairs work by running tests. It provides rich repository-level context that grows as code changes. And it generates detailed coding trajectories that document decision paths and outcomes. These signals make it natural for agents to learn continuously in this space.
Key Challenges Ahead#
The survey identifies substantial hurdles blocking wider adoption of these systems:
- Feedback reliability: Not all test outcomes or signals accurately reflect success or improvement
- Benchmark overfitting: Systems may optimize for evaluation metrics while losing general capability
- Reversibility: Past changes may be hard to undo if they prove problematic
- System complexity: Adding evolution layers increases architectural fragility and maintenance burden
- Safety and cost: Autonomous adaptation raises deployment risks and computational expenses
- Generalization: Improvements on one codebase may not transfer to new projects or contexts

