From fluent
Adaptive language-learning session interleaving writing, speaking, vocabulary, and reading exercises based on learner level and weak patterns. Triggered by /fluent-learn.
How this skill is triggered — by the user, by Claude, or both
Slash command
/fluent:fluent-learnThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
The flagship command. Interleaves skills, adapts difficulty per answer, and covers the whole evidence-based loop: active recall → immediate feedback → spaced repetition → tracking. Typically runs 15-20 min, mixing 2-3 patterns to force discrimination.
The flagship command. Interleaves skills, adapts difficulty per answer, and covers the whole evidence-based loop: active recall → immediate feedback → spaced repetition → tracking. Typically runs 15-20 min, mixing 2-3 patterns to force discrimination.
Trigger this skill only when the learner types /fluent-learn. The skill is gated with disable-model-invocation: true — an ambiguous auto-trigger would launch a 20-min interactive session and mutate 6 JSON databases.
Skip this skill the very first time a learner runs the system — route to /fluent-setup instead.
python3 "${CLAUDE_PLUGIN_ROOT:-${CLAUDE_PROJECT_DIR:-.}}/.claude/hooks/read-db.py"
Need all 6 DBs. If any missing, direct the learner to /fluent-setup and stop.
learner-profile.current_streak_dayscomputed.due_reviews_countmistakes-db.error_patterns where mastery_level <= 2 (descending by frequency)progress-db.weekly_summarymastery-db.skills_mastery.{skill}.last_practiced# {greeting in target language}, {name}! 👋
**Today's Status:**
- 🔥 Streak: {X} {day/days}
- 📚 Review items due: {Y}
- 🎯 Focus area: {weakest skill or top weak pattern}
- ⭐ Level: {current} → {target} ({progress}%)
**What would you like to practice today?**
1. 📝 Writing (emails, letters, forms)
2. 🗣️ Speaking (typed conversation)
3. 📖 Vocabulary (flashcard drills)
4. 👀 Reading (comprehension)
5. 🔄 Spaced Review (today's due items)
6. 🎲 Surprise me! (adaptive mix)
**Type a number or skill name:**
fluent-writing, fluent-speaking, fluent-vocab, fluent-reading, fluent-review). Those skills cover everything needed; this skill's job here is just to dispatch.Plan a 20-min session:
Run one exercise at a time with immediate feedback via fluent-feedback-formatter.
Use fluent-session-analyzer to choose which patterns to target.
After every 3-4 exercises, check rolling accuracy:
Formula reference:
if mastery_level <= 1:
difficulty = "easy"
elif mastery_level == 2:
difficulty = "medium" if recent_accuracy > 0.60 else "easy"
elif mastery_level == 3:
difficulty = "medium" if recent_accuracy > 0.70 else "medium"
elif mastery_level >= 4:
difficulty = "hard" if recent_accuracy > 0.80 else "medium"
Writing: sentence completion, translation, error correction, full email, reordering.
Speaking: personal Qs, picture description, role-play, phonetic typing.
Vocabulary: recognition, production, cloze, associations, synonym matching.
Reading: short text + comprehension, cloze paragraph, true/false, summarization.
Use fluent-feedback-formatter template. Score 0-10 + severity tag. Stage for end-of-session update.
Also prompt the learner to retype the correct form after a critical mistake — motor memory helps:
Now type the correct version yourself: "{correct_sentence}"
## 🎉 Session Complete!
**Today's Stats:**
- ⏱️ Duration: {X} min
- ✅ Exercises: {Y}
- 📊 Accuracy: {Z}%
- 📈 Improvement: +{N}% from start
**Breakthroughs:** ✨
- {what mastered or improved}
**Next Time Focus:**
- {what to practice next}
**Streak:** 🔥 {X} {day/days}! {motivational line}
{goodbye in target language}! 👏
Then use the fluent-db-updater skill:
command_used: "/fluent-learn"skills_practiced: [all skills touched]skill_scores per skillerrors[], new_vocabulary[], review_results[]breakthroughs[], focus_next_session[], session_notesSave exchange to /results/fluent-learn-session-{NNN}.md.
Goedemorgen, Mohammad! 👋
Today's Status:
- 🔥 Streak: 6 days
- 📚 Review items due: 6
- 🎯 Focus area: formal_informal confusion (5 total occurrences)
- ⭐ Level: A1 → A2 (38%)
What would you like to practice today?
- 📝 Writing (emails, letters, forms)
- 🗣️ Speaking (typed conversation)
- 📖 Vocabulary (flashcard drills)
- 👀 Reading (comprehension)
- 🔄 Spaced Review (today's due items)
- 🎲 Surprise me! (adaptive mix)
Type a number or skill name:
After 4 exercises, accuracy is 55% (target zone). Hold difficulty; introduce pattern #2:
Nice — you're right in the sweet spot. Let's switch patterns now.
Exercise 5:
omdatword orderRewrite this correctly: "omdat ik ben te laat"
Type your answer:
fluent-sm2-calculator, fluent-feedback-formatter, fluent-db-updater, fluent-session-analyzer) — don't reimplement.omdat word order that tripped you up last time — nice."npx claudepluginhub m98/fluent --plugin fluentRuns an interactive vocabulary drill with flashcard prompts, spaced repetition, and per-answer feedback. Triggered only by /fluent-vocab.
Facilitates structured speaking practice for language learners, using ACTFL OPI and CEFR-aligned techniques to develop fluency, accuracy, and pragmatic competence through guided conversation.
Mines projects and conversations into a searchable memory palace. Activates on queries about MemPalace, memory palace, mining, searching, palace setup, wings, rooms, drawers, or recalling past work.