关于 Skywork-ppt
Skywork-ppt 是面向 OpenClaw 的演示文稿技能,支持生成演示文稿、仿用 PPTX 模板、编辑现有文件及本地幻灯片操作。远程生成和编辑需要配置 SKYWORK_API_KEY,本地操作则在设备上完成。
主要功能
- 01根据主题或参考资料生成演示文稿
- 02使用 PPTX 模板制作新演示文稿
- 03编辑现有演示文稿
- 04本地删除、排序、提取或合并幻灯片
适用场景
- 01根据主题和参考文件制作演示文稿
- 02沿用现有演示文稿的样式创建新稿
- 03通过自然语言修改幻灯片
- 04无需远程处理即可调整或删除幻灯片
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ skyworkai/ skywork-skills --skill skywork-ppt安装后在 Claude Code 中输入/skywork-ppt确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
workflow_edit.mdworkflow_generate.mdworkflow_imitate.mdworkflow_local.mdreferences/apikey-fetch.mdscripts/constant.pyweb_search.pyskywork_auth.pyparse_file.pylocal_pptx_ops.pyrun_ppt_write.pyupload_files.py详细介绍
PPT 编写技能
四种能力:生成、模板仿制、编辑现有 PPT和本地文件操作。
前置条件
API Key 配置(首先必做)
此技能要求在 OpenClaw 中配置 SKYWORK_API_KEY。
如果你还没有 API Key,请访问: https://skywork.ai
详细设置说明请参阅: references/apikey-fetch.md
隐私与远程调用(使用前请阅读)
- 远程上传与处理:第 1/2/4 层会上传本地文件,并将完整、未经修改的用户查询发送至 Skywork 服务。除非你信任远程服务及其数据处理政策,否则请避免使用敏感或机密内容。
- 仅本地操作:第 3 层(本地操作)完全在设备上运行,不会调用远程网关。如需严格的本地处理,请使用第 3 层。
- 轮询行为:生成/编辑工作流会在等待后端任务时定期轮询状态(约每 5 秒一次)。这是预期行为。
路由 — 首先识别用户意图
| 用户意图 | 路径 |
|---|---|
| 根据主题、一组要求或参考文件生成新的 PPT | 第 1 层 — 生成 |
| 使用现有 .pptx 作为布局/样式模板来创建新演示文稿 | 第 2 层 — 仿制 |
| 编辑现有 PPT:修改幻灯片、添加幻灯片、更改样式、拆分/合并 | 第 4 层 — 编辑 |
| 删除 / 重新排序 / 提取 / 合并本地文件中的幻灯片(不使用后端) | 第 3 层 — 本地操作 |
环境检查(始终先运行)
此技能需要 Python 3(>=3.8)。在运行任何脚本前,请先运行以下命令以查找有效的 Python 二进制文件并安装依赖项。
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."
完成此检查后,在所有后续命令中,将
python替换为检测到的$PYTHON_CMD(例如python3)。
第 1 层 — 生成 PPT
步骤
- 必须首先执行 — 立即阅读 workflow_generate.md,然后再执行任何其他操作。阅读后,准确输出:
✅ workflow_generate.md loaded.— 然后继续。 - 环境检查 — 运行上述检查以获取
$PYTHON_CMD。 - 上传参考文件(如果用户提供本地文件作为内容来源)— 使用脚本中的工具
script/parse_file.py解析文件,并将结果传给--files。请参阅下方关于--files的说明。 - 网页搜索(如果对话中尚无相关内容,则必须执行)— 调用脚本中的 web_search 工具搜索主题,并将结果提炼为一个不超过 2000 词的
reference-file文件。 - 运行脚本:
重要:将 exec 工具的
yieldMs设置为600000(10 分钟)。 - 交付 — 提供
.pptx的绝对路径和下载 URL。
第 2 层 — 仿制 PPT(基于模板生成)
步骤
- 必须首先执行 - 立即阅读 workflow_imitate.md,然后再执行任何操作!!!
- 环境检查 — 运行上述检查以获取
$PYTHON_CMD。 - 定位模板 — 从用户消息中提取本地
.pptx的绝对路径;如果不明确,请询问用户。 - 上传模板 — 上传模板并从输出中提取
TEMPLATE_URL。 - 上传参考文件(如果用户提供其他本地文件作为内容来源)— 使用脚本中的工具
script/parse_file.py解析文件,并将结果传给--files。请参阅关于--files的说明。 - 网页搜索(如果对话中尚无相关内容,则必须执行)— 调用脚本中的 web_search 工具搜索新主题,并将结果提炼为一个不超过 2000 词的
reference-file文件。 - 运行脚本:
重要:将 exec 工具的
yieldMs设置为600000(10 分钟)。 - 交付 — 提供
.pptx的绝对路径、下载 URL,以及所用模板的文件名。
第 4 层 — 编辑 PPT(AI 驱动的修改)
当用户想用自然语言修改现有 PPT 时,使用此层。需要提供 PPTX 的 OSS/CDN URL(来自之前的生成或上传)。
步骤
- 详细工作流 — 在执行任何操作之前,立即阅读 workflow_edit.md!!!
- 环境检查 — 运行上方的检查以获取
$PYTHON_CMD。 - 获取 PPTX URL — 从用户消息中获取,或先上传本地文件。
- 运行脚本,并使用
--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.pptx重要:将 exec 工具的
yieldMs设为600000(10 分钟)。 - 交付 — 提供下载链接、本地路径和修改摘要。
第 3 层 — 本地文件操作
# 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
在执行任何操作之前,立即阅读 workflow_local.md!!!
错误处理
- 权益不足:调用脚本(generate、imitate 或 edit)时,脚本或日志可能会显示类似
Insufficient benefit. Please upgrade your account at {url}的消息,这表示用户的权益等级不满足使用此技能的要求。
权益不足时如何回复
检测到上述情况时,使用用户当前所用的语言回复——不要照搬英文消息。按以下模式回复:
- 表达:“抱歉,PPT 生成失败。使用此技能需要升级您的 Skywork 会员。”然后提供一个行动链接。
- 格式:用用户所用的语言写一句简短的话 + 一个链接,例如
[立即升级 →](url),或使用对应语言的表达。 - URL:从日志/脚本输出中提取升级 URL(例如
at https://...部分)。
注意:只有在错误为 Insufficient benefit 时才建议升级。对于
NO_TOKEN/INVALID_TOKEN/401/ “invalid API key” 等身份验证错误,保留错误代码/原始消息,并指导用户更新SKYWORK_API_KEY。不要建议升级会员。
依赖项
- Python 3.8+(必需)——
python3/python必须位于 PATH 中 - 第 3 层本地操作:
pip install python-pptx --break-system-packages
(环境检查步骤会自动安装所有必需的依赖项。)
应触发哪一层?
| 场景 | 使用 |
|---|---|
| 根据主题或现有参考文件生成 PPT | 第 1 层 |
| 模仿现有 .pptx 的布局/风格 | 第 2 层 |
| 通过自然语言编辑/修改现有 PPT | 第 4 层 |
| 删除 / 重新排序 / 提取 / 合并本地 .pptx 文件(无需后端) | 第 3 层 |