# Vibe Quiz

> Incrementally teaches a completed session until the human demonstrates mastery. Use when the user asks for a vibe quiz, session understanding check, mastery loop, Socratic teaching pass, or says the session should not end until they understand.

- Skill: `fabriqaai/vibe-quiz` (Agent Skill)
- Install (CLI): `npx skillmds@latest add fabriqaai/vibe-quiz`
- Raw SKILL.md: https://api.skillmd.com/api/skills/fabriqaai/vibe-quiz/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: fabriqaai (https://skillmd.com/u/fabriqaai)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/fabriqaai/vibe-quiz

---


# Vibe Quiz

Teach a completed or in-progress session through staged mastery checks. Optimize for deep human understanding, not a one-shot recap.

## When to Use

Use this skill when the user asks to:

- deeply understand a session, incident, implementation, plan, or debugging flow
- be quizzed until they demonstrate mastery
- choose a baseline understanding before receiving explanation
- learn through ELI5, ELI14, intern-level, or Socratic explanations
- keep a running checklist of what they should understand

## Core Rules

- Start by asking the human to select the closest description of their current understanding from choices.
- Teach incrementally; do not dump the full explanation at once.
- Before moving to the next stage, verify mastery of the current one.
- Cover both high-level motivation and low-level mechanics.
- Drill into why, what, and how. Understanding the problem comes first.
- Keep total quiz questions to **10 or fewer** for the whole session.
- Avoid repetitive questioning; if the user is stuck, explain the gap and ask a narrower follow-up.
- Ask questions with explicit answer choices only; do not ask open questions that require typed free-form answers.
- Do not reveal multiple-choice answers before the user submits.
- Update the checklist immediately after each quiz or choice response; do not claim a stage is done while the doc says it is still pending.
- Before the final response, verify the checklist's current status, stage status, and final summary agree.

## Running Checklist Doc

Create or update one markdown checklist under:

```text
docs/vibe-quiz/<YYYY-MM-DD>-<short-topic>-learning-checklist.md
```

The doc must track:

- human name, read from current context, Fabriqa context/tools when available, or `git config user.name`
- stage status
- the human's baseline choice selection
- quiz results and missed concepts
- corrections provided
- final mastery evidence

Use checkboxes so future readers can see exactly what was mastered.

## Required Stages

Adapt names to the topic, but preserve this learning arc:

1. Baseline model selection
2. Problem: what happened and why it matters
3. Cause: why the problem existed
4. Branches/mechanisms: distinguish similar-looking paths
5. Solution: what changed
6. Design decisions: why this solution over alternatives
7. Edge cases: what still works, fails, or remains deferred
8. Broader context: product, architecture, workflow, and downstream impact
9. Final mastery: choice-based end-to-end verification

## Question Strategy

Prefer 1-3 questions at a time. Use `fabriqa_AskUserQuestion`, Fabriqa's own AskUserQuestion tool, or another available choice UI for all checks. If no choice tool exists, write plain-text questions with labeled choices and ask the human to reply with the option label.

For choice questions:

- vary the correct option position
- include plausible wrong answers based on real confusions
- ask about causes, branches, edge cases, and trade-offs
- wait for the submitted answer before explaining correctness
- avoid relying on an "Other" free-text answer; if the user selects or types "Other," convert it into a follow-up choice question

## Teaching Loop

For each stage:

1. Explain only the current stage.
2. Ask a small choice-based quiz.
3. If correct, mark the checklist stage mastered.
4. If incomplete, record the gap, teach that gap, and retry with a narrower check.
5. Stop when the 10-question cap is reached; switch to a final choice-based synthesis check and targeted feedback.
6. After every update, make sure no stale "in progress" or "awaiting" text contradicts the actual quiz state.

## Completion

Do not declare mastery until the human has correctly answered choice-based checks covering:

- the problem and visible symptoms
- why the problem existed
- similar branches/mechanisms and how to distinguish them
- the solution and why it was chosen
- edge cases and trade-offs
- broader impact and follow-ups

If the final evidence is a quiz pass, say that explicitly in the checklist. If another proof is still required, keep the stage pending and label the remaining requirement precisely. If the user accepts the quiz as complete, update the final summary to match.

If the user created an explicit goal for mastery, leave it active until this evidence is captured.

