mirror of
https://github.com/R0m1k3/xtremflow.git
synced 2026-10-21 14:08:04 +02:00
feat: security overhaul (proxy ssrf fix, streaming sanitization, docker optimization)
This commit is contained in:
1 parent
6d87ada2b8
commit
8df9a37baa
810 files changed
+131090
-151
No files matched your search
@@ -0,0 +1,223 @@
|
||||
# Simple Agent Reference: Commit Poet (Inkwell Von Comitizen)
|
||||
|
||||
This folder contains a complete reference implementation of a **BMAD Simple Agent** - a self-contained agent with all logic embedded within a single YAML file.
|
||||
|
||||
## Overview
|
||||
|
||||
**Agent Name:** Inkwell Von Comitizen
|
||||
**Type:** Simple Agent (Standalone)
|
||||
**Purpose:** Transform commit messages into art with multiple writing styles
|
||||
|
||||
This reference demonstrates:
|
||||
|
||||
- Pure self-contained architecture (no external dependencies)
|
||||
- Embedded prompts using `action="#prompt-id"` pattern
|
||||
- Multiple sophisticated output modes from single input
|
||||
- Strong personality-driven design
|
||||
- Complete YAML schema for Simple Agents
|
||||
|
||||
## File Structure
|
||||
|
||||
```
|
||||
stand-alone/
|
||||
├── README.md # This file - architecture overview
|
||||
└── commit-poet.agent.yaml # Complete agent definition (single file!)
|
||||
```
|
||||
|
||||
That's it! Simple Agents are **self-contained** - everything lives in one YAML file.
|
||||
|
||||
## Key Architecture Patterns
|
||||
|
||||
### 1. Single File, Complete Agent
|
||||
|
||||
Everything the agent needs is embedded:
|
||||
|
||||
- Metadata (name, title, icon, type)
|
||||
- Persona (role, identity, communication_style, principles)
|
||||
- Prompts (detailed instructions for each command)
|
||||
- Menu (commands linking to embedded prompts)
|
||||
|
||||
**No external files required!**
|
||||
|
||||
### 2. Embedded Prompts with ID References
|
||||
|
||||
Instead of inline action text, complex prompts are defined separately and referenced by ID:
|
||||
|
||||
```yaml
|
||||
prompts:
|
||||
- id: conventional-commit
|
||||
content: |
|
||||
OH! Let's craft a BEAUTIFUL conventional commit message!
|
||||
|
||||
First, I need to understand your changes...
|
||||
[Detailed instructions]
|
||||
|
||||
menu:
|
||||
- trigger: conventional
|
||||
action: '#conventional-commit' # References the prompt above
|
||||
description: 'Craft a structured conventional commit'
|
||||
```
|
||||
|
||||
**Benefits:**
|
||||
|
||||
- Clean separation of menu structure from prompt content
|
||||
- Prompts can be as detailed as needed
|
||||
- Easy to update individual prompts
|
||||
- Commands stay concise in the menu
|
||||
|
||||
### 3. The `#` Reference Pattern
|
||||
|
||||
When you see `action="#prompt-id"`:
|
||||
|
||||
- The `#` signals: "This is an internal reference"
|
||||
- LLM looks for `<prompt id="prompt-id">` in the same agent
|
||||
- Executes that prompt's content as the instruction
|
||||
|
||||
This is different from:
|
||||
|
||||
- `action="inline text"` - Execute this text directly
|
||||
- `exec="{path}"` - Load external file
|
||||
|
||||
### 4. Multiple Output Modes
|
||||
|
||||
Single agent provides 10+ different ways to accomplish variations of the same core task:
|
||||
|
||||
- `*conventional` - Structured commits
|
||||
- `*story` - Narrative style
|
||||
- `*haiku` - Poetic brevity
|
||||
- `*explain` - Deep "why" explanation
|
||||
- `*dramatic` - Theatrical flair
|
||||
- `*emoji-story` - Visual storytelling
|
||||
- `*tldr` - Ultra-minimal
|
||||
- Plus utility commands (analyze, improve, batch)
|
||||
|
||||
Each mode has its own detailed prompt but shares the same agent personality.
|
||||
|
||||
### 5. Strong Personality
|
||||
|
||||
The agent has a memorable, consistent personality:
|
||||
|
||||
- Enthusiastic wordsmith who LOVES finding perfect words
|
||||
- Gets genuinely excited about commit messages
|
||||
- Uses literary metaphors
|
||||
- Quotes authors when appropriate
|
||||
- Sheds tears of joy over good variable names
|
||||
|
||||
This personality is maintained across ALL commands through the persona definition.
|
||||
|
||||
## When to Use Simple Agents
|
||||
|
||||
**Perfect for:**
|
||||
|
||||
- Single-purpose tools (calculators, converters, analyzers)
|
||||
- Tasks that don't need external data
|
||||
- Utilities that can be completely self-contained
|
||||
- Quick operations with embedded logic
|
||||
- Personality-driven assistants with focused domains
|
||||
|
||||
**Not ideal for:**
|
||||
|
||||
- Agents needing persistent memory across sessions
|
||||
- Domain-specific experts with knowledge bases
|
||||
- Agents that need to access specific folders/files
|
||||
- Complex multi-workflow orchestration
|
||||
|
||||
## YAML Schema Deep Dive
|
||||
|
||||
```yaml
|
||||
agent:
|
||||
metadata:
|
||||
id: _bmad/agents/{agent-name}/{agent-name}.md # Build path
|
||||
name: "Display Name"
|
||||
title: "Professional Title"
|
||||
icon: "🎭"
|
||||
type: simple # CRITICAL: Identifies as Simple Agent
|
||||
|
||||
persona:
|
||||
role: |
|
||||
First-person description of what the agent does
|
||||
identity: |
|
||||
Background, experience, specializations (use "I" voice)
|
||||
communication_style: |
|
||||
HOW the agent communicates (tone, quirks, patterns)
|
||||
principles:
|
||||
- "I believe..." statements
|
||||
- Core values that guide behavior
|
||||
|
||||
prompts:
|
||||
- id: unique-identifier
|
||||
content: |
|
||||
Detailed instructions for this command
|
||||
Can be as long and detailed as needed
|
||||
Include examples, steps, formats
|
||||
|
||||
menu:
|
||||
- trigger: command-name
|
||||
action: "#prompt-id"
|
||||
description: "What shows in the menu"
|
||||
```
|
||||
|
||||
## Why This Pattern is Powerful
|
||||
|
||||
1. **Zero Dependencies** - Works anywhere, no setup required
|
||||
2. **Portable** - Single file can be moved/shared easily
|
||||
3. **Maintainable** - All logic in one place
|
||||
4. **Flexible** - Multiple modes/commands from one personality
|
||||
5. **Memorable** - Strong personality creates engagement
|
||||
6. **Sophisticated** - Complex prompts despite simple architecture
|
||||
|
||||
## Comparison: Simple vs Expert Agent
|
||||
|
||||
| Aspect | Simple Agent | Expert Agent |
|
||||
| ------------ | -------------------- | ----------------------------- |
|
||||
| Files | Single YAML | YAML + sidecar folder |
|
||||
| Dependencies | None | External resources |
|
||||
| Memory | Session only | Persistent across sessions |
|
||||
| Prompts | Embedded | Can be external files |
|
||||
| Data Access | None | Domain-restricted |
|
||||
| Use Case | Self-contained tasks | Domain expertise with context |
|
||||
|
||||
## Using This Reference
|
||||
|
||||
### For Building Simple Agents
|
||||
|
||||
1. Study the YAML structure - especially `prompts` section
|
||||
2. Note how personality permeates every prompt
|
||||
3. See how `#prompt-id` references work
|
||||
4. Understand menu → prompt connection
|
||||
|
||||
### For Understanding Embedded Prompts
|
||||
|
||||
1. Each prompt is a complete instruction set
|
||||
2. Prompts maintain personality voice
|
||||
3. Structured enough to be useful, flexible enough to adapt
|
||||
4. Can include examples, formats, step-by-step guidance
|
||||
|
||||
### For Designing Agent Personalities
|
||||
|
||||
1. Persona defines WHO the agent is
|
||||
2. Communication style defines HOW they interact
|
||||
3. Principles define WHAT guides their decisions
|
||||
4. Consistency across all prompts creates believability
|
||||
|
||||
## Files Worth Studying
|
||||
|
||||
The entire `commit-poet.agent.yaml` file is worth studying, particularly:
|
||||
|
||||
1. **Persona section** - How to create a memorable character
|
||||
2. **Prompts with varying complexity** - From simple (tldr) to complex (batch)
|
||||
3. **Menu structure** - Clean command organization
|
||||
4. **Prompt references** - The `#prompt-id` pattern
|
||||
|
||||
## Key Takeaways
|
||||
|
||||
- **Simple Agents** are powerful despite being single-file
|
||||
- **Embedded prompts** allow sophisticated behavior
|
||||
- **Strong personality** makes agents memorable and engaging
|
||||
- **Multiple modes** from single agent provides versatility
|
||||
- **Self-contained** = portable and dependency-free
|
||||
- **The `#prompt-id` pattern** enables clean prompt organization
|
||||
|
||||
---
|
||||
|
||||
_This reference demonstrates how BMAD Simple Agents can be surprisingly powerful while maintaining architectural simplicity._
|
||||
@@ -0,0 +1,3 @@
|
||||
# Reference Examples
|
||||
|
||||
Reference models of best practices for agents, workflows, and whole modules.
|
||||
@@ -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/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
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### 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
|
||||
- update frontmatter `stepsCompleted` to add 4 at the end of the array before loading next step
|
||||
- Frontmatter initialized with `stepsCompleted: [1]`
|
||||
- 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,121 @@
|
||||
---
|
||||
name: 'step-01b-continue'
|
||||
description: 'Handle workflow continuation from previous session'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/bmb/reference/workflows/meal-prep-nutrition'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-01b-continue.md'
|
||||
outputFile: '{output_folder}/nutrition-plan-{project_name}.md'
|
||||
---
|
||||
|
||||
# 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
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### 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 during this step
|
||||
- 💬 Maintain continuity with previous sessions
|
||||
- 🚪 DETECT exact continuation point from frontmatter of incomplete file {outputFile}
|
||||
|
||||
## 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 of {outputFile} to understand:
|
||||
|
||||
- `stepsCompleted`: Which steps are already done, the rightmost value of the array is the last step completed. For example stepsCompleted: [1, 2, 3] would mean that steps 1, then 2, and then 3 were finished.
|
||||
|
||||
### 2. Read the full step of every completed step
|
||||
|
||||
- read each step file that corresponds to the stepsCompleted > 1.
|
||||
|
||||
EXAMPLE: In the example `stepsCompleted: [1, 2, 3]` your would find the step 2 file by file name (step-02-profile.md) and step 3 file (step-03-assessment.md). the last file in the array is the last one completed, so you will follow the instruction to know what the next step to start processing is. reading that file would for example show that the next file is `steps/step-04-strategy.md`.
|
||||
|
||||
### 3. Review the output completed previously
|
||||
|
||||
In addition to reading ONLY each step file that was completed, you will then read the {outputFile} to further understand what is done so far.
|
||||
|
||||
### 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
|
||||
|
||||
### 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: follow the suggestion of the last completed step reviewed to continue as it suggested
|
||||
- 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,165 @@
|
||||
---
|
||||
name: 'step-02-profile'
|
||||
description: 'Gather comprehensive user profile information through collaborative conversation'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/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/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/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
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### 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` to add 2 at the end of the array 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,154 @@
|
||||
---
|
||||
name: 'step-03-assessment'
|
||||
description: 'Analyze nutritional requirements, identify restrictions, and calculate target macros'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/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/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/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
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### 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
|
||||
- 📖 Update frontmatter `stepsCompleted` to add 3 at the end of the array before loading next step
|
||||
- 🚫 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,183 @@
|
||||
---
|
||||
name: 'step-04-strategy'
|
||||
description: 'Design a personalized meal strategy that meets nutritional needs and fits lifestyle'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/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/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/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
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### 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/core/workflows/advanced-elicitation/workflow.xml`
|
||||
- IF P: Execute `{project-root}/_bmad/core/workflows/party-mode/workflow.md` with a chef and dietitian expert also as part of the party
|
||||
- IF C: Save content to nutrition-plan.md, update frontmatter `stepsCompleted` to add 4 at the end of the array before loading next step, 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,168 @@
|
||||
---
|
||||
name: 'step-05-shopping'
|
||||
description: 'Create a comprehensive shopping list that supports the meal strategy'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/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/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/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
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
- 🚫 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
|
||||
|
||||
## 📊 STATUS UPDATE:
|
||||
|
||||
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/core/workflows/advanced-elicitation/workflow.xml`
|
||||
- IF P: Execute `{project-root}/_bmad/core/workflows/party-mode/workflow.md`
|
||||
- IF C: Save content to nutrition-plan.md, update frontmatter `stepsCompleted` to add 5 at the end of the array before loading next step, 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,195 @@
|
||||
---
|
||||
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/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/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/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
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### 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/core/workflows/advanced-elicitation/workflow.xml`
|
||||
- IF P: Execute `{project-root}/_bmad/core/workflows/party-mode/workflow.md`
|
||||
- IF C: update frontmatter `stepsCompleted` to add 6 at the end of the array before loading next step, 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 `stepsCompleted` to add 6 at the end of the array before loading next step 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,59 @@
|
||||
---
|
||||
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/core/config.yaml and resolve:
|
||||
|
||||
- `project_name`, `output_folder`, `user_name`, `communication_language`, `document_output_language`
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### 2. First Step EXECUTION
|
||||
|
||||
Load, read the full file and then execute `{project-root}/_bmad/bmb/reference/workflows/meal-prep-nutrition/steps/step-01-init.md` to begin the workflow.
|
||||
Reference in new issue
Block a user