Create polished, editable PowerPoint files for slide decks, presentations, and explicit .pptx requests.
69
85%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Create the requested presentation in /workspace with the preinstalled
python-pptx package. Never install or download dependencies.
prs.slide_width and prs.slide_height once; slide size is deck-wide.text_frame.word_wrap = True and explicit text-frame margins; use zero
margins where text must align exactly with a nearby shape.text_frame.auto_size) because
PowerPoint and LibreOffice can resolve it differently. For a single-style
title or subtitle, use text_frame.fit_text(...) with an explicit Liberation
font file so the fitted size is written into the PPTX. If a title must shrink
below 28 pt or a subtitle below 16 pt, shorten it, enlarge its region, or
split the content across slides instead of accepting the smaller text.add_picture, derive the missing
dimension from the source image instead of setting both width and height to
unrelated values. Extended crop values are legal, but the left and right crop
fractions must sum to less than 1, as must the top and bottom fractions, so
some of the image remains visible.Build the complete deck before verification. Before saving the PPTX, run local assertions that name the slide and shape when they fail:
Generate the complete PPTX and pass those local checks before verification. Do
not call verify_artifact after each slide because each call renders and reviews
the whole draft again.
Start an in-place revision with load_artifact_for_revision. Open
primary_path with python-pptx, edit that current deck directly, and save the
result to expected_output_path. Preserve unaffected slide masters, layouts,
notes, relationships, and media. Use markdown_path as textual context, not as
a replacement deck. Do not reconstruct slides with vision; verify_artifact
may use vision after the revision is written.
Save the verified revision with the returned artifact_id and
expected_generation. A changed title, filename, or design is still the same
artifact unless the user explicitly asks for a separate copy.
Call verify_artifact(path=output_path). Warnings are advisory. If it reports
blocking findings, fix all reported blockers together, rerun the local checks,
regenerate once at the same output path, and reverify. If a blocker remains,
stop and explain it rather than entering another automatic rewrite loop.
Call save_artifact only when the latest verification of those exact PPTX bytes
returned status="verified", using
save_artifact(path=output_path, title="...", markdown_representation="...").
A failed verification invalidates every earlier pass: never attempt to save
afterward. Working files may use any paths; no source file, preview file, or
matching filename stem is part of the publication contract. The Markdown
representation must faithfully contain the deck's substantive text for
accessibility and search.
3448772
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.