I was vibe-coding and realized I had no idea what my app actually did. So I came up with this.
I've been vibe-coding with Claude Code and noticed a pattern: I'd ship features sometimes and have no clue what they actually do. Not the code, the behavior. Like, what happens when a user hits a limit? What data gets exposed? What did removing that check actually break?
So I came up with a Claude Code hook that asks you ONE multiple-choice question after Claude finishes a task.
How it works:
- Claude finishes writing code → "Quick 10-second comprehension check?" → Yes / No / Snooze / Disable
- If yes: one question like "You just added rate limiting. When a user hits the limit, what do they actually see?"
- After you answer: explains the correct answer + gives you a prompting tip for next time so you gather knowledge about how to prompt for this feature the next time you do the same or similar
The key thing: it uses Claude's understanding of your code to pick the most important change
The benefit: it makes you a better prompter. When the quiz exposes something you missed, it tells you exactly how to prompt for it next time. Like: "Next time try: 'Add rate limiting AND return a friendly error with a Retry-After header.'"
- Always skippable, never blocks your work
- Zero telemetry, no answers stored
- Also has
/quizskill for on-demand use - Rust binary, one-command install
https://github.com/akshan-main/vibe-check
Curious what you guys think. What kind of questions would actually be useful to you?
Posted Mar 4, 2026, 7:19 AM UTC