Daily Tutor

v1.0.4

Get new study items for any subject. Use when: user asks for a daily lesson or new learning content. Supports any data format (language vocab, math formulas,...

0· 104· 5 versions· 0 current· 0 all-time· Updated 20h ago· MIT-0

Install

openclaw skills install daily-tutor

Daily Tutor Skill

📖 For full user instructions, data setup guides, and Quizbuild MCP configurations, please read the Official README on GitHub.

This skill retrieves new learning items from the user's study list (data/data.json) that they have not learned yet. It works with any subject — the data structure is automatically detected.

When to Use

USE this skill when:

  • The user asks for their daily lesson.
  • The user wants to learn new vocabulary, formulas, concepts, or any study content.
  • The daily cron job asks for new items.

Data Format

Place your study data in data/data.json as a JSON array. Each item can have any fields you want — the script will auto-detect and display them all. There is no fixed schema; you define the fields that make sense for your subject.

For example formats, see references/EXAMPLES.md.

Optional Configuration

Edit data/config.json to customize behavior (all fields optional):

{
  "primary_key": "word",
  "num_items": 10,
  "subject_name": "Hiragana/Katakana N5"
}
FieldDefaultDescription
primary_keyFirst key of first itemField used to track progress
num_items10Number of items per session
subject_name(none)Display name for the subject

Commands

# Get new items (automatically prevents duplicates)
python3 ${OPENCLAW_SKILL_ROOT}/scripts/get_words.py

How to Handle Output

The output of get_words.py will be a raw list of items with all their fields. When you receive the output:

  1. Process the items exactly as instructed by the user's prompt or the automated Cron job orchestrating this skill.
  2. OPTIONAL: If you have access to the quizbuild tool, you can generate a short practice quiz based on the newly retrieved study items. When calling quizbuild__auto_create_exam, you follow this parameter structure:
{
  "title": "Quick Review Practice Exam",
  "questions": [
    {
      "content": "Question goes here?",
      "type": "multiple_choice",
      "answers": [
        {"content": "Answer 1", "correct": true},
        {"content": "Answer 2", "correct": false}
      ]
    }
  ]
}

If you do not have quizbuild, simply list out the practice items and act as a friendly tutor!

File Structure

FilePurpose
data/data.jsonStudy data (required)
data/config.jsonConfiguration (optional)
data/learned_items.jsonProgress tracking (auto-generated)
scripts/get_words.pyMain script
references/EXAMPLES.mdData formatting examples

Version tags

latestvk975rxsvjsm6dqppesvysgf9nn84fneq

Runtime requirements

📚 Clawdis
Binspython3