By elishahodes
Stay engaged while Claude Code works — contextual quiz questions about the code being written
Stay engaged while Claude Code works. in-the-loop is a Claude Code plugin that presents contextual quiz questions about the code being written — both when Claude stops and while it's actively working.
When an AI assistant is writing code for you, it's easy to zone out. But you still own that code — you'll debug it, maintain it, and extend it. in-the-loop keeps you thinking about what's happening by asking short, relevant quiz questions tied to the actual work being done.
in-the-loop installs two Claude Code hooks:
Questions are generated by Claude Haiku using context from the current session. If generation times out (15s for Stop, 12s for PostToolUse), a relevant fallback question is shown instead.
Questions appear as system messages in the Claude Code UI — they don't block or interrupt the workflow.
From a Claude Code session:
/plugin install from /path/to/in-the-loop
Or once published to a marketplace:
/plugin install in-the-loop
Use the built-in skill to view or change settings:
/in-the-loop:config
/in-the-loop:config --frequency often
/in-the-loop:config --difficulty advanced
Controls how often questions appear. The intervals differ between Stop and PostToolUse since tool uses are much more frequent:
| Setting | On Stop | On Tool Use |
|---|---|---|
every | every stop | every 5th tool use |
often | every 2nd | every 8th |
sometimes (default) | every 3rd | every 12th |
rarely | every 5th | every 20th |
After Claude runs git checkout -b feature/auth:
┌───────────────────────────────────────────────┐
│ 🧠 In The Loop │
├───────────────────────────────────────────────┤
│ │
│ Why create a feature branch instead of │
│ committing directly to main? │
│ │
│ A) Main doesn't support new files │
│ B) To isolate changes and enable code │
│ review before merging ✓ │
│ C) Git requires branches for commits │
│ D) Feature branches are faster │
│ │
│ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │
│ Branches isolate work so it can be │
│ reviewed and tested independently. │
└───────────────────────────────────────────────┘
.claude-plugin/
plugin.json Plugin manifest
hooks/
hooks.json Hook definitions (Stop + PostToolUse)
skills/
config/
SKILL.md /in-the-loop:config command
src/
types.ts TypeScript interfaces
hooks/
on-stop.ts Stop hook handler
on-tool-use.ts PostToolUse hook handler
core/
frequency-controller.ts When to show questions
question-generator.ts AI question generation via Haiku
question-formatter.ts Terminal box-drawing UI
state-manager.ts Config and session state persistence
transcript-reader.ts Claude Code transcript parsing
prompts/
question-system-prompt.ts System prompts by difficulty/mode
tests/
frequency-controller.test.ts
question-formatter.test.ts
question-generator.test.ts
transcript-reader.test.ts
State is stored in ~/.in-the-loop/ (config + per-session counters).
npm install
npm run build
npm test
MIT
Executes bash commands
Hook triggers when Bash tool is used
Modifies files
Hook triggers on file write and edit operations
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub elishahodes/in-the-loopIn-context coding tutor for Claude Code. Learn from your real project with explanations, quizzes, diagnostics, and belt-based progression — locally and privately.
Personalized coding tutorials that use your actual codebase for examples with spaced repetition quizzes
Keep your coding skills sharp! Periodic manual coding challenges with gamification (streaks, achievements, skip system)
Agent skills that package evidence-backed pedagogical methodologies (explain-and-check, quiz-me, connect-to-what-you-know, ask-me-questions, learn-by-doing, linked-notes, flashcards) as workflows applied to code. The anti-cognitive-surrender layer: closes the comprehension gap that opens when an LLM has done the work on the human's behalf.
A Claude Code guide — skills for interactive onboarding and Q&A on setup, best practices, automation, and effective workflows
互動式學習模式,在決策點請求有意義的程式碼貢獻(模擬未發布的學習輸出風格)