Four-skill presentation system: ingest talks into a rhetoric vault, run interactive clarification, generate a speaker profile, then create new presentations that match your documented patterns. Includes an 88-entry Presentation Patterns taxonomy for scoring, brainstorming, and go-live preparation.
96
93%
Does it follow best practices?
Impact
97%
1.21xAverage score across 30 eval scenarios
Advisory
Suggest reviewing before use
Ask each question individually. Wait for the answer before asking the next.
Never present multiple questions in a single message — see the interaction-rules steering rule.
Use AskUserQuestion for structured choices when the vault provides a finite set
of options (mode, profanity register, commercial intent, yes/no confirmations).
Use conversational text for open-ended questions ("Tell me about the audience") —
but still one at a time.
Question order (ask about what's missing, skip what's already known):
Concrete examples:
AskUserQuestion(
question: "Which presentation mode fits this talk?",
options: [
{label: "Slide-driven polemic (Recommended)", description: "Your default — opinionated thesis with visual evidence"},
{label: "Live-coding with slides", description: "Demo-heavy with supporting slides"},
{label: "Panel / fireside chat", description: "Conversational, minimal slides"}
])
→ wait for answer →
AskUserQuestion(
question: "What profanity register for JCON Europe?",
options: [
{label: "Moderate — damn/hell (Recommended)", description: "Your vault default"},
{label: "Clean — no profanity", description: "Corporate or family audience"},
{label: "Unrestricted", description: "Anything goes"}
])
→ wait for answer →
"Any venue-specific context I should know about JCON Europe?"
→ wait for answer →
AskUserQuestion(
question: "Any commercial intent for this talk?",
options: [
{label: "None (Recommended)", description: "Pure thought leadership"},
{label: "Subtle", description: "Product woven into narrative"},
{label: "Direct", description: "Explicit product pitch"}
])
→ wait for answer →
AskUserQuestion(
question: "Generated slug: 2026-06-23-jcon-robocoders — confirm?",
options: [
{label: "Looks good (Recommended)", description: "Use this slug for shownotes and QR"},
{label: "I want to adjust", description: "Let me edit the slug"}
])Use the vault to inform questions. If the topic overlaps with existing talks in the vault, reference them: "This overlaps with your [talk name] territory. Should we build on that argument or take a different angle?"
If the spec has a co-presenter:
[SPEAKER A]: / [SPEAKER B]: prefixes in all speaker notes throughout the outlineThe slug is NOT free-form — read shownotes_slug_convention from the speaker
profile config. Apply the convention to this talk's details. Example convention:
Convention: {YYYY-MM-DD}-{conference-slug}-{talk-short-name}
Input: 2026-04-16, DevNexus, "Robocoders: Judgment Day"
Result: 2026-04-16-devnexus-robocoders-judgment-dayRules:
shownotes_slug_convention is not set in the profile, ask the author
for their convention and save it (same as any missing config field).The confirmed slug goes into the Presentation Spec as Shownotes slug: and is
persisted in presentation-spec.md. All downstream uses (Phase 6 shownotes URL,
QR code --talk-slug, directory name) must use this exact slug.
Before presenting the spec, cross-check:
Pre-fill the spec from the vault's analysis of the original talk:
{vault_root}/analyses/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
rules
skills
presentation-creator
references
patterns
build
deliver
prepare
scripts
vault-clarification
vault-ingress
vault-profile