Home
Softono
SWE-agent

SWE-agent

Open source MIT Python
19.5K
Stars
2.1K
Forks
25
Issues
110
Watchers
1 week
Last Commit

About SWE-agent

SWE-agent is an autonomous software engineering agent designed to help language models of choice fix issues in real GitHub repositories, perform offensive cybersecurity tasks, or solve competitive coding challenges. Developed by researchers from Princeton and Stanford Universities, it achieves state-of-the-art results on the SWE-bench evaluation among open-source projects. The system grants maximum agency to the language model, allowing it to freely use tools and interact with a codebase to diagnose and resolve problems. It is highly configurable through a single YAML file, fully documented, and built with a hackable architecture specifically for research purposes. While SWE-agent remains a capable tool, the developers recommend Mini-SWE-agent for most use cases due to its simplicity and matching performance. For cybersecurity applications, SWE-agent offers an EnIGMA mode optimized for capture-the-flag challenges, which has demonstrated superior results on relevant benchmarks. The software supports integratio

Platforms

Web Self-hosted

Languages

Python

swe-agent.com

Docs Slack arxiv 2405.15793

mini-swe-agent.com

[!warning] Most of our current development effort is on mini-swe-agent, which has superseded SWE-agent. It matches the performance performance of SWE-agent, while being much simpler. See the FAQ for more details about the differences. Our general recommendation is to use mini-SWE-agent instead of SWE-agent going forward.

SWE-agent enables your language model of choice (e.g. GPT-4o or Claude Sonnet 4) to autonomously use tools to fix issues in real GitHub repositories, find cybersecurity vulnerabilities, or perform any custom task.

  • βœ… State of the art on SWE-bench among open-source projects
  • βœ… Free-flowing & generalizable: Leaves maximal agency to the LM
  • βœ… Configurable & fully documented: Governed by a single yaml file
  • βœ… Made for research: Simple & hackable by design

SWE-agent is built and maintained by researchers from Princeton University and Stanford University.

πŸ“£ News

πŸš€ Get started!

πŸ‘‰ Try SWE-agent in your browser: Open in GitHub Codespaces (more information)

Read our documentation to learn more:

SWE-agent for offensive cybersecurity (EnIGMA)

SWE-agent: EnIGMA is a mode for solving offensive cybersecurity (capture the flag) challenges. EnIGMA achieves state-of-the-art results on multiple cybersecurity benchmarks (see leaderboard). Please use SWE-agent 0.7 while we update EnIGMA for 1.0.

In addition, you might be interested in our other projects:

Mini-SWE-Agent    SWE-ReX    SWE-bench    SWE-smith    sb-cli

Contributions

If you'd like to contribute to the codebase, we welcome issues and pull requests! For larger code changes, we always encourage discussion in issues first.

Citation & contact

SWE-agent is an academic project started at Princeton University by John Yang, Carlos E. Jimenez, Alexander Wettig, Kilian Lieret, Shunyu Yao, Karthik Narasimhan, and Ofir Press. Contact person: John Yang, Carlos E. Jimenez, and Kilian Lieret (Email: [email protected], [email protected], [email protected]).

If you found this work helpful, please consider citing it using the following:

SWE-agent citation
@inproceedings{yang2024sweagent,
  title={{SWE}-agent: Agent-Computer Interfaces Enable Automated Software Engineering},
  author={John Yang and Carlos E Jimenez and Alexander Wettig and Kilian Lieret and Shunyu Yao and Karthik R Narasimhan and Ofir Press},
  booktitle={The Thirty-eighth Annual Conference on Neural Information Processing Systems},
  year={2024},
  url={https://arxiv.org/abs/2405.15793}
}

If you used the summarizer, interactive commands or the offensive cybersecurity capabilities in SWE-agent, please also consider citing:

EnIGMA citation
@misc{abramovich2024enigmaenhancedinteractivegenerative,
      title={EnIGMA: Enhanced Interactive Generative Model Agent for CTF Challenges},
      author={Talor Abramovich and Meet Udeshi and Minghao Shao and Kilian Lieret and Haoran Xi and Kimberly Milner and Sofija Jancheska and John Yang and Carlos E. Jimenez and Farshad Khorrami and Prashanth Krishnamurthy and Brendan Dolan-Gavitt and Muhammad Shafique and Karthik Narasimhan and Ramesh Karri and Ofir Press},
      year={2024},
      eprint={2409.16165},
      archivePrefix={arXiv},
      primaryClass={cs.AI},
      url={https://arxiv.org/abs/2409.16165},
}

πŸͺͺ License

MIT. Check LICENSE.

Pytest build-docs codecov pre-commit.ci status Markdown links