op7418/guizang-ppt-skillPublic

AI-agent Skill for generating polished HTML slide decks: editorial magazine and Swiss layouts, image prompts, social covers, and a WebGL/low-power presentation runtime.

AI summary: An AI agent skill for programmatically generating highly polished, single-file HTML presentations with advanced styling.

Stars
23.5K
+172 today
Forks
1.7K
Watchers
52
Open issues
18
Open PRs
15
Contributors
~4
Commits
26
Branches
1

HTMLAGPL-3.0Created Apr 23, 2026Last push todayLatest release v1.1.0+634 stars this week+751 this month

Star history

since Apr 19, 2026
010K20KApr 2026May 2026Jun 2026Aug 2026
23.5K stars as of Aug 7, 2026, tracked back to Apr 19, 2026. Historical curve reconstructed from public GitHub event archives, calibrated to the current total.

Contribution activity

commits per day, last 52 weeks
AugSepOctNovDecJanFebMarAprMayJunJulAugMonWedFri2025-08-10: 0 commits2025-08-11: 0 commits2025-08-12: 0 commits2025-08-13: 0 commits2025-08-14: 0 commits2025-08-15: 0 commits2025-08-16: 0 commits2025-08-17: 0 commits2025-08-18: 0 commits2025-08-19: 0 commits2025-08-20: 0 commits2025-08-21: 0 commits2025-08-22: 0 commits2025-08-23: 0 commits2025-08-24: 0 commits2025-08-25: 0 commits2025-08-26: 0 commits2025-08-27: 0 commits2025-08-28: 0 commits2025-08-29: 0 commits2025-08-30: 0 commits2025-08-31: 0 commits2025-09-01: 0 commits2025-09-02: 0 commits2025-09-03: 0 commits2025-09-04: 0 commits2025-09-05: 0 commits2025-09-06: 0 commits2025-09-07: 0 commits2025-09-08: 0 commits2025-09-09: 0 commits2025-09-10: 0 commits2025-09-11: 0 commits2025-09-12: 0 commits2025-09-13: 0 commits2025-09-14: 0 commits2025-09-15: 0 commits2025-09-16: 0 commits2025-09-17: 0 commits2025-09-18: 0 commits2025-09-19: 0 commits2025-09-20: 0 commits2025-09-21: 0 commits2025-09-22: 0 commits2025-09-23: 0 commits2025-09-24: 0 commits2025-09-25: 0 commits2025-09-26: 0 commits2025-09-27: 0 commits2025-09-28: 0 commits2025-09-29: 0 commits2025-09-30: 0 commits2025-10-01: 0 commits2025-10-02: 0 commits2025-10-03: 0 commits2025-10-04: 0 commits2025-10-05: 0 commits2025-10-06: 0 commits2025-10-07: 0 commits2025-10-08: 0 commits2025-10-09: 0 commits2025-10-10: 0 commits2025-10-11: 0 commits2025-10-12: 0 commits2025-10-13: 0 commits2025-10-14: 0 commits2025-10-15: 0 commits2025-10-16: 0 commits2025-10-17: 0 commits2025-10-18: 0 commits2025-10-19: 0 commits2025-10-20: 0 commits2025-10-21: 0 commits2025-10-22: 0 commits2025-10-23: 0 commits2025-10-24: 0 commits2025-10-25: 0 commits2025-10-26: 0 commits2025-10-27: 0 commits2025-10-28: 0 commits2025-10-29: 0 commits2025-10-30: 0 commits2025-10-31: 0 commits2025-11-01: 0 commits2025-11-02: 0 commits2025-11-03: 0 commits2025-11-04: 0 commits2025-11-05: 0 commits2025-11-06: 0 commits2025-11-07: 0 commits2025-11-08: 0 commits2025-11-09: 0 commits2025-11-10: 0 commits2025-11-11: 0 commits2025-11-12: 0 commits2025-11-13: 0 commits2025-11-14: 0 commits2025-11-15: 0 commits2025-11-16: 0 commits2025-11-17: 0 commits2025-11-18: 0 commits2025-11-19: 0 commits2025-11-20: 0 commits2025-11-21: 0 commits2025-11-22: 0 commits2025-11-23: 0 commits2025-11-24: 0 commits2025-11-25: 0 commits2025-11-26: 0 commits2025-11-27: 0 commits2025-11-28: 0 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 0 commits2025-12-02: 0 commits2025-12-03: 0 commits2025-12-04: 0 commits2025-12-05: 0 commits2025-12-06: 0 commits2025-12-07: 0 commits2025-12-08: 0 commits2025-12-09: 0 commits2025-12-10: 0 commits2025-12-11: 0 commits2025-12-12: 0 commits2025-12-13: 0 commits2025-12-14: 0 commits2025-12-15: 0 commits2025-12-16: 0 commits2025-12-17: 0 commits2025-12-18: 0 commits2025-12-19: 0 commits2025-12-20: 0 commits2025-12-21: 0 commits2025-12-22: 0 commits2025-12-23: 0 commits2025-12-24: 0 commits2025-12-25: 0 commits2025-12-26: 0 commits2025-12-27: 0 commits2025-12-28: 0 commits2025-12-29: 0 commits2025-12-30: 0 commits2025-12-31: 0 commits2026-01-01: 0 commits2026-01-02: 0 commits2026-01-03: 0 commits2026-01-04: 0 commits2026-01-05: 0 commits2026-01-06: 0 commits2026-01-07: 0 commits2026-01-08: 0 commits2026-01-09: 0 commits2026-01-10: 0 commits2026-01-11: 0 commits2026-01-12: 0 commits2026-01-13: 0 commits2026-01-14: 0 commits2026-01-15: 0 commits2026-01-16: 0 commits2026-01-17: 0 commits2026-01-18: 0 commits2026-01-19: 0 commits2026-01-20: 0 commits2026-01-21: 0 commits2026-01-22: 0 commits2026-01-23: 0 commits2026-01-24: 0 commits2026-01-25: 0 commits2026-01-26: 0 commits2026-01-27: 0 commits2026-01-28: 0 commits2026-01-29: 0 commits2026-01-30: 0 commits2026-01-31: 0 commits2026-02-01: 0 commits2026-02-02: 0 commits2026-02-03: 0 commits2026-02-04: 0 commits2026-02-05: 0 commits2026-02-06: 0 commits2026-02-07: 0 commits2026-02-08: 0 commits2026-02-09: 0 commits2026-02-10: 0 commits2026-02-11: 0 commits2026-02-12: 0 commits2026-02-13: 0 commits2026-02-14: 0 commits2026-02-15: 0 commits2026-02-16: 0 commits2026-02-17: 0 commits2026-02-18: 0 commits2026-02-19: 0 commits2026-02-20: 0 commits2026-02-21: 0 commits2026-02-22: 0 commits2026-02-23: 0 commits2026-02-24: 0 commits2026-02-25: 0 commits2026-02-26: 0 commits2026-02-27: 0 commits2026-02-28: 0 commits2026-03-01: 0 commits2026-03-02: 0 commits2026-03-03: 0 commits2026-03-04: 0 commits2026-03-05: 0 commits2026-03-06: 0 commits2026-03-07: 0 commits2026-03-08: 0 commits2026-03-09: 0 commits2026-03-10: 0 commits2026-03-11: 0 commits2026-03-12: 0 commits2026-03-13: 0 commits2026-03-14: 0 commits2026-03-15: 0 commits2026-03-16: 0 commits2026-03-17: 0 commits2026-03-18: 0 commits2026-03-19: 0 commits2026-03-20: 0 commits2026-03-21: 0 commits2026-03-22: 0 commits2026-03-23: 0 commits2026-03-24: 0 commits2026-03-25: 0 commits2026-03-26: 0 commits2026-03-27: 0 commits2026-03-28: 0 commits2026-03-29: 0 commits2026-03-30: 0 commits2026-03-31: 0 commits2026-04-01: 0 commits2026-04-02: 0 commits2026-04-03: 0 commits2026-04-04: 0 commits2026-04-05: 0 commits2026-04-06: 0 commits2026-04-07: 0 commits2026-04-08: 0 commits2026-04-09: 0 commits2026-04-10: 0 commits2026-04-11: 0 commits2026-04-12: 0 commits2026-04-13: 0 commits2026-04-14: 0 commits2026-04-15: 0 commits2026-04-16: 0 commits2026-04-17: 0 commits2026-04-18: 0 commits2026-04-19: 0 commits2026-04-20: 0 commits2026-04-21: 0 commits2026-04-22: 0 commits2026-04-23: 3 commits2026-04-24: 2 commits2026-04-25: 2 commits2026-04-26: 1 commit2026-04-27: 0 commits2026-04-28: 2 commits2026-04-29: 0 commits2026-04-30: 0 commits2026-05-01: 0 commits2026-05-02: 0 commits2026-05-03: 0 commits2026-05-04: 0 commits2026-05-05: 0 commits2026-05-06: 0 commits2026-05-07: 0 commits2026-05-08: 0 commits2026-05-09: 0 commits2026-05-10: 0 commits2026-05-11: 2 commits2026-05-12: 0 commits2026-05-13: 1 commit2026-05-14: 0 commits2026-05-15: 7 commits2026-05-16: 1 commit2026-05-17: 0 commits2026-05-18: 0 commits2026-05-19: 1 commit2026-05-20: 0 commits2026-05-21: 0 commits2026-05-22: 0 commits2026-05-23: 0 commits2026-05-24: 0 commits2026-05-25: 0 commits2026-05-26: 0 commits2026-05-27: 0 commits2026-05-28: 1 commit2026-05-29: 0 commits2026-05-30: 0 commits2026-05-31: 0 commits2026-06-01: 0 commits2026-06-02: 1 commit2026-06-03: 0 commits2026-06-04: 0 commits2026-06-05: 0 commits2026-06-06: 0 commits2026-06-07: 0 commits2026-06-08: 0 commits2026-06-09: 0 commits2026-06-10: 0 commits2026-06-11: 0 commits2026-06-12: 0 commits2026-06-13: 0 commits2026-06-14: 0 commits2026-06-15: 0 commits2026-06-16: 0 commits2026-06-17: 0 commits2026-06-18: 0 commits2026-06-19: 0 commits2026-06-20: 0 commits2026-06-21: 0 commits2026-06-22: 0 commits2026-06-23: 0 commits2026-06-24: 0 commits2026-06-25: 0 commits2026-06-26: 0 commits2026-06-27: 0 commits2026-06-28: 0 commits2026-06-29: 0 commits2026-06-30: 0 commits2026-07-01: 0 commits2026-07-02: 0 commits2026-07-03: 0 commits2026-07-04: 0 commits2026-07-05: 0 commits2026-07-06: 0 commits2026-07-07: 0 commits2026-07-08: 0 commits2026-07-09: 0 commits2026-07-10: 0 commits2026-07-11: 0 commits2026-07-12: 0 commits2026-07-13: 0 commits2026-07-14: 0 commits2026-07-15: 0 commits2026-07-16: 0 commits2026-07-17: 0 commits2026-07-18: 0 commits2026-07-19: 0 commits2026-07-20: 0 commits2026-07-21: 0 commits2026-07-22: 2 commits2026-07-23: 0 commits2026-07-24: 0 commits2026-07-25: 0 commits2026-07-26: 0 commits2026-07-27: 0 commits2026-07-28: 0 commits2026-07-29: 0 commits2026-07-30: 0 commits2026-07-31: 0 commits2026-08-01: 0 commits2026-08-02: 0 commits2026-08-03: 0 commits2026-08-04: 0 commits2026-08-05: 0 commits2026-08-06: 0 commits2026-08-07: 0 commits2026-08-08: 0 commits
26 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Widely adopted

    23,452 stars

  • Breakout launch

    23,452 stars in 106 days

  • Actively maintained

    Pushed within 48 hours

  • Repeat trending

    3 trending appearances

What guizang-ppt-skill does

This project provides a specialized skill set for AI agents like Claude Code to autonomously generate professional HTML-based presentation decks. It completely bypasses traditional software like PowerPoint, outputting a single, self-contained HTML file that runs natively in any browser. The skill includes strict, deeply considered visual systems—such as an editorial magazine layout and a Swiss International design style—ensuring the output avoids the generic look of typical AI-generated slides. It handles complex tasks including grid alignment, high-contrast typography, and even WebGL background integration. The resulting presentations are lightweight, easily version-controlled, and immediately ready for offline sharing or web deployment.

Developers, designers, and professionals who utilize AI agents and prefer maintaining their presentation materials as code rather than proprietary binary files. Basic understanding of HTML/CSS is helpful but not strictly required.

  • Single-File HTML Export: Compiles the entire presentation, including styles and scripts, into one portable HTML document.
  • Curated Visual Systems: Enforces strict adherence to specific design languages like 'Swiss International' for guaranteed aesthetic quality.
  • Agent-Optimized Prompts: Includes specialized prompt structures designed specifically to guide LLMs in maintaining consistent layouts across slides.
  • Native WebGL Support: Allows agents to embed low-power, interactive 3D backgrounds directly into the presentation slides.
  • Image Prompt Generation: Automatically formulates precise Midjourney or DALL-E prompts to generate cohesive supporting imagery.

Where teams use it

Automated Reporting

Data analysts configure their agents to scrape weekly metrics and automatically generate a polished Swiss-style HTML deck for executives.

Conference Presentations

Developers use the skill to quickly draft highly technical, code-heavy presentations that render perfectly in any browser without relying on proprietary software.

Marketing Deck Generation

Marketing teams rapidly produce editorial-style pitch decks by providing raw text to the agent, which handles all typesetting and layout.

Version-Controlled Slides

Teams maintain their presentation decks in Git, allowing for easy collaboration and tracking changes to the HTML structure over time.

Getting started: Import the skill configuration into your Claude Code or relevant agent environment and provide a raw text outline.

README

main branch

Guizang PPT Skill · 网页 PPT / 配图 / 封面

GitHub stars License Skill HTML Deck Claude Code Codex 由真格 Token Grant 资助 360 安全龙虾金牌赞助 Kimi work 金牌赞助 Cola Skill 金牌赞助

🌏 English version: README.en.md

一个适配 Claude Code / Codex 等 Agent 环境的网页 PPT 技能,用于生成单文件 HTML 横向翻页 PPT、PPT 配图和多平台封面。

内置两套视觉系统:

  • Style A: 电子杂志 × 电子墨水。像 Monocle 贴上了代码,适合叙事、观点、分享、个人风格表达。
  • Style B: 瑞士国际主义。网格至上、单一高饱和锚点色、直角、发丝线、极致字号对比,适合事实、产品、分析、方法论表达。

歸藏 在"一人公司:被 AI 折叠的组织"、"一种新的工作方式"等线下分享中沉淀而成,踩过的每一个坑都写进了 checklist.md。 赞助与支持信息见 SPONSORS.md

旧主题 · Style A 电子杂志风

Style A 电子杂志风效果展示

新主题 · Style B 瑞士国际主义

Style B 瑞士国际主义效果展示

30 秒开始

npx skills add https://github.com/op7418/guizang-ppt-skill --skill guizang-ppt-skill

也可以直接把这段话发给有 shell 权限的 AI Agent:

帮我安装 guizang-ppt-skill。请把 https://github.com/op7418/guizang-ppt-skill 克隆到 ~/.claude/skills/guizang-ppt-skill,安装完成后检查 SKILL.md、assets/、references/ 是否存在。

已经安装过的话,用这段话更新:

帮我更新 guizang-ppt-skill。请进入 ~/.claude/skills/guizang-ppt-skill 执行 git pull,然后告诉我当前最新 commit。

安装后直接对 Agent 说:

帮我基于这篇文章做一份瑞士风 PPT,控制在 7 页左右,需要 2-3 张配图。

也可以试这些请求:

帮我把这份 Markdown 做成杂志风演讲 PPT。
基于这份 PPT 的核心观点,生成一张公众号 21:9 头图。
把这张产品截图重新设计成适合 PPT 的 16:10 配图。

赞助与支持

360 安全龙虾 / Kimi work / Cola Skill 金牌赞助

Guizang PPT Skill 的持续迭代获得 360 安全龙虾Kimi workCola Skill 金牌赞助和 真格 Token Grant 支持。更多信息见 SPONSORS.md

在其他地方使用归藏 PPT Skill

除了 Claude Code / Codex,也可以在这些平台使用归藏 PPT Skill:

渠道 链接
360 安全龙虾 claw.360.cn
Cola Skill colaskill.com/guizang-ppt-skill
Kimi work kimi.com(安装后在 Skill 商店搜索 guizang ppt skill)

效果

  • 🖋 双视觉系统:电子杂志风负责叙事,瑞士风负责事实表达
  • 📐 横向左右翻页:键盘 ← → / 滚轮 / 触屏滑动 / 底部圆点 / ESC 索引
  • 🧩 Style A 10 种布局:封面、章节、数据大字报、图文、图片网格、Pipeline、对比等
  • 🧱 Style B 22 种锁定版式:Cover、Statement、KPI Tower、Loop Diagram、Duo Compare、Image Hero、Closing Manifesto 等
  • 🎨 主题色预设:Style A 5 套电子墨水主题,Style B 4 套瑞士高饱和锚点色
  • 🖼 Codex 可选配图流程:可用 GPT-Image 2.0 / GPT-M 2.0 生成纪实照片、信息图、流程图、系统关系图、UI 情景图,并按模板比例插入
  • 📰 多平台封面:可用同一套视觉规则生成公众号 21:9、公众号分享卡 1:1、小红书 3:4、视频号横版等封面
  • 📴 低性能静态模式:按 B 可关闭 WebGL / canvas 动画,让动态内容退回静态背景
  • 📄 单文件 HTML:不需要构建、不需要服务器,浏览器直接打开

适合 / 不适合

✅ 合适:线下分享 / 行业内部讲话 / 私享会 / AI 产品发布 / demo day / 带强烈个人风格的演讲

❌ 不合适:大段表格数据 / 培训课件(信息密度不够)/ 需要多人协作编辑(静态 HTML)

常见使用场景

任务 推荐方式
长文章变演讲 PPT 先抽核心观点,再按 6-10 页节奏生成 deck
方法论 / 产品分析 用 Style B 瑞士风,优先使用锁定版式和 21:9 主图
个人分享 / 观点表达 用 Style A 电子杂志风,保留更强叙事感
PPT 配图 在 Codex 中用 GPT-Image 2.0 / GPT-M 2.0 生成照片、信息图、流程图、UI 情景图
多平台封面 从同一份内容生成公众号 21:9、1:1 分享卡、小红书 3:4、视频号横版封面
截图统一风格 把原始截图重新生成到模板需要的比例,再插入 PPT

为什么是 HTML PPT

  • 更适合 Agent 生成和修改:HTML / CSS 是文本,Agent 能直接读、改、验证。
  • 表现力比 Markdown 更高:可以做精细排版、空间定位、动画、交互和响应式封面。
  • 交付更轻:单文件 HTML 可以直接打开、演示、发送、截图。
  • 更容易做质量控制:瑞士风可以用脚本校验版式、图片槽位、标题对齐、危险 SVG,并在可用时用 Playwright 后验测量超出、底部空白、nav 安全线和标题间距。
  • 更适合视觉内容链路:同一套主题能覆盖 PPT、配图、封面和截图再设计。

平台支持

平台 状态 说明
Claude Code 支持 原生 Skill 工作流,适合生成和迭代 HTML deck
Codex 支持 适合生成 PPT、调用图片生成能力、做浏览器视觉检查
Cursor / 其他本地 Agent 可用 需要能读写文件并执行 shell 命令
WorkBuddy 适配中 单独整理上架版本,去掉平台不需要的渠道差异
普通 Chatbot 不推荐 没有文件系统和浏览器预览时,很难稳定生成完整 deck

安装

方式一:一行命令安装(推荐)

npx skills add https://github.com/op7418/guizang-ppt-skill --skill guizang-ppt-skill

方式二:把下面这段话直接发给 AI

帮我安装 guizang-ppt-skill 这个 Claude Code skill。请按下面步骤做:

  1. 确保 ~/.claude/skills/ 目录存在(不存在就创建)
  2. 执行 git clone https://github.com/op7418/guizang-ppt-skill.git ~/.claude/skills/guizang-ppt-skill
  3. 验证:ls ~/.claude/skills/guizang-ppt-skill/ 应该看到 SKILL.mdassets/references/ 三项
  4. 告诉我安装好了,之后我说"做一份杂志风 PPT"之类的话就会触发这个 skill

把这段话复制粘贴给 Claude Code / Cursor / 任何有 shell 权限的 AI Agent,它会自动完成安装。

方式三:手动命令行

git clone https://github.com/op7418/guizang-ppt-skill.git ~/.claude/skills/guizang-ppt-skill

触发方式

装好后,Claude Code 会在对话里自动发现并调用这个 skill。触发关键词:

  • "帮我做一份杂志风 PPT"
  • "帮我做一份瑞士风 PPT"
  • "生成一个 horizontal swipe deck"
  • "editorial magazine style presentation"
  • "electronic ink 风格演讲 slides"
  • "基于这篇文章做一张公众号 21:9 封面"
  • "基于这份 PPT 生成一张 1:1 分享卡"

使用流程

Skill 本身是结构化工作流,Agent 会逐步引导:

  1. 选择风格 — Style A 电子杂志风,或 Style B 瑞士国际主义
  2. 需求澄清 — 7 问清单:风格、受众、时长、素材、图片/截图需求、主题色、硬约束
  3. 拷贝模板 — Style A 用 assets/template.html,Style B 用 assets/template-swiss.html
  4. 填充内容 — 先做主题节奏表,再从对应 layout 骨架里挑、粘、改文案
  5. 可选配图 — 在 Codex 中询问是否用 GPT-Image 2.0 / GPT-M 2.0 生成配图,再按页面比例插入
  6. 自检 — 对照 references/checklist.md,P0 级问题必须全过;瑞士风还要运行版式校验器
  7. 预览 — 浏览器直接打开
  8. 迭代 — inline style 改字号/高度/间距

详细说明见 SKILL.md

Style B 瑞士风

瑞士风是这次新增的结构化主题。它不是"换一套 CSS",而是一套更严格的版式系统。

  • 22 个具名版式:正文页只能从 S01S22 中选择,不能临时发明页面结构
  • 4 套锚点色:克莱因蓝 IKB、柠檬黄、柠檬绿、安全橙
  • 网格锁定:16 列 grid、直角色块、1px 发丝线、无阴影、无渐变、无圆角
  • 中文字号收敛:全中文大标题需要降一档,避免占掉正文和图片空间
  • 图文底对齐:左文右图 / 左图右文场景优先让正文块与图片底部对齐,同时避开页脚翻页组件
  • 图片槽位绑定:图片必须进入模板预留的 data-image-slot,常见主图按 21:9 或 16:10 生成
  • 强校验:用脚本拦住居中标题、实验版式、SVG 内写字、图片脱离槽位等问题;可用 Playwright 时还会量化真实渲染后的 overflow、bottom whitespace、title gap

瑞士风校验命令:

node scripts/validate-swiss-deck.mjs path/to/index.html

Codex 配图能力

在 Codex 环境中,完成 deck 初稿后可以主动询问用户是否需要生成配图。用户确认后,再询问图片类型或风格,常用类型包括:

  • 人文纪实照片:富士 / 徕卡感的真实场景,增加人文表现力
  • 信息图 / 流程图 / 对比图 / 系统关系图:用于解释无法用实拍照片说明的概念
  • 截图美化 / 截图再设计:原始截图优先用内置背景资产做 CleanShot X 式背景画布适配;需要重构时再生成 UI 情景图
  • 数据大字报 / 数据图表:把关键数字做成可直接插入 PPT 的视觉素材
  • 多图拼贴:用于极宽图片槽位,避免把三张 16:9 图片硬塞进三列

生成图片时要遵守四个关键规则:

  • 图片是 PPT 中的嵌入素材,不要自带页脚、页底、标题、角标、页码或装饰边框
  • 图片语言跟随 deck 语言:中文 deck 的信息图用中文标签,英文 deck 用英文标签
  • 图片比例必须先匹配落位:瑞士风主图常用 21:9,通用主图常用 16:9 / 16:10,截图再设计常用 16:10,多图网格统一高度
  • 用户截图需要保真时,先读 references/screenshot-framing.md,用 assets/screenshot-backgrounds/ 内置背景 + 程序化缩放/留边/对齐处理,不要默认重画截图内容

配图提示词见 references/image-prompts.md,截图适配见 references/screenshot-framing.md

封面生成

这个 Skill 也可以基于文章或 PPT 核心观点生成平台封面。典型规格:

  • 公众号头图:21:9,主标题优先,右侧或边缘保留视觉锚点
  • 公众号分享卡:1:1,与头图共用主题色、关键词和视觉元素
  • 小红书封面 / 轮播:3:4,大标题优先,多张时统一字号和视觉节奏
  • 视频号 / 横版封面:16:9,适合标题 + 副标题 + 单一视觉焦点

封面原则和 PPT 一样:只用少量关键词,视觉重心落在大标题上,不要把正文堆满。

示例请求

复制下面任意一条给 Agent,再附上你的文章、Markdown 或素材文件:

帮我基于这篇文章生成一份 8 页左右的瑞士风 PPT,需要 3 张配图,图片比例跟模板槽位匹配。
帮我把这个产品分析文档做成电子杂志风 PPT,重点突出观点和叙事节奏。
基于这份 PPT 的主题,做两张封面:公众号 21:9 头图和 1:1 分享卡,视觉保持一致。
把这些产品截图重新设计成统一的 16:10 PPT 配图,保留关键信息,不要画页脚和标题。

目录结构

guizang-ppt-skill/
├── SKILL.md              ← Skill 主文件:工作流、原则、常见错误
├── README.md             ← 本文件
├── assets/
│   ├── template.html         ← Style A 电子杂志风模板
│   ├── template-swiss.html   ← Style B 瑞士国际主义模板
│   └── screenshot-backgrounds/ ← 截图美化内置背景(WebP):style-a 5 套 / style-b 4 套
├── scripts/
│   └── validate-swiss-deck.mjs ← 瑞士风版式校验器
└── references/
    ├── components.md     ← 组件手册(字体、色、网格、图标、callout、stat、pipeline)
    ├── layouts.md        ← 10 种页面布局骨架(可直接粘贴)
    ├── layouts-swiss.md  ← 22 种瑞士风锁定版式
    ├── swiss-layout-lock.md ← 瑞士风还原度和版式硬约束
    ├── themes.md         ← 5 套主题色预设(只能选不能自定义)
    ├── themes-swiss.md   ← 4 套瑞士风锚点色
    ├── image-prompts.md  ← GPT-Image 2.0 / GPT-M 2.0 配图类型、比例和基础提示词
    ├── screenshot-framing.md ← CleanShot X 式截图适配语义
    └── checklist.md      ← 质量检查清单(P0 / P1 / P2 / P3 分级)

主题色预设

references/themes.md 里选一套——不允许自定义 hex 值,保护美学比给自由更重要。

Style A 电子杂志主题

预览 主题 核心色与适合场景
墨水经典主题预览 🖋 墨水经典 #0a0a0b / #f1efea。通用默认、商业发布、不知道选啥时最稳。
靛蓝瓷主题预览 🌊 靛蓝瓷 #0a1f3d / #f1f3f5。科技、研究、AI、技术发布会。
森林墨主题预览 🌿 森林墨 #1a2e1f / #f5f1e8。自然、可持续、文化、非虚构内容。
牛皮纸主题预览 🍂 牛皮纸 #2a1e13 / #eedfc7。怀旧、人文、阅读、历史、文学分享。
沙丘主题预览 🌙 沙丘 #1f1a14 / #f0e6d2。艺术、设计、创意、时尚和画廊感内容。

切换主题只需替换 template.html 开头 :root{} 里的 6 行变量,其他 CSS 全走 var(--...)

Style B 瑞士主题

瑞士风从 references/themes-swiss.md 里选一套,同样不允许自定义 hex 值

预览 主题 锚点色与适合场景
克莱因蓝瑞士主题预览 🔵 克莱因蓝 IKB #002FA7。通用默认、商业发布、AI 产品、方法论。
柠檬黄瑞士主题预览 🟡 柠檬黄 #FFD500。年轻、运动、零售、消费品、Y2K 复古。
柠檬绿瑞士主题预览 🟢 柠檬绿 #C5E803。生态、可持续、健康、Z 世代品牌。
安全橙瑞士主题预览 🟠 安全橙 #FF6B35。警示、新闻、工业、运动、活力主题。

如果用户说"瑞士风 PPT"但没有指定颜色,默认推荐克莱因蓝 IKB。

核心设计原则

  1. 克制优于炫技 — WebGL 背景只在 hero 页透出
  2. 结构优于装饰 — 信息靠字号 + 字体对比 + 网格留白,不用阴影和浮动卡片
  3. 图片是第一公民 — 图片要对齐正文内容区,比例稳定,只裁底部,顶部和左右完整
  4. 配图只做素材 — 生成图只保留核心照片 / 图表 / UI,不要把 PPT 页脚、标题和角标画进图片里
  5. 节奏靠 hero 页 — hero / non-hero 交替,才不累眼睛
  6. 低性能可退场 — 按 B 能切换到静态模式,动态效果不能成为阅读负担
  7. 术语统一 — Skills 就是 Skills,不中英混译
  8. 瑞士风必须守版式 — Style B 优先还原原始 22P 版式,不要为了"多样"发明不存在的页面

视觉参考

  • Monocle 杂志的版式
  • YC Garry Tan "Thin Harness, Fat Skills"
  • Massimo Vignelli / Helvetica Forever / 瑞士国际主义网格系统
  • 歸藏线下分享 PPT 系列

Roadmap

  • 补充更多真实案例和可打开的 HTML deck 示例
  • 扩展封面规格,覆盖更多内容平台
  • 增加更多瑞士风版式校验规则
  • 优化截图再设计和信息图生成工作流
  • 整理 WorkBuddy 等平台上架版本
  • 增加更多主题包,但继续限制自定义颜色

FAQ

可以导出 PPTX 吗? 当前核心交付是 HTML。你可以用浏览器演示、截图或录屏。如果需要 PPTX,建议把 HTML 页面作为视觉稿再转换,但这不是当前主流程。

为什么不允许自定义颜色? 这个 Skill 的重点是稳定产出。自由选色很容易破坏整体风格,所以只允许从预设主题里选。

我能加自己的版式吗? 可以。Style A 可以在 references/layouts.md 里扩展;Style B 更严格,需要同步更新 template-swiss.htmllayouts-swiss.mdswiss-layout-lock.md 和校验器。

Codex 配图是必须的吗? 不是。没有配图也能生成 PPT。配图流程只在需要照片、信息图、UI 情景图或封面时使用。

怎么更新到最新版? 重新运行安装命令,或在本地 skill 目录执行 git pull

贡献

Bug、排版问题、新布局需求——欢迎开 Issue 或 PR。改动请优先:

  • template.html 里补类,不要让 layouts.md 使用未定义的类
  • template-swiss.html 里补类时,同步更新 layouts-swiss.mdswiss-layout-lock.md
  • 瑞士风新增规则后,同步更新 scripts/validate-swiss-deck.mjs
  • 把踩过的坑写到 checklist.md 对应的 P0 / P1 / P2 / P3 级别
  • 新主题色进 themes.md 并给出适合的场景

License

AGPL-3.0 © 2026 op7418

View on GitHub

Recent activity

commits and pull requests

Releases and announcements

1 total
  1. ## Highlights - Added Style B Swiss International workflow and documentation. - Added Codex image generation guidance for deck visuals and covers. - Added Swiss map component guidance for geography, history, and location relationship slides. - Added contribution guide, issue templates, and pull request template. - Updated repository metadata, topics, and enabled Discussions. ## Validation - Swiss deck validator is available at `scripts/validate-swiss-deck.mjs`. - New community templates are included under `.github/`.

Code frequency

additions and deletions
+5.3K-5.3KWeek of 2026-04-19: +2,579 linesWeek of 2026-04-19: -20 linesWeek of 2026-04-26: +612 linesWeek of 2026-04-26: -109 linesWeek of 2026-05-03: +0 linesWeek of 2026-05-03: -0 linesWeek of 2026-05-10: +5,335 linesWeek of 2026-05-10: -174 linesWeek of 2026-05-17: +144 linesWeek of 2026-05-17: -63 linesWeek of 2026-05-24: +663 linesWeek of 2026-05-24: -23 linesWeek of 2026-05-31: +49 linesWeek of 2026-05-31: -2 linesWeek of 2026-06-07: +0 linesWeek of 2026-06-07: -0 linesWeek of 2026-06-14: +0 linesWeek of 2026-06-14: -0 linesWeek of 2026-06-21: +0 linesWeek of 2026-06-21: -0 linesWeek of 2026-06-28: +0 linesWeek of 2026-06-28: -0 linesWeek of 2026-07-05: +0 linesWeek of 2026-07-05: -0 linesWeek of 2026-07-12: +0 linesWeek of 2026-07-12: -0 linesWeek of 2026-07-19: +461 linesWeek of 2026-07-19: -101 linesWeek of 2026-07-26: +0 linesWeek of 2026-07-26: -0 linesWeek of 2026-08-02: +0 linesWeek of 2026-08-02: -0 linesApr 19, 2026Aug 2, 2026
+9.8K lines added, -492 removed over the last year.

Commits per week

last 52 weeks
110Week of 2025-08-10: 0 commitsWeek of 2025-08-17: 0 commitsWeek of 2025-08-24: 0 commitsWeek of 2025-08-31: 0 commitsWeek of 2025-09-07: 0 commitsWeek of 2025-09-14: 0 commitsWeek of 2025-09-21: 0 commitsWeek of 2025-09-28: 0 commitsWeek of 2025-10-05: 0 commitsWeek of 2025-10-12: 0 commitsWeek of 2025-10-19: 0 commitsWeek of 2025-10-26: 0 commitsWeek of 2025-11-02: 0 commitsWeek of 2025-11-09: 0 commitsWeek of 2025-11-16: 0 commitsWeek of 2025-11-23: 0 commitsWeek of 2025-11-30: 0 commitsWeek of 2025-12-07: 0 commitsWeek of 2025-12-14: 0 commitsWeek of 2025-12-21: 0 commitsWeek of 2025-12-28: 0 commitsWeek of 2026-01-04: 0 commitsWeek of 2026-01-11: 0 commitsWeek of 2026-01-18: 0 commitsWeek of 2026-01-25: 0 commitsWeek of 2026-02-01: 0 commitsWeek of 2026-02-08: 0 commitsWeek of 2026-02-15: 0 commitsWeek of 2026-02-22: 0 commitsWeek of 2026-03-01: 0 commitsWeek of 2026-03-08: 0 commitsWeek of 2026-03-15: 0 commitsWeek of 2026-03-22: 0 commitsWeek of 2026-03-29: 0 commitsWeek of 2026-04-05: 0 commitsWeek of 2026-04-12: 0 commitsWeek of 2026-04-19: 7 commitsWeek of 2026-04-26: 3 commitsWeek of 2026-05-03: 0 commitsWeek of 2026-05-10: 11 commitsWeek of 2026-05-17: 1 commitsWeek of 2026-05-24: 1 commitsWeek of 2026-05-31: 1 commitsWeek of 2026-06-07: 0 commitsWeek of 2026-06-14: 0 commitsWeek of 2026-06-21: 0 commitsWeek of 2026-06-28: 0 commitsWeek of 2026-07-05: 0 commitsWeek of 2026-07-12: 0 commitsWeek of 2026-07-19: 2 commitsWeek of 2026-07-26: 0 commitsWeek of 2026-08-02: 0 commitsAug 10, 2025Aug 2, 2026
26 commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 0 commitsSun 1:00 — 0 commitsSun 2:00 — 0 commitsSun 3:00 — 0 commitsSun 4:00 — 0 commitsSun 5:00 — 0 commitsSun 6:00 — 0 commitsSun 7:00 — 0 commitsSun 8:00 — 0 commitsSun 9:00 — 0 commitsSun 10:00 — 0 commitsSun 11:00 — 1 commitsSun 12:00 — 0 commitsSun 13:00 — 0 commitsSun 14:00 — 0 commitsSun 15:00 — 0 commitsSun 16:00 — 0 commitsSun 17:00 — 0 commitsSun 18:00 — 0 commitsSun 19:00 — 0 commitsSun 20:00 — 0 commitsSun 21:00 — 0 commitsSun 22:00 — 0 commitsSun 23:00 — 0 commitsMon 0:00 — 0 commitsMon 1:00 — 2 commitsMon 2:00 — 0 commitsMon 3:00 — 0 commitsMon 4:00 — 0 commitsMon 5:00 — 0 commitsMon 6:00 — 0 commitsMon 7:00 — 0 commitsMon 8:00 — 0 commitsMon 9:00 — 0 commitsMon 10:00 — 0 commitsMon 11:00 — 0 commitsMon 12:00 — 0 commitsMon 13:00 — 0 commitsMon 14:00 — 0 commitsMon 15:00 — 0 commitsMon 16:00 — 0 commitsMon 17:00 — 0 commitsMon 18:00 — 0 commitsMon 19:00 — 0 commitsMon 20:00 — 0 commitsMon 21:00 — 0 commitsMon 22:00 — 0 commitsMon 23:00 — 0 commitsTue 0:00 — 0 commitsTue 1:00 — 0 commitsTue 2:00 — 0 commitsTue 3:00 — 0 commitsTue 4:00 — 0 commitsTue 5:00 — 0 commitsTue 6:00 — 0 commitsTue 7:00 — 0 commitsTue 8:00 — 0 commitsTue 9:00 — 0 commitsTue 10:00 — 0 commitsTue 11:00 — 0 commitsTue 12:00 — 0 commitsTue 13:00 — 0 commitsTue 14:00 — 0 commitsTue 15:00 — 0 commitsTue 16:00 — 0 commitsTue 17:00 — 1 commitsTue 18:00 — 0 commitsTue 19:00 — 1 commitsTue 20:00 — 1 commitsTue 21:00 — 0 commitsTue 22:00 — 0 commitsTue 23:00 — 1 commitsWed 0:00 — 0 commitsWed 1:00 — 0 commitsWed 2:00 — 0 commitsWed 3:00 — 0 commitsWed 4:00 — 0 commitsWed 5:00 — 0 commitsWed 6:00 — 0 commitsWed 7:00 — 0 commitsWed 8:00 — 0 commitsWed 9:00 — 0 commitsWed 10:00 — 0 commitsWed 11:00 — 0 commitsWed 12:00 — 0 commitsWed 13:00 — 1 commitsWed 14:00 — 1 commitsWed 15:00 — 0 commitsWed 16:00 — 0 commitsWed 17:00 — 0 commitsWed 18:00 — 0 commitsWed 19:00 — 0 commitsWed 20:00 — 0 commitsWed 21:00 — 1 commitsWed 22:00 — 0 commitsWed 23:00 — 0 commitsThu 0:00 — 0 commitsThu 1:00 — 0 commitsThu 2:00 — 0 commitsThu 3:00 — 0 commitsThu 4:00 — 0 commitsThu 5:00 — 0 commitsThu 6:00 — 0 commitsThu 7:00 — 0 commitsThu 8:00 — 0 commitsThu 9:00 — 0 commitsThu 10:00 — 0 commitsThu 11:00 — 0 commitsThu 12:00 — 1 commitsThu 13:00 — 0 commitsThu 14:00 — 0 commitsThu 15:00 — 0 commitsThu 16:00 — 0 commitsThu 17:00 — 0 commitsThu 18:00 — 0 commitsThu 19:00 — 0 commitsThu 20:00 — 0 commitsThu 21:00 — 0 commitsThu 22:00 — 3 commitsThu 23:00 — 0 commitsFri 0:00 — 0 commitsFri 1:00 — 0 commitsFri 2:00 — 0 commitsFri 3:00 — 0 commitsFri 4:00 — 0 commitsFri 5:00 — 0 commitsFri 6:00 — 0 commitsFri 7:00 — 0 commitsFri 8:00 — 0 commitsFri 9:00 — 0 commitsFri 10:00 — 0 commitsFri 11:00 — 0 commitsFri 12:00 — 2 commitsFri 13:00 — 2 commitsFri 14:00 — 4 commitsFri 15:00 — 0 commitsFri 16:00 — 1 commitsFri 17:00 — 0 commitsFri 18:00 — 0 commitsFri 19:00 — 0 commitsFri 20:00 — 0 commitsFri 21:00 — 0 commitsFri 22:00 — 0 commitsFri 23:00 — 0 commitsSat 0:00 — 0 commitsSat 1:00 — 0 commitsSat 2:00 — 0 commitsSat 3:00 — 0 commitsSat 4:00 — 1 commitsSat 5:00 — 0 commitsSat 6:00 — 0 commitsSat 7:00 — 0 commitsSat 8:00 — 0 commitsSat 9:00 — 0 commitsSat 10:00 — 2 commitsSat 11:00 — 0 commitsSat 12:00 — 0 commitsSat 13:00 — 0 commitsSat 14:00 — 0 commitsSat 15:00 — 0 commitsSat 16:00 — 0 commitsSat 17:00 — 0 commitsSat 18:00 — 0 commitsSat 19:00 — 0 commitsSat 20:00 — 0 commitsSat 21:00 — 0 commitsSat 22:00 — 0 commitsSat 23:00 — 0 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.
DateListRankStars gained
May 12, 2026daily#19+51
Apr 25, 2026daily#14+211
Apr 24, 2026daily#5+236
  • obra/superpowers

    An agentic skills framework & software development methodology that works.

    268.6K stars · Shell

  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    238.5K stars · JavaScript

  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    234.7K stars · JavaScript

  • NousResearch/hermes-agent

    The agent that grows with you

    227K stars · Python

  • f/prompts.chat

    f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete privacy.

    166.9K stars · HTML

  • ripienaar/free-for-dev

    A list of SaaS, PaaS and IaaS offerings that have free tiers of interest to devops and infradev

    131.2K stars · HTML