All skills
aktsmm avatar

/powerpoint-automation

@500f5af
by yamapanaktsmm/agent-skills26 stars
4

Create and edit professional PowerPoint presentations from web articles, blog posts, existing PPTX files, or templates. Use when creating PPTX, converting articles to slides, translating presentations, editing open PowerPoint files, or doing COM Automation / RefURL / overflow review work. Triggers on PowerPoint, PPTX, パワポ, スライド作成, 記事をスライド化, COM自動化, RefURL.

Use this Skill: https://skilld.dev/gh/aktsmm/agent-skills/powerpoint-automation

This session only. Nothing lands on disk.

referencesinstructionstemplate-replacements.instructions.md

≈901 tokens on demand. Your agent reads this file only when SKILL.md points to it.

Template: replacements.json Format

Detailed specification for replacements.json used in Localizer method (text replacement).

📖 See template.instructions.md for basic flow. ⚠️ Note: This format is for preserve method (experimental). Recommended is content.json format (reconstruct method).


Basic Structure

{
  "slide-0": {
    "shape-0": {
      "paragraphs": [
        {
          "text": "New Title",
          "font_size": 52.0,
          "bold": true
        }
      ]
    }
  },
  "slide-1": {
    "shape-0": {
      "paragraphs": [
        {
          "text": "New Heading"
        }
      ]
    },
    "shape-1": {
      "paragraphs": [
        { "text": "Item 1", "bullet": true, "level": 0 },
        { "text": "Item 2", "bullet": true, "level": 0 },
        { "text": "Sub-item", "bullet": true, "level": 1 }
      ]
    }
  }
}

Paragraph Properties

Property Type Required Description Example
text string ✅ Text content "Heading"
bullet bool - Bullet point flag true
level int - Indent level (0-8) 0
bold bool - Bold true
italic bool - Italic false
alignment string - Alignment "CENTER"
font_size float - Font size (pt) 24.0
font_name string - Font name "Arial"

alignment Values

Value Description
LEFT Left align
CENTER Center align
RIGHT Right align
JUSTIFY Justify

🚨 Bullet Point Format (Critical)

Manual bullet characters are prohibited. Always use bullet: true.

❌ NG Patterns

// ❌ NG: Manual symbols
{ "paragraphs": [{ "text": "• Item 1\n• Item 2" }] }

// ❌ NG: Symbols in text
{ "paragraphs": [{ "text": "- Item 1" }] }

✅ OK Pattern

// ✅ OK: Use bullet property
{
  "paragraphs": [
    { "text": "Item 1", "bullet": true, "level": 0 },
    { "text": "Item 2", "bullet": true, "level": 0 },
    { "text": "Sub-item", "bullet": true, "level": 1 }
  ]
}

Prohibited Characters (in text)

• ・ ● ○ ◆ ◇ ▪ ▫ - * + ① ② ③ ...


Common Errors and Solutions

Failure ①: Content Becomes Empty

// ❌ NG: Not using paragraphs array
"shape-0": "Title text"
"shape-0": { "text": "Title" }

// ✅ OK: paragraphs array required
"shape-0": { "paragraphs": [{ "text": "Title" }] }

Failure ②: Overflow Error

inventory height Recommended text amount
≤ 0.5 inches 1 line only
0.5 - 1.5 inches 1-2 lines
1.5 - 3.0 inches 3-5 lines
≥ 3.0 inches 5-8 lines

Failure ③: Shapes replaced: 0

Cause: paragraphs structure error or shape-id mismatch


Text Amount Guidelines

Element Recommended Maximum
Title 20 chars 40 chars
Heading 15 chars 30 chars
Bullet item 20 chars 40 chars
Paragraph 50 chars 100 chars

References

Source: SKILL.md on GitHub

1 alert1d5 checks · Risk MEDIUM
  • Gen Agent Trust Hub1d

    The skill automates PowerPoint creation by downloading external images and executing shell commands. Potential risks include command injection through user-influenced filenames and indirect prompt injection from processed web content.

  • Socket1d

    2 alerts: gptAnomaly

  • Snyk1d

    Risk: MEDIUM · 1 issue

  • Runlayer7mo

    12/58 files flagged

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at 500f5af. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub yesterday.

Activeupdated 2 days ago
argument-hint
変換したい URL・PPTX・テンプレート、または編集内容
user-invocable
true
metadata
{
  "author": "yamapan (https://github.com/aktsmm)"
}
  • Python
  • powerpoint
  • pptx
  • presentation
  • automation
  • com-automation
  • template
  • translation
  • web-scraping
  • content-generation

README badge

README badge for aktsmm/agent-skills/powerpoint-automation

Generates and edits PowerPoint presentations from web articles, blog posts, existing PPTX files, or templates using a content.json intermediate format. Supports COM Automation for direct editing of open decks, translation between languages, and structured review workflows that separate extraction, translation, generation, and quality assurance phases.

Generated from the current SKILL.md.

Does this skill work with existing PowerPoint files, or only create new presentations?
It works with both. You can create presentations from web articles or templates, translate and restructure existing PPTX files, or directly edit open PowerPoint files using COM Automation.
What's the central data format for this workflow?
content.json is the source of truth. All phases — extraction, translation, generation, and review — reference and operate on this JSON schema, keeping slides and their content decoupled from the final PPTX output.
Can I use my own PowerPoint template?
Yes. The skill supports custom templates via the template parameter and template_layouts.json config. When using a user-provided template, the skill preserves existing placeholders and layouts rather than overlaying new shapes on top.
How does this handle currently open PowerPoint files?
It uses COM Automation for direct editing of open decks, avoiding python-pptx overwrites. See the com-automation.instructions.md reference for specific workflows around RefURL, notes, overflow, and hyperlink verification.
Does this support languages other than English and Japanese?
The SKILL.md documents English and Japanese localization via a Localizer agent, but does not describe support for other languages.

Generated from the current SKILL.md. These answers refresh after source changes.