# 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