SWE-agent: Agent-Computer Interfaces Enable Automated Software Engineering
arXiv:2405.15793
Abstract
Language model (LM) agents are increasingly being used to automate complicated tasks in digital environments. Just as humans benefit from powerful software applications, such as integrated development environments, for complex tasks like software engineering, we posit that LM agents represent a new category of end users with their own needs and abilities, and would benefit from specially-built interfaces to the software they use. We investigate how interface design affects the performance of language model agents. As a result of this exploration, we introduce SWE-agent: a system that facilitates LM agents to autonomously use computers to solve software engineering tasks. SWE-agent's custom agent-computer interface (ACI) significantly enhances an agent's ability to create and edit code files, navigate entire repositories, and execute tests and other programs. We evaluate SWE-agent on SWE-bench and HumanEvalFix, achieving state-of-the-art performance on both with a pass@1 rate of 12.5% and 87.7%, respectively, far exceeding the previous state-of-the-art achieved with non-interactive LMs. Finally, we provide insight on how the design of the ACI can impact agents' behavior and performance.
Code, data, and demo available at https://swe-agent.com
Cited by in corpus (6)
- AI Agents vs. Agentic AI: A Conceptual Taxonomy, Applications and Challenges
- What Should We Engineer in Prompts? Training Humans in Requirement-Driven LLM Use
- VLATest: Testing and Evaluating Vision-Language-Action Models for Robotic Manipulation
- ChatDBG: Augmenting Debugging with Large Language Models
- Revolutionizing Newcomers' Onboarding Process in OSS Communities: The Future AI Mentor
- An LLM-based Agentic Framework for Accessible Network Control