MetaGPT

把一句软件需求编排为多角色协作的软件开发流程。

Star 数
★ 71k
最近更新
9 个月前
License
MIT
主语言
Python

30 秒速览

运行形态
命令行工具代码库 / SDK开发框架
可在哪里用
通用 · 跨平台OpenAI API
费用
软件免费,模型调用费用自付
上手难度
中 · 需要几步配置
开始前需要
Python >=3.9, <3.12Node.jspnpmShell / 命令行网络访问本地文件系统
典型场景
独立开发者只有一句“创建 2048 游戏”的产品想法,希望先生成一个位于本地 workspace 的项目仓库。
不适合
  • 只装了 Python 3.12 及以上版本、不想额外安装 Node.js 和 pnpm 的用户
  • 希望开箱即用、不愿手动编辑 ~/.metagpt/config2.yaml 并自备 API key 的用户

这个 Agent 能做什么,适合哪些场景?

MetaGPT 是一个面向软件开发的多智能体框架,将一句需求交给产品经理、架构师、项目经理和工程师等角色协作处理。它以“Code = SOP(Team)”为核心理念,将标准作业流程应用于由 LLM 组成的团队。框架可生成用户故事、竞品分析、需求、数据结构、API 和文档等产物,并可通过 CLI 在 ./workspace 创建项目仓库。除命令行外,它还提供 Python 库接口,包括 generate_repo 和 ProjectRepo。仓库还提供 DataInterpreter 角色,可通过异步 Python 调用执行数据分析任务并包含图表。

用户可运行 metagpt "Create a 2048 game" 提交自然语言需求;MetaGPT 按其软件公司角色与 SOP 处理需求,并在 ./workspace 创建仓库。Python 中可调用 metagpt.software_company.generate_repo("Create a 2048 game"),获得 ProjectRepo 并打印项目结构。运行前可用 metagpt --init-config 创建 ~/.metagpt/config2.yaml,在其中设置 llm.api_type、model、base_url 和 api_key。数据任务可实例化 metagpt.roles.di.data_interpreter.DataInterpreter,再以 await di.run(...) 运行分析请求。

  1. 独立开发者只有一句“创建 2048 游戏”的产品想法,希望先生成一个位于本地 workspace 的项目仓库。
  2. 产品负责人需要把简短需求展开为用户故事、需求、数据结构、API 和文档等软件交付物。
  3. 团队想试验由产品经理、架构师、项目经理和工程师角色共同执行的软件开发 SOP。
  4. Python 开发者希望在自己的程序中调用 generate_repo,并通过 ProjectRepo 检查生成的项目结构。
  5. 数据分析人员希望用 DataInterpreter 对 sklearn Iris 数据集执行分析并请求包含图表的结果。

如何安装或部署这个 Agent?

需要 Python 3.9 或更高版本、但低于 3.12,并在实际使用前安装 Node.js 和 pnpm。

安装:

pip install --upgrade metagpt

初始化配置:

metagpt --init-config

编辑 ~/.metagpt/config2.yaml,至少填写:

llm.api_type: "openai"
llm.model: "gpt-4-turbo"
llm.base_url: "https://api.openai.com/v1"
llm.api_key: "YOUR_API_KEY"

README 还列出 Azure、Ollama、Groq 等 api_type 选项。

如何使用这个 Agent?

配置完成后,执行:

metagpt "Create a 2048 game"

该命令会在 ./workspace 创建仓库。作为 Python 库使用时:

from metagpt.software_company import generate_repo
repo = generate_repo("Create a 2048 game")
print(repo)

数据分析场景可创建 DataInterpreter() 并在异步函数中调用 await di.run("Run data analysis on sklearn Iris dataset, include a plot")。

这个 Agent 有哪些优点和局限?

优点
  • 将产品经理、架构师、项目经理和工程师等明确角色编排进软件公司式流程,而非只提供单一生成调用。
  • 同一自然语言需求可面向用户故事、竞品分析、需求、数据结构、API、文档和项目仓库等多类产物。
  • 同时提供 metagpt CLI、generate_repo/ProjectRepo Python 接口,以及 DataInterpreter 示例。
  • 配置示例明确支持 OpenAI,并列出 Azure、Ollama、Groq 等可选 api_type。
局限
  • 运行环境限定为 Python 3.9 至低于 3.12,且实际使用前还需要 Node.js 与 pnpm。
  • 必须配置模型服务的 api_key、模型和端点;README 未提供模型调用成本或费用估算。
  • 默认 CLI 工作流会在 ./workspace 创建项目仓库,并会在用户目录创建或读取 ~/.metagpt/config2.yaml。
  • README 的软件公司架构图注明“Gradually Implementing”,未逐项说明所有角色流程的实现完整度。

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

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
MetaGPT 当前 41 · 缺口较多 命令行工具免费 + 模型费 ★ 71k 9 个月前 Python OpenAI API
Lemon AI 39 · 缺口较多 自托管服务免费版 + 付费版 ★ 1.6k 9 个月前 JavaScript OpenAI API · Claude API
SpecShip 工程工作流 61 · 存在缺口 Agent 插件 / 技能 ★ 257 3 个月前 Shell —
OpenLoopX · LLM4AD Next 58 · 缺口较多 命令行工具免费 + 模型费 ★ 694 1 天前 Python OpenAI API · Claude API

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
41/ 100 五分制 2.1 / 5
信任安全 7/29
可靠稳定 6/14
适用触发 9/18
规范维护 9/18
有效结果 7/13
证据核验 3/8
查看各维度的扣分理由
信任安全7 / 29 · 1.2/5

证据显示:README 要求用户配置 API 密钥,但未说明最小权限原则;测试配置包含模拟密钥,但未说明生产环境处理;依赖列表包含多个包,但未提供安全审计;存在外部网络调用(如搜索、API),但未明确用户确认机制;未提供回滚机制;来源归属仅通过 README 中的作者和联系方式体现。扣分原因:缺少用户确认、数据流透明度和回滚机制。

可靠稳定6 / 14 · 2.1/5

证据显示:README 和测试配置一致,但依赖版本固定,可能影响可用性;失败消息未在文档中明确。扣分原因:依赖可用性未充分保证,失败消息不明确。

适用触发9 / 18 · 2.5/5

证据显示:README 提供了多种使用场景(CLI、库、Data Interpreter),但能力边界未明确;触发精度未详细说明;环境要求(Python 版本、Node、pnpm)已列出。扣分原因:能力边界和触发精度描述不足。

规范维护9 / 18 · 2.5/5

证据显示:README 结构清晰,安装说明详细,有示例和 FAQ 链接,但已知限制未明确;版本变更日志未提供;维护责任通过联系邮箱和 Discord 体现。扣分原因:已知限制和版本变更日志缺失。

有效结果7 / 13 · 2.7/5

证据显示:输出为代码仓库,可用性高;边际价值明显(多智能体框架);成本效益未详细说明。扣分原因:成本效益分析不足。

证据核验3 / 8 · 1.9/5

证据显示:README 中的声明部分有论文引用,但未提供具体证据;跨来源验证不足;事实与推断未明确区分。扣分原因:声明可追溯性不足,事实与推断混淆。

风险与缓解建议
  • 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
  • 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
  • 依赖版本固定,可能影响安全更新和兼容性。
  • 测试配置包含模拟密钥,但生产环境密钥管理未说明。
  • 外部网络调用(如搜索、API)可能涉及数据外发,需用户确认。
证据充分度:低 评估于 2026年8月9日 审查版本 11cdf466d042
查看完整评分方法 →

最近版本

来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。

  1. v0.8.2
    发布说明摘录
    fix bugs and some merged PRs
    在 GitHub 查看 ↗
  2. v0.8.1 Patch release: v0.8.1
    发布说明摘录
    fix bug
    在 GitHub 查看 ↗
  3. v0.8.0 v0.8.0: Introduction of Data Interpreter, Integration with RAG, and Expanded Support for LLMs
    发布说明摘录
    Release Highlights Data Interpreter: Open Source and Better "Devin" Data Interpreter is an autonomous agent that uses notebook, browser, shell, stable diffusion, and any custom tool to complete tasks. Data Interpreter has achieved state-of-the-art scores in machine learning, mathematical reasoning, and open-ended tasks, and can analyze stocks, imitate websites, and train models. It can debug code by itself, fix failures by itself, and solve a large number of real-life problems by itself. …
    在 GitHub 查看 ↗

常见问题

需要哪类模型凭据?
配置示例使用 OpenAI API,并要求在 ~/.metagpt/config2.yaml 中填写 api_key、model 与 base_url。README 还列出 Azure、Ollama、Groq 等 api_type 选项。
它会写入本机哪些位置?
metagpt --init-config 会创建 ~/.metagpt/config2.yaml;示例 CLI 会在 ./workspace 创建项目仓库。
能否嵌入已有 Python 程序?
可以。README 给出了 generate_repo 和 ProjectRepo 的库调用方式,也给出了异步调用 DataInterpreter.run 的示例。
安装后为什么还需要 Node.js 和 pnpm?
README 明确要求在实际使用前安装 Node.js 和 pnpm,但未在所给内容中进一步说明它们分别用于哪些步骤。
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

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

相关 Agents