AI Software Engineering Agents and Program Repair
← Back to ProjectsAI Software Engineering Agents and Program Repair
Building autonomous agents and program repair systems that understand, debug, and modify real-world codebases.
Overview
Software engineering is increasingly complex, with modern codebases spanning millions of lines of code across interconnected systems. Our research develops AI agents that can autonomously navigate these codebases, understand program semantics, and perform meaningful engineering tasks such as bug repair, code editing, and crash resolution.
We focus on building agents that work on real-world software, not toy benchmarks, tackling challenges like Linux kernel crash resolution and large-scale repository maintenance.
Key Directions
- Crash Resolution: End-to-end agents that diagnose and patch real kernel crashes, combining LLM reasoning with execution feedback loops.
- Code Editing & Repair: Systems that learn transformation rules and apply context-aware refinements to generate correct patches.
- Agent Evaluation: Empirical studies of how SE agents work in practice, including traceability analysis and benchmarks that measure agent capabilities on realistic tasks.
- Repository-Centric Learning: Training specialized models that deeply understand individual repositories rather than relying on general-purpose LLMs.
Impact
Our kGym platform and CrashFixer agent represent the first end-to-end LLM-based repair loop for real Linux kernel failures. SWE-Spot demonstrates that small, repository-specialized models can outperform much larger general-purpose LLMs on repository-specific tasks. Our empirical study on APR agent traceability provides the first systematic analysis of how repair agents navigate codebases, informing the design of more transparent and effective agents. EditLord learns reusable code transformation rules that generalize across editing tasks, while REFINE shows that context-aware patch refinement significantly improves repair quality. Across these efforts, our work has shaped how the community builds, evaluates, and understands AI agents for software engineering.
ARiSE Lab