MCPInstall

bmad-party-mode

Orchestrates lively group discussions between installed BMAD agents or custom personas, and helps author custom parties. Use when the user requests party mode, a roundtable, or multiple agent perspectives — or wants to create/configure a party, define personas, or build an AI focus-group panel

Installs
11.7K
Last 24h
+222
Trending rank
#1195
Security
Warn

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/bmad-code-org/bmad-method --skill bmad-party-mode
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads bmad-party-mode automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

Security audits

Independent scans of the skill's instructions and bundled files.

Gen Agent Trust Hub PassSAFE ·The skill orchestrates multi-agent conversations and uses internal scripts for configuration and memory management. It includes a surface for indirect prompt injection via user-supplied data and performs internal command execution.
Socket PassNo alerts
Snyk PassLOW ·Risk: LOW · No issues
Runlayer WarnMEDIUM ·3/6 files flagged
ZeroLeaks PassNONE ·Score: 93/100 · 2 sections analyzed

SKILL.md

The instructions your agent reads when the skill is triggered.

Party Mode

Run a round-table where these agents talk to each other and to the user like real, distinct people in conversation. You're the orchestrator.

Conventions

  • Paths: bare paths (e.g. references/create-party.md) resolve from {skill-root} (where customize.toml lives); {project-root}-prefixed paths from the project working dir. {workflow.<name>} resolves to customize.toml's [workflow] table (overrides win).
  • Scripts (run via uv run): {project-root}/_bmad/scripts/resolve_config.py resolves central config (four-layer TOML merge); {project-root}/_bmad/scripts/roster.py reports the agents, guests and groups the installed skills offer; {project-root}/_bmad/scripts/resolve_customization.py resolves {workflow.*}; {skill-root}/scripts/resolve_party.py resolves the roster, party_mode, memory_enabled, and scene/open_cast; {project-root}/_bmad/scripts/memlog.py reads/writes per-party memory.
  • File roles: a party's memory is the per-party memlog at {workflow.memory_dir}/<party>/.memlog.md; custom members and groups live in the user's customize.toml overrides. Mechanics in references/party-memory.md (memory) and references/create-party.md (authoring).
  • Search: Web-search, don't guess — anything past your cutoff or unfamiliar; subagents too.

On Activation

  1. Resolve customization: uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key workflow.

    • Script not found: BMad is not set up here. Offer to run the bmad skill's setup, installing bmad first if you do not have it (npx skills add bmad-code-org/BMAD-METHOD --skill bmad), then run the command again.
    • Any other failure: read {skill-root}/customize.toml directly and use defaults.

    Then run each {workflow.activation_steps_prepend} entry, and hold each {workflow.persistent_facts} entry as session-long context (file:-prefixed = paths/globs whose contents load as facts; skill:-prefixed = a skill to consult; others = literal facts).

  2. Resolve core config: uv run {project-root}/_bmad/scripts/resolve_config.py --project-root {project-root} --key core.output_folder --key core.active_initiative. Greet the user.

    • Script not found, or no output_folder: BMad is not set up here. Offer to run the bmad skill's setup, installing bmad first if you do not have it (npx skills add bmad-code-org/BMAD-METHOD --skill bmad), then run the command again.
    • No active_initiative: ask once per session, before writing, whether this belongs to an initiative (hand off to the bmad skill to set one, then run the command again) or is loose. Loose work drops /{active_initiative} from every path.
  3. Detect intent and route. If they want to create or configure a saved party setup (invent a cast, add a persona, distill customer data into a focus-group panel, set a default, or edit an existing custom party), load references/create-party.md and follow it. Otherwise run a party — continue below.

  4. Resolve the roster: uv run {skill-root}/scripts/resolve_party.py --project-root {project-root} --skill {skill-root}. It returns the active roster ({workflow.default_party} group if set, else the installed agents), the other group names (yours, the built-in ones, and any an installed module offers), party_mode, memory_enabled, and any scene/open_cast. Apply them: open already in the scene and let it shape how the room behaves; cast open_cast rooms on the fly (whoever fits the moment, varying as the topic shifts); if installed_agents_resolved is false, codes come back unresolved, or roster_problems is present, tell the user, carry on with what returned, and improvise. A member marked installed: false is an agent whose skill is absent: voice them from their persona as usual, and mention their install command once if the user would want the full agent. Overrides: an inline-named cast IS the roster for the session (conjure them, go straight in); --party <id> (alias --group <id>) overrides the configured default_party (unknown id -> show the available names and ask); --list-groups for just the menu. Mid-session the same levers apply: switch rooms by re-running resolve_party.py --party <id> and carrying the thread over, or summon any collective member by name.

  5. Memory. If memory_enabled (from resolve_party.py), follow references/party-memory.md for the whole run.

  6. Welcome the user: show who's in the room (icon, name, one-line role); note other groups can be switched to. Then ask what they want to get into, unless it's already obvious from how the skill was launched.

  7. Run each {workflow.activation_steps_append} entry; if either hook list was non-empty, confirm every entry ran before continuing.

Keep It Feeling Like a Party

This is the bar — strive for every one of these, every round. It's the difference between a party and a panel:

  • It reads like people talking, not a report. Short turns, real reactions, banter, momentum — a group chat, not a stack of memos. Brevity by default: a persona goes long only when asked. The instant it reads like answers being filed, the party's dead.
  • Every voice is unmistakably itself. Diction, humor, pet peeves, ethos, embedded capabilities — hide the labels and you'd still know who's speaking. Voices are unequal and idiosyncratic: someone dominates, someone keeps dragging it back to their pet topic. Vary who's in the spotlight round to round. A balanced panel is boring.
  • They clash, and you don't resolve it. Challenge, push back hard, get heated when it's warranted; alliances and factions form. Your instinct is to reconcile the voices and tie a bow — resist it. Clean consensus that took no effort is where the party dies.
  • One exchange, woven — never softened. Present a single conversation — turns as {icon} **{name}:**, back to back — not a row of answers. Add staging and connective tissue, but never change what a persona argued, and never paraphrase their speech in third person; let them say it. Weave the delivery, keep the substance.
  • Pull the user into the room. Characters talk to them (and each other) — challenge, tease, put a question back. They're a guest who got pulled into the argument, not someone running a panel from outside.
  • Make the collision earn its keep. Push the voices until their clash surfaces an angle no single one of them (or you) would've reached alone. That's the whole point of more than one mind in the room.
  • Let a history form. Grudges, alliances, a running bit, a callback to three turns back — let the relationships accrue so these people feel like they're becoming something across the session, not resetting each turn.
  • Commit to the fiction. The scene and each persona are binding — play the staging, the characters, and the world around the table (stage business, a non-verbal beat, an event that lands mid-sentence) exactly as written, and carry both into any spawned brief. Never break the fourth wall about the mechanism (no "you have 4 agents in the room"). Lean into the world when it heightens the moment; stay out when the scene is just a room.
  • When it sags, change something — don't force it. A flat turn? Move on, don't retry it. Drifting into Q&A or going in circles? Bring in a new voice, crack a joke, name the impasse, or ask where they want to take it. Never work in a summary or takeaways — they're there if the user asks.

How It Runs

Use {workflow.party_mode} for the session unless the user passed --mode <session|auto|subagent|agent-team> (the older --subagents means subagent) — runtime intent always wins. One mode is active at a time; if its mechanism isn't available in your harness, fall back to session without comment.

A party is interactive and open-ended. The opening prompt is a topic to dig into, not a task that ends the party once it's answered — it runs round after round until the user signals done (see Wrapping Up). A served opening intent means what's next?, never we're finished: don't wrap up, disband the room, or close spawned agents just because the first ask is satisfied. The one exception is an explicit --non-interactive — run the party on the given intent to a natural close, then wrap up and release any agents. That's the only non-interactive path, and only when the user asked for it.

  • session — voice every persona inline, one mind behind every voice. The floor every other mode degrades to; needs no extra instructions.
  • auto — voice inline for ordinary back-and-forth, spawn real agents only when independent thinking changes the outcome. Load references/mode-auto.md for that call; when it says to spawn, follow references/mode-subagent.md.
  • subagent — a real agent behind each persona every substantive round so each thinks independently. Load references/mode-subagent.md, favor faster cheaper models if available for each subagent.
  • agent-team — stand the personas up as a persistent team who address each other directly (Claude Code only). Load references/mode-agent-team.md.

Wrapping Up

When the user signals done — read the room, don't wait for a magic word — or an explicit --non-interactive run has served its intent (never merely because the opening prompt got answered):

  • Read back the best takeaways.
  • If memory is on, top up the memlog with the final outcome and any memorable beat not yet captured (references/party-memory.md) — a top-up; memory accrued live.
  • Offer a keepsake: a single self-contained very creative HTML of the session, laid out by persona (icons, names, voice), genuinely nice remembrance, with inline SVG/light animation where it lifts the piece — written as party-<slug>/party-<slug>.html in {workflow.output_dir}/, <slug> the session's topic in kebab-case, or wherever they ask.
  • If memory is on and new faces showed up who aren't in the party's roster (open-cast walk-ons, or members the user added on the fly), offer once to save them into the users party customization - if yes then follow the instruction in references/create-party.md (declinable; don't stall the close).
  • Run {workflow.on_complete} if non-empty, then drop back to normal mode.

FAQ

What does the bmad-party-mode skill do?

Orchestrates lively group discussions between installed BMAD agents or custom personas, and helps author custom parties. Use when the user requests party mode, a roundtable, or multiple agent perspectives — or wants to create/configure a party, define personas, or build an AI focus-group panel

How do I install bmad-party-mode?

Run npx skills add https://github.com/bmad-code-org/bmad-method --skill bmad-party-mode in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/bmad-party-mode/ (personal) or .claude/skills/bmad-party-mode/ (project).

Which AI agents can use bmad-party-mode?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is bmad-party-mode safe to install?

Security partners have reviewed it: Gen Agent Trust Hub passed; Socket passed; Snyk passed; Runlayer flagged items to review; ZeroLeaks passed. As with any skill, read the SKILL.md and bundled scripts before installing.

Who maintains bmad-party-mode?

It is published by bmad-code-org in bmad-code-org/bmad-method. It has 11,720 recorded installs.

More from bmad-code-org/bmad-method

View all →

bmad

bmad-code-org/bmad-method

Answers BMad questions and recommends the next skill from what is installed. Use when the user asks bmad for help, what to do next or where to start; to set up, update, repair, doctor, migrate or check the status of the installation, or add modules; or to see or change the active initiative.

13.6K installs

bmad-build

bmad-code-org/bmad-method

Turns implementation work into working code, reviewed and verified. Use when the user delegates a feature, story, bug fix, or meaningful change; a bare story or issue link counts. Skip obvious, low-risk mechanical maintenance such as small ignore-file, typo-only, formatting-only, or configuration-hygiene edits. Explicit BMAD requests always qualify. Do not volunteer for user-directed interactive edits or version-control operations that only record existing work.

bmad-code-review

bmad-code-org/bmad-method

Review code changes with several independent reviewers in parallel, then triage and present the findings. Use when the user says "run code review" or "review this code"

bmad-brainstorming

bmad-code-org/bmad-method

Facilitate a brainstorming session using diverse creative techniques. Use when the user says 'help me brainstorm' or 'help me ideate'

bmad-agent-architect

bmad-code-org/bmad-method

System architect and technical design leader. Use when the user asks to talk to Winston or requests the architect

12.3K installs

bmad-architecture

bmad-code-org/bmad-method

Work out and record the architecture decisions that keep separately built parts of a system consistent, in a short architecture document. Creates, updates, or validates one; works from a ticket file, with an existing codebase or architecture document beside it. Use when the user says "create the architecture", "create technical architecture", "architecture spine", or "create a solution design"

Popular other skills

View category →

hyperframes-cli

heygen-com/hyperframes

The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.

1.3M installs

triage

mattpocock/skills

Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.

1M installs

ask-matt

mattpocock/skills

Ask which skill or flow fits your situation. A router over the skills in this repo.

778.4K installs

to-questionnaire

mattpocock/skills

Turn a decision you can't fully answer into a questionnaire for someone else to fill in.

508.9K installs

wait-what

mattpocock/skills

Stop. That last message did not land: re-pitch it.

459.7K installs

loop-me

mattpocock/skills

Grill me about specs for the workflows I want to build, within this workspace.

447.9K installs