nature-image2ppt
Skill0 starsChanged 2 months agoMITView on GitHub
Convert slide images, screenshots, scanned PDFs, and image-only PPT/PPTX files into high-fidelity object-level editable PowerPoint, including semantic-region mixed reconstruction, measured flowcharts and knowledge graphs, native circle nodes and connectors, single-object thin and filled arrows, speaker-note preservation, and rendered QA. Use for 图片转可编辑PPT、截图还原PPT、扫描PDF恢复、图片型PPTX转换、流程图/知识图谱/复合图形/箭头重建; not for authoring a new deck from notes.
2 other projects use a version of this, 2 of them edited.
Adopted by
Most recently taken up by
- Luooops/skillsedited, first seen Oct 13, 2026
- Yuan1z0825/nature-skillsedited, first seen Aug 31, 2026
Other versions2 projects use a version of this.
Word for word · 0
None found.
Edited · 2
- Yuan1z0825/nature-skills★ 53k98% same
- Luooops/skills★ 198% same
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository21 other files it gives its agents.
- journal-style-learnSkill
- nature-academic-searchSkill
- nature-citationSkill
- nature-dataSkill
- nature-downloaderSkill
- nature-experiment-logSkill
- nature-figure-prompt-onlySkill
- nature-figureSkill
- nature-literature-pipelineSkill
- nature-paper2pptSkill
- nature-paper-cardSkill
- nature-paper-to-patentSkill
- nature-polishingSkill
- researchwriteSkill
- nature-readerSkill
- nature-ref-verifierSkill
- nature-responseSkill
- nature-reviewerSkill
- nature-sharedSkill
- nature-statisticsSkill
- nature-writingSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
28 rules. About 0 are common, 10 are distinctive, and 18 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈10
Distinctive · estimate
This author's own choices. Worth a look.
18
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 14
Treat a source journal as metadata: preserve the source’s facts and structure.
- Distinctive: line 16
Keep this skill’s original source-processing workflow.
- Very specific: line 23
Do not restyle source slides to ESWA manuscript rules merely from a journal label.
- Very specific: line 24
Only if journal fit or submission requirements are requested, read ../nature-shared/journal-formats/eswa.md.
- Distinctive: line 29
Use this directory as the complete runtime.
- Very specific: line 35
Use Python 3.10 or later with requirements.txt installed.
- Distinctive: line 41
Do not discover or invoke another Skill, CLI, Prompt, Schema, module, or state machine.
- Very specific: line 45
Always read references/workflow.md.
- Very specific: line 49
Before writing a page manifest, read references/page-decision-tree.md and references/manifest-schema.md.
- Very specific: line 57
Before accepting or delivering output, read references/qa-contract.md.
- Very specific: line 61
Treat page_jobs.json as the only page-state source.
- Very specific: line 62
Treat each pages/page_NNN/manifest.json as the only page-content source.
- Very specific: line 63
Treat deck_manifest.json as the final-assembly source.
- Very specific: line 64
Use only prepare, run next/dispatch/record/reset/hints/finalize, and the page commands in the local CLI for stateful lifecycle operations.
- Very specific: line 66
Keep semantic-region evidence in manifest.json.image2ppt_region_decomposition.
- Distinctive: line 67
Never create a second job file, reconstruction plan, OCR normalizer, page controller, packager, or finalize path.
- Distinctive: line 79
Run-level manifests and final outputs must remain inside the prepared run directory.
- Distinctive: line 82
Treat any boundary rejection as a hard failure.
- Very specific: line 87
Treat self-containment as a path/import/entrypoint migration, not a redesign of reconstruction behavior.
- Distinctive: line 91
Prefer the previously validated visual strategy when several routes satisfy the contracts.
- Distinctive: line 94
Never re-author an accepted baseline page merely to prove runtime independence.
- Very specific: line 100
Use builtin-imagegen when the agent runtime exposes image_gen.imagegen.
- Very specific: line 122
Use Baidu AI Studio PADDLE_OCR_TOKEN when configured.
- Very specific: line 139
Use --no-text-hints only when OCR processing is intentionally disabled.
- Distinctive: line 163
Use measured compound diagrams: measure every node, relation, and protected anchor.
- Very specific: line 172
Write new page manifests with schema_version: 2.
- Very specific: line 206
Use the same run reset → dispatch → record lifecycle to repair rejected pages.
- Very specific: line 210
When run next reports finalize, run:
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Nature Image2PPT
Additional configured journals
For Applied Soft Computing (ASC), Engineering Applications of Artificial
Intelligence (EAAI), ISA Transactions, Knowledge-Based Systems (KBS),
Measurement, Neurocomputing, or IEEE Transactions on Reliability, use
../nature-shared/journal-formats/index.md to resolve the exact journal.
Treat a source journal as metadata: preserve the source’s facts and structure.
Load submission constraints only when target formatting or fit is requested.
Keep this skill’s original source-processing workflow.
ESWA journal context
Recognize Expert Systems with Applications (ESWA, Expert Syst. Appl.)
as the same journal, case-insensitively; distinguish similarly named titles.
Preserve the supplied image/slide content and reconstruction intent.
Do not restyle source slides to ESWA manuscript rules merely from a journal label.
Only if journal fit or submission requirements are requested, read
../nature-shared/journal-formats/eswa.md; otherwise keep this workflow
source-oriented without loading submission rules.
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.
Read the local contracts progressively
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:
- structured or compound page:
references/region-decomposition.mdandreferences/object-routing.md; - arrows:
references/manifest-arrow-extension.md; - raster assets or image-backend work:
references/assets-provenance-contract.md.
Before accepting or delivering output, read references/qa-contract.md.
Preserve the single source of truth
- Treat
page_jobs.jsonas the only page-state source. - Treat each
pages/page_NNN/manifest.jsonas the only page-content source. - Treat
deck_manifest.jsonas the final-assembly source. - Use only
prepare,run next/dispatch/record/reset/hints/finalize, and the page commands in the local CLI for stateful lifecycle operations. - Keep semantic-region evidence in
manifest.json.image2ppt_region_decomposition. - Never create a second job file, reconstruction plan, OCR normalizer, page controller, packager, or finalize path.
- Let supplemental QA report failures; never let it mutate lifecycle state.
Keep every write inside its owner directory
- Page build, validation, hints, and QA may read and write only inside that page
directory. Manifest paths, recorded assets, formulas, reports, previews, and
--outoverrides must not use.., symlinks, or absolute paths to escape it. The sole external-input exception is an explicit image-tool result supplied toimage importor asprocess-sheet --asset-sheet-source; it is copied into the page before becoming a build dependency. - Run-level manifests and final outputs must remain inside the prepared run directory. Finalization rebuilds into a same-directory temporary file and publishes it atomically only after a successful build.
- Treat any boundary rejection as a hard failure; do not copy the rejected file back into scope and present it as runtime output.
Preserve pre-migration behavior
- Treat self-containment as a path/import/entrypoint migration, not a redesign of reconstruction behavior.
- Generate each worker Prompt from the complete local base layer plus the preserved Image2PPT profile layer. Do not condense, reinterpret, or replace either layer.
- Prefer the previously validated visual strategy when several routes satisfy the contracts. Keep simple measured objects native and retain bounded complex assets wherever a native redraw would reduce fidelity.
- Never re-author an accepted baseline page merely to prove runtime independence.
Run the workflow
Image backend selection
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.
1. Preflight and OCR choice
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.
2. Prepare one run
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>3. Advance and claim pages
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.
4. Reconstruct and gate each page
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.
5. Finalize and revalidate the rebuilt deck
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.
Deliver
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.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

