CtrlK
BlogDocsLog inGet started
Tessl Logo

jbaruch/speaker-toolkit

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.

78

1.18x
Quality

91%

Does it follow best practices?

Impact

77%

1.18x

Average score across 27 eval scenarios

SecuritybySnyk

Advisory

Suggest reviewing before use

Overview
Quality
Evals
Security
Files

criteria.jsonevals/scenario-23/

{
  "context": "Tests the illustrations skill's Step 1 mode routing — given a request and state, the agent picks Strategy, Generation, or Thumbnail mode (or a combination) and executes only the matching steps. Mode routing is the skill's first decisional gate; misrouting wastes the speaker's time.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Request A routes to Strategy mode",
      "description": "Request A is identified as Strategy mode. The plan executes the Strategy steps (Steps 3–9, style sourcing through bake-and-verify) and stops — does not run Generation (Steps 10–12) or Thumbnail (Step 13). The 'why' notes that no STYLE ANCHOR exists yet, so generation cannot run.",
      "max_score": 15
    },
    {
      "name": "Request B routes to Generation mode",
      "description": "Request B is identified as Generation mode. The plan executes Step 10 (deck illustrations), Step 11 (builds — present because the outline has 3 build blocks), and Step 12 (apply to deck — present because a .pptx exists). It does NOT run the Strategy steps 3–9 (STYLE ANCHOR already exists) and does NOT run Step 13 (no thumbnail requested).",
      "max_score": 20
    },
    {
      "name": "Request C routes to Thumbnail mode",
      "description": "Request C is identified as Thumbnail mode. The plan skips directly to Step 13 (Generate Thumbnail) and skips the Strategy and Generation steps. The 'why' notes that the talk has been delivered and the work is post-event.",
      "max_score": 15
    },
    {
      "name": "Step references resolve against the skill's canonical sequence",
      "description": "Step references in the plan correspond to the actual routing step (Step 1, mode router), the Strategy chain (Steps 3–9), and the Generation/Thumbnail action steps (Step 10 deck illustrations, Step 11 builds, Step 12 apply-to-deck, Step 13 thumbnail). The freshness gate (Step 2) runs first in Strategy and Generation. No invented or paraphrased step labels.",
      "max_score": 15
    },
    {
      "name": "Request B includes builds because outline has Builds blocks",
      "description": "The plan for Request B explicitly notes that Step 11 runs because the outline has slides with - Builds: blocks. If no builds existed, Step 11 would proceed silently per the skill's silence rule.",
      "max_score": 10
    },
    {
      "name": "Request B includes apply-to-deck because .pptx exists",
      "description": "The plan for Request B explicitly notes that Step 12 runs because a clean deck .pptx exists. If no .pptx existed, Step 12 would finish without applying and presentation-creator's Phase 5 would call back later.",
      "max_score": 10
    },
    {
      "name": "Request A finishes after the Strategy steps",
      "description": "The plan for Request A states explicitly that the skill finishes after the Strategy steps (3–9) because generation was not requested in the same invocation. Does NOT continue to Generation (Steps 10–12) or Thumbnail (Step 13).",
      "max_score": 10
    },
    {
      "name": "No mode confusion across requests",
      "description": "Each request's mode list contains only the modes that apply to that request — no leakage (e.g., Request A doesn't list Generation mode just because the directory will eventually need it; Request C doesn't list Strategy mode because the deck has a STYLE ANCHOR).",
      "max_score": 5
    }
  ]
}

.mcp.json

README.md

tile.json