Multi-Agent Coordinated Rename Refactoring
Abhiram Bellur, Mohammed Raihan Ullah, Fraol Batole, Mohit Kansara, Masaharu Morimoto, Kai Ishikawa, Haifeng Chen, Yaroslav Zharov, Timofey Bryksin, Tien N. Nguyen, Hridesh Rajan, Danny Dig
TL;DR
CoRenameAgent tackles coordinated renaming, a prevalent yet challenging refactoring task where a seed rename signals a scope of related identifiers. It introduces a human-in-the-loop, three-agent architecture (Scope Inference Agent, Planned Execution Agent, Replication Agent) plus Episodic Memory to infer scope, plan edits, and propagate changes safely through IDE refactoring APIs. On benchmarks and in-the-wild usage, it achieves substantial gains over prior approaches (e.g., $F1$-score improvements of $2.3\times$ on RENAS and $3.1\times$ on a post-2025 uncontaminated benchmark), while removing human feedback degrades precision by about a factor of $4$, underscoring the value of supervision. The work also introduces Co-renameBench and demonstrates practical impact via merged pull requests in open-source projects, validating the approach for real-world software evolution.
Abstract
The primary value of AI agents in software development lies in their ability to extend the developer's capacity for reasoning and action, not to supplant human involvement. To showcase how to use agents working in tandem with developers, we designed a novel approach for carrying out coordinated renaming. Coordinated renaming, where a single rename refactoring triggers refactorings in multiple, related identifiers, is a frequent yet challenging task. Developers must manually propagate these rename refactorings across numerous files and contexts, a process that is both tedious and highly error-prone. State-of-the-art heuristic-based approaches produce an overwhelming number of false positives, while vanilla Large Language Models (LLMs) provide incomplete suggestions due to their limited context and inability to interact with refactoring tools. This leaves developers with incomplete refactorings or burdens them with filtering too many false positives. Coordinated renaming is exactly the kind of repetitive task that agents can significantly reduce the developers' burden while keeping them in the driver's seat. We designed, implemented, and evaluated the first multi-agent framework that automates coordinated renaming. It operates on a key insight: a developer's initial refactoring is a clue to infer the scope of related refactorings. Our Scope Inference Agent first transforms this clue into an explicit, natural-language Declared Scope. The Planned Execution Agent then uses this as a strict plan to identify program elements that should undergo refactoring and safely executes the changes by invoking the IDE's own trusted refactoring APIs. Finally, the Replication Agent uses it to guide the project-wide search. We first conducted a formative study on the practice of coordinated renaming in 609K commits in 100 open-source projects and surveyed 205 developers ...
