SWE-agent
v1.1.0 open-sourcepython run.py --repo_path /path/to/local/repo --config config/default.yaml python run.py --issue_url https://github.com/owner/repo/issues/42 --environment_setup ./setup_env.sh
Summary
SWE-agent is an open-source command-line agent that connects a language model of your choice, such as GPT-4o or Claude Sonnet 4, to a set of tools so it can autonomously fix issues in real GitHub repositories, find cybersecurity vulnerabilities, or work through custom coding tasks. It is aimed at researchers and software engineers who want a configurable, hackable agent rather than a packaged product, with behavior governed by a single YAML file and support for any litellm-compatible model. The project itself, in its README, now points users toward its own successor, mini-SWE-agent, describing it as simpler while matching SWE-agent's performance. Built by researchers at Princeton and Stanford, SWE-agent has drawn 107 contributors and stayed active over the past year, though its most recent release was over a year ago.
What SWE-agent answers
Should I build on SWE-agent or start with mini-SWE-agent instead?
the project's own README now recommends mini-SWE-agent for new work, saying it matches SWE-agent's performance with a much simpler codebase, so SWE-agent is best suited to those needing its existing tool-bundle ecosystem or research on the original architecture
Can I run large batches of tasks without managing my own infrastructure?
parallel execution runs through an integration that can dispatch runs to cloud backends like Modal or AWS as well as local runtimes, and a retry mechanism can run multiple models or configurations side by side and keep the best result
Is this still being actively developed?
it drew 99 commits and stayed active over the past year, but the most recent release was over a year ago and the maintainers now direct most development effort to the successor project
What models can I point this at?
any litellm-compatible model, with built-in integrations already covering GPT-4o, Claude Sonnet, DeepSeek Coder, and Groq-hosted models
How do I debug or review what the agent actually did during a run?
a terminal-based trajectory inspector lets you scroll through recorded runs, and a quick-stats tool gives at-a-glance numbers without opening individual trajectory files
Examples
Command line
No option matches that search.
| option | found in | since | description |
|---|
No option matches that search.
Values are placeholders taken from each option’s declared default. Nothing is executed here — the output shown is a recording of a run that already happened.
Release history
- v1.1.0
SWE-agent v1.1.0 adds multilingual/multimodal benchmark support, a quick-stats tool, and configurable max_output_tokens.
└──▷ GET THIS VERSION$ git clone --branch v1.1.0 https://github.com/SWE-agent/SWE-agent.git # already have the repo? check out this version: $ git checkout v1.1.0
- ›Adds multilingual evaluation support for SWE-bench multilingual datasets.
- ›Adds SWE-smith and multimodal base support for generating and consuming large-scale training trajectories.
- ›New
quick-statstool for at-a-glance run statistics. - ›Supports configuring/overriding
max_output_tokensper run. - ›Enables overriding tool directories via config or CLI.
+2 moreshow less
- ›Enables overriding the path to the SWE-bench dataset.
- ›Allows disabling python-standalone for batch runs.
└──▷ BREAKING ON UPGRADE- !The
messagesfield in trajectory data format is replaced byquery— any tooling that reads trajectory files by field name will break. - !Many tool bundles that used the windowed file viewer (including
defaults) have been renamed — configs referencing the old bundle names will break. - !The
review_on_submittool bundle has been removed and replaced byreview_on_submit_m— configs referencingreview_on_submitwill break. - !The
windowedtools (formerlydefault) no longer append\nto new files — agents or scripts relying on that behaviour will see different output.
- v1.0.1
SWE-agent 1.0.1 adds configurable timeouts for startup commands, max_input_tokens override for local models, and switches to anthropic_filemap as the default config.
└──▷ GET THIS VERSION$ git clone --branch v1.0.1 https://github.com/SWE-agent/SWE-agent.git # already have the repo? check out this version: $ git checkout v1.0.1
- ›Adds timeout support for
post_startup_commandsto prevent hangs during agent initialization. - ›Enables overriding
max_input_tokensfor local models, giving practitioners control over context window limits. - ›Switches the default config to
anthropic_filemap, changing out-of-the-box behavior for new runs.
└──▷ BREAKING ON UPGRADE- !
anthropic_filemapis now the default config, replacing the previous default — existing setups that relied on the old default config will behave differently without explicit configuration.
- ›Adds timeout support for
- v1.0.0
SWE-agent 1.0 brings massively parallel cloud execution, configurable retries, flexible tool bundles, and a redesigned CLI.
└──▷ GET THIS VERSION$ git clone --branch v1.0.0 https://github.com/SWE-agent/SWE-agent.git # already have the repo? check out this version: $ git checkout v1.0.0
- ›Adds massively parallel code execution via SWE-ReX integration, enabling fast local runs with cloud backends (Modal, AWS, or any SWE-ReX-compatible runtime).
- ›New configurable retry mechanism lets you run multiple agent configurations, models, and parameters in parallel and select the best result.
- ›Introduces flexible tool bundles for composable, user-defined tool definitions.
- ›Expands language model support to all litellm-compatible models.
- ›Adds per-run configuration overrides directly from the command line, covering any config option.
+2 moreshow less
- ›New CLI trajectory inspector lets practitioners scroll through hundreds of recorded agent trajectories from the terminal.
- ›Redesigned CLI with dedicated subcommands for single-issue runs, batch runs, and utility operations.
- v0.7.0
SWE-agent v0.7.0 adds CTF/offensive-security mode, Interactive Agent Tools (gdb), Summarizers, and expands LLM support to Claude 3.5, DeepSeek, GPT-4o-mini, and Groq.
└──▷ GET THIS VERSION$ git clone --branch v0.7.0 https://github.com/SWE-agent/SWE-agent.git # already have the repo? check out this version: $ git checkout v0.7.0
- ›New CTF challenge mode (EnIGMA) achieves 3.3x improvement over previous agents on the NYU CTF benchmark, enabling offensive cybersecurity use cases.
- ›Adds Interactive Agent Tools (IAT), including
gdbintegration, letting the agent interact with long-running processes during task execution. - ›Adds Summarizers to handle long command outputs, preventing context window exhaustion on verbose tool responses.
- ›New
filemapcommand provides a repo-map-style overview of a codebase's file structure. - ›New config for human-eval-style challenges expands benchmark coverage beyond SWE-bench.
+3 moreshow less
- ›Adds Claude 3.5 Sonnet, GPT-4o-mini, DeepSeek Coder, and Groq model integrations.
- ›Makes agent command timeout configurable.
- ›Adds configurable log level and a new TRACE level for deeper debugging.
- v0.6.1
SWE-agent v0.6.1 adds configurable
LONG_TIMEOUT, log timestamps, and automatic log writes to the trajectory directory.└──▷ GET THIS VERSION$ git clone --branch v0.6.1 https://github.com/SWE-agent/SWE-agent.git # already have the repo? check out this version: $ git checkout v0.6.1
- ›Adds configuration option to enable timestamps in log output.
- ›Adds
LONG_TIMEOUTconfiguration option for SWEEnv to control the long-operation timeout threshold. - ›Always writes the run log to the trajectory directory automatically.
- ›Shows active commands in the output when a timeout error is encountered, aiding diagnosis.
└──▷ BREAKING ON UPGRADE- !The sparse clone method is renamed from 'sparse' to 'shallow'; any configuration or scripts referencing the old name must be updated.
- v0.6.0
SWE-agent v0.6.0 cuts runtime in half with faster Docker communication, shallow cloning, and uv-based installs.
└──▷ GET THIS VERSION$ git clone --branch v0.6.0 https://github.com/SWE-agent/SWE-agent.git # already have the repo? check out this version: $ git checkout v0.6.0
- ›Achieves ~2x speed improvement (benchmarked with GPT-4o) via faster process communication inside Docker containers, shallow git cloning by default, cloning from an existing Python conda environment, and using
uvfor editable installs. - ›Renders Markdown in web UI agent feed messages for improved readability.
- ›Allows disabling config dump to log output.
- ›Achieves ~2x speed improvement (benchmarked with GPT-4o) via faster process communication inside Docker containers, shallow git cloning by default, cloning from an existing Python conda environment, and using
- v0.5.0
SWE-agent v0.5.0 adds
--cache_task_imagesfor faster repeated runs, Docker web UI support, and GPT-4o model.└──▷ GET THIS VERSION$ git clone --branch v0.5.0 https://github.com/SWE-agent/SWE-agent.git # already have the repo? check out this version: $ git checkout v0.5.0
- ›Adds
--cache_task_imagesflag to cache task environments as Docker images, eliminating repeated cloning and installation when running against the same repository multiple times. - ›Adds
gpt-4oas a supported model. - ›Supports passing API keys as environment variables via
keys.cfg, using a new custom Config class. - ›Enables running the web UI when SWE-agent is operating entirely inside Docker.
- ›Adds a default
environment_setupconfig to simplify initial configuration.
+1 moreshow less
- ›Allows specifying a commit hash as the target in the web UI.
└──▷ BREAKING ON UPGRADE- !Direct imports from
sweagentare removed —from sweagent import Agentno longer works. - !Codebase has been reformatted; PRs based on previous commits will encounter merge conflicts unless the
pre-commithook is installed.
- ›Adds
- v0.4.0
SWE-agent v0.4.0 launches a web UI for browser-based agent runs.
└──▷ GET THIS VERSION$ git clone --branch v0.4.0 https://github.com/SWE-agent/SWE-agent.git # already have the repo? check out this version: $ git checkout v0.4.0
- ›Adds a web UI that lets users specify a bug and watch SWE-agent work through it interactively in the browser.
- v0.3.0
SWE-agent v0.3.0 adds Amazon Bedrock (Claude), GPT-4 Turbo, and GitHub Codespaces cloud support.
└──▷ GET THIS VERSION$ git clone --branch v0.3.0 https://github.com/SWE-agent/SWE-agent.git # already have the repo? check out this version: $ git checkout v0.3.0
- ›Adds Amazon Bedrock support, enabling Claude models as a backend via the Bedrock integration.
- ›Adds GPT-4 Turbo as a supported model option.
- ›Enables running SWE-agent in the cloud using GitHub Codespaces.
- v0.2.0
SWE-agent v0.2.0 adds local repo targeting, custom environment setup, and configurable OpenAI base URL
└──▷ GET THIS VERSION$ git clone --branch v0.2.0 https://github.com/SWE-agent/SWE-agent.git # already have the repo? check out this version: $ git checkout v0.2.0
└──▷ TRY ITRun SWE-agent against a locally cloned repo without needing a GitHub issue URL.$ python run.py --repo_path /path/to/local/repo --config config/default.yaml
Provide a custom install script so the agent sets up the right environment before attempting a fix.$ python run.py --issue_url https://github.com/owner/repo/issues/42 --environment_setup ./setup_env.sh
- ›Adds
--repo_pathflag to run SWE-agent against a local repository instead of a remote GitHub issue. - ›Adds
--environment_setupflag to supply custom installation commands when running on GitHub issues or local repos. - ›Adds OpenAI API base URL configuration support via
keys.cfg.
- ›Adds