agentleFS
KhaledSaeed18KhaledSaeed18/deck-kit/.agents/skills/retheme/SKILL.md

retheme

Skill0 starsChanged 12 days agoMITView on GitHub

The design pass for this deck kit. Gives the deck a new visual identity (palette, fonts, shapes, layouts, diagram styling, presenter and chrome) by editing only src/theme/** and the notes-PDF palette, then verifies contrast, fit and offline fonts. Use when the user wants a new look, a brand or university style, light or dark mode, different fonts, or "make it look like X".

  • Installs packages

1 other project uses a version of this.

Adopted by

Most recently taken up by

  • Other versions1 project uses a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 1

    1. authrain-cloud-abdullahformuli/unslop★ 1same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • In this repository4 other files it gives its agents.

The file

We split this skill into the rules it gives an agent

10 rules. About 0 are common, 0 are distinctive, and 10 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈0

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 10

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Read the "Design direction" section of docs/brief.md, and ask the speaker only for what is missing: mood or references, colours, fonts, …

    line 14
  2. Very specific:

    If the frontend-design skill is available, use its guidance for an intentional direction rather than a template look.

    line 16
  3. Very specific:

    Look at the current state first: pnpm shots, then view out/shots/.

    line 18
  4. Very specific:

    Every visual value lives in src/theme/.

    line 39
  5. Very specific:

    only in tokens.css: every other theme file must use var(--token), and tests/unit/literals.test.ts fails on any raw value there.

    line 40
  6. Very specific:

    No colours or fonts anywhere outside src/theme/ (the same test scans the engine, entries and slides).

    line 44
  7. Very specific:

    Keep prefers-reduced-motion working: the @media (prefers-reduced-motion: reduce) block at the end of tokens.css zeroes the duration tokens.

    line 48
  8. Very specific:

    Use fonts with an open licence from Fontsource: pnpm add @fontsource-variable/<name> (or @fontsource/<name> for static fonts), import them …

    line 54
  9. Very specific:

    Remove a font package only if no theme uses it: the example decks in examples/*/theme/ import their own fonts (grep -r fontsource …

    line 57
  10. Very specific:

    Never use Google Fonts URLs or any remote @import.

    line 59

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Retheme

The design lives entirely in src/theme/. Content (src/slides/) and the engine never change in this pass. At the end, git diff --stat should list only src/theme/**, package.json and pnpm-lock.yaml (font packages), and scripts/export-notes-pdf.ts (its palette block).

1. Direction

  • Read the "Design direction" section of docs/brief.md, and ask the speaker only for what is missing: mood or references, colours, fonts, light or dark projector.
  • If the frontend-design skill is available, use its guidance for an intentional direction rather than a template look.
  • Look at the current state first: pnpm shots, then view out/shots/.
  • Projectors wash out colour and contrast: prefer strong ink on light paper or the reverse, body text at least the --fs-body token (32 px on the 1920x1080 canvas), and no thin hairlines or light grey text.

2. How the theme is built

FileHolds
tokens.cssEvery value: colours, patches, borders, radii, shadows, textures, fonts, type scale, spacing, durations, diagram tokens
fonts.css@import of the bundled @fontsource* packages
base.cssSlide canvas, headings, text, tables, figures, focus ring
content.cssComponent classes used by the slides (cards, .question, .takeaways, .refs, …)
types/layouts.cssPer-data-type layout
diagrams.cssdgm-* SVG classes
chrome.cssProgress bar, counter, jump chip, overview, help, blackout, laser pointer
presenter.cssThe presenter window

Rules:

  • Change values in tokens.css first; most redesigns are mostly token work. Keep the token names (the engine and other files refer to them); add new tokens when you need them.
  • Every visual value lives in src/theme/. Raw values (colours, lengths, durations) are allowed only in tokens.css: every other theme file must use var(--token), and tests/unit/literals.test.ts fails on any raw value there. Unitless numbers, percentages and 0 are fine. Write new rules with tokens from the start; it is much cheaper than moving values into tokens afterwards. Gradients and data-URI images can be tokens too.
  • No colours or fonts anywhere outside src/theme/ (the same test scans the engine, entries and slides).
  • Fragments: keep visibility: hidden as the hiding mechanism (the engine owns it). Style [data-fragment-state="current"] if the newest step should stand out.
  • Keep prefers-reduced-motion working: the @media (prefers-reduced-motion: reduce) block at the end of tokens.css zeroes the duration tokens; keep it, and use those tokens for any motion.
  • Print: each slide carries its own background (print-color-adjust: exact is set).

3. Fonts (offline)

  • Use fonts with an open licence from Fontsource: pnpm add @fontsource-variable/<name> (or @fontsource/<name> for static fonts), import them in fonts.css, and point --font-head, --font-sans and --font-mono at the family names, with system fallbacks.
  • Remove a font package only if no theme uses it: the example decks in examples/*/theme/ import their own fonts (grep -r fontsource examples/*/theme).
  • Never use Google Fonts URLs or any remote @import.

4. Notes PDF

scripts/export-notes-pdf.ts styles the printed presenter script on its own: update the :root palette block, the two @font-face paths and the font-family lines to match the new theme.

5. Verify, and iterate

  1. pnpm check: the literals test proves no visual values leaked outside the theme.
  2. pnpm test:deck: axe colour contrast on every slide, every slide still fits the canvas, the PDF still has one page per slide, nothing is fetched from the network.
  3. pnpm shots, then look at every image in out/shots/, including the -step1 builds and presenter.png. Also check the overview (O), help (?), blackout (B) and laser pointer (L) in pnpm dev, or ask the speaker to.
  4. pnpm test:engine only if you touched selectors the engine relies on (it runs on the example deck's own theme, so it normally stays green).

Report the direction you took, the before and after for two or three slides (paths to the shots), and the check output. Stop for the speaker's review.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.