{"id":"c4039e3a-79a2-4bf6-8520-2682cd91a797","shortId":"4pU7KK","kind":"skill","title":"baoyu-slide-deck","tagline":"Generates professional slide deck images from content. Creates outlines with style instructions, then generates individual slide images. Use when user asks to \"create slides\", \"make a presentation\", \"generate deck\", \"slide deck\", or \"PPT\".","description":"# Slide Deck Generator\n\nTransform content into professional slide deck images. The deck is designed for **reading and sharing** (self-explanatory slides, logical scroll flow, social-media-friendly) rather than live presentation — that assumption drives every layout and density decision below.\n\n## User Input Tools\n\nWhen this skill prompts the user, follow this tool-selection rule (priority order):\n\n1. **Prefer built-in user-input tools** exposed by the current agent runtime — e.g., `AskUserQuestion`, `request_user_input`, `clarify`, `ask_user`, or any equivalent.\n2. **Fallback**: if no such tool exists, emit a numbered plain-text message and ask the user to reply with the chosen number/answer for each question.\n3. **Batching**: if the tool supports multiple questions per call, combine all applicable questions into a single call; if only single-question, ask them one at a time in priority order.\n\nConcrete `AskUserQuestion` references below are examples — substitute the local equivalent in other runtimes.\n\n## Image Generation Tools\n\nWhen this skill needs to render an image, resolve the backend in this order:\n\n1. **Current-request override** — if the user names a specific backend in the current message, use it.\n2. **Saved preference** — if `EXTEND.md` sets `preferred_image_backend` to a backend available right now, use it.\n3. **Auto-select** (when the preference is `auto`, unset, or the pinned backend isn't available):\n   - If the current runtime exposes a native image tool (e.g., Codex `imagegen`, Hermes `image_generate`), use it. Runtime-native tools are preferred by default — agents that know their own tool inventory should surface the native one here.\n   - Otherwise, if exactly one non-native backend is installed (e.g., `baoyu-imagine`), use it.\n   - Otherwise (multiple non-native backends with no runtime-native tool), ask the user once — batch with any other initial questions.\n4. **If none are available**, tell the user and ask how to proceed.\n\nSetting `preferred_image_backend: ask` forces the step-3 prompt every run regardless of available backends. Users change the pinned backend via the `## Changing Preferences` section below.\n\n**Prompt file requirement (hard)**: write each image's full, final prompt to a standalone file under `prompts/` (naming: `NN-slide-[slug].md`) BEFORE invoking any backend. The file is the reproducibility record and lets you switch backends without regenerating prompts.\n\nConcrete tool names (`imagegen`, `image_generate`, `baoyu-imagine`) above are examples — substitute the local equivalents under the same rule.\n\n## Confirmation Policy\n\nDefault behavior: **confirm before generation**.\n\n- Treat explicit skill invocation, a file path, matched signals/presets, and `EXTEND.md` defaults as **recommendation inputs only**. None of them authorizes skipping confirmation.\n- Do **not** start Step 3 or later until the user completes Step 2.\n- Skip confirmation only when the current request explicitly says to do so, for example: \"直接生成\", \"不用确认\", \"跳过确认\", \"按默认出幻灯片\", or equivalent wording.\n- If confirmation is skipped explicitly, state the assumed style / audience / slide-count / language / backend in the next user-facing update before generating.\n\n## Language\n\nRespond in the user's language across questions, progress reports, error messages, and the completion summary. Keep technical tokens (style names, file paths, code) in English.\n\n## Script Directory\n\n`{baseDir}` = this SKILL.md's directory. Resolve `${BUN_X}`: prefer `bun`; else `npx -y bun`; else suggest `brew install oven-sh/bun/bun`.\n\n| Script | Purpose |\n|--------|---------|\n| `scripts/merge-to-pptx.ts` | Merge slides into PowerPoint |\n| `scripts/merge-to-pdf.ts` | Merge slides into PDF |\n\n## Options\n\n| Option | Description |\n|--------|-------------|\n| `--style <name>` | Preset (see Presets below), `custom`, or custom style name |\n| `--audience <type>` | beginners / intermediate / experts / executives / general |\n| `--lang <code>` | Output language (en, zh, ja, ...) |\n| `--slides <N>` | Target slide count (8-25 recommended, max 30) |\n| `--ref <files...>` | Reference images applied per slide (style / palette / composition / subject) |\n| `--outline-only` | Stop after outline |\n| `--prompts-only` | Stop after prompts (skip image generation) |\n| `--images-only` | Skip to Step 7; requires existing `prompts/` |\n| `--regenerate <N>` | Regenerate specific slide(s): `3` or `2,5,8` |\n\n## Style System\n\n17 presets covering technical / educational / lifestyle / editorial use cases. Every preset is a combination of four dimensions (texture / mood / typography / density). If the user picks \"Custom dimensions\" in Round 1, Round 2 of the confirmation asks one question per dimension — options and verbatim copy live in `references/confirmation.md`.\n\n### Presets (17)\n\n| Preset | Dimensions | Best For |\n|--------|------------|----------|\n| `blueprint` (Default) | grid + cool + technical + balanced | Architecture, system design |\n| `chalkboard` | organic + warm + handwritten + balanced | Education, tutorials |\n| `corporate` | clean + professional + geometric + balanced | Investor decks, proposals |\n| `minimal` | clean + neutral + geometric + minimal | Executive briefings |\n| `sketch-notes` | organic + warm + handwritten + balanced | Educational, tutorials |\n| `hand-drawn-edu` | organic + macaron + handwritten + balanced | Educational diagrams, process explainers |\n| `watercolor` | organic + warm + humanist + minimal | Lifestyle, wellness |\n| `dark-atmospheric` | clean + dark + editorial + balanced | Entertainment, gaming |\n| `notion` | clean + neutral + geometric + dense | Product demos, SaaS |\n| `bold-editorial` | clean + vibrant + editorial + balanced | Product launches, keynotes |\n| `editorial-infographic` | clean + cool + editorial + dense | Tech explainers, research |\n| `fantasy-animation` | organic + vibrant + handwritten + minimal | Educational storytelling |\n| `intuition-machine` | clean + cool + technical + dense | Technical docs, academic |\n| `pixel-art` | pixel + vibrant + technical + balanced | Gaming, developer talks |\n| `scientific` | clean + cool + technical + dense | Biology, chemistry, medical |\n| `vector-illustration` | clean + vibrant + humanist + balanced | Creative, children's content |\n| `vintage` | paper + warm + editorial + balanced | Historical, heritage |\n\nPer-preset specs: `references/styles/<preset>.md`. Preset → dimension mapping: `references/dimensions/presets.md`.\n\n### Dimensions (when \"Custom dimensions\" picked)\n\n| Dimension | Options | Purpose |\n|-----------|---------|---------|\n| **Texture** | clean, grid, organic, pixel, paper | Background treatment |\n| **Mood** | professional, warm, cool, vibrant, dark, neutral, macaron | Color temperature |\n| **Typography** | geometric, humanist, handwritten, editorial, technical | Headline/body styling |\n| **Density** | minimal, balanced, dense | Information per slide |\n\nFull per-dimension specs: `references/dimensions/*.md`.\n\n### Auto-Selection\n\nMatch content signals to a preset. Pick the first row whose signal keywords appear in the source; fall back to `blueprint` if nothing matches.\n\n| Signals in source | Preset |\n|-------------------|--------|\n| tutorial, learn, education, guide, beginner | `sketch-notes` |\n| hand-drawn, infographic, diagram, process, onboarding | `hand-drawn-edu` |\n| classroom, teaching, school, chalkboard | `chalkboard` |\n| architecture, system, data, analysis, technical | `blueprint` |\n| creative, children, kids, cute | `vector-illustration` |\n| briefing, academic, research, bilingual | `intuition-machine` |\n| executive, minimal, clean, simple | `minimal` |\n| saas, product, dashboard, metrics | `notion` |\n| investor, quarterly, business, corporate | `corporate` |\n| launch, marketing, keynote, magazine | `bold-editorial` |\n| entertainment, music, gaming, atmospheric | `dark-atmospheric` |\n| explainer, journalism, science communication | `editorial-infographic` |\n| story, fantasy, animation, magical | `fantasy-animation` |\n| gaming, retro, pixel, developer | `pixel-art` |\n| biology, chemistry, medical, scientific | `scientific` |\n| history, heritage, vintage, expedition | `vintage` |\n| lifestyle, wellness, travel, artistic | `watercolor` |\n\n### Slide Count Heuristic\n\n| Source length | Recommended slides |\n|---------------|--------------------|\n| < 1000 words | 5-10 |\n| 1000-3000 words | 10-18 |\n| 3000-5000 words | 15-25 |\n| > 5000 words | 20-30 (consider splitting) |\n\n## Reference Images\n\nUsers may supply reference images to guide style, palette, layout, or subject.\n\n**Intake**: Accept via `--ref <files...>` or when the user provides file paths / pastes images in conversation.\n- File path → copy to `{slide-deck-dir}/refs/NN-ref-{slug}.{ext}`\n- Pasted image with no path → ask for the path, or extract style traits verbally as a text fallback\n\n**Usage modes** (per reference):\n\n| Usage | Effect |\n|-------|--------|\n| `direct` | Pass the file to the backend as a reference image for each slide |\n| `style` | Extract style traits (line treatment, texture, mood) and append to every slide's prompt body |\n| `palette` | Extract hex colors and append to every slide's prompt body |\n\nRecord refs in each slide's prompt frontmatter:\n\n```yaml\nreferences:\n  - ref_id: 01\n    filename: 01-ref-brand.png\n    usage: direct\n```\n\nAt generation time, verify files exist. If `usage: direct` and the backend accepts refs (e.g., `baoyu-imagine --ref`), pass the file on every slide. Otherwise embed extracted `style`/`palette` traits in the prompt text.\n\n## File Layout\n\n```\nslide-deck/{topic-slug}/\n├── source-{slug}.{ext}\n├── outline.md\n├── prompts/NN-slide-{slug}.md\n├── NN-slide-{slug}.png\n├── {topic-slug}.pptx\n└── {topic-slug}.pdf\n```\n\n**Slug**: 2-4 words, kebab-case, extracted from topic. \"Introduction to Machine Learning\" → `intro-machine-learning`.\n\n**Backup rule** (applies across steps): if a file about to be written already exists, rename it to `<name>-backup-YYYYMMDD-HHMMSS.<ext>` before writing the new one. This protects user edits and enables rollback.\n\n## Workflow\n\nCopy this checklist and check off items as you complete them:\n\n```\n- [ ] Step 1: Setup & analyze\n- [ ] Step 2: Confirmation ⚠️ REQUIRED (Round 1; Round 2 only if \"Custom dimensions\")\n- [ ] Step 3: Generate outline\n- [ ] Step 4: Review outline (conditional)\n- [ ] Step 5: Generate prompts\n- [ ] Step 6: Review prompts (conditional)\n- [ ] Step 7: Generate images\n- [ ] Step 8: Merge to PPTX/PDF\n- [ ] Step 9: Output summary\n```\n\n### Step 1: Setup & Analyze\n\n**1.1 Load EXTEND.md** — check these paths in order; first hit wins:\n\n| Path | Scope |\n|------|-------|\n| `.baoyu-skills/baoyu-slide-deck/EXTEND.md` | Project |\n| `${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-slide-deck/EXTEND.md` | XDG |\n| `$HOME/.baoyu-skills/baoyu-slide-deck/EXTEND.md` | User home |\n\nIf found, read, parse, and print a summary (style / audience / language / review). If not, proceed with defaults — first-time setup is not blocking for this skill. Schema: `references/config/preferences-schema.md`.\n\n**1.2 Analyze content** — follow `references/analysis-framework.md`: classify content, detect language, note signals for style selection, estimate slide count from length (see the **Slide Count Heuristic** in Style System above), generate topic slug. Save source as `source.md` (honor backup rule if one exists).\n\n**1.3 Check existing output** ⚠️ REQUIRED before Step 2. If `slide-deck/{topic-slug}/` exists, ask how to proceed — four options (regenerate outline / regenerate images / backup and regenerate / exit), verbatim copy in `references/confirmation.md`.\n\nSave findings to `analysis.md`: topic, audience, signals, recommended style and slide count, language detection.\n\n### Step 2: Confirmation ⚠️ REQUIRED\n\n**Hard gate**: this step is mandatory per the [Confirmation Policy](#confirmation-policy) — Steps 3+ cannot start until the user confirms here (or explicitly opts out with \"直接生成\" / equivalent wording in the current request).\n\n**Round 1 (always)** — batch five questions in one `AskUserQuestion` call: style, audience, slide count, review-outline?, review-prompts?. Verbatim options in `references/confirmation.md`.\n\nSummary displayed before the questions:\n- Content type + topic\n- Detected language\n- Recommended style (based on signals)\n- Recommended slide count (based on length)\n\n**Round 2 (only if \"Custom dimensions\" in Round 1)** — batch four questions: texture, mood, typography, density. Verbatim options in `references/confirmation.md`. The four answers replace the preset.\n\n**After confirmation**: update `analysis.md` with final choices and store `skip_outline_review` / `skip_prompt_review` flags from Q4/Q5.\n\n### Step 3: Generate Outline\n\nResolve style: preset → `references/styles/{preset}.md`; custom dimensions → combine files in `references/dimensions/`. Build `STYLE_INSTRUCTIONS` from the resolved style, apply confirmed audience + language + slide count, follow `references/outline-template.md`, and save as `outline.md`.\n\nStop here if `--outline-only`. Skip Step 4 if `skip_outline_review`.\n\n### Step 4: Review Outline (Conditional)\n\nDisplay a slide-by-slide table (`# | Title | Type | Layout`) along with total count and resolved style. Ask: proceed / edit outline first / regenerate — verbatim in `references/confirmation.md`.\n\nOn \"Edit outline first\", tell the user to edit `outline.md` and ask again when ready. On \"Regenerate outline\", return to Step 3.\n\n### Step 5: Generate Prompts\n\nFor each slide in outline:\n1. Read `references/base-prompt.md`\n2. Extract `STYLE_INSTRUCTIONS` from the outline (don't re-read the style file)\n3. Add the slide's content\n4. If a `Layout:` is specified, include guidance from `references/layouts.md`\n5. Save to `prompts/NN-slide-{slug}.md` (backup rule applies)\n\nStop here if `--prompts-only`. Skip Step 6 if `skip_prompt_review`.\n\n### Step 6: Review Prompts (Conditional)\n\nDisplay the prompts index (`# | Filename | Slide Title`) and ask: proceed / edit prompts first / regenerate — verbatim in `references/confirmation.md`. Branches mirror Step 4.\n\n### Step 7: Generate Images\n\n1. Resolve the image backend via the Image Generation Tools rule at the top — ask once if multiple are installed.\n2. Confirm every `prompts/NN-slide-{slug}.md` exists (hard requirement; prompt files are the reproducibility record regardless of backend).\n3. Session ID: `slides-{topic-slug}-{timestamp}` — pass to the backend only if it supports sessions.\n4. For each slide: generate sequentially, reusing the session ID. Backup rule applies to PNG files. Report progress as `Generated X/N`. Auto-retry once on failure before reporting an error.\n\n`--regenerate N` jumps to this step for the named slides only. `--images-only` starts here with existing prompts.\n\n### Step 8: Merge\n\n```bash\n${BUN_X} {baseDir}/scripts/merge-to-pptx.ts <slide-deck-dir>\n${BUN_X} {baseDir}/scripts/merge-to-pdf.ts <slide-deck-dir>\n```\n\n### Step 9: Summary\n\n```\nSlide Deck Complete!\nTopic: [topic]\nStyle: [preset or \"custom: texture+mood+typography+density\"]\nLocation: [directory]\nSlides: N\n\n- 01-slide-cover.png\n- ...\n- NN-slide-back-cover.png\n\nOutline: outline.md\nPPTX: {topic-slug}.pptx\nPDF: {topic-slug}.pdf\n```\n\n## Slide Modification\n\n| Action | How |\n|--------|-----|\n| Edit | Update `prompts/NN-slide-{slug}.md` **first**, then `--regenerate N` |\n| Add | Create new prompt at position, generate image, renumber subsequent `NN` (slugs unchanged), update `outline.md`, re-merge |\n| Delete | Remove PNG + prompt, renumber subsequent, update `outline.md`, re-merge |\n\nAlways update the prompt file before regenerating the image — this keeps the prompts directory as the source of truth and makes changes reproducible. Only `NN` changes on renumber; slugs stay stable so references remain valid.\n\nSee `references/modification-guide.md` for full details.\n\n## References\n\n| File | Content |\n|------|---------|\n| `references/confirmation.md` | Verbatim AskUserQuestion option copy for every confirmation |\n| `references/analysis-framework.md` | Content analysis framework |\n| `references/outline-template.md` | Outline structure |\n| `references/base-prompt.md` | Base prompt body for image generation |\n| `references/layouts.md` | Layout options |\n| `references/design-guidelines.md` | Audience, typography, color selection |\n| `references/content-rules.md` | Content guidelines |\n| `references/modification-guide.md` | Edit/add/delete workflows |\n| `references/styles/<preset>.md` | Per-preset specifications |\n| `references/dimensions/*.md` | Per-dimension specifications |\n| `references/config/preferences-schema.md` | EXTEND.md schema |\n\n## Notes\n\n- Image generation takes ~10-30s per slide; report progress between them.\n- For sensitive public figures, prefer stylized alternatives to avoid likeness issues.\n- Maintain visual consistency via the session ID when the backend supports it.\n\n## Changing Preferences\n\nEXTEND.md lives at the first matching path listed in Step 1.1. Two ways to change it:\n\n- **Edit directly** — open EXTEND.md and change fields. Full schema: `references/config/preferences-schema.md`.\n- **Common one-line edits**:\n  - `preferred_image_backend: auto` — default; runtime-native tool wins, falls back to the only installed backend, asks only if multiple non-native are present.\n  - `preferred_image_backend: codex-imagegen` — pin to Codex's built-in.\n  - `preferred_image_backend: baoyu-imagine` — pin to the baoyu-imagine skill.\n  - `preferred_image_backend: ask` — confirm backend every run.\n  - `preferred_style: blueprint`, `preferred_audience: experts`, `language: zh`.","tags":["baoyu","slide","deck","skills","jimliu","agent-skills","claude-skills","codex-skills","openclaw-skills"],"capabilities":["skill","source-jimliu","skill-baoyu-slide-deck","topic-agent-skills","topic-claude-skills","topic-codex-skills","topic-openclaw-skills"],"categories":["baoyu-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/JimLiu/baoyu-skills/baoyu-slide-deck","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add JimLiu/baoyu-skills","source_repo":"https://github.com/JimLiu/baoyu-skills","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 16958 github stars · SKILL.md body (17,595 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-03T00:52:27.839Z","embedding":null,"createdAt":"2026-04-18T21:53:36.489Z","updatedAt":"2026-05-03T00:52:27.839Z","lastSeenAt":"2026-05-03T00:52:27.839Z","tsv":"'-10':1084 '-18':1089 '-25':621,1094 '-3':361 '-30':1098,2161 '-3000':1086 '-4':1289 '-5000':1091 '/baoyu-skills/baoyu-slide-deck/extend.md':1423 '/baoyu-slide-deck/extend.md':1417 '/bun/bun':578 '/refs/nn-ref-':1138 '/scripts/merge-to-pdf.ts':1985 '/scripts/merge-to-pptx.ts':1981 '01':1219 '01-ref-brand.png':1221 '01-slide-cover.png':2006 '1':97,212,701,1351,1359,1398,1585,1637,1783,1869 '1.1':1401,2204 '1.2':1457 '1.3':1498 '10':1088,2160 '1000':1081,1085 '15':1093 '17':672,720 '2':123,230,482,667,703,1288,1355,1361,1505,1547,1630,1786,1889 '20':1097 '3':150,247,474,665,1367,1564,1674,1773,1801,1907 '30':624 '3000':1090 '4':340,1371,1716,1722,1807,1864,1924 '5':668,1083,1376,1775,1817 '5000':1095 '6':1380,1834,1840 '7':656,1385,1866 '8':620,669,1389,1975 '9':1394,1987 'academ':839,1003 'accept':1116,1236 'across':535,1308 'action':2022 'add':1802,2033 'agent':110,289 'along':1736 'alreadi':1317 'altern':2175 'alway':1586,2062 'analysi':992,2115 'analysis.md':1535,1658 'analyz':1353,1400,1458 'anim':823,1047,1051 'answer':1651 'appear':950 'append':1188,1200 'appli':628,1307,1696,1825,1936 'applic':162 'architectur':731,989 'art':842,1058 'artist':1072 'ask':25,118,138,173,330,349,357,707,1146,1514,1743,1763,1852,1883,2242,2280 'askuserquest':113,183,1592,2107 'assum':511 'assumpt':72 'atmospher':786,1034,1037 'audienc':513,604,1437,1537,1595,1698,2131,2289 'author':467 'auto':249,255,935,1946,2228 'auto-retri':1945 'auto-select':248,934 'avail':242,263,344,367 'avoid':2177 'back':955,2236 'backend':208,223,238,241,260,309,323,356,368,373,406,417,518,1171,1235,1873,1906,1918,2189,2227,2241,2253,2266,2279,2282 'background':900 'backup':1305,1323,1493,1524,1823,1934 'backup-yyyymmdd-hhmmss':1322 'balanc':730,738,745,762,772,790,807,846,864,873,922 'baoyu':2,314,428,1240,1415,2268,2274 'baoyu-imagin':313,427,1239,2267,2273 'baoyu-skil':1414 'baoyu-slide-deck':1 'base':1620,1626,2121 'basedir':557,1980,1984 'bash':1977 'batch':151,334,1587,1638 'beginn':605,969 'behavior':444 'best':723 'bilingu':1005 'biolog':855,1059 'block':1451 'blueprint':725,957,994,2287 'bodi':1194,1206,2123 'bold':802,1029 'bold-editori':801,1028 'branch':1861 'brew':573 'brief':755,1002 'build':1689 'built':100,2262 'built-in':99,2261 'bun':563,566,570,1978,1982 'busi':1021 'call':159,167,1593 'cannot':1565 'case':680,1293 'chalkboard':734,987,988 'chang':370,376,2083,2087,2192,2208,2215 'check':1343,1404,1499 'checklist':1341 'chemistri':856,1060 'children':866,996 'choic':1661 'chosen':145 'clarifi':117 'classifi':1462 'classroom':984 'clean':742,750,787,794,804,814,833,851,861,895,1011 'code':552 'codex':274,2255,2259 'codex-imagegen':2254 'color':910,1198,2133 'combin':160,685,1685 'common':2220 'communic':1041 'complet':480,543,1348,1991 'composit':633 'concret':182,421 'condit':1374,1383,1725,1843 'config':1420 'confirm':441,445,469,484,505,706,1356,1548,1558,1561,1570,1656,1697,1890,2112,2281 'confirmation-polici':1560 'consid':1099 'consist':2182 'content':11,42,868,938,1459,1463,1613,1806,2104,2114,2136 'convers':1129 'cool':728,815,834,852,905 'copi':715,1132,1339,1529,2109 'corpor':741,1022,1023 'count':516,619,1075,1473,1479,1543,1597,1625,1701,1739 'cover':674 'creat':12,27,2034 'creativ':865,995 'current':109,214,226,266,488,1582 'current-request':213 'custom':599,601,697,888,1364,1633,1683,1997 'cute':998 'dark':785,788,907,1036 'dark-atmospher':784,1035 'dashboard':1016 'data':991 'decis':78 'deck':4,8,33,35,39,46,49,747,1136,1263,1509,1990 'default':288,443,459,726,1444,2229 'delet':2051 'demo':799 'dens':797,817,836,854,923 'densiti':77,692,920,1644,2001 'descript':593 'design':51,733 'detail':2101 'detect':1464,1545,1616 'develop':848,1055 'diagram':774,977 'dimens':688,698,711,722,883,886,889,891,930,1365,1634,1684,2151 'dir':1137 'direct':1165,1223,1232,2211 'directori':556,561,2003,2075 'display':1609,1726,1844 'doc':838 'drawn':767,975,982 'drive':73 'e.g':112,273,312,1238 'edit':1334,1745,1753,1760,1854,2024,2210,2224 'edit/add/delete':2139 'editori':678,789,803,806,812,816,872,916,1030,1043 'editorial-infograph':811,1042 'edu':768,983 'educ':676,739,763,773,828,967 'effect':1164 'els':567,571 'emb':1250 'emit':130 'en':613 'enabl':1336 'english':554 'entertain':791,1031 'equival':122,191,436,502,1578 'error':539,1954 'estim':1471 'everi':74,363,681,1190,1202,1247,1891,2111,2283 'exact':304 'exampl':187,432,496 'execut':608,754,1009 'exist':129,658,1229,1318,1497,1500,1513,1895,1972 'exit':1527 'expedit':1067 'expert':607,2290 'explain':776,819,1038 'explanatori':58 'explicit':449,490,508,1573 'expos':106,268 'ext':1140,1269 'extend.md':234,458,1403,2154,2194,2213 'extract':1151,1180,1196,1251,1294,1787 'face':524 'failur':1950 'fall':954,2235 'fallback':124,1158 'fantasi':822,1046,1050 'fantasy-anim':821,1049 'field':2216 'figur':2172 'file':381,394,408,453,550,1124,1130,1168,1228,1245,1259,1312,1686,1800,1899,1939,2066,2103 'filenam':1220,1848 'final':389,1660 'find':1533 'first':945,1409,1446,1747,1755,1856,2029,2198 'first-tim':1445 'five':1588 'flag':1670 'flow':62 'follow':89,1460,1702 'forc':358 'found':1429 'four':687,1518,1639,1650 'framework':2116 'friend':66 'frontmatt':1214 'full':388,927,2100,2217 'game':792,847,1033,1052 'gate':1551 'general':609 'generat':5,18,32,40,196,278,426,447,527,649,1225,1368,1377,1386,1485,1675,1776,1867,1877,1928,1943,2039,2126,2158 'geometr':744,752,796,913 'grid':727,896 'guid':968,1109 'guidanc':1814 'guidelin':2137 'hand':766,974,981 'hand-drawn':973 'hand-drawn-edu':765,980 'handwritten':737,761,771,826,915 'hard':383,1550,1896 'headline/body':918 'heritag':875,1065 'herm':276 'heurist':1076,1480 'hex':1197 'hhmmss':1325 'histor':874 'histori':1064 'hit':1410 'home':1421,1427 'home/.baoyu-skills/baoyu-slide-deck/extend.md':1425 'home/.config':1422 'honor':1492 'humanist':780,863,914 'id':1218,1909,1933,2186 'illustr':860,1001 'imag':9,21,47,195,205,237,271,277,355,386,425,627,648,651,1102,1107,1127,1142,1175,1387,1523,1868,1872,1876,1967,2040,2070,2125,2157,2226,2252,2265,2278 'imagegen':275,424,2256 'images-on':650,1966 'imagin':315,429,1241,2269,2275 'includ':1813 'index':1847 'individu':19 'infograph':813,976,1044 'inform':924 'initi':338 'input':81,104,116,462 'instal':311,574,1888,2240 'instruct':16,1691,1789 'intak':1115 'intermedi':606 'intro':1302 'intro-machine-learn':1301 'introduct':1297 'intuit':831,1007 'intuition-machin':830,1006 'inventori':295 'investor':746,1019 'invoc':451 'invok':404 'isn':261 'issu':2179 'item':1345 'ja':615 'journal':1039 'jump':1957 'kebab':1292 'kebab-cas':1291 'keep':545,2072 'keynot':810,1026 'keyword':949 'kid':997 'know':291 'lang':610 'languag':517,528,534,612,1438,1465,1544,1617,1699,2291 'later':476 'launch':809,1024 'layout':75,1112,1260,1735,1810,2128 'learn':966,1300,1304 'length':1078,1475,1628 'let':414 'lifestyl':677,782,1069 'like':2178 'line':1183,2223 'list':2201 'live':69,716,2195 'load':1402 'local':190,435 'locat':2002 'logic':60 'macaron':770,909 'machin':832,1008,1299,1303 'magazin':1027 'magic':1048 'maintain':2180 'make':29,2082 'mandatori':1555 'map':884 'market':1025 'match':455,937,960,2199 'max':623 'may':1104 'md':402,881,933,1273,1682,1822,1894,2028,2142,2148 'media':65 'medic':857,1061 'merg':582,587,1390,1976,2050,2061 'messag':136,227,540 'metric':1017 'minim':749,753,781,827,921,1010,1013 'mirror':1862 'mode':1160 'modif':2021 'mood':690,902,1186,1642,1999 'multipl':156,319,1886,2245 'music':1032 'n':1956,2005,2032 'name':220,397,423,549,603,1963 'nativ':270,283,299,308,322,328,2232,2248 'need':201 'neutral':751,795,908 'new':1329,2035 'next':521 'nn':399,1275,2043,2086 'nn-slide':398,1274 'nn-slide-back-cover.png':2007 'non':307,321,2247 'non-nat':306,320,2246 'none':342,464 'note':758,972,1466,2156 'noth':959 'notion':793,1018 'npx':568 'number':132 'number/answer':146 'onboard':979 'one':175,300,305,708,1330,1496,1591,2222 'one-lin':2221 'open':2212 'opt':1574 'option':591,592,712,892,1519,1605,1646,2108,2129 'order':96,181,211,1408 'organ':735,759,769,778,824,897 'otherwis':302,318,1249 'outlin':13,636,640,1369,1373,1521,1600,1665,1676,1712,1719,1724,1746,1754,1769,1782,1792,2008,2118 'outline-on':635,1711 'outline.md':1270,1707,1761,2009,2047,2058 'output':611,1395,1501 'oven':576 'oven-sh':575 'overrid':216 'palett':632,1111,1195,1253 'paper':870,899 'pars':1431 'pass':1166,1243,1915 'past':1126,1141 'path':454,551,1125,1131,1145,1149,1406,1412,2200 'pdf':590,1286,2015,2019 'per':158,629,710,877,925,929,1161,1556,2144,2150,2163 'per-dimens':928,2149 'per-preset':876,2143 'pick':696,890,943 'pin':259,372,2257,2270 'pixel':841,843,898,1054,1057 'pixel-art':840,1056 'plain':134 'plain-text':133 'png':1278,1938,2053 'polici':442,1559,1562 'posit':2038 'powerpoint':585 'ppt':37 'pptx':1282,2010,2014 'pptx/pdf':1392 'prefer':98,232,236,253,286,354,377,565,2173,2193,2225,2251,2264,2277,2285,2288 'present':31,70,2250 'preset':595,597,673,682,719,721,878,882,942,964,1654,1679,1681,1995,2145 'print':1433 'prioriti':95,180 'proceed':352,1442,1517,1744,1853 'process':775,978 'product':798,808,1015 'profession':6,44,743,903 'progress':537,1941,2166 'project':1418 'prompt':86,362,380,390,396,420,642,646,659,1193,1205,1213,1257,1378,1382,1603,1668,1777,1830,1837,1842,1846,1855,1898,1973,2036,2054,2065,2074,2122 'prompts-on':641,1829 'prompts/nn-slide-':1271,1820,1892,2026 'propos':748 'protect':1332 'provid':1123 'public':2171 'purpos':580,893 'q4/q5':1672 'quarter':1020 'question':149,157,163,172,339,536,709,1589,1612,1640 'rather':67 're':1796,2049,2060 're-merg':2048,2059 're-read':1795 'read':53,1430,1784,1797 'readi':1766 'recommend':461,622,1079,1539,1618,1623 'record':412,1207,1903 'ref':625,1118,1208,1217,1237,1242 'refer':184,626,1101,1106,1162,1174,1216,2094,2102 'references/analysis-framework.md':1461,2113 'references/base-prompt.md':1785,2120 'references/config/preferences-schema.md':1456,2153,2219 'references/confirmation.md':718,1531,1607,1648,1751,1860,2105 'references/content-rules.md':2135 'references/design-guidelines.md':2130 'references/dimensions':932,1688,2147 'references/dimensions/presets.md':885 'references/layouts.md':1816,2127 'references/modification-guide.md':2098,2138 'references/outline-template.md':1703,2117 'references/styles':880,1680,2141 'regardless':365,1904 'regener':419,660,661,1520,1522,1526,1748,1768,1857,1955,2031,2068 'remain':2095 'remov':2052 'renam':1319 'render':203 'renumb':2041,2055,2089 'replac':1652 'repli':142 'report':538,1940,1952,2165 'reproduc':411,1902,2084 'request':114,215,489,1583 'requir':382,657,1357,1502,1549,1897 'research':820,1004 'resolv':206,562,1677,1694,1741,1870 'respond':529 'retri':1947 'retro':1053 'return':1770 'reus':1930 'review':1372,1381,1439,1599,1602,1666,1669,1720,1723,1838,1841 'review-outlin':1598 'review-prompt':1601 'right':243 'rollback':1337 'round':700,702,1358,1360,1584,1629,1636 'row':946 'rule':94,440,1306,1494,1824,1879,1935 'run':364,2284 'runtim':111,194,267,282,327,2231 'runtime-n':281,326,2230 'saa':800,1014 'save':231,1488,1532,1705,1818 'say':491 'schema':1455,2155,2218 'school':986 'scienc':1040 'scientif':850,1062,1063 'scope':1413 'script':555,579 'scripts/merge-to-pdf.ts':586 'scripts/merge-to-pptx.ts':581 'scroll':61 'section':378 'see':596,1476,2097 'select':93,250,936,1470,2134 'self':57 'self-explanatori':56 'sensit':2170 'sequenti':1929 'session':1908,1923,1932,2185 'set':235,353 'setup':1352,1399,1448 'sh':577 'share':55 'signal':939,948,961,1467,1538,1622 'signals/presets':456 'simpl':1012 'singl':166,171 'single-quest':170 'sketch':757,971 'sketch-not':756,970 'skill':85,200,450,1416,1454,2276 'skill-baoyu-slide-deck' 'skill.md':559 'skip':468,483,507,647,653,1664,1667,1714,1718,1832,1836 'slide':3,7,20,28,34,38,45,59,400,515,583,588,616,618,630,663,926,1074,1080,1135,1178,1191,1203,1211,1248,1262,1276,1472,1478,1508,1542,1596,1624,1700,1729,1731,1780,1804,1849,1910,1927,1964,1989,2004,2020,2164 'slide-by-slid':1728 'slide-count':514 'slide-deck':1261,1507 'slide-deck-dir':1134 'slug':401,1139,1266,1268,1272,1277,1281,1285,1287,1487,1512,1821,1893,1913,2013,2018,2027,2044,2090 'social':64 'social-media-friend':63 'sourc':953,963,1077,1267,1489,2078 'source-jimliu' 'source.md':1491 'spec':879,931 'specif':222,662,2146,2152 'specifi':1812 'split':1100 'stabl':2092 'standalon':393 'start':472,1566,1969 'state':509 'stay':2091 'step':360,473,481,655,1309,1350,1354,1366,1370,1375,1379,1384,1388,1393,1397,1504,1546,1553,1563,1673,1715,1721,1772,1774,1833,1839,1863,1865,1960,1974,1986,2203 'stop':638,644,1708,1826 'store':1663 'stori':1045 'storytel':829 'structur':2119 'style':15,512,548,594,602,631,670,919,1110,1152,1179,1181,1252,1436,1469,1482,1540,1594,1619,1678,1690,1695,1742,1788,1799,1994,2286 'styliz':2174 'subject':634,1114 'subsequ':2042,2056 'substitut':188,433 'suggest':572 'summari':544,1396,1435,1608,1988 'suppli':1105 'support':155,1922,2190 'surfac':297 'switch':416 'system':671,732,990,1483 'tabl':1732 'take':2159 'talk':849 'target':617 'teach':985 'tech':818 'technic':546,675,729,835,837,845,853,917,993 'tell':345,1756 'temperatur':911 'text':135,1157,1258 'textur':689,894,1185,1641,1998 'time':178,1226,1447 'timestamp':1914 'titl':1733,1850 'token':547 'tool':82,92,105,128,154,197,272,284,294,329,422,1878,2233 'tool-select':91 'top':1882 'topic':1265,1280,1284,1296,1486,1511,1536,1615,1912,1992,1993,2012,2017 'topic-agent-skills' 'topic-claude-skills' 'topic-codex-skills' 'topic-openclaw-skills' 'topic-slug':1264,1279,1283,1510,1911,2011,2016 'total':1738 'trait':1153,1182,1254 'transform':41 'travel':1071 'treat':448 'treatment':901,1184 'truth':2080 'tutori':740,764,965 'two':2205 'type':1614,1734 'typographi':691,912,1643,2000,2132 'unchang':2045 'unset':256 'updat':525,1657,2025,2046,2057,2063 'usag':1159,1163,1222,1231 'use':22,228,245,279,316,679 'user':24,80,88,103,115,119,140,219,332,347,369,479,523,532,695,1103,1122,1333,1426,1569,1758 'user-fac':522 'user-input':102 'valid':2096 'vector':859,1000 'vector-illustr':858,999 'verbal':1154 'verbatim':714,1528,1604,1645,1749,1858,2106 'verifi':1227 'via':374,1117,1874,2183 'vibrant':805,825,844,862,906 'vintag':869,1066,1068 'visual':2181 'warm':736,760,779,871,904 'watercolor':777,1073 'way':2206 'well':783,1070 'whose':947 'win':1411,2234 'without':418 'word':503,1082,1087,1092,1096,1290,1579 'workflow':1338,2140 'write':384,1327 'written':1316 'x':564,1979,1983 'x/n':1944 'xdg':1419,1424 'y':569 'yaml':1215 'yyyymmdd':1324 'zh':614,2292 '不用确认':498 '按默认出幻灯片':500 '直接生成':497,1577 '跳过确认':499","prices":[{"id":"826ef850-5094-4fc3-abf5-77f262414b8a","listingId":"c4039e3a-79a2-4bf6-8520-2682cd91a797","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"JimLiu","category":"baoyu-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T21:53:36.489Z"}],"sources":[{"listingId":"c4039e3a-79a2-4bf6-8520-2682cd91a797","source":"github","sourceId":"JimLiu/baoyu-skills/baoyu-slide-deck","sourceUrl":"https://github.com/JimLiu/baoyu-skills/tree/main/skills/baoyu-slide-deck","isPrimary":false,"firstSeenAt":"2026-04-18T21:53:36.489Z","lastSeenAt":"2026-05-03T00:52:27.839Z"}],"details":{"listingId":"c4039e3a-79a2-4bf6-8520-2682cd91a797","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"JimLiu","slug":"baoyu-slide-deck","github":{"repo":"JimLiu/baoyu-skills","stars":16958,"topics":["agent-skills","claude-skills","codex-skills","openclaw-skills"],"license":null,"html_url":"https://github.com/JimLiu/baoyu-skills","pushed_at":"2026-04-25T20:03:31Z","description":null,"skill_md_sha":"783e69e27eb268278393ed2a30b5a7362140e536","skill_md_path":"skills/baoyu-slide-deck/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/JimLiu/baoyu-skills/tree/main/skills/baoyu-slide-deck"},"layout":"multi","source":"github","category":"baoyu-skills","frontmatter":{"name":"baoyu-slide-deck","description":"Generates professional slide deck images from content. Creates outlines with style instructions, then generates individual slide images. Use when user asks to \"create slides\", \"make a presentation\", \"generate deck\", \"slide deck\", or \"PPT\"."},"skills_sh_url":"https://skills.sh/JimLiu/baoyu-skills/baoyu-slide-deck"},"updatedAt":"2026-05-03T00:52:27.839Z"}}