Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问许可证需确认审计通过

html-deckHTML deck 搜索

Agent Skill

html-deck 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

1,285

周安装

52

GitHub Stars

15

下载量

404
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:html-deck(HTML deck 搜索)
来源仓库:https://github.com/stahura/domo-ai-vibe-rules
仓库路径:skills/html-deck
安装命令:
npx skills add https://github.com/stahura/domo-ai-vibe-rules --skill html-deck
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/stahura/domo-ai-vibe-rules --skill html-deck

简介

html-deck 用于查找、检索和筛选相关信息。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中根据关键词快速定位候选结果。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装,需确认权限与维护状态。
  • 使用时应注意是否会触发联网、命令执行或文件读写操作。
  • 建议结合原始 README 核验具体用法和功能边界。

SKILL.md

HTML Slide Deck to PDF Workflow

Build polished, presentation-ready HTML slide decks and convert them to razor-sharp PDFs using headless Chrome.

When to use

  • Creating a new slide deck from program documentation, notes, or outlines.
  • Converting rough content into a professional presentation.
  • Generating a PDF version of an HTML deck with exact page dimensions.
  • Building decks that include app screenshots or product visuals.

Progress checklist

Deck Build Progress:
- [ ] Phase 1: Slide skeleton (HTML + CSS foundation)
- [ ] Phase 2: Content population (slides from source material)
- [ ] Phase 3: Visual polish (spacing, typography, layout fixes)
- [ ] Phase 4: Print-safe CSS
- [ ] Phase 5: PDF conversion (use bundled script; do not reimplement)
- [ ] Phase 6: Verification (screenshot comparison)

Phase 1 — Slide skeleton

Use the Domo theme — MANDATORY FIRST STEP

  1. Read references/domo-theme.md — it contains a complete, copy-paste-ready HTML skeleton that produces slides matching the Domo template exactly.
  2. Read references/assets/logo-data-uri.txt — it contains the actual Domo logo as a base64 PNG data URI. Replace every LOGO_DATA_URI placeholder in the skeleton with this value.
  3. The logo PNG is also at references/assets/domologo.png.

Do not skip this step. Copy the complete skeleton from the theme file, then build slides into it. Every content slide MUST have:

  • Header: <div class="slide-header"> with <h1>, .subtitle, and .header-line (thin gray separator — required)
  • Content: <div class="slide-content has-bg">always use has-bg for the gray #DDE5ED background (this is the Domo look; content is vertically centered automatically)
  • Footer: <div class="slide-footer"> with .confidential (left), .footer-line (center), and .domo-badge with <img src="LOGO_DATA_URI"> (bottom-right — required)

Dimensions

Standard 16:9 widescreen: --slide-w: 1024px; --slide-h: 576px;

Content area positioning

The has-bg class handles positioning automatically (position:absolute; top:90px; bottom:52px) with vertical centering (display:flex; justify-content:center). Do not override these with inline styles.

Phase 2 — Content population

Slide type patterns

Table slide — Use a styled <table> with labeled column headers. Keep cell padding tight (6px 10px) on dense slides.

Flow/pipeline slide — Horizontal flex row of boxes with arrow separators (). Use colored left borders or top borders to differentiate phases.

Card grid — Flex row of equal-width cards. Use flex:1 on each card, consistent padding, and subtle background colors (#F6F8FA).

Architecture diagram — Nested flex containers. Label each layer (e.g. "INTELLIGENCE LAYER", "STORAGE", "COMPUTE") with colored card groups.

Screenshot showcase — One hero image centered, or two side-by-side with max-width:48%. Apply border-radius:8px for polish. No box-shadow (removed by print CSS anyway).

Info boxes — Paired boxes below main content. Use display:flex; gap:32px with flex:1 on each.

Typography scale

ElementSizeWeight
Slide title (h1)28px800
Subtitle11px700
Section label10px700, uppercase, letter-spacing 2px
Body text13–14px400
Table text11–13px400
Fine print / captions9–10px400

Color conventions

Use CSS variables for consistency. Define brand colors, accent colors, and text shades in :root.

Phase 3 — Visual polish

Spacing rules

  1. Content must never touch the footer. The bottom:52px on .slide-content creates a 52px exclusion zone. If content still overlaps, reduce margin-top, padding, gap, font-size, or line-height on the offending elements.
  2. Header–content gap. The top value on .slide-content controls clearance below the header. Typical: 88–100px. Increase if subtitle text collides with content.
  3. Dense slides. When a slide has both a table and info boxes, use compact values:

- Table cell padding: 4px 10px - Info box padding: 5px 12px - Gaps between cards: 3–5px - Font size: step down 1px from defaults

  1. justify-content:center caution. Vertical centering can push tall content past bottom. Remove it on content-heavy slides and let content flow from top.

Image handling

  • URL-encode spaces in src paths: Sample%20Assets/file.png.
  • Avoid special Unicode characters in filenames. Copy to clean filenames if needed.
  • Use max-width:100%; max-height:100% with object-fit:contain to auto-size within the content area.

Phase 4 — Print-safe CSS

PDF rendering through Chromium's print pipeline treats box-shadow differently than screen rendering. Shadows appear as heavy dark blocks in PDF output.

Required rule (already in the skeleton above):

@media print {
  *, *::before, *::after {
    box-shadow: none !important;
  }
}

This strips all shadows for print only. The HTML browser view retains its shadows.

Additional print considerations:

  • page-break-after: always on .slide — one slide per page.
  • page-break-inside: avoid — prevent mid-slide splits.
  • background: white on body — no gray viewer background.

Phase 5 — PDF converter

Do not rewrite the converter from scratch. This skill ships a maintained script: references/convert-to-pdf.js. Copy it into the user’s project or run it by path from the skill directory after install.

npm install puppeteer-core
node convert-to-pdf.js path/to/deck.html path/to/deck.pdf
# optional second arg omitted => writes next to the HTML with .pdf extension

The script uses puppeteer-core with the system Chrome binary (not bundled Chromium), matching the approach below.

Key settings (implemented in the script; change only if you have a deliberate reason):

  • deviceScaleFactor: 2 — retina-crisp text.
  • printBackground: true — preserves colored backgrounds.
  • margin: {top: 0,...} — no extra whitespace around slides.
  • width/height must match --slide-w/--slide-h exactly.
  • Wait for document.fonts.ready before capturing — Google Fonts must finish loading.

package.json setup

{
  "scripts": { "pdf": "node convert-to-pdf.js" },
  "dependencies": { "puppeteer-core": "latest" }
}

Use puppeteer-core (not puppeteer): the full puppeteer package downloads its own Chromium on install (~hundreds of MB) and uses that browser; puppeteer-core is the automation library only and expects you to pass executablePath to an existing Chrome/Chromium (this script finds system Chrome). Smaller install, one browser to update, fewer CI/cache issues.

Phase 6 — Verification

Screenshot each HTML slide and each PDF page, then compare visually.

Quick verification script

// Screenshot slide N from the HTML
const box = await page.evaluate((idx) => {
  const el = document.querySelectorAll(".slide")[idx];
  const r = el.getBoundingClientRect();
  return { x: r.x, y: r.y, width: r.width, height: r.height };
}, slideIndex);

await page.screenshot({ path: `html_slide_${n}.png`, clip: box });

What to check

  • Page count matches slide count.
  • No content clipped by footer on any slide.
  • Fonts loaded (not fallback serif/sans-serif).
  • All images render (no broken-image icons or alt text).
  • No dark hue/shadow blocks around cards or images.
  • Background colors and gradients preserved.
  • Page edges are razor-sharp (no extra margin or whitespace).

Common pitfalls

SymptomCauseFix
Content overlaps footerbottom not set or justify-content:center on tall contentSet bottom:52px on .slide-content; remove vertical centering on dense slides
Dark blocks around elements in PDFbox-shadow renders differently in printAdd @media print {* {box-shadow: none!important;}}
Images don't loadSpaces or Unicode in file pathsURL-encode spaces (%20); copy files to clean filenames
Fonts fallback to serifnetworkidle0 not waited or fonts blockedWait for document.fonts.ready; ensure Google Fonts URL is correct
Chrome not foundPuppeteer can't locate browserUse puppeteer-core + executablePath to system Chrome
Extra whitespace around pagesPDF margin not zeroedSet margin: {top: 0, right: 0, bottom: 0, left: 0}
Blurry text in PDFLow device scale factorSet deviceScaleFactor: 2 in viewport

Checklist

  • Slide dimensions match --slide-w and --slide-h CSS variables
  • Every .slide-content has bottom:52px to clear the footer
  • @media print block strips all box-shadow values
  • page-break-after: always set on .slide for print
  • Converter uses puppeteer-core with system Chrome path
  • printBackground: true and zero margins in PDF options
  • deviceScaleFactor: 2 for retina quality
  • Font loading awaited before PDF capture
  • Image paths URL-encoded (no raw spaces)
  • Visual verification done on cover, dense slides, and screenshot slides

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

33.53%
按下载量换算135

Claude

30.76%
按下载量换算124

Cursor

19.05%
按下载量换算77

Gemini CLI

8.36%
按下载量换算34

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills