Best for
- Offline talks / internal industry talks / private salons
- AI new-product launches / demo day
- Talks with a strong personal style
nexu-io/open-design/design-templates/guizang-ppt/SKILL.md
For marketing and gtm work: bind launches, campaigns, events, and brand plans to growth and pipeline outcomes. Built around the core query "annual-marketing-plan", with GTM strategy lead judgment, buyer-ready proof, and this outcome: approve launch plan, campaign budget, or GTM motion.
Decision brief
For marketing and gtm work: bind launches, campaigns, events, and brand plans to growth and pipeline outcomes. Built around the core query "annual-marketing-plan", with GTM strategy lead judgment, buyer-ready proof, and this outcome: approve launch plan, campaign budget, or GTM motion.
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/nexu-io/open-design --skill "design-templates/guizang-ppt"Inspect the Agent Skill "magazine-web-ppt" from https://github.com/nexu-io/open-design/blob/89d6d4ef21baf80f871595abdf6f7de6e941dd44/design-templates/guizang-ppt/SKILL.md at commit 89d6d4ef21baf80f871595abdf6f7de6e941dd44. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
Before asking the 6 clarifying questions, first let the user pick one of the 5 magazine directions. Each direction packages up its "theme color / recommended layouts / chrome style / recommended slide count," and picking a direction answers half the clarifying questions.
Before asking the 6 clarifying questions, first let the user pick one of the 5 magazine directions. Each direction packages up its "theme color / recommended layouts / chrome style / recommended slide count," and picking a direction answers half the clarifying questions.
If the user has already given a complete outline + images, you can skip straight to Step 2.
Copy assets/template.html to the target location (usually 项目/XXX/ppt/index.html), and create an images/ folder as a sibling, ready to receive images.
This is the source of all generation problems. The layouts.md skeletons use many class names (h-hero / h-xl / stat-card / pipeline / grid-2-7-5, etc.); if assets/template.html's has no corresponding definition, the browser falls back to default styles: the big title turns sans-s…
Permission review
The documentation asks the agent to create, modify, or delete local files.
Copy `assets/template.html` to the target location (usually `项目/XXX/ppt/index.html`), and create an `images/` folder as a sibling, ready to receive images.The documentation asks the agent to read local files, directories, or repositories.
First read through `SKILL.md` (this file) to understand the wholeEvidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 85/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 82,073 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Generates a single-file HTML horizontal-swipe deck with a visual tone of:
This skill's aesthetic is not "corporate PPT," nor "consumer-internet UI": it looks like Monocle magazine after code was stitched onto it.
Suitable scenarios:
Unsuitable scenarios:
Before asking the 6 clarifying questions, first let the user pick one of the 5 magazine directions. Each direction packages up its "theme color / recommended layouts / chrome style / recommended slide count," and picking a direction answers half the clarifying questions.
Open references/styles.md, copy the whole section over to show the user the 1-line summary of the 5 directions, then let them choose:
1. Monocle Editorial · International magazine style ✦ default
2. WIRED Tech · Data + engineering
3. Kinfolk Slow · Slow living / humanist
4. Domus Architectural · Architecture / sense of space
5. Lab / Reference · Academic + craft manual
If the user says "I don't know, you recommend": default to Monocle Editorial, because it has the lowest failure probability. If the user mentions "AI / benchmark / technical launch": recommend WIRED; "reading / private / social circle": recommend Kinfolk; "design / architecture / portfolio": recommend Domus; "research / academic / methodology": recommend Lab.
After picking a direction, create or update 项目记录.md (Project Record) in the project folder, with the first line clearly stating direction + theme color + audience + duration (see the template at the end of styles.md). Do not change direction at any point: switching midway = everything before is wasted.
If the user has already given a complete outline + images, you can skip straight to Step 2.
If the user only gave a topic or a vague idea, align on these 6 questions one by one before starting. Don't begin writing slides based on guesses: once the structure is wrong, later rework is very costly:
Question 5 is already answered when you pick a direction in Step 0 (direction → theme color). In the 5 questions below, just leave question 5 blank.
| # | Question | Why ask it |
|---|---|---|
| 1 | Who is the audience? Sharing scenario? (internal industry / commercial launch / demo day / private salon) | determines the language style and depth |
| 2 | Talk duration? | 15 min ≈ 10 pages, 30 min ≈ 20 pages, 45 min ≈ 25-30 pages (see each direction's recommended range in styles.md) |
| 3 | Any source material? (documents / data / old PPT / article links) | with material, build on it; without, help them build |
| 4 | Any images? Where are they? | see the "Image convention" below |
| 5 | ✓ already decided by the direction in Step 0 | |
| 6 | Any hard constraints? (must include XX data / must not show YY) | avoids rework |
Use the "narrative arc" template to build the skeleton, then fill in content:
Hook → 1 page : throw out a contrast / question / hard number that makes people stop
Context → 1-2 pages : explain the background / who you are / why this topic
Core → 3-5 pages : the core content, interleaving Layouts 4/5/6/9/10
Shift → 1 page : break the expectation / propose a new view
Takeaway → 1-2 pages : a punchline / a suspenseful question / a call to action
Narrative arc + page-count plan + theme rhythm table (see layouts.md); align all three tables before moving to Step 2.
It's best to save the outline as 项目记录.md (Project Record) or 大纲-v1.md (Outline v1) for later iteration.
Make these clear to the user before starting:
项目/XXX/ppt/images/ (sibling to index.html){page number}-{semantic}.{ext}, e.g. 01-cover.jpg / 03-figma.jpg / 05-dashboard.png
images/oldname and change it to the new nameCopy assets/template.html to the target location (usually 项目/XXX/ppt/index.html), and create an images/ folder as a sibling, ready to receive images.
mkdir -p "项目/XXX/ppt/images"
cp "<SKILL_ROOT>/assets/template.html" "项目/XXX/ppt/index.html"
template.html is a complete, runnable file: CSS, WebGL shader, paging JS, font/icon CDNs are all preset; only inside <main id="deck"> are there 3 example slides (cover, act divider, blank filler page).
Right after copying, change the placeholders below, or the browser tab will show awkward text like "[必填] replace with the PPT title":
| Location | Original | Change to |
|---|---|---|
<title> | [必填] 替换为 PPT 标题 · Deck Title | the actual deck title (e.g. 一种新的工作方式 · Luke Wroblewski) |
The first thing to do every time you finish copying template.html: grep for "[必填]" to confirm everything is replaced.
This skill only allows picking one of 5 carefully tuned presets; it does not accept user-defined hex values: a wrong color pairing makes the visuals ugly in an instant, and protecting the aesthetic matters more than offering freedom.
| # | Theme | Best for |
|---|---|---|
| 1 | 🖋 Ink Classic | general / commercial launch / the default when you don't know what to pick |
| 2 | 🌊 Indigo Porcelain | tech / research / data / technical keynotes |
| 3 | 🌿 Forest Ink | nature / sustainability / culture / non-fiction |
| 4 | 🍂 Kraft Paper | nostalgic / humanist / literary / indie magazines |
| 5 | 🌙 Dune | art / design / creative / gallery |
How to do it:
references/themes.md and find the :root block for the corresponding theme:root{ block of assets/template.html (the copied version): --ink / --ink-rgb / --paper / --paper-rgb / --paper-tint / --ink-tintvar(--...), no other changes neededHard rules:
This is the source of all generation problems. The layouts.md skeletons use many class names (h-hero / h-xl / stat-card / pipeline / grid-2-7-5, etc.); if assets/template.html's <style> has no corresponding definition, the browser falls back to default styles: the big title turns sans-serif, the data cards squeeze into a clump, the pipeline mushes into one line, the images pile up at the bottom of the page.
Before writing any slide code:
assets/template.html (at least through the end of the <style> block)<style><style>, don't rewrite it inline on every slidestyle="..." inlineClasses commonly missed (must be confirmed to exist in advance):
h-hero / h-xl / h-sub / h-md / lead / kicker / meta-row / stat-card / stat-label / stat-nb / stat-unit / stat-note / pipeline-section / pipeline-label / pipeline / step / step-nb / step-title / step-desc / grid-2-7-5 / grid-2-6-6 / grid-2-8-4 / grid-3-3 / grid-6 / grid-3 / grid-4 / frame / frame-img / img-cap / callout / callout-src / chrome / foot
Before picking layouts, you must first list the theme class for each page (hero dark / hero light / light / dark) and write it to a document or draft to align. For detailed rules, see the "Theme rhythm planning" section at the top of references/layouts.md.
Mandatory rules:
light / dark / hero light / hero dark; don't write just herohero dark + ≥1 hero lightlight body pages; it must have a dark body page to create breathing roomSelf-check after generating: grep 'class="slide' index.html lists all themes; manually confirm the rhythm is reasonable before delivering.
Don't write slides from scratch. Open references/layouts.md; it has 10 ready-made layout skeletons, each a complete, paste-ready <section> code block:
| Layout | Use |
|---|---|
| 1. Cover | page 1 |
| 2. Act divider | each act's opening |
| 3. Big numbers | throw out hard data |
| 4. Lead image + text (Quote + Image) | identity contrast / story |
| 5. Image grid | multi-image comparison / screenshot evidence |
| 6. Two-column pipeline (Pipeline) | workflow process |
| 7. Suspenseful close / question page | act close / wrap-up |
| 8. Big quote page (Big Quote) | serif punchline / takeaway |
| 9. Side-by-side comparison (Before / After) | old model vs new model |
| 10. Image + text mix (Lead Image + Side Text) | information-dense image-text pages |
Pick the corresponding layout, paste it in, change the copy and image paths. Be sure to complete the 3.0 pre-check first.
Always use a standard ratio, never the source image's odd ratio (like 2592/1798):
| Scenario | Recommended ratio |
|---|---|
| Lead image + text, main image | 16:10 or 4:3 + max-height:56vh |
| Image grid (multi-image comparison) | fixed height:26vh, not aspect-ratio |
| Small image left + text right | 1:1 or 3:2 |
| Full-screen hero visual | 16:9 + max-height:64vh |
| Image + text mix, small inset | 3:2 or 3:4 |
Never use align-self:end on an image: it slides to the bottom of the cell, hidden by the browser toolbar. Use a grid container + align-items:start (already preset in the template) so the image sticks to the top; if you want the left column to stick to the bottom, use flex column + justify-content:space-between.
Component details (fonts, colors, grids, icons, callout, stat-card, etc.) are in references/components.md.
After generating, always open references/checklist.md and check item by item. It summarizes every pitfall stepped on during real iteration; the P0-level issues (emoji, images breaking out, title wrapping, type division of labor) must all pass.
A few items to watch especially:
h-hero class is missing from template.htmlheight:Nvh, not aspect-ratio (it breaks out)align-self:end, use grid + align-items:start (see Step 3.2)nowrap (avoid 1 character per line)Just open index.html directly in the browser. On macOS:
open "项目/XXX/ppt/index.html"
No local server needed. Images use the relative path images/xxx.png.
Modify based on user feedback: the template's CSS is highly parameterized, and 90% of adjustments are changing inline styles (font size font-size:Xvw / height height:Yvh / spacing gap:Zvh).
magazine-web-ppt/
├── SKILL.md ← you are reading this
├── assets/
│ ├── template.html ← the complete runnable template (seed file)
│ └── example-slides.html ← a 9-page sample deck (for the Examples preview)
└── references/
├── styles.md ← the 5 magazine directions (Monocle / WIRED / Kinfolk / Domus / Lab)
├── components.md ← component handbook (fonts, color, grid, icons, callout, stat, pipeline...)
├── layouts.md ← 10 page layout skeletons (paste-ready)
├── themes.md ← 5 theme color presets (pick only, no customization)
└── checklist.md ← quality checklist (P0/P1/P2/P3 tiers)
Recommended loading order:
SKILL.md (this file) to understand the wholestyles.md: each of the 5 directions packages up theme color + recommended layouts + chrome stylethemes.md for palette details<style> block of assets/template.html: this is the single source of class names; missing classes crash the whole page's stylinglayouts.md to pick a layout (the top has the Pre-flight class-name list and theme rhythm planning)components.md to look up componentschecklist.md to self-check (the top P0-0 rule enforces the pre-check)These principles are distilled from 5 rounds of iteration on the "one-person company" talk deck. Violating any one of them makes the visual feel collapse.
height:Nvh, not aspect-ratio stretchingThis skill's visual tone references:
You can treat these as style anchors.
Alternatives
coreyhaines31/marketingskills
When the user wants to create or optimize an email sequence, drip campaign, automated email flow, or lifecycle email program. Also use when the user mentions "email sequence," "drip campaign," "nurture sequence," "onboarding emails," "welcome sequence," "re-engagement emails," "email automation," "lifecycle emails," "trigger-based emails," "email funnel," "email workflow," "what emails should I send," "welcome series," or "email cadence." Use this for any multi-email automated flow. For cold out
MoizIbnYousaf/marketing-cli
Plans free tools, calculators, generators, and interactive widgets that attract target audience through search and social sharing. Engineering as marketing — build something useful, capture leads. Use when someone wants to build a free tool for marketing, says 'free tool', 'calculator', 'generator', 'engineering as marketing', 'side project marketing', 'interactive widget', 'lead generation tool', 'SEO tool', 'growth hack', 'build something to attract users', or wants to attract users through ut
nexu-io/open-design
Open Design's community-growth campaign across GitHub, Discord, and X: the loops, the content calendar, and the pipeline math. Built as a decision-grade marketing & GTM deck for growth team, community lead.
nexu-io/open-design
A brand visual-identity system reveal for an outdoor label — logo, color, type, and the rules that keep it consistent. Built as a decision-grade design craft deck for brand team, client.