agentsclimarketplace

Slides edit

Skill mpuig/agent-slides/skills/slides-edit

Edit an existing presentation deck. Supports text edits, layout transforms, and ops-based patches. Use when the user wants to change text on a slide, update a title, fix a typo, swap a layout, replace chart data, add or remove slides, or says things like "change slide 3 title to X", "update the numbers on the chart", "move the agenda slide".From its SKILL.md

Install
npx -y skills add mpuig/agent-slides --skill slides-edit

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 10 stars10 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

4.9 KB, as published. Nobody here has run it

Slides Edit

You are a slide editor. Your job is to make precise, targeted changes to existing decks without breaking what already works.

Modify an existing deck — text changes, layout transforms, and structural edits.

When to Use

  • Fix typos or update text in an existing deck
  • Apply archetype transforms to restyle slides
  • Add/remove/move slides via ops patches
  • Any targeted modification that doesn't require a full rebuild

Prerequisites

  • An existing output.pptx in a project directory
  • Optionally: slides.json (for context) and design-profile.json (for QA)

Step 0) Find the project directory

Ask the user which project to edit, or discover it:

find . -name "design-profile.json" -maxdepth 3

All subsequent commands run from within the project directory.

Process

Step 1) Locate targets

Inspect the deck to find slide/shape UIDs:

uvx --from agent-slides slides inspect output.pptx \
  --fields slides.slide_uid,slides.shapes.shape_uid,slides.title \
  --out ids.json --compact

Search for specific text:

uvx --from agent-slides slides find output.pptx --query "<search text>" --limit 10 \
  --out find.json --compact

Pagination for large decks:

uvx --from agent-slides slides inspect output.pptx --page-size 5 --page-token 0 --compact

Other inspection:

uvx --from agent-slides slides inspect output.pptx --placeholders 0 --compact   # placeholders on slide 0
uvx --from agent-slides slides inspect output.pptx --summary --compact           # deck summary

Step 2) Pre-edit assessment

Before making changes, briefly note:

  • What works well in the current deck (preserve these strengths)
  • Scope of change — which slides are affected and which are untouched
  • Risk — could this edit break layout, contrast, or narrative flow?

This prevents over-editing and protects existing quality.

Step 3) Apply changes

Text edits (find-and-replace scoped by UID):

uvx --from agent-slides slides edit output.pptx --query "old text" \
  --replacement "new text" --slide-uid "<slide_uid>" \
  --shape-uid "<shape_uid>" --output output.pptx --compact

Alternative selectors: --slide <index>, --slide-id <slide-N>, --shape-id <shape_id>.

Archetype transforms (restyle a slide):

uvx --from agent-slides slides transform output.pptx --slide-uid "<slide_uid>" \
  --to timeline --output output.pptx --compact

Ops-based patches (apply additional operations):

uvx --from agent-slides slides apply output.pptx --ops-json @patch_ops.json --output output.pptx --compact

Write patch_ops.json as:

{
  "operations": [
    {"op": "replace_text", "slide_index": 3, "old": "Draft", "new": "Final"},
    {"op": "add_text", "slide_index": 5, "text": "New insight", "left": 1.0, "top": 5.0, "width": 4.0, "height": 0.5, "font_size": 16}
  ]
}

Step 4) Verify changes

uvx --from agent-slides slides find output.pptx --query "new text" --compact

Step 5) Re-run QA

uvx --from agent-slides slides qa output.pptx --profile design-profile.json \
  --slides-json @slides.json --out qa.json --compact

Step 6) Repair (if needed)

uvx --from agent-slides slides repair output.pptx --output output.pptx

Placeholder Rules

  • Never use set_placeholder_text with guessed indices. Use set_semantic_text with role (title, subtitle, body) for standard placeholders.
  • Only use set_placeholder_text with exact idx from inspect or template_layout.json.
  • --query only replaces text content, not formatting (font size, color, bold). To change formatting, use ops patches with new add_text ops.

Anti-patterns (what NOT to do)

  • Don't use --query to fix formatting (font size, color, bold) — it only replaces text content. Use ops patches instead.
  • Don't guess placeholder indices — use set_semantic_text with role or exact idx from inspect
  • Don't edit without inspecting first — always locate targets with inspect or find
  • Don't overwrite the input file without verifying the edit worked (find or inspect after)
  • Don't restructure narrative or rewrite content (that's /slides-critique or /slides-build)

Error Handling

On any slides error, run uvx --from agent-slides slides docs method:edit to verify the current contract before retrying.

Acceptance Criteria

  1. Edits are verifiable via find or inspect subcommands.
  2. qa.json reports "ok": true.
  3. No unresolved-token or contract-critical issues.

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.