开发与工程 github-issue-resolutionautomated-code-repairswe-benchcybersecurity-ctfyaml-configuration

SWE-agent

让所选语言模型自主处理 GitHub 仓库问题并尝试修复。

FollowAgents 评估 · FARS-2.1
不推荐
58/ 100 五分制 2.9 / 5
1 2 3 4 5 6
按维度查看评分与理由
1信任安全11 / 29 · 1.9/5

证据显示:仓库提供了安全政策(SECURITY.md)和明确的漏洞报告联系方式,但未提供权限最小化、用户确认、数据流透明、敏感数据处理、依赖安全、外部影响、回滚等具体实现细节。源代码中未发现明显的恶意行为,但作为静态审查,无法确认实际运行时的权限控制。因此,多数标准仅得1分,因为存在基本的安全意识但缺乏详细证据。来源归属得2分,因为README和pyproject.toml明确列出了作者和联系方式。

2可靠稳定9 / 14 · 3.2/5

证据显示:项目有测试(tests/)和CI配置(.github/workflows/),表明对一致性和依赖可用性有一定关注。失败消息方面,测试中检查了退出状态(如exit_cost、exit_context等),表明有错误处理机制。但静态审查无法验证实际运行时的可靠性,因此得2分。

3适用触发12 / 18 · 3.3/5

证据显示:README描述了多种使用场景(修复GitHub问题、网络安全、编程挑战),并提供了配置和文档链接。能力边界在README中有所提及(如EnIGMA模式),但未详细说明。触发精度和环境适配方面,有配置文件和文档,但静态审查无法验证实际效果。因此得2分。

4规范维护12 / 18 · 3.3/5

证据显示:README提供了安装、使用、FAQ等文档链接,信息架构清晰。pyproject.toml提供了安装依赖和项目元数据。命名稳定,版本信息在pyproject.toml中动态获取。已知限制在README中提及(如推荐使用mini-swe-agent)。许可证为MIT,有明确的版权声明。版本变更日志未直接提供,但新闻部分列出了更新。维护责任明确,有联系人和贡献指南。因此得2分。

5有效结果9 / 13 · 3.5/5

证据显示:README声称在SWE-bench上达到最先进水平,并提供了使用示例。输出可用性方面,有命令行界面和文档。边际价值高,因为提供了自动化修复功能。成本效益方面,未提供具体成本数据,但作为开源项目,成本较低。因此得2分。

6证据核验5 / 8 · 3.1/5

证据显示:README中的声明(如SoTA)有arXiv论文和新闻链接支持,但未提供具体数据。跨来源验证方面,有多个相关项目(如mini-swe-agent)和社区链接。事实与推断分离方面,README区分了事实(如发布日期)和推断(如性能声明)。因此得2分。

证据充分度: 评估于 2026年8月9日 审查版本 3ea751c087f3
使用前请注意
  • 静态审查无法验证实际运行时的权限控制、数据流和外部影响,建议进行动态测试。
  • 依赖安全未详细说明,建议检查依赖版本和已知漏洞。
  • 回滚机制未明确,建议确认是否支持撤销操作。
查看完整评分方法 →

这个 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 也明确将其定位为可执行自定义任务的通用框架。

  1. 维护开源 Python 项目的工程师,希望让模型针对一个 GitHub issue 尝试修改真实仓库。
  2. 研究人员需要在 SWE-bench 上以批量模式评测软件工程代理。
  3. 团队希望通过单个 YAML 文件调整代理行为,而不是为每次实验改写代理实现。
  4. 参加授权 CTF 的安全研究者,需要使用 EnIGMA 模式处理攻防挑战。
  5. 想先在浏览器环境试用项目的开发者,可通过 README 提供的 GitHub Codespaces 入口开始。

这个 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 仅给出 Source Installation 文档和 GitHub Codespaces 入口,但未包含可复制的安装命令、运行时版本、依赖清单或凭据配置步骤。因此,依据当前材料无法验证完整安装流程。可验证的启动途径是 README 中的 GitHub Codespaces 链接;本地安装所需的具体信息在所提供材料中缺失。

如何使用这个 Agent?

已提供材料没有给出可复制的 CLI 命令、API 调用或 YAML 示例。可验证的使用流程是:准备 GitHub issue,选择语言模型,按单个 YAML 文件配置代理,然后通过文档所列的命令行 Hello World 或 SWE-bench 批量模式运行。模型访问凭据、仓库授权方式、实际命令及输出格式均未在当前材料中说明。

这个 Agent 与同类方案有什么区别?

README 将 mini-SWE-agent 明确称为已取代 SWE-agent 的后继项目:其宣称性能与 SWE-agent 相当但实现更简单,并建议新用户优先使用 mini-SWE-agent。SWE-agent 仍保留更广的 README 所述定位,包括真实仓库 issue 修复、SWE-bench 和 EnIGMA/CTF 场景。

常见问题

它能使用哪些模型?
README 表示可使用用户选择的语言模型,并举例 GPT-4o 和 Claude Sonnet 4;当前材料未列出完整的提供商、适配器或凭据配置方式。
我需要哪些权限?
其目标是在真实 GitHub 仓库中处理 issue 并尝试修复,因此网络和文件系统访问是可由描述推断的运行需求;仓库授权范围与安全隔离方式未在当前材料中说明。
可以直接用于 CTF 吗?
README 提供 EnIGMA 模式用于 offensive cybersecurity(CTF)挑战,并指定在其 1.0 更新前使用 SWE-agent 0.7。
新项目应选 SWE-agent 还是 mini-SWE-agent?
README 的总体建议是优先使用 mini-SWE-agent,因为维护重心已经转向该项目,且其被描述为更简单。

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents