标签: 软件工程

  • OpenHands:77.8K+ Stars,AI驱动的自动化软件开发平台

    OpenHands:77.8K+ Stars,AI驱动的自动化软件开发平台

    OpenHands - AI驱动的开发平台

    OpenHands:77.8K+ Stars,AI驱动的自动化软件开发平台

    ⭐ 77.8K+ Stars
    🐍 Python
    🔧 开源
    🏢 OpenHands社区

    📋 项目简介

    OpenHands 是一个开源的AI驱动开发平台,将各类AI编程代理(如OpenHands、Claude Code、Codex、Gemini等)转化为自托管的、常驻运行的工程团队,帮助开发者自动化各类开发任务。原名OpenDevin,已成为GitHub上最受欢迎的AI软件开发工具之一。

    🚀 核心功能

    🔌

    多后端支持

    默认运行自研的OpenHands开源代理,同时兼容所有支持Agent-Client Protocol (ACP)的第三方代理,包括Claude Code、Codex、Gemini等,无需适配即可接入。

    🔄

    灵活部署

    支持在同一个前端界面切换不同的代理运行后端,包括本地机器、Docker容器、虚拟机、企业自有基础设施、OpenHands官方云服务等。

    ⚙️

    自动化工作流

    支持创建定时任务、或响应Webhook事件的自动化流程,可集成Slack、GitHub、Linear、Notion等第三方工具。

    🤖

    模型兼容性强

    支持接入任意大语言模型(LLM),用户可以根据需求自主选择适配的模型,包括GPT、Claude、Gemini、DeepSeek等。

    🏠

    自托管能力

    默认在本地运行,也支持部署到云端服务器,代理可以在本地机器关闭后持续运行,方便对接第三方服务的触发请求。

    💻 安装要求和过程

    环境要求

    安装方式 前置要求
    无沙箱直接安装 Node.js 22.12.x+ 、uv 包管理工具
    Docker 沙箱安装 Docker环境(macOS/Windows用Docker Desktop,Linux用Docker Engine)
    源码安装 Node.js 22.12.x+ 、npmuv

    快速安装步骤

    方式一:无沙箱快速启动(适合本地测试)

    ⚠️ 注意:代理会直接访问本地文件系统

    npm install -g @openhands/agent-canvas
    agent-canvas

    也可以拆分启动前后端:

    • 仅启动前端:agent-canvas --frontend-only
    • 仅启动后端:agent-canvas --backend-only

    方式二:Docker 沙箱安装(更安全)

    ✅ 代理仅能访问挂载的项目目录

    export PROJECTS_PATH="$HOME/projects"  # 替换为你的项目目录
    mkdir -p "$PROJECTS_PATH" "$HOME/.openhands"
    
    docker run -it --rm   -p 8000:8000   -v "$HOME/.openhands:/home/openhands/.openhands"   -v "${PROJECTS_PATH}:/projects"   ghcr.io/openhands/agent-canvas:1.0.0-rc.11

    Windows用户可参考仓库内的 README.windows.md 获取对应命令。

    方式三:源码安装

    git clone https://github.com/OpenHands/agent-canvas.git
    cd agent-canvas
    npm install
    npm run dev

    🎉 启动后访问 http://localhost:8000 即可使用界面,也可以在界面内添加更多后端。

    🎯 典型使用场景

    场景一:日常开发任务自动化

    自动完成代码review依赖更新issue拆解等重复性工作,减少人工投入。例如:每晚自动检查依赖更新并创建PR,或自动review PR代码并给出建议。

    场景二:多环境代理管理

    团队共享云端代理处理公共任务,个人本地代理处理私有开发任务,在同一界面统一管控。例如:团队用云端代理处理CI/CD任务,开发者用本地代理进行私密项目开发。

    场景三:第三方工具联动

    GitHub收到新Issue时自动触发代理拆解任务,定时生成项目报告推送到Slack,实现开发流程自动化。支持与Slack、GitHub、Linear、Notion等工具集成。

    场景四:7×24小时任务运行

    部署到云端服务器后,代理可以在本地机器关闭后持续运行,满足异步任务、定时任务的需求。例如:每晚凌晨2点自动运行测试套件并生成报告。

    🏗️ 技术架构

    Agent Canvas整体由三部分组成,采用前后端分离的现代化架构设计:

    🎨 前端界面

    Agent Canvas 作为统一的管理入口,支持连接多个后端、创建自动化流程、管理代理任务。

    ⚙️ Agent Server

    REST API服务,负责在单台机器上运行多个代理,可通过 OpenHands/software-agent-sdk 扩展。

    🔄 Automation Server

    配合Agent Server使用,支持定时任务、事件触发类的自动化流程,源码位于 OpenHands/automation

    核心特点

    • 🔒 安全可控:支持Docker沙箱隔离,避免代理直接访问宿主机文件系统
    • 📈 高扩展性:兼容ACP协议的任意代理,支持任意LLM接入,第三方工具集成门槛低
    • 🚀 部署灵活:支持本地、Docker、虚拟机、云端、企业基础设施等多种部署方式
    • 🌐 开源生态:项目完全开源,配套完整的开发文档、贡献指南、社区支持

    💡 推荐理由

    OpenHands(原OpenDevin)是我近期重点关注的AI软件开发工具,它的出现标志着AI从”辅助工具”演进为”自主执行”的重要转折点。以下是我推荐它的几个核心理由:

    ✅ 完整的企业级功能

    不同于简单的AI编程助手,OpenHands提供了完整的工程化能力:多代理编排、定时任务、Webhook触发、第三方工具集成等。它可以真正成为你的”AI团队成员”,而不仅仅是代码补全工具。

    ✅ 灵活的部署选项

    支持从本地测试到企业级部署的全场景覆盖。Docker沙箱模式既保证了安全性,又保留了灵活性。对于关心数据隐私的团队,可以完全自托管,不依赖任何第三方服务。

    ✅ 开放的生态系统

    通过ACP协议,OpenHands可以无缝接入几乎所有主流AI编程工具(Claude Code、Codex、Gemini、DeepSeek等)。这种开放架构避免了供应商锁定,让你可以根据任务和预算灵活切换模型。

    ✅ 活跃的开源社区

    截至2026年6月,OpenHands已获得77.8K+ Stars,拥有活跃的贡献者社区。活跃的社区意味着丰富的插件、快速的问题响应和持续的功能迭代。

    💬 个人使用心得:OpenHands最适合有一定技术基础的开发者或团队。如果你是个人开发者,可以从无沙箱模式快速上手;如果是企业用户,建议使用Docker沙箱或云端部署。它的学习曲线略陡,但一旦掌握,能显著提升开发效率。

    ⚖️ 与同类工具对比

    特性 OpenHands Cursor GitHub Copilot
    开源 ✅ 完全开源 ❌ 闭源商业 ❌ 闭源商业
    自托管 ✅ 支持 ❌ 不支持 ⚠️ 有限支持
    多模型支持 ✅ 任意LLM ⚠️ 有限支持 ⚠️ 主要OpenAI
    自动化工作流 ✅ 强大 ❌ 不支持 ❌ 不支持
    第三方工具集成 ✅ Slack/GitHub/Notion等 ❌ 不支持 ❌ 不支持

    📥 下载地址

    🌐 官方网站

    https://openhands.dev
    产品介绍、云服务、文档入口

    📚 官方文档

    https://docs.openhands.dev
    安装指南、API文档、开发手册

    💻 GitHub仓库

    github.com/OpenHands/OpenHands
    源码、Issue、PR、社区讨论

    🐳 Docker镜像

    ghcr.io/openhands/agent-canvas
    容器化部署,一键启动

    📦 快速安装

    npm install -g @openhands/agent-canvas
    agent-canvas

    启动后访问 http://localhost:8000 开始使用

    🎬 结语

    OpenHands代表了AI辅助软件开发的新范式——从”代码补全”到”自主执行”。它不仅仅是一个编程助手,更是一个可以24/7工作的AI工程团队。无论你是个人开发者希望提升效率,还是企业团队需要自动化开发流程,OpenHands都值得一试。

    最重要的是,作为一个完全开源的项目,OpenHands避免了供应商锁定,让你可以完全掌控自己的开发工具链。在数据隐私日益重要的今天,这种自托管能力显得尤为珍贵。

    如果你对AI驱动的开发自动化感兴趣,不妨从本地测试模式开始,体验一下让AI成为你”工程团队成员”的感觉。🚀


    ⭐ 如果你觉得这篇文章对你有帮助,请在GitHub上给 OpenHands 点个Star!

    标签:
    #AI Agent ·
    #LLM ·
    #AI开源项目 ·
    #自动化

  • MetaGPT 62K+ Stars:首个AI软件公司多智能体框架,自然语言编程的未来

    MetaGPT Logo

    📦 项目简介

    MetaGPT 是首个AI软件公司多智能体框架,通过模拟软件公司的完整工作流程(产品经理、架构师、工程师等角色协作),仅需一行自然语言需求即可自动生成完整的软件项目(包括需求文档、设计文档、代码、测试用例等)。

    62K+
    GitHub Stars

    MIT
    开源许可

    10+
    智能体角色

    ⚙️ 安装要求和过程

    环境要求

    • Python: 3.9 ≤ 版本 < 3.12(推荐 Python 3.9)
    • Node.js: 需要安装 Node.js 和 pnpm
    • LLM API: OpenAI / Azure / Ollama / Groq 等(二选一或配置多个)

    快速安装

    方式一:稳定版安装(推荐)
    pip install --upgrade metagpt

    方式二:最新版安装
    pip install --upgrade git+https://github.com/geekan/MetaGPT.git

    方式三:Docker 安装
    docker run -it metagpt/metagpt:latest

    配置 LLM API

    # 创建配置文件
    metagpt --init-config
    
    # 编辑 ~/.metagpt/config.yml,填入你的 API Key
    # 例如 OpenAI:
    # llm:
    #   api_type: openai
    #   api_key: "sk-xxx"
    #   model: "gpt-4"

    🎯 核心功能

    1. 全流程软件公司模拟 🏢

    内置产品、架构、项目管理、工程等多角色智能体,严格遵循软件行业 SOP(标准作业程序),从需求输入到最终代码产出全流程自动化。每个角色都有其专业知识和职责,共同协作完成复杂软件项目。

    2. 自然语言编程 💬

    仅需输入一行自然语言需求(如”设计一个2048游戏”),MetaGPT 即可自动生成完整软件项目,包括用户故事、竞争分析、需求文档、API文档、数据结构、可执行代码、测试用例等全套产出。

    3. 数据解释器(Data Interpreter)📊

    内置专门的数据分析角色,支持数据分析、代码生成、可视化绘图等任务。例如可直接对 sklearn 鸢尾花数据集做分析并生成图表,大幅简化数据科学工作流程。

    4. 多模型支持 🔄

    兼容 OpenAI、Azure、Ollama、Groq 等多种大模型,可通过配置文件灵活切换。支持本地模型部署,保护数据隐私的同时降低API成本。

    5. 可扩展的多智能体协作框架 🤝

    支持自定义多智能体协作流程,适配不同复杂任务场景。开发者可以基于 MetaGPT 框架设计专属智能体,定义其角色、目标和协作方式,构建个性化的 AI 团队。

    MetaGPT 软件公司架构

    MetaGPT 模拟的软件公司协作流程

    💡 典型使用场景

    场景一:软件项目快速开发 🚀

    案例:输入”设计一个支持多人在线的2048游戏”,MetaGPT 自动生成:

    • 产品需求文档(PRD)
    • 系统设计文档
    • 完整的可执行代码(包含前端界面和游戏逻辑)
    • 单元测试代码

    原本需要一个软件团队几天甚至几周的工作,现在几分钟内即可完成原型开发。

    场景二:数据分析与可视化 📈

    案例:使用 Data Interpreter 角色分析销售数据:

    from metagpt.roles import DataInterpreter
    di = DataInterpreter()
    await di.run("分析sales.csv,生成月度销售趋势图和TOP10客户报表")

    MetaGPT 自动完成数据清洗、分析、可视化全流程,并生成专业的数据报告。

    场景三:多智能体辩论辅助决策 🤔

    案例:模拟多角色观点碰撞,辅助技术选型决策:

    • 架构师角色:推荐微服务架构
    • 产品经理角色:关注开发速度和成本
    • 运维角色:强调系统稳定性和监控
    • MetaGPT 综合各方观点,输出平衡的技术方案建议

    🌟 推荐理由

    MetaGPT 是我见过的最接近”AI软件公司”愿景的开源项目。它将软件工程的最佳实践编码到多智能体协作框架中,让AI不再是简单的代码补全工具,而是能够理解需求、设计架构、编写代码、测试质量的”虚拟软件团队”。

    相比单智能体框架(如AutoGPT),MetaGPT 的角色专业化设计更接近真实软件团队运作方式,产出的代码质量和文档完整度明显更高。特别是它对软件工程 SOP 的尊重(生成需求文档、设计文档、代码、测试的全流程),让我看到了AI辅助软件开发的真正潜力。

    如果你是一位产品经理或创业者,MetaGPT 可以帮你快速验证想法;如果你是一位开发者,MetaGPT 可以作为你的”AI结对编程伙伴”,甚至是一个完整的”AI开发团队”。

    📥 下载地址

    🌐 官方网站

    docs.deepwisdom.ai

    📦 PyPI 安装

    pip install metagpt

    🐳 Docker 镜像

    metagpt/metagpt:latest


    本文由 AI 自动生成