Use when another PPT Skill needs web search, image search or download, or image generation and the host Agent's equivalent native capability is absent or has failed.
68
84%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Low
Low-risk findings worth noting
这是 PPT Skill 整包自带的备用工具,不是独立内容生产流程。调用前先读
references/capability-policy.md。宿主 Agent 的等价原生工具始终优先;只有原生能力
不存在或一次实际调用确认不可用时,才调用这里的脚本。
四个脚本每次启动都会自动加载一个用户级 .env:
SN_PPT_ENV_FILE 时读取该文件;~/.openclaw/.env;~/.hermes/.env。已有进程环境变量优先,.env 只补充缺失项。不要把 secret 写进 Skill 目录、workspace、
命令行、prompt 或 task pack。完整模板和缺失项检查通过 sn-ppt-doctor 查看。
python3 "$PPT_TOOLS_DIR/scripts/web_search.py" "QUERY" --num 10配置:
SN_PPT_WEB_SEARCH_URL;否则
SN_PPT_SEARCH_BASE_URL / SERPER_BASE_URL 加 /search。SN_PPT_WEB_SEARCH_API_KEY -> SN_PPT_SEARCH_API_KEY ->
SERPER_API_KEY。python3 "$PPT_TOOLS_DIR/scripts/image_search.py" "QUERY" --num 10
python3 "$PPT_TOOLS_DIR/scripts/fetch_image.py" \
"https://example.com/image.png" \
--deck-dir "$DECK_DIR" \
--output "assets/image.png" \
--referer "https://example.com/source-page"图片搜索配置:
SN_PPT_IMAGE_SEARCH_URL;否则
SN_PPT_SEARCH_BASE_URL / SERPER_BASE_URL 加 /images。SN_PPT_IMAGE_SEARCH_API_KEY -> SN_PPT_SEARCH_API_KEY ->
SERPER_API_KEY。先根据搜索元数据选择候选,再下载选中的图片。不得把远程 URL 直接留在最终 deck。
python3 "$PPT_TOOLS_DIR/scripts/image_generate.py" \
--prompt-file "$DECK_DIR/pages/page_001.prompt.txt" \
--deck-dir "$DECK_DIR" \
--output "pages/page_001.png" \
--size "2752x1536"配置:
SN_PPT_IMAGE_GEN_URL;否则
SN_IMAGE_GEN_BASE_URL / SN_BASE_URL 加 /images/generations。SN_PPT_IMAGE_GEN_API_KEY -> SN_IMAGE_GEN_API_KEY ->
SN_API_KEY。SN_PPT_IMAGE_GEN_MODEL -> SN_IMAGE_GEN_MODEL。只支持 OpenAI/SenseNova 兼容的同步 POST /images/generations 协议,响应可以是
data[].url 或 data[].b64_json。不在这里扩展其他 provider。
status 为 ok。status=unavailable,退出码为 2。status=failed,退出码为 1。DECK_DIR 内。5abde96
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.