SWE-agent
让所选语言模型自主处理 GitHub 仓库问题并尝试修复。
- Star 数
- ★ 21k
- 最近更新
- 3 个月前
- License
- MIT
- 主语言
- Python
- FA 评分
- 58/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 兼容但需适配
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 维护开源 Python 项目的工程师,希望让模型针对一个 GitHub issue 尝试修改真实仓库。
- 不适合
- 需要长期维护、不想迁移到 mini-SWE-agent 的团队
- 想直接用 EnIGMA 做 CTF 的用户(需退回 0.7 版本)
- 源码审查
- 58/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
SWE-agent 是面向软件工程任务的自动化代理项目,目标是接收 GitHub issue 并尝试在真实仓库中完成修复。它让用户选择语言模型,并让模型自主使用工具完成任务;README 以 GPT-4o 和 Claude Sonnet 4 为示例。项目将行为配置集中在单个 YAML 文件中,并提供命令行 Hello World、SWE-bench 批量评测和 GitHub Codespaces 入口。除代码修复外,README 还说明它可用于自定义任务及名为 EnIGMA 的攻防 CTF 模式。需要注意的是,维护者表示当前主要开发已转向 mini-SWE-agent,并建议新用户优先采用后者。
用户以 GitHub issue 作为输入,SWE-agent 让所选语言模型在真实 GitHub 仓库中自主使用工具,并尝试产出问题修复结果。其运行行为由单个 YAML 配置文件控制;文档入口覆盖命令行 Hello World 和 SWE-bench 的批量 benchmarking。对于网络安全场景,SWE-agent: EnIGMA 被描述为解决 offensive cybersecurity(CTF)挑战的模式;README 指明在 EnIGMA 更新至 1.0 前应使用 SWE-agent 0.7。README 也明确将其定位为可执行自定义任务的通用框架。
- 维护开源 Python 项目的工程师,希望让模型针对一个 GitHub issue 尝试修改真实仓库。
- 研究人员需要在 SWE-bench 上以批量模式评测软件工程代理。
- 团队希望通过单个 YAML 文件调整代理行为,而不是为每次实验改写代理实现。
- 参加授权 CTF 的安全研究者,需要使用 EnIGMA 模式处理攻防挑战。
- 想先在浏览器环境试用项目的开发者,可通过 README 提供的 GitHub Codespaces 入口开始。
如何安装或部署这个 Agent?
已提供的 README 仅给出 Source Installation 文档和 GitHub Codespaces 入口,但未包含可复制的安装命令、运行时版本、依赖清单或凭据配置步骤。因此,依据当前材料无法验证完整安装流程。可验证的启动途径是 README 中的 GitHub Codespaces 链接;本地安装所需的具体信息在所提供材料中缺失。
如何使用这个 Agent?
已提供材料没有给出可复制的 CLI 命令、API 调用或 YAML 示例。可验证的使用流程是:准备 GitHub issue,选择语言模型,按单个 YAML 文件配置代理,然后通过文档所列的命令行 Hello World 或 SWE-bench 批量模式运行。模型访问凭据、仓库授权方式、实际命令及输出格式均未在当前材料中说明。
这个 Agent 有哪些优点和局限?
- 明确以 GitHub issue 到真实仓库修复为核心任务,而非仅提供代码补全或问答。
- README 声明可选用不同语言模型,并以 GPT-4o 与 Claude Sonnet 4 为例。
- 代理行为由单个 YAML 文件治理,适合研究实验和可配置工作流。
- 同时覆盖命令行试运行、GitHub Codespaces 和 SWE-bench 批量评测入口。
- 包含 EnIGMA 的 CTF 场景,并明确给出该模式当前应使用的版本。
- 维护者已说明当前主要开发转向 mini-SWE-agent,并建议今后优先使用它,采用本项目存在迁移与维护风险。
- 当前材料未提供安装命令、依赖版本、模型凭据配置或首个可运行命令。
- README 未说明修复失败时的恢复策略、代码变更审查机制或输出格式。
- EnIGMA 尚未更新到 1.0;README 要求该场景使用较旧的 SWE-agent 0.7。
- 对真实 GitHub 仓库执行任务意味着需要网络与文件系统访问,具体权限边界未在材料中说明。
这个 Agent 与同类方案有什么区别?
README 将 mini-SWE-agent 明确称为已取代 SWE-agent 的后继项目:其宣称性能与 SWE-agent 相当但实现更简单,并建议新用户优先使用 mini-SWE-agent。SWE-agent 仍保留更广的 README 所述定位,包括真实仓库 issue 修复、SWE-bench 和 EnIGMA/CTF 场景。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| SWE-agent 当前 | 58 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 21k | 3 个月前 | Python | — |
| CORAL 多智能体自进化基础设施 | 60 · 存在缺口 | 命令行工具免费 + 模型费 | ★ 1.1k | 2 个月前 | Python | Codex · Claude Code |
| mini-swe-agent | 54 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 9.1k | 3 天前 | Python | — |
| MassGen 多智能体协作系统 | 51 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 1.1k | 4 个月前 | Python | Codex · Claude Code · OpenAI API · Claude API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示:仓库提供了安全政策(SECURITY.md)和明确的漏洞报告联系方式,但未提供权限最小化、用户确认、数据流透明、敏感数据处理、依赖安全、外部影响、回滚等具体实现细节。源代码中未发现明显的恶意行为,但作为静态审查,无法确认实际运行时的权限控制。因此,多数标准仅得1分,因为存在基本的安全意识但缺乏详细证据。来源归属得2分,因为README和pyproject.toml明确列出了作者和联系方式。
证据显示:项目有测试(tests/)和CI配置(.github/workflows/),表明对一致性和依赖可用性有一定关注。失败消息方面,测试中检查了退出状态(如exit_cost、exit_context等),表明有错误处理机制。但静态审查无法验证实际运行时的可靠性,因此得2分。
证据显示:README描述了多种使用场景(修复GitHub问题、网络安全、编程挑战),并提供了配置和文档链接。能力边界在README中有所提及(如EnIGMA模式),但未详细说明。触发精度和环境适配方面,有配置文件和文档,但静态审查无法验证实际效果。因此得2分。
证据显示:README提供了安装、使用、FAQ等文档链接,信息架构清晰。pyproject.toml提供了安装依赖和项目元数据。命名稳定,版本信息在pyproject.toml中动态获取。已知限制在README中提及(如推荐使用mini-swe-agent)。许可证为MIT,有明确的版权声明。版本变更日志未直接提供,但新闻部分列出了更新。维护责任明确,有联系人和贡献指南。因此得2分。
证据显示:README声称在SWE-bench上达到最先进水平,并提供了使用示例。输出可用性方面,有命令行界面和文档。边际价值高,因为提供了自动化修复功能。成本效益方面,未提供具体成本数据,但作为开源项目,成本较低。因此得2分。
证据显示:README中的声明(如SoTA)有arXiv论文和新闻链接支持,但未提供具体数据。跨来源验证方面,有多个相关项目(如mini-swe-agent)和社区链接。事实与推断分离方面,README区分了事实(如发布日期)和推断(如性能声明)。因此得2分。
- 静态审查无法验证实际运行时的权限控制、数据流和外部影响,建议进行动态测试。
- 依赖安全未详细说明,建议检查依赖版本和已知漏洞。
- 回滚机制未明确,建议确认是否支持撤销操作。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
v1.1.0 v1.1.0: 10s of thousands of training trajectories
发布说明摘录
v1.1.0: 10s of thousands of training trajectories We're very excited to announce our new project [SWE-smith](https://swesmith.com/), generating 10s of thousands of training trajectories for SWE agents. Using this training data, our LM SWE-agent-LM-32b achieves open-weights SotA on SWE-bench verified with SWE-agent!  …在 GitHub 查看 ↗ -
v1.0.1 v1.0.1: SOTA on SWE-Bench Full
发布说明摘录
SWE-agent 1.0.1 News: After our announcements for SOTA on SWE-Bench Lite and Verified, we now can claim SOTA on the full set of 2k GitHub issues of SWE-Bench full:  Interestingly, the improvement on the issues that are not also in the Lite/Verified subsets is much higher than the gain for the Lite/Verified subsets. Evaluating only on Lite/Verified doesn’t tell the whole story! - What's Changed …在 GitHub 查看 ↗ -
发布说明摘录
SWE-agent 1.0  News So much new stuff! Here's a quick rundown of the cool new things you can do: ✨ Fast, massively parallel code execution with [SWE-ReX](https://github.com/swe-agent/SWE-ReX). ✨ Run SWE-agent locally but execute code in the cloud (using modal, AWS, or anything else that runs [SWE-ReX](https://github.com/swe-agent/SWE-ReX)). ✨ Configurable retry mechanisms: Try multiple agent configurations, models, parameters, etc., then choose the best one. …在 GitHub 查看 ↗