Learn while your agent works.
Named for Ekalavya, who mastered archery practicing before a silent statue of his guru. Here, the statue talks back.
Eklavya is a Claude Code plugin that turns agent generation time into learning time. While Claude Code implements your task, Eklavya teaches you the concepts behind that exact work — adaptive Socratic questions grounded in the diff it just wrote, mastery tracked in a local knowledge graph, and optionally a commit gate until you can show you understood it.
Coding agents create a comprehension gap: you ship code you didn't write and couldn't debug. The moment that code is being generated is the highest-leverage teaching moment there is — the concepts are concrete, the code is on your screen, and your hands are free. So Eklavya asks you about it, once per task, never the same question twice, and harder each time you get it right.
Everything is local. No accounts, no sync, no telemetry.
Needs Node 22+. Nothing else, on macOS, Linux or Windows.
npm install -g eklavya && eklavya installThat gives you the plugin and the eklavya command. Then run /eklavya:setup
inside Claude Code to choose a mode.
You can also install from the plugin marketplace inside Claude Code, with one caveat about what a slash command is allowed to do — both routes and the caveat are in Installing.
You ask for something. Claude logs what the work touches, and that logging call triggers a checkpoint: one multiple-choice question about the concept it just logged, asked while the code is still on your screen. You answer in a couple of seconds and Claude carries straight on. When the task finishes, at most one more question — never a pile.
Tier 1 asks what a thing is. Tier 5 asks when it is the wrong approach. You climb as you get things right, which is how "never ask the same question twice" survives contact with a finite concept graph. Difficulty is earned per project, so a codebase you have just met starts easy however senior you are.
| Installing | Both routes, prerequisites, uninstalling |
| The four dials | mode, focus, cadence, difficulty — what each one changes |
| Levels and tiers | How difficulty is earned, and what each tier asks |
| Command reference | Every /eklavya:* command — or just ask in plain English |
| Configuration | Every key, its default, and which file wins |
| The commit gate | Enforced mode, and the git hook that works outside Claude Code |
| Your data | Where the database lives and what never leaves the machine |
| Troubleshooting | When the loop is silent, and how to check why |
For tutoring that runs during generation in a second pane — one session
teaching while the other builds, sharing one database — see
docs/parallel-tutoring.md.
Development setup, the manual test scripts and the release process are in
CONTRIBUTING.md.
MIT