anthropics/skills180kwebapp-testing
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
浏览器自动化
Use when the user asks the openkb chat to make a deck / slide presentation / PPT / slides / 演示稿 / 幻灯片 from their compiled KB content. Generates a polished single-file HTML deck in the Editorial Monocle visual direction (warm cream background, serif type, brick-red accent) — designed to be opened in a browser, full-screened, and shared. Does NOT apply to generating skills (that's `openkb skill new`), long-form research reports, or interactive prototypes.
把这段话发给 Claude Code、Codex 或 Cursor。智能体会先检查安全性,你确认后才安装。
读取 https://funcoding.ai/skills/yuezhiai/jonex/openkb-deck-editorial/install.md ,按里面的步骤帮我安装这个 Skill。
You are designing a presentation, not writing a research report. Each slide carries one idea. Visual structure carries the narrative.
The user typed something like "make a deck about X" inside openkb chat.
You have wiki-read tools in your normal tool set, plus a write_file
tool that can write under output/**, plus a shell tool you can use to
read this SKILL.md and any files in skills/openkb-deck-editorial/ if
needed.
Pick a kebab-case slug for the deck (e.g. transformers-pitch) and
write the output to output/decks/<slug>/index.html.
Exactly one file: output/decks/<slug>/index.html.
It must be self-contained: no external <link rel="stylesheet">,
no external <script src="…">, no remote <img>. All CSS goes in a
single inline <style> in <head>. Helper JS for keyboard navigation
goes in a single inline <script> at end of <body>.
The body is a sequence of <section class="slide" data-type="...">
blocks. Each data-type must be one of the 7 values listed in §
"Slide grammar" below. The deck supports keyboard navigation: ← / →
move between slides, F toggles fullscreen, P triggers print.
Use this fixed design system. Do not improvise nearby colors, do not introduce gradients, do not bring in emojis. This is the only non-monochrome palette in the entire deck.
:root {
--bg: #f3eee1; /* oklch(94% 0.03 80) — warm cream paper */
--ink: #1a1612; /* oklch(15% 0.01 50) — warm near-black */
--muted: #7a6e55; /* oklch(55% 0.04 75) — labels / metadata */
--rule: #d4cfc0; /* oklch(82% 0.02 75) — thin separator */
--accent: #a4341c; /* oklch(45% 0.16 30) — brick red, the ONLY non-monochrome */
--highlight: #fff3a8; /* oklch(95% 0.10 95) — marker highlighter ONLY */
}
font-family-serif: "Charter", "Iowan Old Style", "Times New Roman", Georgia, serif;
font-family-sans: "Inter", -apple-system, "Helvetica Neue", sans-serif; /* labels only */
Type scale (size / line-height / letter-spacing):
--type-display: 56px / 1.05 / -1px — cover/chapter big titles--type-title: 38px / 1.10 / -0.5px — normal slide titles--type-body: 18px / 1.55 / 0 — body copy--type-quote: 28px / 1.30 / -0.3px italic — pull quotes--type-label: 10px / 1.0 / 2.5px uppercase — top/bottom label tracksaspect-ratio: 16/9; width: 100vw; max-width: 1280px;N / Total, right = source short label..display) must use max-width: 18ch (NOT 10ch).
Never wrap an article ("the", "an", "to") onto its own line..data-body { align-items: center; text-align: center } for
data-type="data" only — leave other slide types left-aligned).
Body copy beneath stays centered, max-width 38em..cover-body, .closing-body { max-width: 26em }..kbd { opacity: 0; transition: opacity .25s ease; }
body:hover .kbd { opacity: .55; }
data-type values)data-type | Use | Visual signature |
|---|---|---|
cover | First slide: tag + huge title + 1-line subtitle | Display type, left-aligned, never centered |
chapter | Section divider: oversize number + chapter name | Number 120px brick-red, name 38px serif |
thesis | A single claim + a short explanation | Title fills ~60% height, explanation small bottom |
quote | Italic pull-quote + attribution | Centered, serif italic 28px, generous whitespace |
compare | Two-column comparison: header + 3-5 lines each side | 1px brick-red vertical rule between columns |
data | One number + label + one-line interpretation | Number 120-160px brick-red, micro-copy 12px |
closing | Mirrors cover; thanks / next steps | Same scale as cover but content closes the arc |
Cover/closing exception: the cover and closing slides have no
chapter context, so the top-left label is the deck identifier
("OPENKB") instead of a CHAPTER NN id.
concepts/ and
summaries/, and read wiki/index.md. Form a mental map before
committing to what the deck argues.data-type assignments. Vary data-type — at least 4
distinct types, no run of 3+ consecutive same type.output/decks/<slug>/index.html in one write_file
call. Inline all CSS, inline the keyboard nav JS, use inline
<svg> only for any graphics (v1 does not embed bitmap images).compare / data slide.data-type.quote and closing are centered.output/decks/<slug>/index.html exist and contain no external
<link> or <script src=>?data-type="cover" and one
data-type="closing"?data-type values used?data-type?If any answer is no, revise and re-run this self-check.
anthropics/skills180kToolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
浏览器自动化
addyosmani/agent-skills103kTests in real browsers via Chrome DevTools MCP. Use when building or debugging anything that runs in a browser. Use when you need to inspect the DOM, capture console errors, analyze network requests, profile performance, or verify visual output with real runtime data. Requires the chrome-devtools MCP server to be configured.
浏览器自动化
ComposioHQ/awesome-claude-skills77kToolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
浏览器自动化
code-yeongyu/oh-my-openagent70kDrives a real browser through the omowright library from the js eval kernel: sites the user is already signed into, forms and clicks, JS-rendered pages, screenshots, web QA, extension popups, a human handoff for login, CAPTCHA or OTP, and a browser you own for scraping, bot-scored targets, network capture and QA traces. Use for any interactive browser task; not for a plain search or an unblocked static fetch.
浏览器自动化
shanraisshan/claude-code-best-practice67kBrowser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction.
浏览器自动化
CherryHQ/cherry-studio52kRun Cherry Studio critical-path system regression tasks through the repository-owned Playwright E2E workflow. Use for full regression, release acceptance, development-branch system validation, or a named cherry-regression-test task on GitHub-hosted macOS and Windows runners.
浏览器自动化