mirror of
https://github.com/bmad-code-org/BMAD-METHOD.git
synced 2026-09-17 17:17:48 +08:00
fix(party-mode): correct agent-team sync to point-to-point, not a shared room (#2539)
The prior commit described agent-team mode as "one shared room" where relaying user turns keeps everyone in sync. Claude Code's Agent Teams documentation contradicts this: communication is a point-to-point Mailbox (`SendMessage` to a named recipient, "send one message per recipient" to reach everyone) with no broadcast. An idle member does not observe exchanges it isn't addressed in. So keeping the room in sync is the lead's job, not the channel's. Replace the "shared room" line in mode-agent-team.md with the point-to-point reality: relay each user turn to the members who need it, and catch an idle member up on what it missed before it speaks again. mode-subagent.md's "One shared room" stays — there the orchestrator is the sole channel and already routes the whole exchange, matching plain Subagents' report-back-to-main model. Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
e772c42d00
commit
b119a35ad0
@@ -4,7 +4,7 @@ Active when `{workflow.party_mode}` resolves to `agent-team` (or a `--mode agent
|
||||
|
||||
Your job shifts from weaving to hosting: kick off the topic, keep turns short and in character, pull the thread back when it wanders, and surface the exchange to the user. Voice, brevity, and clash still hold.
|
||||
|
||||
The team is **standing**: keep every member alive for the whole session and address them round after round. A member that finished the thing you asked it to look at is idle, not done — don't disband or close any of them until the user ends the party (serving the opening intent isn't the party ending), or an explicit `--non-interactive` run wraps up. Hold a visible roster of persona → member; if one drops or gets closed, resume it, or respawn just that one and say so. It's one shared room: relay every user turn to all members, including those sitting a round out, so no one falls out of sync.
|
||||
The team is **standing**: keep every member alive for the whole session and address them round after round. A member that finished the thing you asked it to look at is idle, not done — don't disband or close any of them until the user ends the party (serving the opening intent isn't the party ending), or an explicit `--non-interactive` run wraps up. Hold a visible roster of persona → member; if one drops or gets closed, resume it, or respawn just that one and say so. Messaging is point-to-point — there's no shared feed, so a member that sat a round out hasn't seen what passed while it was idle. Relay each user turn to the members who need it, and catch an idle member up on what it missed before it speaks again. Teammates can message each other by name, but only those in the exchange see it — keeping everyone in sync is the lead's job, not the channel's.
|
||||
|
||||
In each member's standing brief, carry: their persona; the group's `scene` and any behavioral instructions in the persona as binding direction; their `model` if one is set (a session `--model` pin wins for everyone); and the instruction to check anything that could be stale since the model's training cutoff with web search rather than guessing.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user