Polyglot

Polyglot for Codex + Claude Code

Learn a language in the pauses between agent turns.

Instead of staring at terminal churn, collect one useful word or phrase every few completed turns. No extra tab. No streak pressure. Just something small that adds up.

5completed turns
1useful phrase
74language directions
0model calls

Actual Claude Code 2.1.218 session · Opus 4.8

A real edit, real tests, and a real Polyglot Stop hook.

An 11-second cut accelerates the work, then zooms and holds the phrase for four seconds.

Polyglot · Claude CodeActual phrase at the Stop boundary
Accessible transcript

In the disposable fix-friday-deploys-before-standup Rust project, an authenticated Claude Code 2.1.218 session with Opus 4.8 finds a deployment-guard bug, changes requires_rollback_plan, adds a Friday regression test, and runs the full Cargo suite with all three tests passing. The actual Polyglot Stop hook then displays Polyglot starter · hello → hallo. The source capture is played at 1.25× with idle waits capped; the hero edit further compresses the work and gives the real phrase a four-second highlighted hold. No tool call, edit, test result, response, or phrase was synthesized.

When you want deliberate practice

Recall it. Grade it. See it again when it matters.

The terminal review flow is optional and secondary: it turns ambient exposure into locally scheduled learning.

polyglot / reviewen-de · reverse
$ polyglot review --pair en-de --direction reverse

Prompt: sehen
Your answer: to see
Answer: to see
Grade [again/hard/good/easy]: good
Local due state
Next review: tomorrow
Progress ledger
seen 1 · good 1 · due 0

Why “tomorrow”? The CLI shown above displays the answer and accepts the grade. The due-tomorrow line is an explanation of the shipped deterministic new-card good interval—one day—not invented CLI output.

Privacy / token boundary

A narrow learning signal, kept local.

Polyglot isolates practice state from the ambient companion. That boundary is deliberate: a phrase can be useful without becoming evidence about the learner.

01 / typed input

Not retained

Typed answers are not persisted. Explicit grades—not answer text—schedule local SQLite state.

02 / ambient

Ungraded, then due-only

A fresh pair can show one labelled starter exposure without creating learner state. After explicit review begins, ambient mode reads due state only and never mutates mastery, grades, or intervals.

03 / isolation

No injection

No model or network call; no learner history, prompt, or transcript is injected into an agent turn.

04 / audit

Small enough to inspect

The largest audited ambient line is 85 characters, about 43 tokens.

The catalog behind the moment

Broad coverage. Conservative learning facts.

The 19,281-entry catalog, interactive cabinet, typed recall, and spaced repetition are there when you want deliberate study. They support the ambient moment; they are not the point of it.

520

German learning-metadata records. German already existed; this is not marketed as a newly added language.

119

Conservative exact-lemma article/gender facts.

79

Exact-text clozes. Automated and not native-speaker reviewed.

New reverse directions: PL→EN 264, UK→EN 265, SV→EN 261, EL→EN 256. Each is mechanically derived from existing shipped source records, with no new translation or transliteration claims. Polyglot does not claim an official Duolingo top 20.

Where it meets you

Inside the coding session. Not in another tab.

Codex Desktop, Codex CLI, and Claude Code share the central Stop-hook experience. Pi and Hermes support extends the same idea to more agent workflows.

Codex Desktop + CLI

One plugin

Packaged skill and fail-soft Stop hook with a compact systemMessage.

Claude Code

Same cadence

The validated plugin declares the same optional Stop adapter.

Pi

Extended

The canonical skill and native end-of-turn extension are included.

Hermes

Extended

The namespaced skill, hook, and command load together.

Make the waiting useful

Let every few turns teach you one thing.