Five-skill presentation system: ingest talks into a rhetoric vault, run interactive clarification, generate a speaker profile, create presentations that match your documented patterns, and produce the deck illustrations + thumbnail visual layer. Includes a 102-entry Presentation Patterns taxonomy (91 observable, 11 unobservable go-live items) for scoring, brainstorming, and go-live preparation.
95
96%
Does it follow best practices?
Impact
95%
1.20xAverage score across 32 eval scenarios
Advisory
Suggest reviewing before use
Triggered separately — days or weeks after delivery. Not part of the linear Phase 0-6 flow. The talk has been given, the recording exists, and the speaker wants a YouTube thumbnail and/or to update shownotes with the video.
Before ANY Phase 7 action, load these files. If any is missing, STOP and ask.
speaker-profile.json — thumbnail preferences, video publishing configsecrets.json — API keys (Gemini for thumbnail generation)presentation-spec.md — talk slug, metadata (source of truth)presentation-outline.md — the outline (slide references, illustration references)If shownotes don't exist and the speaker wants Step 7.2, STOP and ask — either run Phase 6 Step 6.1 first, or get the shownotes URL manually.
Delegate to the illustrations skill — it owns slide selection, photo resolution, aesthetic precedence, composition via Gemini, speaker iteration, shownotes copy, and tracking-database updates:
Skill(skill: "illustrations")See skills/illustrations/references/thumbnails.md for the full
workflow. Returns control here once the thumbnail is approved and the
tracking database is updated.
Update the existing shownotes page with the video recording link.
Check that shownotes were published in Phase 6 Step 6.1. Look for:
tracking-database.json for this talkpublishing_process.shownotes.url.base +
publishing_process.shownotes.url.template (substitute {slug} and any
date variables) — see phase6-publishing.md for the full template semanticsIf shownotes don't exist, STOP and ask the speaker. Options:
Read publishing_process.video_publishing from speaker profile:
enabled — if false, skip this stepembed_method — youtube_embed, link_only, or bothshownotes_video_section — where/how the video section goes in shownotesvideo_description_template — template for YouTube video descriptionIf video_publishing is not configured, ask interactively:
Create the video section content based on embed_method:
Include the video title, conference name, and year from the presentation spec.
Use the same publishing method as Phase 6 Step 6.1:
Set video_added_to_shownotes: true on the talk's entry in talks[].
Add the YouTube URL to the talk entry if not already present.
POST-EVENT REPORT — {talk title}
==================================
[DONE/SKIP] Thumbnail: {path, dimensions, size}
[DONE/SKIP] Video to shownotes: {shownotes URL, embed method}
[INFO] YouTube URL: {url}
==================================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
scenario-26
scenario-27
scenario-28
scenario-29
scenario-30
scenario-31
scenario-32
rules
skills
illustrations
presentation-creator
references
patterns
build
deliver
prepare
scripts
vault-clarification
vault-ingress
vault-profile