将大模型转化为软件工程智能体,用于修复 GitHub 存储库中的错误和问题。

Ofir Press 21c4d34387 Merge pull request #562 from princeton-nlp/ofirpress-patch-1 4 月之前
.devcontainer 1e065f8c86 Doc: Suggest starting web UI in GH codespaces 5 月之前
.github 6f3c309049 CI: pytest --last-fail and -x support (#559) 4 月之前
assets 8d7a94a0af Docs: Add more READMEs to mkdocs 5 月之前
config e2da9227fc Enh: Use uv for editable install by default (#547) 4 月之前
docker e65a1eca7b Enh: Start from clone of python conda environment for speedup (#548) 4 月之前
docs ec75a5363a [pre-commit.ci] auto fixes from pre-commit.com hooks 4 月之前
evaluation 47da56d942 Issue #446: Fixed calls to open without ctx manager (#469) 4 月之前
inspector 47da56d942 Issue #446: Fixed calls to open without ctx manager (#469) 4 月之前
make_demos 47da56d942 Issue #446: Fixed calls to open without ctx manager (#469) 4 月之前
scripts 70ba97190a Strip trailing whitespace & black formatting 4 月之前
sweagent 4ea4c8784b Make tests for cloning of conda envs more precise (#552) 4 月之前
tests 4ea4c8784b Make tests for cloning of conda envs more precise (#552) 4 月之前
trajectories 9e0a597f5d Doc: Replace symlinks with markdown files with links (#392) 5 月之前
.dockerignore ff35352078 Fix: Include demonstrations in dockerignore (#311) 5 月之前
.git-blame-ignore-revs d3214c337f Dev: Exclude format commits from showing up in git blame 4 月之前
.gitignore ff35352078 Fix: Include demonstrations in dockerignore (#311) 5 月之前
.pre-commit-config.yaml 24fff8a676 chore: update pre-commit hooks (#518) 4 月之前
CHANGELOG.md c7ee3ea539 Doc: Reformat changelog 4 月之前
CODE_OF_CONDUCT.md 22bde4e25b Docs: Add code of conduct (#394) 5 月之前
CONTRIBUTING.md d587f2344d Docs: Move contribution guide to root to help gh discover it 5 月之前
Dockerfile b62510534c Tweaks to use swe-agent web UI from docker (#423) 4 月之前
LICENSE 5b143857cb init 6 月之前
README.md 6bd1d9851f Doc: Remove dead badge 4 月之前
build_deploy.sh 5b143857cb init 6 月之前
codecov.yml 6820e3e007 Add codecov config and badge 6 月之前
environment.yml 72f41b4436 Web feat: Allow to specify python version & req pkgs 5 月之前
mkdocs.yml 0c4f43d3c5 Doc: Include code/data/output files where helpful (#556) 4 月之前
mlc_config.json 6e2aa33ffa MD link checker: Ignore pull links (#510) 4 月之前
pyproject.toml 80eda36726 Docs: Start to add API documentation (#460) 4 月之前
release_dockerhub.sh 70ba97190a Strip trailing whitespace & black formatting 4 月之前
requirements.txt 5c03281360 Remove requests upper bound, add docker-py lower bound (#406) 5 月之前
run.py 1ffc7aadb7 Factor out get_logger; fix access to sweenv log (#558) 4 月之前
run_replay.py 60fb0a4433 Fix: --traj_path is required (#525) 4 月之前
setup.sh 799f07e2bf fix: TARGETARCH not set on some OS/docker setups (#249) 6 月之前
start_web_ui.sh 354f33ca48 Enh: Point to documentation (#526) 4 月之前

README.md

swe-agent.com

Website & Demo  |   Documentation  |   Discord  |   Preprint

SWE-agent turns LMs (e.g. GPT-4) into software engineering agents that can resolve issues in real GitHub repositories.

On SWE-bench, SWE-agent resolves 12.47% of issues, achieving the state-of-the-art performance on the full test set.

We accomplish our results by designing simple LM-centric commands and feedback formats to make it easier for the LM to browse the repository, view, edit and execute code files. We call this an Agent-Computer Interface (ACI). Read more about it in our paper!

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

My Movie 3

You can use SWE-agent either through a web interface (shown above) or through the command line.

🚀 Get started!

👉 Try SWE-agent in your browser: Open in GitHub Codespaces (more information)

Read our documentation to learn more:

💫 Contributions

  • If you'd like to ask questions, learn about upcoming features, and participate in future development, join our Discord community!
  • If you'd like to contribute to the codebase, we welcome issues and pull requests!

Contact person: John Yang and Carlos E. Jimenez (Email: {jy1682, carlosej}@princeton.edu).

📝 Citation

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

@misc{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 Narasimhan and Ofir Press},
      year={2024},
      eprint={2405.15793},
      archivePrefix={arXiv},
      primaryClass={cs.SE}
}

🪪 License

MIT. Check LICENSE.

[![Pytest](https://github.com/princeton-nlp/SWE-agent/actions/workflows/pytest.yaml/badge.svg)](https://github.com/princeton-nlp/SWE-agent/actions/workflows/pytest.yaml) [![Test build containers](https://github.com/princeton-nlp/SWE-agent/actions/workflows/test_build_containers.yaml/badge.svg)](https://github.com/princeton-nlp/SWE-agent/actions/workflows/test_build_containers.yaml) [![Release to dockerhub (nightly)](https://github.com/princeton-nlp/SWE-agent/actions/workflows/release-dockerhub-nightly.yaml/badge.svg)](https://github.com/princeton-nlp/SWE-agent/actions/workflows/release-dockerhub-nightly.yaml) [![Release to dockerhub (release)](https://github.com/princeton-nlp/SWE-agent/actions/workflows/release-dockerhub-release.yaml/badge.svg)](https://github.com/princeton-nlp/SWE-agent/actions/workflows/release-dockerhub-release.yaml) [![build-docs](https://github.com/princeton-nlp/SWE-agent/actions/workflows/build-docs.yaml/badge.svg)](https://github.com/princeton-nlp/SWE-agent/actions/workflows/build-docs.yaml) [![codecov](https://codecov.io/gh/princeton-nlp/SWE-agent/graph/badge.svg?token=18XAVDK365)](https://codecov.io/gh/princeton-nlp/SWE-agent) [![pre-commit.ci status](https://results.pre-commit.ci/badge/github/princeton-nlp/SWE-agent/main.svg)](https://results.pre-commit.ci/latest/github/princeton-nlp/SWE-agent/main) [![Markdown links](https://github.com/princeton-nlp/SWE-agent/actions/workflows/check-links.yaml/badge.svg)](https://github.com/princeton-nlp/SWE-agent/actions/workflows/check-links.yaml)