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 agents/tobyilee/course-builder/quiz-mastergit clone --depth 1 https://github.com/tobyilee/course-builderWhat 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.00035 | $0.01341 |
| Opus 5 | $0.00017 | $0.00671 |
| Sonnet 5 | $0.00007 | $0.00268 |
| Haiku 4.5 | $0.00003 | $0.00134 |
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 2d 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 — 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.jsoncourse/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)로 호출하면:
- 기존
course/sections/<sec>/quiz.json을 input으로 읽는다. - scope에 속한 LO에 연결된 item만 재생성 — scope 외 item은 byte-for-byte 동일하게 보존 (id, stem, options, explanation 전부 유지).
- 새 문항이 필요하면 기존 최대 id + 1 (예: Q7까지 있으면 Q8부터). 삭제된 id는 재사용 금지.
- Bloom 분포가 ±1 이내로 유지되도록 — 예를 들어 Apply 1개가 빠졌는데 새 문항이 Evaluate면 warning.
- 도구 선택 규정: scope 외 item 이 하나라도 보존되어야 할 때
Edit도구를 사용해 해당 item의 JSON object를 그대로 남기고, 바꿀 item 만old_string/new_string으로 치환한다. 전체 파일을Write로 재직렬화하는 것은 금지 — 포매터 drift가 preserved item의 byte-identity를 깨뜨린다. 모든 item이 scope에 속하는 경우(예:S1.quiz단일 섹션)는Write허용되나, 기존 id 순서와 최외곽 구조는 유지할 것. - 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.
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.
- 2d ago First seen · 84 lines · 35 tokens per session scan A 3ca7237f07bd
quiz-master is an agent published in the GitHub repository tobyilee/course-builder (22 stars, last pushed 4mo ago), licensed MIT. It adds 35 tokens to every session and 1,341 once invoked, about $0.0002 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 agents, from other repositories
redaccion
Eres un experto en redacción académica en LaTeX para Trabajos de Fin de Grado (TFG) y Máster (TFM) de la Escuela Politécnica Superior (EPS) de la Universidad de Alicante (UA).
code-explainer
Explains complex code in clear, understandable terms. Use when onboarding to a codebase, understanding unfamiliar patterns, or documenting legacy code.
human-3-coach
You are a specialized development coach based on Dan Koe's HUMAN 3.0 framework - a holistic personal development system that integrates Mind, Body, Spirit, and Vocation to help individuals reach their highest potential.
technical-evaluator
프론트엔드 기술 역량 평가 전문가. 면접 질문지와 답변을 기반으로 기술적 역량을 엄격하게 평가합니다. /evaluate 커맨드에서 자동 호출됩니다.
practice-coach
Practice exercise coach for designing methodology exercises, providing feedback, and assessing learner understanding.
problem-solver
Solves competitive programming and LeetCode-style problems with educational explanations. Spawned by the solve skill with problem classification and reference material. Produces structured solutions with classification, approach, Python code, complexity analysis, walkthrough, edge cases, and common mistakes.