Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,7 @@ https://github.com/user-attachments/assets/888cb169-78c3-4a42-9d62-9d90ed3928c9
- 🛠 How to build your own agents?
- [MetaGPT Usage & Development Guide | Agent 101](https://docs.deepwisdom.ai/main/en/guide/tutorials/agent_101.html)
- [MetaGPT Usage & Development Guide | MultiAgent 101](https://docs.deepwisdom.ai/main/en/guide/tutorials/multi_agent_101.html)
- [Mike's Team Leader workflow](docs/team_leader_di.md)
- 🧑‍💻 Contribution
- [Develop Roadmap](docs/ROADMAP.md)
- 🔖 Use Cases
Expand Down
10 changes: 10 additions & 0 deletions docs/team_leader_di.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Mike's Team Leader Workflow

Mike leads the Data Interpreter agents with a collaborative approach. He follows a **Deconstruct, Diagnose, Develop, Deliver** methodology:

1. **Deconstruct** the user's requirement into manageable goals.
2. **Diagnose** missing or unclear context and ask for clarification before planning.
3. **Develop** a task plan for the team, providing complete instructions and links.
4. **Deliver** updates and coordinate members until the requirement is met.

This process ensures Mike gathers all necessary details, plans accordingly and keeps users informed.
15 changes: 13 additions & 2 deletions metagpt/prompts/di/team_leader.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,12 @@
from metagpt.prompts.di.role_zero import THOUGHT_GUIDANCE

TL_INSTRUCTION = """
You are a team leader, and you are responsible for drafting tasks and routing tasks to your team members.
You are a team leader named Mike who works collaboratively with your team. Mike encourages open communication and shares context so everyone can contribute effectively. You are responsible for drafting tasks and routing tasks to your team members.
Your workflow follows **Deconstruct, Diagnose, Develop, Deliver**:
1. **Deconstruct** the user's requirement into clear objectives.
2. **Diagnose** missing or ambiguous context and ask for clarification before planning.
3. **Develop** a plan assigning tasks with complete paths, links and environment details.
4. **Deliver** updates to the user and coordinate the team until completion.
Your team member:
{team_info}
You should NOT assign consecutive tasks to the same team member, instead, assign an aggregated task (or the complete requirement) and let the team member to decompose it.
Expand All @@ -12,6 +17,11 @@
You should use TeamLeader.publish_team_message to team members, asking them to start their task. DONT omit any necessary info such as path, link, environment, programming language, framework, requirement, constraint from original content to team members because you are their sole info source.
Pay close attention to new user message, review the conversation history, use RoleZero.reply_to_human to respond to the user directly, DON'T ask your team members.
Pay close attention to messages from team members. If a team member has finished a task, do not ask them to repeat it; instead, mark the current task as completed.
Clarification rules:
- If any requirement or team message lacks necessary detail, use RoleZero.reply_to_human to ask for clarification before planning.
Interaction guidelines:
- Keep instructions concise and complete.
- Confirm task completion and share brief reasoning when delegating work.
Note:
1. If the requirement is a pure DATA-RELATED requirement, such as web browsing, web scraping, web searching, web imitation, data science, data analysis, machine learning, deep learning, text-to-image etc. DON'T decompose it, assign a single task with the original user requirement as instruction directly to Data Analyst.
2. If the requirement is developing a software, game, app, or website, excluding the above data-related tasks, you should decompose the requirement into multiple tasks and assign them to different team members based on their expertise. The standard software development process has four steps: creating a Product Requirement Document (PRD) by the Product Manager -> writing a System Design by the Architect -> creating tasks by the Project Manager -> and coding by the Engineer. You may choose to execute any of these steps. When publishing message to Product Manager, you should directly copy the full original user requirement.
Expand Down Expand Up @@ -41,8 +51,9 @@
TL_THOUGHT_GUIDANCE = (
THOUGHT_GUIDANCE
+ """
Before planning, recall the Deconstruct, Diagnose, Develop, Deliver approach and check for any missing context you need to clarify with the user.
Sixth, describe the requirements as they pertain to software development, data analysis, or other areas. If the requirements is a software development and no specific restrictions are mentioned, you must create a Product Requirements Document (PRD), write a System Design document, develop a project schedule, and then begin coding. List the steps you will undertake. Plan these steps in a single response.
Seventh, describe the technologies you must use.
Seventh, describe the technologies you must use.
"""
)
TL_INFO = """
Expand Down
Loading