opensourceprojects.dev

A broadsheet for software that doesn't ask for your email

100 lines of Python still scores 74% on SWE-bench verified
GitHub RepoImpressions3

Project Description

View on GitHub

The 100-Line Coding Agent That Holds Its Own Against the Giants

You've probably seen the trend: AI coding agents are getting bigger, more complex, and more dependent on elaborate tooling and special interfaces. But what if most of that complexity isn't actually necessary? The team behind SWE-bench and SWE-agent asked that exact question, and the result is mini-swe-agent—a coding agent built on roughly 100 lines of Python that still scores over 74% on the SWE-bench verified benchmark. It's a bold bet that simplicity can compete with sophistication, and it might change how you think about building agents.

What It Does

Mini-swe-agent is a minimal AI software engineering agent that can autonomously fix bugs and implement features in codebases. The core agent class is just around 100 lines of Python, with a bit more code for the environment, model integration, and run script. There are no fancy dependencies or elaborate frameworks propping it up.

The architecture is deliberately stripped down. The agent has no tools other than bash—it doesn't even use the tool-calling interface of language models. This means it can run with literally any model that can produce text, because all it needs is a shell to execute commands. The agent's history is completely linear: every step simply appends to the messages, with no distinction between the trajectory and the prompt context.

For model support, it leverages litellm, which means compatibility with a wide range of providers including OpenRouter and Portkey. It also supports /completion and /response endpoints, plus interleaved thinking. On the deployment side, you can run it in local environments, Docker or Podman containers, Singularity/Apptainer, bubblewrap sandboxes, and more.

Why It's Cool

The most striking thing about mini-swe-agent is what it doesn't have.

  • No tool-calling interface required. Because the agent only uses bash, you're not locked into models that support specific function-calling formats. Any model that can output shell commands will work. That's a massive flexibility win for anyone who wants to experiment with different models or run in constrained environments.

  • Zero package installation in sandboxes. Since the agent's only tool is bash, you don't need to worry about installing Python packages or dependencies inside your sandboxed environment. This dramatically simplifies deployment and reduces the attack surface.

  • Linear history, no orchestration. The agent doesn't maintain complex state machines or separate trajectory tracking. Every action just appends to the message history. This makes the codebase approachable—you can actually read the entire agent implementation in one sitting and understand what's happening.

  • Performance that punches above its weight. Scoring over 74% on SWE-bench verified is no small feat, especially when you consider that the agent is running without the elaborate tooling that agents like Claude Code use. The project also claims faster startup times than Claude Code.

  • Real-world adoption. This isn't a toy. The README lists Meta, NVIDIA, Essential AI, IBM, Nebius, Anyscale, Princeton, and Stanford as users. When research teams at that level adopt a minimal tool, it's worth paying attention to.

  • Built by the right people. The team behind this created SWE-bench and SWE-agent in the first place—they're not newcomers guessing at what agents need. Their pivot toward minimalism carries weight because they've seen what the complex approach looks like up close.

The motivation is refreshingly honest. A year ago, the team emphasized tools and special interfaces. Now, as language models have become more capable, they've realized a lot of that infrastructure is unnecessary. It's a useful reminder that sometimes the best optimization is deletion.

How to Try It

Getting started with mini-swe-agent is straightforward. The project is available on PyPI, so you can install it with pip:

pip install mini-swe-agent

The repository has a hello_world run script that shows you the minimal setup, and the docs at mini-swe-agent.com walk through configuration and usage in detail.

If you're coming from the earlier version, note that this is v2—the README points to a migration guide and there's a separate v1 branch if you need the older code.

The best way to understand the project is to read the source directly. The default agent class is short enough to skim in a few minutes, and you'll immediately see how the loop works—bash command, model response, repeat. Check out the repository to explore the full codebase.

Final Thoughts

Mini-swe-agent is best for developers who want to understand how coding agents actually work, or who need a lightweight agent they can deploy without wrestling with heavy dependencies. It's also a great starting point if you're building your own agent and want a clean, readable foundation to extend. The honest takeaway here is that the coding agent space might be over-engineered—and this project makes a compelling case that a simple bash loop plus a capable model gets you surprisingly far. If you've been intimidated by the complexity of modern agent frameworks, this is the perfect entry point to see what's actually happening under the hood.


Follow @githubprojects for more developer tools and open source projects.

Back to Projects
Project ID: 8eb509e5-538e-4d16-9f1e-f9e061489affLast updated: September 6, 2026 at 02:46 AM