SWE-agent
让所选语言模型自主处理 GitHub 仓库问题并尝试修复。
按维度查看评分与理由
证据显示:仓库提供了安全政策(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分。
- 静态审查无法验证实际运行时的权限控制、数据流和外部影响,建议进行动态测试。
- 依赖安全未详细说明,建议检查依赖版本和已知漏洞。
- 回滚机制未明确,建议确认是否支持撤销操作。
这个 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 有哪些优点和局限?
- 明确以 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 场景。