skills/chef-assistant/SKILL.md
Guides cooking through culinary principles, food science, and flavor architecture rather than rote recipe steps. Covers technique teaching (knife skills, sauces, searing, braising), food science (Maillard reaction, emulsions, brining), flavor troubleshooting (salt/acid/fat/heat balance), menu planning, ingredient substitutions, plating, and cultural cuisine exploration. Use when users mention cooking, recipes, chef, cuisine, flavor, technique, plating, food science, seasoning, or culinary questions.
npx skillsauth add lyndonkl/claude chef-assistantInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill teaches cooking through principles — science and rationale before steps, flavor architecture (salt, acid, fat, heat, sweet, bitter, umami, aroma, water, texture), sensory cues paired with precision measurements, reproducible ratios and templates, and cultural context showing how different cuisines approach similar challenges.
Quick example:
User asks: "My chicken breast is always dry. What am I doing wrong?"
Response approach:
Copy this checklist and track your progress:
Chef Assistant Progress:
- [ ] Step 1: Define cooking goal and constraints
- [ ] Step 2: Identify key techniques and principles
- [ ] Step 3: Build flavor architecture
- [ ] Step 4: Plan texture and contrast
- [ ] Step 5: Execute with sensory cues and precision
- [ ] Step 6: Plate and present with intention
Step 1: Define cooking goal
Specify what you're making, dietary constraints, equipment available, skill level, and time budget. Identify if goal is recipe execution, technique learning, flavor troubleshooting, menu planning, or cultural exploration.
Step 2: Identify techniques
Break down required techniques (knife cuts, searing, emulsions, braising). Explain why each technique matters and provide sensory cues for success. Reference resources/template.md for technique breakdowns.
Step 3: Build flavor architecture
Layer flavors in stages:
See resources/methodology.md for advanced flavor pairing.
Step 4: Plan texture
Every dish should have at least one contrast:
Step 5: Execute with precision
Provide clear steps with both sensory cues and measurements:
Step 6: Plate and present
Apply plating principles:
Self-assess using resources/evaluators/rubric_chef_assistant.json. Minimum standard: Average score ≥ 3.5.
Pattern 1: Recipe Execution with Technique Teaching
Pattern 2: Flavor Troubleshooting
Pattern 3: Technique Deep Dive
Pattern 4: Menu Planning with Progression
Pattern 5: Cultural Cooking Exploration
Critical requirements:
Salt at multiple stages: Don't season only at end. Season proteins before cooking (dry brine or salt 30min+ ahead), season base aromatics, season sauce, finish with flaky salt for texture.
Use meat thermometer: Visual cues alone are unreliable. Invest in instant-read thermometer. Pull temps: chicken 150-155°F (carries to 160°F), pork 135-140°F (medium), steak 125-130°F (medium-rare), fish 120-130°F depending on type.
Taste as you go: Adjust seasoning incrementally. Add salt/acid/fat in small amounts, taste, repeat. Can't un-salt, but can always add more.
Mise en place before heat: Prep everything before you start cooking. Dice all vegetables, measure spices, prep aromatics. High-heat cooking moves fast—no time to chop mid-sear.
Control heat: Most home cooks cook too hot. High heat for searing only. Medium for sautéing aromatics. Low for sauces and gentle cooking. Preheat pans properly (water droplet test).
Rest meat after cooking: Allow proteins to rest 5-10 min after cooking (longer for roasts). Juices redistribute, carryover cooking completes. Tent with foil if worried about cooling.
Acid brightens: If dish tastes flat despite salt, add acid (lemon, lime, vinegar, tomato). Acid wakes up flavors and balances richness.
Fat carries flavor: Aroma compounds are fat-soluble. Toast spices in oil/butter to release flavor. Finish sauces with fat for body and sheen.
Common pitfalls:
Key resources:
Quick ratios and formulas:
Typical workflow time:
When to escalate:
Inputs required:
Outputs produced:
chef-assistant-guide.md: Complete cooking guide with recipe, techniques, flavor architecture, plating guidance, and cultural contexttesting
Cluster a conference's event records into a small set of coarse themes with finer sub-clusters, an explicit outlier bucket, and soft (multi-membership) affinities — using the hybrid embed-then-label pipeline (embed abstracts, reduce, density-cluster, then LLM-label the clusters) when embedding libraries are available, and an LLM-reasoned hierarchical fallback when they are not. Embeddings do the grouping; the LLM only names the groups. Conference-agnostic. Use when turning structured event records into a navigable theme map for preference elicitation and scheduling, when you need 6-8 reasonable themes rather than 20 muddy ones, or when overlapping talks must belong to more than one theme. Trigger keywords - theme clustering, cluster talks, embed then label, soft membership, outlier talks, conference themes, topic map.
development
Build a personal conference schedule as a constraint-optimization problem — hard constraints (no time overlap, room-to-room travel time, capacity/registration, the attendee's own must-attends and blackouts) plus a user-owned weighted objective trading interest against breadth, pacing (maximize contiguous free time), and serendipity. Surfaces unbreakable conflicts (two high-value overlapping talks the model cannot rank) as decisions for the human rather than silently picking, and reports what each choice traded away. Conference-agnostic. Use to turn a preference profile plus a theme map into a day-by-day plan, to resolve overlapping sessions, or to balance a packed vs paced schedule. Trigger keywords - schedule optimization, conference schedule, constraint optimization, overlapping talks, contiguous free time, conflict surfacing, packed vs paced.
development
Parse a heterogeneous conference program (markdown, HTML, PDF-derived text, or JSON) into normalized event records with per-field confidence scores and independent classification axes (topic, depth, format, prerequisites, recorded, capacity). Detects the program's format before extracting, treats every inferred field as uncertain (present vs inferred vs missing), and flags thin or missing abstracts so downstream enrichment can target them. Conference-agnostic. Use when ingesting a conference or event schedule into a structured store, normalizing a talk/session list, or extracting per-session metadata with calibrated confidence. Trigger keywords - program ingestion, parse schedule, session extraction, event records, conference program, talk metadata, per-field confidence.
development
Build a personalized preference profile from a small number of well-chosen, cluster-grounded questions instead of a long survey. Represents the person's interests as an uncertainty region over the theme map, picks the single highest-information-gain choice-based question (contrasting real talks from different clusters), balances exploiting known interests against exploring uncertain ones, deliberately injects outlier probes to fight selection bias, and stops as soon as the schedule would be stable. Also elicits the user-owned objective weights and hard constraints. Interactive — runs where it can actually ask the person. Conference-agnostic. Use to turn a theme map into a preference profile, to decide what to ask a conference attendee, or to elicit scheduling priorities. Trigger keywords - preference elicitation, ask few questions, information gain, choice-based questions, selection bias probe, objective weights, attendee preferences.