# swe-agent-mini-swe-agent

> solves GitHub issues and programming tasks in a codebase by executing bash commands in sandboxed environments

- repo: https://github.com/SWE-agent/mini-swe-agent
- commit: 04d809ceab9df28f9adaed044884180159172930
- api style: openai
- runs: 16 (None with a reward)
- tasks tried: 9
- models: bedrock/us.anthropic.claude-haiku-4-5-20251001-v1:0, bedrock/us.anthropic.claude-sonnet-4-5-20250929-v1:0
- domains: swe
- languages: python
- capabilities: edits-files, runs-shell, runs-tests, reads-docs, long-horizon

## How it runs here

mini-SWE-agent is a minimal Python SWE agent (package `mini-swe-agent`, src/minisweagent). Its CLI entrypoint is the `mini` console script (minisweagent.run.mini:app, typer), which builds a config from src/minisweagent/config/mini.yaml plus CLI flags, instantiates a LitellmModel (default model class), a LocalEnvironment (runs each bash action as a subprocess in the current working directory) and the InteractiveAgent, then loops: it calls litellm.completion() with a single `bash` function tool, executes the returned tool calls, feeds the JSON-rendered output back as tool messages, and stops when the model runs `echo COMPLETE_TASK_AND_SUBMIT_FINAL_OUTPUT`. The model is chosen by MSWEA_MODEL_NAME (or -m); with an `openai/<name>` model name litellm speaks the OpenAI chat-completions API and honors OPENAI_BASE_URL/OPENAI_API_BASE and OPENAI_API_KEY (the config also passes model_kwargs.api_base explicitly). The trajectory (all messages, tool outputs, exit status) is written as JSON to the path given by -o.

## Results by task

| task | runs | last reward | best reward | last tests |
|---|---|---|---|---|
| [aider_polyglot/polyglot_go_palindrome-products](https://harnessreport.com/tasks/aider_polyglot/polyglot_go_palindrome-products.md) | 1 | 0 |  |  |
| [aider_polyglot/polyglot_python_bowling](https://harnessreport.com/tasks/aider_polyglot/polyglot_python_bowling.md) | 2 | 0 |  | 1 error |
| [aider_polyglot/polyglot_python_connect](https://harnessreport.com/tasks/aider_polyglot/polyglot_python_connect.md) | 2 | 0 |  | 5 failed, 5 passed |
| [algotune/algotune-vertex-cover](https://harnessreport.com/tasks/algotune/algotune-vertex-cover.md) | 1 | 1 |  | 2 failed, 1 passed |
| [bird-bench/card_games__372](https://harnessreport.com/tasks/bird-bench/card_games__372.md) | 1 | 1 |  |  |
| [humanevalfix/python-11](https://harnessreport.com/tasks/humanevalfix/python-11.md) | 1 | 1 |  | 1 passed |
| [humanevalfix/python-12](https://harnessreport.com/tasks/humanevalfix/python-12.md) | 1 | 1 |  | 1 passed |
| [quixbugs/quixbugs-python-pascal](https://harnessreport.com/tasks/quixbugs/quixbugs-python-pascal.md) | 1 | 1 |  | 6 passed |
| [swebench-verified/psf__requests-5414](https://harnessreport.com/tasks/swebench-verified/psf__requests-5414.md) | 2 | 1 |  | 131 passed, 1 xfailed, 158 errors |

## Tests to run next

_ranked by llm_

| task | why |
|---|---|
| [swebench-verified/sphinx-doc__sphinx-10323](https://harnessreport.com/tasks/swebench-verified/sphinx-doc__sphinx-10323.md) | It's a real GitHub issue reflecting the harness's primary use case—validates whether it can solve production problems beyond toy tasks. |
| [aider_polyglot/polyglot_rust_bowling](https://harnessreport.com/tasks/aider_polyglot/polyglot_rust_bowling.md) | Same algorithm as the Python bowling task (which has mixed results), but in a memory-safe compiled language—shows if the harness generalizes across languages or hits Rust-specific friction. |
| [aider_polyglot/polyglot_cpp_allergies](https://harnessreport.com/tasks/aider_polyglot/polyglot_cpp_allergies.md) | New language and new algorithm; tests whether the harness can handle C++ compilation, linking, and memory semantics. |
| [quixbugs/quixbugs-java-flatten](https://harnessreport.com/tasks/quixbugs/quixbugs-java-flatten.md) | Java version of a bug-fix pattern it solved in Python (pascal)—measures if one-line debugging skills transfer or if each language requires relearning. |

## Runs

| run | task | verifier says | calls | seconds |
|---|---|---|---|---|
| [20260925T220613-swe-agent-mi-b7a243ece02c-polyglot_python_connect](https://harnessreport.com/runs/20260925T220613-swe-agent-mi-b7a243ece02c-polyglot_python_connect.md) | aider_polyglot/polyglot_python_connect | reward 0 · 5 failed, 5 passed | 39 | 185 |
| [20260925T215245-swe-agent-mi-ca91fde3f902-algotune-vertex-cover](https://harnessreport.com/runs/20260925T215245-swe-agent-mi-ca91fde3f902-algotune-vertex-cover.md) | algotune/algotune-vertex-cover | reward 1 · 2 failed, 1 passed · verifier exited 1 | 19 | 93 |
| [20260924T232628-swe-agent-mi-polyglot_python_connect](https://harnessreport.com/runs/20260924T232628-swe-agent-mi-polyglot_python_connect.md) | aider_polyglot/polyglot_python_connect | reward 0 · 6 failed, 4 passed | 38 | 147 |
| [20260924T230803-swe-agent-mi-python-11](https://harnessreport.com/runs/20260924T230803-swe-agent-mi-python-11.md) | humanevalfix/python-11 | reward 1 · 1 passed | 12 | 29 |
| [20260924T230534-swe-agent-mi-quixbugs-python-pascal](https://harnessreport.com/runs/20260924T230534-swe-agent-mi-quixbugs-python-pascal.md) | quixbugs/quixbugs-python-pascal | reward 1 · 6 passed | 8 | 32 |
| [20260924T225915-sw-mini-swe-a-psf__requests-5414](https://harnessreport.com/runs/20260924T225915-sw-mini-swe-a-psf__requests-5414.md) | swebench-verified/psf__requests-5414 | reward 1 · 131 passed, 1 xfailed, 158 errors | 100 | 264 |
| [20260924T225451-sw-mini-swe-a-card_games__372](https://harnessreport.com/runs/20260924T225451-sw-mini-swe-a-card_games__372.md) | bird-bench/card_games__372 | reward 1 | 7 | 17 |
| [20260924T225327-sw-mini-swe-a-python-12](https://harnessreport.com/runs/20260924T225327-sw-mini-swe-a-python-12.md) | humanevalfix/python-12 | reward 1 · 1 passed | 8 | 21 |
| [20260924T224628-sw-mini-swe-a-psf__requests-5414](https://harnessreport.com/runs/20260924T224628-sw-mini-swe-a-psf__requests-5414.md) | swebench-verified/psf__requests-5414 | reward 0 · 15 failed, 116 passed, 1 xfailed, 158 errors · verifier exited 1 | 55 | 167 |
| [20260924T224300-sw-mini-swe-a-polyglot_go_palindrome-products](https://harnessreport.com/runs/20260924T224300-sw-mini-swe-a-polyglot_go_palindrome-products.md) | aider_polyglot/polyglot_go_palindrome-products | reward 0 | 37 | 150 |
| [20260925T045731-swe-agent-mi-polyglot_python_bowling](https://harnessreport.com/runs/20260925T045731-swe-agent-mi-polyglot_python_bowling.md) | aider_polyglot/polyglot_python_bowling | reward 0 · tests stopped: 1 error during collection: fix_test.py | 32 | 160 |
| [ic-record](https://harnessreport.com/runs/ic-record.md) | prompt | no reward written | 4 | 12 |
| [routes-smoke](https://harnessreport.com/runs/routes-smoke.md) | prompt | no reward written | 4 | 9 |
| [20260923T104631](https://harnessreport.com/runs/20260923T104631.md) | prompt | no reward written | 6 | 22 |
| [20260923T103337-polyglot_python_bowling](https://harnessreport.com/runs/20260923T103337-polyglot_python_bowling.md) | aider_polyglot/polyglot_python_bowling | reward 1 · 69 passed | 30 | 187 |
| [20260923T103035](https://harnessreport.com/runs/20260923T103035.md) | prompt | no reward written | 7 | 29 |

---
Harness Report runs agent harnesses from their GitHub repos on Harbor tasks and records every model call. Every page is also `.md` and `.json`; index: https://harnessreport.com/llms.txt · MCP: https://harnessreport.com/mcp
