← Vocabloot Deck KitCONTENT HISTORY

Update to Vocabloot Deck Kit

Snapshot Sep 30, 2026 · 23:16 UTC · version 0.1.1

Collection source: not recorded for this historical snapshot.

WHAT CHANGED · RULE-BASED ANALYSIS

First saved snapshot

No earlier snapshot is available to establish a change.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Write every app-ready field of a Vocabloot deck: article, gender, plural, IPA, romanization, translation, two example sentences with translations, tappable tokens with lemma, part of speech, grammar codes and meanings, and a sticker picture idea per card; the script validates each card and writes cards.json, the localization file and a review report. Use after /deck-create, when a deck folder has words.json but no cards.json, or when the creator says /deck-text, generate the cards, or write the sentences.",
  "included_files": [
    {
      "relative_path": "agents/openai.yaml",
      "size_in_bytes": 174
    }
  ],
  "name": "deck-text",
  "skill_md_contents": "---\nname: deck-text\ndescription: Write every app-ready field of a Vocabloot deck: article, gender, plural, IPA, romanization, translation, two example sentences with translations, tappable tokens with lemma, part of speech, grammar codes and meanings, and a sticker picture idea per card; the script validates each card and writes cards.json, the localization file and a review report. Use after /deck-create, when a deck folder has words.json but no cards.json, or when the creator says /deck-text, generate the cards, or write the sentences.\nlicense: MIT\ncompatibility: Requires Node 22 and the kit's scripts (npm install in the kit folder); network access to vocabloot.com for the language registry, with an offline snapshot fallback.\n---\n\n# /deck-text\n\n**Show your work.** This is step 2 of 6. Say so before the first command. While you answer the requests, do them in batches of five and post one line after each batch (\"Cards 1 to 5 of 20 written: Hallo, Guten Morgen, Guten Tag, Guten Abend, Gute Nacht\"), so the creator sees the deck grow. After the rerun, post the result line (N cards, N flagged) and then three full cards exactly as they will read in the app: headword, pronunciation, meaning, both sentences with their translations. Never work in silence for more than one command.\n\nCommands below run from the kit's root, the folder two levels above this file (`<kit>/skills/<this skill>/SKILL.md`); from anywhere else, prefix `scripts/` with that path. If a script answers that dependencies are not installed, run the `npm install` it prints.\n\nRun on the deck folder the creator made with `/deck-create`:\n\n```bash\nnode scripts/text.mjs <deck-folder>\n```\n\nWithout an API key the script leaves one request per word in `work/text/<word>.request.md` and lists them. **You write the cards.** For each request: read it in full (the instructions are the card prompt filled in for this deck's languages and level; the input is the headword; the JSON schema is at the end), then write the card as one JSON object to the answer file it names. Every field to the letter: IPA between slashes, article, gender and plural for nouns where the language has them, two short natural sentences a learner at this level would say, and for every word of every sentence one token with its exact visible text, lemma, part of speech, grammar codes from the list, and one to three meanings in the creator's language. Choose the sticker mode with care: a formula like \"good morning\" is symbolic (a rising sun), not text-first. Then run the same command again: it validates every answer against the schema (a wrong field is named), turns the answers into `cards.json` (learning-language content), `localizations/<known>.json` (translations and token meanings), `cards-cache.json` (so reruns are free) and `review/report.md`. Answers you already gave are cached; only the ones it names are still open.\n\nWith `OPENAI_API_KEY` set, the script asks OpenAI instead and `--verify` adds a second grading pass per card; `--agent` keeps the writing on you even with a key.\n\nThen open `review/report.md` and walk the creator through **\"Needs a look\"** first: every flagged card, with the flag in plain words (an uncovered word, a low-confidence field, a safety concern, a verify problem). For each flagged card the creator can:\n\n- accept it as is (say so; the flag stays and the packer will refuse until it is resolved, so this is only for reading),\n- regenerate it: `node scripts/text.mjs <deck-folder> --refresh \"<word>\"` (this drops the cached answer; delete `work/text/<word>.json` too, then write a better answer to the new request),\n- replace the word in `words.json` and rerun.\n\nNever edit `cards.json` or the localization by hand to fix a flag; the fix goes through the word list or a refresh. After the flags, show the creator two or three cards in full (headword, meaning, both sentences with their translations) so they see what a card is, and ask **\"Does this read right?\"** Then say the next step is `/deck-stickers`.\n\nRules: no key is needed and none is ever read but the creator's own; the deck's prompt is `prompts/card.md` (a `--prompt-file` override exists for people who maintain their own). Never write `cards.json` or the localization directly; your answers go through the script so every card is validated the same way.\n"
}

SHA-256 of public snapshot: da7ce2667b7d5dae77021cb04816cdb362d4253f9282c128847ba8423a79dcf1