Pipeline Reference
Detailed documentation of each pipeline step
Overview
The Madly pipeline transforms your topic into publish-ready content through 5 structured steps. Each step has defined inputs, outputs, and quality checks.
Brief → Hook → Script → Shotlist → Publish PackStep 1: Brief
The Brief captures your content intent and constraints.
Inputs
| Field | Required | Description |
|---|---|---|
topic | Yes | What your video is about |
audience | Yes | Who you're creating for |
goal | Yes | Desired viewer action: comment, follow, dm, traffic |
key_points | No | 3-5 points to cover |
constraints | No | Things to avoid or requirements |
references | No | Links or assets for context |
Output
A validated brief object that feeds into subsequent steps.
Tips
- Be specific about your audience: "startup founders with 10-50 employees" beats "entrepreneurs"
- Key points should be concrete talking points, not vague themes
- Constraints help avoid clichés: "no 'game-changer' or 'revolutionary'"
Step 2: Hook
Generate attention-grabbing openings for your video.
Inputs
| Field | Required | Description |
|---|---|---|
hook_style | Yes | The hook technique to use |
intensity | Yes | soft or strong |
Hook Styles
| Style | Description | Example |
|---|---|---|
contrast | Before/after or unexpected comparison | "I used to spend 3 hours on emails. Now it's 15 minutes." |
question | Provocative question that demands attention | "Why do 90% of startups fail at email marketing?" |
result_first | Lead with the outcome | "This one change doubled my email open rate." |
pitfall | Common mistake or warning | "Stop using these 3 subject lines immediately." |
controversy_soft | Mild contrarian take | "Email newsletters are dead. Here's what's replacing them." |
Output
3 distinct hooks using your chosen style. Each hook is:
- Optimized for the first 3 seconds
- Differentiated from the others
- Aligned with your brief
Step 3: Script
Generate a complete oral script for your video.
Inputs
| Field | Required | Description |
|---|---|---|
duration_target_s | Yes | Target length: 30, 45, or 60 seconds |
Output
| Field | Description |
|---|---|
one_big_promise | The core promise of your video |
lines | Array of script lines for teleprompter |
cta_line | Call-to-action at the end |
duration_estimate_s | Estimated read time |
Quality Checks
The script must pass these validations:
- ✅
one_big_promiseis present and clear - ✅
cta_lineis present - ✅ Duration estimate is within ±20% of target
Script Structure
A well-structured script follows this flow:
- Hook — Grab attention (selected from Step 2)
- Promise — State the one big promise
- Content — Deliver on the promise
- CTA — Tell viewers what to do next
Step 4: Shotlist
Convert your script into actionable shooting instructions.
Inputs
| Field | Required | Description |
|---|---|---|
visual_style | Yes | product, talking_head, narrative, mixed |
broll_density | Yes | low, medium, high |
Visual Styles
| Style | Best For |
|---|---|
product | Product demos, unboxings |
talking_head | Commentary, opinions, tutorials |
narrative | Storytelling, vlogs |
mixed | Combination of styles |
Output
Array of 6+ shots, each containing:
| Field | Description |
|---|---|
shot_number | Sequential number |
description | What to capture |
duration_s | Suggested duration |
onscreen_text | Text overlay for this shot |
notes | Additional direction |
Step 5: Publish Pack
Generate platform-optimized content for distribution.
Output Structure
The Publish Pack contains 4 platform-specific packs:
Video Platform (YouTube, TikTok, etc.)
| Field | Description |
|---|---|
titles | 5 title options |
caption | Video description |
pinned_comments | 2 comments to pin |
hashtags | 12 relevant hashtags |
cta | Call-to-action text |
XiaoHongShu (小红书)
| Field | Description |
|---|---|
titles | 3 title options |
cover_texts | 0-3 cover text options |
body_paragraphs | Up to 6 paragraphs |
checklist | 3-5 item checklist (required) |
tags | 8-15 tags |
comment_prompts | 3 prompts to drive comments |
cta | Call-to-action (required) |
X (Twitter)
| Field | Description |
|---|---|
single_tweet | Standalone tweet (≤280 chars) |
thread | 5-tweet thread |
pinned_reply | Reply to pin |
cta | Call-to-action text |
| Field | Description |
|---|---|
opening_options | 3 opening line options |
body | Structured post (Observation → Method → Example → Summary) |
cta | Call-to-action text |
Quality Checks
- ✅ All required fields present
- ✅ XiaoHongShu has ≤6 paragraphs
- ✅ XiaoHongShu has checklist
- ✅ All packs have CTA
- ✅ No sensitive terms flagged
Rewriting Sections
After generation, you can rewrite any section:
- Select the text you want to change
- Describe your intent (e.g., "make it more casual", "add urgency")
- Review 3 candidate rewrites
- Apply or save as a branch
Each rewrite creates a new version, preserving history.
Version Management
- Every generation creates a version
- View the last 3 versions; expand to see history
- Mark any version as Final for sharing
- Branch from any version to try alternatives