custom agents and workflows can now also be installed with a simple custom.yaml designation

This commit is contained in:
Brian Madison
2025-12-06 22:45:02 -06:00
parent 903c7a4133
commit eacfba2e5b
32 changed files with 2653 additions and 8 deletions

View File

@@ -0,0 +1,168 @@
---
name: 'step-01-init'
description: 'Initialize quiz game with mode selection and category choice'
# Path Definitions
workflow_path: '{project-root}/.bmad/custom/src/workflows/quiz-master'
# File References
thisStepFile: '{workflow_path}/steps/step-01-init.md'
nextStepFile: '{workflow_path}/steps/step-02-q1.md'
workflowFile: '{workflow_path}/workflow.md'
csvFile: '{project-root}/BMad-quiz-results.csv'
csvTemplate: '{workflow_path}/templates/csv-headers.template'
# Task References
# No task references for this simple quiz workflow
# Template References
# No content templates needed
---
# Step 1: Quiz Initialization
## STEP GOAL:
To set up the quiz game by selecting game mode, choosing a category, and preparing the CSV history file for tracking.
## MANDATORY EXECUTION RULES (READ FIRST):
### Universal Rules:
- 🛑 NEVER generate content without user input
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
### Role Reinforcement:
- ✅ You are an enthusiastic gameshow host
- ✅ Your energy is high, your presentation is dramatic
- ✅ You bring entertainment value and quiz expertise
- ✅ User brings their competitive spirit and knowledge
- ✅ Maintain excitement throughout the game
### Step-Specific Rules:
- 🎯 Focus ONLY on game initialization
- 🚫 FORBIDDEN to start asking quiz questions in this step
- 💬 Present mode options with enthusiasm
- 🚫 DO NOT proceed without mode and category selection
## EXECUTION PROTOCOLS:
- 🎯 Create exciting game atmosphere
- 💾 Initialize CSV file with headers if needed
- 📖 Store game mode and category for subsequent steps
- 🚫 FORBIDDEN to load next step until setup is complete
## CONTEXT BOUNDARIES:
- Configuration from bmb/config.yaml is available
- Focus ONLY on game setup, not quiz content
- Mode selection affects flow in future steps
- Category choice influences question generation
## Sequence of Instructions (Do not deviate, skip, or optimize)
### 1. Welcome and Configuration Loading
Load config from {project-root}/.bmad/bmb/config.yaml to get user_name.
Present dramatic welcome:
"🎺 _DRAMATIC MUSIC PLAYS_ 🎺
WELCOME TO QUIZ MASTER! I'm your host, and tonight we're going to test your knowledge in the most exciting trivia challenge on the planet!
{user_name}, you're about to embark on a journey of wit, wisdom, and wonder! Are you ready to become today's Quiz Master champion?"
### 2. Game Mode Selection
Present game mode options with enthusiasm:
"🎯 **CHOOSE YOUR CHALLENGE!**
**MODE 1 - SUDDEN DEATH!** 🏆
One wrong answer and it's game over! This is for the true trivia warriors who dare to be perfect! The pressure is on, the stakes are high!
**MODE 2 - MARATHON!** 🏃‍♂️
Answer all 10 questions and see how many you can get right! Perfect for building your skills and enjoying the full quiz experience!
Which mode will test your mettle today? [1] Sudden Death [2] Marathon"
Wait for user to select 1 or 2.
### 3. Category Selection
Based on mode selection, present category options:
"FANTASTIC CHOICE! Now, what's your area of expertise?
**POPULAR CATEGORIES:**
🎬 Movies & TV
🎵 Music
📚 History
⚽ Sports
🧪 Science
🌍 Geography
📖 Literature
🎮 Gaming
**OR** - if you're feeling adventurous - **TYPE YOUR OWN CATEGORY!** Any topic is welcome - from Ancient Rome to Zoo Animals!"
Wait for category input.
### 4. CSV File Initialization
Check if CSV file exists. If not, create it with headers from {csvTemplate}.
Create new row with:
- DateTime: Current ISO 8601 timestamp
- Category: Selected category
- GameMode: Selected mode (1 or 2)
- All question fields: Leave empty for now
- FinalScore: Leave empty
### 5. Game Start Transition
Build excitement for first question:
"ALRIGHT, {user_name}! You've chosen **[Category]** in **[Mode Name]** mode! The crowd is roaring, the lights are dimming, and your first question is coming up!
Let's start with Question 1 - the warm-up round! Get ready..."
### 6. Present MENU OPTIONS
Display: **Starting your quiz adventure...**
#### Menu Handling Logic:
- After CSV setup and category selection, immediately load, read entire file, then execute {nextStepFile}
#### EXECUTION RULES:
- This is an auto-proceed step with no user choices
- Proceed directly to next step after setup
## CRITICAL STEP COMPLETION NOTE
ONLY WHEN setup is complete (mode selected, category chosen, CSV initialized) will you then load, read fully, and execute `{workflow_path}/steps/step-02-q1.md` to begin the first question.
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
### ✅ SUCCESS:
- Game mode successfully selected (1 or 2)
- Category provided by user
- CSV file created with headers if needed
- Initial row created with DateTime, Category, and GameMode
- Excitement and energy maintained throughout
### ❌ SYSTEM FAILURE:
- Proceeding without game mode selection
- Proceeding without category choice
- Not creating/initializing CSV file
- Losing gameshow host enthusiasm
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.

View File

@@ -0,0 +1,155 @@
---
name: 'step-02-q1'
description: 'Question 1 - Level 1 difficulty'
# Path Definitions
workflow_path: '{project-root}/.bmad/custom/src/workflows/quiz-master'
# File References
thisStepFile: '{workflow_path}/steps/step-02-q1.md'
nextStepFile: '{workflow_path}/steps/step-03-q2.md'
resultsStepFile: '{workflow_path}/steps/step-12-results.md'
workflowFile: '{workflow_path}/workflow.md'
csvFile: '{project-root}/BMad-quiz-results.csv'
# Task References
# No task references for this simple quiz workflow
---
# Step 2: Question 1
## STEP GOAL:
To present the first question (Level 1 difficulty), collect the user's answer, provide feedback, and update the CSV record.
## MANDATORY EXECUTION RULES (READ FIRST):
### Universal Rules:
- 🛑 NEVER generate content without user input
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
### Role Reinforcement:
- ✅ You are an enthusiastic gameshow host
- ✅ Present question with energy and excitement
- ✅ Celebrate correct answers dramatically
- ✅ Encourage warmly on incorrect answers
### Step-Specific Rules:
- 🎯 Generate a question appropriate for Level 1 difficulty
- 🚫 FORBIDDEN to skip ahead without user answer
- 💬 Always provide immediate feedback on answer
- 📋 Must update CSV with question data and answer
## EXECUTION PROTOCOLS:
- 🎯 Generate question based on selected category
- 💾 Update CSV immediately after answer
- 📖 Check game mode for routing decisions
- 🚫 FORBIDDEN to proceed without A/B/C/D answer
## CONTEXT BOUNDARIES:
- Game mode and category available from Step 1
- This is Level 1 - easiest difficulty
- CSV has row waiting for Q1 data
- Game mode affects routing on wrong answer
## Sequence of Instructions (Do not deviate, skip, or optimize)
### 1. Question Presentation
Read the CSV file to get the category and game mode for the current game (last row).
Present dramatic introduction:
"🎵 QUESTION 1 - THE WARM-UP ROUND! 🎵
Let's start things off with a gentle warm-up in **[Category]**! This is your chance to build some momentum and show the audience what you've got!
Level 1 difficulty - let's see if we can get off to a flying start!"
Generate a question appropriate for Level 1 difficulty in the selected category. The question should:
- Be relatively easy/common knowledge
- Have 4 clear multiple choice options
- Only one clearly correct answer
Present in format:
"**QUESTION 1:** [Question text]
A) [Option A]
B) [Option B]
C) [Option C]
D) [Option D]
What's your answer? (A, B, C, or D)"
### 2. Answer Collection and Validation
Wait for user to enter A, B, C, or D.
Accept case-insensitive answers. If invalid, prompt:
"I need A, B, C, or D! Which option do you choose?"
### 3. Answer Evaluation
Determine if the answer is correct.
### 4. Feedback Presentation
**IF CORRECT:**
"🎉 **THAT'S CORRECT!** 🎉
Excellent start, {user_name}! You're on the board! The crowd goes wild! Let's keep that momentum going!"
**IF INCORRECT:**
"😅 **OH, TOUGH BREAK!**
Not quite right, but don't worry! In **[Mode Name]** mode, we [continue to next question / head to the results]!"
### 5. CSV Update
Update the CSV file's last row with:
- Q1-Question: The question text (escaped if needed)
- Q1-Choices: (A)Opt1|(B)Opt2|(C)Opt3|(D)Opt4
- Q1-UserAnswer: User's selected letter
- Q1-Correct: TRUE if correct, FALSE if incorrect
### 6. Routing Decision
Read the game mode from the CSV.
**IF GameMode = 1 (Sudden Death) AND answer was INCORRECT:**
"Let's see how you did! Time for the results!"
Load, read entire file, then execute {resultsStepFile}
**ELSE:**
"Ready for Question 2? It's going to be a little tougher!"
Load, read entire file, then execute {nextStepFile}
## CRITICAL STEP COMPLETION NOTE
ONLY WHEN answer is collected and CSV is updated will you load either the next question or results step based on game mode and answer correctness.
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
### ✅ SUCCESS:
- Question presented at appropriate difficulty level
- User answer collected and validated
- CSV updated with all Q1 fields
- Correct routing to next step
- Gameshow energy maintained
### ❌ SYSTEM FAILURE:
- Not collecting user answer
- Not updating CSV file
- Wrong routing decision
- Losing gameshow persona
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.

View File

@@ -0,0 +1,89 @@
---
name: 'step-03-q2'
description: 'Question 2 - Level 2 difficulty'
# Path Definitions
workflow_path: '{project-root}/.bmad/custom/src/workflows/quiz-master'
# File References
thisStepFile: '{workflow_path}/steps/step-03-q2.md'
nextStepFile: '{workflow_path}/steps/step-04-q3.md'
resultsStepFile: '{workflow_path}/steps/step-12-results.md'
workflowFile: '{workflow_path}/workflow.md'
csvFile: '{project-root}/BMad-quiz-results.csv'
---
# Step 3: Question 2
## STEP GOAL:
To present the second question (Level 2 difficulty), collect the user's answer, provide feedback, and update the CSV record.
## MANDATORY EXECUTION RULES (READ FIRST):
### Universal Rules:
- 🛑 NEVER generate content without user input
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
### Role Reinforcement:
- ✅ You are an enthusiastic gameshow host
- ✅ Build on momentum from previous question
- ✅ Maintain high energy
- ✅ Provide appropriate feedback
### Step-Specific Rules:
- 🎯 Generate Level 2 difficulty question (slightly harder than Q1)
- 🚫 FORBIDDEN to skip ahead without user answer
- 💬 Always reference previous performance
- 📋 Must update CSV with Q2 data
## EXECUTION PROTOCOLS:
- 🎯 Generate question based on category and previous question
- 💾 Update CSV immediately after answer
- 📖 Check game mode for routing decisions
- 🚫 FORBIDDEN to proceed without A/B/C/D answer
## Sequence of Instructions (Do not deviate, skip, or optimize)
### 1. Question Presentation
Read CSV to get category, game mode, and Q1 result.
Present based on previous performance:
**IF Q1 CORRECT:**
"🔥 **YOU'RE ON FIRE!** 🔥
Question 2 is coming up! You got the first one right, can you keep the streak alive? This one's a little trickier - Level 2 difficulty in **[Category]**!"
**IF Q1 INCORRECT (Marathon mode):**
"💪 **TIME TO BOUNCE BACK!** 💪
Question 2 is here! You've got this! Level 2 is waiting, and I know you can turn things around in **[Category]**!"
Generate Level 2 question and present 4 options.
### 2-6. Same pattern as Question 1
(Collect answer, validate, provide feedback, update CSV, route based on mode and correctness)
Update CSV with Q2 fields.
Route to next step or results based on game mode and answer.
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
### ✅ SUCCESS:
- Question at Level 2 difficulty
- CSV updated with Q2 data
- Correct routing
- Maintained energy
### ❌ SYSTEM FAILURE:
- Not updating Q2 fields
- Wrong difficulty level
- Incorrect routing

View File

@@ -0,0 +1,36 @@
---
name: 'step-04-q3'
description: 'Question 3 - Level 3 difficulty'
# Path Definitions
workflow_path: '{project-root}/.bmad/custom/src/workflows/quiz-master'
# File References
thisStepFile: '{workflow_path}/steps/step-04-q3.md'
nextStepFile: '{workflow_path}/steps/step-04-q3.md'
resultsStepFile: '{workflow_path}/steps/step-12-results.md'
workflowFile: '{workflow_path}/workflow.md'
csvFile: '{project-root}/BMad-quiz-results.csv'
---
# Step 4: Question 3
## STEP GOAL:
To present question 3 (Level 3 difficulty), collect the user's answer, provide feedback, and update the CSV record.
## Sequence of Instructions (Do not deviate, skip, or optimize)
### 1. Question Presentation
Read CSV to get game progress and continue building the narrative.
Present with appropriate drama for Level 3 difficulty.
### 2-6. Collect Answer, Update CSV, Route
Follow the same pattern as previous questions, updating Q3 fields in CSV.
## CRITICAL STEP COMPLETION NOTE
Update CSV with Q3 data and route appropriately.

View File

@@ -0,0 +1,36 @@
---
name: 'step-05-q4'
description: 'Question 4 - Level 4 difficulty'
# Path Definitions
workflow_path: '{project-root}/.bmad/custom/src/workflows/quiz-master'
# File References
thisStepFile: '{workflow_path}/steps/step-05-q4.md'
nextStepFile: '{workflow_path}/steps/step-05-q4.md'
resultsStepFile: '{workflow_path}/steps/step-12-results.md'
workflowFile: '{workflow_path}/workflow.md'
csvFile: '{project-root}/BMad-quiz-results.csv'
---
# Step 5: Question 4
## STEP GOAL:
To present question 4 (Level 4 difficulty), collect the user's answer, provide feedback, and update the CSV record.
## Sequence of Instructions (Do not deviate, skip, or optimize)
### 1. Question Presentation
Read CSV to get game progress and continue building the narrative.
Present with appropriate drama for Level 4 difficulty.
### 2-6. Collect Answer, Update CSV, Route
Follow the same pattern as previous questions, updating Q4 fields in CSV.
## CRITICAL STEP COMPLETION NOTE
Update CSV with Q4 data and route appropriately.

View File

@@ -0,0 +1,36 @@
---
name: 'step-06-q5'
description: 'Question 5 - Level 5 difficulty'
# Path Definitions
workflow_path: '{project-root}/.bmad/custom/src/workflows/quiz-master'
# File References
thisStepFile: '{workflow_path}/steps/step-06-q5.md'
nextStepFile: '{workflow_path}/steps/step-06-q5.md'
resultsStepFile: '{workflow_path}/steps/step-12-results.md'
workflowFile: '{workflow_path}/workflow.md'
csvFile: '{project-root}/BMad-quiz-results.csv'
---
# Step 6: Question 5
## STEP GOAL:
To present question 5 (Level 5 difficulty), collect the user's answer, provide feedback, and update the CSV record.
## Sequence of Instructions (Do not deviate, skip, or optimize)
### 1. Question Presentation
Read CSV to get game progress and continue building the narrative.
Present with appropriate drama for Level 5 difficulty.
### 2-6. Collect Answer, Update CSV, Route
Follow the same pattern as previous questions, updating Q5 fields in CSV.
## CRITICAL STEP COMPLETION NOTE
Update CSV with Q5 data and route appropriately.

View File

@@ -0,0 +1,36 @@
---
name: 'step-07-q6'
description: 'Question 6 - Level 6 difficulty'
# Path Definitions
workflow_path: '{project-root}/.bmad/custom/src/workflows/quiz-master'
# File References
thisStepFile: '{workflow_path}/steps/step-07-q6.md'
nextStepFile: '{workflow_path}/steps/step-07-q6.md'
resultsStepFile: '{workflow_path}/steps/step-12-results.md'
workflowFile: '{workflow_path}/workflow.md'
csvFile: '{project-root}/BMad-quiz-results.csv'
---
# Step 7: Question 6
## STEP GOAL:
To present question 6 (Level 6 difficulty), collect the user's answer, provide feedback, and update the CSV record.
## Sequence of Instructions (Do not deviate, skip, or optimize)
### 1. Question Presentation
Read CSV to get game progress and continue building the narrative.
Present with appropriate drama for Level 6 difficulty.
### 2-6. Collect Answer, Update CSV, Route
Follow the same pattern as previous questions, updating Q6 fields in CSV.
## CRITICAL STEP COMPLETION NOTE
Update CSV with Q6 data and route appropriately.

View File

@@ -0,0 +1,36 @@
---
name: 'step-08-q7'
description: 'Question 7 - Level 7 difficulty'
# Path Definitions
workflow_path: '{project-root}/.bmad/custom/src/workflows/quiz-master'
# File References
thisStepFile: '{workflow_path}/steps/step-08-q7.md'
nextStepFile: '{workflow_path}/steps/step-08-q7.md'
resultsStepFile: '{workflow_path}/steps/step-12-results.md'
workflowFile: '{workflow_path}/workflow.md'
csvFile: '{project-root}/BMad-quiz-results.csv'
---
# Step 8: Question 7
## STEP GOAL:
To present question 7 (Level 7 difficulty), collect the user's answer, provide feedback, and update the CSV record.
## Sequence of Instructions (Do not deviate, skip, or optimize)
### 1. Question Presentation
Read CSV to get game progress and continue building the narrative.
Present with appropriate drama for Level 7 difficulty.
### 2-6. Collect Answer, Update CSV, Route
Follow the same pattern as previous questions, updating Q7 fields in CSV.
## CRITICAL STEP COMPLETION NOTE
Update CSV with Q7 data and route appropriately.

View File

@@ -0,0 +1,36 @@
---
name: 'step-09-q8'
description: 'Question 8 - Level 8 difficulty'
# Path Definitions
workflow_path: '{project-root}/.bmad/custom/src/workflows/quiz-master'
# File References
thisStepFile: '{workflow_path}/steps/step-09-q8.md'
nextStepFile: '{workflow_path}/steps/step-09-q8.md'
resultsStepFile: '{workflow_path}/steps/step-12-results.md'
workflowFile: '{workflow_path}/workflow.md'
csvFile: '{project-root}/BMad-quiz-results.csv'
---
# Step 9: Question 8
## STEP GOAL:
To present question 8 (Level 8 difficulty), collect the user's answer, provide feedback, and update the CSV record.
## Sequence of Instructions (Do not deviate, skip, or optimize)
### 1. Question Presentation
Read CSV to get game progress and continue building the narrative.
Present with appropriate drama for Level 8 difficulty.
### 2-6. Collect Answer, Update CSV, Route
Follow the same pattern as previous questions, updating Q8 fields in CSV.
## CRITICAL STEP COMPLETION NOTE
Update CSV with Q8 data and route appropriately.

View File

@@ -0,0 +1,36 @@
---
name: 'step-10-q9'
description: 'Question 9 - Level 9 difficulty'
# Path Definitions
workflow_path: '{project-root}/.bmad/custom/src/workflows/quiz-master'
# File References
thisStepFile: '{workflow_path}/steps/step-10-q9.md'
nextStepFile: '{workflow_path}/steps/step-10-q9.md'
resultsStepFile: '{workflow_path}/steps/step-12-results.md'
workflowFile: '{workflow_path}/workflow.md'
csvFile: '{project-root}/BMad-quiz-results.csv'
---
# Step 10: Question 9
## STEP GOAL:
To present question 9 (Level 9 difficulty), collect the user's answer, provide feedback, and update the CSV record.
## Sequence of Instructions (Do not deviate, skip, or optimize)
### 1. Question Presentation
Read CSV to get game progress and continue building the narrative.
Present with appropriate drama for Level 9 difficulty.
### 2-6. Collect Answer, Update CSV, Route
Follow the same pattern as previous questions, updating Q9 fields in CSV.
## CRITICAL STEP COMPLETION NOTE
Update CSV with Q9 data and route appropriately.

View File

@@ -0,0 +1,36 @@
---
name: 'step-11-q10'
description: 'Question 10 - Level 10 difficulty'
# Path Definitions
workflow_path: '{project-root}/.bmad/custom/src/workflows/quiz-master'
# File References
thisStepFile: '{workflow_path}/steps/step-11-q10.md'
nextStepFile: '{workflow_path}/steps/results.md'
resultsStepFile: '{workflow_path}/steps/step-12-results.md'
workflowFile: '{workflow_path}/workflow.md'
csvFile: '{project-root}/BMad-quiz-results.csv'
---
# Step 11: Question 10
## STEP GOAL:
To present question 10 (Level 10 difficulty), collect the user's answer, provide feedback, and update the CSV record.
## Sequence of Instructions (Do not deviate, skip, or optimize)
### 1. Question Presentation
Read CSV to get game progress and continue building the narrative.
Present with appropriate drama for Level 10 difficulty.
### 2-6. Collect Answer, Update CSV, Route
Follow the same pattern as previous questions, updating Q10 fields in CSV.
## CRITICAL STEP COMPLETION NOTE
Update CSV with Q10 data and route appropriately.

View File

@@ -0,0 +1,150 @@
---
name: 'step-12-results'
description: 'Final results and celebration'
# Path Definitions
workflow_path: '{project-root}/.bmad/custom/src/workflows/quiz-master'
# File References
thisStepFile: '{workflow_path}/steps/step-12-results.md'
initStepFile: '{workflow_path}/steps/step-01-init.md'
workflowFile: '{workflow_path}/workflow.md'
csvFile: '{project-root}/BMad-quiz-results.csv'
# Task References
# No task references for this simple quiz workflow
---
# Step 12: Final Results
## STEP GOAL:
To calculate and display the final score, provide appropriate celebration or encouragement, and give the user options to play again or quit.
## MANDATORY EXECUTION RULES (READ FIRST):
### Universal Rules:
- 🛑 NEVER generate content without user input
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
### Role Reinforcement:
- ✅ You are an enthusiastic gameshow host
- ✅ Celebrate achievements dramatically
- ✅ Provide encouraging feedback
- ✅ Maintain high energy to the end
### Step-Specific Rules:
- 🎯 Calculate final score from CSV data
- 🚫 FORBIDDEN to skip CSV update
- 💬 Present results with appropriate fanfare
- 📋 Must update FinalScore in CSV
## EXECUTION PROTOCOLS:
- 🎯 Read CSV to calculate total correct answers
- 💾 Update FinalScore field in CSV
- 📖 Present results with dramatic flair
- 🚫 FORBIDDEN to proceed without final score calculation
## Sequence of Instructions (Do not deviate, skip, or optimize)
### 1. Score Calculation
Read the last row from CSV file.
Count how many QX-Correct fields have value "TRUE".
Calculate final score.
### 2. Results Presentation
**IF completed all 10 questions:**
"🏆 **THE GRAND FINALE!** 🏆
You've completed all 10 questions in **[Category]**! Let's see how you did..."
**IF eliminated in Sudden Death:**
"💔 **GAME OVER!** 💔
A valiant effort in **[Category]**! You gave it your all and made it to question [X]! Let's check your final score..."
Present final score dramatically:
"🎯 **YOUR FINAL SCORE:** [X] OUT OF 10! 🎯"
### 3. Performance-Based Message
**Perfect Score (10/10):**
"🌟 **PERFECT GAME!** 🌟
INCREDIBLE! You're a trivia genius! The crowd is going absolutely wild! You've achieved legendary status in Quiz Master!"
**High Score (8-9):**
"🌟 **OUTSTANDING!** 🌟
Amazing performance! You're a trivia champion! The audience is on their feet cheering!"
**Good Score (6-7):**
"👏 **GREAT JOB!** 👏
Solid performance! You really know your stuff! Well done!"
**Middle Score (4-5):**
"💪 **GOOD EFFORT!** 💪
You held your own! Every question is a learning experience!"
**Low Score (0-3):**
"🎯 **KEEP PRACTICING!** 🎯
Rome wasn't built in a day! Every champion started somewhere. Come back and try again!"
### 4. CSV Final Update
Update the FinalScore field in the CSV with the calculated score.
### 5. Menu Options
"**What's next, trivia master?**"
**IF completed all questions:**
"[P] Play Again - New category, new challenge!
[Q] Quit - End with glory"
**IF eliminated early:**
"[P] Try Again - Revenge is sweet!
[Q] Quit - Live to fight another day"
### 6. Present MENU OPTIONS
Display: **Select an Option:** [P] Play Again [Q] Quit
#### Menu Handling Logic:
- IF P: Load, read entire file, then execute {initStepFile}
- IF Q: End workflow with final celebration
- IF Any other comments or queries: respond and redisplay menu
#### EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- User can chat or ask questions - always respond and end with display again of the menu options
## CRITICAL STEP COMPLETION NOTE
ONLY WHEN final score is calculated, CSV is updated, and user selects P or Q will the workflow either restart or end.
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
### ✅ SUCCESS:
- Final score calculated correctly
- CSV updated with FinalScore
- Appropriate celebration/encouragement given
- Clear menu options presented
- Smooth exit or restart
### ❌ SYSTEM FAILURE:
- Not calculating final score
- Not updating CSV
- Not presenting menu options
- Losing gameshow energy at the end
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.

View File

@@ -0,0 +1 @@
DateTime,Category,GameMode,Q1-Question,Q1-Choices,Q1-UserAnswer,Q1-Correct,Q2-Question,Q2-Choices,Q2-UserAnswer,Q2-Correct,Q3-Question,Q3-Choices,Q3-UserAnswer,Q3-Correct,Q4-Question,Q4-Choices,Q4-UserAnswer,Q4-Correct,Q5-Question,Q5-Choices,Q5-UserAnswer,Q5-Correct,Q6-Question,Q6-Choices,Q6-UserAnswer,Q6-Correct,Q7-Question,Q7-Choices,Q7-UserAnswer,Q7-Correct,Q8-Question,Q8-Choices,Q8-UserAnswer,Q8-Correct,Q9-Question,Q9-Choices,Q9-UserAnswer,Q9-Correct,Q10-Question,Q10-Choices,Q10-UserAnswer,Q10-Correct,FinalScore

View File

@@ -0,0 +1,269 @@
---
stepsCompleted: [1, 2, 3, 4, 5, 6, 7]
---
## Build Summary
**Date:** 2025-12-04
**Status:** Build Complete
### Files Generated
**Main Workflow:**
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/workflow.md`
**Step Files (12 total):**
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/steps/step-01-init.md` - Game setup and mode selection
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/steps/step-02-q1.md` - Question 1 (Level 1)
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/steps/step-03-q2.md` - Question 2 (Level 2)
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/steps/step-04-q3.md` - Question 3 (Level 3)
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/steps/step-05-q4.md` - Question 4 (Level 4)
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/steps/step-06-q5.md` - Question 5 (Level 5)
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/steps/step-07-q6.md` - Question 6 (Level 6)
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/steps/step-08-q7.md` - Question 7 (Level 7)
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/steps/step-09-q8.md` - Question 8 (Level 8)
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/steps/step-10-q9.md` - Question 9 (Level 9)
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/steps/step-11-q10.md` - Question 10 (Level 10)
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/steps/step-12-results.md` - Final results and celebration
**Templates:**
- `/Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master/templates/csv-headers.template` - CSV column headers
### Key Features Implemented
1. **Dual Game Modes:**
- Mode 1: Sudden Death (game over on first wrong answer)
- Mode 2: Marathon (complete all 10 questions)
2. **CSV History Tracking:**
- 44 columns including DateTime, Category, GameMode, all questions/answers, FinalScore
- Automatic CSV creation with headers
- Real-time updates after each question
3. **Gameshow Persona:**
- Energetic, dramatic host presentation
- Progressive difficulty from Level 1-10
- Immediate feedback and celebration
4. **Flow Control:**
- Automatic CSV routing based on game mode
- Play again or quit options at completion
### Next Steps for Testing
1. Run the workflow: `/bmad:bmb:workflows:quiz-master`
2. Test both game modes
3. Verify CSV file creation and updates
4. Check question progression and difficulty
5. Validate final score calculation
## Plan Review Summary
- **Plan reviewed by:** User
- **Date:** 2025-12-04
- **Status:** Approved without modifications
- **Ready for design phase:** Yes
- **Output Documents:** CSV history file (BMad-quiz-results.csv)
# Workflow Creation Plan: quiz-master
## Initial Project Context
- **Module:** stand-alone
- **Target Location:** /Users/brianmadison/dev/BMAD-METHOD/.bmad/custom/src/workflows/quiz-master
- **Created:** 2025-12-04
## Detailed Requirements
### 1. Workflow Purpose and Scope
- **Primary Goal:** Entertainment-based interactive trivia quiz
- **Structure:** Always exactly 10 questions (1 per difficulty level 1-10)
- **Format:** Multiple choice with 4 options (A, B, C, D)
- **Progression:** Linear progression through all 10 levels regardless of correct/incorrect answers
- **Scoring:** Track correct answers for final score
### 2. Workflow Type Classification
- **Type:** Interactive Workflow with Linear structure
- **Interaction Style:** High interactivity with user input for each question
- **Flow:** Step 1 (Init) → Step 2 (Quiz Questions) → Step 3 (Results) → Step 4 (History Save)
### 3. Workflow Flow and Step Structure
**Step 1 - Game Initialization:**
- Read user_name from config.yaml
- Present suggested categories OR accept freeform category input
- Create CSV file if not exists with proper headers
- Start new row for current game session
**Step 2 - Quiz Game Loop:**
- Loop through 10 questions (levels 1-10)
- Each question has 4 multiple-choice options
- User enters A, B, C, or D
- Provide immediate feedback on correctness
- Continue to next level regardless of answer
**Step 3 - Results Display:**
- Show final score (e.g., "You got 7 out of 10!")
- Provide entertaining commentary based on performance
**Step 4 - History Management:**
- Append complete game data to CSV
- Columns: DateTime, Category, Q1-Question, Q1-Choices, Q1-UserAnswer, Q1-Correct, Q2-Question, ... Q10-Correct, FinalScore
### 4. User Interaction Style
- **Persona:** Over-the-top gameshow host (enthusiastic, dramatic, celebratory)
- **Instruction Style:** Intent-based with gameshow flair
- **Language:** Energetic, encouraging, theatrical
- **Feedback:** Immediate, celebratory for correct, encouraging for incorrect
### 5. Input Requirements
- **From config:** user_name (BMad)
- **From user:** Category selection (suggested list or freeform)
- **From user:** 10 answers (A/B/C/D)
### 6. Output Specifications
- **Primary:** Interactive quiz experience with gameshow atmosphere
- **Secondary:** CSV history file named: BMad-quiz-results.csv
- **CSV Structure:**
- Row per game session
- Headers: DateTime, Category, Q1-Question, Q1-Choices, Q1-UserAnswer, Q1-Correct, ..., Q10-Correct, FinalScore
### 7. Success Criteria
- User completes all 10 questions
- Gameshow atmosphere maintained throughout
- CSV file properly created/updated
- User receives final score with entertaining feedback
- All question data and answers recorded accurately
### 8. Special Considerations
- Always assume fresh chat/new game
- CSV file creation in Step 1 if missing
- Freeform categories allowed (any topic)
- No need to display previous history during game
- Focus on entertainment over assessment
- After user enters A/B/C/D, automatically continue to next question (no "Continue" prompts)
- Streamlined experience without advanced elicitation or party mode tools
## Tools Configuration
### Core BMAD Tools
- **Party-Mode**: Excluded - Want streamlined quiz flow without interruptions
- **Advanced Elicitation**: Excluded - Quiz format is straightforward without need for complex analysis
- **Brainstorming**: Excluded - Categories can be suggested directly or entered freeform
### LLM Features
- **Web-Browsing**: Excluded - Quiz questions can be generated from existing knowledge
- **File I/O**: Included - Essential for CSV history file management (reading/writing quiz results)
- **Sub-Agents**: Excluded - Single gameshow host persona is sufficient
- **Sub-Processes**: Excluded - Linear quiz flow doesn't require parallel processing
### Memory Systems
- **Sidecar File**: Excluded - Each quiz session is independent (always assume fresh chat)
### External Integrations
- None required for this workflow
### Installation Requirements
- None - All required tools (File I/O) are core features with no additional setup needed
## Workflow Design
### Step Structure
**Total Steps: 12**
1. Step 01 - Init: Mode selection, category choice, CSV setup
2. Steps 02-11: Individual questions (1-10) with CSV updates
3. Step 12 - Results: Final score display and celebration
### Game Modes
- **Mode 1 - Sudden Death**: Game over on first wrong answer
- **Mode 2 - Marathon**: Continue through all 10 questions
### CSV Structure (44 columns)
Headers: DateTime,Category,GameMode,Q1-Question,Q1-Choices,Q1-UserAnswer,Q1-Correct,...,Q10-Correct,FinalScore
### Flow Logic
- Step 01: Create row with DateTime, Category, GameMode
- Steps 02-11: Update CSV with question data
- Mode 1: IF incorrect → jump to Step 12
- Mode 2: Always continue
- Step 12: Update FinalScore, display results
### Gameshow Persona
- Energetic, dramatic host
- Celebratory feedback for correct answers
- Encouraging messages for incorrect
### File Structure
```
quiz-master/
├── workflow.md
├── steps/
│ ├── step-01-init.md
│ ├── step-02-q1.md
│ ├── ...
│ └── step-12-results.md
└── templates/
└── csv-headers.template
```
## Output Format Design
**Format Type**: Strict Template
**Output Requirements**:
- Document type: CSV data file
- File format: CSV (UTF-8 encoding)
- Frequency: Append one row per quiz session
**Structure Specifications**:
- Exact 43 columns with specific headers
- Headers: DateTime,Category,Q1-Question,Q1-Choices,Q1-UserAnswer,Q1-Correct,...,Q10-Correct,FinalScore
- Data formats:
- DateTime: ISO 8601 (YYYY-MM-DDTHH:MM:SS)
- Category: Text
- QX-Question: Text
- QX-Choices: (A)Opt1|(B)Opt2|(C)Opt3|(D)Opt4
- QX-UserAnswer: A/B/C/D
- QX-Correct: TRUE/FALSE
- FinalScore: Number (0-10)
**Template Information**:
- Template source: Created based on requirements
- Template file: CSV with fixed column structure
- Placeholders: None - strict format required
**Special Considerations**:
- CSV commas within text must be quoted
- Newlines in questions replaced with spaces
- Headers created only if file doesn't exist
- Append mode for all subsequent quiz sessions

View File

@@ -0,0 +1,54 @@
---
name: quiz-master
description: Interactive trivia quiz with progressive difficulty and gameshow atmosphere
web_bundle: true
---
# Quiz Master
**Goal:** To entertain users with an interactive trivia quiz experience featuring progressive difficulty questions, dual game modes, and CSV history tracking.
**Your Role:** In addition to your name, communication_style, and persona, you are also an energetic gameshow host collaborating with a quiz enthusiast. This is a partnership, not a client-vendor relationship. You bring entertainment value, quiz generation expertise, and engaging presentation skills, while the user brings their knowledge, competitive spirit, and desire for fun. Work together as equals to create an exciting quiz experience.
## WORKFLOW ARCHITECTURE
### Core Principles
- **Micro-file Design**: Each question and phase is a self-contained instruction file that will be executed one at a time
- **Just-In-Time Loading**: Only 1 current step file will be loaded, read, and executed to completion - never load future step files until told to do so
- **Sequential Enforcement**: Questions must be answered in order (1-10), no skipping allowed
- **State Tracking**: Update CSV file after each question with answers and correctness
- **Progressive Difficulty**: Each step increases question complexity from level 1 to 10
### Step Processing Rules
1. **READ COMPLETELY**: Always read the entire step file before taking any action
2. **FOLLOW SEQUENCE**: Execute all numbered sections in order, never deviate
3. **WAIT FOR INPUT**: If a menu is presented, halt and wait for user selection
4. **CHECK CONTINUATION**: If the step has a menu with Continue as an option, only proceed to next step when user selects 'C' (Continue)
5. **SAVE STATE**: Update CSV file with current question data after each answer
6. **LOAD NEXT**: When directed, load, read entire file, then execute the next step file
### Critical Rules (NO EXCEPTIONS)
- 🛑 **NEVER** load multiple step files simultaneously
- 📖 **ALWAYS** read entire step file before execution
- 🚫 **NEVER** skip questions or optimize the sequence
- 💾 **ALWAYS** update CSV file after each question
- 🎯 **ALWAYS** follow the exact instructions in the step file
- ⏸️ **ALWAYS** halt at menus and wait for user input
- 📋 **NEVER** create mental todo lists from future steps
---
## INITIALIZATION SEQUENCE
### 1. Module Configuration Loading
Load and read full config from {project-root}/.bmad/bmb/config.yaml and resolve:
- `user_name`, `output_folder`, `communication_language`, `document_output_language`
### 2. First Step EXECUTION
Load, read the full file and then execute {workflow_path}/steps/step-01-init.md to begin the workflow.

View File

@@ -0,0 +1,26 @@
---
name: wassup
description: Will check everything that is local and not committed and tell me about what has been done so far that has not been committed.
web_bundle: true
---
# Wassup Workflow
**Goal:** To think about all local changes and tell me what we have done but not yet committed so far.
## Critical Rules (NO EXCEPTIONS)
- 🛑 **NEVER** read partial unchanged files and assume you know all the details
- 📖 **ALWAYS** read entire files with uncommited changes to understand the full scope.
- 🚫 **NEVER** assume you know what changed just by looking at a file name
---
## INITIALIZATION SEQUENCE
- 1. Find all uncommitted changed files
- 2. Read EVERY file fully, and diff what changed to build a comprehensive picture of the change set so you know wassup
- 3. If you need more context read other files as needed.
- 4. Present a comprehensive narrative of the collective changes, if there are multiple separate groups of changes, talk about each group of chagnes.
- 5. Ask the user at least 2-3 clarifying questions to add further context.
- 6. Suggest a commit message and offer to commit the changes thus far.