Notes

SWE-agent

In 2024 a group at Princeton asked a plain question: how much of a coding agent's ability comes from the model, and how much from the interface it is handed? SWE-agent is their answer — a research system that takes a real GitHub issue and a real repository and works the fix as a sequence of tool calls, with nobody steering.

The agent-computer interface
Its contribution is the idea it named: an agent-computer interface (ACI), a command set redesigned for a model rather than for a person. A raw shell is a poor fit — an interactive editor is unusable without a screen, and printing a 2,000-line file floods the context window. So SWE-agent hands the model a small purpose-built toolkit:

  • A file viewer that shows a bounded window of numbered lines and can scroll.
  • An edit command that applies the change and immediately lint-checks it, rejecting the edit and reporting the error when syntax breaks.
  • Search across the repository, and a command to run the tests.

Removing that lint guard measurably lowered its benchmark score, which was the paper's real finding: tool design, not model strength alone, moves agent performance.

Why it matters
SWE-agent is the reference implementation the early SWE-bench numbers were made on, and it set the template every coding agent has followed since — Devin, Aider, and the agent modes now built into editors. Its lesson generalises well past code: when an agent underperforms, the fault is as likely to be in the commands you gave it as in the model driving them.

SWE-agent is a research coding agent, from Princeton, that resolves real GitHub issues by operating a repository through a purpose-built command set rather than a raw shell. It introduced the agent-computer interface: bounded file views, an edit command that lint-checks and rejects broken syntax, repository search and test execution. It was the reference system behind the early SWE-bench results, and it demonstrated that interface design affects agent success as much as model capability.

Hand a mechanic a problem and a well-stocked toolbox and they get on with it. Hand them the same problem and a heap of unlabelled parts and they struggle, however skilled they are. SWE-agent is a research project built on that observation.

It is an AI system that takes a genuine bug report from a real software project and tries to fix it by itself — reading the files, making an edit, running the project's tests to see if the fix holds.

Its real discovery was about the toolbox, not the AI. Give the system a few simple, well-shaped commands — including one that refuses an edit which would break the code — and it succeeds far more often. Same model, better tools.