# Ladle List > Soup season: a week of batch cooking, one trip to the shop. Ladle List takes the soups (or any batch-cook dishes) you plan to make this week, merges every ingredient into one shopping list grouped by shop section, strikes off what your cupboard already holds, flags the pack-size items one soup will only part-use, and plans the shop in amounts a shop actually sells. URL: https://ladle-list.skillsafe.ai/ API tutorial: https://ladle-list.skillsafe.ai/api.html ## Free, in the browser - The tubs: up to six soups, each with a name, servings and ingredient lines as the recipe writes them (or a dropped .txt). - The merged list: each line is read for an amount, a unit and the item (prep words like chopped or large are set aside, "salt and pepper" is two items, water is left out). The same item across soups becomes one row; same units add up as written, mixed weights or volumes are converted to grams or millilitres, missing amounts read "some". - The aisle signs: rows grouped into eleven fixed sections (fruit and veg, fresh herbs, meat and fish, dairy and eggs, bread, tins and jars, pasta rice and pulses, spices, stock sauces and oils, frozen, everything else), each row with coloured dots for the soups that use it and tags: shared, loose end, check, have. - The cupboard: items you list are struck off; salt, pepper, oil, sugar and flour you do not list are flagged "check". - Loose ends: a pack-size item (fresh herbs and a short list - celery, spinach, kale, chard, cabbage, cream, creme fraiche, sour cream, buttermilk, yogurt, ginger, lemongrass, spring onions, bok choy, watercress, rocket, celeriac, fennel) used by only one soup that does not ask for the whole bunch, bag or carton. - The verdict rule: tight (no loose ends), loose ends (one or two), scattered (three or more). - Exports: a tick-off list (copy), CSV, Markdown, JSON; tick boxes per item while you shop; saved weeks in a freezer (in the browser, or in your account when signed in). ## Metered (gpt-terra), one task: plan the shop - For every item to buy: what to pick up in amounts a shop sells (never less than needed, never a pack weight, price or brand), which of your shops, and what that amount covers. - For every loose end: roughly what is left and where it goes (another soup on the list, or one storage step). - Swaps by verdict (tight none, loose ends up to two, scattered one to three), each changing a loose-end item in a soup that uses it to something already on the list. - Which soup to cook first (the one holding the most delicate fresh items) and a yes/no cupboard check for each staple. - The page re-checks every reply against its own list: verdict, every item planned once, unknown ids, your shops, loose ends covered, swap count and fit, soup names, ids in the wording. ## Limits and honesty - Section and pack-size rules are fixed word lists; unusual items land in "Everything else". Amounts are summed from your recipes and are estimates; real pack sizes vary by shop. - The page never adds an ingredient, a price or a brand. Nothing is sent anywhere until you press "Plan the shop". ## Source Built on the SkillSafe skill @mary4data/shopping-agent (https://skillsafe.ai/skill/@mary4data/shopping-agent): generate an optimised shopping list from a meal plan, grouped by store. Its messaging-app delivery is not part of this app.