roll-decklisted
Install: claude install-skill seanyao/roll
# roll-deck
> Topic in, deck.md out. AI authoring layer of the slide-deck pipeline.
> 主题进,deck.md 出。幻灯片管线的 AI 创作层。
## Trigger
User invokes `roll-deck` from the CLI:
```
$roll-deck "Introducing Roll Loop"
$roll-deck "How TCR keeps us honest"
```
`roll slides new "<topic>"` shells out to the selected agent with this skill loaded.
`roll slides new "<topic>"` 会通过所选 agent 加载本 skill。
## When Not to Use
- Rendering an existing `deck.md` to HTML → use `roll slides build <slug>` (bash, no AI).
- Listing or previewing decks → use `roll slides list` / `roll slides preview <slug>`.
- Authoring backlog stories → use `$roll-design` / `$roll-idea`.
## Hard Constraints 硬约束
- **You may write exactly one file**: `.roll/slides/<slug>/deck.md`.
- You MUST NOT edit any other file: no README, no AGENTS.md, no backlog, no source code, no `.roll/slides/*.html`.
- HTML rendering is `roll slides build <slug>` — never produce HTML here.
- If `.roll/slides/<slug>/deck.md` already exists, ask the user before overwriting.
- **Layout must come from the whitelist**: `plain`, `cards-2`, `cards-3`, `cards-4`, `compare`, `pipeline`, `timeline`, `quote`, `highlight`. Inventing a layout name makes `roll slides build` fail with `Unknown layout`.
**layout 必须从白名单选**:`plain` / `cards-2` / `cards-3` / `cards-4` / `compare` / `pipeline` / `timeline` / `quote` / `highlight`。自创 layout 名渲染会失败。
## Inputs
- `<topic>`: a free-text topic string (required).
- `<template>`: template name, default `introduction-v3