PowerPoint PPTX Toolkit
XiaomiMiMo/MiMo-Code
Creates, edits and reads PowerPoint .pptx files with python-pptx or PptxGenJS, with scripts for XML edits, text dumps, PDF and image rendering, and thumbnails.
Rebuilds slide images, screenshots, scanned PDFs or image-only PPTX files as PowerPoint with editable objects, using a local CLI with per-page manifests and QA.
$ npx skills add Yuan1z0825/nature-skills --skill nature-image2ppt -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Yuan1z0825/nature-skills nature-image2ppt --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/Yuan1z0825/nature-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/nature-image2ppt .claude/skills/nature-image2ppt && 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 "nature-image2ppt" agent skill from https://github.com/Yuan1z0825/nature-skills/tree/main/skills/nature-image2ppt into .claude/skills/nature-image2ppt/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nature-image2ppt", 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/Yuan1z0825/nature-skills/tree/main/skills/nature-image2pptType 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 Yuan1z0825/nature-skills --skill nature-image2ppt -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Yuan1z0825/nature-skills nature-image2ppt --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Yuan1z0825/nature-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/nature-image2ppt .agents/skills/nature-image2ppt && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "nature-image2ppt" agent skill from https://github.com/Yuan1z0825/nature-skills/tree/main/skills/nature-image2ppt into .agents/skills/nature-image2ppt/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nature-image2ppt", 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 Yuan1z0825/nature-skills --skill nature-image2ppt -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Yuan1z0825/nature-skills nature-image2ppt --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Yuan1z0825/nature-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/nature-image2ppt .cursor/skills/nature-image2ppt && 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 "nature-image2ppt" agent skill from https://github.com/Yuan1z0825/nature-skills/tree/main/skills/nature-image2ppt into .cursor/skills/nature-image2ppt/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nature-image2ppt", 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/Yuan1z0825/nature-skills.git --path skills/nature-image2ppt--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 Yuan1z0825/nature-skills --skill nature-image2ppt -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Yuan1z0825/nature-skills nature-image2ppt --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Yuan1z0825/nature-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/nature-image2ppt .gemini/skills/nature-image2ppt && 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 "nature-image2ppt" agent skill from https://github.com/Yuan1z0825/nature-skills/tree/main/skills/nature-image2ppt into .gemini/skills/nature-image2ppt/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nature-image2ppt", 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 Yuan1z0825/nature-skills nature-image2pptInstalls 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 Yuan1z0825/nature-skills --skill nature-image2ppt -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Yuan1z0825/nature-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/nature-image2ppt .github/skills/nature-image2ppt && 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 "nature-image2ppt" agent skill from https://github.com/Yuan1z0825/nature-skills/tree/main/skills/nature-image2ppt into .github/skills/nature-image2ppt/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nature-image2ppt", 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 Yuan1z0825/nature-skills --skill nature-image2ppt -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Yuan1z0825/nature-skills nature-image2ppt --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Yuan1z0825/nature-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/nature-image2ppt .opencode/skills/nature-image2ppt && 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 "nature-image2ppt" agent skill from https://github.com/Yuan1z0825/nature-skills/tree/main/skills/nature-image2ppt into .opencode/skills/nature-image2ppt/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nature-image2ppt", 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.
nature-image2pptRebuilds slide images, screenshots, scanned PDFs or image-only PPTX files as PowerPoint with editable objects, using a local CLI with per-page manifests and QA.
The skill treats its own directory as the whole runtime and runs deterministic steps only through `cli/image2ppt/cli.py`, with Python 3.10 or later and the requirements installed. A `doctor` command checks dependencies, and work stops if it fails until the one reported missing piece is installed. The agent is told not to discover or call any other skill, CLI, prompt, schema or state machine.
State has a single source of truth: `page_jobs.json` for page state, a `manifest.json` in each page folder for page content and `deck_manifest.json` for the final assembly. Lifecycle commands (`prepare` and the `run` subcommands next, dispatch, record, reset, hints and finalize) move pages through the job, and QA may report failures but never changes state. Each page's work stays inside that page's folder. References are read progressively: a workflow guide always, a decision tree and manifest schema before writing a manifest, others when a page needs them, and a QA contract before delivery. It is not for writing a new deck from research notes.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit e605b35. 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 1 file in scripts/ (Python, from the files we listed), which the agent can run.
Shell commands in SKILL.md call:
pythonFrom 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:
PADDLE_OCR_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Image to Editable PPTX loads about 2.5k tokens when it runs, and up to ~26k if it reads all its reference files. Until then it costs about 58 tokens; SKILL.md has 1,033 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 found no risky patterns in SKILL.md.
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 Yuan1z0825/nature-skills at commit e605b35, republished under its MIT licence (© Yuan1z0825). 1,033 words, ~2,509 tokens.
.claude/skills/nature-image2ppt/SKILL.md (or your agent's skills folder). This skill also uses 94 other files; get the full folder from GitHub.Use this directory as the complete runtime. Run deterministic actions only through:
python <image2ppt-root>/cli/image2ppt/cli.py <command> ...Use Python 3.10 or later with requirements.txt installed. When a dedicated
environment exists, substitute <image2ppt-root>/.venv/bin/python on macOS/Linux
or <image2ppt-root>/.venv/Scripts/python.exe on Windows for every python
command below. Do not continue after a failed doctor; install only the reported
missing dependency, then rerun it.
Do not discover or invoke another Skill, CLI, Prompt, Schema, module, or state machine.
Always read references/workflow.md. Read references/runtime-dependencies.md
only for setup or doctor failures, and read
references/ocr-text-hints-contract.md only when choosing or troubleshooting OCR.
Before writing a page manifest, read references/page-decision-tree.md and
references/manifest-schema.md. Add only the references needed by that page:
references/region-decomposition.md and
references/object-routing.md;references/manifest-arrow-extension.md;references/assets-provenance-contract.md.Before accepting or delivering output, read references/qa-contract.md.
page_jobs.json as the only page-state source.pages/page_NNN/manifest.json as the only page-content source.deck_manifest.json as the final-assembly source.prepare, run next/dispatch/record/reset/hints/finalize, and the
page commands in the local CLI for stateful lifecycle operations.manifest.json.image2ppt_region_decomposition.--out overrides must not use .., symlinks, or absolute paths to escape it.
The sole external-input exception is an explicit image-tool result supplied to
image import or as process-sheet --asset-sheet-source; it is copied into the
page before becoming a build dependency.Use builtin-imagegen when the agent runtime exposes image_gen.imagegen; it is
the preferred backend because the worker can inspect edit inputs and import the
explicit local result. Use the CLI image contract only when the built-in tool is
unavailable, errors, cannot read an input, or returns no valid local output. A
missing optional argument such as model, mask, size, quality, or output path never
authorizes fallback. Record the actual producer and permitted fallback reason in
imagegen-jobs.json.
The CLI image contract is provider-neutral at the transport boundary. Select
codex-oauth only for GPT Image model ids. Select openai-compatible-api for any
provider-specific model whose endpoint implements the OpenAI Images-compatible
/images/generations and/or /images/edits schema. Do not infer the image backend
from the task's language model. Use an explicit backend when provenance matters;
auto uses Codex OAuth only for compatible GPT Image ids and otherwise selects the
configured API without sending Codex OAuth credentials to third parties.
python <image2ppt-root>/cli/image2ppt/cli.py doctor --jsonUse Baidu AI Studio PADDLE_OCR_TOKEN when configured. If it is absent, tell the
user once that the local builtin-ink fallback measures text geometry but does
not recognize characters; offer the configuration path in
references/ocr-text-hints-contract.md. Respect an offline-only choice.
python <image2ppt-root>/cli/image2ppt/cli.py prepare <input...> \
--out-root output/image2ppt --image-backend builtin-imagegenTo pin a configured third-party provider/model for auditable provenance, prepare
with --image-backend openai-compatible-api. The run contract records the exact
IMAGE2PPT_IMAGE_MODEL from the active project config or environment; it does not
substitute a GPT Image default merely because no --model flag was passed.
Use --no-text-hints only when OCR processing is intentionally disabled. Regenerate
hints without creating a new run when needed:
python <image2ppt-root>/cli/image2ppt/cli.py run hints <run-dir>python <image2ppt-root>/cli/image2ppt/cli.py run next <run-dir> --json
python <image2ppt-root>/scripts/build_page_worker_prompt.py \
<run-dir> --page <page-id> --out <absolute-page-dir>/worker-prompt.md
python <image2ppt-root>/cli/image2ppt/cli.py run dispatch \
<run-dir> --page <page-id> --agent-id <id> --prompt-file <absolute-prompt>For exactly one page, claim it with --local and reconstruct it in the current
agent. For multiple pages, dispatch independent page workers up to the capacity in
page_jobs.json. Do not reset a live worker merely because it is slow.
Plan a structured page as 3–5 semantic regions and route each region independently. Use measured compound diagrams: measure every node, relation, and protected anchor. Keep measurable circles, cards, straight/dashed relations, and simple connectors native. Use bounded transparent assets only for complex local subparts.
Represent a thin arrow as one connector with its arrowhead on the same object. Represent a filled arrow as one Arrow AutoShape, with centered label text inside the same object. Never construct an ordinary arrow from a line plus triangle and never flatten a whole knowledge graph into one image.
Write new page manifests with schema_version: 2. Use structured
visual_inventory items with explicit kind and representation values, and
write a concrete quality_evidence observation for every required quality check.
Formula rendering is a hard gate: a missing engine, converter, or failed compile
must keep the page failed unless the user explicitly approves that exact formula
exception and the manifest records both user_approved_exception: true and a
concrete approval_note.
The worker Prompt performs the deterministic sequence. Its final gates are:
python <image2ppt-root>/cli/image2ppt/cli.py page build <page-dir>
python <image2ppt-root>/scripts/run_image2ppt_qa.py <page-dir>
# The first run writes visual-review-evidence.template.json and remains pending.
# Inspect source.png against render/rendered.png, copy and complete the template
# as visual-review-evidence.json, repair if needed, then:
python <image2ppt-root>/scripts/run_image2ppt_qa.py <page-dir> \
--visual-review-status reviewed \
--visual-review-evidence <page-dir>/visual-review-evidence.json
python <image2ppt-root>/cli/image2ppt/cli.py page contact-sheet <page-dir>The evidence file must cover the current source/render hashes and every required
check with a specific observation. --visual-review-notes is optional context and
cannot substitute for the evidence file.
Record only after standard validation and the Image2PPT region, arrow, and rendered gates pass:
python <image2ppt-root>/cli/image2ppt/cli.py run record \
<run-dir> --page <page-id> --agent-id <id>Use the same run reset → dispatch → record lifecycle to repair rejected pages.
When run next reports finalize, run:
python <image2ppt-root>/cli/image2ppt/cli.py run finalize <run-dir>
python <image2ppt-root>/scripts/run_final_image2ppt_qa.py <run-dir>
# The first run writes final/visual-review-evidence.template.json and remains pending.
# Inspect every rendered slide, complete final/visual-review-evidence.json, then:
python <image2ppt-root>/scripts/run_final_image2ppt_qa.py <run-dir> \
--visual-review-status reviewed \
--visual-review-evidence <run-dir>/final/visual-review-evidence.jsonFinalize rebuilds from page manifests, preserves source speaker notes, validates the
package, and writes the output recorded by deck_manifest.json. Final QA reapplies
manifest arrows, verifies arrow atomicity and compound structure, renders every
slide, checks speaker-note integrity, and writes final/image2ppt_qa.json.
Return the final PPTX path, standard final validation, and
final/image2ppt_qa.json. Report which complex visuals remain replaceable bitmap
assets. Do not call the deck complete while any page/final gate is pending or failed.
© Yuan1z0825, 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 94 other files (scripts, references) in skills/nature-image2ppt of Yuan1z0825/nature-skills.
Open the folder on GitHubat commit e605b35
Image to Editable PPTX 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 |
|---|---|---|---|---|---|---|
| Image to Editable PPTX this skillYuan1z0825/nature-skills | 47k | — | ~2.5k | Automated safety check: Pass | MIT | |
| PowerPoint PPTX ToolkitXiaomiMiMo/MiMo-Code | 14k | — | ~6.8k | Automated safety check: Notes | Apache-2.0 | |
| PPT Masterhugohe3/ppt-master | 59k | 1 repos | ~2.5k | Automated safety check: Pass | MIT | |
| Open Kimi Pptjinwyp/open-ppt-skill | 161 | 2 repos | ~5.1k | Automated safety check: Pass | MIT | |
| McKinsey-Style PPT Designlikaku/Mck-ppt-design-skill | 297 | — | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| AI Image PowerPoint Generatorbytedance/deer-flow | 84k | 4 repos | ~7.1k | Automated safety check: Pass | MIT |
XiaomiMiMo/MiMo-Code
Creates, edits and reads PowerPoint .pptx files with python-pptx or PptxGenJS, with scripts for XML edits, text dumps, PDF and image rendering, and thumbnails.
hugohe3/ppt-master
Generates editable PowerPoint decks, rebuilds slides from images, fills .pptx templates and polishes existing presentations through routed workflows.
jinwyp/open-ppt-skill
Create, edit, replicate, read, and export presentations. An agent skill from jinwyp/open-ppt-skill.
likaku/Mck-ppt-design-skill
Builds consultant-style PowerPoint decks from scratch with the MckEngine python-pptx wrapper, through a five-stage flow with scripted quality gates.
bytedance/deer-flow
Creates a PowerPoint deck by planning the slide structure, generating one AI image per slide in a chosen visual style, and assembling the images into a PPTX file.
EveryInc/hands-on-deck
Reads, edits, creates, merges and visually verifies .pptx decks through one script, deck.py, which applies atomic JSON patches.
Yuan1z0825/nature-skills
Builds a structured deep-reading card for one scientific paper, covering methods, how experiments support claims, limitations and research ideas, with a script to prepare the source.
Yuan1z0825/nature-skills
Creates, revises, audits and exports manuscript-ready scientific figures in Python or R, and routes AI-generated graphical abstracts to a separate workflow.
Yuan1z0825/nature-skills
Drafts Chinese invention patent applications and technical disclosures from research papers or inventor materials, tying each claim feature to source evidence.
Yuan1z0825/nature-skills
Composes, revises or audits research proposals and opening reports through an evidence-first state machine with argument maps, section contracts and dynamic expert reviewers.
Yuan1z0825/nature-skills
Routes literature requests to lawful full-text sources: open access, publisher APIs, CNKI and institutional browser access, with a supporting-information gate.
Yuan1z0825/nature-skills
Audits or rewrites the statistical reporting in a manuscript: experimental units, replication, tests, uncertainty and figure legends, without inventing missing details.
Works with
Categories
Rebuilds slide images, screenshots, scanned PDFs or image-only PPTX files as PowerPoint with editable objects, using a local CLI with per-page manifests and QA. 10 or later and the requirements installed. A `doctor` command checks dependencies, and work stops if it fails until the one reported missing piece is installed.
Image to Editable PPTX fits situations like: converting a screenshot of a slide into an editable PowerPoint slide; rebuilding a scanned PDF deck as editable slides; reconstructing a diagram image as native shapes and arrows.
Run `npx skills add Yuan1z0825/nature-skills --skill nature-image2ppt -a claude-code`. Or copy the skill folder (skills/nature-image2ppt in Yuan1z0825/nature-skills) into .claude/skills/nature-image2ppt in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Yuan1z0825/nature-skills --skill nature-image2ppt -a codex`. Or copy the skill folder (skills/nature-image2ppt in Yuan1z0825/nature-skills) into .agents/skills/nature-image2ppt 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 Yuan1z0825/nature-skills --skill nature-image2ppt -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/nature-image2ppt, .gemini/skills/nature-image2ppt, .github/skills/nature-image2ppt and .opencode/skills/nature-image2ppt in your project.
Going by SKILL.md and its folder, Image to Editable PPTX needs Python for the scripts in its folder, the command-line tools its instructions call (python) and credentials named PADDLE_OCR_TOKEN. Our summary lists: Python 3.10 or later with the skill's `requirements.txt` installed; Any dependency that the `doctor` command reports as missing.
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 no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. 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.
Image to Editable PPTX is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.5k tokens (SKILL.md is roughly 10k 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 24k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Image to Editable PPTX: PowerPoint PPTX Toolkit (XiaomiMiMo/MiMo-Code, 14k stars), PPT Master (hugohe3/ppt-master, 59k stars), Open Kimi Ppt (jinwyp/open-ppt-skill, 161 stars) and McKinsey-Style PPT Design (likaku/Mck-ppt-design-skill, 297 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Yuan1z0825 (a GitHub user) maintains it in Yuan1z0825/nature-skills, which has 47,222 GitHub stars. The repository holds 23 skills in this directory. The repository was last updated on October 11, 2026.
Source: Yuan1z0825/nature-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.