mini-swe-agent 是什么?

mini-swe-agent 是一个面向 GitHub issue 和命令行开发任务的极简软件工程 Agent。核心 Agent 约 100 行 Python,只把 bash 作为工具,执行环境、模型适配和运行入口分别放在独立模块中。

⭐ 8,358 Stars 🍴 1,141 Forks Python MIT 作者: SWE-agent
来源:github.com/SWE-agent/mini-swe-agent 查看 GitHub 仓库 → 📘 使用教程 →

为什么值得关注

项目用很少的 Agent 脚手架提供可读、可替换的研究基线。官方 README 报告其在 SWE-bench Verified 上超过 74%,但这个数字来自项目方和指定模型/配置,使用者需要按自己的模型、预算和任务复测。

来源:github.com/SWE-agent/mini-swe-agent (1) · www.swebench.com/ (2)

核心功能

bash-only Agent 循环

Agent 不依赖模型的工具调用接口,主要让模型生成 bash 动作,再由环境执行。

来源:github.com/SWE-agent/mini-swe-agent
线性消息历史

每一步追加到消息列表,轨迹与下一轮传给模型的上下文直接对应,便于审查和研究。

来源:github.com/SWE-agent/mini-swe-agent
可替换执行环境

官方仓库提供本地、Docker/Podman、Singularity/Apptainer 等执行环境;本地环境使用 subprocess.run。

来源:github.com/SWE-agent/mini-swe-agent/tree/main/src/minisweagent/enviro…

技术架构

代码按 agents、models、environments 和 run scripts 拆分。Agent 维护线性消息历史;模型模块生成下一步动作;environment 执行命令并返回结果;run script 选择一组实现并启动任务。这个结构便于替换模型或沙箱,也意味着本地环境中的命令会继承当前用户权限。

来源:github.com/SWE-agent/mini-swe-agent/blob/main/AGENTS.md

项目知识图谱

知识图谱:项目核心节点(中心)+ 核心功能(内环六边形)+ 关键技术依赖(外环 chip) Python >=3.10 pydantic >=2.0 模型 provider 或本地模型配置模型 provider… bash-only Agent 循环 线性消息历史 可替换执行环境 mini-swe-agent 项目本体 核心功能 关键依赖

技术栈

语言Python框架轻量 Agent loop + Typer/Textual CLI
Python >=3.10pydantic >=2.0模型 provider 或本地模型配置
可在本地运行,也可选择 Docker/Podman、Singularity/Apptainer 等隔离环境
来源:github.com/SWE-agent/mini-swe-agent/blob/main/pyproject.toml

快速上手

Python 3.10+ 环境可运行 uvx mini-swe-agent 临时启动,或 pipx install mini-swe-agent 后执行 mini。第一次先查看 mini --help,配置模型,再在无密钥、可回滚的小仓库中运行只读或低风险任务。
来源:github.com/SWE-agent/mini-swe-agent/blob/main/docs/quickstart.md

使用场景

适合研究不同模型在同一简单 Agent 循环中的表现、处理边界清楚的 GitHub issue、搭建可读的教学基线,或把执行环境切到容器后批量运行。生产仓库仍需要分支、权限限制、测试和人工审查。

来源:github.com/SWE-agent/mini-swe-agent

优势与局限

优势

  • 核心循环短,代码和轨迹容易审查
  • 不依赖模型原生工具调用接口
  • 模型与执行环境可分别替换

局限

  • bash 权限取决于执行环境,本地运行可能直接改写文件或执行高风险命令
  • 效果高度依赖模型、提示、预算和任务集,官方 benchmark 不能直接外推到业务仓库
  • v2 与旧 v1 配置有迁移差异,旧教程不能直接照搬
来源:github.com/SWE-agent/mini-swe-agent (1) · mini-swe-agent.com/latest/advanced/v2_migration/ (2)

最新版本

GitHub Releases 当前最新正式版为 v2.4.6,发布于 2026-07-23。当前主文档是 v2;旧版资料在 v1 分支和 v1 文档中。

来源:github.com/SWE-agent/mini-swe-agent/releases/tag/v2.4.6

实测与证据

status: official_docs_checked_not_locally_run  |  checked_at: 2026-09-23  |  environment: 核对官方 README、pyproject.toml、Quick Start、environments 目录、SWE-agent README 和 GitHub Releases;未安装包或连接模型  |  limitations: 未执行 Agent、未验证模型费用与输出、未复跑 SWE-bench,也没有在本地或容器环境测试命令隔离  |  observed_output: 官方材料相互确认 Python >=3.10、uvx/pipx/pip 三种安装路径、mini CLI、bash-only 设计、线性历史和 v2.4.6 release

来源:github.com/SWE-agent/mini-swe-agent (1) · github.com/SWE-agent/mini-swe-agent/releases/tag/v2.4.6 (2)

同类项目对比

同一组织维护的 SWE-agent 提供更丰富的 Agent-Computer Interface、工具和 YAML 配置;mini-swe-agent 只保留 bash、线性历史和可替换环境。SWE-agent 官方 README 已建议新用户优先采用 mini-swe-agent;需要研究复杂工具接口时再看 SWE-agent。

来源:github.com/SWE-agent/SWE-agent (1) · github.com/SWE-agent/mini-swe-agent (2)

总结评价

适合需要可读 Agent 循环、模型对比基线或可替换执行环境的开发者和研究者。第一次使用应放在无敏感凭据、可回滚的测试仓库中,并把官方 benchmark 当作项目方结果而非业务效果承诺。

来源:官方 README 与文档入口

常见问题

mini-swe-agent 当前需要哪个 Python 版本?

官方 pyproject.toml 要求 Python 3.10 或更新版本。

mini-swe-agent 只有 100 行代码吗?

不是整个项目只有 100 行。官方说的是核心 Agent 类约 100 行;环境、模型适配和运行脚本还有额外代码。

mini-swe-agent 会安全地隔离 bash 命令吗?

不一定。本地环境继承当前用户权限。需要隔离时应选择容器或其他沙箱环境,并限制密钥、目录和网络。

mini-swe-agent 和 SWE-agent 怎么选?

想要简单、可读的 bash-only 基线时选 mini;研究更复杂的工具接口和配置时再看 SWE-agent。SWE-agent 官方也建议新用户优先使用 mini。

资料与核验范围
本文依据项目公开资料整理。版本、安装命令和功能边界可能随上游更新,请以所列来源和项目当前版本为准。 资料核对时间: 2026-09-23 10:52.

参考材料:README、GitHub API、依赖文件