{"id":"450d6d8e-c504-4689-a4d4-935802215d96","shortId":"VJEmWP","kind":"skill","title":"tiktok-slideshow","tagline":"Orchestrator skill that chains /slideshow-script → /paper-marketing → /video-content for end-to-end TikTok slideshow production. Each phase is an independent Lego block — this orchestrator is just one recipe that combines them. Produces 5 publishable TikTok videos from a single p","description":"# /tiktok-slideshow — End-to-End TikTok Content Pipeline\n\nOrchestrator that chains 3 atomic skills into a complete TikTok production pipeline:\n\n```\n/slideshow-script  →  /paper-marketing  →  /video-content\n   (5 scripts)         (5 designs)          (5 videos)\n```\n\nEach skill is a Lego block that works independently. This orchestrator is one recipe.\n\n## Architecture\n\n```\nPhase 1: SCRIPT  — /slideshow-script generates 5 narrative scripts\nPhase 2: DESIGN  — /paper-marketing creates 5 visual designs (1 per script)\nPhase 3: VIDEO   — /video-content assembles videos from designs\n```\n\n**Platform spec:** TikTok 1080×1920, 9:16, 30fps, H.264\n\n## Prerequisites\n\nBefore starting, verify all 3 sub-skills are installed:\n- `~/.claude/skills/slideshow-script/SKILL.md`\n- `~/.claude/skills/paper-marketing/SKILL.md`\n- `~/.claude/skills/video-content/SKILL.md`\n\nIf any sub-skill is missing, tell the user and recommend `mktg update` to install it. Do not proceed without all 3.\n\n## Workflow\n\n### Phase 1: SCRIPT\n\nLoad the `/slideshow-script` skill at `~/.claude/skills/slideshow-script/SKILL.md` and follow its workflow:\n\n1. Read brand files (positioning, audience, voice)\n2. User selects positioning angle\n3. Generate up to 5 scripts using 5 storytelling frameworks (AIDA, PAS, BAB, Star-Story-Solution, Stat-Flip). User may select fewer at the gate.\n4. Each script uses the brand voice from `brand/voice-profile.md` for tone, vocabulary, and signature phrases\n5. Present all 5 scripts for approval\n6. Write 5 content spec YAMLs to `marketing/content-specs/`\n\n**Gate:** User must approve scripts before Phase 2.\n\n### Phase 2: DESIGN\n\nLoad the `/paper-marketing` skill at `~/.claude/skills/paper-marketing/SKILL.md` and follow its workflow, with these orchestrator-specific instructions:\n\n1. Paper-marketing Phase 1 (Load Brand) proceeds as normal\n2. **Skip Phase 2a-2d** — the content specs already exist from Phase 1\n3. Instead, read the 5 content spec YAMLs from `marketing/content-specs/`\n4. Each content spec has a `visual_direction` field — use that to set each agent's design brief\n5. Each agent gets its content spec's unique script (different slides, different narrative)\n6. Each agent loads the `/frontend-design` skill for design quality\n7. Spawn agents — number depends on how many scripts the user approved (could be 3-5)\n\n**Script-to-design mapping from content specs:**\n\n| Content Spec | Visual Direction | Framework |\n|--------------|-----------------|-----------|\n| `{project}-aida.yaml` | typographic | AIDA |\n| `{project}-pas.yaml` | contrast-play | PAS |\n| `{project}-bab.yaml` | atmospheric | BAB |\n| `{project}-story.yaml` | editorial | Star-Story-Solution |\n| `{project}-statflip.yaml` | data-led | Stat-Flip |\n\n8. User reviews all designs, selects favorite(s)\n9. Extract `get_jsx()` from selected artboard(s)\n10. Write handoff YAML(s) to `marketing/handoffs/`\n\n**Gate:** User must select variation(s) and export PNG from Paper UI.\n\n### Phase 3: VIDEO\n\nLoad the `/video-content` skill at `~/.claude/skills/video-content/SKILL.md` and follow its workflow:\n\n1. Detect handoff YAML from Phase 2\n2. ffmpeg slice the exported PNG into individual slides\n3. User selects tier (v1 Quick / v1.5 Enhanced / v2 Full)\n4. Assemble video at chosen tier\n5. ffmpeg post-process (thumbnail, GIF preview, platform encode)\n\n**For multiple selections:** If user approved multiple designs, run video assembly for each. Can be parallelized — each video is independent.\n\n**Gate:** User approves final video(s).\n\n## Human-in-the-Loop Gates\n\n```\n[Phase 1] → User approves 5 scripts\n[Phase 2] → User selects design variation(s), exports PNG(s) from Paper UI\n[Phase 3] → User selects video tier, approves final output\n```\n\nEach gate is an AskUserQuestion. The user can go back to any phase.\n\n## Output\n\n```\nmarketing/content-specs/\n  {project}-aida.yaml\n  {project}-pas.yaml\n  {project}-bab.yaml\n  {project}-story.yaml\n  {project}-statflip.yaml\n\nmarketing/handoffs/\n  {project}-{variation}-handoff.yaml\n\nmarketing/video/\n  {project}-{variation}/\n    slides/\n    output_{tier}.mp4\n    thumbnail.png\n    preview.gif\n```\n\n## Reusable Blocks\n\nEach skill in this chain works independently:\n\n| Block | Standalone Use |\n|-------|---------------|\n| `/slideshow-script` | Generate scripts for any format (Instagram carousel, YouTube, email) |\n| `/paper-marketing` | Design any visual content (not just slideshows) |\n| `/video-content` | Assemble video from any PNGs (not just Paper exports) |\n\n## Other Orchestrator Recipes (Future)\n\nSame blocks, different combinations:\n\n```\n/instagram-carousel  = /slideshow-script → /paper-marketing (4:5 ratio, no video)\n/youtube-short       = /slideshow-script → /paper-marketing → /video-content (16:9)\n/reels-batch         = /slideshow-script (10 scripts) → /paper-marketing → /video-content × 10\n/ad-creative         = /slideshow-script (1 script) → /paper-marketing (1 slide) → /video-content\n```\n\n## Error Recovery\n\n| Failure | Action |\n|---------|--------|\n| Sub-skill not installed | Stop, recommend `mktg update`, do not proceed |\n| Phase 1 scripts rejected | Revise scripts with user feedback, do not advance to Phase 2 |\n| Paper MCP unavailable | Fall back to manual slide creation; user provides PNGs |\n| Phase 2 design export fails | User re-exports from Paper UI; agent retries video assembly |\n| Phase 3 video assembly fails | Check ffmpeg/Remotion installation, retry with v1 tier first |\n\n## Anti-Patterns\n\n| Anti-Pattern | Instead |\n|-------------|---------|\n| Skipping human gates between phases | Always wait for user approval at each gate |\n| Running all 3 phases without stopping | Each phase has an explicit gate — never auto-advance |\n| Generating all 5 when user only wants 2 | Respect user selection at Phase 1 gate |\n| Re-using the same visual direction for all designs | Each content spec maps to a unique visual direction |\n| Loading sub-skills via Bash instead of reading SKILL.md | Load each skill's SKILL.md and follow its instructions |\n\n## Principles\n\n- **Skills never call skills** — this SKILL.md teaches the agent the sequence; the agent loads each skill\n- **Filesystem is the bus** — content specs and handoffs are YAML files, not API calls\n- **Human gates at every phase** — no runaway agent chains\n- **Progressive quality** — start with v1 to verify, upgrade to v2 for production\n- **All outputs are publishable** — different scripts, different designs, not N versions of 1","tags":["tiktok","slideshow","marketing","cli","moizibnyousaf","agent-skills","ai-agents","ai-marketing","brand-memory","brand-voice","claude-code","claude-code-skills"],"capabilities":["skill","source-moizibnyousaf","skill-tiktok-slideshow","topic-agent-skills","topic-ai-agents","topic-ai-marketing","topic-brand-memory","topic-brand-voice","topic-claude-code","topic-claude-code-skills","topic-cli","topic-cmo","topic-marketing-automation","topic-marketing-cli","topic-seo"],"categories":["marketing-cli"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/MoizIbnYousaf/marketing-cli/tiktok-slideshow","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add MoizIbnYousaf/marketing-cli","source_repo":"https://github.com/MoizIbnYousaf/marketing-cli","install_from":"skills.sh"}},"qualityScore":"0.459","qualityRationale":"deterministic score 0.46 from registry signals: · indexed on github topic:agent-skills · 18 github stars · SKILL.md body (6,430 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:05:52.931Z","embedding":null,"createdAt":"2026-05-04T19:06:16.730Z","updatedAt":"2026-05-18T19:05:52.931Z","lastSeenAt":"2026-05-18T19:05:52.931Z","tsv":"'-5':363 '/.claude/skills/paper-marketing/skill.md':136,260 '/.claude/skills/slideshow-script/skill.md':135,170 '/.claude/skills/video-content/skill.md':137,449 '/ad-creative':663 '/frontend-design':343 '/instagram-carousel':642 '/paper-marketing':9,65,99,257,616,644,652,660,667 '/reels-batch':656 '/slideshow-script':8,64,91,167,606,643,651,657,664 '/tiktok-slideshow':44 '/video-content':10,66,110,446,624,653,661,670 '/youtube-short':650 '1':89,104,163,175,271,276,295,454,529,665,668,688,792,896 '10':422,658,662 '1080':118 '16':121,654 '1920':119 '2':97,182,251,253,282,460,461,535,701,715,786 '2a':286 '2a-2d':285 '2d':287 '3':55,108,129,160,187,296,362,442,470,548,731,765 '30fps':122 '4':214,306,480,645 '5':36,67,69,71,93,101,191,194,229,232,238,300,324,486,532,646,781 '6':236,338 '7':348 '8':406 '9':120,414,655 'action':674 'advanc':698,778 'agent':320,326,340,350,726,841,845,870 'aida':197,380 'aida.yaml':378,572 'alreadi':291 'alway':755 'angl':186 'anti':744,747 'anti-pattern':743,746 'api':861 'approv':235,247,359,501,518,531,553,759 'architectur':87 'artboard':420 'askuserquest':560 'assembl':111,481,506,625,729,733 'atmospher':389 'atom':56 'audienc':180 'auto':777 'auto-adv':776 'bab':199,390 'bab.yaml':388,576 'back':565,706 'bash':818 'block':25,78,595,603,639 'brand':177,219,278 'brand/voice-profile.md':222 'brief':323 'bus':852 'call':835,862 'carousel':613 'chain':7,54,600,871 'check':735 'chosen':484 'combin':33,641 'complet':60 'content':50,239,289,301,308,329,370,372,620,805,853 'contrast':384 'contrast-play':383 'could':360 'creat':100 'creation':710 'data':401 'data-l':400 'depend':352 'design':70,98,103,114,254,322,346,367,410,503,538,617,716,803,891 'detect':455 'differ':334,336,640,888,890 'direct':313,375,800,812 'editori':393 'email':615 'encod':495 'end':13,15,46,48 'end-to-end':12,45 'enhanc':477 'error':671 'everi':866 'exist':292 'explicit':773 'export':436,465,541,633,717,722 'extract':415 'fail':718,734 'failur':673 'fall':705 'favorit':412 'feedback':695 'fewer':210 'ffmpeg':462,487 'ffmpeg/remotion':736 'field':314 'file':178,859 'filesystem':849 'final':519,554 'first':742 'flip':206,405 'follow':172,262,451,829 'format':611 'framework':196,376 'full':479 'futur':637 'gate':213,244,429,516,527,557,752,762,774,793,864 'generat':92,188,607,779 'get':327,416 'gif':492 'go':564 'h.264':123 'handoff':424,456,856 'handoff.yaml':584 'human':523,751,863 'human-in-the-loop':522 'independ':23,81,515,602 'individu':468 'instagram':612 'instal':134,153,679,737 'instead':297,749,819 'instruct':270,831 'jsx':417 'led':402 'lego':24,77 'load':165,255,277,341,444,813,823,846 'loop':526 'mani':355 'manual':708 'map':368,807 'market':274 'marketing/content-specs':243,305,570 'marketing/handoffs':428,581 'marketing/video':585 'may':208 'mcp':703 'miss':144 'mktg':150,682 'mp4':591 'multipl':497,502 'must':246,431 'n':893 'narrat':94,337 'never':775,834 'normal':281 'number':351 'one':30,85 'orchestr':4,27,52,83,268,635 'orchestrator-specif':267 'output':555,569,589,885 'p':43 'paper':273,439,545,632,702,724 'paper-market':272 'parallel':511 'pas':198,386 'pas.yaml':382,574 'pattern':745,748 'per':105 'phase':20,88,96,107,162,250,252,275,284,294,441,459,528,534,547,568,687,700,714,730,754,766,770,791,867 'phrase':228 'pipelin':51,63 'platform':115,494 'play':385 'png':437,466,542 'pngs':629,713 'posit':179,185 'post':489 'post-process':488 'prerequisit':124 'present':230 'preview':493 'preview.gif':593 'principl':832 'proceed':157,279,686 'process':490 'produc':35 'product':18,62,883 'progress':872 'project':377,381,387,391,398,571,573,575,577,579,582,586 'provid':712 'publish':37,887 'qualiti':347,873 'quick':475 'ratio':647 're':721,795 're-export':720 're-us':794 'read':176,298,821 'recip':31,86,636 'recommend':149,681 'recoveri':672 'reject':690 'respect':787 'retri':727,738 'reusabl':594 'review':408 'revis':691 'run':504,763 'runaway':869 'script':68,90,95,106,164,192,216,233,248,333,356,365,533,608,659,666,689,692,889 'script-to-design':364 'select':184,209,411,419,432,472,498,537,550,789 'sequenc':843 'set':318 'signatur':227 'singl':42 'skill':5,57,74,132,142,168,258,344,447,597,677,816,825,833,836,848 'skill-tiktok-slideshow' 'skill.md':822,827,838 'skip':283,750 'slice':463 'slide':335,469,588,669,709 'slideshow':3,17,623 'solut':203,397 'source-moizibnyousaf' 'spawn':349 'spec':116,240,290,302,309,330,371,373,806,854 'specif':269 'standalon':604 'star':201,395 'star-story-solut':200,394 'start':126,874 'stat':205,404 'stat-flip':204,403 'statflip.yaml':399,580 'stop':680,768 'stori':202,396 'story.yaml':392,578 'storytel':195 'sub':131,141,676,815 'sub-skil':130,140,675,814 'teach':839 'tell':145 'thumbnail':491 'thumbnail.png':592 'tier':473,485,552,590,741 'tiktok':2,16,38,49,61,117 'tiktok-slideshow':1 'tone':224 'topic-agent-skills' 'topic-ai-agents' 'topic-ai-marketing' 'topic-brand-memory' 'topic-brand-voice' 'topic-claude-code' 'topic-claude-code-skills' 'topic-cli' 'topic-cmo' 'topic-marketing-automation' 'topic-marketing-cli' 'topic-seo' 'typograph':379 'ui':440,546,725 'unavail':704 'uniqu':332,810 'updat':151,683 'upgrad':879 'use':193,217,315,605,796 'user':147,183,207,245,358,407,430,471,500,517,530,536,549,562,694,711,719,758,783,788 'v1':474,740,876 'v1.5':476 'v2':478,881 'variat':433,539,583,587 'verifi':127,878 'version':894 'via':817 'video':39,72,109,112,443,482,505,513,520,551,626,649,728,732 'visual':102,312,374,619,799,811 'vocabulari':225 'voic':181,220 'wait':756 'want':785 'without':158,767 'work':80,601 'workflow':161,174,264,453 'write':237,423 'yaml':241,303,425,457,858 'youtub':614","prices":[{"id":"22ee3774-e4db-4d5f-afd2-95514add85b5","listingId":"450d6d8e-c504-4689-a4d4-935802215d96","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"MoizIbnYousaf","category":"marketing-cli","install_from":"skills.sh"},"createdAt":"2026-05-04T19:06:16.730Z"}],"sources":[{"listingId":"450d6d8e-c504-4689-a4d4-935802215d96","source":"github","sourceId":"MoizIbnYousaf/marketing-cli/tiktok-slideshow","sourceUrl":"https://github.com/MoizIbnYousaf/marketing-cli/tree/main/skills/tiktok-slideshow","isPrimary":false,"firstSeenAt":"2026-05-04T19:06:16.730Z","lastSeenAt":"2026-05-18T19:05:52.931Z"}],"details":{"listingId":"450d6d8e-c504-4689-a4d4-935802215d96","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"MoizIbnYousaf","slug":"tiktok-slideshow","github":{"repo":"MoizIbnYousaf/marketing-cli","stars":18,"topics":["agent-skills","ai-agents","ai-marketing","brand-memory","brand-voice","claude-code","claude-code-skills","cli","cmo","marketing-automation","marketing-cli","seo","skills-sh","typescript"],"license":"mit","html_url":"https://github.com/MoizIbnYousaf/marketing-cli","pushed_at":"2026-05-13T21:06:05Z","description":"Agent-native marketing cli: 51 skills, 5 research agents, brand memory that compounds, plus a local Studio dashboard (beta). single agent-native cli, then /cmo in ur coding agent..","skill_md_sha":"ca7832d6958d7b34db4184216ea9e03768571dc1","skill_md_path":"skills/tiktok-slideshow/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/MoizIbnYousaf/marketing-cli/tree/main/skills/tiktok-slideshow"},"layout":"multi","source":"github","category":"marketing-cli","frontmatter":{"name":"tiktok-slideshow","description":"Orchestrator skill that chains /slideshow-script → /paper-marketing → /video-content for end-to-end TikTok slideshow production. Each phase is an independent Lego block — this orchestrator is just one recipe that combines them. Produces 5 publishable TikTok videos from a single positioning angle. Triggers on \"TikTok slideshow\", \"TikTok video\", \"make TikTok\", \"slideshow video\", \"TikTok content\"."},"skills_sh_url":"https://skills.sh/MoizIbnYousaf/marketing-cli/tiktok-slideshow"},"updatedAt":"2026-05-18T19:05:52.931Z"}}