From feature-discussion
Orchestrates agent team discussions for single feature deep dives (Mode A) or full app feature sets (Mode B), integrating personas, competitive analysis, and research docs.
npx claudepluginhub sean-sunagaku/claude-code-plugin --plugin feature-discussionThis skill is limited to using the following tools:
6ã€ã®å°éãšãŒãžã§ã³ãïŒPMã»UXã¢ããªã¹ãã»ãšã³ãžãã¢ã»ãã¶ã€ããŒã»è¡åå¿çåŠè ã»User LiaisonïŒã**è°è«ã»åè«ãåããªãã**æ©èœãæ€èšããã¹ãã«ã
Orchestrates design debates with 5-agent team to compare architectures, implementation options, tradeoffs, and generate ADRs. Use for technical decisions like API design, library selection, or multiple approaches.
Assesses task complexity upfront (quick/standard/full) and brainstorms with adaptive depth: ~2 exchanges for bugs, full PRD for complex features. Use for unclear requirements or new ideas.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Share bugs, ideas, or general feedback.
6ã€ã®å°éãšãŒãžã§ã³ãïŒPMã»UXã¢ããªã¹ãã»ãšã³ãžãã¢ã»ãã¶ã€ããŒã»è¡åå¿çåŠè ã»User LiaisonïŒãè°è«ã»åè«ãåããªããæ©èœãæ€èšããã¹ãã«ã FacilitatorïŒãã®SKILL.mdèªèº«ïŒããªãŒã±ã¹ãã¬ãŒã·ã§ã³ããUser LiaisonããŠãŒã¶ãŒãžã®è³ªåãäžå 管çããã
1ã€ã®å ·äœçãªæ©èœã«ã€ããŠæ·±æããããæ¢åã¢ããªãžã®æ©èœè¿œå ã»æ¹åã察象ã
ããªã¬ãŒ: ã壿ã¡éå§ïŒããæ©èœããããã远å ãããããããã®æ¹åã
ã¢ããªå šäœã®æ©èœã»ãããèšèšãããç«¶ååæã»ãã«ãœãäœæåŸã«ãäœãäœãã¹ããããè°è«ããã
ããªã¬ãŒ: ãã¢ããªã®æ©èœãèãããããäœãäœãã¹ããããæ©èœäžèŠ§ãæ±ºããããããããã¯ãäŒç»ããæ©èœèšèšã
åæ: product-discovery, competitive-analysis, personas ãå®äºæžã¿ã§ããããšã
ãŠãŒã¶ãŒã®çºèšããèªåå€å®ãå€å®çµæããŠãŒã¶ãŒã«éç¥ãã誀ã£ãŠããã°ä¿®æ£ããã
| ãã¿ãŒã³ | å€å® |
|---|---|
| ã壿ã¡éå§ïŒããããããæ©èœããããã远å ããããã®æ¹åã | Mode A |
| ãã¢ããªã®æ©èœãèãããããäœãäœãã¹ããããæ©èœäžèЧããæ©èœèšèšãããããã¯ãäŒç»ããå šäœèšèšã | Mode B |
ãã«ãœããäºåã«äœææžã¿ã§ããããšã
ã»ãã·ã§ã³éå§æã以äžããã§ãã¯ïŒ
Globã§ docs/personas/**/*.md ãŸã㯠.claude/personas/*.md ãæ€çŽ¢ãã«ãœããèŠã€ãããŸããã§ããã
å
ã« `/persona-creation` ã§ãã«ãœããäœæããŠãã ããã
ãã«ãœãããããšãåãšãŒãžã§ã³ãããŠãŒã¶ãŒèŠç¹ã§è°è«ã§ããŸãã
Mode B ã§ã¯ãã«ãœãã«å ããŠã以äžã®è³æãèªåæ€åºã»èªã¿èŸŒãã å šãŠå¿ é ã§ã¯ãªãããããã»ã©è°è«ã®è³ªãäžããã
| è³æ | æ€çŽ¢ãã¹ | çšé |
|---|---|---|
| ãããã¯ãã³ã³ããã¹ã | docs/product-context.md, .claude/product-discovery/ | ãããã¯ãããžã§ã³ã»èª²é¡ä»®èª¬ã»ããžãã¹ã¢ãã« |
| ç«¶ååæ | .claude/competitive-analysis/, docs/competitive-analysis/ | ç«¶åã®åŒ·ã¿åŒ±ã¿ã»å·®å¥åãã€ã³ãã»ERRC |
| ãã³ãã | .claude/app-tone-manner/*/TONE_MANNER_REPORT.md | ãã©ã³ãããŒãœããªãã£ã»ãã¶ã€ã³å€æ° |
| åžå Žèª¿æ» | .claude/market-research/, docs/market-research/ | åžå ŽèŠæš¡ã»ãã¬ã³ãã»ãŠãŒã¶ãŒéèŠ |
| ãŠãŒã¶ãŒãžã£ãŒã㌠| .claude/user-journey/, docs/user-journey/ | ãŠãŒã¶ãŒè¡åãã¿ãŒã³ã»ã¿ãããã€ã³ã |
èªã¿èŸŒã¿åªå 床: ãã«ãœãïŒå¿ é ïŒ > ãããã¯ãã³ã³ããã¹ã > ç«¶ååæ > ãã®ä»
èŠã€ãããªãè³æãããå ŽåïŒ
以äžã®è³æãèŠã€ãããŸããã§ããïŒæšå¥šïŒïŒ
- ç«¶ååæ â `/competitive-analysis` ã§äœæã§ããŸã
- ãããã¯ãã³ã³ããã¹ã â `/product-discovery` ã§äœæã§ããŸã
è³æãªãã§ãé²ããããŸãããè°è«ã®ç²ŸåºŠãäžãããŸãã
ãã®ãŸãŸé²ããŸããïŒ
| ããŒã« | ãã¡ã€ã« | å°éé å |
|---|---|---|
| Facilitator | ãã® SKILL.md | è°è«é²è¡ã»åæåœ¢æã»èšé² |
| User Liaison | agents/user-liaison.md | ãŠãŒã¶ãŒãžã®è³ªåäžå 管çã»ã¿ã€ãã³ã°å€å®ã»åçã«ãŒãã£ã³ã° |
| Product Manager | agents/product-manager.md | èª²é¡æ§é åã»åªå 床ã»ã¹ã³ãŒãã»ããžãã¹äŸ¡å€ |
| UX Analyst | agents/ux-analyst.md | ãã«ãœãèŠç¹è©äŸ¡ã»ãŠãŒã¶ãŒã¹ããŒãªãŒã»è¡ååæ |
| Engineer | agents/engineer.md | ã³ãŒãããŒã¹èª¿æ»ã»æè¡çå®çŸæ§ã»å·¥æ°è©äŸ¡ |
| Designer | agents/designer.md | UI/UXæ¡ã»ã€ã³ã¿ã©ã¯ã·ã§ã³èšèšã»ä»£æ¿UI |
| Behavioral Psychologist | agents/behavioral-psychologist.md | èªç¥ãã€ã¢ã¹ã»ç¿æ £åœ¢æã»åæ©ä»ãã»æææ±ºå® |
| Affordance Tester | agents/affordance-tester.md | åèŠç解床ã»ã¢ãã©ãŒãã³ã¹ã»ã©ãã«èªææ§ã»èªç¥çãŠã©ãŒã¯ã¹ã«ãŒ |
Step 1: 課é¡ã»ç®çã®æ·±æã
æ
åœ: PM + UX Analyst + Behavioral Psychologist
BP: ããã®èª²é¡ã¯æ¬åœã«è¡åã¬ãã«ã®åé¡ãïŒããåã
â
Step 2: ä»£æ¿æ¡ã»æ¢åæ©èœã®æ€èš
æ
åœ: å
šå¡åå
BP: åæ¡ã®ãè¡åå®çŸæ§ããè©äŸ¡ãç¿æ
£ã«ãŒãã®æç¡ããã§ãã¯
AT: åæ¡ã®ãåèŠç解床ããè©äŸ¡ãã©ãã«ã»æäœã®èªææ§ããã§ãã¯
â
Step 3: ã¹ã³ãŒã決å®
æ
åœ: PM + Engineer + UX Analyst + Behavioral Psychologist
BP: MVP段éã§ç¿æ
£ã«ãŒãã®ãå ±é
¬ããå«ãŸããŠããããã§ãã¯
â
Step 4: èŠä»¶å®çŸ©
æ
åœ: UX Analyst + PM + Engineer + Behavioral Psychologist + Affordance Tester
BP: ãŠãŒã¶ãŒã¹ããŒãªãŒã®åæ©ãå
çºçããã§ãã¯
AT: æäœãããŒã®åã¹ãããã§åèŠãŠãŒã¶ãŒãè¿·ããªãããã§ãã¯
â
Step 5: UIèšèšããã³ããçæ
æ
åœ: Designer + UX Analyst + Behavioral Psychologist + Affordance Tester + å
šå¡ã¬ãã¥ãŒ
BP: èªç¥è² è·ãéžæéº»çºãããã©ã«ãèšèšããã§ãã¯
AT: èªç¥çãŠã©ãŒã¯ã¹ã«ãŒã宿œãåUIèŠçŽ ã®åèŠç解床ãã¹ã³ã¢ãªã³ã°
Step P1: ã³ã³ããã¹ãçµ±å
æ
åœ: PMïŒãªãŒãïŒ+ UX Analyst + Behavioral Psychologist
ç®ç: å
šãªãµãŒãè³æãçµ±åããã誰ã®äœã解決ãããããã¯ããããå
šå¡ã§åæ
å
¥å: product-context, competitive-analysis, personas, tone-manner
PM: ãããã¯ãããžã§ã³ãèšèªå
UX: ãã«ãœãã®JTBDïŒJobs-to-be-DoneïŒãæŽç
BP: ãã«ãœãã®è¡åãã¿ãŒã³ãããæ¬åœã«å¿
èŠãªäŸ¡å€ããæœåº
â
Step P2: æ©èœã¢ã€ãã¢çºæ³
æ
åœ: å
šå¡åå
ç®ç: ãã«ãœãã®JTBDã»ç«¶åã®ã£ããã»ããžã§ã³ããæ©èœåè£ãç¶²çŸ
çã«ãªã¹ãã¢ãã
PM: ããžãã¹äŸ¡å€ã®é«ãæ©èœãææ¡
UX: ãã«ãœããæ±ããæ©èœãææ¡ïŒãã«ãœãå¥ã«ïŒ
Engineer: æè¡çã«å·®å¥åã§ããæ©èœãææ¡
Designer: UXçã«ã€ã³ãã¯ãã®ããæ©èœãææ¡
BP: ç¿æ
£åœ¢æã«å¿
èŠãªæ©èœãææ¡ïŒHook ModelïŒ
AT: åèŠãŠãŒã¶ãŒãæ±ããåºæ¬æ©èœã確èª
â
Step P3: æ©èœåªå
床決å®
æ
åœ: PMïŒãªãŒãïŒ+ UX Analyst + Engineer + Behavioral Psychologist
ç®ç: å
šæ©èœåè£ãåªå
床ãããªã¯ã¹ã§è©äŸ¡ã»ã°ã«ãŒãã³ã°
PM: Impact/Effort ãããªã¯ã¹ãããžãã¹äŸ¡å€ã¹ã³ã¢ãªã³ã°
UX: ãã«ãœã䟡å€ã¹ã³ã¢ïŒåãã«ãœãå¥ïŒ
Engineer: æè¡çå®çŸæ§ã»å·¥æ°èŠç©ãã
BP: ç¿æ
£åœ¢æãžã®è²¢ç®åºŠãè¡åå®çŸæ§ã¹ã³ã¢
â
Step P4: MVPæ©èœã»ããå®çŸ©
æ
åœ: PM + UX Analyst + Engineer + Behavioral Psychologist + Affordance Tester
ç®ç: MVP/Phase2/Phase3 ã«åé¡ããåæ©èœã®æŠèŠèŠä»¶ãå®çŸ©
PM: MVP ã®ç·åŒã倿
UX: åãã«ãœãã®ã³ã¢ãžã£ãŒããŒãMVPã§å®çµããã確èª
Engineer: æè¡çäŸåé¢ä¿ããå®è£
é åºãææ¡
BP: MVPã§ç¿æ
£ã«ãŒãïŒãã£ããâè¡åâå ±é
¬ïŒãæç«ãããæ€èšŒ
AT: MVPã®æ©èœã»ããã ãã§åèŠãŠãŒã¶ãŒã䟡å€ãçè§£ã§ãããæ€èšŒ
â
Step P5: ç»é¢æ§æ & UIèšèšããã³ããçæ
æ
åœ: DesignerïŒãªãŒãïŒ+ UX Analyst + Engineer + Behavioral Psychologist + Affordance Tester
ç®ç: ç»é¢ãããã»ããã²ãŒã·ã§ã³æ§é ã»åç»é¢ã®UIèšèšããã³ãããçæ
Designer: ç»é¢äžèЧã»é·ç§»å³ã»åç»é¢ã®ã¬ã€ã¢ãŠãïŒASCII artïŒ
UX: ãã«ãœãå¥ã®å°ç·èšèšïŒãã«ãœãããšã®ãæåã«èŠãç»é¢ããäž»èŠãããŒãïŒ
Engineer: æè¡çã«å¿
èŠãªç»é¢ïŒèšå®ãèªèšŒãªã©ïŒãè£å®
BP: èªç¥è² è·ãã§ãã¯ãååäœéšãããŒã®èšèš
AT: èªç¥çãŠã©ãŒã¯ã¹ã«ãŒãç»é¢é·ç§»ã®èªææ§è©äŸ¡
åã¹ãããã®è©³çŽ°ã¯ references/step_details.md ãåç
§ã
Mode A / Mode B å
±éãåã¹ãããã§ä»¥äžã®é åºãå®è¡ããã詳现㯠references/discussion_protocol.md ãåç
§ã
references/quality_control.mdïŒreferences/quality_control.mdïŒè°è«æ·±ãã¢ãŒãïŒLight/Standard/DeepïŒã§ã©ãŠã³ãåæ°ã調æŽã詳现㯠references/discussion_depth.md ãåç
§ã
product-planning-<æ¥ä»> ãŸã㯠ãããã¯ãåã®ã¹ã©ãã°.claude/feature_discussion/sessions/<slug>/ ãã£ã¬ã¯ããªãäœæsession.json ãäœæïŒã¢ãŒãå¥ãã³ãã¬ãŒãïŒdiscussion_log.md ãäœæreferences/discussion_depth.md åç
§ïŒreferences/discussion_protocol.md ã®ãããŒã ã©ã€ããµã€ã¯ã«ãåç
§ïŒreferences/external_research.md åç
§ïŒââââ èªã¿èŸŒãã ãªãµãŒãè³æ ââââ
ãã«ãœã: 3åïŒæçã»åœ©ã»éŒäººïŒ
ãããã¯ãã³ã³ããã¹ã: ããïŒèª²é¡ä»®èª¬ã»ããžãã¹ã¢ãã«å®çŸ©æžã¿ïŒ
ç«¶ååæ: ããïŒçŽæ¥ç«¶å3瀟ã»éæ¥ç«¶å5瀟ïŒ
ãã³ãã: ããïŒIntellectual but ApproachableïŒ
åžå Žèª¿æ»: ãªãïŒâ æšå¥š: `/market-research`ïŒ
ãŠãŒã¶ãŒãžã£ãŒããŒ: ãªã
äžèšã®è³æãããšã«ãæ©èœèšèšãå§ããŸãã
{
"sessionId": "<feature-slug>",
"feature": "<æ©èœå>",
"sessionMode": "feature",
"status": "in_progress",
"depthMode": "<light|standard|deep>",
"currentStep": 1,
"personas": ["<ãã«ãœããã¡ã€ã«ã®ãã¹>"],
"createdAt": "<ISO8601>",
"updatedAt": "<ISO8601>",
"steps": {
"1_purpose": false,
"2_alternatives": false,
"3_scope": false,
"4_requirements": false,
"5_ui_prompt": false
}
}
{
"sessionId": "<product-slug>",
"product": "<ãããã¯ãå>",
"sessionMode": "product-planning",
"status": "in_progress",
"depthMode": "<standard|deep>",
"currentStep": "P1",
"personas": ["<ãã«ãœããã¡ã€ã«ã®ãã¹>"],
"researchSources": {
"productContext": "<ãã¹ or null>",
"competitiveAnalysis": "<ãã¹ or null>",
"toneAndManner": "<ãã¹ or null>",
"marketResearch": "<ãã¹ or null>",
"userJourney": "<ãã¹ or null>"
},
"createdAt": "<ISO8601>",
"updatedAt": "<ISO8601>",
"steps": {
"P1_context_synthesis": false,
"P2_feature_ideation": false,
"P3_prioritization": false,
"P4_mvp_definition": false,
"P5_screen_architecture": false
}
}
| çºèš | ã¢ã¯ã·ã§ã³ |
|---|---|
| ã壿ã¡éå§ïŒããæ©èœã | Mode A: æ°èŠã»ãã·ã§ã³äœæãStep 1 éå§ |
| ãã¢ããªã®æ©èœãèãããããæ©èœèšèšã | Mode B: æ°èŠã»ãã·ã§ã³äœæãStep P1 éå§ |
| ãæ¬¡ã®ã¹ãããããé²ããŠã | çŸåšã®ã¹ããããå®äºã次㞠|
| ãæ»ã£ãŠããåã®ã¹ãããã | åã®ã¹ãããã«æ»ã |
| ãä»ã©ãïŒãã鲿ã¯ïŒã | çŸåšã®ã¹ããããšå®äºç¶æ³ã衚瀺 |
| ããã£ãšè°è«ããŠã | çŸåšã®ã¹ãããã§è¿œå ã®è°è«ã©ãŠã³ããå®è¡ |
| ãäžèЧããã»ãã·ã§ã³äžèЧã | éå»ã®ã»ãã·ã§ã³äžèЧã衚瀺 |
| ãåéïŒããã | æå®ã»ãã·ã§ã³ãåé |
åã¹ãããéå§æïŒ
ââââââââââââââââââââââââââââââ
ð Feature Discussion: <æ©èœå or ãããã¯ãå>
ââââââââââââââââââââââââââââââ
ã¢ãŒã: <Mode A: æ©èœå£æã¡ | Mode B: ãããã¯ãæ©èœèšèš>
çŸåš: Step <N or PN>/5 - <ã¹ãããå>
鲿: [ââââââââââ] 60%
æ·±ã: <Light|Standard|Deep>
æ
åœ: <ãªãŒããšãŒãžã§ã³ã> + <ãµããšãŒãžã§ã³ã>
ãã«ãœã: <èªã¿èŸŒãã ãã«ãœãå>
ãšãŒãžã§ã³ãããŒã ãè°è«äž...
è°è«çµææç€ºæïŒ
ââââ ããŒã è°è«çµæ ââââ
â
åæ: [å
šå¡ãåæããç¹]
⡠察ç«: [è«ç¹ãšåãšãŒãžã§ã³ãã®ç«å Ž]
ã©ã倿ããŸããïŒ
ã¹ãããå®äºæïŒ
â
Step <N or PN> å®äº: <ã¹ãããå>
â <ç°¡æœãªãµããªãŒ>
â è°è«ã©ãŠã³ã: <N>å
â 察ç«è§£æ±º: <N>ä»¶
次ãžé²ã¿ãŸããïŒïŒã次ãžãã§ç¶è¡ïŒ
references/discussion_protocol.mdïŒæ³š: ãŠãŒã¶ãŒãžã®è³ªå㯠Facilitator ã§ã¯ãªã User Liaison ãæ åœãããFacilitator ã¯è°è«ã®é²è¡ãšèšé²ã«éäžããã
å
šã¹ãããã true ã®å ŽåïŒ
{
"status": "completed",
"completedAt": "<ISO8601>",
"steps": {
"1_purpose": true,
"2_alternatives": true,
"3_scope": true,
"4_requirements": true,
"5_ui_prompt": true
}
}
çæç©:
session.json - ã»ãã·ã§ã³é²æç®¡çdiscussion_log.md - ãã£ã¹ã«ãã·ã§ã³è°äºé²ïŒãšãŒãžã§ã³ãéã®è°è«å«ãïŒ1_purpose.md - 課é¡ã»ç®çã®æ·±æãçµæ2_alternatives.md - ä»£æ¿æ¡æ€èšçµæïŒããŒã è°è«ä»ãïŒ3_scope.md - ã¹ã³ãŒãå®çŸ©çµæïŒå¯Ÿç«è§£æ±ºèšé²ä»ãïŒ4_requirements.md - èŠä»¶å®çŸ©æžïŒãã«ãœãããŒã¹ïŒ5_ui_prompt.md - UIèšèšããã³ããïŒã¬ãã¥ãŒæžã¿ïŒå
šã¹ãããã true ã®å ŽåïŒ
{
"status": "completed",
"completedAt": "<ISO8601>",
"steps": {
"P1_context_synthesis": true,
"P2_feature_ideation": true,
"P3_prioritization": true,
"P4_mvp_definition": true,
"P5_screen_architecture": true
}
}
çæç©:
session.json - ã»ãã·ã§ã³é²æç®¡çdiscussion_log.md - ãã£ã¹ã«ãã·ã§ã³è°äºé²ïŒãšãŒãžã§ã³ãéã®è°è«å«ãïŒP1_context_synthesis.md - ã³ã³ããã¹ãçµ±åçµæïŒãããã¯ãããžã§ã³ã»JTBDã»ç«¶åã®ã£ããïŒP2_feature_ideation.md - æ©èœã¢ã€ãã¢äžèЧïŒãã«ãœãå¥ã»ã«ããŽãªå¥ïŒP3_prioritization.md - æ©èœåªå
床ãããªã¯ã¹ïŒã¹ã³ã¢ãªã³ã°ä»ãïŒP4_mvp_definition.md - MVPæ©èœã»ããå®çŸ©ïŒæŠèŠèŠä»¶ã»ãã«ãœããžã£ãŒããŒæ€èšŒïŒP5_screen_architecture.md - ç»é¢æ§æã»é·ç§»å³ã»åç»é¢UIèšèšããã³ãã詳现ããã¥ã¡ã³ãã¯ãããã¯å¥ã«åé¢ãå¿
èŠãªãã¡ã€ã«ã ã Read ããïŒ
| ãã¡ã€ã« | å 容 |
|---|---|
references/discussion_protocol.md | è°è«ãããã³ã« R1-R4ãããŒã ã©ã€ããµã€ã¯ã«ãåææ¡ä»¶ããŠãŒã¶ãŒå€æè¿œè·¡ |
references/user_question_protocol.md | ãŠãŒã¶ãŒãžã®è³ªåã®å ±éãããã³ã«ïŒå šãšãŒãžã§ã³ãå ±éïŒãUser Liaison çµç±ã®ãã©ãŒããã |
references/agent_spawn_templates.md | Mode A Step 1-5 / Mode B Step P1-P5 ã®ãšãŒãžã§ã³ãèµ·åãã³ãã¬ãŒã |
references/step_details.md | Mode A Step 1-5 / Mode B Step P1-P5 ã®è©³çްãã㌠|
references/quality_control.md | Quality GateïŒå ±éã»åºæåºæºïŒãã¹ãããéæŽåæ§ãã§ã㯠|
references/discussion_depth.md | è°è«æ·±ãã¢ãŒãïŒLight/Standard/DeepïŒãèªåå€å®ã«ãŒã« |
references/external_research.md | ãã¡ã€ã³ããã¥ã¡ã³ã飿ºãç«¶åãªãµãŒããæ¬¡ã¹ãã«é£æº |
references/discussion_log_format.md | è°äºé²ã®èšé²ãã©ãŒãããïŒã©ãŠã³ãå¥ïŒ |
references/output_templates.md | ææç©ãã³ãã¬ãŒãïŒMode A / Mode BïŒ |