pptx-author
SkillWeb & browsingpptx-author is a skill that lets your AI build PowerPoint decks on its own. It works headless, meaning it creates the finished .pptx file in the background without opening PowerPoint. Once added, you can ask your AI to put together a presentation and it handles the whole build with python-pptx.
Available today. Use it from your connected AI after setup.
No other account needed.
Add the skill, then describe the presentation you want and your AI will build it as a .pptx file.
Then ask your AI: use the pptx-author skill
What your AI can do with it
- Create complete PowerPoint decks from scratch
- Generate .pptx files without opening the PowerPoint app
- Compose the deck slide by slide in the background
- Save the finished presentation as a .pptx file
What this skill tells your AI
The instructions your AI receives, as published by cyijun/china-financial-services in plugins/china-market-researcher/skills/pptx-author/SKILL.md and read by ahel’s review.
Use this skill when running headless and you need to deliver a Chinese market research PowerPoint deck as a file artifact rather than editing a live document through an Office integration.
Output contract
- Write to
./out/<name>.pptx. Create./out/if it does not exist. - Return the relative path in your final message so the orchestration layer can collect it.
How to build the deck
Write a short Python script and run it with Bash. Use python-pptx:
from pptx import Presentation
from pptx.util import Inches, Pt
from pptx.dml.color import RGBColor
from pptx.enum.text import PP_ALIGN, MSO_ANCHOR
prs = Presentation("./templates/firm-template.pptx") # if a template is provided
# or: prs = Presentation()
slide = prs.slides.add_slide(prs.slide_layouts[5]) # title-only
# Set Chinese-friendly font
def set_chinese_font(run, font_name="微软雅黑", font_size=18, bold=False):
font = run.font
font.name = font_name
font.size = Pt(font_size)
font.bold = bold
# For CJK fallback on non-Windows systems
run._element.set("lang", "zh-CN")
title = slide.shapes.title
for paragraph in title.text_frame.paragraphs:
paragraph.clear()
run = paragraph.add_run()
run.text = "A股新能源汽车行业深度"
set_chinese_font(run, "微软雅黑", 28, bold=True)
# ... add tables / charts / text boxes with set_chinese_font() ...
prs.save("./out/china-sector-primer.pptx")
Chinese context conventions
- Fonts: Default to 微软雅黑 (Microsoft YaHei) or SimHei for Chinese text; Times New Roman for English words and numbers. If the target system may lack 微软雅黑, fall back to SimHei or specify a system-available CJK font.
- Language: Slide titles and body text may be written in Chinese. Keep titles punchy and takeaway-oriented.
- Numbers and units: Use Chinese market conventions — e.g., 亿元人民币, 万亿元, 个百分点, PE(TTM), PB(LF).
- Content conventions (mirror the live-Office skill but for Chinese research reports):
- One idea per slide. Title states the takeaway; body supports it.
- Every number traces to the model. If a figure comes from Tushare, footnote the interface and date, e.g.,
数据来源: Tushare daily_basic 2024-12-01. If from a local workbook, cite the path and cell, e.g.,见 ./out/comps.xlsx Sheet1 B7. - Use the firm template when one is mounted at
./templates/; otherwise default layouts. - Charts: Prefer embedding a PNG rendered from the model over native pptx charts when fidelity matters. Save the PNG to
./out/and insert it withslide.shapes.add_picture(). - No external sends. This skill writes a file; it never emails or uploads.
When NOT to use
If mcp__office__powerpoint_* tools are available (Cowork plugin mode), use those instead — they drive the user's live document with review checkpoints. This skill is the file-producing fallback for headless runs.
Signals
- GitHub stars
- 20
- Forks
- 3
- Last commit
- Aug 2026
Advanced
- Catalog kind
- skill
- Gateway key
pptx-author- Source
- github.com/cyijun/china-financial-services