slides-edit

SKILL.md

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.
Weekly Installs
4
First Seen
11 days ago
Installed on
amp4
cline4
opencode4
cursor4
kimi-cli4
codex4