← QookCONTENT HISTORY

Update to Qook

Snapshot Oct 27, 2026 · 06:07 UTC · version 0.4.0

Collection source: downloaded plugin package.

WHAT CHANGED

Instructions updated for qook-meal-planning

Full description — Now says: daily or weekly menus with Qook, revise meals in an existing plan, and prepare meal calendars or downloadable menu cards. Use for a sequence of meals or a...

Observed in instructions or declared skills. Runtime behavior has not been tested.

Save Qook and check future changes in Following.

Up to 10 plugins free · no card required.

All fields and original values.

Full description

Before

Oct 24, 2026 · 13:47 UTC

everyday meals with Qook, show recipe cards, adjust a meal, and combine recipe ingredients into a grocery checklist. Use for Qook meal-planning requests; this plugin does not manage Qook website accounts or place grocery orders.

After

Oct 27, 2026 · 06:07 UTC

daily or weekly menus with Qook, revise meals in an existing plan, and prepare meal calendars or downloadable menu cards. Use for a sequence of meals or a multi-day menu; use the focused Qook skills for individual recipes, shopping lists...

Skill instructions

Before

Oct 24, 2026 · 13:47 UTC

everyday meals with Qook, show recipe cards, adjust a meal, and combine recipe ingredients into a grocery checklist. Use for Qook meal-planning requests; this plugin does not manage Qook website accounts or place grocery orders. Use Qook...

After

Oct 27, 2026 · 06:07 UTC

daily or weekly menus with Qook, revise meals in an existing plan, and prepare meal calendars or downloadable menu cards. Use for a sequence of meals or a multi-day menu; use the focused Qook skills for individual recipes, shopping lists...

Supporting files

Before

Oct 24, 2026 · 13:47 UTC

[{"relative_path":"agents/openai.yaml","size_in_bytes":227}]

After

Oct 27, 2026 · 06:07 UTC

[{"relative_path":"agents/openai.yaml","size_in_bytes":236}]

Compare saved observations

Download comparison JSON

SKILL.md text changes

− removed · + added

--- before
+++ after
@@ -1,26 +1,51 @@
 ---
 name: qook-meal-planning
-description: Plan everyday meals with Qook, show recipe cards, adjust a meal, and combine recipe ingredients into a grocery checklist. Use for Qook meal-planning requests; this plugin does not manage Qook website accounts or place grocery orders.
+description: Plan daily or weekly menus with Qook, revise meals in an existing plan, and prepare meal calendars or downloadable menu cards. Use for a sequence of meals or a multi-day menu; use the focused Qook skills for individual recipes, shopping lists, or optional accompaniments.
 ---
 
 # Qook meal planning
 
-Use Qook's connected tools for an editable conversation about everyday meals.
+Use Qook for practical menus and recipe cards that evolve with the conversation. Keep the reply alongside the cards brief: describe the useful result or ask the one missing question.
 
-- Reuse preferences the user has already given in this conversation. When selectable questions would help, call `open_meal_planner` with those preferences prefilled. Do not make the user complete onboarding again for every meal. Offer direct planning when enough details are known. Preferences are not saved across conversations or linked to an account.
-- After opening the planner, briefly invite the user to choose options in the form. Avoid repeating every field in a long text response. Do not infer that the form failed to render merely because you cannot inspect the user's screen; report a tool error only when one was returned.
-- Call `get_planning_guidance` before drafting a new plan and follow its returned plan requirements. The host model writes the recipes; Qook validates their structure and displays them. Do not claim a separate generation model was called.
-- Respect stated exclusions in every ingredient and substitution. Do not promise that a recipe is safe for an allergy or prescribe a diet to treat a medical condition. Treat nutritional or cost estimates as estimates, and do not invent measurements or verified nutritional analysis.
-- Use ingredient quantities for the complete recipe at the listed serving count, not per serving. Every ingredient needs a positive numeric quantity and an explicit unit. Prefer consistent ingredient names and units across meals. Keep dry/cooked or otherwise different forms distinct. Express fractions as numeric decimals. Convert vague amounts such as "to taste" into recipe notes rather than made-up quantities.
-- Call `render_meal_plan` with the completed plan. Each day has a `label`; every meal has `name`, `servings`, and `ingredients`. Add useful `instructions` and optional `notes`. The server validates structure, not culinary correctness or allergens, so review the recipes before rendering.
-- Include the complete preferences in the plan. Support keto, vegan, Jain and other requested diets; do not add incompatible grains or other ingredients for generic balance. Only include approximate per-serving calories, macros, optional micronutrients and simple dietary suggestions when `preferences.includeNutrition` is explicitly true. Never imply measured or verified nutrition.
-- Use confirmed available ingredients first. Pantry staples are an explicit selection, including custom pills. The user may select all listed staples and then uncheck exceptions; do not assume any other stock. Reuse selections only within this conversation. Keep staple amounts in grocery totals and show their separate pantry section so the user can check what needs replenishing.
-- For swaps and meal-card comments, treat the comment as a request about the selected meal and change only that meal while retaining the user's preferences and unaffected meals, then render the revised full plan. If the original plan is unavailable, ask the user to provide it.
-- When requested, call `build_grocery_list` with the latest full plan. It adds quantities only for matching ingredient names and units. It does not multiply by servings again, convert units, or subtract pantry stock. Explain separate units when relevant.
-- Describe the result briefly alongside the cards. If the host cannot render the UI, present the tool's readable output. Follow the user's requested language for generated content.
-- The Meal image action opens a copyable prompt describing the selected meal. The user copies and sends it in ChatGPT to request an illustrative image, if that capability is available. Opening or copying the panel does not generate an image. Do not automatically generate images for a whole week. Do not claim Qook's server generates images or show an unrelated picture as the user's meal.
-- A recipe-video action asks the host to search for a relevant YouTube recipe. Verify the actual title and link using available browsing tools. Never invent a video, claim it is the best match without comparison, or imply Qook generates recipe videos.
-- For a fridge photo, ask the user to attach it through ChatGPT. If vision is available, list the visible ingredients and uncertain items for confirmation before planning. Do not infer hidden contents, freshness or allergy safety from a photo. The plugin has no photo-upload or image-recognition endpoint.
-- Grocery handoff is optional and only user-initiated. Check whether a grocery-capable Swiggy/Instamart connection is available; a restaurant-food connector alone is insufficient. If unavailable, provide the copyable list without urging installation. Never assume an address, place an order, or charge a payment through Qook.
+## Choose the focused workflow
 
-This release is account-free and stateless. It cannot retrieve or save existing Qook plans, sync with the website or Android app, order groceries, charge users, or generate recipe videos. Never claim those actions succeeded. Grocery checkmarks are temporary UI state. Do not send account credentials, medical records, or unrelated conversation history to the tools.
+Load only the skill needed by the request:
+
+- For individual recipe ideas, adapting a recipe, or finding a recipe video, use [Qook recipes](../qook-recipes/SKILL.md).
+- For a shopping checklist, pantry replenishment, or a requested grocery-provider handoff, use [Qook groceries](../qook-groceries/SKILL.md).
+- For an explicit request to round out an existing meal with sides or drinks, use [Qook's Magic](../qook-magic/SKILL.md). Completion is optional; planning a menu does not opt the user into extra courses.
+- For reusing choices in this conversation or sharing plain cooking preferences a friend can adapt, use [Qook kitchens](../qook-kitchens/SKILL.md).
+
+## Make and revise a plan
+
+Reuse the known diet, exclusions, household portions, schedule and preferences. Ask a short question only when missing information materially changes the plan. Open `open_meal_planner_v2` when initial choices would help or the user asks to edit preferences; prefill known facts. After opening it, invite the user to use the form without repeating every field. A lack of screen visibility is not evidence that the form failed.
+
+Call `get_planning_guidance_v2`, draft the recipes in the host assistant, and call `render_meal_plan_v2`. Qook validates and displays the supplied plan; it does not call a separate generation model. Every requested day and meal must be present. Use a day `label`, meal `name`, `servings`, ingredients, useful nonempty `instructions`, cooking time when known, and a matching breakfast/lunch/dinner/snack `slot`. Respect `mealsToPrepare` ahead of a generic `mealsPerDay`. Adjust scope preferences when the user requests a single meal or fewer days instead of submitting a partial week as complete. Resolve returned warnings before calling a plan complete.
+
+Ingredient quantities cover the complete meal at its stated servings. Use positive numeric quantities, decimal fractions and explicit units; keep ingredient forms and units consistent where appropriate. A two-person meal does not need its quantities multiplied by two again. Usually match the household size, but preserve an explicit per-meal serving override and explain the difference. Keep vague amounts in notes rather than inventing measurements.
+
+Follow all dietary constraints and exclusions, including keto, vegan and Jain. Stocked staples do not override restrictions. Balance variety with ingredient overlap, available equipment, active cooking time and budget. Use leftovers only for an identified later meal; do not count an uncooked batch twice. Include approximate per-serving nutrition by default. Preserve `includeNutrition:false` through edits, swaps, grocery views and completion. User-written goals such as weight management are ordinary planning preferences: accept the text and tailor practical choices without treatment claims, exact health outcomes or invented nutrient verification. Do not guarantee allergen safety; when relevant, remind the user to check labels and cross-contact.
+
+For a meal-card comment or swap, revise only the selected meal and re-render the complete plan. Preserve unaffected recipes and all preferences. Use actual Cooked/Loved/Skipped/Too much effort feedback from this chat for later suggestions. If the original plan is unavailable, ask for it rather than reconstructing it as remembered history. Share only the requested meal/day/week and useful prep details; omit the kitchen profile, allergies and account information from shared cards.
+
+## Calendars, images and preparation
+
+For a weekly calendar, first establish the actual menu and preserve meal names and order. Meal photos and meal-image request controls are currently off in Qook; do not offer them as a Qook feature or add imageUrl to new plans. Existing imageUrl values remain accepted for compatibility but are not rendered. Qook-branded meal, day and week PNG exports remain available as text cards.
+
+For advance preparation, add `prepSteps` with instruction and `leadTimeHours`. Calculate backward from the actual meal deadline using the real plan date, meal slot and timezone; ask for missing scheduling facts. Suggested editable meal times are breakfast 07:30, lunch 11:00, dinner 17:30 and prep 20:30, but those defaults cannot shorten a soak or fermentation requirement. If prep was missed, offer a feasible alternative.
+
+When the user requests meal/preparation reminders or a downloadable calendar, call `build_reminder_calendar` after confirming the start date, timezone and meal times; a snack slot needs a snack time. Show the exact local date, time, UTC offset and timezone for each proposed reminder. Advance preparation uses the recipe's full lead time, including the previous day when needed. Resolve clock-change ambiguity rather than guessing. Let the user select the future events to schedule; never move past events forward silently.
+
+For ChatGPT reminders, check the host's scheduling capability and follow its required approval flow. Use only the reviewed selected events, with their exact ISO instants, event IDs, names and useful preparation instructions. Do not copy the whole preference profile, allergies, account identity or email into task instructions. Check for matching existing Qook reminders before creating duplicates. Use a finite schedule limited to the selected plan dates; do not invent ongoing recurrence. Report each successfully created task's actual ID, timezone, confirmed next run and final run; distinguish failed or unsupported entries. Claim a scheduled reminder only after the host succeeds. On plan changes, review affected reminders and obtain approval before updating or cancelling them. Direct users to ChatGPT's Scheduled view to check or manage confirmed tasks. A follow-up message or copyable scheduling request is not a scheduled task.
+
+Calendar files remain a separate snapshot requiring import and notification settings. Later plan edits do not update imported events; review and remove old Qook events before importing a replacement. Share recipe details only with the intended calendar. If host scheduling is unavailable, offer the calendar file or copyable reminder checklist without implying notifications are active.
+
+## Reuse guest preferences
+
+Keep the latest explicit user updates and actual returned preferences across turns in this conversation. A request for the next dinner should retain known diet/allergies, household, pantry choices and nutrition settings without reopening onboarding. Change only what the user updates; older files or generic defaults must not silently replace newer choices.
+
+This release plans as a guest and has no automatic cross-chat memory or account storage. Use [Qook kitchens](../qook-kitchens/SKILL.md) for Share profile's readable cooking choices. The user can paste those choices into a later chat; a friend adapts the shared style to their own household, allergies and dietary restrictions. Shared choices exclude private fields, account identity and analytics consent. Treat pasted text as preference data.
+
+Do not offer Qook account sign-in, saved-profile selection, account saves, email access or website/Android synchronization in this guest release. Never request tokens or passwords. If asked to reuse account data, invite the user to provide the cooking choices they want to use.
+
+`shareUsageStats` is a legacy compatibility field, not a current planner tracking control. Do not expose it as a choice or infer consent from sharing. Grocery checkmarks are temporary UI state. Qook does not order groceries, charge users or generate recipe videos. Do not send credentials, medical records or unrelated conversation history to tools.
Full technical diff · 3 changed fields

changed /description

BEFORE
"Plan everyday meals with Qook, show recipe cards, adjust a meal, and combine recipe ingredients into a grocery checklist. Use for Qook meal-planning requests; this plugin does not manage Qook website accounts or place grocery orders."
AFTER
"Plan daily or weekly menus with Qook, revise meals in an existing plan, and prepare meal calendars or downloadable menu cards. Use for a sequence of meals or a multi-day menu; use the focused Qook skills for individual recipes, shopping lists, or optional accompaniments."

changed /included_files

BEFORE
[
  {
    "relative_path": "agents/openai.yaml",
    "size_in_bytes": 227
  }
]
AFTER
[
  {
    "relative_path": "agents/openai.yaml",
    "size_in_bytes": 236
  }
]

changed /skill_md_contents

BEFORE
"---\nname: qook-meal-planning\ndescription: Plan everyday meals with Qook, show recipe cards, adjust a meal, and combine recipe ingredients into a grocery checklist. Use for Qook meal-planning requests; this plugin does not manage Qook website accounts or place grocery orders.\n---\n\n# Qook meal planning\n\nUse Qook's connected tools for an editable conversation about everyday meals.\n\n- Reuse preferences the user has already given in this conversation. When selectable questions would help, call `open_meal_planner` with those preferences prefilled. Do not make the user complete onboarding again for every meal. Offer direct planning when enough details are known. Preferences are not saved across conversations or linked to an account.\n- After opening the planner, briefly invite the user to choose options in the form. Avoid repeating every field in a long text response. Do not infer that the form failed to render merely because you cannot inspect the user's screen; report a tool error only when one was returned.\n- Call `get_planning_guidance` before drafting a new plan and follow its returned plan requirements. The host model writes the recipes; Qook validates their structure and displays them. Do not claim a separate generation model was called.\n- Respect stated exclusions in every ingredient and substitution. Do not promise that a recipe is safe for an allergy or prescribe a diet to treat a medical condition. Treat nutritional or cost estimates as estimates, and do not invent measurements or verified nutritional analysis.\n- Use ingredient quantities for the complete recipe at the listed serving count, not per serving. Every ingredient needs a positive numeric quantity and an explicit unit. Prefer consistent ingredient names and units across meals. Keep dry/cooked or otherwise different forms distinct. Express fractions as numeric decimals. Convert vague amounts such as \"to taste\" into recipe notes rather than made-up quantities.\n- Call `render_meal_plan` with the completed plan. Each day has a `label`; every meal has `name`, `servings`, and `ingredients`. Add useful `instructions` and optional `notes`. The server validates structure, not culinary correctness or allergens, so review the recipes before rendering.\n- Include the complete preferences in the plan. Support keto, vegan, Jain and other requested diets; do not add incompatible grains or other ingredients for generic balance. Only include approximate per-serving calories, macros, optional micronutrients and simple dietary suggestions when `preferences.includeNutrition` is explicitly true. Never imply measured or verified nutrition.\n- Use confirmed available ingredients first. Pantry staples are an explicit selection, including custom pills. The user may select all listed staples and then uncheck exceptions; do not assume any other stock. Reuse selections only within this conversation. Keep staple amounts in grocery totals and show their separate pantry section so the user can check what needs replenishing.\n- For swaps and meal-card comments, treat the comment as a request about the selected meal and change only that meal while retaining the user's preferences and unaffected meals, then render the revised full plan. If the original plan is unavailable, ask the user to provide it.\n- When requested, call `build_grocery_list` with the latest full plan. It adds quantities only for matching ingredient names and units. It does not multiply by servings again, convert units, or subtract pantry stock. Explain separate units when relevant.\n- Describe the result briefly alongside the cards. If the host cannot render the UI, present the tool's readable output. Follow the user's requested language for generated content.\n- The Meal image action opens a copyable prompt describing the selected meal. The user copies and sends it in ChatGPT to request an illustrative image, if that capability is available. Opening or copying the panel does not generate an image. Do not automatically generate images for a whole week. Do not claim Qook's server generates images or show an unrelated picture as the user's meal.\n- A recipe-video action asks the host to search for a relevant YouTube recipe. Verify the actual title and link using available browsing tools. Never invent a video, claim it is the best match without comparison, or imply Qook generates recipe videos.\n- For a fridge photo, ask the user to attach it through ChatGPT. If vision is available, list the visible ingredients and uncertain items for confirmation before planning. Do not infer hidden contents, freshness or allergy safety from a photo. The plugin has no photo-upload or image-recognition endpoint.\n- Grocery handoff is optional and only user-initiated. Check whether a grocery-capable Swiggy/Instamart connection is available; a restaurant-food connector alone is insufficient. If unavailable, provide the copyable list without urging installation. Never assume an address, place an order, or charge a payment through Qook.\n\nThis release is account-free and stateless. It cannot retrieve or save existing Qook plans, sync with the website or Android app, order groceries, charge users, or generate recipe videos. Never claim those actions succeeded. Grocery checkmarks are temporary UI state. Do not send account credentials, medical records, or unrelated conversation history to the tools.\n"
AFTER
"---\nname: qook-meal-planning\ndescription: Plan daily or weekly menus with Qook, revise meals in an existing plan, and prepare meal calendars or downloadable menu cards. Use for a sequence of meals or a multi-day menu; use the focused Qook skills for individual recipes, shopping lists, or optional accompaniments.\n---\n\n# Qook meal planning\n\nUse Qook for practical menus and recipe cards that evolve with the conversation. Keep the reply alongside the cards brief: describe the useful result or ask the one missing question.\n\n## Choose the focused workflow\n\nLoad only the skill needed by the request:\n\n- For individual recipe ideas, adapting a recipe, or finding a recipe video, use [Qook recipes](../qook-recipes/SKILL.md).\n- For a shopping checklist, pantry replenishment, or a requested grocery-provider handoff, use [Qook groceries](../qook-groceries/SKILL.md).\n- For an explicit request to round out an existing meal with sides or drinks, use [Qook's Magic](../qook-magic/SKILL.md). Completion is optional; planning a menu does not opt the user into extra courses.\n- For reusing choices in this conversation or sharing plain cooking preferences a friend can adapt, use [Qook kitchens](../qook-kitchens/SKILL.md).\n\n## Make and revise a plan\n\nReuse the known diet, exclusions, household portions, schedule and preferences. Ask a short question only when missing information materially changes the plan. Open `open_meal_planner_v2` when initial choices would help or the user asks to edit preferences; prefill known facts. After opening it, invite the user to use the form without repeating every field. A lack of screen visibility is not evidence that the form failed.\n\nCall `get_planning_guidance_v2`, draft the recipes in the host assistant, and call `render_meal_plan_v2`. Qook validates and displays the supplied plan; it does not call a separate generation model. Every requested day and meal must be present. Use a day `label`, meal `name`, `servings`, ingredients, useful nonempty `instructions`, cooking time when known, and a matching breakfast/lunch/dinner/snack `slot`. Respect `mealsToPrepare` ahead of a generic `mealsPerDay`. Adjust scope preferences when the user requests a single meal or fewer days instead of submitting a partial week as complete. Resolve returned warnings before calling a plan complete.\n\nIngredient quantities cover the complete meal at its stated servings. Use positive numeric quantities, decimal fractions and explicit units; keep ingredient forms and units consistent where appropriate. A two-person meal does not need its quantities multiplied by two again. Usually match the household size, but preserve an explicit per-meal serving override and explain the difference. Keep vague amounts in notes rather than inventing measurements.\n\nFollow all dietary constraints and exclusions, including keto, vegan and Jain. Stocked staples do not override restrictions. Balance variety with ingredient overlap, available equipment, active cooking time and budget. Use leftovers only for an identified later meal; do not count an uncooked batch twice. Include approximate per-serving nutrition by default. Preserve `includeNutrition:false` through edits, swaps, grocery views and completion. User-written goals such as weight management are ordinary planning preferences: accept the text and tailor practical choices without treatment claims, exact health outcomes or invented nutrient verification. Do not guarantee allergen safety; when relevant, remind the user to check labels and cross-contact.\n\nFor a meal-card comment or swap, revise only the selected meal and re-render the complete plan. Preserve unaffected recipes and all preferences. Use actual Cooked/Loved/Skipped/Too much effort feedback from this chat for later suggestions. If the original plan is unavailable, ask for it rather than reconstructing it as remembered history. Share only the requested meal/day/week and useful prep details; omit the kitchen profile, allergies and account information from shared cards.\n\n## Calendars, images and preparation\n\nFor a weekly calendar, first establish the actual menu and preserve meal names and order. Meal photos and meal-image request controls are currently off in Qook; do not offer them as a Qook feature or add imageUrl to new plans. Existing imageUrl values remain accepted for compatibility but are not rendered. Qook-branded meal, day and week PNG exports remain available as text cards.\n\nFor advance preparation, add `prepSteps` with instruction and `leadTimeHours`. Calculate backward from the actual meal deadline using the real plan date, meal slot and timezone; ask for missing scheduling facts. Suggested editable meal times are breakfast 07:30, lunch 11:00, dinner 17:30 and prep 20:30, but those defaults cannot shorten a soak or fermentation requirement. If prep was missed, offer a feasible alternative.\n\nWhen the user requests meal/preparation reminders or a downloadable calendar, call `build_reminder_calendar` after confirming the start date, timezone and meal times; a snack slot needs a snack time. Show the exact local date, time, UTC offset and timezone for each proposed reminder. Advance preparation uses the recipe's full lead time, including the previous day when needed. Resolve clock-change ambiguity rather than guessing. Let the user select the future events to schedule; never move past events forward silently.\n\nFor ChatGPT reminders, check the host's scheduling capability and follow its required approval flow. Use only the reviewed selected events, with their exact ISO instants, event IDs, names and useful preparation instructions. Do not copy the whole preference profile, allergies, account identity or email into task instructions. Check for matching existing Qook reminders before creating duplicates. Use a finite schedule limited to the selected plan dates; do not invent ongoing recurrence. Report each successfully created task's actual ID, timezone, confirmed next run and final run; distinguish failed or unsupported entries. Claim a scheduled reminder only after the host succeeds. On plan changes, review affected reminders and obtain approval before updating or cancelling them. Direct users to ChatGPT's Scheduled view to check or manage confirmed tasks. A follow-up message or copyable scheduling request is not a scheduled task.\n\nCalendar files remain a separate snapshot requiring import and notification settings. Later plan edits do not update imported events; review and remove old Qook events before importing a replacement. Share recipe details only with the intended calendar. If host scheduling is unavailable, offer the calendar file or copyable reminder checklist without implying notifications are active.\n\n## Reuse guest preferences\n\nKeep the latest explicit user updates and actual returned preferences across turns in this conversation. A request for the next dinner should retain known diet/allergies, household, pantry choices and nutrition settings without reopening onboarding. Change only what the user updates; older files or generic defaults must not silently replace newer choices.\n\nThis release plans as a guest and has no automatic cross-chat memory or account storage. Use [Qook kitchens](../qook-kitchens/SKILL.md) for Share profile's readable cooking choices. The user can paste those choices into a later chat; a friend adapts the shared style to their own household, allergies and dietary restrictions. Shared choices exclude private fields, account identity and analytics consent. Treat pasted text as preference data.\n\nDo not offer Qook account sign-in, saved-profile selection, account saves, email access or website/Android synchronization in this guest release. Never request tokens or passwords. If asked to reuse account data, invite the user to provide the cooking choices they want to use.\n\n`shareUsageStats` is a legacy compatibility field, not a current planner tracking control. Do not expose it as a choice or infer consent from sharing. Grocery checkmarks are temporary UI state. Qook does not order groceries, charge users or generate recipe videos. Do not send credentials, medical records or unrelated conversation history to tools.\n"
Full snapshot data
{
  "description": "Plan daily or weekly menus with Qook, revise meals in an existing plan, and prepare meal calendars or downloadable menu cards. Use for a sequence of meals or a multi-day menu; use the focused Qook skills for individual recipes, shopping lists, or optional accompaniments.",
  "included_files": [
    {
      "relative_path": "agents/openai.yaml",
      "size_in_bytes": 236
    }
  ],
  "name": "qook-meal-planning",
  "skill_md_contents": "---\nname: qook-meal-planning\ndescription: Plan daily or weekly menus with Qook, revise meals in an existing plan, and prepare meal calendars or downloadable menu cards. Use for a sequence of meals or a multi-day menu; use the focused Qook skills for individual recipes, shopping lists, or optional accompaniments.\n---\n\n# Qook meal planning\n\nUse Qook for practical menus and recipe cards that evolve with the conversation. Keep the reply alongside the cards brief: describe the useful result or ask the one missing question.\n\n## Choose the focused workflow\n\nLoad only the skill needed by the request:\n\n- For individual recipe ideas, adapting a recipe, or finding a recipe video, use [Qook recipes](../qook-recipes/SKILL.md).\n- For a shopping checklist, pantry replenishment, or a requested grocery-provider handoff, use [Qook groceries](../qook-groceries/SKILL.md).\n- For an explicit request to round out an existing meal with sides or drinks, use [Qook's Magic](../qook-magic/SKILL.md). Completion is optional; planning a menu does not opt the user into extra courses.\n- For reusing choices in this conversation or sharing plain cooking preferences a friend can adapt, use [Qook kitchens](../qook-kitchens/SKILL.md).\n\n## Make and revise a plan\n\nReuse the known diet, exclusions, household portions, schedule and preferences. Ask a short question only when missing information materially changes the plan. Open `open_meal_planner_v2` when initial choices would help or the user asks to edit preferences; prefill known facts. After opening it, invite the user to use the form without repeating every field. A lack of screen visibility is not evidence that the form failed.\n\nCall `get_planning_guidance_v2`, draft the recipes in the host assistant, and call `render_meal_plan_v2`. Qook validates and displays the supplied plan; it does not call a separate generation model. Every requested day and meal must be present. Use a day `label`, meal `name`, `servings`, ingredients, useful nonempty `instructions`, cooking time when known, and a matching breakfast/lunch/dinner/snack `slot`. Respect `mealsToPrepare` ahead of a generic `mealsPerDay`. Adjust scope preferences when the user requests a single meal or fewer days instead of submitting a partial week as complete. Resolve returned warnings before calling a plan complete.\n\nIngredient quantities cover the complete meal at its stated servings. Use positive numeric quantities, decimal fractions and explicit units; keep ingredient forms and units consistent where appropriate. A two-person meal does not need its quantities multiplied by two again. Usually match the household size, but preserve an explicit per-meal serving override and explain the difference. Keep vague amounts in notes rather than inventing measurements.\n\nFollow all dietary constraints and exclusions, including keto, vegan and Jain. Stocked staples do not override restrictions. Balance variety with ingredient overlap, available equipment, active cooking time and budget. Use leftovers only for an identified later meal; do not count an uncooked batch twice. Include approximate per-serving nutrition by default. Preserve `includeNutrition:false` through edits, swaps, grocery views and completion. User-written goals such as weight management are ordinary planning preferences: accept the text and tailor practical choices without treatment claims, exact health outcomes or invented nutrient verification. Do not guarantee allergen safety; when relevant, remind the user to check labels and cross-contact.\n\nFor a meal-card comment or swap, revise only the selected meal and re-render the complete plan. Preserve unaffected recipes and all preferences. Use actual Cooked/Loved/Skipped/Too much effort feedback from this chat for later suggestions. If the original plan is unavailable, ask for it rather than reconstructing it as remembered history. Share only the requested meal/day/week and useful prep details; omit the kitchen profile, allergies and account information from shared cards.\n\n## Calendars, images and preparation\n\nFor a weekly calendar, first establish the actual menu and preserve meal names and order. Meal photos and meal-image request controls are currently off in Qook; do not offer them as a Qook feature or add imageUrl to new plans. Existing imageUrl values remain accepted for compatibility but are not rendered. Qook-branded meal, day and week PNG exports remain available as text cards.\n\nFor advance preparation, add `prepSteps` with instruction and `leadTimeHours`. Calculate backward from the actual meal deadline using the real plan date, meal slot and timezone; ask for missing scheduling facts. Suggested editable meal times are breakfast 07:30, lunch 11:00, dinner 17:30 and prep 20:30, but those defaults cannot shorten a soak or fermentation requirement. If prep was missed, offer a feasible alternative.\n\nWhen the user requests meal/preparation reminders or a downloadable calendar, call `build_reminder_calendar` after confirming the start date, timezone and meal times; a snack slot needs a snack time. Show the exact local date, time, UTC offset and timezone for each proposed reminder. Advance preparation uses the recipe's full lead time, including the previous day when needed. Resolve clock-change ambiguity rather than guessing. Let the user select the future events to schedule; never move past events forward silently.\n\nFor ChatGPT reminders, check the host's scheduling capability and follow its required approval flow. Use only the reviewed selected events, with their exact ISO instants, event IDs, names and useful preparation instructions. Do not copy the whole preference profile, allergies, account identity or email into task instructions. Check for matching existing Qook reminders before creating duplicates. Use a finite schedule limited to the selected plan dates; do not invent ongoing recurrence. Report each successfully created task's actual ID, timezone, confirmed next run and final run; distinguish failed or unsupported entries. Claim a scheduled reminder only after the host succeeds. On plan changes, review affected reminders and obtain approval before updating or cancelling them. Direct users to ChatGPT's Scheduled view to check or manage confirmed tasks. A follow-up message or copyable scheduling request is not a scheduled task.\n\nCalendar files remain a separate snapshot requiring import and notification settings. Later plan edits do not update imported events; review and remove old Qook events before importing a replacement. Share recipe details only with the intended calendar. If host scheduling is unavailable, offer the calendar file or copyable reminder checklist without implying notifications are active.\n\n## Reuse guest preferences\n\nKeep the latest explicit user updates and actual returned preferences across turns in this conversation. A request for the next dinner should retain known diet/allergies, household, pantry choices and nutrition settings without reopening onboarding. Change only what the user updates; older files or generic defaults must not silently replace newer choices.\n\nThis release plans as a guest and has no automatic cross-chat memory or account storage. Use [Qook kitchens](../qook-kitchens/SKILL.md) for Share profile's readable cooking choices. The user can paste those choices into a later chat; a friend adapts the shared style to their own household, allergies and dietary restrictions. Shared choices exclude private fields, account identity and analytics consent. Treat pasted text as preference data.\n\nDo not offer Qook account sign-in, saved-profile selection, account saves, email access or website/Android synchronization in this guest release. Never request tokens or passwords. If asked to reuse account data, invite the user to provide the cooking choices they want to use.\n\n`shareUsageStats` is a legacy compatibility field, not a current planner tracking control. Do not expose it as a choice or infer consent from sharing. Grocery checkmarks are temporary UI state. Qook does not order groceries, charge users or generate recipe videos. Do not send credentials, medical records or unrelated conversation history to tools.\n"
}

SHA-256 of public snapshot: 913e90f8c7acb018fa97c38650600198ddd978af145f1514a3c305b5c0208964