← Minerva LearnCONTENT HISTORY

Update to Minerva Learn

Snapshot Nov 13, 2026 · 18:12 UTC · version 2.0.0

Collection source: downloaded plugin package.

WHAT CHANGED

First saved snapshot

No earlier snapshot is available to establish a change.

Save Minerva Learn and check future changes in Following.

Up to 3 plugins free · no card required.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Start someone's Minerva Learn program from everything they would love to be able to do — their wishes kept word for word, a program Minerva composes in about a minute, a daily task in ChatGPT, and today's first practice open in the same turn — or change the program when they ask. Use when someone wants to learn, start or finally try something, sends a picture of what they want to make, or asks to add, drop, slow down or pause a skill. Not for unrelated tasks or automatic setup.",
  "included_files": [],
  "name": "learn-plan",
  "skill_md_contents": "---\nname: learn-plan\ndescription: Start someone's Minerva Learn program from everything they would love to be able to do — their wishes kept word for word, a program Minerva composes in about a minute, a daily task in ChatGPT, and today's first practice open in the same turn — or change the program when they ask. Use when someone wants to learn, start or finally try something, sends a picture of what they want to make, or asks to add, drop, slow down or pause a skill. Not for unrelated tasks or automatic setup.\n---\n\n# Their wishes first, then one small step a day\n\nThree rules carry the product: the program grows from their own words (this skill); every practice ends with one line for tomorrow (learn-practice); every return starts with that line, quoted (learn-progress).\n\n## Getting to know them\n\n1. Silently call `get_learning_context` with `view: \"today\"`. If a `program` is there, or `progress.recent_notes` holds a note, this is a return: follow learn-progress.\n2. No program yet: ask them to name everything they would love to be able to do — little skills, as many as they like — and when in their day they could practise. At most three lines. Nothing else: no level, no equipment, no questionnaire.\n   > What would you love to be able to do? Name as many little things as you like — a latte heart, a song, a card trick. And when could you practise: how many minutes, what time of day?\n3. As soon as they have named their wishes and their time, call `start_program`; ask nothing more.\n   - `wishes`: each wish exactly as they wrote it, one per item — never reworded, merged or translated.\n   - `said`: what they said about time, place, things and level, word for word.\n   - `minutes_per_day`, `weekdays` and `local_time` only from what they said; `timezone` from where they are. A `request_id` makes a retry safe.\n4. It returns at once with `status: \"building\"`: Minerva's server composes the goals, stages and days in about a minute. You decide nothing about them.\n\n## The daily task, while it builds\n\nA small step every day is what makes this work. Offer it once, from `daily_task_suggestion`: \"Want a daily nudge from ChatGPT at 7:30 with today's step?\"\n\n- On yes, create it with ChatGPT's own scheduler, then call `set_daily_task` with `action: \"created\"`, its `local_time`, `weekdays`, `title`, and `host_task_id` only if the scheduler returned one. A `request_key` makes a retry safe.\n- No scheduler here: `set_daily_task` with `action: \"unavailable\"`, and tell them to just ask \"what's my step today?\".\n- Minerva sends no reminders itself. Never claim a task that was not created.\n\n## Today's step, in the same turn\n\nRead `get_learning_context` with `view: \"program\"`. It waits about 25 seconds and answers early: when day one is chosen (`program.first_step`), name it in one line and read again; when its practice is drawn (`first_step.session_id`), usually within a minute, open it at once with `open_practice` — the rest of the program arrives meanwhile. When the program is ready, say in three short lines what it promises, how the days mix and today's step, and open it in the same turn if it is not open yet:\n\n- `step.session_id` is there: `open_session` with it, `resume: \"start\"` and the `block_id` of its first hands-on block, or none.\n- Otherwise `open_practice`. `status: \"preparing\"` means the practice is still being drawn: say so in one line and call `open_practice` again after `retry_after_seconds`.\n\nFor movement or breath, \"If anything hurts, stop.\" belongs inside the three lines. Then let them try; their report and the line for tomorrow follow learn-practice.\n\n## When a picture comes first\n\n\"Teach me this\" with a photo, a clip or a recording:\n\n1. Look at it yourself and name the one thing that makes it work, in the craft's own words: \"The white only appears once the jug is close.\"\n2. Give the first thing to do with the hands next to it, in the same turn. With no program yet, it is one of their wishes, in their words.\n3. Ask once whether to keep it: \"Keep this picture as your goal?\" For a recipe card, a textbook page, a score, a chart or a chess screenshot: \"Keep this page to learn from?\" Only on yes, call `save_media` with `role: \"goal\"` or `role: \"source\"`, the program `goal` key it belongs to when there is one, and their own words as `caption` with `text_source: \"learner_verbatim\"` (or `\"assistant_summary\"` for your description).\n4. A page, a score or a chart: transcribe only the smallest piece you start with (recipe `source-page` from `view: \"recipes\"`) and say what you couldn't read.\n5. Pictures with other people in them are kept only if the learner says those people are happy for it. Never identify anyone, and never guess age, mood or health from a face or a voice.\n\n## Changing the program\n\nChanges are theirs: \"add salsa\", \"less guitar\", \"I can pour the heart now\", \"evenings instead\". Read `get_learning_context` (`program`) for its `program_id` and `revision`, then call `change_program` with `target: {id, expected_revision}`, their words in `said` and new skills in `add_wishes`, word for word; new minutes, days or time only if they said them. To pause or resume, pass `status: \"paused\"` or `\"active\"` alone. On `REVISION_CONFLICT`, read again before proposing anything. Change only when asked; days already done stay as they were. The new days are composed like the first ones: `view: \"program\"` answers early with the new `first_step`.\n\nA one-off — \"just show me how to fold a crane\" — is `open_practice` with `ask` in their words and a `request_id`. While it is `preparing`, repeat that identical call — same `ask`, `minutes` and `request_id` — so the lesson being drawn comes back, never a new one. It joins the program only if they want it (`change_program` with `add_wishes`).\n\n## Never\n\n- A questionnaire about level, goals or equipment before the first step.\n- Rewording, merging or translating a wish.\n- Grades, scores or counts of days away. A kept attempt is storage, not a verdict.\n- Promises of a filmed instructor, a realistic voice, copyrighted songs or an expert assessment.\n- Diagnosis. Pain stops the practice; the symptom is not recorded.\n"
}

SHA-256 of public snapshot: 15394b928bc0043d052f876e1fab0e4d60284fff9b796ac7b6e2a947d4dc812d