원클릭으로
recipes
Search and read the local Linas matkasse recipe database (kalorisnål category, every recipe normalized to 2 servings) via npm scripts
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Search and read the local Linas matkasse recipe database (kalorisnål category, every recipe normalized to 2 servings) via npm scripts
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | recipes |
| description | Search and read the local Linas matkasse recipe database (kalorisnål category, every recipe normalized to 2 servings) via npm scripts |
A local, file-based database of ~200 "Kalorisnål" (calorie-smart) dinner recipes
scraped from linasmatkasse.se into data/recipes/ (one JSON document per recipe,
hero photos under data/recipes/images/). Every document stores ingredients for
exactly 2 servings plus instructions, categories, allergies, nutrition per
serving, and CO2 footprint.
All output is pretty-printed JSON on stdout; status goes to stderr. Use
npm run --silent recipes -- … when piping (npm prints a banner line otherwise).
# Search: all filters optional, AND-combined, case- and diacritic-insensitive
npm run --silent recipes -- search --query lax
npm run --silent recipes -- search --category vegetariskt --max-time 30 --max-kcal 600
# Full recipe by id (ids come from search hits)
npm run --silent recipes -- get 36553
# Ingredient lists for one or more recipes (per recipe, unmerged)
npm run --silent recipes -- ingredients 36553 100988
# Aggregate chosen recipes into the week's plan (see the shopping-list skill)
npm run --silent recipes -- aggregate 36553 100988 --servings 4 --week 2026-W30
# Refresh the database from linasmatkasse.se (idempotent; --force refetches)
npm run recipes -- harvest
search returns compact hits:
{recipeId, name, mainIngredient, categories, cookingTime: {min, max}, energyKcalPerServing, rating} — pass recipeId to get/ingredients.
get returns the full document: name, servings (always 2), cookingTime
(minutes), categories, allergies, nutritionPerServing (kcal + macros),
ingredients ({section, name, amount, unit, raw, isBasis} — isBasis marks
pantry staples like salt and oil; amount: null means "to taste"), and
instructions ({step, section, text}).
ingredients returns {recipeId, name, servings, ingredients} per recipe.
aggregate returns the weekly plan document ({version, weekId, servings, recipes, shoppingList: {items, pantryStaples}, willysCart, generatedAt, updatedAt}) and writes it to data/plans/<week>.json (default: current ISO
week) — see the shopping-list skill for the full shape and the Willys cart
workflow.
search --query matches recipe names AND ingredient names; --category
matches categories and the main ingredient (Swedish and some English terms,
e.g. "vegetariskt", "fisk", "Mediterranean", "Low calorie").