# Markdown To Storyboard

> >

- **Type:** Skill
- **Install:** `agentstack add skill-dp-archive-archive-markdown-to-storyboard`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [dp-archive](https://agentstack.voostack.com/s/dp-archive)
- **Installs:** 0
- **Category:** [Content & Media](https://agentstack.voostack.com/c/content-and-media)
- **Latest version:** 0.1.0
- **License:** Apache-2.0
- **Upstream author:** [dp-archive](https://github.com/dp-archive)
- **Source:** https://github.com/dp-archive/archive/tree/main/seed_skills/markdown-to-storyboard

## Install

```sh
agentstack add skill-dp-archive-archive-markdown-to-storyboard
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Markdown to Storyboard

Convert any markdown text into a structured storyboard CSV — the universal handoff format
for downstream tools (slide builders, video editors, image generators).

## Workflow

### 1. Analyze the Source Markdown

Read the markdown and identify:
- Title and subtitle
- Section headings (H2/H3) → natural slide boundaries
- Key arguments / data points / quotes per section
- Narrative arc: setup → development → climax → conclusion

### 2. Ask User Preferences

Prompt for (defaults in parentheses):
- **Slide count** (auto: 8–15 based on content length, ~1 slide per 150–300 words)
- **Audience** (general)
- **Tone** (professional)
- **Language** (same as source)

If user declines to specify, use defaults and proceed.

### 3. Assign Slide Types and Layouts

Available `slide_type` values:

| Type | Purpose | Typical layout |
|------|---------|---------------|
| `cover` | Opening slide | `full_bg` |
| `toc` | Table of contents (optional, 12+ slides) | `center_text` |
| `section` | Chapter divider | `center_text` |
| `content` | Core information | `left_img_right_text` or `top_img_bottom_text` |
| `quote` | Key quote or statistic | `full_bg` |
| `data` | Chart / number-driven | `two_column` |
| `summary` | Closing recap | `center_text` or `left_img_right_text` |
| `end` | Thank-you / Q&A / CTA | `full_bg` |

Available `layout` values:
`full_bg`, `left_img_right_text`, `top_img_bottom_text`, `center_text`, `two_column`

### 4. Write the Image Prompt for Each Slide

For each slide, write an `image_prompt` (English, regardless of content language) that:
- Describes a **concrete scene**, not an abstract concept
- Includes a **style keyword** consistent across all slides (e.g. "flat vector illustration, soft pastel palette")
- Specifies composition hints matching the layout (e.g. "wide shot, negative space on the right" for `left_img_right_text`)
- Cover and end slides get more dramatic / visually impactful prompts

### 5. Draft Speaker Notes

`speaker_notes` column: 1–3 sentences of what the presenter would say. Leave empty if not requested.

### 6. Output the CSV

Write the storyboard to `storyboard.csv` using `execute_code`:

```python
import csv

rows = [
    # [slide_no, slide_type, title, bullet_points, image_prompt, speaker_notes, layout]
]

header = ["slide_no", "slide_type", "title", "bullet_points", "image_prompt", "speaker_notes", "layout"]

with open("storyboard.csv", "w", newline="", encoding="utf-8") as f:
    writer = csv.writer(f)
    writer.writerow(header)
    writer.writerows(rows)
```

Column spec:

| Column | Type | Description |
|--------|------|-------------|
| `slide_no` | int | 1-indexed |
| `slide_type` | str | One of the types above |
| `title` | str | Slide headline, ≤ 10 words |
| `bullet_points` | str | Newline-separated (`\n`). Each ≤ 20 chars. Max 5 items |
| `image_prompt` | str | English prompt for image generation |
| `speaker_notes` | str | Optional presenter notes |
| `layout` | str | One of the layouts above |

### 7. Present for Review

Display the storyboard as a markdown table for the user to review.
Wait for confirmation before the next pipeline step.
If changes requested, update `storyboard.csv` and re-display.

## Pacing Guidelines

- **Opening** (slides 1–2): Hook — cover + bold opening statement or question
- **Body** (slides 3 to N-2): One idea per slide. Alternate `content` and `quote`/`data` to vary rhythm
- **Closing** (slides N-1 to N): Summary of key takeaways + end slide
- Avoid consecutive slides of the same type. Insert a `section` divider between major parts.

## Text Density Rules

- Title: imperative or question form, ≤ 10 words
- Bullets: ≤ 5 per slide, each ≤ 20 characters (CJK) / ≤ 12 words (Latin)
- Prefer fragments over full sentences
- Numbers stand alone: "3x faster" not "It is three times faster"

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [dp-archive](https://github.com/dp-archive)
- **Source:** [dp-archive/archive](https://github.com/dp-archive/archive)
- **License:** Apache-2.0

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-dp-archive-archive-markdown-to-storyboard
- Seller: https://agentstack.voostack.com/s/dp-archive
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
