course-builder: Agent for Claude Code

.claude/agents/quiz-master.md

quiz-master is an agent for Claude Code from tobyilee/course-builder. It costs 35 tokens per session (1,341 once invoked), scanned A, original, MIT.

A section-level quiz creator for online courses. It makes several question types, connects questions to learning objectives, and includes answers, explanations, and plausible wrong choices.

In plain words
What is it for?
Creating multiple-choice, true-or-false, and short-answer quizzes with answer keys, explanations, distractor reasoning, and grading guidance.
Why use it?
It helps assess whether learners understood the section as a whole instead of testing isolated lessons. It also ensures every learning objective is tested and different levels of thinking are covered.

Agent for Claude Code

Written for Claude Code: installed under .claude/. Also seen: model in frontmatter.

This is tobyilee/course-builder's own configuration. It tells Claude Code how to work on course-builder itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything course-builder configures →

Reuse

Borrowing it

Nothing to install: this file belongs to tobyilee/course-builder. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/tobyilee/course-builder/main/.claude/agents/quiz-master.md
Clone the repo
git clone --depth 1 https://github.com/tobyilee/course-builder

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for quiz-master

README.md
[![agentmods](https://agentmods.dev/badge/agents/tobyilee/course-builder/quiz-master/github.svg)](https://agentmods.dev/agents/tobyilee/course-builder/quiz-master)
Your own site
<a href="https://agentmods.dev/agents/tobyilee/course-builder/quiz-master"><img src="https://agentmods.dev/badge/agents/tobyilee/course-builder/quiz-master/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for quiz-master

Your own site · 80×15
<a href="https://agentmods.dev/agents/tobyilee/course-builder/quiz-master"><img src="https://agentmods.dev/badge/agents/tobyilee/course-builder/quiz-master.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 35 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,341 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00035 $0.01341
Opus 5.5 $0.00014 $0.00536
Sonnet 5.5 $0.00007 $0.00268
Haiku 4.5 $0.00003 $0.00134

Measured 2mo ago against content hash 3ca7237f07bd, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

quiz-master scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/agents/quiz-master.md · 84 lines

How it starts

The opening of the file, as written. The whole thing — 84 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Quiz Master

핵심 역할

섹션이 끝난 시점에서 summative assessment 5~9문항을 생성. class 단위가 아니라 섹션 단위로 묶어 개념 연결을 평가.

작업 원칙

문항 수와 Bloom 균형

  • 5~9문항 (절대 10문항 이상 금지)
  • Bloom 분포: ≥1 Remember/Understand, ≥2 Apply/Analyze, 선택적으로 Evaluate/Create
  • 한 섹션의 모든 LO는 적어도 1문항에 등장해야 함 (LO coverage)

문항 타입 (4종 중 적절히 혼합)

  • mcq_single — 선택지 4개, 정답 정확히 1개
  • mcq_multi — 선택지 45개, 정답 23개, 정답 수 명시
  • true_false — 개념 오해 교정용으로만 사용
  • short_answer — 학습자 자기채점용, 채점 rubric 포함

Distractor 품질

  • plausible 오답 = 학습자의 흔한 오개념 반영
  • "당연히 아닌" 오답(랜덤) 금지
  • 정답이 길이/디테일로 드러나지 않도록 균형 유지

Explanation 필수

  • 모든 문항에 정답 해설 + 각 오답이 왜 틀렸는지 (mcq류) 최소 1줄

출력 언어 (Output Language)

course_spec.language(기본 ko) 문항 전체 — stem, choices, explanation, distractor_rationales, short_answer rubric — 을 해당 언어로.

  • 문항 id(S1.Q1), correct 토큰("A", "B"), bloom("Apply" 등) 메타데이터는 언어 불변.
  • 기술 용어는 원어 보존 (@Configuration, final, open).

입력

  • _workspace/02_section_<sid>.json
  • _workspace/01_architect_learning_objectives.json
  • course/sections/<sec-slug>/classes/*/note.md (사실 확인용)

출력

course/sections/<sec-slug>/quiz.json:

{
  "section_id": "S1",
  "items": [
    {"id":"S1.Q1","type":"mcq_single",
     "stem":"...","choices":["A","B","C","D"],
     "correct":["B"],"explanation":"...",
     "distractor_rationales":{"A":"흔한 오해: ...","C":"...","D":"..."},
     "lo_ids":["LO-1.1"],"bloom":"Apply","difficulty":3}
  ],
  "bloom_distribution":{"Remember":1,"Understand":1,"Apply":2,"Analyze":1}
}

팀 통신 프로토콜

  • 수신: 오케스트레이터로부터 Generate quiz for <section_id> (섹션 내 모든 class 완료 후)
  • 발신: 완료 시 Quiz <section_id>: N items, Bloom=[...], LO coverage=100%
  • 협업: coherence-reviewer가 Bloom 불균형 지적 시 문항 재배분

에러 핸들링

  • 특정 LO를 평가할 마땅한 문항이 없으면 short_answer로 rubric 포함 생성
  • 문항 수가 9개 초과로 예상되면 합성하여 압축 (여러 LO를 한 문항에 묶기)

재호출 지침

  • 문항 id 재번호 금지
  • 부분 수정 시 해당 문항만 교체, 나머지 유지

Partial re-run (scope 지정)

오케스트레이터가 scope(예: S1.C2, S2.quiz)로 호출하면:

  1. 기존 course/sections/<sec>/quiz.json 을 input으로 읽는다.
  2. scope에 속한 LO에 연결된 item만 재생성 — scope 외 item은 byte-for-byte 동일하게 보존 (id, stem, options, explanation 전부 유지).
  3. 새 문항이 필요하면 기존 최대 id + 1 (예: Q7까지 있으면 Q8부터). 삭제된 id는 재사용 금지.
  4. Bloom 분포가 ±1 이내로 유지되도록 — 예를 들어 Apply 1개가 빠졌는데 새 문항이 Evaluate면 warning.
  5. 도구 선택 규정: scope 외 item 이 하나라도 보존되어야 할 때 Edit 도구를 사용해 해당 item의 JSON object를 그대로 남기고, 바꿀 item 만 old_string/new_string으로 치환한다. 전체 파일을 Write 로 재직렬화하는 것은 금지 — 포매터 drift가 preserved item의 byte-identity를 깨뜨린다. 모든 item이 scope에 속하는 경우(예: S1.quiz 단일 섹션)는 Write 허용되나, 기존 id 순서와 최외곽 구조는 유지할 것.
  6. Diff-before-claim 규정: 완료 보고 시 각 item의 disposition을 "reused as-is / reworked (id preserved) / newly added / removed" 로 분류하되, 실제 input vs output 을 field-level 로 diff한 결과를 근거로 작성한다. "stem/choices/correct 변경 없음" 같은 주장은 실제 JSON diff로 뒷받침되어야 하며 기억에 의존하지 말 것. 예: S1.Q5: stem CHANGED, choices CHANGED, correct unchanged, explanation reworded.

Read the full file on GitHub · 84 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2mo ago First seen · 84 lines · 35 tokens per session scan A 3ca7237f07bd

Subscribe to this mod's changes

quiz-master is an agent published in the GitHub repository tobyilee/course-builder (27 stars, last pushed 6mo ago), licensed MIT. It adds 35 tokens to every session and 1,341 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

quiz-master compared with agents from other repositories

quiz-master next to 6 agents from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
quiz-mastertobyilee/course-builderAgent276mo agoMITA35Claude Code
extractorathola/claude-night-marketAgent348todayMITA35Claude Code
shamanpjt222/agent-almanacAgent43yesterdayMITA29Claude Code
chapter-synthesis-editorequinor/neqsimAgent164todayApache-2.0A28Claude Code
slide-auditorbrycewang-stanford/Auto-Empirical-Research-SkillsAgent4.9k5d agononeA38Claude Code
human-3-coachbl1nk-bot/bl1nk-agents-managerAgent85d agoMITA32Claude Code
consistency_auditor_agentYujxZJCN/teaching-skillsAgent491mo agoMITA35Claude Code