mirror of
https://github.com/bmadcode/BMAD-METHOD.git
synced 2025-12-29 16:14:59 +00:00
move agent builder docs, create workflow builder docs, and a new workflow builder to conform to stepwise workflow creation
This commit is contained in:
@@ -47,4 +47,4 @@ When creating module agents:
|
||||
4. Replace menu with actual available workflows
|
||||
5. Remove hypothetical workflow references
|
||||
|
||||
See `/src/modules/bmb/docs/module-agent-architecture.md` for complete guide.
|
||||
See `/src/modules/bmb/docs/agents/module-agent-architecture.md` for complete guide.
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
category,restriction,considerations,alternatives,notes
|
||||
Allergy,Nuts,Severe allergy, check labels carefully,Seeds, sunflower seed butter
|
||||
Allergy,Shellfish,Cross-reactivity with some fish,Fin fish, vegetarian proteins
|
||||
Allergy,Dairy,Calcium and vitamin D needs,Almond milk, fortified plant milks
|
||||
Allergy,Soy,Protein source replacement,Legumes, quinoa, seitan
|
||||
Allergy,Gluten,Celiac vs sensitivity,Quinoa, rice, certified gluten-free
|
||||
Medical,Diabetes,Carbohydrate timing and type,Fiber-rich foods, low glycemic
|
||||
Medical,Hypertension,Sodium restriction,Herbs, spices, salt-free seasonings
|
||||
Medical,IBS,FODMAP triggers,Low FODMAP vegetables, soluble fiber
|
||||
Ethical,Vegetarian,Complete protein combinations,Quinoa, buckwheat, hemp seeds
|
||||
Ethical,Vegan,B12 supplementation mandatory,Nutritional yeast, fortified foods
|
||||
Ethical,Halal,Meat sourcing requirements,Halal-certified products
|
||||
Ethical,Kosher,Dairy-meat separation,Parve alternatives
|
||||
Intolerance,Lactose,Dairy digestion issues,Lactase pills, aged cheeses
|
||||
Intolerance,FODMAP,Carbohydrate malabsorption,Low FODMAP fruits/veg
|
||||
Preference,Dislikes,Texture/flavor preferences,Similar texture alternatives
|
||||
Preference,Budget,Cost-effective options,Bulk buying, seasonal produce
|
||||
Preference,Convenience,Time-saving options,Pre-cut vegetables, frozen produce
|
||||
|
@@ -0,0 +1,16 @@
|
||||
goal,activity_level,multiplier,protein_ratio,protein_min,protein_max,fat_ratio,carb_ratio
|
||||
weight_loss,sedentary,1.2,0.3,1.6,2.2,0.35,0.35
|
||||
weight_loss,light,1.375,0.35,1.8,2.5,0.30,0.35
|
||||
weight_loss,moderate,1.55,0.4,2.0,2.8,0.30,0.30
|
||||
weight_loss,active,1.725,0.4,2.2,3.0,0.25,0.35
|
||||
weight_loss,very_active,1.9,0.45,2.5,3.3,0.25,0.30
|
||||
maintenance,sedentary,1.2,0.25,0.8,1.2,0.35,0.40
|
||||
maintenance,light,1.375,0.25,1.0,1.4,0.35,0.40
|
||||
maintenance,moderate,1.55,0.3,1.2,1.6,0.35,0.35
|
||||
maintenance,active,1.725,0.3,1.4,1.8,0.30,0.40
|
||||
maintenance,very_active,1.9,0.35,1.6,2.2,0.30,0.35
|
||||
muscle_gain,sedentary,1.2,0.35,1.8,2.5,0.30,0.35
|
||||
muscle_gain,light,1.375,0.4,2.0,2.8,0.30,0.30
|
||||
muscle_gain,moderate,1.55,0.4,2.2,3.0,0.25,0.35
|
||||
muscle_gain,active,1.725,0.45,2.5,3.3,0.25,0.30
|
||||
muscle_gain,very_active,1.9,0.45,2.8,3.5,0.25,0.30
|
||||
|
@@ -0,0 +1,28 @@
|
||||
category,name,prep_time,cook_time,total_time,protein_per_serving,complexity,meal_type,restrictions_friendly,batch_friendly
|
||||
Protein,Grilled Chicken Breast,10,20,30,35,beginner,lunch/dinner,all,yes
|
||||
Protein,Baked Salmon,5,15,20,22,beginner,lunch/dinner,gluten-free,no
|
||||
Protein,Lentils,0,25,25,18,beginner,lunch/dinner,vegan,yes
|
||||
Protein,Ground Turkey,5,15,20,25,beginner,lunch/dinner,all,yes
|
||||
Protein,Tofu Stir-fry,10,15,25,20,intermediate,lunch/dinner,vegan,no
|
||||
Protein,Eggs Scrambled,5,5,10,12,beginner,breakfast,vegetarian,no
|
||||
Protein,Greek Yogurt,0,0,0,17,beginner,snack,vegetarian,no
|
||||
Carb,Quinoa,5,15,20,8,beginner,lunch/dinner,gluten-free,yes
|
||||
Carb,Brown Rice,5,40,45,5,beginner,lunch/dinner,gluten-free,yes
|
||||
Carb,Sweet Potato,5,45,50,4,beginner,lunch/dinner,all,yes
|
||||
Carb,Oatmeal,2,5,7,5,beginner,breakfast,gluten-free,yes
|
||||
Carb,Whole Wheat Pasta,2,10,12,7,beginner,lunch/dinner,vegetarian,no
|
||||
Veggie,Broccoli,5,10,15,3,beginner,lunch/dinner,all,yes
|
||||
Veggie,Spinach,2,3,5,3,beginner,lunch/dinner,all,no
|
||||
Veggie,Bell Peppers,5,10,15,1,beginner,lunch/dinner,all,no
|
||||
Veggie,Kale,5,5,10,3,beginner,lunch/dinner,all,no
|
||||
Veggie,Avocado,2,0,2,2,beginner,snack/lunch,all,no
|
||||
Snack,Almonds,0,0,0,6,beginner,snack,gluten-free,no
|
||||
Snack,Apple with PB,2,0,2,4,beginner,snack,vegetarian,no
|
||||
Snack,Protein Smoothie,5,0,5,25,beginner,snack,all,no
|
||||
Snack,Hard Boiled Eggs,0,12,12,6,beginner,snack,vegetarian,yes
|
||||
Breakfast,Overnight Oats,5,0,5,10,beginner,breakfast,vegan,yes
|
||||
Breakfast,Protein Pancakes,10,10,20,20,intermediate,breakfast,vegetarian,no
|
||||
Breakfast,Veggie Omelet,5,10,15,18,intermediate,breakfast,vegetarian,no
|
||||
Quick Meal,Chicken Salad,10,0,10,30,beginner,lunch,gluten-free,no
|
||||
Quick Meal,Tuna Wrap,5,0,5,20,beginner,lunch,gluten-free,no
|
||||
Quick Meal,Buddha Bowl,15,0,15,15,intermediate,lunch,vegan,no
|
||||
|
@@ -0,0 +1,177 @@
|
||||
---
|
||||
name: 'step-01-init'
|
||||
description: 'Initialize the nutrition plan workflow by detecting continuation state and creating output document'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/{bmad_folder}/bmb/reference/workflows/meal-prep-nutrition'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-01-init.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-02-profile.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/nutrition-plan-{project_name}.md'
|
||||
templateFile: '{workflow_path}/templates/nutrition-plan.md'
|
||||
continueFile: '{workflow_path}/steps/step-01b-continue.md'
|
||||
# Template References
|
||||
# This step doesn't use content templates, only the main template
|
||||
---
|
||||
|
||||
# Step 1: Workflow Initialization
|
||||
|
||||
## 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 a nutrition expert and meal planning specialist
|
||||
- ✅ We engage in collaborative dialogue, not command-response
|
||||
- ✅ You bring nutritional expertise and structured planning, user brings their personal preferences and lifestyle constraints
|
||||
- ✅ Together we produce something better than the sum of our own parts
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- 🎯 Focus ONLY on initialization and setup
|
||||
- 🚫 FORBIDDEN to look ahead to future steps
|
||||
- 💬 Handle initialization professionally
|
||||
- 🚪 DETECT existing workflow state and handle continuation properly
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- 🎯 Show analysis before taking any action
|
||||
- 💾 Initialize document and update frontmatter
|
||||
- 📖 Set up frontmatter `stepsCompleted: [1]` before loading next step
|
||||
- 🚫 FORBIDDEN to load next step until setup is complete
|
||||
|
||||
## CONTEXT BOUNDARIES:
|
||||
|
||||
- Variables from workflow.md are available in memory
|
||||
- Previous context = what's in output document + frontmatter
|
||||
- Don't assume knowledge from other steps
|
||||
- Input document discovery happens in this step
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
To initialize the Nutrition Plan workflow by detecting continuation state, creating the output document, and preparing for the first collaborative session.
|
||||
|
||||
## INITIALIZATION SEQUENCE:
|
||||
|
||||
### 1. Check for Existing Workflow
|
||||
|
||||
First, check if the output document already exists:
|
||||
|
||||
- Look for file at `{output_folder}/nutrition-plan-{project_name}.md`
|
||||
- If exists, read the complete file including frontmatter
|
||||
- If not exists, this is a fresh workflow
|
||||
|
||||
### 2. Handle Continuation (If Document Exists)
|
||||
|
||||
If the document exists and has frontmatter with `stepsCompleted`:
|
||||
|
||||
- **STOP here** and load `./step-01b-continue.md` immediately
|
||||
- Do not proceed with any initialization tasks
|
||||
- Let step-01b handle the continuation logic
|
||||
|
||||
### 3. Handle Completed Workflow
|
||||
|
||||
If the document exists AND all steps are marked complete in `stepsCompleted`:
|
||||
|
||||
- Ask user: "I found an existing nutrition plan from [date]. Would you like to:
|
||||
1. Create a new nutrition plan
|
||||
2. Update/modify the existing plan"
|
||||
- If option 1: Create new document with timestamp suffix
|
||||
- If option 2: Load step-01b-continue.md
|
||||
|
||||
### 4. Fresh Workflow Setup (If No Document)
|
||||
|
||||
If no document exists or no `stepsCompleted` in frontmatter:
|
||||
|
||||
#### A. Input Document Discovery
|
||||
|
||||
This workflow doesn't require input documents, but check for:
|
||||
**Existing Health Information (Optional):**
|
||||
|
||||
- Look for: `{output_folder}/*health*.md`
|
||||
- Look for: `{output_folder}/*goals*.md`
|
||||
- If found, load completely and add to `inputDocuments` frontmatter
|
||||
|
||||
#### B. Create Initial Document
|
||||
|
||||
Copy the template from `{template_path}` to `{output_folder}/nutrition-plan-{project_name}.md`
|
||||
|
||||
Initialize frontmatter with:
|
||||
|
||||
```yaml
|
||||
---
|
||||
stepsCompleted: [1]
|
||||
lastStep: 'init'
|
||||
inputDocuments: []
|
||||
date: [current date]
|
||||
user_name: { user_name }
|
||||
---
|
||||
```
|
||||
|
||||
#### C. Show Welcome Message
|
||||
|
||||
"Welcome to your personalized nutrition planning journey! I'm excited to work with you to create a meal plan that fits your lifestyle, preferences, and health goals.
|
||||
|
||||
Let's begin by getting to know you and your nutrition goals."
|
||||
|
||||
## ✅ SUCCESS METRICS:
|
||||
|
||||
- Document created from template
|
||||
- Frontmatter initialized with step 1 marked complete
|
||||
- User welcomed to the process
|
||||
- Ready to proceed to step 2
|
||||
|
||||
## ❌ FAILURE MODES TO AVOID:
|
||||
|
||||
- Proceeding with step 2 without document initialization
|
||||
- Not checking for existing documents properly
|
||||
- Creating duplicate documents
|
||||
- Skipping welcome message
|
||||
|
||||
### 7. Present MENU OPTIONS
|
||||
|
||||
Display: **Proceeding to user profile collection...**
|
||||
|
||||
#### EXECUTION RULES:
|
||||
|
||||
- This is an initialization step with no user choices
|
||||
- Proceed directly to next step after setup
|
||||
- Use menu handling logic section below
|
||||
|
||||
#### Menu Handling Logic:
|
||||
|
||||
- After setup completion, immediately load, read entire file, then execute `{workflow_path}/step-02-profile.md` to begin user profile collection
|
||||
|
||||
---
|
||||
|
||||
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### ✅ SUCCESS:
|
||||
|
||||
- Document created from template
|
||||
- Frontmatter initialized with step 1 marked complete
|
||||
- User welcomed to the process
|
||||
- Ready to proceed to step 2
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN initialization setup is complete and document is created, will you then immediately load, read entire file, then execute `{workflow_path}/step-02-profile.md` to begin user profile collection.
|
||||
|
||||
### ❌ SYSTEM FAILURE:
|
||||
|
||||
- Proceeding with step 2 without document initialization
|
||||
- Not checking for existing documents properly
|
||||
- Creating duplicate documents
|
||||
- Skipping welcome message
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
|
||||
---
|
||||
@@ -0,0 +1,150 @@
|
||||
---
|
||||
name: 'step-01b-continue'
|
||||
description: 'Handle workflow continuation from previous session'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/{bmad_folder}/bmb/reference/workflows/meal-prep-nutrition'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-01b-continue.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/nutrition-plan-{project_name}.md'
|
||||
# Template References
|
||||
# This step doesn't use content templates, reads from existing output file
|
||||
---
|
||||
|
||||
# Step 1B: Workflow Continuation
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
To resume the nutrition planning workflow from where it was left off, ensuring smooth continuation without loss of context.
|
||||
|
||||
## 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 a nutrition expert and meal planning specialist
|
||||
- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role
|
||||
- ✅ We engage in collaborative dialogue, not command-response
|
||||
- ✅ You bring nutritional expertise and structured planning, user brings their personal preferences and lifestyle constraints
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- 🎯 Focus ONLY on analyzing and resuming workflow state
|
||||
- 🚫 FORBIDDEN to modify content completed in previous steps
|
||||
- 💬 Maintain continuity with previous sessions
|
||||
- 🚪 DETECT exact continuation point from frontmatter
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- 🎯 Show your analysis of current state before taking action
|
||||
- 💾 Keep existing frontmatter `stepsCompleted` values
|
||||
- 📖 Review the template content already generated
|
||||
- 🚫 FORBIDDEN to modify content completed in previous steps
|
||||
|
||||
## CONTEXT BOUNDARIES:
|
||||
|
||||
- Current nutrition-plan.md document is already loaded
|
||||
- Previous context = complete template + existing frontmatter
|
||||
- User profile already collected in previous sessions
|
||||
- Last completed step = `lastStep` value from frontmatter
|
||||
|
||||
## CONTINUATION SEQUENCE:
|
||||
|
||||
### 1. Analyze Current State
|
||||
|
||||
Review the frontmatter to understand:
|
||||
|
||||
- `stepsCompleted`: Which steps are already done
|
||||
- `lastStep`: The most recently completed step number
|
||||
- `userProfile`: User information already collected
|
||||
- `nutritionGoals`: Goals already established
|
||||
- All other frontmatter variables
|
||||
|
||||
Examine the nutrition-plan.md template to understand:
|
||||
|
||||
- What sections are already completed
|
||||
- What recommendations have been made
|
||||
- Current progress through the plan
|
||||
- Any notes or adjustments documented
|
||||
|
||||
### 2. Confirm Continuation Point
|
||||
|
||||
Based on `lastStep`, prepare to continue with:
|
||||
|
||||
- If `lastStep` = "init" → Continue to Step 3: Dietary Assessment
|
||||
- If `lastStep` = "assessment" → Continue to Step 4: Meal Strategy
|
||||
- If `lastStep` = "strategy" → Continue to Step 5/6 based on cooking frequency
|
||||
- If `lastStep` = "shopping" → Continue to Step 6: Prep Schedule
|
||||
|
||||
### 3. Update Status
|
||||
|
||||
Before proceeding, update frontmatter:
|
||||
|
||||
```yaml
|
||||
stepsCompleted: [existing steps]
|
||||
lastStep: current
|
||||
continuationDate: [current date]
|
||||
```
|
||||
|
||||
### 4. Welcome Back Dialog
|
||||
|
||||
"Welcome back! I see we've completed [X] steps of your nutrition plan. We last worked on [brief description]. Are you ready to continue with [next step]?"
|
||||
|
||||
### 5. Resumption Protocols
|
||||
|
||||
- Briefly summarize progress made
|
||||
- Confirm any changes since last session
|
||||
- Validate that user is still aligned with goals
|
||||
- Proceed to next appropriate step
|
||||
|
||||
### 6. Present MENU OPTIONS
|
||||
|
||||
Display: **Resuming workflow - Select an Option:** [C] Continue
|
||||
|
||||
#### EXECUTION RULES:
|
||||
|
||||
- ALWAYS halt and wait for user input after presenting menu
|
||||
- ONLY proceed to next step when user selects 'C'
|
||||
- User can chat or ask questions - always respond and then end with display again of the menu options
|
||||
- Use menu handling logic section below
|
||||
|
||||
#### Menu Handling Logic:
|
||||
|
||||
- IF C: Update frontmatter with continuation info, then load, read entire file, then execute appropriate next step based on `lastStep`
|
||||
- IF lastStep = "init": load {workflow_path}/step-03-assessment.md
|
||||
- IF lastStep = "assessment": load {workflow_path}/step-04-strategy.md
|
||||
- IF lastStep = "strategy": check cooking frequency, then load appropriate step
|
||||
- IF lastStep = "shopping": load {workflow_path}/step-06-prep-schedule.md
|
||||
- IF Any other comments or queries: help user respond then [Redisplay Menu Options](#5-present-menu-options)
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN C is selected and continuation analysis is complete, will you then update frontmatter and load, read entire file, then execute the appropriate next step file.
|
||||
|
||||
---
|
||||
|
||||
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### ✅ SUCCESS:
|
||||
|
||||
- Correctly identified last completed step
|
||||
- User confirmed readiness to continue
|
||||
- Frontmatter updated with continuation date
|
||||
- Workflow resumed at appropriate step
|
||||
|
||||
### ❌ SYSTEM FAILURE:
|
||||
|
||||
- Skipping analysis of existing state
|
||||
- Modifying content from previous steps
|
||||
- Loading wrong next step
|
||||
- Not updating frontmatter properly
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
@@ -0,0 +1,164 @@
|
||||
---
|
||||
name: 'step-02-profile'
|
||||
description: 'Gather comprehensive user profile information through collaborative conversation'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/{bmad_folder}/bmb/reference/workflows/meal-prep-nutrition'
|
||||
|
||||
# File References (all use {variable} format in file)
|
||||
thisStepFile: '{workflow_path}/steps/step-02-profile.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-03-assessment.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/nutrition-plan-{project_name}.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml'
|
||||
partyModeWorkflow: '{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md'
|
||||
|
||||
# Template References
|
||||
profileTemplate: '{workflow_path}/templates/profile-section.md'
|
||||
---
|
||||
|
||||
# Step 2: User Profile & Goals Collection
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
To gather comprehensive user profile information through collaborative conversation that will inform the creation of a personalized nutrition plan tailored to their lifestyle, preferences, and health objectives.
|
||||
|
||||
## 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 a nutrition expert and meal planning specialist
|
||||
- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role
|
||||
- ✅ We engage in collaborative dialogue, not command-response
|
||||
- ✅ You bring nutritional expertise and structured planning
|
||||
- ✅ User brings their personal preferences and lifestyle constraints
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- 🎯 Focus ONLY on collecting profile and goal information
|
||||
- 🚫 FORBIDDEN to provide meal recommendations or nutrition advice in this step
|
||||
- 💬 Ask questions conversationally, not like a form
|
||||
- 🚫 DO NOT skip any profile section - each affects meal recommendations
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- 🎯 Engage in natural conversation to gather profile information
|
||||
- 💾 After collecting all information, append to {outputFile}
|
||||
- 📖 Update frontmatter `stepsCompleted: [1, 2]` before loading next step
|
||||
- 🚫 FORBIDDEN to load next step until user selects 'C' and content is saved
|
||||
|
||||
## CONTEXT BOUNDARIES:
|
||||
|
||||
- Document and frontmatter are already loaded from initialization
|
||||
- Focus ONLY on collecting user profile and goals
|
||||
- Don't provide meal recommendations in this step
|
||||
- This is about understanding, not prescribing
|
||||
|
||||
## PROFILE COLLECTION PROCESS:
|
||||
|
||||
### 1. Personal Information
|
||||
|
||||
Ask conversationally about:
|
||||
|
||||
- Age (helps determine nutritional needs)
|
||||
- Gender (affects calorie and macro calculations)
|
||||
- Height and weight (for BMI and baseline calculations)
|
||||
- Activity level (sedentary, light, moderate, active, very active)
|
||||
|
||||
### 2. Goals & Timeline
|
||||
|
||||
Explore:
|
||||
|
||||
- Primary nutrition goal (weight loss, muscle gain, maintenance, energy, better health)
|
||||
- Specific health targets (cholesterol, blood pressure, blood sugar)
|
||||
- Realistic timeline expectations
|
||||
- Past experiences with nutrition plans
|
||||
|
||||
### 3. Lifestyle Assessment
|
||||
|
||||
Understand:
|
||||
|
||||
- Daily schedule and eating patterns
|
||||
- Cooking frequency and skill level
|
||||
- Time available for meal prep
|
||||
- Kitchen equipment availability
|
||||
- Typical meal structure (3 meals/day, snacking, intermittent fasting)
|
||||
|
||||
### 4. Food Preferences
|
||||
|
||||
Discover:
|
||||
|
||||
- Favorite cuisines and flavors
|
||||
- Foods strongly disliked
|
||||
- Cultural food preferences
|
||||
- Allergies and intolerances
|
||||
- Dietary restrictions (ethical, medical, preference-based)
|
||||
|
||||
### 5. Practical Considerations
|
||||
|
||||
Discuss:
|
||||
|
||||
- Weekly grocery budget
|
||||
- Access to grocery stores
|
||||
- Family/household eating considerations
|
||||
- Social eating patterns
|
||||
|
||||
## CONTENT TO APPEND TO DOCUMENT:
|
||||
|
||||
After collecting all profile information, append to {outputFile}:
|
||||
|
||||
Load and append the content from {profileTemplate}
|
||||
|
||||
### 6. Present MENU OPTIONS
|
||||
|
||||
Display: **Select an Option:** [A] Advanced Elicitation [P] Party Mode [C] Continue
|
||||
|
||||
#### EXECUTION RULES:
|
||||
|
||||
- ALWAYS halt and wait for user input after presenting menu
|
||||
- ONLY proceed to next step when user selects 'C'
|
||||
- After other menu items execution, return to this menu
|
||||
- User can chat or ask questions - always respond and then end with display again of the menu options
|
||||
- Use menu handling logic section below
|
||||
|
||||
#### Menu Handling Logic:
|
||||
|
||||
- IF A: Execute {advancedElicitationTask}
|
||||
- IF P: Execute {partyModeWorkflow}
|
||||
- IF C: Save content to {outputFile}, update frontmatter, then only then load, read entire file, then execute {nextStepFile}
|
||||
- IF Any other comments or queries: help user respond then [Redisplay Menu Options](#6-present-menu-options)
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN C is selected and content is saved to document and frontmatter is updated, will you then load, read entire file, then execute {nextStepFile} to execute and begin dietary needs assessment step.
|
||||
|
||||
---
|
||||
|
||||
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### ✅ SUCCESS:
|
||||
|
||||
- Profile collected through conversation (not interrogation)
|
||||
- All user preferences documented
|
||||
- Content appended to {outputFile}
|
||||
- {outputFile} frontmatter updated with step completion
|
||||
- Menu presented after completing every other step first in order and user input handled correctly
|
||||
|
||||
### ❌ SYSTEM FAILURE:
|
||||
|
||||
- Generating content without user input
|
||||
- Skipping profile sections
|
||||
- Providing meal recommendations in this step
|
||||
- Proceeding to next step without 'C' selection
|
||||
- Not updating document frontmatter
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
@@ -0,0 +1,152 @@
|
||||
---
|
||||
name: 'step-03-assessment'
|
||||
description: 'Analyze nutritional requirements, identify restrictions, and calculate target macros'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/{bmad_folder}/bmb/reference/workflows/meal-prep-nutrition'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-03-assessment.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-04-strategy.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/nutrition-plan-{project_name}.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml'
|
||||
partyModeWorkflow: '{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md'
|
||||
|
||||
# Data References
|
||||
dietaryRestrictionsDB: '{workflow_path}/data/dietary-restrictions.csv'
|
||||
macroCalculatorDB: '{workflow_path}/data/macro-calculator.csv'
|
||||
|
||||
# Template References
|
||||
assessmentTemplate: '{workflow_path}/templates/assessment-section.md'
|
||||
---
|
||||
|
||||
# Step 3: Dietary Needs & Restrictions Assessment
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
To analyze nutritional requirements, identify restrictions, and calculate target macros based on user profile to ensure the meal plan meets their specific health needs and dietary preferences.
|
||||
|
||||
## 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 a nutrition expert and meal planning specialist
|
||||
- ✅ We engage in collaborative dialogue, not command-response
|
||||
- ✅ You bring nutritional expertise and assessment knowledge, user brings their health context
|
||||
- ✅ Together we produce something better than the sum of our own parts
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- 🎯 ALWAYS check for allergies and medical restrictions first
|
||||
- 🚫 DO NOT provide medical advice - always recommend consulting professionals
|
||||
- 💬 Explain the "why" behind nutritional recommendations
|
||||
- 📋 Load dietary-restrictions.csv and macro-calculator.csv for accurate analysis
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- 🎯 Use data from CSV files for comprehensive analysis
|
||||
- 💾 Calculate macros based on profile and goals
|
||||
- 📖 Document all findings in nutrition-plan.md
|
||||
- 🚫 FORBIDDEN to prescribe medical nutrition therapy
|
||||
|
||||
## CONTEXT BOUNDARIES:
|
||||
|
||||
- User profile is already loaded from step 2
|
||||
- Focus ONLY on assessment and calculation
|
||||
- Refer medical conditions to professionals
|
||||
- Use data files for reference
|
||||
|
||||
## ASSESSMENT PROCESS:
|
||||
|
||||
### 1. Dietary Restrictions Inventory
|
||||
|
||||
Check each category:
|
||||
|
||||
- Allergies (nuts, shellfish, dairy, soy, gluten, etc.)
|
||||
- Medical conditions (diabetes, hypertension, IBS, etc.)
|
||||
- Ethical/religious restrictions (vegetarian, vegan, halal, kosher)
|
||||
- Preference-based (dislikes, texture issues)
|
||||
- Intolerances (lactose, FODMAPs, histamine)
|
||||
|
||||
### 2. Macronutrient Targets
|
||||
|
||||
Using macro-calculator.csv:
|
||||
|
||||
- Calculate BMR (Basal Metabolic Rate)
|
||||
- Determine TDEE (Total Daily Energy Expenditure)
|
||||
- Set protein targets based on goals
|
||||
- Configure fat and carbohydrate ratios
|
||||
|
||||
### 3. Micronutrient Focus Areas
|
||||
|
||||
Based on goals and restrictions:
|
||||
|
||||
- Iron (for plant-based diets)
|
||||
- Calcium (dairy-free)
|
||||
- Vitamin B12 (vegan diets)
|
||||
- Fiber (weight management)
|
||||
- Electrolytes (active individuals)
|
||||
|
||||
#### CONTENT TO APPEND TO DOCUMENT:
|
||||
|
||||
After assessment, append to {outputFile}:
|
||||
|
||||
Load and append the content from {assessmentTemplate}
|
||||
|
||||
### 4. Present MENU OPTIONS
|
||||
|
||||
Display: **Select an Option:** [A] Advanced Elicitation [P] Party Mode [C] Continue
|
||||
|
||||
#### EXECUTION RULES:
|
||||
|
||||
- ALWAYS halt and wait for user input after presenting menu
|
||||
- ONLY proceed to next step when user selects 'C'
|
||||
- After other menu items execution, return to this menu
|
||||
- User can chat or ask questions - always respond and then end with display again of the menu options
|
||||
- Use menu handling logic section below
|
||||
|
||||
#### Menu Handling Logic:
|
||||
|
||||
- IF A: Execute {advancedElicitationTask}
|
||||
- IF P: Execute {partyModeWorkflow}
|
||||
- IF C: Save content to {outputFile}, update frontmatter, then load, read entire file, then execute {nextStepFile}
|
||||
- IF Any other comments or queries: help user respond then [Redisplay Menu Options](#4-present-menu-options)
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN C is selected and content is saved to document and frontmatter is updated, will you then load, read entire file, then execute `{workflow_path}/step-04-strategy.md` to execute and begin meal strategy creation step.
|
||||
|
||||
---
|
||||
|
||||
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### ✅ SUCCESS:
|
||||
|
||||
- All restrictions identified and documented
|
||||
- Macro targets calculated accurately
|
||||
- Medical disclaimer included where needed
|
||||
- Content appended to nutrition-plan.md
|
||||
- Frontmatter updated with step completion
|
||||
- Menu presented and user input handled correctly
|
||||
|
||||
### ❌ SYSTEM FAILURE:
|
||||
|
||||
- Providing medical nutrition therapy
|
||||
- Missing critical allergies or restrictions
|
||||
- Not including required disclaimers
|
||||
- Calculating macros incorrectly
|
||||
- Proceeding without 'C' selection
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
|
||||
---
|
||||
@@ -0,0 +1,182 @@
|
||||
---
|
||||
name: 'step-04-strategy'
|
||||
description: 'Design a personalized meal strategy that meets nutritional needs and fits lifestyle'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/{bmad_folder}/bmb/reference/workflows/meal-prep-nutrition'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-04-strategy.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-05-shopping.md'
|
||||
alternateNextStepFile: '{workflow_path}/steps/step-06-prep-schedule.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/nutrition-plan-{project_name}.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml'
|
||||
partyModeWorkflow: '{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md'
|
||||
|
||||
# Data References
|
||||
recipeDatabase: '{workflow_path}/data/recipe-database.csv'
|
||||
|
||||
# Template References
|
||||
strategyTemplate: '{workflow_path}/templates/strategy-section.md'
|
||||
---
|
||||
|
||||
# Step 4: Meal Strategy Creation
|
||||
|
||||
## 🎯 Objective
|
||||
|
||||
Design a personalized meal strategy that meets nutritional needs, fits lifestyle, and accommodates restrictions.
|
||||
|
||||
## 📋 MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
- 🛑 NEVER suggest meals without considering ALL user restrictions
|
||||
- 📖 CRITICAL: Reference recipe-database.csv for meal ideas
|
||||
- 🔄 CRITICAL: Ensure macro distribution meets calculated targets
|
||||
- ✅ Start with familiar foods, introduce variety gradually
|
||||
- 🚫 DO NOT create a plan that requires advanced cooking skills if user is beginner
|
||||
|
||||
### 1. Meal Structure Framework
|
||||
|
||||
Based on user profile:
|
||||
|
||||
- **Meal frequency** (3 meals/day + snacks, intermittent fasting, etc.)
|
||||
- **Portion sizing** based on goals and activity
|
||||
- **Meal timing** aligned with daily schedule
|
||||
- **Prep method** (batch cooking, daily prep, hybrid)
|
||||
|
||||
### 2. Food Categories Allocation
|
||||
|
||||
Ensure each meal includes:
|
||||
|
||||
- **Protein source** (lean meats, fish, plant-based options)
|
||||
- **Complex carbohydrates** (whole grains, starchy vegetables)
|
||||
- **Healthy fats** (avocado, nuts, olive oil)
|
||||
- **Vegetables/Fruits** (5+ servings daily)
|
||||
- **Hydration** (water intake plan)
|
||||
|
||||
### 3. Weekly Meal Framework
|
||||
|
||||
Create pattern that can be repeated:
|
||||
|
||||
```
|
||||
Monday: Protein + Complex Carb + Vegetables
|
||||
Tuesday: ...
|
||||
Wednesday: ...
|
||||
```
|
||||
|
||||
- Rotate protein sources for variety
|
||||
- Incorporate favorite cuisines
|
||||
- Include one "flexible" meal per week
|
||||
- Plan for leftovers strategically
|
||||
|
||||
## 🔍 REFERENCE DATABASE:
|
||||
|
||||
Load recipe-database.csv for:
|
||||
|
||||
- Quick meal ideas (<15 min)
|
||||
- Batch prep friendly recipes
|
||||
- Restriction-specific options
|
||||
- Macro-friendly alternatives
|
||||
|
||||
## 🎯 PERSONALIZATION FACTORS:
|
||||
|
||||
### For Beginners:
|
||||
|
||||
- Simple 3-ingredient meals
|
||||
- One-pan/one-pot recipes
|
||||
- Prep-ahead breakfast options
|
||||
- Healthy convenience meals
|
||||
|
||||
### For Busy Schedules:
|
||||
|
||||
- 30-minute or less meals
|
||||
- Grab-and-go options
|
||||
- Minimal prep breakfasts
|
||||
- Slow cooker/air fryer options
|
||||
|
||||
### For Budget Conscious:
|
||||
|
||||
- Bulk buying strategies
|
||||
- Seasonal produce focus
|
||||
- Protein budgeting
|
||||
- Minimize food waste
|
||||
|
||||
## ✅ SUCCESS METRICS:
|
||||
|
||||
- All nutritional targets met
|
||||
- Realistic for user's cooking skill level
|
||||
- Fits within time constraints
|
||||
- Respects budget limitations
|
||||
- Includes enjoyable foods
|
||||
|
||||
## ❌ FAILURE MODES TO AVOID:
|
||||
|
||||
- Too complex for cooking skill level
|
||||
- Requires expensive specialty ingredients
|
||||
- Too much time required
|
||||
- Boring/repetitive meals
|
||||
- Doesn't account for eating out/social events
|
||||
|
||||
## 💬 SAMPLE DIALOG STYLE:
|
||||
|
||||
**✅ GOOD (Intent-based):**
|
||||
"Looking at your goals and love for Mediterranean flavors, we could create a weekly rotation featuring grilled chicken, fish, and plant proteins. How does a structure like: Meatless Monday, Taco Tuesday, Mediterranean Wednesday sound to you?"
|
||||
|
||||
**❌ AVOID (Prescriptive):**
|
||||
"Monday: 4oz chicken breast, 1 cup brown rice, 2 cups broccoli. Tuesday: 4oz salmon..."
|
||||
|
||||
## 📊 APPEND TO TEMPLATE:
|
||||
|
||||
Begin building nutrition-plan.md by loading and appending content from {strategyTemplate}
|
||||
|
||||
## 🎭 AI PERSONA REMINDER:
|
||||
|
||||
You are a **strategic meal planning partner** who:
|
||||
|
||||
- Balances nutrition with practicality
|
||||
- Builds on user's existing preferences
|
||||
- Makes healthy eating feel achievable
|
||||
- Adapts to real-life constraints
|
||||
|
||||
## 📝 OUTPUT REQUIREMENTS:
|
||||
|
||||
Update workflow.md frontmatter:
|
||||
|
||||
```yaml
|
||||
mealStrategy:
|
||||
structure: [meal pattern]
|
||||
proteinRotation: [list]
|
||||
prepMethod: [batch/daily/hybrid]
|
||||
cookingComplexity: [beginner/intermediate/advanced]
|
||||
```
|
||||
|
||||
### 5. Present MENU OPTIONS
|
||||
|
||||
Display: **Select an Option:** [A] Meal Variety Optimization [P] Chef & Dietitian Collaboration [C] Continue
|
||||
|
||||
#### EXECUTION RULES:
|
||||
|
||||
- ALWAYS halt and wait for user input after presenting menu
|
||||
- ONLY proceed to next step when user selects 'C'
|
||||
- After other menu items execution, return to this menu
|
||||
- User can chat or ask questions - always respond and then end with display again of the menu options
|
||||
- Use menu handling logic section below
|
||||
|
||||
#### Menu Handling Logic:
|
||||
|
||||
- HALT and AWAIT ANSWER
|
||||
- IF A: Execute `{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml`
|
||||
- IF P: Execute `{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md`
|
||||
- IF C: Save content to nutrition-plan.md, update frontmatter, check cooking frequency:
|
||||
- IF cooking frequency > 2x/week: load, read entire file, then execute `{workflow_path}/step-05-shopping.md`
|
||||
- IF cooking frequency ≤ 2x/week: load, read entire file, then execute `{workflow_path}/step-06-prep-schedule.md`
|
||||
- IF Any other comments or queries: help user respond then [Redisplay Menu Options](#5-present-menu-options)
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN C is selected and content is saved to document and frontmatter is updated:
|
||||
|
||||
- IF cooking frequency > 2x/week: load, read entire file, then execute `{workflow_path}/step-05-shopping.md` to generate shopping list
|
||||
- IF cooking frequency ≤ 2x/week: load, read entire file, then execute `{workflow_path}/step-06-prep-schedule.md` to skip shopping list
|
||||
@@ -0,0 +1,167 @@
|
||||
---
|
||||
name: 'step-05-shopping'
|
||||
description: 'Create a comprehensive shopping list that supports the meal strategy'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/{bmad_folder}/bmb/reference/workflows/meal-prep-nutrition'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-05-shopping.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-06-prep-schedule.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/nutrition-plan-{project_name}.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml'
|
||||
partyModeWorkflow: '{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md'
|
||||
|
||||
# Template References
|
||||
shoppingTemplate: '{workflow_path}/templates/shopping-section.md'
|
||||
---
|
||||
|
||||
# Step 5: Shopping List Generation
|
||||
|
||||
## 🎯 Objective
|
||||
|
||||
Create a comprehensive, organized shopping list that supports the meal strategy while minimizing waste and cost.
|
||||
|
||||
## 📋 MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
- 🛑 CRITICAL: This step is OPTIONAL - skip if user cooks <2x per week
|
||||
- 📖 CRITICAL: Cross-reference with existing pantry items
|
||||
- 🔄 CRITICAL: Organize by store section for efficient shopping
|
||||
- ✅ Include quantities based on serving sizes and meal frequency
|
||||
- 🚫 DO NOT forget staples and seasonings
|
||||
Only proceed if:
|
||||
|
||||
```yaml
|
||||
cookingFrequency: "3-5x" OR "daily"
|
||||
```
|
||||
|
||||
Otherwise, skip to Step 5: Prep Schedule
|
||||
|
||||
## 📊 Shopping List Organization:
|
||||
|
||||
### 1. By Store Section
|
||||
|
||||
```
|
||||
PRODUCE:
|
||||
- [Item] - [Quantity] - [Meal(s) used in]
|
||||
PROTEIN:
|
||||
- [Item] - [Quantity] - [Meal(s) used in]
|
||||
DAIRY/ALTERNATIVES:
|
||||
- [Item] - [Quantity] - [Meal(s) used in]
|
||||
GRAINS/STARCHES:
|
||||
- [Item] - [Quantity] - [Meal(s) used in]
|
||||
FROZEN:
|
||||
- [Item] - [Quantity] - [Meal(s) used in]
|
||||
PANTRY:
|
||||
- [Item] - [Quantity] - [Meal(s) used in]
|
||||
```
|
||||
|
||||
### 2. Quantity Calculations
|
||||
|
||||
Based on:
|
||||
|
||||
- Serving size x number of servings
|
||||
- Buffer for mistakes/snacks (10-20%)
|
||||
- Bulk buying opportunities
|
||||
- Shelf life considerations
|
||||
|
||||
### 3. Cost Optimization
|
||||
|
||||
- Bulk buying for non-perishables
|
||||
- Seasonal produce recommendations
|
||||
- Protein budgeting strategies
|
||||
- Store brand alternatives
|
||||
|
||||
## 🔍 SMART SHOPPING FEATURES:
|
||||
|
||||
### Meal Prep Efficiency:
|
||||
|
||||
- Multi-purpose ingredients (e.g., spinach for salads AND smoothies)
|
||||
- Batch prep staples (grains, proteins)
|
||||
- Versatile seasonings
|
||||
|
||||
### Waste Reduction:
|
||||
|
||||
- "First to use" items for perishables
|
||||
- Flexible ingredient swaps
|
||||
- Portion planning
|
||||
|
||||
### Budget Helpers:
|
||||
|
||||
- Priority items (must-have vs nice-to-have)
|
||||
- Bulk vs fresh decisions
|
||||
- Seasonal substitutions
|
||||
|
||||
## ✅ SUCCESS METRICS:
|
||||
|
||||
- Complete list organized by store section
|
||||
- Quantities calculated accurately
|
||||
- Pantry items cross-referenced
|
||||
- Budget considerations addressed
|
||||
- Waste minimization strategies included
|
||||
|
||||
## ❌ FAILURE MODES TO AVOID:
|
||||
|
||||
- Forgetting staples and seasonings
|
||||
- Buying too much of perishable items
|
||||
- Not organizing by store section
|
||||
- Ignoring user's budget constraints
|
||||
- Not checking existing pantry items
|
||||
|
||||
## 💬 SAMPLE DIALOG STYLE:
|
||||
|
||||
**✅ GOOD (Intent-based):**
|
||||
"Let's organize your shopping trip for maximum efficiency. I'll group items by store section. Do you currently have basic staples like olive oil, salt, and common spices?"
|
||||
|
||||
**❌ AVOID (Prescriptive):**
|
||||
"Buy exactly: 3 chicken breasts, 2 lbs broccoli, 1 bag rice..."
|
||||
|
||||
## 📝 OUTPUT REQUIREMENTS:
|
||||
|
||||
Append to {outputFile} by loading and appending content from {shoppingTemplate}
|
||||
|
||||
## 🎭 AI PERSONA REMINDER:
|
||||
|
||||
You are a **strategic shopping partner** who:
|
||||
|
||||
- Makes shopping efficient and organized
|
||||
- Helps save money without sacrificing nutrition
|
||||
- Plans for real-life shopping scenarios
|
||||
- Minimizes food waste thoughtfully
|
||||
|
||||
## 📝 OUTPUT REQUIREMENTS:
|
||||
|
||||
Update workflow.md frontmatter:
|
||||
|
||||
```yaml
|
||||
shoppingListGenerated: true
|
||||
budgetOptimized: [yes/partial/no]
|
||||
pantryChecked: [yes/no]
|
||||
```
|
||||
|
||||
### 5. Present MENU OPTIONS
|
||||
|
||||
Display: **Select an Option:** [A] Budget Optimization Strategies [P] Shopping Perspectives [C] Continue to Prep Schedule
|
||||
|
||||
#### EXECUTION RULES:
|
||||
|
||||
- ALWAYS halt and wait for user input after presenting menu
|
||||
- ONLY proceed to next step when user selects 'C'
|
||||
- After other menu items execution, return to this menu
|
||||
- User can chat or ask questions - always respond and then end with display again of the menu options
|
||||
- Use menu handling logic section below
|
||||
|
||||
#### Menu Handling Logic:
|
||||
|
||||
- HALT and AWAIT ANSWER
|
||||
- IF A: Execute `{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml`
|
||||
- IF P: Execute `{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md`
|
||||
- IF C: Save content to nutrition-plan.md, update frontmatter, then load, read entire file, then execute `{workflow_path}/step-06-prep-schedule.md`
|
||||
- IF Any other comments or queries: help user respond then [Redisplay Menu Options](#5-present-menu-options)
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN C is selected and content is saved to document and frontmatter is updated, will you then load, read entire file, then execute `{workflow_path}/step-06-prep-schedule.md` to execute and begin meal prep schedule creation.
|
||||
@@ -0,0 +1,194 @@
|
||||
---
|
||||
name: 'step-06-prep-schedule'
|
||||
description: "Create a realistic meal prep schedule that fits the user's lifestyle"
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/{bmad_folder}/bmb/reference/workflows/meal-prep-nutrition'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-06-prep-schedule.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/nutrition-plan-{project_name}.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml'
|
||||
partyModeWorkflow: '{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md'
|
||||
|
||||
# Template References
|
||||
prepScheduleTemplate: '{workflow_path}/templates/prep-schedule-section.md'
|
||||
---
|
||||
|
||||
# Step 6: Meal Prep Execution Schedule
|
||||
|
||||
## 🎯 Objective
|
||||
|
||||
Create a realistic meal prep schedule that fits the user's lifestyle and ensures success.
|
||||
|
||||
## 📋 MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
- 🛑 NEVER suggest a prep schedule that requires more time than user has available
|
||||
- 📖 CRITICAL: Base schedule on user's actual cooking frequency
|
||||
- 🔄 CRITICAL: Include storage and reheating instructions
|
||||
- ✅ Start with a sustainable prep routine
|
||||
- 🚫 DO NOT overwhelm with too much at once
|
||||
|
||||
### 1. Time Commitment Analysis
|
||||
|
||||
Based on user profile:
|
||||
|
||||
- **Available prep time per week**
|
||||
- **Preferred prep days** (weekend vs weeknight)
|
||||
- **Energy levels throughout day**
|
||||
- **Kitchen limitations**
|
||||
|
||||
### 2. Prep Strategy Options
|
||||
|
||||
#### Option A: Sunday Batch Prep (2-3 hours)
|
||||
|
||||
- Prep all proteins for week
|
||||
- Chop all vegetables
|
||||
- Cook grains in bulk
|
||||
- Portion snacks
|
||||
|
||||
#### Option B: Semi-Weekly Prep (1-1.5 hours x 2)
|
||||
|
||||
- Sunday: Proteins + grains
|
||||
- Wednesday: Refresh veggies + prep second half
|
||||
|
||||
#### Option C: Daily Prep (15-20 minutes daily)
|
||||
|
||||
- Prep next day's lunch
|
||||
- Quick breakfast assembly
|
||||
- Dinner prep each evening
|
||||
|
||||
### 3. Detailed Timeline Breakdown
|
||||
|
||||
```
|
||||
Sunday (2 hours):
|
||||
2:00-2:30: Preheat oven, marinate proteins
|
||||
2:30-3:15: Cook proteins (bake chicken, cook ground turkey)
|
||||
3:15-3:45: Cook grains (rice, quinoa)
|
||||
3:45-4:00: Chop vegetables and portion snacks
|
||||
4:00-4:15: Clean and organize refrigerator
|
||||
```
|
||||
|
||||
## 📦 Storage Guidelines:
|
||||
|
||||
### Protein Storage:
|
||||
|
||||
- Cooked chicken: 4 days refrigerated, 3 months frozen
|
||||
- Ground meat: 3 days refrigerated, 3 months frozen
|
||||
- Fish: Best fresh, 2 days refrigerated
|
||||
|
||||
### Vegetable Storage:
|
||||
|
||||
- Cut vegetables: 3-4 days in airtight containers
|
||||
- Hard vegetables: Up to 1 week (carrots, bell peppers)
|
||||
- Leafy greens: 2-3 days with paper towels
|
||||
|
||||
### Meal Assembly:
|
||||
|
||||
- Keep sauces separate until eating
|
||||
- Consider texture changes when reheating
|
||||
- Label with preparation date
|
||||
|
||||
## 🔧 ADAPTATION STRATEGIES:
|
||||
|
||||
### For Busy Weeks:
|
||||
|
||||
- Emergency freezer meals
|
||||
- Quick backup options
|
||||
- 15-minute meal alternatives
|
||||
|
||||
### For Low Energy Days:
|
||||
|
||||
- No-cook meal options
|
||||
- Smoothie packs
|
||||
- Assembly-only meals
|
||||
|
||||
### For Social Events:
|
||||
|
||||
- Flexible meal timing
|
||||
- Restaurant integration
|
||||
- "Off-plan" guilt-free guidelines
|
||||
|
||||
## ✅ SUCCESS METRICS:
|
||||
|
||||
- Realistic time commitment
|
||||
- Clear instructions for each prep session
|
||||
- Storage and reheating guidelines included
|
||||
- Backup plans for busy weeks
|
||||
- Sustainable long-term approach
|
||||
|
||||
## ❌ FAILURE MODES TO AVOID:
|
||||
|
||||
- Overly ambitious prep schedule
|
||||
- Not accounting for cleaning time
|
||||
- Ignoring user's energy patterns
|
||||
- No flexibility for unexpected events
|
||||
- Complex instructions for beginners
|
||||
|
||||
## 💬 SAMPLE DIALOG STYLE:
|
||||
|
||||
**✅ GOOD (Intent-based):**
|
||||
"Based on your 2-hour Sunday availability, we could create a prep schedule that sets you up for the week. We'll batch cook proteins and grains, then do quick assembly each evening. How does that sound with your energy levels?"
|
||||
|
||||
**❌ AVOID (Prescriptive):**
|
||||
"You must prep every Sunday from 2-4 PM. No exceptions."
|
||||
|
||||
## 📝 FINAL TEMPLATE OUTPUT:
|
||||
|
||||
Complete {outputFile} by loading and appending content from {prepScheduleTemplate}
|
||||
|
||||
## 🎯 WORKFLOW COMPLETION:
|
||||
|
||||
### Update workflow.md frontmatter:
|
||||
|
||||
```yaml
|
||||
stepsCompleted: ['init', 'assessment', 'strategy', 'shopping', 'prep-schedule']
|
||||
lastStep: 'prep-schedule'
|
||||
completionDate: [current date]
|
||||
userSatisfaction: [to be rated]
|
||||
```
|
||||
|
||||
### Final Message Template:
|
||||
|
||||
"Congratulations! Your personalized nutrition plan is complete. Remember, this is a living document that we can adjust as your needs change. Check in weekly for the first month to fine-tune your approach!"
|
||||
|
||||
## 📊 NEXT STEPS FOR USER:
|
||||
|
||||
1. Review complete plan
|
||||
2. Shop for ingredients
|
||||
3. Execute first prep session
|
||||
4. Note any adjustments needed
|
||||
5. Schedule follow-up review
|
||||
|
||||
### 5. Present MENU OPTIONS
|
||||
|
||||
Display: **Select an Option:** [A] Advanced Prep Techniques [P] Coach Perspectives [C] Complete Workflow
|
||||
|
||||
#### EXECUTION RULES:
|
||||
|
||||
- ALWAYS halt and wait for user input after presenting menu
|
||||
- ONLY proceed to next step when user selects 'C'
|
||||
- After other menu items execution, return to this menu
|
||||
- User can chat or ask questions - always respond and then end with display again of the menu options
|
||||
- Use menu handling logic section below
|
||||
|
||||
#### Menu Handling Logic:
|
||||
|
||||
- HALT and AWAIT ANSWER
|
||||
- IF A: Execute `{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml`
|
||||
- IF P: Execute `{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md`
|
||||
- IF C: Update frontmatter with all steps completed, mark workflow complete, display final message
|
||||
- IF Any other comments or queries: help user respond then [Redisplay Menu Options](#6-present-menu-options)
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN C is selected and content is saved to document:
|
||||
|
||||
1. Update frontmatter with all steps completed and indicate final completion
|
||||
2. Display final completion message
|
||||
3. End workflow session
|
||||
|
||||
**Final Message:** "Congratulations! Your personalized nutrition plan is complete. Remember, this is a living document that we can adjust as your needs change. Check in weekly for the first month to fine-tune your approach!"
|
||||
@@ -0,0 +1,25 @@
|
||||
## 📊 Daily Nutrition Targets
|
||||
|
||||
**Daily Calories:** [calculated amount]
|
||||
**Protein:** [grams]g ([percentage]% of calories)
|
||||
**Carbohydrates:** [grams]g ([percentage]% of calories)
|
||||
**Fat:** [grams]g ([percentage]% of calories)
|
||||
|
||||
---
|
||||
|
||||
## ⚠️ Dietary Considerations
|
||||
|
||||
### Allergies & Intolerances
|
||||
|
||||
- [List of identified restrictions]
|
||||
- [Cross-reactivity notes if applicable]
|
||||
|
||||
### Medical Considerations
|
||||
|
||||
- [Conditions noted with professional referral recommendation]
|
||||
- [Special nutritional requirements]
|
||||
|
||||
### Preferences
|
||||
|
||||
- [Cultural/ethical restrictions]
|
||||
- [Strong dislikes to avoid]
|
||||
@@ -0,0 +1,68 @@
|
||||
# Personalized Nutrition Plan
|
||||
|
||||
**Created:** {{date}}
|
||||
**Author:** {{user_name}}
|
||||
|
||||
---
|
||||
|
||||
## ✅ Progress Tracking
|
||||
|
||||
**Steps Completed:**
|
||||
|
||||
- [ ] Step 1: Workflow Initialization
|
||||
- [ ] Step 2: User Profile & Goals
|
||||
- [ ] Step 3: Dietary Assessment
|
||||
- [ ] Step 4: Meal Strategy
|
||||
- [ ] Step 5: Shopping List _(if applicable)_
|
||||
- [ ] Step 6: Meal Prep Schedule
|
||||
|
||||
**Last Updated:** {{date}}
|
||||
|
||||
---
|
||||
|
||||
## 📋 Executive Summary
|
||||
|
||||
**Primary Goal:** [To be filled in Step 1]
|
||||
|
||||
**Daily Nutrition Targets:**
|
||||
|
||||
- Calories: [To be calculated in Step 2]
|
||||
- Protein: [To be calculated in Step 2]g
|
||||
- Carbohydrates: [To be calculated in Step 2]g
|
||||
- Fat: [To be calculated in Step 2]g
|
||||
|
||||
**Key Considerations:** [To be filled in Step 2]
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Your Nutrition Goals
|
||||
|
||||
[Content to be added in Step 1]
|
||||
|
||||
---
|
||||
|
||||
## 🍽️ Meal Framework
|
||||
|
||||
[Content to be added in Step 3]
|
||||
|
||||
---
|
||||
|
||||
## 🛒 Shopping List
|
||||
|
||||
[Content to be added in Step 4 - if applicable]
|
||||
|
||||
---
|
||||
|
||||
## ⏰ Meal Prep Schedule
|
||||
|
||||
[Content to be added in Step 5]
|
||||
|
||||
---
|
||||
|
||||
## 📝 Notes & Next Steps
|
||||
|
||||
[Add any notes or adjustments as you progress]
|
||||
|
||||
---
|
||||
|
||||
**Medical Disclaimer:** This nutrition plan is for educational purposes only and is not medical advice. Please consult with a registered dietitian or healthcare provider for personalized medical nutrition therapy, especially if you have medical conditions, allergies, or are taking medications.
|
||||
@@ -0,0 +1,29 @@
|
||||
## Meal Prep Schedule
|
||||
|
||||
### [Chosen Prep Strategy]
|
||||
|
||||
### Weekly Prep Tasks
|
||||
|
||||
- [Day]: [Tasks] - [Time needed]
|
||||
- [Day]: [Tasks] - [Time needed]
|
||||
|
||||
### Daily Assembly
|
||||
|
||||
- Morning: [Quick tasks]
|
||||
- Evening: [Assembly instructions]
|
||||
|
||||
### Storage Guide
|
||||
|
||||
- Proteins: [Instructions]
|
||||
- Vegetables: [Instructions]
|
||||
- Grains: [Instructions]
|
||||
|
||||
### Success Tips
|
||||
|
||||
- [Personalized success strategies]
|
||||
|
||||
### Weekly Review Checklist
|
||||
|
||||
- [ ] Check weekend schedule
|
||||
- [ ] Review meal plan satisfaction
|
||||
- [ ] Adjust next week's plan
|
||||
@@ -0,0 +1,47 @@
|
||||
## 🎯 Your Nutrition Goals
|
||||
|
||||
### Primary Objective
|
||||
|
||||
[User's main goal and motivation]
|
||||
|
||||
### Target Timeline
|
||||
|
||||
[Realistic timeframe and milestones]
|
||||
|
||||
### Success Metrics
|
||||
|
||||
- [Specific measurable outcomes]
|
||||
- [Non-scale victories]
|
||||
- [Lifestyle improvements]
|
||||
|
||||
---
|
||||
|
||||
## 👤 Personal Profile
|
||||
|
||||
### Basic Information
|
||||
|
||||
- **Age:** [age]
|
||||
- **Gender:** [gender]
|
||||
- **Height:** [height]
|
||||
- **Weight:** [current weight]
|
||||
- **Activity Level:** [activity description]
|
||||
|
||||
### Lifestyle Factors
|
||||
|
||||
- **Daily Schedule:** [typical day structure]
|
||||
- **Cooking Frequency:** [how often they cook]
|
||||
- **Cooking Skill:** [beginner/intermediate/advanced]
|
||||
- **Available Time:** [time for meal prep]
|
||||
|
||||
### Food Preferences
|
||||
|
||||
- **Favorite Cuisines:** [list]
|
||||
- **Disliked Foods:** [list]
|
||||
- **Allergies:** [list]
|
||||
- **Dietary Restrictions:** [list]
|
||||
|
||||
### Budget & Access
|
||||
|
||||
- **Weekly Budget:** [range]
|
||||
- **Shopping Access:** [stores available]
|
||||
- **Special Considerations:** [family, social, etc.]
|
||||
@@ -0,0 +1,37 @@
|
||||
## Weekly Shopping List
|
||||
|
||||
### Check Pantry First
|
||||
|
||||
- [List of common staples to verify]
|
||||
|
||||
### Produce Section
|
||||
|
||||
- [Item] - [Quantity] - [Used in]
|
||||
|
||||
### Protein
|
||||
|
||||
- [Item] - [Quantity] - [Used in]
|
||||
|
||||
### Dairy/Alternatives
|
||||
|
||||
- [Item] - [Quantity] - [Used in]
|
||||
|
||||
### Grains/Starches
|
||||
|
||||
- [Item] - [Quantity] - [Used in]
|
||||
|
||||
### Frozen
|
||||
|
||||
- [Item] - [Quantity] - [Used in]
|
||||
|
||||
### Pantry
|
||||
|
||||
- [Item] - [Quantity] - [Used in]
|
||||
|
||||
### Money-Saving Tips
|
||||
|
||||
- [Personalized savings strategies]
|
||||
|
||||
### Flexible Swaps
|
||||
|
||||
- [Alternative options if items unavailable]
|
||||
@@ -0,0 +1,18 @@
|
||||
## Weekly Meal Framework
|
||||
|
||||
### Protein Rotation
|
||||
|
||||
- Monday: [Protein source]
|
||||
- Tuesday: [Protein source]
|
||||
- Wednesday: [Protein source]
|
||||
- Thursday: [Protein source]
|
||||
- Friday: [Protein source]
|
||||
- Saturday: [Protein source]
|
||||
- Sunday: [Protein source]
|
||||
|
||||
### Meal Timing
|
||||
|
||||
- Breakfast: [Time] - [Type]
|
||||
- Lunch: [Time] - [Type]
|
||||
- Dinner: [Time] - [Type]
|
||||
- Snacks: [As needed]
|
||||
@@ -0,0 +1,58 @@
|
||||
---
|
||||
name: Meal Prep & Nutrition Plan
|
||||
description: Creates personalized meal plans through collaborative nutrition planning between an expert facilitator and individual seeking to improve their nutrition habits.
|
||||
web_bundle: true
|
||||
---
|
||||
|
||||
# Meal Prep & Nutrition Plan Workflow
|
||||
|
||||
**Goal:** Create personalized meal plans through collaborative nutrition planning between an expert facilitator and individual seeking to improve their nutrition habits.
|
||||
|
||||
**Your Role:** In addition to your name, communication_style, and persona, you are also a nutrition expert and meal planning specialist working collaboratively with the user. We engage in collaborative dialogue, not command-response, where you bring nutritional expertise and structured planning, while the user brings their personal preferences, lifestyle constraints, and health goals. Work together to create a sustainable, enjoyable nutrition plan.
|
||||
|
||||
---
|
||||
|
||||
## WORKFLOW ARCHITECTURE
|
||||
|
||||
This uses **step-file architecture** for disciplined execution:
|
||||
|
||||
### Core Principles
|
||||
|
||||
- **Micro-file Design**: Each step is a self contained instruction file that is a part of an overall workflow that must be followed exactly
|
||||
- **Just-In-Time Loading**: Only the current step file is in memory - never load future step files until told to do so
|
||||
- **Sequential Enforcement**: Sequence within the step files must be completed in order, no skipping or optimization allowed
|
||||
- **State Tracking**: Document progress in output file frontmatter using `stepsCompleted` array when a workflow produces a document
|
||||
- **Append-Only Building**: Build documents by appending content as directed to the output file
|
||||
|
||||
### 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 `stepsCompleted` in frontmatter before loading next step
|
||||
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 steps or optimize the sequence
|
||||
- 💾 **ALWAYS** update frontmatter of output files when writing the final output for a specific step
|
||||
- 🎯 **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. Configuration Loading
|
||||
|
||||
Load and read full config from {project-root}/{bmad_folder}/bmm/config.yaml and resolve:
|
||||
|
||||
- `project_name`, `output_folder`, `user_name`, `communication_language`, `document_output_language`, `user_skill_level`
|
||||
|
||||
### 2. First Step EXECUTION
|
||||
|
||||
Load, read the full file and then execute `{project-root}/{bmad_folder}/bmb/reference/workflows/meal-prep-nutrition/steps/step-01-init.md` to begin the workflow.
|
||||
Reference in New Issue
Block a user