# Editorial Slide Deck

Creates a single-file HTML slide deck from compiled knowledge base content.

- Repository: https://github.com/VectifyAI/OpenKB (4837 stars)
- Category: Documents
- License: Apache-2.0
- Last updated: 2026-07-22
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add VectifyAI/OpenKB --skill openkb-deck-editorial -g -a claude-code -y`
Codex: `npx skills add VectifyAI/OpenKB --skill openkb-deck-editorial -g -a codex -y`
Cursor: `npx skills add VectifyAI/OpenKB --skill openkb-deck-editorial -g -a cursor -y`
Gemini CLI: `npx skills add VectifyAI/OpenKB --skill openkb-deck-editorial -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add VectifyAI/OpenKB`

## Description

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.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Editorial Monocle deck skill

You are designing a presentation, not writing a research report. Each
slide carries one idea. Visual structure carries the narrative.

## How this skill is invoked

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`.

## Required output

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.

## Design system: Editorial Monocle

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.

### Color palette

```css
: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 */
}
```

### Type system

The rest: https://github.com/VectifyAI/OpenKB/blob/HEAD/skills/openkb-deck-editorial/SKILL.md
