agentsclimarketplace

Deck

Skill marsmike/feinschmiede/feinschliff/skills/deck

A family of branded-media plugins for Claude Code — decks, images & 2D, video, and audio, coupled by CLI capabilities (never file paths) over one shared engine.

Install
npx -y skills add marsmike/feinschmiede --skill deck

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

  • 3 stars3 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.

What its author says it does

Copied from the file, not written here

Build a brand-perfect PowerPoint deck via the master-template renderer. Use when the user asks to create a deck or presentation.

SKILL.md

3.1 KB, as published. Nobody here has run it

deck — master-template renderer

Generate a brand-perfect .pptx by composing plans against a brand pack's master.pptx. The master supplies typography, colors, footers, slide-number chrome — the renderer only fills placeholders and clones bespoke shapes.

Quick Start

from pathlib import Path
from feinschliff import FillPlan, render

render(
    Path("feinschliff/brands/feinschliff"),
    [FillPlan(layout="Title Slide", fills={0: "Q3 update", 1: "Roadmap"})],
    Path("out.pptx"),
)

Author the call in feinschliff/.debug/<topic>-<date>/build.py and run it with feinschliff build.py — the plugin's launcher execs the venv Python directly, no CLI in between.

Brand packs

Each pack ships under feinschliff/brands/<name>/ with a master.pptx (or .ref pointer) and catalog files. Built-in packs: feinschliff (default), annual-review, geometric, scientific, shapes, gs-ramspau. Corporate / private packs surface through sibling feinschliff-* plugin directories ($FEINSCHLIFF_BRAND_PATH). Run python -m feinschliff.master_template.catalog <brand_pack> to list layouts + snippets for any pack.

Mental model

A deck is a list of plans, in slide order:

  • FillPlan(layout, fills) — pick a layout by name (see <brand>/layouts.yaml), fill placeholders by idx. Values: str, list[str], PictureRef, or ChartSpec. Charts and pictures replace the OBJECT placeholder.
  • ClonePlan(source_idx, replacements) — XML-clone a bespoke source slide from <brand>/snippets.yaml. replacements is a queue per old-string; repeating ("Milestone", ...) consumes successive occurrences in document order.
  • render(..., theme=Path|dict) — optional. Patches the master's theme1.xml <a:clrScheme> from a small JSON. One master.pptx, N visual variations; the file on disk is never touched.

Flow

  1. Interview if the brief is thin. Topic + audience are the minimum; references/storyline.md maps audience to a default slide count.
  2. Draft the storyline per references/storyline.md — emit the brief block + numbered slides block, pick a frame, tag each row with role and act, write claim-style titles.
  3. Pick layouts per references/layouts.md. For bespoke shapes (timelines, funnels, infographics) clone from <brand>/snippets.yaml — see references/clones.md for the text-anchor recipe.
  4. Approval gate — show storyline + chosen layouts, ask "ok?". Don't render until approved.
  5. Render with the Quick Start snippet. Respect the verbosity tier when sizing fills. See references/gotchas.md for pitfalls.
  6. Verify and loop — convert to PDF and read the pages against the defect classes in references/verify.md. Fix and re-render until clean; the reference describes the /loop-driven iteration.

Keep looking

Skills are one crate of 328,083. 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.