Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Build Review Vocabulary

ASecurity

Build and review vocabulary from books, podcasts, and daily encounters. Use when the user wants to READ a book, shares a new word, asks about a word while reading a book, requests a vocabulary quiz, asks about word progress, or when a cron/heartbeat triggers a scheduled quiz. Ha…

19 stars
0 votes
0 copies
1 views
Added 9/19/2026
ai-agentsrustgoapidevops

Works with

cliapi

Security Analysis

A100/100

Scanned 9/19/2026

Install to Claude Code

$npx -y skills add rondoflow/rondoflow --skill build-review-vocabulary --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Build Review Vocabulary?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Build Review Vocabulary
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/rondoflow-build-review-vocabulary/badge)](https://www.skillsdirectory.com/skills/rondoflow-build-review-vocabulary)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: build-review-vocabulary
description: "Build and review vocabulary from books, podcasts, and daily encounters. Use when the user wants to READ a book, shares a new word, asks about a word while reading a book, requests a vocabulary quiz, asks about word progress, or when a cron/heartbeat triggers a scheduled quiz. Ha…"
category: "DevOps & Infra"
author: community
version: "1.1.4"
icon: server
---

# Vocabulary Builder

This skill reads and writes the following files (paths relative to workspace):
- **Vocabulary tracker:** `memory/vocabulary.md` — all word data lives here
- **Audio clips directory:** `docs/tts-fr/` — read-only; user places pronunciation audio files here

Ensure these paths exist or create them before first use.

## Reading Workflow

When the user wants to read/practice reading a book:
1. Ask what book they're reading
2. Check the vocabulary tracker for words from that book — read the END of the Active Words section (use `tail` or read the last entries) to find the actual last word. Note: `memory_search` may return partial/ranked results, so also verify by reading the file directly when checking the latest entry.
3. Tell them the last word added + page number so they know where to continue
4. Ask if they want to: practice pending words, or keep reading and add new ones

## Adding New Words

When the user gives a new word:

1. Give **pronunciation** in **American English IPA** first (for example: `/ˈtrɑːli/`)
2. Give **meaning** — clear, simple
3. Give **synonyms** — similar words they might know
4. **Add to tracker immediately** unless the user says not to add it
5. **Show the word card** after adding

Always prefer **IPA** over ad-hoc respelling in both the explanation and the word card. If a plain-English pronunciation hint is helpful, include it only **after** the IPA, not instead of it.

If the user says they are focusing on **pronunciation**, ask which words they confuse (for example: seem / same / sim). In pronunciation-focused mode:
- Treat the set as a **single comparison entry** if the user's goal is sound comparison, not three separate vocabulary items
- Show **each word's pronunciation separately** in the reply and in the word card
- Record the entry with a combined title like `### seem / same / sim`
- Use the **Meaning** field to explain **how to pronounce the words and what sound difference to notice**, not the usual vocabulary meaning
- Keep the pronunciation explanation short, practical, and contrast-focused
- If the user does not provide a sentence, generate **very very simple context lines** for each word
- Use the shared book/page/context the user gives

Add to the `## Active Words` section, at the END (before `---` separator for Long-Term Review).

### Word Entry Format

```markdown
### [word]
- **Type:** noun/verb/adj/adv
- **Learned:** YYYY-MM-DD HH:MM TZ
- **Book:** [source name]
- **Page:** [number]
- **Pronunciation:** /IPA/
- **Meaning:** [explanation]
- **Synonyms:** [similar words]
- **Context:** "[sentence from source]"
- **Practice History:**
  - YYYY-MM-DD HH:MM TZ: Step N ✓/✗ (notes)
```

### Pronunciation Comparison Entry Format

```markdown
### [word 1] / [word 2] / [word 3]
- **Type:** pronunciation comparison set
- **Learned:** YYYY-MM-DD HH:MM TZ
- **Book:** [source name]
- **Page:** [number]
- **Pronunciation:**
  - **[word 1]** — /IPA/
  - **[word 2]** — /IPA/
  - **[word 3]** — /IPA/
- **Meaning:** Short pronunciation guidance explaining the sound difference (for example: `[word 1]` has /iː/, `[word 2]` has /eɪ/, `[word 3]` has /ɪ/)
- **Synonyms:** pronunciation set, minimal comparison set
- **Context:**
  - **[word 1]:** "[very simple sentence]"
  - **[word 2]:** "[very simple sentence]"
  - **[word 3]:** "[very simple sentence]"
- **Practice History:**
```

### French Words

- **Context:** French sentence only
- **English Translation:** Separate field with English translation
- Do NOT mix French and English in the same field
- User places audio clips in `docs/tts-fr/` → add **Audio** field with the file path

## 3-Step Learning Process

Run all 3 steps in one conversation flow (not spread across hours):

- **Step 1:** Show the plain word + review count (e.g. "reviewed 0 times" or "reviewed 3 times") → ask "Do you know the pronunciation?" → user types word to confirm
- **Step 2:** Ask "What does it mean?" → check if correct/close enough
- **Step 3:** Ask user to write a sentence using the word

Trust-based pronunciation — no voice/ASR check. User types word to confirm.

### Pronunciation-Focused Practice

If the user wants pronunciation practice instead of meaning-first vocabulary study:
- Ask which words they confuse
- Show the pronunciation for **each word** clearly, using **IPA first**
- Highlight the key sound contrast briefly
- Explain **how to say the sounds** (mouth shape, long/short vowel, tongue or lip position when useful) instead of focusing on dictionary meaning
- Record the set as one pronunciation comparison entry when that is more useful than separate entries
- Use **very simple example sentences** in the Context field, one short line per word when possible
- Do not force the normal meaning-first 3-step flow for a pure pronunciation comparison request

## Spaced Repetition Schedule

After completing all 3 steps, review at:
- Next day → 3 days → 1 week → 2 weeks → 1 month → 3 months
- After 3-month review: word is **mastered**

### Word Progression

Words move through three sections in the tracker:
1. **Active Words** — currently learning
2. **Long-Term Review Words** — completed all steps, in spaced review
3. **Mastered Words** — passed all reviews through 3 months

## Quiz Rules

- **One word per quiz** — no rapid-fire
- **No spam:** If no reply to previous quiz today → don't send new one
- **Reset next day:** New day = can send quiz even if yesterday's unanswered
- **Sleep hours:** No messages 11 PM – 7 AM (user's timezone)
- **Priority:** due for review > newer words (incomplete steps) > refresher

### Random Word Selection

1. Count each word's total practice history entries (all steps and reviews combined)
2. Sort all words by review count ascending (least reviewed first)
3. Take the group with the minimum review count
4. Within that group, randomize: count words (N), use `(current_timestamp_ms % N) + 1` to pick position
5. **Never pick the same word twice in a row.** Check Quiz State for the last quizzed word and skip it.

**Always show review count** when quizzing: e.g. "(reviewed 0 times)" or "(reviewed 3 times)".

### On-Demand Quizzes

User can request specific quizzes anytime — these override normal priority and spam rules:

- "Quiz me" → random word
- "Quiz me on [word]" → specific word
- "Quiz me on words from [book]" → random from that book
- "Quiz me on words from this week" → last 7 days
- "Quiz me on [book] page [N] to [M]" → page range
- "Give me 3 quizzes" → run 3 words in a row

On-demand refresher: If no words are due/pending, pick random word from all learned words. Still record quiz date.

## Quiz State Tracking

Keep a `## Quiz State` section at the top of the tracker file:

```markdown
## Quiz State
- **Pending quiz:** [word] ([review type], [step] sent)
- **Last quiz sent:** YYYY-MM-DD HH:MM TZ
```

Update after each quiz interaction.

## Cron Setup

When the user asks to set up a scheduled vocabulary quiz:

1. **Ask for:** frequency (default: every 1h), delivery channel + target
2. **Job name:** `vocabulary-quiz-{agentName}` (e.g. `vocabulary-quiz-english`)
3. **Create a cron job** with these settings:
   - Session: isolated
   - Timeout: 120 seconds
   - Message: instruct the agent to use the `vocabulary-builder` skill to run a quiz
4. **Quiz constraints** (include in the cron message):
   - Check Quiz State — skip if pending quiz unanswered today
   - Respect sleep hours: no messages 11PM–7AM (user's timezone)

## References

- Video: [Why I Stopped Using Flashcards and Started Using AI](https://youtu.be/wjWrVpZZXSg)

Attribution

rondoflowrondoflow
View sourceMore from rondoflow →
SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1066601 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

693161 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3351 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

691 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →