Warning
This repository is no longer actively maintained and will not receive further updates. The project has been deprecated and users are advised to seek alternative solutions for their coding agent needs.
Open SWE is an open-source cloud-based asynchronous coding agent built with LangGraph. It autonomously understands codebases, plans solutions, and executes code changes across entire repositoriesโfrom initial planning to opening pull requests.
Tip
Try out Open SWE yourself using our public demo!
Note: you're required to set your own LLM API keys to use the demo.
Note
๐ See the Open SWE documentation files here
๐ฌ Read the announcement blog post here
๐บ Watch the announcement video here
Features
- ๐ Planning: Open SWE has a dedicated planning step which allows it to deeply understand complex codebases and nuanced tasks. You're also given the ability to accept, edit, or reject the proposed plan before it's executed.
- ๐ค Human in the loop: With Open SWE, you can send it messages while it's running (both during the planning and execution steps). This allows for giving real time feedback and instructions without having to interrupt the process.
- ๐ Parallel Execution: You can run as many Open SWE tasks as you want in parallel! Since it runs in a sandbox environment in the cloud, you're not limited by the number of tasks you can run at once.
- ๐งโ๐ป End to end task management: Open SWE will automatically create GitHub issues for tasks, and create pull requests which will close the issue when implementation is complete.
Usage
Open SWE can be used in multiple ways:
- ๐ฅ๏ธ From the UI. You can create, manage and execute Open SWE tasks from the web application.
- ๐ From GitHub. You can start Open SWE tasks directly from GitHub issues simply by adding a label
open-swe, oropen-swe-auto(adding-autowill cause Open SWE to automatically accept the plan, requiring no intervention from you). The defaultopen-swelabels now use Claude Opus 4.5 for optimal performance. Note:open-swe-maxandopen-swe-max-autolabels are deprecated and should no longer be used.
