open-swe
open-swe:它是什么、解决了什么问题以及为何受到关注
它解决了什么
Open SWE 为组织提供了一个构建内部编码代理的框架。它解决了创建能够安全地与公司私有代码库、内部系统(如 Slack 和 Linear)以及云环境交互的 AI 助手的问题,从而在最小的人为监督下自动化软件工程任务。
工作原理
Open SWE 基于 LangGraph 和 Deep Agents 构建,采用模块化架构:
- Agent Harness: 在 Deep Agents 框架之上进行组合,允许自定义编排和工具,同时保持可升级路径。
- Isolated Sandboxes: 每个任务在其自己的远程 Linux 云沙箱中运行(支持 Modal、Daytona、Runloop 和 LangSmith 等提供商),以限制错误的影响范围。
- Curated Toolset: 使用一套专注的工具进行 shell 执行、网页抓取、API 调用,以及与 Linear 和 Slack 的集成。
- Context Engineering: 从根目录的
AGENTS.md文件(用于仓库级规则)和触发的 Linear 议题或 Slack 线程的完整历史中收集上下文。 - Orchestration: 采用子代理进行并行子任务,并使用确定性的中间件处理运行中消息注入和错误处理等事务。
- Invocation: 通过在 Slack、Linear 或 GitHub 中的提及触发,将后续消息路由到同一代理线程。
适用人群
它面向希望部署内部编码代理的工程组织(类似 Stripe 或 Coinbase 使用的代理),用于处理修复 bug、更新代码、管理 PR 等任务,符合其特定工作流。
亮点
- Multi-platform Triggers: 可直接从 Slack、Linear 或 GitHub 启动任务。
- Cloud Sandboxing: 可插拔的隔离环境,确保代码安全执行。
- Interactive Execution: 在代理执行任务期间可以实时发送消息交互。
- Automated PRs: 自动提交更改并打开与原始工单关联的草稿 PR。
- Subagent Orchestration: 支持生成子代理并行处理独立子任务。
- Management Dashboard: 包含用于 GitHub 登录、用户设置和仓库管理的 Web UI。
Sources
- undefinedlangchain-ai/open-swe