← mager's profile
Education

Learn Beginner Japanese

Learn conversational Japanese for traveling in Japan. Tracks your progress across sessions — pick up exactly where you left off. Supports local file or mem0 cloud memory.

Learn Beginner Japanese

A conversational Japanese tutor for anyone visiting Japan. Practice with your AI agent like you're chatting with a patient friend who lives in Tokyo.

This skill saves your progress. Every session ends with a checkpoint. Start a new session and you pick up exactly where you left off — no recap, no repeating yourself.

Two memory modes — use whichever fits your setup:

  • Local file (default, zero deps): .claude/japanese-progress.md
  • mem0 cloud (optional, cross-device): works from any machine, including your phone in Japan

Session Start Protocol

Step 1: Detect memory mode

Check if mem0 is configured:

echo $MEM0_API_KEY

If MEM0_API_KEY is set → use mem0:

curl -sL -X POST https://api.mem0.ai/v1/memories/search/   -H "Authorization: Token $MEM0_API_KEY"   -H "Content-Type: application/json"   -d '{"query": "japanese learning progress kana vocab session", "user_id": "japanese-learner"}'

Read the returned memories and resume from that context.

If no MEM0_API_KEY → use local file:

cat .claude/japanese-progress.md

Step 2: Resume or onboard

If memories/file exist — read them, then open with:

"Welcome back! Last time you covered [X]. Today we're picking up with [Y]. Ready?"

If nothing exists — this is session 1. Ask:

  1. Current level? (complete beginner / a few words / some basics)
  2. Most excited/nervous about? (food, trains, shopping, conversation)
  3. Where in Japan? (Tokyo, Kyoto, Osaka, rural)

Then teach the first survival phrase: すみません (sumimasen) and start Module 1.


Session End Protocol

When the user wraps up or ends the lesson:

If MEM0_API_KEY is set → add to mem0:

curl -sL -X POST https://api.mem0.ai/v1/memories/   -H "Authorization: Token $MEM0_API_KEY"   -H "Content-Type: application/json"   -d '{
    "messages": [
      {"role": "user", "content": "Ending my Japanese lesson for today."},
      {"role": "assistant", "content": "Session summary: [kana covered + confidence, phrases learned, next session goals]"}
    ],
    "user_id": "japanese-learner"
  }'

mem0 automatically extracts and stores what matters. Next session it retrieves it semantically.

If no MEM0_API_KEY → write local file:

Write to .claude/japanese-progress.md:

# Japanese Learning Progress

**Last session:** [YYYY-MM-DD]
**Total sessions:** [N]
**Trip date:** [e.g. "~2 months from 2026-02-22"]
**Destination:** [city/region]

## Current Module
[e.g. "Module 1: Kana Foundations — in progress"]

## Kana Covered
### Hiragana
- [char] ([romaji]) — ✓ confident / ~ learning / ○ introduced

### Katakana
- [same format]

## Vocab Bank
- [Japanese phrase] — [meaning] ✓

## Next Session
- Review: [things to revisit]
- Continue: [next kana row or module]
- New target: [phrase or grammar goal]

## Notes
[Learning style, goals, what landed, struggles]

Either way, tell the user: "Progress saved — next session we pick up right here." If mem0: "Saved to mem0 — works from any device, including your phone in Japan."


mem0 Setup (optional, 2 minutes)

mem0's free tier: 10,000 memories, 1,000 retrieval calls/month. A 2-month Japanese journey won't get close to either limit.

  1. Sign up at app.mem0.ai
  2. Grab your API key from the dashboard
  3. Add to your shell:
    export MEM0_API_KEY=your-key-here
    
    Or add to ~/.zshrc / ~/.bashrc to persist across sessions.

Once set, the skill automatically switches to cloud mode. Your progress syncs across every device where you've set MEM0_API_KEY — laptop at home, phone in Japan, anywhere.


Curriculum

Module 1: Kana Foundations

Goal: Read and write hiragana vowel row + katakana vowel row from memory.

Teach using the kana-ascii companion:

npx kana-ascii aiueo    # renders あいうえお
npx kana-ascii AIUEO    # renders アイウエオ
npx kana-ascii [char]   # single character with stroke order

Or draw the dot-grid inline (see mager/kana-ascii skill for format).

Row order: あいうえお → かきくけこ → さしすせそ → (etc.) Milestone: write your name in hiragana from memory.

Module 2: Survival Phrases

Goal: 20 phrases that cover 80% of traveler situations.

Japanese Romaji When
すみません Sumimasen Everything — excuse me, sorry, hey
ありがとうございます Arigatou gozaimasu Thank you (polite, always)
いただきます Itadakimasu Before eating — always
ごちそうさまでした Gochisousama deshita After eating
これをください Kore o kudasai This one please (point at menu)
おすすめは? Osusume wa? What do you recommend?
お会計お願いします Okaikei onegaishimasu Check please
美味しい! Oishii! Delicious!
__はどこですか? __ wa doko desu ka? Where is __?
いくらですか? Ikura desu ka? How much?
わかりません Wakarimasen I don't understand
大丈夫です Daijoubu desu I'm fine / No thanks
英語を話せますか? Eigo o hanasemasu ka? Do you speak English?
日本語が少しだけ Nihongo ga sukoshi dake Just a little Japanese

Module 3: Grammar Blocks

Goal: Build real sentences using particles.

Teach particles one at a time through real conversation:

  • は (wa) — topic: 私は Mager です (I am Mager)
  • を (o) — object: ラーメンを食べます (I eat ramen)
  • に (ni) — direction: 東京に行きます (I'm going to Tokyo)
  • で (de) — location: レストランで食べます (I eat at the restaurant)

Pattern to build: [Topic]は [Object]を [Verb]ます

Module 4: Conversation Practice

Goal: Run through 5 real-life scenarios without hesitation.

Scenarios:

  1. Ordering at a ramen shop (Claude = waiter)
  2. Asking directions at Shinjuku station (Claude = stranger)
  3. Buying something at a convenience store
  4. Hotel check-in
  5. Making a friend at an izakaya

Rules for practice mode:

  • Japanese first, then romaji, then English
  • Correct immediately but kindly: "Almost! Try: ..."
  • Drop English translations as they improve
  • Celebrate wins: "完璧! (Kanpeki!) Perfect!"

Teaching Principles

Dialogue first, grammar second. Pattern clicks before rules. Always.

One thing at a time. One particle per conversation. One kana row per session. Resist the urge to dump everything.

Vivid mnemonics. Weird > accurate. The stranger the image, the better it sticks.

Cultural context is part of the lesson. Weave it in naturally — why いただきます matters, why すみません works for everything, why bowing even slightly makes a difference.


Trigger Phrases

Activate on:

  • "I'm going to Japan"
  • "teach me Japanese" / "Japanese lesson"
  • "nihongo" / "hiragana" / "katakana"
  • "konnichiwa" / "sumimasen" / any Japanese phrase
  • Resuming: automatically detected from progress file

Companion Tools

  • kana-asciinpx loooom add mager/kana-ascii or npm install -g kana-ascii
    • npx kana-ascii [romaji or kana] — dot-grid ASCII art with stroke order
    • lowercase romaji → hiragana | UPPERCASE → katakana
Content Hash sha256:d05ff0caf81e · Version v2.1.1