14 KiB
| title | description | sidebar | ||
|---|---|---|---|---|
| 파티 모드 | AI 에이전트를 하나의 대화에 모아 실행하고, 직접 출연진을 만들고, 얼마나 독립적으로 사고할지 선택합니다 |
|
파티 모드는 AI 에이전트를 한 방에 모아 서로, 그리고 사용자와 대화하게 합니다. 이 문서는 파티가 무엇인지, 파티를 실행하는 네 가지 방식, 설치된 에이전트 대신 직접 페르소나 출연진을 만드는 방법, 그리고 파티가 세션 사이에 사용자를 기억하는 방식을 설명합니다.
파티 모드란?
bmad-party-mode를 실행하면 이미 설치된 BMad 에이전트들이 한 대화에 모입니다. PM, 아키텍트, 개발자, UX 디자이너, 그리고 선택한 모듈이 제공하는 다른 에이전트들이 함께 들어옵니다. 설치된 이 명단이 기본 파티이며 별도 설정 없이 바로 사용할 수 있습니다. 이들은 각자 캐릭터에 맞게 답하고, 동의하거나 반대하며, 서로의 생각을 이어갑니다. 사용자는 방을 조종합니다. 후속 질문을 하고, 반박하고, 한 목소리를 앞으로 끌어내거나, 주제를 바꿀 수 있습니다. 대화는 사용자가 끝낼 때까지 계속됩니다.
이 방식이 작동하는 이유는 페르소나마다 우선순위가 다르기 때문입니다. 아키텍트는 설계를 지키고, PM은 범위를 지키고, 개발자는 실제로 만들 수 있는지를 지킵니다. 이들을 같은 방에 넣으면 절충점이 스프린트 3주 차가 아니라 지금 대화 안에서 드러납니다.
잘 맞는 경우:
- 실제 절충이 필요한 결정
- 브레인스토밍과 "무엇을 놓쳤나?" 점검
- 사후 분석과 회고
- 실행 전에 계획을 압박 검증하기
파티 모드는 페르소나들이 의견을 갖고 충돌하기 때문에 빠르고 꽤 재미있는 브레인스토밍 방법이기도 합니다. 다른 어떤 워크플로 안에서도 파티를 시작할 수 있습니다. 브레인스토밍 중, PRD 작성 중, 코딩 중, 영업 각도를 잡는 중, 창작물을 다듬는 중에도 가능합니다. 눈앞의 것에 대해 더 많은 관점이 필요할 때, 하던 일을 내려놓지 않고 방을 불러오세요.
:::note[예시] 사용자: MVP에는 모놀리스가 좋을까요, 마이크로서비스가 좋을까요?
아키텍트: 모놀리스로 시작하세요. 사용자 1,000명 규모에서는 마이크로서비스가 필요 없는 운영 비용을 더합니다.
PM: 동의합니다. 아직 증명하지 못한 확장성보다 출시 속도가 더 중요합니다.
개발자: 모놀리스가 좋습니다. 다만 나중에 서비스 하나를 분리해도 재작성하지 않도록 명확한 모듈 경계를 둡시다. :::
파티 시작하기
스킬을 호출하고 원하는 것을 말하세요. 스킬이 사용자가 파티를 실행하려는지, 새로 만들려는지 판단합니다.
| 목표 | 입력 |
|---|---|
| 기본 모드로 파티 시작 | /bmad-party-mode |
| 특정 모드로 시작 | /bmad-party-mode --mode auto (session, subagent, agent-team도 가능) |
| 저장된 파티 열기 | /bmad-party-mode --party code-review-crew |
| 즉석에서 출연진 만들기 | "엔터프라이즈호 브리지 크루로 파티 모드" |
| 파티 생성 또는 추가 | "파티 모드, 새 파티 만들어줘" |
| 기존 파티 편집 | "파티 모드, writers' room 편집해줘" |
| 스킬 커스터마이즈 | /bmad-customize bmad-party-mode |
파티 실행 방식
파티는 네 가지 모드로 실행할 수 있습니다. 세션당 하나의 모드가 활성화되며, 그 모드는 누가 사고하는지를 결정합니다. 하나의 모델이 모두의 목소리를 내는지, 별도 에이전트들이 각자 추론하는지가 달라집니다.
| 모드 | 하는 일 | 사용 시점 |
|---|---|---|
session |
기본값입니다. 하나의 모델이 모든 페르소나를 인라인으로 연기합니다. 빠르고 대화가 자연스럽습니다. | 대부분의 대화. 농담, 브레인스토밍, 빠른 주고받기. |
auto |
가벼운 라운드는 인라인으로 진행하고, 독립성이 답을 바꾸는 경우에만 독립 에이전트를 생성합니다. | 대부분은 속도를 원하지만 어려운 라운드에서는 실제 독립성이 필요할 때. |
subagent |
의미 있는 라운드마다 페르소나별 별도 에이전트를 생성합니다. 한 생각이 모두를 물들이지 않습니다. | 정직한 리뷰와 포커스 그룹처럼 목소리가 섞이면 안 될 때. |
agent-team |
페르소나를 지속 팀으로 세워 서로 직접 대화하게 합니다. Claude Code 전용입니다. | 에이전트들이 서로 말하는 실시간 원탁 토론을 손 놓고 지켜보고 싶을 때. |
이 선택은 중요합니다. 하나의 모델이 다섯 페르소나를 연기하면 조용히 수렴할 수 있습니다. 결국 같은 마음을 공유하기 때문입니다. 실제 에이전트를 생성하면 추론이 분리되고, 리뷰 패널이나 포커스 그룹에서 중요한 독립성을 지킬 수 있습니다. session은 가장 저렴하고 유연합니다. 생성 모드는 비용이 더 들지만 독립성을 보호하고, auto는 필요한 라운드에만 생성해 둘 사이를 노립니다.
session이 기본값입니다. 다른 모드를 실행할 수 없는 환경에서는 순서대로 되돌아갑니다. agent-team은 subagent로, 다시 session으로 내려갑니다. 설정된 기본값은 커스터마이징에 저장되고, 실행 시점의 override가 해당 세션에서 우선합니다.
:::tip[한 세션만 override]
--mode subagent 또는 auto, agent-team, session으로 파티를 시작하면 설정된 기본값을 그 실행에서만 바꿀 수 있습니다.
:::
커스텀 파티
기본적으로 파티는 설치된 BMad 에이전트를 사용합니다. 더 큰 쓰임은 설명할 수 있는 어떤 페르소나 집합이든 직접 출연진으로 만들고, 저장해 재사용하는 것입니다. 파티 작성도 같은 스킬로 합니다. 스킬은 사용자가 파티를 실행하려는지 만들려는지 감지하고, 결과를 bmad-customize를 통해 오버라이드에 씁니다.
파티 모드는 다른 BMad 스킬처럼 커스터마이즈할 수 있습니다. /bmad-customize bmad-party-mode를 실행해 기본값을 직접 설정하세요. 만든 그룹을 기본 파티로 고정해 플래그 없이 로드되게 할 수 있고, 시작 모드를 고를 수 있으며, 방 전체가 세션 내내 지킬 규칙도 설정할 수 있습니다.
두 가지 개념이 대부분의 일을 합니다.
페르소나는 멤버를 알아볼 수 있게 만드는 요소입니다. 말하는 방식, 중요하게 여기는 것, 논쟁 방식, 집착하는 문제, blind spot이 여기에 들어갑니다. "회의적인 CFO"는 placeholder입니다. "18개월 안에 회수 계획이 없으면 승인하지 않고, 그 말을 첫 30초 안에 꺼내는 사람"은 페르소나입니다. 그 정도의 구체성이 있어야 이름표를 가려도 알아볼 수 있는 목소리가 됩니다.
장면은 무대를 설정합니다. 장면은 한 줄의 자유 형식 문장입니다. 배경, 벌어지는 일, 누가 누구에게 적대적인지, 누가 가장 세게 밀어붙이는지를 적습니다. 같은 멤버도 장면마다 다르게 움직입니다. 한 사람을 한 번 정의해 두고, 임무 중인 브리지 크루, 근무 후 라운지의 같은 크루, 적대적인 구매자 패널에 넣을 수 있습니다. 멤버들은 이름 있는 그룹으로 묶이고, 그룹 하나를 기본 방으로 고정할 수 있습니다.
파티의 형태
| 형태 | 의미 |
|---|---|
| 테마 출연진 | 유명 투자자, TV 앙상블처럼 특정 주제 주변에 모인 구분되는 목소리. |
| 일회성 페르소나 | 그룹 없이도 pool에 추가한 하나 또는 두 페르소나. |
| 데이터 기반 포커스 그룹 | 고객 또는 설문 데이터를 주면 행동 동인을 기준으로 군집화하고 대표 페르소나를 만듭니다. 고객들이 독립적으로 반응하도록 subagent 모드와 함께 쓰세요. |
| 리뷰 패널 | 중요한 것을 두고 논쟁하도록 설계된 비판 렌즈들입니다. 함께 제공되는 Code Review Crew가 예입니다. |
| 열린 출연진 방 | 고정 명단이 없습니다. 장면이 세계관을 정하고, 주제가 바뀔 때마다 방이 즉석 캐스팅됩니다. |
가장 큰 효과가 나는 경우는 포커스 그룹입니다. 실제 프로필을 넣으면 대표 고객 패널이 만들어지고, 제품을 만들기 전에 아이디어를 시험할 수 있습니다. 각 고객은 마지막 목소리에 동의하는 대신 자신의 목표와 예산에서 반응합니다.
만들 수 있는 파티
파티는 페르소나와 장면뿐이므로 범위가 넓고, 새 스킬이나 모듈이 필요하지 않습니다.
- 스타트업 아이디어를 스트레스 테스트하는 창업자 팀.
- 감사 전에 구멍을 찾는 컴플라이언스 팀.
- 소프트웨어 개념을 두고 토론하는 애자일 선언문 작성자들.
- 글쓰기 파트너 그룹으로서의 코미디언 방.
- 철학적 질문을 풀거나 어려운 문제를 해체하는 과거의 위대한 사상가들.
- 분기 계획을 세우는 비즈니스 경영진.
이는 출발점일 뿐입니다. 설명할 수 있는 어떤 목소리 집합이든 파티가 됩니다. 페르소나를 쓰고, 방에 장면을 주면 됩니다.
Code Review Crew
기본 파티는 설치된 모듈이 제공하는 에이전트입니다. Code Review Crew는 그 기본 파티와 함께 제공되는 커스텀 파티입니다. 직접 파티를 만들기 전에 참고할 수 있는 작동 템플릿이지 기본값을 대체하지 않습니다. 이는 리뷰 패널입니다. 다섯 가지 렌즈가 변경을 서로 다른 각도에서 공격하고, 형식적인 승인 대신 실제로 중요한 것이 무엇인지 논쟁합니다.
| 멤버 | 렌즈 |
|---|---|
| Vex | 보안. 모든 것을 threat model로 보고 구체적인 악용 경로를 말합니다. |
| Grumbal | 적대자. 코드는 깨졌다고 가정하고 그것을 증명하려고 합니다. |
| Boundary | 엣지 케이스. 모든 분기, null, race, oversized input, 이상한 timezone을 봅니다. |
| Yui | 장인. 단순성, 이름, 불필요한 영리함이나 중복 제거를 봅니다. |
| Dana | 실용주의자. 완벽주의자들에게 반박하고 실제 문제와 사소한 지적을 구분합니다. |
이 crew는 정의되어 있지만 비활성 상태로 제공됩니다. 멤버들은 pool에 있고 그룹을 소환하기 전까지 비용을 만들지 않으며, 기본 방을 어지럽히지 않습니다. 다섯 렌즈가 각자 검토한 뒤 발견 사항을 두고 충돌하도록 subagent 모드로 실행하세요.
대화 조종하기
사용자는 내내 방을 조종합니다.
- 누군가를 들이기: "UX 디자이너를 불러와."
- 한 목소리를 깊게 파기: "Winston, 저걸 해체해 봐." 직접 요청하면 한 페르소나가 길게 펼칠 신호가 됩니다.
- 세션 중 방 바꾸기: "writers' room으로 전환해." 활성 그룹을 바꾸고 대화 맥락은 이어갑니다.
- 현재 방에 없는 커스텀 멤버라도 이름으로 소환하기.
어떤 모드로 실행 중이든 오케스트레이터는 결과를 별도 답변 더미가 아니라 하나의 대화로 제시합니다. 페르소나를 캐릭터 안에 유지하며, 메커니즘을 설명하려고 제4의 벽을 깨지 않습니다.
:::tip[둘 이상의 방 섞기] 한 그룹에 제한되지 않습니다. 여러 파티의 멤버를 같은 대화로 끌어오거나, 그 자리에서 출연진을 지명해 섞을 수 있습니다. 예를 들어 Golden Girls를 Martin Fowler, Linus Torvalds와 함께 아키텍처 리뷰에 던져 넣고 변경 요청을 두고 논쟁하게 할 수 있습니다. 어떤 일이 벌어질지 상상할 수 있을 겁니다. :::
방은 기억합니다
파티에 메모리를 주면 중단했던 지점에서 이어갑니다. 파티는 지난 세션의 자체 기록을 유지합니다. 멤버 사이에 쌓인 역학, 열어 둔 실마리, 이전 대화가 어디에 도착했는지를 기억합니다. 일주일 뒤 다시 열어도 그 이력은 남아 있습니다. 지난번에 충돌했던 두 멤버는 조금 차갑게 시작하고, 예전 세션의 날카로운 한 줄이 자연스러운 callback으로 다시 나타날 수 있습니다.
이는 transcript가 아니라 memory입니다. 방은 모든 말을 기록하지 않고, 기억할 가치가 있는 몇 가지만 가져갑니다. 그래서 다음 대화가 이어지는 느낌을 주면서도 과거 전체를 끌고 오지 않습니다. 이 과정은 백그라운드에서 자동으로 일어납니다. 따로 저장할 것이 없고, 방은 캐릭터를 깨고 memory를 설명하지 않습니다.
즉석에서 등장한 캐릭터도 기억될 수 있습니다. 열린 출연진 장면의 walk-on이거나, 대화 중 추가한 사람일 수 있습니다. 세션 끝에서 방은 새로 온 인물을 유지할지 제안하고, 유지하면 파티에 접어 넣어 다음에도 다시 올 수 있게 합니다.
메모리는 파티별로 설정됩니다. 파티를 만들거나 저장할 때 기억할지 묻습니다. 기본 설치 에이전트 방은 끄지 않는 한 기억합니다. 이 설정은 /bmad-customize bmad-party-mode에서 바꿀 수 있습니다.
세션 기념본
마무리할 때 오케스트레이터는 기념본을 제안합니다. 보관하거나 공유할 수 있는 독립 HTML 문서 하나입니다. 원시 transcript를 덤프하는 대신 페르소나별로 대화를 배치합니다. 거절하면 파티는 그대로 끝납니다.
:::tip[더 나은 결정] 파티의 가치는 의견 차이에 있습니다. 한 방의 다양한 관점은 한 줄의 사고가 놓치는 것을 잡아냅니다. :::