Locating files and functions requiring modification in large software repositories is challenging due to their scale and structural complexity. Existing LLM-based methods typically treat this as a repository-level retrieval task and rely on multiple auxiliary tools, which often overlook code execution logic and complicate model control. We propose RepoNavigator, an LLM agent equipped with a single execution-aware tool: jumping to the definition of an invoked symbol. This unified design reflects the actual flow of code execution while simplifying tool manipulation. RepoNavigator is trained end-to-end via Reinforcement Learning (RL) directly from a base pretrained model, without relying on closed-source distillation. Experiments demonstrate that RL-trained RepoNavigator achieves state-of-the-art performance, with the 7B model outperforming 14B baselines, the 14B model surpassing 32B competitors, and the 32B model exceeding closed-source models such as GPT-5 on most metrics. These results confirm that integrating a single, structurally grounded tool with RL training provides an efficient and scalable solution for repository-level issue localization.
翻译:由于大型软件仓库的规模和结构复杂性,定位需要修改的文件和函数颇具挑战。现有的基于LLM的方法通常将其视为仓库级检索任务,并依赖多个辅助工具,这些方法往往忽略代码执行逻辑且使模型控制复杂化。我们提出RepoNavigator——一个配备单一执行感知工具的LLM智能体,该工具能跳转到被调用符号的定义处。这种统一设计既能反映代码执行的实际流程,又能简化工具操作。RepoNavigator通过强化学习(RL)直接从基础预训练模型进行端到端训练,不依赖闭源蒸馏。实验表明,经RL训练的RepoNavigator达到了最先进性能:7B模型优于14B基线,14B模型超越32B竞品,而32B模型在多数指标上超过GPT-5等闭源模型。这些结果证实,将单一结构化工具与RL训练相结合,为仓库级问题定位提供了高效且可扩展的解决方案。