MetaGPT is an open-source framework that simulates a software company using AI agents, facilitating natural language programming by automating workflows. It is developed by the organization DeepWisdom and has a strong community presence with significant GitHub engagement. The project is in a growth phase, actively developing new features and addressing integration challenges.
better629
xiangjinyu
metagpt/ext/spo
.HuiDBK (liuminhui)
metagpt/tools/libs
.ElvisClaros, iorisa, Terrdi, jason-jszhang
base_url
inclusion.Timespan | Opened | Closed | Comments | Labeled | Milestones |
---|---|---|---|---|---|
7 Days | 14 | 4 | 14 | 13 | 1 |
30 Days | 24 | 11 | 26 | 23 | 1 |
90 Days | 67 | 74 | 153 | 44 | 1 |
1 Year | 242 | 200 | 699 | 171 | 2 |
All Time | 769 | 716 | - | - | - |
Like all software activity quantification, these numbers are imperfect but sometimes useful. Comments, Labels, and Milestones refer to those issues opened in the timespan in question.
Developer | Avatar | Branches | PRs | Commits | Files | Changes |
---|---|---|---|---|---|---|
xiangjinyu | ![]() |
1 | 0/0/0 | 33 | 20 | 1167 |
better629 | ![]() |
1 | 0/0/0 | 3 | 1 | 55 |
None (HuiDBK) | 0 | 0/1/0 | 0 | 0 | 0 | |
Terrdi (Terrdi) | 0 | 2/0/0 | 0 | 0 | 0 | |
Guess (iorisa) | 0 | 1/0/0 | 0 | 0 | 0 | |
Isaac (XiangJinyu) | 0 | 2/3/0 | 0 | 0 | 0 | |
Elvis Claros Castro (ElvisClaros) | 0 | 1/0/0 | 0 | 0 | 0 | |
None (jason-jszhang) | 0 | 1/0/0 | 0 | 0 | 0 |
PRs: created by that dev and opened/merged/closed-unmerged during the period
Risk | Level (1-5) | Rationale |
---|---|---|
Delivery | 3 | The project shows active engagement with issues and pull requests, but the increasing backlog of issues (more opened than closed over the past year) and limited milestone setting indicate potential delivery risks. Configuration complexities and integration challenges with LLMs further exacerbate these risks, potentially slowing down user onboarding and increasing error likelihood. |
Velocity | 3 | The project exhibits moderate velocity with active pull request activity but faces potential bottlenecks due to unresolved long-standing PRs and reliance on key contributors like Xiangjinyu. The uneven workload distribution among team members could impact overall progress, suggesting a moderate risk to velocity. |
Dependency | 4 | Integration challenges with external LLMs and reliance on key contributors for specific features (e.g., SPO) highlight significant dependency risks. Issues related to unsupported API types and incorrect configurations further underscore these concerns, indicating a high dependency risk that may affect project stability. |
Team | 3 | The analysis reveals uneven contribution levels among team members, with some developers not committing recently. This could indicate potential team dynamics issues or workload imbalances. However, active collaboration in pull requests suggests a moderate team risk overall. |
Code Quality | 3 | Recent pull requests show efforts to improve code quality through bug fixes and feature enhancements. However, the lack of comprehensive testing and documentation in several PRs raises concerns about maintainability and potential technical debt, suggesting a moderate risk to code quality. |
Technical Debt | 3 | The project demonstrates ongoing optimization efforts and feature additions, but the absence of detailed testing or documentation in several areas highlights potential technical debt risks. The reliance on key contributors for major features also suggests areas where technical debt could accumulate if not managed properly. |
Test Coverage | 4 | The lack of comprehensive tests accompanying many pull requests and the frequent occurrence of runtime errors in issues suggest insufficient test coverage. This poses a high risk as it may lead to undetected bugs or regressions impacting project reliability. |
Error Handling | 4 | Frequent JSON decoding errors and connection issues reported in recent issues indicate significant gaps in error handling. The lack of robust mechanisms to manage and report errors effectively suggests a high risk in this area, which could affect software stability and user experience. |
Recent activity in the MetaGPT GitHub repository shows a diverse range of issues, including bug reports, feature requests, and user inquiries. Notably, there are several issues related to integration with various LLMs, configuration challenges, and usage of specific models like GPT-4o and Ollama. Some users have reported errors related to JSON decoding and connection issues, indicating potential areas for improvement in error handling and API integration.
Integration Challenges: Several issues (#1370, #1369) highlight difficulties in integrating MetaGPT with specific LLMs like Amazon Bedrock and Gemini. Users report errors related to unsupported API types or incorrect configurations.
Configuration Issues: A recurring theme is the complexity of configuring MetaGPT to work with different models and environments. Issues such as #1334 and #1344 indicate confusion around configuration files and environment setup.
Error Handling: Many users encounter JSONDecodeError (#1339, #1366) or connection errors (#1346), suggesting that MetaGPT could benefit from more robust error handling mechanisms.
Feature Requests: There are requests for new features such as embedding support for Claude API (#1351) and dynamic tool creation (#1495). These indicate user interest in expanding MetaGPT's capabilities.
Documentation Gaps: Users frequently request clearer documentation on configuring and using MetaGPT with various models (#1371, #1365).
These issues primarily focus on technical bugs related to API configurations and model interactions, highlighting areas where the project may need refinement or additional documentation to assist users in troubleshooting these problems.
Overall, the activity suggests a vibrant community engaging actively with the project, contributing both through issue reporting and feature suggestions. The themes identified indicate potential areas for improvement in user experience, particularly around configuration ease and error handling robustness.
PR #1712: fix(provider): ensure base_url is always included in params
base_url
was only included if a proxy was set. The change ensures base_url
is always included, improving flexibility and correctness.metagpt/provider/openai_api.py
PR #1710: fixbug: [#1703](https://github.com/geekan/MetaGPT/issues/1703) & [#1709](https://github.com/geekan/MetaGPT/issues/1709)
metagpt/provider/openai_api.py
, metagpt/utils/token_counter.py
PR #1704: Support response format&llmstudio
response_format
field to standardize output.PR #1679: Feat role ut
PR #1580: chainlit ui example supporting incremental features.
PR #1694: Modify some files, about AFlow and SPO
PR #1683: Implement Self-Supervised Prompt Optimizer (SPO)
Modify AFlow optimize_prompt.py
Overall, maintaining a balance between addressing immediate bug fixes and integrating long-term feature developments will be crucial for sustaining the project's momentum and community engagement.
examples/spo/README.md
metagpt/ext/aflow/scripts/prompts/optimize_prompt.py
metagpt/ext/spo/utils/evaluation_utils.py
examples/spo/config2.example.yaml
metagpt/ext/spo/app.py
docs/resources/spo/SPO-closed_task_figure.png
& docs/resources/spo/SPO-method.png
examples/spo/optimize.py
metagpt/ext/spo/components/evaluator.py
metagpt/ext/spo/components/optimizer.py
The files collectively provide a comprehensive framework for Self-Supervised Prompt Optimization within MetaGPT. The documentation is generally clear but could benefit from more inline comments in code files to enhance maintainability. The use of modern Python features like asyncio demonstrates a focus on performance efficiency. Overall, the structure supports scalability and ease of use across different interfaces (CLI, GUI).
better629
xiangjinyu
metagpt/ext/spo
directory.HuiDBK (liuminhui)
metagpt/tools/libs
directory.Other Contributors (ElvisClaros, iorisa, Terrdi, jason-jszhang, XiangJinyu)
Focus on Documentation: There has been a notable emphasis on updating and maintaining the README.md files across different sections of the project. This indicates an effort to keep documentation current and informative for users and contributors.
Development of SPO Feature: The Self-Supervised Prompt Optimizer (SPO) is a significant area of development activity, with numerous commits by xiangjinyu. This suggests that SPO is either a new feature or undergoing major enhancements.
Testing Enhancements: HuiDBK's contributions are focused on improving unit tests for various tools, indicating an emphasis on ensuring code quality and reliability.
Collaboration: There is evidence of collaboration between team members, particularly between xiangjinyu and better629, as seen in the merging of pull requests.
Inactive Contributors: Several contributors have not been active recently, which might suggest a concentrated effort by a few key developers or a temporary lull in contributions from others.
Overall, the recent activities suggest a focus on enhancing specific features like SPO and maintaining robust documentation and testing practices.