Home / All Skills / Content & Media Creation / canghe-slide-deck
Content & Media Creation · freestylefly/canghe-skills

canghe-slide-deck

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".

L4 High-Privilege · Graded auth & full auditV1 Commit-PinnedExecute CommandNetwork AccessWrite FileDual-pass Audit
Author freestyleflyGitHub freestylefly/canghe-skills ↗License MIT(仓库根 LICENSE)Commit dd0bf35595
Control levels describe skill capabilities and suggested control measures; they do not represent quality or safety certifications, nor do they dictate usability. Usage decisions rest entirely with users and administrators. Different agent hosts apply varying constraints; do not assume hosts provide automatic protection. Third-party skill copyrights belong to their original authors. Use at your own risk.

1How It Works & Mechanism

It is a phased pipeline: Content Analysis → (Mandatory) Confirmation → Outline Generation → Prompt Generation → Image Generation → PPTX/PDF Merging; all intermediate artifacts are saved to disk, supporting resumable execution via --outline-only/--prompts-only/--images-only.

skills/canghe-slide-deck/SKILL.md
Input → Preferences → Analyze → [Check Existing?] → Confirm (1-2 rounds) → Outline → [Review Outline?] → Prompts → [Review Prompts?] → Images → Merge → Complete
What it does here: Chains a nine-step checklist into a unified pipeline with no hidden states between stages, relying entirely on disk files (outline.md/prompts//PNG/pptx/pdf) for state transitions.

Style system = 16 presets × 4 dimensions (texture/mood/typography/density) freely combined, where each preset maps to a specific set of dimension values.

skills/canghe-slide-deck/SKILL.md
| `blueprint` (Default) | grid + cool + technical + balanced | Architecture, system design |
What it does here: Provides a preset table (defaulting to blueprint) followed by dimension reference files describing the combinable value space for custom styles.

Automatically selects a style if content signals match the keyword mapping table; falls back to blueprint if no match is found.

skills/canghe-slide-deck/SKILL.md
| tutorial, learn, education, guide, beginner | `sketch-notes` |
What it does here: Encodes heuristics like "tutorial content → sketch-notes" into a table to minimize user decision overhead.

Recommends slide counts based on content length: <1000 words 5-10 slides … >5000 words 20-30 slides (with split recommended).

skills/canghe-slide-deck/SKILL.md
| > 5000 words | 20-30 (consider splitting) |
What it does here: Uses a content length → target slide count heuristic table as default recommendations during the confirmation stage.

Step 2 is a strict gate: confirmations for style, audience, slide count, outline review, and prompt review are all non-skippable.

skills/canghe-slide-deck/SKILL.md
**Step 2 confirmation required** - do not skip (style, audience, slides, outline review, prompt review)
What it does here: Re-emphasizes non-skippable confirmations in Notes as mandatory workflow checkpoints.

Preferences are loaded from EXTEND.md, checking project-level first and then user-level ($HOME).

skills/canghe-slide-deck/SKILL.md
# Check project-level first
What it does here: Uses Bash test -f to detect EXTEND.md; if found, reads and outputs a preference summary; otherwise defaults to first-time setup or fallback values.

Fixed artifact directory structure: source files, outline.md, prompts/, NN-slide-*.png, pptx, pdf.

skills/canghe-slide-deck/SKILL.md
slide-deck/{topic-slug}/
What it does here: Standardizes the file layout under slide-deck/<topic-slug>/ for seamless resumption and sharing.

Merging is handled by two local scripts: npx -y bun invoking merge-to-pptx.ts / merge-to-pdf.ts.

skills/canghe-slide-deck/SKILL.md
npx -y bun ${SKILL_DIR}/scripts/merge-to-pptx.ts <slide-deck-dir>
What it does here: The only executable parts that assemble slide images into PPTX/PDF are these two scripts, using purely local library calls.

Image generation is not implemented in this repository; instead, the agent is instructed to "select an available image generation skill" to generate images sequentially under the same session ID.

skills/canghe-slide-deck/SKILL.md
1. Select available image generation skill
What it does here: Delegates image generation across skills; prompts assembled from user content are sent to the image generation service selected at runtime.

Modification discipline: modify the prompt file first, then run --regenerate for the designated slide.

skills/canghe-slide-deck/SKILL.md
**IMPORTANT**: When updating slides, ALWAYS update the prompt file (`prompts/NN-slide-{slug}.md`) FIRST before regenerating.
What it does here: Ensures changes are traceable and reproducible, strictly prohibiting direct text overlay patching on already generated bitmaps.

2Core Capabilities

01Generate a complete slide deck image set from content/topic (including cover and closing slides)
0216 preset styles (blueprint/chalkboard/corporate/…/watercolor)
034-dimensional custom combinations (texture/mood/typography/density)
04Automatic style selection based on content signals
05Slide count recommendations based on content length
06Two rounds of interactive confirmation (Round 1 mandatory, Round 2 only for custom dimensions)
07Local merging into PPTX / PDF
08Workflows for regenerating, adding, deleting, and modifying designated slides
09Multilingual output (based on user preferences/content language)

3External Dependencies

KindDependency / Endpoint
api运行时图像生成后端(由 agent 选择『可用的图像生成 skill』完成出图,用户内容/提示词由此出网)
clibun / npx -y bun(运行合并脚本)

4Recommended Governance & Evidence

Suggested Controls for Safe Operation
For Agent Runtime
Graded/per-use authorization, sandbox recommended
For Administrators
Approval workflow, rollback support, full audit
Evidence & Triggers (File Paths & Excerpts)
  • scripts/: Executes local scripts or commands: npx -y bun ${SKILL_DIR}/scripts/merge-to-pptx.ts <slide-deck-dir> (local PPTX merge)
  • 网络端点: Declares external network access: the skill's own scripts make zero network calls (the two merge scripts perform only local file I/O and library invocations)
  • 本地工作目录: File I/O and artifact output: slide-deck/{topic-slug}/source-{slug}.{ext} and analysis.md
Audit Notes: The core purpose of this skill is to "turn user content into slide deck images," where the image generation step is delegated to a runtime-selected image generation service (Step 7 "Select available image generation skill"), sending user materials/prompts to an external generation backend—rated Orange in alignment with internal ai-image-generation and upstream counterpart baoyu-slide-deck. Its own script footprint is minimal: only two local merge scripts (merge-to-pptx.ts / merge-to-pdf.ts) and local disk operations, with no network access, no credential reading, no reverse engineering/impersonation/security downgrades/arbitrary code execution, hence not elevated to Red. Difference from upstream baoyu-slide-deck: this fork does not name specific backends (omitting mentions like Codex imagegen / Cursor GenerateImage), leaving endpoints to runtime selection, but the nature of "content exiting to an external generation service" remains unchanged.

5Second-Pass Verification

  • [ok] 自身脚本无网络、无环境变量、无 spawn — skills/canghe-slide-deck/scripts/ 只有 merge-to-pdf.ts 与 merge-to-pptx.ts;bundle 风险扫描『網路請求:無命中』『憑證/環境變數』仅命中 ${SKILL_DIR} 与 $HOME 路径。
  • [ok] 出图是跨 skill 委派而非本仓实现 — Step 7『1. Select available image generation skill』;本仓无任何图像生成脚本或端点声明。档位按『把用户素材送外部生成后端』落 orange。
  • [ok] 确认门禁措辞与位置 — Notes 与 Step 2 均标注 ⚠️ REQUIRED;Notes 重复『Step 2 confirmation required - do not skip』。
  • [ok] 合并脚本行为 — 风险扫描『寫盤/產生檔案』命中 merge-to-pdf.ts 的 Bun.write 与 merge-to-pptx.ts 的 pptx.writeFile,均为本地输出。
  • [ok] 风格/维度数量与文件结构 — §1 清单列出 16 个 references/styles/*.md、5 个 references/dimensions/*.md(含 presets.md),与 SKILL.md 表格一致。
  • [ok] 未展开文件的处理 — bundle 只展开 12 个最相关文件;base-prompt.md、design-guidelines.md 等未展开,故未对其内容下结论,仅按 §1 清单列为内部资产。
  • [ok] 档位复核 — 自身脚本面绿蓝级,但核心用途将用户内容送入运行时图像生成服务 → 按站内『生成後端類』先例判 orange;无 red 触发项(无逆向/冒充/绕过/安全降级/任意代码执行)。
  • [ok] 元数据与 commit — skill.commit 与 audit.skill_commit = dd0bf355955b4c82b764740b4183c86a72ba0e0c;license=MIT(仓库根 LICENSE),installs=null。

6Verdict & Scenarios

  • Resumable and reproducible workflow: generated prompts are written to prompts/NN-slide-*.md, designated slides can be regenerated via --regenerate, and backup rules protect against overwrites.
  • Robust style system: 16 presets + 4 dimensions + automatic selection keyword tables + slide count heuristics, organized across concise reference files loaded on demand.
  • Gated interaction with streamlined exits: mandatory confirmations by default (Step 2 five items), while supporting --outline-only/--prompts-only/--images-only for shortened runs.
  • Entirely local merging: two scripts stitch images into PPTX/PDF without network calls or credentials; artifacts are self-contained and ready to share.
  • Best for: Ideal for content creators and technical/business presenters who need to quickly turn long-form text or topics into a unified-style, shareable slide deck: requiring cohesive styling, local archiving, and reproducible prompts, while accepting external calls to image generation services.
    Not for: Not suitable for environments that prohibit outbound material transfer or enforce strict data compliance; not suitable when editable native PPT slides are required (slides are static images with uneditable text); not suitable for formal business presentations demanding pixel-perfect typography/precise text; and not suitable for runtime environments lacking an available image generation skill.
    Install Agent-Ready
    ① Verified Mirror 2026-10-10
    Option A · Direct DownloadDownload canghe-slide-deck.tar.gz
    sha256: 5efda196172fff6e…
    Option B · Copy Guide for Agent
    install.json
    Agents automatically download and verify mirrors from this JSON guide.
    ② Upstream GitHub
    GitHub Repo ↗
    Pinned to commit dd0bf35595.