Skip to content

SlidePilot

Experimental voice-driven auto-advance for Slidev that asks Cloudflare's Clef-omni four typed questions when the presenter pauses.

ProjectprototypeMIT

Overview

SlidePilot turns your voice into the slide clicker for Slidev decks. An addon streams microphone audio to a Cloudflare Agent, which keeps the current slide's audio and runs a pause detector. When the presenter pauses for about 700 ms, the decision model hears up to the last 60 seconds of slide audio along with the slide's content and notes, and answers four typed questions: whether advancing feels natural, whether the core idea is complete, whether the presenter is continuing, and whether this is a natural slide boundary. Because it hears audio rather than a transcript, intonation and trailing off count as evidence.

The current README uses Cloudflare's Clef-omni on Workers AI, a Jev-style decision model, with an alternative transcript engine (Flux speech-to-text plus Clef-flash); list summaries describe it as powered by TypeSafe Jev. TypeScript, not the model, applies the navigation policy with default thresholds (advance 0.68, complete 0.65, confidence 0.30), positive evidence of continuing is a hard veto, and cooldown and stale-decision guards protect navigation. Manual navigation always works. It is explicitly an experimental proof of concept to rehearse with before live use.

What the decision model decides

TypeQuestionAnswers
Yes / noDoes advancing to the next slide feel natural now?—
Yes / noIs the slide's core idea complete?—
Yes / noIs the presenter continuing to speak about this slide?—
Yes / noIs this a natural slide boundary?—

How it works

  1. Stream microphone audio to the Cloudflare Agent
  2. On a ~700 ms pause, send slide audio and notes to the decision model
  3. Apply thresholds in TypeScript with 'continuing' as a veto
  4. Advance via Slidev navigation if cooldown and freshness guards pass

Strengths

  • Hears intonation, not just words
  • Policy and thresholds stay in code
  • Cancels pending advances if the presenter resumes

Caveats

  • Experimental; rehearse first
  • Thresholds need calibration per speaker
  • Audience noise can cancel advances

Getting started

Clone the repo and run the included demo and Worker with pnpm install; the slidev-addon-slidepilot npm package is not yet published.

At a glance

Type
Project
Status
prototype
Language
TypeScript
Runtime
Slidev addon + Cloudflare Worker/Agent
Has code
yes
Has tests
yes
License
MIT

Use cases and integrations

How curated lists describe it

  • Voice-driven semantic auto-advance controller for Slidev presentations powered by Cloudflare Agents and TypeSafe Jev.

    logicrw/awesome-jev-projects
  • Experimental Slidev controller that judges speech transcripts for slide completion, with deterministic checks and manual navigation.

    cobanov/awesome-jev
  • Voice-driven semantic auto-advance for Slidev, powered by Cloudflare Agents and TypeSafe AI Jev.

    hellogumbo/awesome-jev

Frequently asked questions

What does the model decide?

Four yes/no questions about whether the current slide is done and whether to advance.

Does it use TypeSafe Jev?

The README uses Cloudflare's Clef-omni or Clef-flash; list summaries mention Jev.

Can I still click manually?

Yes, manual keyboard and clicker navigation always work.

Related projects

  • Draw on a tldraw canvas by voice while pointing a webcam-tracked finger; Jev decides command, action, shape, colour, target and place.

    DemoprototypeTypeScript
  • Toolkit for low-latency voice avatars where Jev can serve as a gate that judges turn ends and turn taking from speech transcripts.

    ProjectproductionPython
  • Cross-platform dictation app where a decision model chooses whether a personal-dictionary replacement actually fits the sentence.

    ProjectbetaPython
  • React components that use Jev judgments to choose which component renders, how lists are ordered and whether affordances show.

    ProjectbetaTypeScript
  • Prompt-first music studio where Jev makes every compositional choice, from plan to each bar pattern, rendered as editable MIDI.

    ProjectbetaTypeScript
  • Vercel Labs' generative UI framework with an experimental compose path where Jev picks which catalog components and actions to render.

    ServicebetaTypeScript