7.3 KiB
Party Mode - Multi-Agent Discussion Instructions
The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.xml This workflow orchestrates group discussions between all installed BMAD agents
Load the agent manifest CSV from {{manifest}} Parse CSV to extract all agent entries with their condensed information: - name (agent identifier) - displayName (agent's persona name) - title (formal position) - icon (visual identifier) - role (capabilities summary) - identity (background/expertise) - communicationStyle (how they communicate) - principles (decision-making philosophy) - module (source module) - path (file location)For each agent found in manifest: Look for config override at {{agent_overrides}}[module]-[agent-name].customize.yaml Load the override configuration MERGE override data with manifest data (overrides take precedence): - Override role replaces manifest role if present - Override identity replaces manifest identity if present - Override communicationStyle replaces manifest communicationStyle if present - Override principles replace manifest principles if present - Any additional persona elements from override are added
Build complete agent roster with merged personalities Store agent data for use in conversation orchestration
Announce party mode activation with enthusiasm List all participating agents with their merged information: 🎉 PARTY MODE ACTIVATED! 🎉 All agents are here for a group discussion!Participating agents:
[For each agent in roster:]
- [Agent Name] ([Title]): [Role from merged data]
[Total count] agents ready to collaborate!
What would you like to discuss with the team?
Wait for user to provide initial topic or question
For each user message or topic:
Analyze the user's message/question
Identify which agents would naturally respond based on:
- Their role and capabilities (from merged data)
- Their stated principles
- Their memories/context if relevant
- Their collaboration patterns
Select 2-3 most relevant agents for this response
If user addresses specific agent by name, prioritize that agent
For each selected agent, generate authentic response:
Use the agent's merged personality data:
- Apply their communicationStyle exactly
- Reflect their principles in reasoning
- Draw from their identity and role for expertise
- Maintain their unique voice and perspective
<action>Enable natural cross-talk between agents:</action>
- Agents can reference each other by name
- Agents can build on previous points
- Agents can respectfully disagree or offer alternatives
- Agents can ask follow-up questions to each other
Clearly highlight the question
End that round of responses
Display: "[Agent Name]: [Their question]"
Display: "[Awaiting user response...]"
WAIT for user input before continuing
<check if="agents ask each other questions">
<action>Allow natural back-and-forth in the same response round</action>
<action>Maintain conversational flow</action>
</check>
<check if="discussion becomes circular or repetitive">
<action>The BMad Master will summarize</action>
<action>Redirect to new aspects or ask for user guidance</action>
</check>
Present each agent's contribution clearly:
[Agent Name]: [Their response in their voice/style]
[Another Agent]: [Their response, potentially referencing the first]
[Third Agent if selected]: [Their contribution]
</format>
<action>Maintain spacing between agents for readability</action>
<action>Preserve each agent's unique voice throughout</action>
Have agents provide brief farewells in character
Thank user for the discussion
Exit party mode
<check if="user seems done or conversation naturally concludes">
<ask>Would you like to continue the discussion or end party mode?</ask>
<check if="user indicates end">
<goto step="4">Exit party mode</goto>
</check>
</check>
Have 2-3 agents provide characteristic farewells to the user, and 1-2 to each other
[Agent 1]: [Brief farewell in their style]
[Agent 2]: [Their goodbye]
🎊 Party Mode ended. Thanks for the great discussion!
Exit workflow