Skip to content

v1.12.0 — ODP template ecosystem

Choose a tag to compare

@leiverkus leiverkus released this 23 May 14:15
· 13 commits to main since this release

Closes the last competitive-positioning gap with Anthropic's pptx skill.
Where pptx uses an HTML-design-loop, this release takes the other route:
curated templates the agent picks from, plus tools to inspect them per-slide
and extract new ones from any .odp/.otp/.pptx (PPTX via the v1.11
OOXML bridge).

Added

  • inspect_template.py — JSON inventory of master pages, slide layouts,
    named styles, font declarations. The agent's per-slide layout-picking input.
  • extract_template.py — distil any .odp/.otp/.pptx into a reusable
    template directory. Filters office:automatic-styles to keep only what
    master pages reference (and parent chains); copies master-page-referenced
    Pictures/; seeds LICENSE.txt/PROVENANCE.md/README.md.
  • apply_template.py — one-call inject-styles + embed-pictures +
    validate-refs. Supports --template-name <shipped> and --template PATH.
  • Three shipped templates in skills/odp/templates/:
    • dao-conference — deep-blue branded, logo bottom-right (migrated from
      examples/deck/styles.xml).
    • academic-blue — cream background, navy Lato + Source Serif.
    • minimalist-mono — near-white, JetBrains Mono + Inter.
  • inspect_styles_xml and load_styles_xml helpers in odp_common.

Changed

  • examples/deck/build_deck.py reduced from 90-line orchestration to a thin
    apply_template-based wrapper. The branded styles.xml and the logo
    moved into the shipped dao-conference template.

Installation

Templates live inside skills/odp/, so install_skills.py includes them
in every Smithery / skills.sh / Claude Code plugin install — no extra
download or configuration.

See CHANGELOG.md for the full release notes.