| name | slidev-talk-deck |
| description | Create or revise stage-ready Japanese Slidev talk decks with an evidence-first narrative, a 1:1 speaker script, deterministic checks, and rendered visual QA. Use when the user wants a Slidev presentation, lightning-talk slides, a technical or tool-showcase deck, synchronized speaker notes, or a final deck readability and narrative review. |
Slidev Talk Deck
A deck is stage-ready only when its story, source, speaker script, rendered PDF, and visual evidence agree. Build the same process every run; let the topic change.
Branches
- Create: start from a brief and produce a new deck workspace.
- Revise: preserve settled constraints, then update slides and speaker script together.
- Review: inspect source plus rendered output; report findings unless the user asks for fixes.
1. Fix the human intent
Read the conversation and existing project docs before asking questions. Resolve these six fields:
- audience
- purpose
- available speaking time
- title and presenter name
- one sentence the audience should remember
- required claims, examples, demos, logos, or screenshots
Ask only for fields that cannot be recovered. The human's purpose remains the governing constraint for every later choice.
Complete when: all six fields are explicit, and conflicts such as a long story in a short slot are visible to the user.
2. Build an evidence ledger
Read the relevant CONTEXT.md, source notes, implementation state, and prior decisions. For claims that depend on current facts, collect the source URL, retrieval date, number, and intended slide. Save a deck-local evidence-assets.md when the deck uses external claims or screenshots.
Use local assets under the deck workspace. Treat screenshots as evidence: crop toward the proof, enlarge anything the audience must read, and explain what the image proves in visible body copy or the script.
Complete when: every factual number, attributed claim, and evidence image has a source or is clearly presented as personal experience.
3. Make the storyboard
Write outline.md before polishing CSS. Use one beat per slide and make titles state the point of that beat. A useful talk arc is:
- why this talk exists
- pressure or problem
- core model
- how the system works
- concrete evidence
- human boundary or trade-off
- final takeaway
Adapt the arc rather than filling every slot. Explain unfamiliar tools at the moment the audience needs them. Keep intentional repetition only when the later slide changes the meaning: model → mechanism → proof → benefit.
Complete when: each slide has one sentence of intent, adjacent slides have a reason to follow each other, and the final slide answers the opening problem.
4. Build or revise the Slidev source
For a new deck, copy the starting assets from this skill:
In this vault, place new decks under 4_Project/Tool-Showcase/Slides/<topic-duration>/ and use the root Slidev toolchain. Add dev:, build:, and export: package scripts for the new deck.
Read references/visual-language.md before editing layout or CSS. Use the current reference implementation when its path exists:
4_Project/Tool-Showcase/Slides/Multica-30-Mini-Projects-AI-Nandemo-5min/
Keep visual rules in CSS rather than inline styles. Add a layout primitive only when an existing one cannot express the slide. Reuse a small vocabulary: readable prose, image split, three-part role split, linear flow, evidence strip, final summary.
Complete when: every slide renders from slides.md, local assets resolve, and every slide communicates its point without relying on speaker notes.
5. Write the 1:1 speaker script
Keep speaker-script.md canonical. Create exactly one section per slide:
## Slide 7 — Exact visible slide title
Spoken prose...
**切り替え:** Why the next slide follows.
Use natural spoken Japanese, not a transcription of every visible sentence. Explain terms, evidence, and transitions that cannot fit on the slide. Preserve the user's voice and settled wording.
Estimate duration from the script. Keep the core story intact, report any mismatch against the event slot, and let the human choose between a shorter variant and a longer talk.
Complete when: slide count, section count, order, and titles match exactly, and the script has a speakable transition through the full deck.
6. Run deterministic gates
Run:
python .pi/skills/slidev-talk-deck/scripts/validate_deck.py \
--slides <deck>/slides.md \
--script <deck>/speaker-script.md \
--css <deck>/styles/index.css \
--target-minutes <minutes>
Then run the deck's build and export commands. If a PDF exists, rerun the validator with --pdf and generate a contact sheet:
python .pi/skills/slidev-talk-deck/scripts/render_contact_sheet.py \
<deck>/exports/<deck>.pdf \
--output .pi/tmp/<deck>-contact.png
Complete when: validation has no errors, build/export succeeds, PDF page count equals slide count, and the contact sheet exists.
7. Inspect the rendered deck
View the full contact sheet, then inspect dense, image-heavy, opening, and closing slides at full size. Check:
- clipping and overflow
- distant readability
- vertical balance
- repeated layout fatigue
- screenshot legibility
- title hierarchy
- whether the closing message is visually dominant
Export success proves only that a file exists. Rendered inspection proves the deck can be presented.
Complete when: every slide has been seen in the contact sheet, every risky slide has been checked full-size, and remaining risks are reported with slide numbers.
8. Return human judgment
Summarize:
- deck and script paths
- slide count and estimated speaking time
- build, export, mapping, and visual-QA results
- unresolved factual or visual risks
- exact decisions still owned by the human
For vault mutations, pass the Vault Mutation Exit Gate before completion.
Complete when: the human can decide present, revise, shorten, or publish without reopening the entire work history.