| name | lecture-condenser |
| description | Condense multiple lecture-notetaker .md files from one series into a flat pre-exam priming document of recognisable key points, grouped by lecture and topic. Recognition tool for fast scan before exams — not full learning notes or flashcards. |
| disable-model-invocation | true |
Lecture Condenser
Invocation
Manual only. Apply this skill only when the user invokes /lecture-condenser or explicitly selects it. Do not load or run it based on conversation context alone.
Produce a flat priming document of key points from a set of lecture notes in one series. Recognition tool, not a learning artefact. The user scans it before an exam to dispel the "I don't know what I know" feeling — each line is something they should recognise, and not recognising one is the signal to revisit the source .md.
Before starting
- Read
/mnt/skills/public/pdf-reading/SKILL.md for slide handling.
- Read
references/condenser-template.md — full output structure with a worked example. Follow it closely.
- Read
references/key-point-criteria.md — the mechanical filter for what counts as a key point.
Inputs required
| Input | Format | Required? |
|---|
| Lecture notes | 2+ .md files from lecture-notetaker | Yes |
| Slides | .pdf per lecture | Yes — used for extraction, not in output |
| Series name | String | Yes — ask if not provided |
If fewer than 2 .md files are provided, confirm with the user — the condenser is designed for series-level review, not single-lecture review.
If slides are missing for any lecture, proceed with .md only for that lecture and flag in the output frontmatter that the slide signal was unavailable for that lecture.
Workflow
1. Confirm series scope
Ask: which series, which lectures, and confirm all .md files are from the same series. If they span topics, recommend running the skill once per series — the priming function works best when the user is loading one coherent topic into memory at a time.
2. Parse inputs
For each lecture:
- Parse the
.md: extract learning objectives, key claims under each, definitions, mechanisms, callout-flagged content, ⚠️ markers, and any explicit exam-relevance flags.
- Extract slide text via
/mnt/skills/public/pdf-reading.
- Note slide titles, bolded text, and bullet structure — these inform the key-point filter.
3. Apply key-point filter
A claim qualifies as a key point if it satisfies any two of:
- Appears on a slide as title, bullet, or bolded term
- Referenced in the LO list of the source
.md
- Has an associated mechanism, definition, or numerical value (recallable as a discrete unit)
- Appears in more than one lecture in the input set
See references/key-point-criteria.md for examples and edge cases. When in doubt, drop the claim — the priming function is destroyed by bloat.
4. Group and order
- Spine: lecture series → individual lecture → topic cluster within lecture
- Topic clusters come from how the slides organised the content, not from LOs (LOs are a learning-time construct; for review, slide structure matches the user's mental map of the lecture)
- No cross-lecture deduplication — if a concept appears in three lectures, it appears three times. That repetition is itself information.
5. Compress to one-line recognition units
Each point is a single line. Mechanism, definition, classification, threshold, named entity. No prose. No explanation. Recognition, not exposition.
Source claim → recognition unit examples in references/condenser-template.md.
6. Generate the markdown
Follow references/condenser-template.md exactly. Flat structure — no foldable callouts, no PDF++ embeds, no questions, no answers, no spaced review schedule.
7. Deliver
Save the .md and present.
What this skill is NOT
- Not a summary you read to learn (that's
lecture-notetaker full mode)
- Not flashcards or active recall (different cognitive function — recognition vs recall)
- Not a place to add explanation or context (that's
lecture-ftg)
- Not exhaustive — claims that don't pass the two-signal filter are out, even if true
Why no questions, no callouts, no embeds
The priming function depends on fast scan. Anything requiring interaction (folding a callout, clicking through to a slide, answering a question before continuing) breaks the scan. The user reads top-to-bottom in one sitting, recognises everything, and closes the doc. Different artefact from lecture-notetaker's full-mode notes, which are designed for active engagement during learning.
Edge cases
| Situation | Action |
|---|
| One lecture only | Confirm with user; condenser is series-level by design — single-lecture review is what lecture-notetaker already produces |
| Lectures from different series | Flag and recommend running once per series |
| Slides missing for a lecture | Drop the slide signal for that lecture; require both other signals to qualify a claim |
Source .md is sparse | Flag at top of output, proceed with what's available |
| 100+ key points | Generate as-is. The series is what it is — don't truncate |
| Same claim appears twice in one lecture | Include once (intra-lecture dedup); cross-lecture is preserved |
References
| File | When to read |
|---|
references/condenser-template.md | Always — before generating |
references/key-point-criteria.md | Always — for the filter logic |