OpenParable
Skip to content
← Back to skills

Markdown To Storyboard

Documents
markdown-to-storyboard

Markdown To Storyboard is an Agent Skill for documents published in the dp-archive/archive repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.

Convert markdown content into a structured storyboard CSV for slide decks, video scripts, or any sequential visual media. Use when the user wants to plan a presentation, break down an article into slides, create a shot list, or generate a scene-by-scene outline from text. Triggers: "plan slides", "create storyboard", "break this into slides", "plan presentation", "outline this as a deck", "article to slides", "text to storyboard".

View on GitHub ↗
QUICK START

How to use this skill

Bring this guide into your coding agent with a prompt tailored to the tool you use.

  1. Open your project in Codex.
  2. Copy and paste the prompt below.
  3. Review files and risks before approving any action.
Prompt to paste
Inspect the Agent Skill at https://github.com/dp-archive/archive/blob/HEAD/seed_skills/markdown-to-storyboard/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/markdown-to-storyboard, but wait for my approval before writing files or running scripts.

Copying this prompt does not install or run the skill. Review third-party files before use.

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:

TypePurposeTypical layout
coverOpening slidefull_bg
tocTable of contents (optional, 12+ slides)center_text
sectionChapter dividercenter_text
contentCore informationleft_img_right_text or top_img_bottom_text
quoteKey quote or statisticfull_bg
dataChart / number-driventwo_column
summaryClosing recapcenter_text or left_img_right_text
endThank-you / Q&A / CTAfull_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:

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:

ColumnTypeDescription
slide_noint1-indexed
slide_typestrOne of the types above
titlestrSlide headline, ≤ 10 words
bullet_pointsstrNewline-separated (\n). Each ≤ 20 chars. Max 5 items
image_promptstrEnglish prompt for image generation
speaker_notesstrOptional presenter notes
layoutstrOne 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"