Image-Based PPT Deck Generator
ningzimu/codex-ppt-skill
Builds visually unified PowerPoint decks from articles, reports, papers, notes or outlines, with every slide generated as a full 16:9 image and assembled into a .pptx.
Fallback scripts for web search, image search and download, and image generation that PPT skills use only when the host agent lacks or fails its own tools.
SKILL.md written in Chinese; this summary is our English description.
$ npx skills add OpenSenseNova/SenseNova-Skills --skill sn-ppt-tools -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install OpenSenseNova/SenseNova-Skills sn-ppt-tools --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/OpenSenseNova/SenseNova-Skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/sn-ppt-tools .claude/skills/sn-ppt-tools && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "sn-ppt-tools" agent skill from https://github.com/OpenSenseNova/SenseNova-Skills/tree/main/skills/sn-ppt-tools into .claude/skills/sn-ppt-tools/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "sn-ppt-tools", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/OpenSenseNova/SenseNova-Skills/tree/main/skills/sn-ppt-toolsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add OpenSenseNova/SenseNova-Skills --skill sn-ppt-tools -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install OpenSenseNova/SenseNova-Skills sn-ppt-tools --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/OpenSenseNova/SenseNova-Skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/sn-ppt-tools .agents/skills/sn-ppt-tools && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "sn-ppt-tools" agent skill from https://github.com/OpenSenseNova/SenseNova-Skills/tree/main/skills/sn-ppt-tools into .agents/skills/sn-ppt-tools/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "sn-ppt-tools", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add OpenSenseNova/SenseNova-Skills --skill sn-ppt-tools -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install OpenSenseNova/SenseNova-Skills sn-ppt-tools --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/OpenSenseNova/SenseNova-Skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/sn-ppt-tools .cursor/skills/sn-ppt-tools && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "sn-ppt-tools" agent skill from https://github.com/OpenSenseNova/SenseNova-Skills/tree/main/skills/sn-ppt-tools into .cursor/skills/sn-ppt-tools/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "sn-ppt-tools", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/OpenSenseNova/SenseNova-Skills.git --path skills/sn-ppt-tools--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add OpenSenseNova/SenseNova-Skills --skill sn-ppt-tools -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install OpenSenseNova/SenseNova-Skills sn-ppt-tools --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/OpenSenseNova/SenseNova-Skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/sn-ppt-tools .gemini/skills/sn-ppt-tools && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "sn-ppt-tools" agent skill from https://github.com/OpenSenseNova/SenseNova-Skills/tree/main/skills/sn-ppt-tools into .gemini/skills/sn-ppt-tools/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "sn-ppt-tools", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install OpenSenseNova/SenseNova-Skills sn-ppt-toolsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add OpenSenseNova/SenseNova-Skills --skill sn-ppt-tools -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/OpenSenseNova/SenseNova-Skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/sn-ppt-tools .github/skills/sn-ppt-tools && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "sn-ppt-tools" agent skill from https://github.com/OpenSenseNova/SenseNova-Skills/tree/main/skills/sn-ppt-tools into .github/skills/sn-ppt-tools/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "sn-ppt-tools", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add OpenSenseNova/SenseNova-Skills --skill sn-ppt-tools -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install OpenSenseNova/SenseNova-Skills sn-ppt-tools --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/OpenSenseNova/SenseNova-Skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/sn-ppt-tools .opencode/skills/sn-ppt-tools && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "sn-ppt-tools" agent skill from https://github.com/OpenSenseNova/SenseNova-Skills/tree/main/skills/sn-ppt-tools into .opencode/skills/sn-ppt-tools/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "sn-ppt-tools", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
sn-ppt-toolsFallback scripts for web search, image search and download, and image generation that PPT skills use only when the host agent lacks or fails its own tools.
A Chinese-language helper bundle for PPT skills, not a standalone content workflow. The host agent's equivalent native tool always comes first, and these scripts run only if that capability is absent or a real call has failed. The agent reads references/capability-policy.md before calling anything. Scripts cover web search, image search, image download through fetch_image.py and image generation.
Configuration comes from environment variables loaded from a user-level .env file, chosen by SN_PPT_ENV_FILE or defaulting to ~/.openclaw/.env under OpenClaw and ~/.hermes/.env elsewhere, with variables already in the process taking priority. Secrets must never go into the skill folder, workspace, command line, prompts or task pack. Search uses Serper-style endpoints and image generation uses an OpenAI or SenseNova compatible images/generations call. Scripts print one JSON line with a status of ok, unavailable or failed, write images only inside the given deck directory, and do not retry a failed capability in a loop.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 7838651. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 5 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
python3From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
SN_PPT_SEARCH_API_KEYSERPER_API_KEYSN_PPT_WEB_SEARCH_API_KEYSN_PPT_IMAGE_SEARCH_API_KEYSN_PPT_IMAGE_GEN_API_KEYSN_IMAGE_GEN_API_KEYSN_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
SenseNova PPT Fallback Tools loads about 575 tokens when it runs, and up to ~1.3k if it reads all its reference files. Until then it costs about 45 tokens; SKILL.md has 106 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
四个脚本每次启动都会自动加载一个用户级 `.env`:2. OpenClaw 读取 `~/.openclaw/.env`;3. 其他环境默认读取 `~/.hermes/.env`。已有进程环境变量优先,`.env` 只补充缺失项。不要把 secret 写进 Skill 目录、workspace、Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from OpenSenseNova/SenseNova-Skills at commit 7838651, republished under its MIT licence (© OpenSenseNova). 106 words, ~575 tokens.
.claude/skills/sn-ppt-tools/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.这是 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 内。© OpenSenseNova, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 6 other files (scripts, references) in skills/sn-ppt-tools of OpenSenseNova/SenseNova-Skills.
Open the folder on GitHubat commit 7838651
SenseNova PPT Fallback Tools next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| SenseNova PPT Fallback Tools this skillOpenSenseNova/SenseNova-Skills | 5.7k | — | ~575 | Automated safety check: Notes | MIT | |
| Image-Based PPT Deck Generatorningzimu/codex-ppt-skill | 6.5k | — | ~2.6k | Automated safety check: Notes | MIT | |
| Slide Deck GeneratorJimLiu/baoyu-skills | 26k | 5 repos | ~5.8k | Automated safety check: Pass | MIT | |
| Slide Deck Image GeneratorSpaceZephyr/design-buddy | 175 | — | ~6.5k | Automated safety check: Pass | None | |
| Nano BananaEvoScientist/EvoSkills | 476 | 2 repos | ~3.5k | Automated safety check: Pass | Apache-2.0 | |
| Gpt Image Slide Planhumantonylee/future-slide | 150 | — | ~2.6k | Automated safety check: Pass | Apache-2.0 |
ningzimu/codex-ppt-skill
Builds visually unified PowerPoint decks from articles, reports, papers, notes or outlines, with every slide generated as a full 16:9 image and assembled into a .pptx.
JimLiu/baoyu-skills
Turns source content into a deck of slide images: it writes an outline with style instructions, then renders each slide as its own image.
SpaceZephyr/design-buddy
Turns written content into designed slide images from an outline, merges them into PPTX or PDF, and can borrow styles from a registry of brand design systems.
EvoScientist/EvoSkills
Generate professional presentation slides and high-quality illustrations using Gemini image generation API (Nano Banana 2), with interactive browser-based review and iterative editing.
humantonylee/future-slide
Persuasive GPT image deck-planning skill. An agent skill from humantonylee/future-slide.
TyrealQ/q-skills
Generates branded slide deck images from written content, with a content analysis step, a layout catalog and scripts that merge the slides into PowerPoint or PDF.
OpenSenseNova/SenseNova-Skills
Builds HTML stories where one continuous camera journey advances with page progress, using researched structure, AI stills, Seedance video clips and browser QA.
OpenSenseNova/SenseNova-Skills
Opens the PPT Workbench web editor for an existing SenseNova HTML slide deck so you can preview, inspect and visually edit it without regenerating.
OpenSenseNova/SenseNova-Skills
Turns an approved slide outline into a full-page image for every slide, one 16:9 PNG per page, and optionally packages the set into a PPTX.
OpenSenseNova/SenseNova-Skills
Entry point for SenseNova presentation generation: creates a task folder, picks depth, output format and design richness, and routes to the right PPT skill.
OpenSenseNova/SenseNova-Skills
Researches Chinese market, macro, trade, procurement, listed-company and regulatory information from free official sources that need no sign-up or API key.
OpenSenseNova/SenseNova-Skills
Low-level SenseNova tools for image generation, image editing, image recognition with a VLM and text optimization with an LLM, meant to be called by higher-level skills rather than directly.
Categories
Fallback scripts for web search, image search and download, and image generation that PPT skills use only when the host agent lacks or fails its own tools. A Chinese-language helper bundle for PPT skills, not a standalone content workflow. The host agent's equivalent native tool always comes first, and these scripts run only if that capability is absent or a real call has failed.
SenseNova PPT Fallback Tools fits situations like: A PPT skill needs web search and the host has no search tool; downloading a chosen image into a deck folder; generating slide images when native image generation fails.
Run `npx skills add OpenSenseNova/SenseNova-Skills --skill sn-ppt-tools -a claude-code`. Or copy the skill folder (skills/sn-ppt-tools in OpenSenseNova/SenseNova-Skills) into .claude/skills/sn-ppt-tools in your project. Claude Code loads it when a task matches its description.
Run `npx skills add OpenSenseNova/SenseNova-Skills --skill sn-ppt-tools -a codex`. Or copy the skill folder (skills/sn-ppt-tools in OpenSenseNova/SenseNova-Skills) into .agents/skills/sn-ppt-tools in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add OpenSenseNova/SenseNova-Skills --skill sn-ppt-tools -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/sn-ppt-tools, .gemini/skills/sn-ppt-tools, .github/skills/sn-ppt-tools and .opencode/skills/sn-ppt-tools in your project.
Going by SKILL.md and its folder, SenseNova PPT Fallback Tools needs Python for the scripts in its folder, the command-line tools its instructions call (python3) and credentials named SN_PPT_SEARCH_API_KEY, SERPER_API_KEY, SN_PPT_WEB_SEARCH_API_KEY and SN_PPT_IMAGE_SEARCH_API_KEY. Our summary lists: Python 3, to run the scripts; API keys and endpoint URLs set in a user-level .env file or the environment; A deck directory given as an absolute path.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
SenseNova PPT Fallback Tools is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 575 tokens (SKILL.md is roughly 2.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 749 tokens, read only when the agent opens those files.
Skills that share tags, products or a category with SenseNova PPT Fallback Tools: Image-Based PPT Deck Generator (ningzimu/codex-ppt-skill, 6.5k stars), Slide Deck Generator (JimLiu/baoyu-skills, 26k stars), Slide Deck Image Generator (SpaceZephyr/design-buddy, 175 stars) and Nano Banana (EvoScientist/EvoSkills, 476 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
OpenSenseNova (a GitHub organization) maintains it in OpenSenseNova/SenseNova-Skills, which has 5,747 GitHub stars. The repository holds 36 skills in this directory. The repository was last updated on October 9, 2026.
Source: OpenSenseNova/SenseNova-Skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.