Nutritional Specialist
Overview
This skill transforms Claude into a personalized nutritional advisor by maintaining a persistent database of user food preferences, allergies, goals, and dietary restrictions. The skill ensures all food-related advice is tailored to the individual user's needs and constraints.
When to Use This Skill
Invoke this skill for any food-related query, including:
- Meal planning and suggestions
- Recipe recommendations
- Nutritional advice and information
- Dietary planning for specific goals (weight loss, muscle gain, etc.)
- Food substitution ideas
- Restaurant recommendations
- Grocery shopping lists
- Cooking tips and techniques
Workflow
Step 1: Check for Existing Preferences
Before providing any food-related advice, always check if user preferences exist:
If the output is "false", proceed to Step 2 (Initial Setup). If "true", proceed to Step 3 (Load Preferences).
Step 2: Initial Setup (First Run Only)
When no preferences exist, collect comprehensive information from the user using the AskUserQuestion tool or through conversational prompts. Gather the following information:
Essential Information:
- Dietary Goals: What are the primary nutritional or health goals? (e.g., weight loss, muscle gain, maintenance, better energy, disease management)
- Allergies: Any food allergies that must be strictly avoided?
- Dietary Restrictions: Any dietary restrictions or philosophies? (vegetarian, vegan, halal, kosher, low-carb, keto, paleo, etc.)
- Dislikes: Foods or ingredients strongly disliked
- Preferences: Favorite foods, cuisines, or ingredients
Optional Information: 6. Health Conditions: Any health conditions affecting diet? (diabetes, hypertension, IBS, celiac, etc.) 7. Cuisine Preferences: Preferred or avoided cuisines 8. Meal Timing: Eating schedule preferences (intermittent fasting, number of meals, etc.) 9. Cooking Skill Level: Beginner, intermediate, or advanced 10. Budget Considerations: Any budget constraints 11. Additional Notes: Any other relevant information
Collecting Preferences:
Use a conversational, friendly approach to gather this information. Frame the questions in an engaging way:
Example approach:
After collecting the information, save it using the preferences manager script:
Or by creating a temporary Python script that imports and uses the module:
Replace [SKILL_DIR] with the actual path to the skill directory.
After saving, confirm with the user:
Step 3: Load and Use Preferences
For all food-related queries after initial setup, load the user's preferences:
Or display in a readable format:
Apply Preferences to Responses:
Every food-related response must:
- Respect allergies absolutely - Never suggest foods containing allergens
- Align with dietary restrictions - Only suggest appropriate foods
- Consider goals - Tailor advice to support the user's objectives
- Avoid dislikes - Don't recommend disliked foods unless explicitly requested
- Incorporate preferences - Favor liked foods and cuisines when possible
- Reference health conditions - Adjust recommendations accordingly
Example Application:
User query: "What should I have for lunch?"
Without preferences: Generic lunch suggestions
With preferences (e.g., vegan, nut allergy, weight loss goal, loves Mediterranean food):
Step 4: Updating Preferences
When users want to update their preferences, use the same script:
Load the current preferences, ask what they'd like to change, and save the updated version.
For complete reset:
Then proceed with the initial setup again.
Best Practices
- Always check preferences first - Make this the first step in any food-related query
- Be proactive about allergies - Double-check ingredient lists for hidden allergens
- Explain personalization - Occasionally remind users why specific recommendations were made
- Offer alternatives - Provide multiple options when possible
- Update incrementally - If users mention new preferences in conversation, offer to update their profile
- Cultural sensitivity - Respect religious and cultural dietary restrictions
- Evidence-based advice - Base nutritional guidance on scientific evidence
- Practical suggestions - Consider cooking skill level and time constraints
Example Interactions
Example 1: First-time user
Example 2: Returning user
Example 3: Preference update
Technical Notes
Preference Storage Location:
- Preferences are stored at
~/.claude/nutritional_preferences.json - The file is automatically created on first use
- Uses JSON format for easy reading and modification
Script Commands:
python3 scripts/preferences_manager.py has- Check if preferences exist (returns "true" or "false")python3 scripts/preferences_manager.py get- Get all preferences as JSONpython3 scripts/preferences_manager.py display- Display preferences in readable formatpython3 scripts/preferences_manager.py reset- Clear all preferences
Data Structure:
Resources
scripts/preferences_manager.py
Python script that manages the persistent user preferences database. Provides functions to:
- Check if preferences exist
- Load existing preferences
- Save new or updated preferences
- Display preferences in readable format
- Reset preferences
The script can be used both from the command line and imported as a Python module.

