Skywork PPT
Skywork PPT (skywork) - Use when the user wants to work with PowerPoint presentations. Triggers: (1) Generate a new PPT from a topic — 'generate a PPT', 'cre...
Rank
62
Safety
84
Downloads
6.8k
Updated
Oct 9, 2026
Version
1.0.9
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 6.8K downloads reported by the source. Last updated 10/9/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 9, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 9, 2026
- Adoption signal
- 6.8K downloadsadoption · observed Oct 9, 2026
- Latest release
- 1.0.9release · observed Apr 23, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s174hwb34r6ncgdm62n09a9tbd83hn5x:skywork-ppt- Install using `clawhub skill install s174hwb34r6ncgdm62n09a9tbd83hn5x:skywork-ppt` in an isolated environment before connecting it to live workloads.
- No published capability contract is available yet, so validate auth and request/response behavior manually.
- Review the upstream CLAWHUB listing at https://clawhub.ai/gxcun17/skywork-ppt before using production credentials.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-gxcun17-skywork-ppt/snapshot"
Documentation
CLAWHUB
149,374 characters of source documentation, loaded on request.
Extracted files
5 files captured from the source.
SKILL.md
---
name: Skywork-ppt
description: "Skywork PPT (skywork) - Use when the user wants to work with PowerPoint presentations. Triggers: (1) Generate a new PPT from a topic — 'generate a PPT', 'create a presentation about X', 'make slides', '帮我做个PPT', '生成演示文稿', 'PPTを作って', 'スライドを作って', 'PPT 만들어줘', '슬라이드 만들어줘'; (2) Imitate an existing .pptx style/template — 'use this template', 'imitate this PPT/style', '用这个模板', '仿照这个PPT', 'このテンプレートを使って', '이 템플릿 써줘'; (3) Edit existing PPT via natural language — 'modify slide N', 'change background', 'add a slide', 'make it more beautiful', '修改第N页', '更换背景', '新增一页', '美化一下', 'N枚目を修正', '背景を変えて', 'きれいにして', 'N번 슬라이드 수정', '배경 바꿔줘'; (4) Convert NotebookLM-exported pptx/pdf into editable pptx — 'make this notebooklm ppt editable', 'convert notebooklm export to editable pptx', '把这个notebooklm导出的pptx改成可编辑pptx', '把这个pdf转成可编辑pptx'; (5) Local .pptx file ops — 'delete slide N', 'reorder slides', 'merge pptx', 'extract slides', 'how many slides', '删除第N页', '调整顺序', '合并PPT', '提取幻灯片', 'スライドを削除/並べ替え/結合/抽出', '슬라이드 삭제/순서 변경/합치기/추출'."
metadata:
openclaw:
requires:
bins:
- python3
env:
- SKYWORK_API_KEY
primaryEnv: SKYWORK_API_KEY
---
# PPT Write Skill
Five capabilities: **generate**, **template imitation**, **edit existing PPT**, **convert NotebookLM export to editable PPTX**, and **local file operations**.
---
## Prerequisites
### API Key Configuration (Required First)
This skill requires a **SKYWORK_API_KEY** to be configured before use.
If you don't have an API key yet, please visit:
**https://skywork.ai**
For detailed setup instructions, see:
[references/apikey-fetch.md](references/apikey-fetch.md)
---
## Privacy & Remote Calls (Read Before Use)
- **Remote upload & processing**: Layers 1/2/4/5 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.
- **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 |
| Convert a NotebookLM-exported `.pptx` or `.pdf` into an editable `.pptx` | **Layer 5** — Convert to editable PPTX |
| 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.**
```bash
PYTHON_CMD=""
for cmd in python3 python_meta.json
{
"ownerId": "kn70ct0m3p4538a9t49cjcwern82ky02",
"slug": "skywork-ppt",
"version": "1.0.9",
"publishedAt": 1776949188398
}references/apikey-fetch.md
# Skywork API Key Setup Guide
## SKYWORK_API_KEY Not Configured
When the `SKYWORK_API_KEY` environment variable is not set, follow these steps:
### 1. Get API Key
Visit the Skywork website and sign in to your account:
**https://skywork.ai**
- Log in with your Skywork account
- Open account / Settings / API Key (**https://skywork.ai/?openApiKeySetting=1**)
- Create or copy your **API key**
If your organization uses a separate console or test environment, use the URL and credentials your team provides.
### 2. Configure OpenClaw
Edit the OpenClaw configuration file: `~/.openclaw/openclaw.json`
In current OpenClaw, Skywork skills store the key under `skills.entries.<Skill Name>.apiKey` (not under `env`).
OpenClaw will inject this value into the skill's `SKYWORK_API_KEY` environment when `primaryEnv` matches.
Add or merge the following structure (adjust the skill name to match the installed skill):
```json
{
"skills": {
"entries": {
"Skywork-ppt": {
"enabled": true,
"apiKey": "your_actual_skywork_api_key_here"
}
}
}
}
```
Replace `"your_actual_skywork_api_key_here"` with your real key.
For multiple Skywork skills, repeat the same `apiKey` field on each skill entry.
### 3. Configure Claude Code
If you are using Claude Code, use one of these lightweight options:
**Option A — shell environment**
Export the API key before running the skill:
```bash
export SKYWORK_API_KEY="your_actual_skywork_api_key_here"
```
To persist it across sessions, add the same line to `~/.zshrc` or `~/.bashrc`, then reload the shell.
**Option B — Claude Code settings**
Add the variable to `~/.claude/settings.json`:
```json
{
"env": {
"SKYWORK_API_KEY": "your_actual_skywork_api_key_here"
}
}
```
Use the method that best matches how you run Claude Code.
### 4. Verify Configuration
```bash
# Check that the environment variable is available
echo "$SKYWORK_API_KEY"
```
For OpenClaw, you can also validate the config file:
```bash
cat ~/.openclaw/openclaw.json | python3 -m json.tool
```
### 5. Restart OpenClaw
```bash
openclaw gateway restart
```
## Troubleshooting
- Ensure `~/.openclaw/openclaw.json` exists and is valid JSON
- Ensure `SKYWORK_API_KEY` is available in Claude Code through your shell or `~/.claude/settings.json`
- Confirm the API key is active and not expired
- Check Skywork account status, membership, or quota if requests fail with auth or benefit errors
- Restart OpenClaw after configuration changes
**Recommended**: Use the setup method that matches your runtime. OpenClaw should use the OpenClaw config file; Claude Code can use either the shell environment or `~/.claude/settings.json`.skill-card.md
## Description: Skywork PPT helps agents generate new PowerPoint presentations, imitate an existing presentation style, edit decks through natural-language requests, convert NotebookLM exports to editable PPTX files, and run local PPTX operations. This skill is ready for commercial/non-commercial use. ## Publisher: [gxcun17](https://clawhub.ai/user/gxcun17) ### License/Terms of Use: MIT-0 ## Use Case: Developers and external users use this skill to create, transform, and inspect PowerPoint presentations from topics, templates, existing decks, NotebookLM exports, and local PPTX files. ### Deployment Geography for Use: Global ## Known Risks and Mitigations: Risk: Skywork-backed workflows may send selected prompts and files to Skywork or cloud storage. Mitigation: Use only with content approved for that service, and avoid confidential decks unless organizational policy permits it. Risk: The skill requires a Skywork API key for remote workflows. Mitigation: Store the key in a protected secret store, use a revocable key, and avoid printing it in logs. Risk: Local slide-editing operations can modify presentation files. Mitigation: Use explicit output paths or keep backups before running operations that may overwrite local decks. Risk: The security verdict is suspicious because the skill uploads local documents and can modify files without strong safeguards. Mitigation: Review the skill before deployment and run dependencies in a virtual environment. ## Reference(s): - [Skywork API key setup](references/apikey-fetch.md) - [Skywork AI](https://skywork.ai) - [ClawHub skill page](https://clawhub.ai/gxcun17/skills/skywork-ppt) ## Skill Output: **Output Type(s):** [text, markdown, code, shell commands, configuration, files, guidance] **Output Format:** [Markdown guidance with shell commands and generated or modified PPTX files] **Output Parameters:** [1D] **Other Properties Related to Output:** [Requires Python 3 and SKYWORK_API_KEY for Skywork-backed workflows; local PPTX operations use python-pptx.] ## Skill Version(s): 1.0.9 (source: server release evidence) ## Ethical Considerations: Users should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.
workflow_convert_editable.md
# Convert NotebookLM Export to Editable PPTX Workflow
Use this workflow when the user provides a local `.pptx` or `.pdf` file and wants to convert a NotebookLM-exported deck into an editable `.pptx`.
Follow these steps in order: identify the source file → upload it → run the conversion script in background → **read the log every 5 seconds and report progress** → deliver.
---
## 1. Confirm the source file
The user must provide a local `.pptx` or `.pdf` file.
- If the file path is ambiguous, ask the user for the full absolute path.
- If the file extension is not `.pptx` or `.pdf`, stop and explain that this workflow only supports those two input types.
---
## 2. Upload the source file to OSS
```bash
$PYTHON_CMD scripts/upload_files.py "/absolute/path/to/source.pptx"
```
or
```bash
$PYTHON_CMD scripts/upload_files.py "/absolute/path/to/source.pdf"
```
- Extract the OSS URL from the `[OK] ... -> https://...` output line.
- Call this value `SOURCE_URL`.
---
## 3. Run the conversion script
Run in the **background**, then read the progress log file every 5 seconds until done.
### 3a. Choose a log path and start in background
```bash
PPT_LOG=/tmp/ppt_editable_$(date +%s).log
$PYTHON_CMD scripts/run_editable_convert.py \
--file-url "SOURCE_URL" \
--file-type "pptx" \
--log_path "$PPT_LOG" \
-o /absolute/path/to/output_editable.pptx \
> /dev/null 2>&1 &
echo "Log: $PPT_LOG"
```
or for pdf:
```bash
$PYTHON_CMD scripts/run_editable_convert.py \
--file-url "SOURCE_URL" \
--file-type "pdf" \
--log_path "$PPT_LOG" \
-o /absolute/path/to/output_editable.pptx \
> /dev/null 2>&1 &
```
- **`--file-url`** (required): OSS URL of the uploaded source file.
- **`--file-type`** (recommended): explicitly pass `pptx` or `pdf`.
- **`--log_path`** (required): pass the pre-chosen path.
- **`-o`** (required): absolute output path for the converted `.pptx`.
### 3b. Monitor progress (REQUIRED)
> **STRICT RULES — no exceptions:**
> 1. **Read the log exactly every 5 seconds.** Do NOT extend the interval, do NOT skip reads.
> 2. **Before every read, check if the process is still alive.** If alive → only read log, NEVER restart.
**Every 5 seconds, run this exact sequence:**
```bash
# Step 1: extract PID from log
PPT_PID=$(grep '^\[PID\]' "$PPT_LOG" | tail -1 | awk '{print $2}')
# Step 2: check if process is alive
kill -0 "$PPT_PID" 2>/dev/null && PPT_ALIVE=true || PPT_ALIVE=false
# Step 3: read the log regardless
tail -20 "$PPT_LOG"
```
- If process is **RUNNING** → report status to user, wait 5s, repeat. Do NOT touch the script.
- If process is **not running** AND log ends with `[DONE]` or `[ERROR]` → stop polling, proceed to deliver/handle error.
- If process is **not running** AND no `[DONE]`/`[ERROR]` in log → the script crashed; report error to user, ask whether to retry.
Each line is plain text:
- `[PID] <pid>` — process ID written at startup
- `[START]` — job started
- `[PHASE] <message>` — in progress
- `[PROGRESS] <message>` —activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/gxcun17/skills/skywork-ppt",
"sourceUrl": "https://clawhub.ai/gxcun17/skills/skywork-ppt",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-09T03:14:26.946Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-gxcun17-skywork-ppt/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-gxcun17-skywork-ppt/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-09T03:14:26.946Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "6.8K downloads",
"href": "https://clawhub.ai/gxcun17/skywork-ppt",
"sourceUrl": "https://clawhub.ai/gxcun17/skywork-ppt",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-09T03:14:26.946Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "1.0.9",
"href": "https://clawhub.ai/gxcun17/skywork-ppt",
"sourceUrl": "https://clawhub.ai/gxcun17/skywork-ppt",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-04-23T12:59:48.398Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-gxcun17-skywork-ppt/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-gxcun17-skywork-ppt/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 1.0.9",
"description": "**Added support for converting NotebookLM-exported files to editable PPTX.** - New capability: Convert .pptx or .pdf exported from NotebookLM to fully editable PPTX format (Layer 5). - Added script: scripts/run_editable_convert.py to handle the conversion process. - Added workflow guide: workflow_convert_editable.md. - Updated skill description and workflow to include the new conversion feature.",
"href": "https://clawhub.ai/gxcun17/skywork-ppt",
"sourceUrl": "https://clawhub.ai/gxcun17/skywork-ppt",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-04-23T12:59:48.398Z",
"isPublic": true
}
]
}Record generated Oct 9, 2026.
