* Add chat-motion-overlay skill * Fix upload avatar bundle validation * Sanitize upload avatar paths in bundle spec * Use participant-level chat avatar config * Refine chat overlay screenshot avatar handling * Fix chat overlay avatar asset collisions * Add chat motion overlay catalog metadata * Enforce avatar mode and validate transcript avatar keys - Reject uploadPath when avatarMode is preset - Validate transcript avatar hints against PRESET_KEYS before use - Gate uploadPath copy by avatarMode (upload/mixed only) - Add test cases: invalid_transcript_avatar_key, invalid_preset_mode_upload_path - Update test-matrix and test-report docs (13 -> 15 cases) * Fix avatar precedence: config preset overrides transcript hint - Change avatar selection order to config-first (configured.preset > message.avatar > auto) - Update conflict check: transcript hints only conflict when config did not override - Add test case: config_preset_overrides_transcript_avatar_hint (16/16 passing) - Update test-matrix and test-report docs * Move chat-motion-overlay to design-templates - Relocate from skills/ to design-templates/ per repo boundary policy - Update frontmatter: add od.scenario, od.preview (type: html, entry: example.html) - Replace od.category with od.scenario per design-template schema - Add example.html for gallery preview - 16/16 test cases passing from new path * Keep chat-motion-overlay as a functional skill - Move chat-motion-overlay back under skills/ - Reclassify frontmatter to od.mode: utility - Restore animation-motion category for skill discovery - Remove template-only preview metadata and example.html - Re-run test matrix from skills path: 16/16 passing * Guard dangerous bundle overwrite paths - Reject dangerous output directories before any --force delete - Only allow force overwrite for marked generated bundle dirs - Add matrix coverage for dangerous output-dir rejection - Update test docs to 17 passing cases * Fix bundle leak and Remotion render commands - Delay chatSpec.ts writing until avatar sanitization succeeds - Remove partial bundle on prepare failure - Fix MOV/WebM Remotion commands to include src/index.ts - Check failed-upload cleanup and render scripts in the matrix * Fix chat bubble wrapping * Reject unsupported bubble-only phone frame * Fix bubble hook order
Skills
A skill is the atomic unit of design capability in Open Design — one folder, one SKILL.md, optional assets/ and references/. The daemon scans this directory at startup; drop a folder in, restart, and the picker shows it.
Adding a new skill
→ docs/skills-contributing.md — the contributor guide. Quick start, anatomy, local dev loop, merge bar, PR template, and common rejection patterns.
→ docs/skills-protocol.md — the protocol spec. Frontmatter grammar, discovery rules, mode semantics.
The fastest path is to copy the existing skill closest to your idea, edit SKILL.md and example.html, and read the contributor guide before opening the PR. We're picky about skills because they're the user-facing surface — the merge bar is real and the contributor guide makes it explicit.
Skills that already ship
The mode and featured flags in each skill's SKILL.md decide where it shows up in the picker. The list below is a quick orientation; for a curated set of "imitate this if you're starting from scratch" skills, see the References section in docs/skills-contributing.md.
# Browse the registry from the CLI:
ls skills/
# 54+ skills across prototype, deck, template, design-system, image, video, and audio modes
License
Skills in this directory are Apache-2.0 unless their own LICENSE says otherwise. Notable MIT-licensed exceptions include skills/guizang-ppt/, bundled verbatim from op7418/guizang-ppt-skill, and skills/web-clone/, adapted from Jane-xiaoer/claude-skill-web-clone.