Claude-skill-registry cooklang-formatting
Format recipes using Cooklang markup syntax. Use when creating, editing, or converting recipes to Cooklang format. Covers ingredients, equipment, timers, metadata, and file organization.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/cooklang-formatting" ~/.claude/skills/majiayu000-claude-skill-registry-cooklang-formatting && rm -rf "$T"
manifest:
skills/data/cooklang-formatting/SKILL.mdsource content
Cooklang Recipe Formatting
Style Guidelines (IMPORTANT)
1. Capitalize ingredients and equipment
@Leek{1} -- correct @leek{1} -- wrong #Pan{} -- correct #pan{} -- wrong
2. No adjectives inside keywords
Adjectives go BEFORE the keyword, not as part of it:
large #Pan{} -- correct #large pan{} -- wrong hot #Skillet{} -- correct #hot skillet{} -- wrong medium @Onion{1} -- correct @medium onion{1} -- wrong
3. Prefer metric measurements
Use grams, ml, litres instead of cups. Teaspoons and tablespoons are OK:
@Flour{250%g} -- correct @Flour{2%cups} -- wrong @Milk{500%ml} -- correct @Milk{2%cups} -- wrong @Stock{1%litre} -- correct @Stock{4%cups} -- wrong @Butter{2%tbsp} -- OK (tbsp allowed) @Vanilla{1%tsp} -- OK (tsp allowed)
4. Include a recipe image
Save the most appealing frame from the video as an image with the same name:
Dinner/Garlic Butter Shrimp.cook Dinner/Garlic Butter Shrimp.jpg -- same name, .jpg extension
Quick Reference
| Symbol | Purpose | Example |
|---|---|---|
| Ingredient | |
| Equipment | |
| Timer | |
| Metadata block | YAML frontmatter |
| Section header | |
Ingredient Syntax
@ingredient -- name only (to taste) @ingredient{quantity} -- with amount, no unit @ingredient{quantity%unit} -- full specification @multi word ingredient{} -- braces required for multi-word @ingredient{qty%unit}(prep) -- with preparation instructions
Examples
@Salt{} @Eggs{3} @Butter{30%g} @Chicken Breast{500%g} @Garlic{3%cloves}(minced) @Onion{1}(diced)
Notes on Ingredients
- For pantry staples (salt, pepper, oil), just use
with no quantity@Salt{} - For optional ingredients, write "optional" in the text:
Add optional @Chilli Flakes{1%tsp} if desired. - Don't use
,-
, or?
prefixes - they're not supported by most Cooklang apps& - Don't mark cooking water as an ingredient - water for boiling/blanching is not a shopping list item:
Bring a large #Pot{} of water to a boil. -- correct (plain text) Bring a large #Pot{} of @Water{} to a boil. -- wrong (creates ingredient)
Equipment Syntax
#Pot{} #Frying Pan{} #Mixing Bowl{} #Baking Sheet{}
Adjectives go before, not inside:
large #Pot{} -- correct #large pot{} -- wrong
Timer Syntax
~{5%minutes} ~{30%seconds} ~{1%hour} ~resting{10%minutes} -- named timer
Important: Use single values only, NOT ranges. Write
~{15%minutes} not ~{10-15%minutes}.
For variable times, pick the middle value or write it in text: "about 10-15 minutes".
Recipe Structure
Metadata (YAML Frontmatter)
--- source: https://example.com/recipe servings: 4 prep_time: 15 minutes cook_time: 30 minutes ---
Note:
servings must be a number, not text.
Steps
Each paragraph becomes a numbered step. Separate steps with blank lines:
Preheat #Oven{} to 190°C. Season @Chicken Breast{500%g} with @Salt{} and @Pepper{}. Bake for ~{25%minutes} until internal temperature reaches 75°C.
Sections
Use
== for complex recipes with multiple parts:
== Marinade == Combine @Soy Sauce{45%ml} and @Honey{30%g} in a #Bowl{}. == Main Dish == Cook @Chicken{500%g} in the marinade.
Notes
Use
> prefix for tips:
> For extra flavor, marinate overnight.
File Organization
Save recipes to category folders using Title Case:
Breakfast/Fluffy Pancakes.cook Lunch/Greek Salad.cook Dinner/Garlic Butter Shrimp.cook
Categories
- Breakfast: Morning meals, eggs, pancakes, smoothies
- Lunch: Salads, sandwiches, soups, light meals
- Dinner: Main courses, proteins, pasta, substantial meals
- Sides: Accompaniments, vegetables
- Sauces: Dressings, marinades, condiments
- Desserts: Sweets, baked goods
- Drinks: Beverages, cocktails
CLI Commands
If the
cook CLI is installed:
cook recipe "path/to/recipe.cook" # Parse and display cook recipe "path/to/recipe.cook:2" # Scale by 2x cook shopping-list *.cook # Generate shopping list cook doctor validate # Check for syntax errors
Common Patterns
Simple Recipe
--- source: https://tiktok.com/@creator/video/123 servings: 2 --- Heat @Olive Oil{2%tbsp} in a large #Skillet{} over medium heat. Add @Garlic{3%cloves}(minced) and cook for ~{30%seconds}. Add @Prawns{450%g} and cook for ~{2%minutes} per side until pink. Season with @Salt{} and @Pepper{} to taste.
Recipe with Sections
--- servings: 4 --- == Sauce == Whisk @Soy Sauce{3%tbsp}, @Honey{2%tbsp}, and @Sesame Oil{1%tsp}. == Stir Fry == Heat #Wok{} over high heat. Cook @Chicken{500%g}(sliced) for ~{5%minutes}. Add sauce and toss to coat.