Convert a source into a presentable, editable, and verifiable PPT media package. The default official master iseditable .pptx; visual assets, infographics, and the NotebookLM deck are used to enhance understanding and presentation, not to replace content editability.
Customer-readable description
What this skill can do
| Artifact | Default role | Delivery requirements |
|---|---|---|
| Editable PPTX | Official master | Text, structure, and main graphics are modifiable; fully covers the source main line |
| Cover image / illustration / background | PPT visual assets | No dense Chinese text; generated by imagegen or equivalent image capability |
| Infographic / long image | Standalone communication asset, optional | Chinese text is typeset by HTML/CSS or PPT; the image model only provides visual components |
| NotebookLM PPTX | Visual comparison version, optional | source-grounded; clearly marked as usually one image per page and not easily editable |
| Preview and QA | Acceptance evidence | Render all pages, montage, overflow check, manual page-by-page review |
media-manifest.json |
Generation manifest | Record source, provider, expected files, and actual verification; do not write login credentials |
When the user only says "PPT", deliver by default .pptx. Only additionally convert .pptwhen the user explicitly requests compatibility with older PowerPoint versions, and verify the conversion result; do not misunderstand the colloquial PPT request as requiring output in the old binary format.
How customers use it
Provide any one type of input: article path, URL, Markdown, outline, data table, or topic. It is best to also add audience, purpose, page count, style, and whether NotebookLM is needed.
把 <article.md> 做成给小白讲的 16 页 PPT,生成 3 张无字插画素材
把这个 URL 归档后做成可编辑 PPTX,并用 NotebookLM 再做一版对比
把这篇技术文章做成分享课件,同时给一张 1080x1600 的重点简图
When the provider is unspecified and this is an interactive session, ask only one multiple-choice question:
需要可编辑本地版、NotebookLM 视觉版,还是两版对比?
When the user does not answer or the task cannot wait, default to local_editable; when the user says "try them all", "make it prettier", or "make courseware and compare", prioritize hybrid。
Dependencies and installation
npx skills add soia-team/soia-open-skills -g -a claude-code -a codex -s soia-pkm-transform-article-ppt -y
local_editable: Prefer the host's native presentations / PowerPoint capabilities; in the Codex environment, prefer its Presentations runtime rather than writingpython-pptxas the sole default implementation.imagegen: Call directly when the host provides image generation capability; when unavailable, use user assets, icons, or pure typesetting, and do not falsely claim that images were generated.notebooklm: Requires NotebookLM CLI and login state, see references/provider-notebooklm.md。open_design: Optional enhancement; once selected, hard-depends onsoia-dev-open-design-ops, see references/provider-open-design.md。
Private configuration is placed in:
~/.config/soia-skills/soia-open-skills/soia-pkm/soia-pkm-transform-article-ppt/config.yml
Available SOIA_PKM_ARTICLE_PPT_CONFIG_FILE override path. For configuration examples, see config.example.yml。
Logs and completion receipt
完成:<一句话说明正式母版与辅助版本>。
- source: <路径或 URL>
- provider: local_editable | notebooklm | hybrid | open_design
- editable_pptx: <路径、页数、是否可编辑>
- notebooklm_pptx: <路径、页数、是否为图片页;未生成则省略>
- visual_assets: <数量与路径>
- infographic: <路径与尺寸;未生成则省略>
- manifest: <路径>
验证:
- PPTX 实际打开并渲染全部页面
- 预览页数与 PPTX 页数一致
- 无空白页、越界、重叠、乱码和占位符
- source 时间、作者、数字与声明已核对
- 人工逐页检查已完成
限制:<未验证事实、provider 降级或编辑性限制>
Hard boundaries
- The official master is editable by default. NotebookLM often makes each page a single image; unless confirmed by actual testing, it must not be called an editable PPTX.
- Image models do not typeset dense Chinese text. imagegen is used for covers, illustrations, backgrounds, and visual metaphors; titles, terminology, numbers, tables, and sources are laid out later by PPT/HTML.
- Each page has only one main judgment. Pages can be dense, but they must have a clear visual focus and reading order.
- Do not fabricate metadata. The source page uses only the authors, links, and publication times verified in source; do not write guessed model names, generation times, notebook ids, artifact ids, download paths, or placeholders.
- Keep external facts separate from the original text's viewpoints. Time-sensitive predictions, performance numbers, and enterprise cases must be marked as "original text viewpoint/unverified" if not independently verified.
- The existence of a file does not equal completion. Without full rendering and manual visual review, it must not be delivered as complete.
- prompts, assets, and intermediate manifests are written only to the user-specified output directory; login state, cookies, and account information never enter the output or receipts.
Workflow
1. Establish the content contract
Read the complete source and extract:main_verdict, audience task, sections, concepts, case chain, key judgments, easily confused points, risks, and facts to be verified. URLs should first be archived or saved as stable source; if there is only a topic, first form a content outline.
Run the planning script to generate an auditable checklist:
python3 scripts/media_bundle.py plan \
--article <article.md> \
--out-dir <output-dir> \
--provider hybrid \
--image-count 3 \
--main-verdict "<一句主判断>"
For the path and manifest contract, see references/media-bundle-contract.md。
2. Choose provider and delivery scope
Decide according to "user explicit specification > private configuration > interactive selection > default local_editable". For specific selection rules, see references/provider-selection.md。
hybrid 's responsibilities are fixed:
- The local version handles content completeness, editorial quality, and formal delivery.
- The NotebookLM version handles rapid visual storytelling and comparative experiments.
- imagegen handles only visual assets with a clear page purpose.
3. Do the slide plan first, then the visuals
Read references/prompt-ppt.md. The page-by-page plan must include at least: judgment-style title, page task, source anchor, visual form, script/notes, and covered concepts. First attack the plan: does it miss the main thread, are multiple consecutive pages isomorphic, is the conclusion buried.
4. Generate purposeful image assets
When a visual anchor is needed, read references/prompt-image-assets.md. Usually generate 2-4: cover key visual, core mechanism diagram, key case/scene image. Each image must be bound to a specific page number or infographic area; do not generate purely decorative stock images.
After image generation, view the original image first, then place it into the PPT. If the direction, object relationships, text, or numbers are wrong, modify the prompt and regenerate; do not use overlay layers to conceal semantic errors.
5. Generate a formal editable PPTX
Use the host presentations capability or Open Design to generate. Follow the current host's presentation skills and runtime instructions. Chinese text, process arrows, tables, page numbers, and sources in the PPTX should remain editable; bitmaps are used only for photos, illustrations, textures, and necessary complex visuals.
Fixed design requirements:
- Medium-to-long text defaults to 14-18 pages; short text 8-12 pages; when the user specifies, comply and record the compression risk.
- At least 4 page outlines: cover, map, process, comparison/matrix, full quick reference, case, exercise, sources, etc.
- Do not continuously use the same card grid; do not make page sections into floating cards.
- Titles express judgments, body text provides structure and evidence; do not write empty titles like "Background Introduction" or "Core Viewpoints."
- Color carries semantics; do not cover the entire set with a single blue-purple or decorative gradient.
6. Optionally generate a NotebookLM comparison version
Read references/provider-notebooklm.md and references/prompt-notebooklm-ppt.md. After generation, you must download by artifact id to prevent grabbing the wrong version when the same notebook has multiple decks.
NotebookLM failure, queuing, or missing login does not affect the local official master; but the receipt must state the true status. If the output contains placeholders, runtime metadata, erroneous Chinese, or facts outside the source, modify the prompt and regenerate.
7. Generate an optional infographic
When "explain it clearly in one image" is needed, read references/prompt-infographic.md. First generate wordless visual components, then typeset the Chinese with HTML/CSS or PPT, keeping the main judgment, process direction, and terminology hierarchy consistent.
8. Two-layer acceptance
First run mechanical checks, then do a manual visual check:
python3 scripts/media_bundle.py validate \
--manifest <output-dir>/media-manifest.json \
--visual-reviewed \
--source-facts-reviewed \
--strict \
--json
For detailed standards, see references/quality-gates.md. If any page fails, return to the corresponding source file, HTML, or prompt to fix it, then re-render; do not only change the completion receipt.
9. Delivery and backlinking
Place the official master, auxiliary versions, images, and manifest in the same output directory. If the source is in a writable knowledge base and there is already a "Related/Derived Artifacts" section, update the links; do not copy the same artifact list across multiple files.
Read as needed
- Output directory and manifest:references/media-bundle-contract.md
- Provider selection:references/provider-selection.md
- Editable PPT plan and prompts:references/prompt-ppt.md
- imagegen assets:references/prompt-image-assets.md
- Infographic:references/prompt-infographic.md
- NotebookLM:references/provider-notebooklm.md、references/prompt-notebooklm-ppt.md
- Open Design:references/provider-open-design.md、references/prompt-open-design.md
- Quality gate:references/quality-gates.md
- Typical invocation:references/examples.md