发表机构
Nanjing University of Science and Technology; Nanjing University(南京理工大学; 南京大学)
机构由 AI 辅助整理,请以论文原文为准。AI 中文总结
本综述系统梳理自进化编码智能体领域,明确其与传统智能体的区别,提出分类法,分析该领域的挑战,为设计更优智能系统奠定基础。
AI 中文摘要
大型语言模型正日益作为编码智能体被嵌入软件工程工作流,这类智能体可检查代码仓库、调用工具、执行测试、调试失败项并生成补丁。然而,大多数现有智能体在部署后仍基本保持静态,尽管软件开发是一个动态、反馈丰富的过程,其中代码仓库会演变、依赖关系会变化、测试会失败,且修复尝试会留下可复用的经验。这种张力推动了越来越多关于自进化编码智能体的研究,这类智能体通过从先前的编码交互中更新其框架、记忆、技能、工具、模型或协作结构来改进未来的行为。在本综述中,我们对这一新兴领域进行了系统综合。我们首先定义自进化编码智能体,并将其与传统编码智能体和通用自进化智能体区分开。随后,我们开发了一种以对象为中心的分类法,用于描述这些系统中进化的内容,并补充了两个正交视角:进化发生的时机以及驱动进化的特定软件证据。在文献中,我们发现可执行反馈、代码仓库级上下文和编码轨迹使软件工程成为智能体自进化的天然领域,同时也带来了反馈可靠性、基准过拟合、安全性、可维护性、成本和泛化性方面的新挑战。通过围绕这些维度组织现有工作,本综述旨在明确自进化编码智能体的概念边界,并为设计更具适应性、可靠性和软件感知的智能系统提供基础。我们收集的论文可在该 https URL 找到。
英文摘要
Large language models are increasingly embedded in software engineering workflows as coding agents that can inspect repositories, invoke tools, execute tests, debug failures, and generate patches. Yet most existing coding agents remain largely static after deployment, even though software development is a dynamic, feedback-rich process in which repositories evolve, dependencies change, tests fail, and repair attempts leave reusable experience. This tension has motivated a growing body of work on self-evolving coding agents, where the agent improves its future behavior by persistently updating its framework, memory, skills and tools, components, workflow and topology, or environment and context from prior coding interactions. In this survey, we provide a structured synthesis of this emerging area. We first define the concept of self-evolving coding agents and distinguish it from conventional coding agents and general self-evolving agents. We then develop a taxonomy centered on the targets of evolution, complemented by two orthogonal perspectives: when evolution occurs and which code-specific signals drive it. We further examine the benchmarks used to measure the effect of evolution and related coding products. Across the literature, we find that executable feedback, repository-level context, and coding trajectories make software engineering a natural domain for agent self-evolution, but also introduce challenges in feedback reliability, benchmark overfitting, reversibility, system complexity, safety, cost, and generalization. By organizing existing work around these dimensions, this survey aims to clarify the conceptual boundaries of self-evolving coding agents and provide a foundation for designing more adaptive, reliable, and software-aware agentic systems.