Two-skill presentation system: analyze your speaking style into a rhetoric knowledge vault, then create new presentations that match your documented patterns. Includes an 88-entry Presentation Patterns taxonomy for scoring, brainstorming, and go-live preparation.
95
95%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Advisory
Suggest reviewing before use
Small print — Sessions catalog entries now include a "Small Print" field for Program Committee notes (talk positioning, what it is/isn't, reviewer context).
Sessions catalog — New sessions-catalog.md file in the vault for maintaining
submission-ready conference materials (title, abstract, outline) per active talk.
sessions-catalog.md to the vault skill's Key Files tableCanonical vault path — The vault now uses ~/.claude/rhetoric-knowledge-vault/ as
a fixed, discoverable location. No more asking "where should the vault live?" every
session. Custom locations (e.g., Google Drive) are symlinked to the canonical path.
vault_root — checks canonical
path first, creates or symlinks on first runvault_storage_path config field tracks the actual directory when using a custom
locationMaintenance — Version bump and CLI publish.
Eval scenarios — Added 5 new server-generated eval scenarios via tessl scenario generate, covering both skills end-to-end. Reviewed and fixed all 15 scenarios for
quality, then ran the full eval suite (baseline avg 62% → with-skill avg 98%).
optimize_slide_text with python-pptx
overflow handling)video_extraction field, clarified planning-time vs download-outcome for
slide_source)capability.txt files to all new scenariosVideo-extracted slides — When no slides file exists, extract slides directly
from video: ffmpeg frame extraction → crop to slide area (exclude PiP) → perceptual
hash deduplication → combine into PDF. Marks slide_source: "video_extracted".
Non-YouTube video support — Step 3A now supports ingesting talks from InfoQ,
Vimeo, conference platforms, and any source yt-dlp supports. Downloads audio via
yt-dlp -f http_audio, transcribes locally with MLX Whisper (Apple Silicon) or
OpenAI Whisper. Tags transcript source as "whisper" vs "youtube_auto".
Data integrity fixes:
co_presenter,
delivery_language, and other structured DB fields directly from analysis results,
not burying them in rhetoric_notes free text.Blind spot clarification + language policy — Two additions to the vault skill:
blind_spot_observations.delivery_language on the talk entry. Prevents non-English content from polluting
the signature list or rhetoric summary.Robustness & conciseness — Addressed gaps found during tile review and tightened both skills for the review gate.
pattern_observations and marks them needs-reprocessingclarification_sessions_completed counter to tracking DB configschemas.md, compressed profile mapping and badgesPresentation Patterns integration — Integrated the pattern taxonomy from Presentation Patterns (Ford, McCullough, Schutta 2013) as a structured reference, vault scoring system, and brainstorming vocabulary across both skills. Patterns are classified as observable (scored by the vault) or unobservable (surfaced as a go-live checklist before delivery).
id, name, type, part,
phase_relevance, vault_dimensions, detection_signals, related_patterns,
inverse_of, difficulty, and observable (true by default, false for 11 entries)references/patterns/_index.md): flat catalog table, phase-grouped
lookup, vault dimension reverse mapping, and unobservable patterns go-live checklistobservable: false in their frontmatter, excluded
from vault scoring and pattern_profile, and surfaced as a go-live preparation
checklist in creator Phase 6observable: falsepattern_observations field added to both subagent return schema and tracking
database talk entries (schemas.md)pattern_profile in the speaker profile with mastery
levels, usage trends, signature combinations, antipattern frequency, and never-used
patterns (observable only)pattern_profile section added to speaker-profile-schema.md with documentation
that only observable patterns are includedrhetoric-dimensions.md cross-referenced with their
related patterns and antipatternsreferences/patterns/_index.md alongside vault documentspattern_profile:
[RECURRING] flags from pattern_profile.antipattern_frequency and [CONTEXTUAL]
flags from outline analysisREADME.md — rewritten with Presentation Patterns section, observable/unobservable
table, updated file tree, updated vault/creator descriptionstile.json — bumped to v0.5.0, added "patterns" keywordCHANGELOG.md — this entryReview & consistency fixes — Addressed consistency gaps found during tile review.
analyses/ (fixes broken adaptation workflow in creator)badges schema to speaker-profile-schema.mdpublishing_process question into targeted sub-questions matching the schemacfp, abstract, pptx keywords to tile.jsontessl.json project name from scaffold placeholderslide-generation.mdCI/publish pipeline tuning — Iterative adjustments to the GitHub Actions publish workflow: switched to the publish action's built-in skill review gate, tested optimize input, and settled on the default review threshold (50%).
Evaluation scenarios — Added 10 eval scenarios covering both skills (vault analysis and presentation creation), plus Tessl eval infrastructure.
Speaker badges & profile Step 6 enhancement — Profile regeneration now generates personalized speaker badges as a fun summary of portfolio-wide achievements, mined from real vault data (meme counts, employer transitions, recurring patterns, signature quirks).
PPTX as primary slide source — The vault skill no longer requires Google Drive slide
PDFs for every talk. Talks with .pptx files can now be processed directly, providing
richer data (exact hex colors, font names, layout names) than PDF visual inspection.
video_url + at least one of slides_url or pptx_pathslide_source field on each talk: "pdf", "pptx", or "both"slides_url and pptx_path are both optional (at least one required)Initial release with two skills:
skills
presentation-creator
references
patterns
build
deliver
prepare
rhetoric-knowledge-vault