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.
93
94%
Does it follow best practices?
Impact
93%
1.43xAverage score across 21 eval scenarios
Advisory
Suggest reviewing before use
PPTX highest priority
100%
100%
Video-only talks are processable
100%
100%
No-video talks not processable
100%
90%
Multiple slide_source values used
100%
100%
Video extraction output named by YouTube ID
100%
75%
Slides fail + video available = fallback to video
100%
100%
Partial processing when one source fails
0%
100%
All fail = distinct failure status
0%
50%
Processing log explains decisions
100%
100%
Regenerate for content additions
0%
100%
Edit for content removal
100%
100%
Simplified anchor flagged
100%
100%
Safety suffix: no new elements
62%
100%
Safety suffix: background continuation
100%
100%
Explicit preservation instructions
100%
100%
Versioned output naming
100%
100%
Fix mode for near-perfect images
100%
0%
PIL masking flagged as wrong approach
100%
100%
Missing preservation flagged
100%
100%
Content modification via edit flagged
50%
100%
Opening pattern analyzed
100%
100%
Narrative structure analyzed
100%
100%
Humor documented
100%
100%
Audience interaction noted
100%
100%
Areas for improvement
0%
100%
Structured data fields
0%
100%
Opening type categorized correctly
62%
75%
Closing type categorized correctly
62%
100%
Verbatim signature phrases
25%
100%
Verbatim opening lines
0%
100%
Verbatim closing lines
0%
100%
Transition phrases extracted
50%
100%
JSON schema completeness
0%
100%
Required top-level keys
20%
100%
Speaker fields from config
100%
100%
Speaker badges present
100%
80%
Speaker badges grounded in vault stats
100%
100%
Signature patterns with usage counts
50%
100%
never_used_patterns listed
0%
100%
guardrail_sources.slide_budgets is array
0%
100%
instrument_catalog populated
0%
100%
confirmed_intents carried over
100%
100%
pacing data populated
87%
100%
antipattern_frequency present
0%
100%
Analysis file location
100%
100%
All 14 dimensions present
60%
100%
English-only quote format
30%
50%
Language-tagged verbal signatures
12%
100%
Structured data fields
25%
100%
Pattern score formula
0%
100%
Observable patterns only
100%
100%
Verbatim examples
33%
100%
Tracking DB updated
20%
100%
Areas for improvement present
66%
100%
Presentation Patterns Scoring section
50%
100%
Abstract word count
100%
100%
Takeaway count
100%
100%
Speaker bio included
100%
100%
Title present
100%
100%
Presentation spec produced
100%
100%
Spec includes mode
100%
100%
No full architecture
100%
100%
Speaker voice in abstract
100%
100%
Spec includes duration
0%
100%
Spec includes profanity register
33%
100%
Spec includes commercial intent
33%
100%
Spec includes shownotes slug
100%
100%
Anti-sell awareness
100%
100%
Per-joke grading
50%
100%
Joke questions grounded in observations
91%
100%
Meme slide questions
87%
75%
Spontaneous humor capture
90%
100%
Promotion prompt
75%
100%
Blind spot questions
100%
100%
Demo reaction questions
100%
100%
Recency adaptation — recent
100%
100%
Recency adaptation — old
100%
100%
Structured output format
100%
100%
Both checker scripts referenced
0%
93%
Data attribution FAIL surfaced
58%
100%
Closing FAIL surfaced
50%
100%
Cut-lines FAIL surfaced
0%
100%
Rushed-closing recurring issue noted
100%
62%
Vague image prompt flagged (slide 5)
100%
100%
Schema validation confirmed up front
0%
12%
Big-idea singleton confirmed
0%
100%
Thesis preview/payoff ordering confirmed
0%
100%
Illustration coverage commentary
71%
100%
Report distinguishes FAIL vs FLAG vs INFO
25%
100%
outline.yaml validates against schema
21%
100%
style_anchor block present
0%
100%
Format-specific anchors
0%
100%
Visual continuity conventions documented
25%
100%
format field on every slide
0%
100%
EXCEPTION slides carry format_justification
25%
100%
image_prompt uses [STYLE ANCHOR] token
0%
100%
visual field present alongside image_prompt
0%
100%
Prompt richer than visual description
0%
100%
Visual continuity: FIG numbering
33%
100%
Visual continuity: progressive form
100%
100%
Standard outline structure preserved
33%
66%
Web-search precedes generation
0%
0%
No spurious model-change proposal
100%
100%
Proceeds to generation without re-litigating
100%
100%
Generation uses the outline's declared model
100%
100%
Web-search precedes generation
0%
68%
Outline model recognized as out-of-current-list
22%
100%
Explicit decision point before generation
0%
57%
No silent generation with stale model
27%
100%
Request A routes to Strategy mode
86%
80%
Request B routes to Generation mode
85%
75%
Request C routes to Thumbnail mode
86%
80%
Step references resolve against the skill's canonical sequence
53%
26%
Request B includes builds because outline has Builds blocks
100%
100%
Request B includes apply-to-deck because .pptx exists
100%
100%
Request A finishes after Step 2
90%
50%
No mode confusion across requests
100%
100%
4-tier structure present
60%
100%
Signature tier from profile
100%
100%
Contextual tier from profile
100%
100%
Shake It Up has 1-2 items
0%
100%
[RECURRING] tag used
40%
100%
[CONTEXTUAL] tag used
40%
100%
New to You from never_used
100%
100%
Actionable recommendations
100%
100%
Skips static files
100%
100%
Skips conflict copies
100%
100%
Skips template files
100%
100%
Background colors extracted
70%
100%
Per-slide breakdown present
80%
100%
Global design statistics
100%
90%
Shape type detail
100%
100%
Font extraction
50%
50%
Footer detection
100%
100%
Recursive directory scan
100%
100%
Valid JSON output
100%
100%
Build specification format
10%
70%
Build step 0 is empty frame
0%
100%
Final build matches the full slide
90%
100%
Backwards-chaining workflow described
10%
100%
Build naming convention
12%
100%
Build slides count toward budget
75%
75%
Speaker notes on final step only
0%
100%
BLANK layout for all builds
87%
100%
Explicit preservation instructions
20%
100%
Safety suffixes mentioned
0%
100%
Parent slide replaced by build sequence
50%
100%
Talk slug read from outline.yaml
100%
100%
Shownotes URL constructed from pattern + outline.yaml slug
100%
100%
Bitly custom back-half is the talk slug
100%
100%
QR encodes bitly URL, not raw shownotes URL
100%
100%
generate-qr.py used, not qrcode library directly
100%
100%
Command uses --shownotes-url (not --short-url)
100%
100%
Tracking DB update mentioned
60%
100%
No silent degradation to raw URL
100%
100%
Agent surfaces missing shortener config
100%
100%
Agent asks user to choose a shortener
66%
100%
Agent does NOT generate QR with raw URL without asking
100%
100%
Shownotes URL uses slug from outline.yaml (talk.slug)
100%
100%
Talk slug matches spec exactly
100%
100%
Agent references generate-qr.py as the tool
0%
100%
Agent distinguishes missing config from opt-out
100%
100%
Top-level DB structure
70%
100%
Config captures source directories
100%
100%
Talk fields extracted
75%
100%
URL fields parsed
50%
100%
New talks default to pending
0%
100%
No-sources talk flagged as unprocessable
66%
100%
Slide source determination
0%
40%
Static files skipped
100%
100%
Conflict copies skipped
100%
100%
Template files skipped
100%
100%
PPTX-to-talk matching
100%
100%
Scan report with counts
100%
100%
Recommended aesthetic is comic_book
100%
100%
Decision cites the precedence step that produced the answer
13%
100%
Decision quotes the matched field value
50%
100%
No side-by-side comparison forced
100%
100%
Speaker photo path from profile
100%
100%
style_preference and title_position applied
100%
100%
Brand colors applied
100%
100%
Step 1 not silently skipped
0%
100%
Title argument is the speaker-confirmed hook verbatim
100%
100%
Iterate not restart strategy
53%
100%
Style changed to split_panel
100%
100%
Title position changed to top
100%
100%
Title text unchanged
100%
100%
Slide image unchanged
100%
100%
Face issue addressed via style variant, not preservation language
66%
100%
generate-thumbnail.py used
100%
100%
Slide image from illustrations directory
100%
100%
Original vs revised comparison
100%
100%
Speaker photo path unchanged
100%
100%
Wide-angle detection
100%
100%
Hash threshold recommendation
90%
100%
Slide region crop suggestion
100%
100%
Multi-language transcript handling
90%
100%
Whisper hallucination detection
100%
100%
Transcript source tracking
100%
100%
Speaker identity verification
100%
100%
Recording type classification
40%
100%
Structured diagnostics output
100%
100%
Clean recording passes cleanly
100%
100%
Table of Contents