Six-skill presentation system: ingest talks into a rhetoric vault, run interactive clarification, generate a speaker profile, create presentations that match your documented patterns, produce the deck illustrations + thumbnail visual layer, and publish talk pages to a Jekyll shownotes site. Includes a 102-entry Presentation Patterns taxonomy (91 observable, 11 unobservable go-live items) for scoring, brainstorming, and go-live preparation.
89
94%
Does it follow best practices?
Impact
89%
1.30xAverage score across 25 eval scenarios
Advisory
Suggest reviewing before use
A speaker has just delivered a conference talk and wants the talk
page to go live on their Jekyll-based shownotes site. The talk's
spec (outline.yaml), gathered resources (resources.json), and
the freshly uploaded slides PDF are all available. The recording is
not yet published; only the slides URL is in hand — provided in the
single-line fixture inputs/talk/slides-url-2026-05-22.txt.
The speaker says: "I delivered the talk yesterday. Slides URL is in
the file I dropped in inputs/talk/. Publish the shownotes page — no
video yet, that comes later."
Compose the talk-page file at the path the site's conventions require, relative to the working directory. Do not run a Jekyll build and do not invoke any external service.
Produce the talk page in the format the site's markdown parser plugin expects. The filename and directory are the ones the site's convention dictates given the artifacts provided.
Download the synthetic fixtures from the project repository:
BASE="https://github.com/jbaruch/speaker-toolkit/raw/main/eval-resources/shownotes-publisher-publish-with-date"
mkdir -p inputs/talk inputs/vault
curl -sL -o inputs/talk/outline.yaml "$BASE/outline-2026-05-22.yaml"
curl -sL -o inputs/talk/resources.json "$BASE/resources-2026-05-22.json"
curl -sL -o inputs/talk/slides-url-2026-05-22.txt "$BASE/slides-url-2026-05-22.txt"
curl -sL -o inputs/vault/speaker-profile.json "$BASE/speaker-profile-2026-05-22.json"All four fixtures are synthetic. The outline.yaml validates against
the outline_schema.py pydantic schema. The slides URL fixture
contains exactly one line.
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10
scenario-11
scenario-12
scenario-13
scenario-14
scenario-15
scenario-16
scenario-17
scenario-18
scenario-19
scenario-20
scenario-21
scenario-22
scenario-23
scenario-24
scenario-25
rules
skills
illustrations
presentation-creator
references
patterns
build
deliver
prepare
scripts
shownotes-publisher
vault-clarification
vault-ingress
vault-profile