skywork-ppt▌
skyworkai/skywork-skills · updated Apr 8, 2026
Four capabilities: generate, template imitation, edit existing PPT, and local file operations.
PPT Write Skill
Four capabilities: generate, template imitation, edit existing PPT, and local file operations.
Prerequisites
API Key Configuration (Required First)
This skill requires a SKYWORK_API_KEY to be configured in OpenClaw.
If you don't have an API key yet, please visit: https://skywork.ai
For detailed setup instructions, see: references/apikey-fetch.md
Privacy & Remote Calls (Read Before Use)
- Remote upload & processing: Layers 1/2/4 upload local files and send the full, verbatim user query to the Skywork service. Avoid sensitive or confidential content unless you trust the remote service and its data handling policies.
- Local-only operations: Layer 3 (local ops) runs entirely on-device and does not call the remote gateway. Use Layer 3 if you need strict local processing.
- Polling behavior: The generation/edit workflows include periodic status polling (about every 5 seconds) while waiting for backend jobs. This is expected.
Routing — Identify the user's intent first
| User intent | Which path |
|---|---|
| Generate a new PPT from a topic, set of requirements or reference files | Layer 1 — Generate |
| Use an existing .pptx as a layout/style template to create a new presentation | Layer 2 — Imitate |
| Edit an existing PPT: modify slides, add slides, change style, split/merge | Layer 4 — Edit |
| Delete / reorder / extract / merge slides in a local file (no backend) | Layer 3 — Local ops |
Environment check (always run this first)
This skill requires Python 3 (>=3.8). Run the following before any script to locate a valid Python binary and install dependencies.
PYTHON_CMD=""
for cmd in python3 python python3.13 python3.12 python3.11 python3.10 python3.9 python3.8; do
if command -v "$cmd" &>/dev/null && "$cmd" -c "import sys; exit(0 if sys.version_info >= (3,8) else 1)" 2>/dev/null; then
PYTHON_CMD="$cmd"
break
fi
done
if [ -z "$PYTHON_CMD" ]; then
echo "ERROR: Python 3.8+ not found."
echo "Install on macOS: brew install python3 or visit https://www.python.org/downloads/"
exit 1
fi
echo "Found Python: $PYTHON_CMD ($($PYTHON_CMD --version))"
$PYTHON_CMD -m pip install -q --break-system-packages python-pptx
echo "Dependencies ready."
After this check, replace
pythonwith the discovered$PYTHON_CMD(e.g.python3) in all subsequent commands.
Layer 1 — Generate PPT
Steps
- REQUIRED FIRST STEP — Read workflow_generate.md NOW, before taking any other action. After reading, output exactly:
✅ workflow_generate.md loaded.— then proceed. - Environment check — run the check above to get
$PYTHON_CMD. - Upload reference files (if the user provides local files as content source) — parse the file using tool in script/parse_file.py and pass the result to
--files. See the--filesnote below. - Web search (required if no relevant content is already in the conversation) — call web_search tool in script to search the topic and distill results into a
reference-filefile of ≤ 2000 words. - Run the script:
Important: set exec tool
yieldMsto600000(10 minutes). - Deliver — provide the absolute
.pptxpath and the download URL.
Layer 2 — Imitate PPT (template-based generation)
Steps
- REQUIRED FIRST STEP - Read workflow_imitate.md immidiately before any action you do!!!
- Environment check — run the check above to get
$PYTHON_CMD. - Locate the template — extract the absolute path of the local
.pptxfrom the user's message; ask the user if it's unclear. - Upload the template — upload it and extract
TEMPLATE_URLfrom the output. - Upload reference files (if the user provides additional local files as content source) — parse the file using tool in script/parse_file.py and pass the result to
--files. See the--files - Web search (required if no relevant content is already in the conversation) — call web_search tool in script to search the new topic and distill results into a
reference-filefile of ≤ 2000 words. - Run the script:
Important: set exec tool
yieldMsto600000(10 minutes). - Deliver — provide the absolute
.pptxpath, the download URL, and the template filename used.
Layer 4 — Edit PPT (AI-powered modification)
Use this layer when the user wants to modify an existing PPT using natural language. Requires an OSS/CDN URL of the PPTX (from a previous generation or upload).
Steps
- Detailed workflow - Read workflow_edit.md immediately before any action you do!!!
- Environment check — run the check above to get
$PYTHON_CMD. - Get PPTX URL — from the user's message or upload a local file first.
- Run the script with
--pptx-url:$PYTHON_CMD scripts/run_ppt_write.py "edit instruction" \ --language Chinese \ --pptx-url "https://cdn.example.com/file.pptx" \ -o /absolute/path/output.pptxImportant: set exec tool
yieldMsto600000(10 minutes). - Deliver — provide download link, local path, and summary of changes.
Layer 3 — Local file operations
# Inspect slide count and titles
$PYTHON_CMD scripts/local_pptx_ops.py info --file my.pptx
# Delete slides (1-based index; supports ranges like 3,5,7-9; omit -o to overwrite in place)
$PYTHON_CMD scripts/local_pptx_ops.py delete --file my.pptx --slides 3,5,7-9 -o trimmed.pptx
# Reorder slides (must list every slide, no omissions)
$PYTHON_CMD scripts/local_pptx_ops.py reorder --file my.pptx --order 2,1,4,3,5
# Extract a subset of slides into a new file
$PYTHON_CMD scripts/local_pptx_ops.py extract --file my.pptx --slides 1-3 -o subset.pptx
# Merge multiple files
$PYTHON_CMD scripts/local_pptx_ops.py merge --files a.pptx b.pptx -o merged.pptx
Read workflow_local.md immidiately before any action you do!!!
Error Handling
- Insufficient benefit: When calling scripts (generate, imitate, or edit), the script or log may show a message like
Insufficient benefit. Please upgrade your account at {url}, meaning the user's benefit level does not meet the requirement for this skill.
How to reply when benefit is insufficient
When you detect the above, reply in the user's current language — do not echo the English message. Use this pattern:
- Convey: "Sorry, PPT generation failed. This skill requires upgrading your Skywork membership to use." then a single call-to-action link.
- Format: One short sentence in the user's language + a link like
[Upgrade now →](url)or the equivalent in their language . - URL: Extract the upgrade URL from the log/script output (e.g. the
at https://...part).
Note: Only suggest upgrading when the error is Insufficient benefit. For auth errors like
NO_TOKEN/INVALID_TOKEN/401/ “invalid API key”, keep the error code / raw message and guide users to updateSKYWORK_API_KEY. Do not suggest upgrading membership.
Dependencies
- Python 3.8+ (required) —
python3/pythonmust be on PATH - Layer 3 local ops:
pip install python-pptx --break-system-packages
(The environment check step installs all required dependencies automatically.)
Which layer to trigger?
| Scenario | Use |
|---|---|
| Generate a PPT from a topic or existing reference files | Layer 1 |
| Imitate the layout/style of an existing .pptx | Layer 2 |
| Edit/modify an existing PPT via natural language | Layer 4 |
| Delete / reorder / extract / merge local .pptx files (no backend) | Layer 3 |
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
Ratings
4.8★★★★★61 reviews- ★★★★★Ren Rahman· Dec 28, 2024
Registry listing for skywork-ppt matched our evaluation — installs cleanly and behaves as described in the markdown.
- ★★★★★Lucas Ghosh· Dec 24, 2024
Solid pick for teams standardizing on skills: skywork-ppt is focused, and the summary matches what you get after install.
- ★★★★★Shikha Mishra· Dec 16, 2024
We added skywork-ppt from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★Isabella Chawla· Dec 16, 2024
Useful defaults in skywork-ppt — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
- ★★★★★Ren Ghosh· Nov 19, 2024
Keeps context tight: skywork-ppt is the kind of skill you can hand to a new teammate without a long onboarding doc.
- ★★★★★Diego Nasser· Nov 15, 2024
skywork-ppt has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Mei Gonzalez· Nov 7, 2024
skywork-ppt reduced setup friction for our internal harness; good balance of opinion and flexibility.
- ★★★★★Tariq Menon· Nov 7, 2024
I recommend skywork-ppt for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
- ★★★★★Lucas Yang· Nov 3, 2024
We added skywork-ppt from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★Mei Khan· Oct 26, 2024
We added skywork-ppt from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
showing 1-10 of 61