Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/tobyilee/course-builder/quiz-generationnpx skills add tobyilee/course-builder --skill quiz-generationgit clone --depth 1 https://github.com/tobyilee/course-builderWrote 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.
[](https://agentmods.dev/skills/tobyilee/course-builder/quiz-generation)<a href="https://agentmods.dev/skills/tobyilee/course-builder/quiz-generation"><img src="https://agentmods.dev/badge/skills/tobyilee/course-builder/quiz-generation.svg" alt="Measured on agentmods" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00050 | $0.01380 |
| Opus 5 | $0.00025 | $0.00690 |
| Sonnet 5 | $0.00010 | $0.00276 |
| Haiku 4.5 | $0.00005 | $0.00138 |
Grade A, and why
quiz-generation 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 5d 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.
How it starts
The opening of the file, as written. The whole thing — 127 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Quiz Generation — Section-Level Assessment
섹션 끝에서 summative 평가를 수행. class 단위가 아닌 섹션 단위인 이유: class는 formative(배우는 중), section은 summative(개념 연결 평가).
문항 수
- 5~9개, 10개 절대 금지
- 기준 공식:
round(section_duration / 15), 최소 5, 최대 9 - 동일 LO에 2문항 허용 (복수 관점 평가)
Bloom 분포 (문항 배분)
| Section 유형 | Remember | Understand | Apply | Analyze | Evaluate | Create |
|---|---|---|---|---|---|---|
| 입문 섹션 | 1~2 | 2 | 1~2 | 1 | - | - |
| 중급 섹션 | 0~1 | 1 | 2 | 2 | 1 | - |
| 고급 섹션 | 0 | 0~1 | 1 | 2 | 1~2 | 1 |
필수: Apply+Analyze ≥ 2. 단순 암기 위주 평가 금지.
문항 타입
mcq_single (단일 선택)
- 선택지 4개 고정
- 정답 정확히 1개
- Bloom: Remember~Analyze 모두 가능
{
"id":"S1.Q1", "type":"mcq_single",
"stem":"서버 컴포넌트가 포함되지 않는 번들은?",
"choices":["서버 번들","클라이언트 번들","Edge 런타임","SSR 출력"],
"correct":["B"],
"explanation":"서버 컴포넌트는 서버에서만 실행되고 클라이언트 번들에 직렬화된 페이로드만 전달됩니다.",
"distractor_rationales":{
"A":"서버 번들에는 포함됩니다 — 오히려 당연",
"C":"Edge 런타임도 서버 환경의 일종",
"D":"SSR 출력에도 RSC 결과가 들어갑니다"
},
"lo_ids":["LO-1.2"], "bloom":"Understand", "difficulty":3
}
mcq_multi (복수 선택)
- 선택지 4~5개
- 정답 2~3개, 선지문에 정답 수 명시 ("다음 중 맞는 것 2개를 고르시오")
- 채점: 부분점수 or 올오낫싱 명시
true_false
- 개념 오해 교정용으로만 사용
- stem은 교과서적 정답이 아닌 학습자가 헷갈리는 명제
- Bloom은 Understand/Analyze에 한정 (Remember에는 부적합 — 너무 쉬움)
short_answer
- 자기채점용, rubric 필수
{
"type":"short_answer",
"stem":"서버 컴포넌트와 SSR의 차이를 2문장으로 설명하시오.",
"rubric":[
"서버 컴포넌트는 클라이언트 번들 제외 (1pt)",
"SSR은 HTML 문자열을 렌더링 (1pt)",
"두 기술은 동시 사용 가능 (1pt)"
],
"lo_ids":["LO-1.3"], "bloom":"Analyze"
}
Distractor (오답 선지) 품질
원칙
- plausible (학습자가 실제로 할 법한 오해)
- 정답과 길이·디테일 균형
- 문법적·구조적으로 정답과 동일 패턴
좋은 distractor 생성법
- 학습자의 흔한 오개념 수집 (note의 Pitfalls 섹션 참조)
- 비슷한 개념과 혼동 유도 (SSR vs RSC vs CSR)
- 맞는 말이지만 질문에 답하지 않는 서술
나쁜 distractor
- "모든 것", "아무것도" (보통 오답)
- 이상하게 짧거나 긴 것 (정답이 드러남)
- 명백히 거짓 (학습 가치 없음)
Explanation 규칙
- 모든 문항 필수
- 정답 해설 + (mcq류) 각 오답별 왜 틀렸는지
- 최소 2문장, 최대 5문장
- 설명이 곧 미니 복습 — 투자 가치 있음
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.
- 5d ago First seen · 127 lines · 50 tokens per session scan A e6fa6f55afce
quiz-generation is a skill published in the GitHub repository tobyilee/course-builder (22 stars, last pushed 4mo ago), licensed MIT. It adds 50 tokens to every session and 1,380 once invoked, about $0.0003 per session on Opus 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.
Other skills, from other repositories
hr-onboarding
A new-hire onboarding plan as a single page — first week schedule, buddy + manager intro, learning track, equipment checklist, and "you're set when…" outcomes. Use when the brief mentions "onboarding", "new hire", "first week plan", or "入职".
book-mirror
Take any book (EPUB/PDF), produce a personalized chapter-by-chapter analysis. Each chapter is preserved in detail (The Chapter) and mirrored back to the reader's actual life (The Mirror) using brain context. The mirror observes and resonates — a friend pointing out parallels, NOT a consultant rearranging the reader's…
miniapp
Build a tiny interactive HTML playground only when someone asks to see, play with, or step through a mechanism.
eli5
Explain research, papers, or technical ideas in plain English with minimal jargon, concrete analogies, and clear takeaways. Use when the user says "ELI5 this", asks for a simple explanation of a paper or research result, wants jargon removed, or asks what something technically dense actually means.
deck-course-module
暖纸背景 + Playfair, 左侧学习目标常驻, 含 MCQ 自测页.
best-practices
Searchable knowledge base of 152+ programming best practices across 30+ languages and frameworks. BM25-powered search over curated resources from industry leaders (Google, Airbnb, Uber, Mozilla, Shopify, OWASP).