From common
Create Deckset (macOS) presentations from existing markdown content, research, or knowledge bases.
How this skill is triggered — by the user, by Claude, or both
Slash command
/common:deckset <topic/goals> [source: <path to content>] [audience: <who>] [duration: <minutes>]<topic/goals> [source: <path to content>] [audience: <who>] [duration: <minutes>]The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Create polished Deckset-format markdown presentations by distilling existing content (research docs, knowledge bases, notes, or any markdown) into focused, well-structured slide decks.
Create polished Deckset-format markdown presentations by distilling existing content (research docs, knowledge bases, notes, or any markdown) into focused, well-structured slide decks.
Deckset is a macOS app that renders .md files as slide decks. All formatting is plain Markdown with Deckset-specific conventions described below.
Parse $ARGUMENTS for:
If any of these are missing and can't be inferred, ask the user before proceeding. Source material is the most critical — you need something to distill.
Read the source content thoroughly. If it's a directory, start with any index or overview file, then read the most relevant documents. Build a mental model of:
Don't try to cover everything. A good presentation is selective — it picks the ideas that matter most for this audience and these goals, and leaves the rest out.
Before writing slides, outline the structure. Present it to the user as a numbered list:
1. Title slide — [title], [subtitle if any]
2. Opening hook — [what grabs attention]
3. Context / Problem — [why this matters]
4-8. Core content slides — [key points, one per slide]
9. Key takeaway / Call to action
10. Closing / Q&A
Adapt this shape to the content. Not every talk needs a "problem" slide. Some are walkthroughs, some are reports, some are pitches. Match the structure to the goal.
Tell the user the planned slide count and estimated duration. Ask: "Does this structure work, or would you like to adjust the focus?"
Generate the full Deckset markdown file. Follow these principles:
Structure:
--- (blank line above and below)# [fit] for title slides and key messages## for section titles, ### for supporting pointsContent discipline:
[.code-highlight:] to focus attentionVisual variety — mix these slide types:
# [fit] heading-only slides for impact statements>) for memorable takeaways (quote-only slides get special large formatting)[.column] layouts for comparisons, before/after, pros/consPresenter notes:
^ notes on content-heavy slides with the full explanation, context, or talking pointsWhat to avoid:
[fit] — it's for emphasis, not every heading--- needs blank lines above and below)Save the .md file. Suggest a filename based on the topic (e.g., api-design-patterns.md).
Tell the user:
[theme name] but Deckset has many options."Ask if they'd like to adjust any slides, change the depth on a topic, or add/remove sections.
Pick a theme that fits the tone. Some good defaults:
If the user hasn't specified, default to Fira for technical content or Next for general presentations.
Research directory (with INDEX.md, content/ subdirectory): Read INDEX.md first to understand the topic landscape, then read the most relevant content files based on the presentation goals. The research structure gives you a natural outline to work from.
Single long document: Identify the key sections and extract the most presentation-worthy points. Don't try to present every section — pick what matters for the audience.
Multiple loose files: Scan all of them, identify common themes, and synthesize. The presentation should feel unified, not like a file-by-file walkthrough.
Minimal notes or bullet points: The user is giving you the skeleton — flesh it out with clear slide content while staying true to their intent. Ask clarifying questions if the notes are ambiguous.
Global configuration commands go at the very top with no blank lines between them. Slides are separated by --- (three dashes on their own line, blank line above and below).
theme: Fira, 5
autoscale: true
build-lists: true
slidenumbers: true
footer: © Acme Corp 2026
# First Slide Title
Content here
---
# Second Slide Title
More content
Place at the top of the file with no blank lines between them.
| Command | Values | Purpose |
|---|---|---|
theme: | Fira, Next, Libre, Merriweather, etc. | Set presentation theme |
autoscale: | true | Auto-shrink body text to fit slide |
build-lists: | true | Animate list items one-by-one |
footer: | Text string | Footer on every slide |
slidenumbers: | true | Show slide numbers |
slidecount: | true | Show total slide count alongside number |
slide-transition: | true, fade(0.3), push(horizontal), etc. | Transition between slides |
background-image: | image.jpg | Default background for all slides |
fit-header: | #, ## | Auto-fit specified heading levels |
Override global settings on individual slides using bracket notation at the top of the slide:
[.autoscale: true]
[.build-lists: false]
[.footer: Custom footer]
[.hide-footer]
[.slidenumbers: false]
[.background-color: #1a1a2e]
[.slide-transition: fade(0.5)]
Four levels available. Use [fit] to auto-scale a heading to fill the slide width.
# [fit] This Heading Fills the Slide
Use <br> for line breaks within headings.
Slides containing only a quote get special large-format styling.
> The best way to predict the future is to invent it.
-- Alan Kay
Use -- (two dashes) before the author name.
Fenced code blocks with language for syntax highlighting. Deckset auto-scales code to fit.
Highlight specific lines using [.code-highlight:]:
[.code-highlight: 2]
[.code-highlight: 2, 6-8]
[.code-highlight: all]
For progressive highlighting (build steps), stack multiple highlights:
[.code-highlight: none]
[.code-highlight: 2]
[.code-highlight: 6-8]
[.code-highlight: all]
 # fill entire slide
 # fit within slide, maintaining aspect
 # fill left half (content goes right)
 # fill right half (content goes left)
 # placed within content flow
 # inline at 50% size
Multiple background images create a grid. Multiple inline images side by side:

Use [.column] to split slide content into columns:
[.column]
### Left Column
Content for left side
[.column]
### Right Column
Content for right side
Standard Markdown table syntax with alignment support:
| Left | Center | Right |
|------|:------:|------:|
| A | B | C |
A line containing only ^ starts presenter notes for that slide. Everything after it is visible only in Presenter mode.
# Slide Title
Visible content here.
^
- This is a presenter note
- Use regular markdown after the opening caret
Only one ^ is needed per slide — do not prefix every notes line with ^.
This claim needs a citation[^1].
[^1]: Source: Author, "Title", Year.
Display: $$ E = mc^2 $$ on its own line. Inline: $$a = 2$$ within text.
Per-slide: [.slide-transition: push(horizontal, 0.3)] or [.slide-transition: false]
Types: fade(duration), push(horizontal|vertical), move(direction), reveal(direction)
[.text: #000000, alignment(left), line-height(10), text-scale(2.0), Font Name]
[.header: #FF0000, alignment(center), text-scale(3.0), Font Name]
[.list: bullet-character(→), bullet-color(#ffcc00)]
 # background video
 # auto-playing background
 # YouTube embed
npx claudepluginhub mtrense/skills --plugin commonGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.