MCPcopy
hub / github.com/SWE-agent/SWE-agent

github.com/SWE-agent/SWE-agent @v1.1.0 sqlite

repository ↗ · DeepWiki ↗ · release v1.1.0 ↗
969 symbols 3,386 edges 115 files 306 documented · 32%
README

swe-agent.com

Documentation  |   Discord  |   Paper

SWE-agent enables your language model of choice (e.g. GPT-4o or Claude Sonnet 3.7) 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 the following projects:

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: johnby@stanford.edu, carlosej@princeton.edu, kl5675@princeton.edu).

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

Core symbols most depended-on inside this repo

get
called by 98
sweagent/agent/action_sampler.py
get_logger
called by 35
sweagent/utils/log.py
run
called by 32
sweagent/api/server.py
replace
called by 23
tools/windowed/lib/windowed_file.py
communicate
called by 21
sweagent/environment/swe_env.py
start
called by 13
sweagent/environment/swe_env.py
from_config
called by 13
sweagent/run/run_batch.py
format
called by 12
sweagent/run/common.py

Shape

Method 522
Function 285
Class 159
Route 3

Languages

Python96%
TypeScript4%

Modules by API surface

sweagent/agent/reviewer.py68 symbols
sweagent/agent/agents.py62 symbols
sweagent/agent/models.py50 symbols
sweagent/run/inspector_cli.py47 symbols
sweagent/agent/hooks/abstract.py31 symbols
sweagent/run/batch_instances.py26 symbols
sweagent/api/hooks.py25 symbols
tools/windowed/lib/windowed_file.py24 symbols
sweagent/tools/tools.py24 symbols
tests/test_agent.py23 symbols
sweagent/agent/history_processors.py22 symbols
sweagent/agent/action_sampler.py22 symbols

Dependencies from manifests, versioned

@testing-library/jest-dom5.17.0 · 1×
@testing-library/react13.4.0 · 1×
@testing-library/user-event13.5.0 · 1×
axios1.6.8 · 1×
bootstrap5.3.3 · 1×
pm25.3.1 · 1×
react18.2.0 · 1×
react-bootstrap2.10.2 · 1×
react-bootstrap-icons1.11.4 · 1×
react-dom18.2.0 · 1×
react-markdown9.0.1 · 1×
react-router-dom6.22.3 · 1×

For agents

$ claude mcp add SWE-agent \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact