EX

exam-question-pipeline

Processes course materials and past exams into structured question bank JSON.

Install

mkdir -p .claude/skills/exam-question-pipeline && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/12919" && unzip -o skill.zip -d .claude/skills/exam-question-pipeline && rm skill.zip

Installs to .claude/skills/exam-question-pipeline

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Convert professor-provided lecture PDFs, transcripts, prior exams, and generated drafts into Exam-Lab question-bank JSON with local-only material handling, source separation, exam-session metadata, validation, and app upload steps. Use when preparing midterm/final expected questions, converting course materials to Markdown, extracting professor intent from transcripts, separating past exams from AI-generated questions, or adding a new course question bank to Exam-Lab.
472 chars✓ has a “when” triggerlonger than Claude Code's old 250-char listing cap (fine on current versions)
Advanced

Key capabilities

  • Create local-only workspace for exam materials
  • Classify sources before generation (previous_exam, lecture_material, transcript)
  • Convert materials to Markdown using MarkItDown or Docling
  • Extract exam scope and professor intent from materials
  • Generate draft questions covering the confirmed exam range
  • Normalize questions for Exam-Lab JSON schema

How it works

The skill processes course materials to generate app-ready Exam-Lab question JSON, classifying sources, converting formats, extracting intent, and normalizing data while keeping AI-generated content distinct.

Inputs & outputs

You give it
professor-provided lecture PDFs, transcripts, prior exams, and generated drafts
You get back
Exam-Lab question-bank JSON, process reports, or remaining review risk for AI-generated answer keys

When to use exam-question-pipeline

  • Converting lectures to question banks
  • Processing past exam papers
  • Preparing midterm question data

About this skill

Exam Question Pipeline

Use this skill to turn course materials into app-ready Exam-Lab question JSON without committing raw materials or confusing AI-generated questions with real past-exam questions.

Workflow

  1. Create local-only workspace

    • Put raw PDFs, transcripts, audio, converted Markdown, and intermediate JSON under .local/exam-materials/{course-id}/.
    • Ensure .local/, raw material folders, and conversion output folders are in .gitignore.
  2. Classify sources before generation

    • previous_exam: actual prior exam material. Use only for the matching exam scope, or as separated pattern/context evidence.
    • lecture_material: PPT/PDF/handout content used for formula and answer-key grounding.
    • transcript: lecture recording transcript. Use for scope, emphasis, and professor intent; do not use transcript text alone as formula authority.
  3. Convert materials to Markdown

    • Use MarkItDown for fast readable slide text.
    • Use Docling when tables, images, layout, or extracted assets matter.
    • Treat OCR-heavy distribution tables as reference-only unless checked against official sources or source images.
    • Read references/material-conversion-policy.md when choosing tools or checking conversion quality.
  4. Extract exam scope and intent

    • Record exact user clarifications about scope.
    • Separate midterm/final and year-specific evidence early.
    • If a transcript exists, extract only the relevant speaker lane and correct obvious domain-term misrecognitions before using it for intent.
  5. Generate draft questions

    • Cover the full confirmed exam range.
    • Weight emphasized lectures or problem sets more heavily, but do not drop other in-scope materials.
    • Give needed critical values directly in calculation prompts unless the learning goal is table/distribution selection.
  6. Normalize for Exam-Lab

    • Add source, answerStatus, exam, and metadata fields according to references/exam-lab-schema.md.
    • Use source: "ai" and answerStatus: "ai_draft" for AI-generated expected questions.
    • Use exam.kind: "past_exam" only for real prior exam questions.
    • Run scripts/normalize-exam-questions.mjs when converting a draft JSON into app-ready JSON.
  7. Review and validate

    • Use references/question-generation-review.md for content-review checks.
    • Run scripts/validate-question-bank.mjs <json-file>.
    • Run app verification after upload:
      • npm test if tests exist.
      • npm run build.
  8. Upload to app

    • Write the final JSON to src/lib/questions/{courseId}.json.
    • Import it from src/lib/questions/index.js.
    • If the UI lacks exam-session filtering, add filtering by question.exam.id instead of overloading source.

Output Rules

  • Commit app-ready question JSON and process reports only.
  • Do not commit raw PDFs, recordings, transcripts, conversion artifacts, or intermediate generation dumps.
  • Always report remaining review risk for AI-generated answer keys.
  • Keep real past exams and AI expected questions separated by both file location and metadata.

Resources

  • references/exam-lab-schema.md: app JSON schema and exam/source conventions.
  • references/material-conversion-policy.md: PDF/STT conversion and source handling rules.
  • references/question-generation-review.md: generation and review checklist.
  • scripts/validate-question-bank.mjs: deterministic JSON validation.
  • scripts/normalize-exam-questions.mjs: inject/normalize Exam-Lab metadata.

When not to use it

  • Do not commit raw PDFs, recordings, transcripts, conversion artifacts, or intermediate generation dumps
  • Do not use transcript text alone as formula authority
  • Do not overload `source` for exam-session filtering if UI lacks it

Limitations

  • Always report remaining review risk for AI-generated answer keys
  • Keep real past exams and AI expected questions separated by both file location and metadata

How it compares

This workflow provides a structured pipeline for converting diverse course materials into a standardized, validated question bank JSON, ensuring source separation and metadata consistency, unlike manual question creation.

Compared to similar skills

exam-question-pipeline side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
exam-question-pipeline (this skill)02moReviewAdvanced
scientific-critical-thinking187moReviewAdvanced
scholar-evaluation42moReviewIntermediate
tooluniverse-drug-research32moNo flagsAdvanced

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

scientific-critical-thinking

davila7

Evaluate research rigor. Assess methodology, experimental design, statistical validity, biases, confounding, evidence quality (GRADE, Cochrane ROB), for critical analysis of scientific claims.

1888

scholar-evaluation

K-Dense-AI

Systematically evaluate scholarly work using the ScholarEval framework, providing structured assessment across research quality dimensions including problem formulation, methodology, analysis, and writing with quantitative scoring and actionable feedback.

438

tooluniverse-drug-research

mims-harvard

Generates comprehensive drug research reports with compound disambiguation, evidence grading, and mandatory completeness sections. Covers identity, chemistry, pharmacology, targets, clinical trials, safety, pharmacogenomics, and ADMET properties. Use when users ask about drugs, medications, therapeutics, or need drug profiling, safety assessment, or clinical development research.

323

hkdse-subject-grading

AKCqhzdy

>

00

matlab-symbolic-math

matlab

Generate correct MATLAB code using the Symbolic Math Toolbox. Use when the user asks for symbolic computations, analytical solutions, symbolic differentiation/integration, equation solving, or converting symbolic results to numeric MATLAB functions. Also use when converting differential equations to

00

markitdown

K-Dense-AI

Convert various file formats (PDF, Office documents, images, audio, web content, structured data) to Markdown optimized for LLM processing. Use when converting documents to markdown, extracting text from PDFs/Office files, transcribing audio, performing OCR on images, extracting YouTube transcripts, or processing batches of files. Supports 20+ formats including DOCX, XLSX, PPTX, PDF, HTML, EPUB, CSV, JSON, images with OCR, and audio with transcription.

177310

Search skills

Search the agent skills registry