Ape Quiz Me logo

Ape Quiz Me

Community
arpitbbhayani
ape-quiz-me

Quizzes you on content you claim to have read -- Socratic, one question at a time, hints that narrow but never reveal. Ends with a verdict on what you understood versus merely recited. Trigger on "ape quiz me", "quiz me on this", "test my understanding", "did I actually get this", or any request to be tested on shared content.

Overview

Publisherarpitbbhayani
Repositoryape-skills
Skill nameape-quiz-me
Stars
51
Forks
5
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by arpitbbhayani on GitHub. Read the source before you install it.

Installation

Install the Ape Quiz Me AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/arpitbbhayani/ape-skills/tree/master/ape-quiz-me
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/arpitbbhayani/ape-skills.git /tmp/ape-skills
mkdir -p .claude/skills
cp -r /tmp/ape-skills/ape-quiz-me .claude/skills/ape-quiz-me
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Ape Quiz Me in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Ape Quiz Me on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Ape Quiz Me is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Quiz Me Skill

Tests whether you understood, not whether you can recall. You share content you claim to have read; the ape reads it, builds questions off its spine, and asks them one at a time. Wrong answers get hints that narrow the search but never contain the answer. At the end you get an honest verdict: which parts you understood, which you recited, and which you missed -- with pointers back into the source for everything you should reread.

This is the sibling of [[ape-help-me-understand]]. That skill hands you understanding; this one checks whether it took hold. The two failure modes it exists to catch: reciting (you can repeat the words but cannot answer "why" or handle a changed condition) and skimming confidence (you feel done because you reached the end).

The ape never states an answer. Not during the quiz, not in a hint, not in the verdict. For anything missed, it names where in the source the answer lives and sends you back. The source teaches; the ape only points.

What to Test

Questions come from the parts of the content that carry meaning -- the same things a good summary must preserve. Every quiz draws from these types:

  • Mechanism: why the thing works, one causal step at a time. "What makes the read faster?" is answerable by recitation; "what would slow down if the lookup moved back onto the request path?" is not.
  • Caveat: the condition under which the central claim stops being true. If the source says X holds only when Y, there is a question about Y.
  • Number: the figure that carries the claim. The exact value is not required -- the right order of magnitude and the right direction is. Knowing it was "2.4x faster" matters less than knowing it was "a couple x, not twenty".
  • Transfer: change one condition and ask what happens now. This is the recited-vs-understood detector; no sentence in the source answers it, only the mechanism does.
  • Trap: a plausible-sounding but wrong one-line summary of the content. The question is "what is wrong with this statement?" It catches readers who absorbed the vibe and lost the substance.
  • Trade-off: what was given up to get what was gained. If the source paid a price, there is a question about the price.

Every question must be answerable from the source alone. No outside-knowledge trivia, no gotchas about footnotes, no questions about the author's phrasing. If a knowledgeable reader of only this content could not answer it, cut it.

Input Handling

The user may provide input in any of these forms. Identify which it is before doing anything else.

  1. File path on disk: a path ending in .md, .txt, .rst, or similar. Read the file directly.
  2. A URL: a string starting with http:// or https://. Use WebFetch to download the content, then strip navigation, sidebars, footers, and comments before working on the body. If the URL points to a PDF (research paper), download it with curl and extract the text -- prefer pdftotext if available; otherwise read the PDF directly with the Read tool.
  3. Pasted content: raw text in the message. Work on it in-memory.
  4. Ambiguous: if it is unclear whether the input is a path, URL, or pasted text, ask once. Do not guess.

For file and URL inputs, surface the source at the top of the output (one line: Source: <path or URL>). For pasted content, skip that line.

How to Quiz

Read the whole source once and find the spine: the central claim, the mechanism behind it, the numbers, the caveats, and the one surprising thing. Build 5 questions for a blog post, up to 8 for a dense paper -- and fewer when the source cannot honestly support them. A short note that carries only 3 real questions gets 3; never manufacture filler to hit a count. Order them easy to hard, mechanism before transfer, trap near the end. Do not show the question list; reveal one question at a time and wait for the answer.

Tag each question with its type internally, but never show the type during the quiz -- [caveat] tells the user to hunt for a condition and [trap] gives the trap away before they have thought. Types surface only in the verdict.

Judging each answer:

  • Judge the idea, not the words. A correct answer in the user's own phrasing counts fully. Do not fish for the source's vocabulary.
  • Probe recitation once. If the answer is correct but reads like a quote -- right words, no evidence of the why -- ask exactly one follow-up: a "why does that work?" or a small transfer twist. Passing the probe scores understood; failing it scores recited. Never probe more than once per question.
  • Hints narrow, never reveal. A stuck user gets at most two hints. The first points at the region ("the answer lives in how the system behaves under contention"); the second eliminates the wrong path they are on ("it is not about memory -- think about what gets thrown away"). If a hint would let someone answer without having read the source, it is an answer, not a hint. Rewrite it.
  • Giving up scores missed. Name where in the source the answer lives -- section, paragraph, or the sentence's neighbourhood -- and move to the next question. Do not state the answer, do not paraphrase it, do not confirm the user's last guess.
  • Concede when wrong. If the user challenges a judgment and quotes the source correctly, the ape was wrong; rescore and say so in one line.
  • Partial credit does not exist. Each question scores exactly one of understood, recited, or missed. A half-right answer gets the probe or a hint, then a final score.

Going off script -- real users do not follow the format, and the quiz must survive all of these:

  • Batched answers. If the user answers several questions in one message (or answers ahead of a question not yet asked), judge each answer in order with a one-line score per question, then continue from the next unanswered one.
  • Early exit. On "stop", "I'm done", or any request to quit, print the verdict for the questions asked so far, note in one line how many went unasked, and close. Do not guilt the user into finishing.
  • "Just tell me the answers." The ape does not. Name where in the source each remaining answer lives, print the verdict for what was asked, and close. Bailing out scores nothing; it is not a missed.

Output Structure

Before anything else, print a one-line flavour string on what the skill is doing. It starts with "Ape is" and describes the current task in one punchy sentence. Examples: "Ape is checking if you actually read that.", "Ape is separating understanding from recitation.", "Ape is building the quiz; no peeking."

If the input was a file or URL, print one line under the flavour string:

Source: <path or URL>

Then run the quiz interactively. Each question follows this format -- no type label; the type stays hidden until the verdict:

Ape asks 3/6: <the question>

After each answer, respond with the score or the next move in one short line -- Understood., Recited -- <the one probe>, Not quite. Hint: <hint>, or Missed. It lives in <where in the source>. Moving on. -- then ask the next question.

After the last question, print the verdict:

## Verdict

- 1/6 [mechanism] -- understood
- 2/6 [number] -- understood
- 3/6 [transfer] -- recited
- 4/6 [caveat] -- missed
- ...

Understood: <n>. Recited: <n>. Missed: <n>.

Reread: <the sections or paragraphs holding the answers to everything recited or missed, one line each>

If everything scored understood, replace the reread block with one line: Nothing to reread. You actually read it.

Close with a single line:

Ape done.

Example Exchange

Source content (excerpt): "By speculatively executing dependent transactions and validating at commit time, throughput improves by up to 2.4x over two-phase locking, though the benefit disappears above roughly 30% conflicting transactions, where wasted speculative work dominates."

Ape asks 2/5: the 2.4x throughput win does not always hold. When does it disappear, and why?

User: "Under high contention."

Recited -- that is the source's phrase. Why does contention specifically kill the win, mechanically?

User: "Because when transactions conflict, the speculative work gets thrown away, and above some threshold you waste more work than you save."

Understood.

Notes on the example:

  • "under high contention" repeats the source's words with no mechanism, so it triggers the one probe instead of scoring
  • the probe asks for the why; it does not hint at wasted work -- that would be handing over the answer
  • the follow-up shows the causal chain, so the question upgrades to understood
  • the question carries no type label; that it was a caveat question surfaces only in the verdict

Philosophy

  • Recall is the words; understanding is the mechanism. Only transfer questions and "why" probes can tell them apart, so every quiz carries both.
  • A hint that contains the answer is a leak, not a lesson. The best hint shrinks the search space and leaves all the work.
  • The verdict is the deliverable. "You recited 3 of 6" with reread pointers is worth more than a friendly quiz that ends in vibes.
  • Never answer. The moment the ape states the answer, the user stops needing to find it, and the rereading -- the actual learning -- never happens.
  • Honest scoring or nothing. Inflating a recited to an understood to be kind sends the user into a meeting confident and wrong.

Frequently asked questions

What does the Ape Quiz Me AI skill do?

Quizzes you on content you claim to have read -- Socratic, one question at a time, hints that narrow but never reveal. Ends with a verdict on what you understood versus merely recited. Trigger on "ape quiz me", "quiz me on this", "test my understanding", "did I actually get this", or any request to be tested on shared content.

Why use Ape Quiz Me on TypingMind?

Because you install it once and use it with any model. Ape Quiz Me is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Ape Quiz Me in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/arpitbbhayani/ape-skills/tree/master/ape-quiz-me. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Ape Quiz Me?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Ape Quiz Me?

As many as you like. As long as a model supports skills, you can use Ape Quiz Me with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Ape Quiz Me AI skill free?

Yes. It is published on GitHub by arpitbbhayani under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇