名称: slidespeak
描述: 通过 SlideSpeak API 生成、编辑和管理 PowerPoint 演示文稿。当用户希望从文本或文档创建演示文稿、编辑现有演示文稿或使用演示文稿模板时,可使用此技能。
允许工具: Bash Read Write
元数据:
{
"openclaw":
{
"emoji": "🦜",
"homepage": "https://slidespeak.co",
"requires": { "env": [ "SLIDESPEAK_API_KEY" ] },
"primaryEnv": "SLIDESPEAK_API_KEY",
},
}
此技能使您能够使用 SlideSpeak API 创建和编辑 PowerPoint 演示文稿。
演示文稿生成需要 30-60 秒。
运行命令并等待。脚本会在内部轮询直到完成:
node scripts/slidespeak.mjs generate --text "主题"
--no-wait 立即返回如果您无法等待命令完成,请使用 --no-wait:
node scripts/slidespeak.mjs generate --text "主题" --no-wait
立即返回:
{
"success": true,
"data": {
"task_id": "abc123...",
"message": "任务已启动。使用以下命令检查状态:node scripts/slidespeak.mjs status abc123..."
}
}
然后轮询状态直到完成:
node scripts/slidespeak.mjs status <task_id>
当 task_status 为 SUCCESS 时,使用 request_id 下载。
如果脚本在等待时超时,它会返回 task_id 以便您继续轮询:
{
"success": true,
"data": {
"complete": false,
"task_id": "abc123...",
"task_status": "STARTED",
"message": "任务仍在处理中。使用以下命令检查状态:node scripts/slidespeak.mjs status abc123..."
}
}
必须设置 SLIDESPEAK_API_KEY 环境变量。从 https://app.slidespeak.co/settings/developer 获取您的 API 密钥。
所有命令都使用位于 scripts/slidespeak.mjs 的辅助脚本。该脚本会自动处理 API 身份验证并等待异步任务完成(无需手动轮询)。
node scripts/slidespeak.mjs generate --text "您的主题或内容" --length 6
选项:
- --text(必需):演示文稿的主题或内容
- --length:幻灯片数量(默认:10)
- --template:模板名称或 ID(默认:"default")
- --language:输出语言(默认:"ORIGINAL")
- --tone:casual, professional, funny, educational, sales_pitch
- --verbosity:concise, standard, text-heavy
- --no-images:禁用获取库存图片
- --no-cover:排除封面幻灯片
- --no-toc:排除目录
首先上传文档,然后生成:
# 上传文档(PDF、DOCX、PPTX 等)
node scripts/slidespeak.mjs upload /path/to/document.pdf
# 使用返回的 document_uuid 生成
node scripts/slidespeak.mjs generate --document <document_uuid> --length 10
支持的格式:.pdf, .docx, .doc, .pptx, .ppt, .xlsx, .txt, .md
# 默认模板
node scripts/slidespeak.mjs templates
# 品牌模板(如果已配置)
node scripts/slidespeak.mjs templates --branded
生成完成后,使用 request_id 下载:
node scripts/slidespeak.mjs download <request_id>
返回一个包含短期有效下载 URL 的 JSON 对象。
编辑现有演示文稿中的幻灯片:
# 在位置 2 插入新幻灯片
node scripts/slidespeak.mjs edit-slide \
--presentation-id <id> \
--type INSERT \
--position 2 \
--prompt "关于市场分析的内容"
# 重新生成位置 3 的幻灯片
node scripts/slidespeak.mjs edit-slide \
--presentation-id <id> \
--type REGENERATE \
--position 3 \
--prompt "此幻灯片的更新内容"
# 删除位置 4 的幻灯片
node scripts/slidespeak.mjs edit-slide \
--presentation-id <id> \
--type REMOVE \
--position 4
编辑类型:
- INSERT:在指定位置添加新幻灯片
- REGENERATE:替换现有幻灯片内容
- REMOVE:删除幻灯片(无需提示)
用于调试或手动轮询:
node scripts/slidespeak.mjs status <task_id>
node scripts/slidespeak.mjs me
要精确控制每个幻灯片,请使用逐幻灯片端点。完整模式请参阅 references/API.md。
node scripts/slidespeak.mjs generate-slides --config slides.json
其中 slides.json 包含:
{
"slides": [
{"title": "介绍", "layout": "title", "content": "欢迎信息"},
{"title": "关键点", "layout": "bullets", "item_amount": 4, "content": "主要讨论点"}
],
"template": "default"
}
订阅以在任务完成时接收通知:
# 订阅
node scripts/slidespeak.mjs webhook-subscribe --url "https://your-webhook.com/endpoint"
# 取消订阅
node scripts/slidespeak.mjs webhook-unsubscribe --url "https://your-webhook.com/endpoint"
脚本输出 JSON,格式为:
- 成功:{"success": true, "data": {...}}
- 错误:{"success": false, "error": "message"}
node scripts/slidespeak.mjs generate --text "机器学习简介" --length 8 --tone educational
# 上传 PDF
RESULT=$(node scripts/slidespeak.mjs upload report.pdf)
DOC_ID=$(echo $RESULT | jq -r '.data.document_uuid')
# 生成演示文稿
node scripts/slidespeak.mjs generate --document "$DOC_ID" --length 12
node scripts/slidespeak.mjs edit-slide \
--presentation-id "abc123" \
--type INSERT \
--position 5 \
--prompt "添加一张关于季度收入增长及图表的幻灯片"
有关所有参数、布局类型和约束的详细 API 文档,请阅读 references/API.md。