fix: ChatBubble crash and DeepSeek API compatibility
- Fix ChatBubble to handle non-string content with String() wrapper - Fix API route to use generateText for non-streaming requests - Add @ai-sdk/openai-compatible for non-OpenAI providers (DeepSeek, etc.) - Use Chat Completions API instead of Responses API for compatible providers - Update ChatBubble tests and fix component exports to kebab-case - Remove stale PascalCase ChatBubble.tsx file
This commit is contained in:
85
_bmad/bmb/workflows/module/steps-b/step-06-users.md
Normal file
85
_bmad/bmb/workflows/module/steps-b/step-06-users.md
Normal file
@@ -0,0 +1,85 @@
|
||||
---
|
||||
name: 'step-06-users'
|
||||
description: 'Who + How — personas AND user journey combined'
|
||||
|
||||
nextStepFile: './step-07-value.md'
|
||||
advancedElicitationTask: '../../../../core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '../../../../core/workflows/party-mode/workflow.md'
|
||||
---
|
||||
|
||||
# Step 6: Users
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Define who the module is for AND how they'll use it — personas and user journey combined.
|
||||
|
||||
## MANDATORY EXECUTION RULES:
|
||||
|
||||
### Universal Rules:
|
||||
- 🛑 NEVER generate content without user input
|
||||
- 📖 CRITICAL: Read the complete step file before taking any action
|
||||
- 🔄 CRITICAL: When loading next with 'C', ensure entire file is read
|
||||
- 📋 YOU ARE A FACILITATOR, not a content generator
|
||||
- ✅ Speak in `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
- ✅ You are the **Module Architect** — user-centric, empathetic
|
||||
- ✅ Help the user walk in their users' shoes
|
||||
- 💬 Tell the story of how this will be used
|
||||
|
||||
---
|
||||
|
||||
## MANDATORY SEQUENCE
|
||||
|
||||
### 1. Define the Users
|
||||
|
||||
"**Let's get specific about who this is for.**"
|
||||
|
||||
**Primary Users:**
|
||||
- Who will use this module most often?
|
||||
- What's their role? (developer, designer, analyst, etc.)
|
||||
- What's their skill level? (beginner, intermediate, expert)
|
||||
|
||||
**Secondary Users:**
|
||||
- Who else might use it?
|
||||
- How is their experience different?
|
||||
|
||||
### 2. Build User Personas
|
||||
|
||||
Create 1-2 brief personas:
|
||||
|
||||
**Persona 1:**
|
||||
- Name/role: {e.g., "Sarah, Software Engineer"}
|
||||
- Goals: {what they want to accomplish}
|
||||
- Pain points: {what frustrates them now}
|
||||
- What success looks like
|
||||
|
||||
### 3. Tell the User Journey Story
|
||||
|
||||
"**Let's walk through how someone would use this module.**"
|
||||
|
||||
Tell a story:
|
||||
1. User has a problem → {their situation}
|
||||
2. They load the module → {what they expect}
|
||||
3. They run an agent/workflow → {what happens}
|
||||
4. They get a result → {the outcome}
|
||||
5. This helps them → {the achievement}
|
||||
|
||||
"**Can you see this flow? Does it match what you envision?**"
|
||||
|
||||
### 4. MENU OPTIONS
|
||||
|
||||
**Select an Option:** [A] Advanced Elicitation [P] Party Mode [C] Continue
|
||||
|
||||
- IF A: Execute `{advancedElicitationTask}`
|
||||
- IF P: Execute `{partyModeWorkflow}`
|
||||
- IF C: Load `{nextStepFile}`
|
||||
- IF Any other: Help, then redisplay
|
||||
|
||||
---
|
||||
|
||||
## Success Metrics
|
||||
|
||||
✅ User personas defined
|
||||
✅ User journey story told
|
||||
✅ User can visualize how their module will be used
|
||||
Reference in New Issue
Block a user