Workflow
When this skill triggers, follow these steps in order.
Step 1 — Capture Input Parameters
Ask the user for (or read from the prompt):
- Target language — the language to learn (e.g. Spanish, French, Japanese, Portuguese).
- Proficiency level — CEFR level: A1, A2, B1, B2, C1, or C2.
- Interests — one or more topics the learner cares about (e.g. football, cooking, travel, music, gaming).
- Feed length — how many posts to generate (default: 10; minimum: 8).
If any required field is missing, prompt:
"Please tell me: (1) the language you want to learn, (2) your CEFR level (A1–C2), (3) your interests, and (4) how many posts you'd like (default 10)."
Step 2 — Plan Vocabulary and Grammar Coverage
Before writing posts, internally plan:
- Select N vocabulary items appropriate to the stated CEFR level (N ≈ feed length × 1.5 so no two posts repeat the same word).
- Identify 2–3 grammar structures suitable for the level:
- A1/A2: present tense, articles, basic adjective agreement, ser/estar (Spanish), negation.
- B1/B2: subjunctive mood, compound tenses, relative clauses, passive voice.
- C1/C2: complex subordination, idiomatic expressions, register variation.
- Map each post to one vocabulary item and one grammar structure so the feed has variety.
Step 3 — Generate Each Post
For each of the N posts, produce the following block in order:
**@[handle]** [emoji]
[Target-language post text — 1–4 sentences on the interest topic]
> [English translation / gloss]
**Note:** [One grammar or vocabulary explanation — concise, ≤2 sentences]
---
Rules for each post:
- The post body must be entirely in the target language — no English in the post body.
- Vocabulary and sentence complexity must match the stated CEFR level.
- The topic must relate to the stated interest(s).
- The handle should be a plausible social-media username related to the interest (e.g.
@golazo_fc, @futbol_diario).
- The emoji should be thematically appropriate.
- The English gloss should be a natural translation, not word-for-word.
- The grammar/vocab note should highlight the most pedagogically useful feature of that post (new word, conjugation pattern, false cognate, idiomatic phrase, etc.).
Step 4 — Format the Complete Feed
Output the posts as a scrollable feed under a header:
# [Language] Feed — [Level] · [Interest(s)]
Follow all posts with a ## Rubric section that lists the quality criteria this artifact satisfies (see example).
Step 5 — Quality Check
Before finalising, verify:
If any check fails, revise before returning the output.
Example
See examples/input.md for a worked request (Spanish A2, football interest, 10 posts) and examples/output.md for the corresponding generated feed.
1---2name: doomersion-language-feed3description: Given a target language, CEFR proficiency level, and a list of personal interests, generate a scrollable social-media-style feed of short posts that teach vocabulary and grammar in context, each with an English gloss and one grammar or vocabulary note.4---56# Workflow78When this skill triggers, follow these steps in order.910## Step 1 — Capture Input Parameters1112Ask the user for (or read from the prompt):13141. **Target language** — the language to learn (e.g. Spanish, French, Japanese, Portuguese).152. **Proficiency level** — CEFR level: A1, A2, B1, B2, C1, or C2.163. **Interests** — one or more topics the learner cares about (e.g. football, cooking, travel, music, gaming).174. **Feed length** — how many posts to generate (default: 10; minimum: 8).1819If any required field is missing, prompt:20> "Please tell me: (1) the language you want to learn, (2) your CEFR level (A1–C2), (3) your interests, and (4) how many posts you'd like (default 10)."2122## Step 2 — Plan Vocabulary and Grammar Coverage2324Before writing posts, internally plan:2526- Select **N vocabulary items** appropriate to the stated CEFR level (N ≈ feed length × 1.5 so no two posts repeat the same word).27- Identify **2–3 grammar structures** suitable for the level:28 - A1/A2: present tense, articles, basic adjective agreement, ser/estar (Spanish), negation.29 - B1/B2: subjunctive mood, compound tenses, relative clauses, passive voice.30 - C1/C2: complex subordination, idiomatic expressions, register variation.31- Map each post to one vocabulary item and one grammar structure so the feed has variety.3233## Step 3 — Generate Each Post3435For each of the N posts, produce the following block in order:3637```38**@[handle]** [emoji]39[Target-language post text — 1–4 sentences on the interest topic]4041> [English translation / gloss]4243**Note:** [One grammar or vocabulary explanation — concise, ≤2 sentences]4445---46```4748Rules for each post:49- The post body must be **entirely in the target language** — no English in the post body.50- Vocabulary and sentence complexity must match the stated CEFR level.51- The topic must relate to the stated interest(s).52- The handle should be a plausible social-media username related to the interest (e.g. `@golazo_fc`, `@futbol_diario`).53- The emoji should be thematically appropriate.54- The English gloss should be a natural translation, not word-for-word.55- The grammar/vocab note should highlight the most pedagogically useful feature of that post (new word, conjugation pattern, false cognate, idiomatic phrase, etc.).5657## Step 4 — Format the Complete Feed5859Output the posts as a scrollable feed under a header:6061```62# [Language] Feed — [Level] · [Interest(s)]63```6465Follow all posts with a `## Rubric` section that lists the quality criteria this artifact satisfies (see example).6667## Step 5 — Quality Check6869Before finalising, verify:70- [ ] At least the requested number of posts are present (minimum 8).71- [ ] Every post has: target-language body, English gloss, one grammar/vocab note.72- [ ] No English appears in the post body.73- [ ] Vocabulary complexity matches the stated CEFR level.74- [ ] All posts relate to the stated interest(s).75- [ ] No vocabulary item is repeated across posts (same root word counts as a repeat).76- [ ] The `## Rubric` section is present.7778If any check fails, revise before returning the output.7980## Example8182See `examples/input.md` for a worked request (Spanish A2, football interest, 10 posts) and `examples/output.md` for the corresponding generated feed.