Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add jamditis/claude-skills-journalism --skill document-designgit clone --depth 1 https://github.com/jamditis/claude-skills-journalismWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/jamditis/claude-skills-journalism/document-design)<a href="https://agentmods.dev/skills/jamditis/claude-skills-journalism/document-design"><img src="https://agentmods.dev/badge/skills/jamditis/claude-skills-journalism/document-design/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/jamditis/claude-skills-journalism/document-design"><img src="https://agentmods.dev/badge/skills/jamditis/claude-skills-journalism/document-design.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00031 | $0.01902 |
| Opus 5 | $0.00015 | $0.00951 |
| Sonnet 5 | $0.00006 | $0.00380 |
| Haiku 4.5 | $0.00003 | $0.00190 |
Grade A, and why
document-design scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 293 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Document design
Create professional, print-ready HTML documents that export to PDF with customizable branding.
Brand configuration
Before creating documents, check for pdf-playground.local.md in the project
root. If it is absent, check the legacy Claude Code path
.claude/pdf-playground.local.md. If both exist, use only the project-root
file. If neither exists, use sensible defaults or ask the user for their brand
colors.
Reading brand config
Parse the selected config file's YAML frontmatter:
---
brand:
name: "Organization Name"
tagline: "Tagline"
website: "https://example.com"
email: "[email protected]"
colors:
primary: "#CA3553"
secondary: "#000000"
background: "#FFFFFF"
text: "#2d2a28"
muted: "#666666"
fonts:
heading: "Playfair Display"
body: "Source Sans 3"
style:
headingCase: "sentence"
useOxfordComma: true
---
Default brand values
If no config exists, use these defaults:
- Primary color:
#CA3553(red) - Secondary color:
#000000(black) - Heading font: Playfair Display
- Body font: Source Sans 3
- Heading case: sentence case
Core principles
- Print-first design: All documents target 8.5" × 11" letter size with proper margins
- Brand compliance: Use colors and fonts from brand configuration
- Sentence case by default: Unless brand config specifies "title" case
- Clean exports: Documents must render correctly when printed to PDF
CSS variables
Generate CSS variables from brand config:
:root {
--primary: [colors.primary];
--secondary: [colors.secondary];
--background: [colors.background];
--text: [colors.text];
--muted: [colors.muted];
/* Derived colors */
--primary-dark: [darken primary by 15%];
--gray-100: #f5f4f2;
--gray-200: #e8e6e3;
}
Print CSS fundamentals
Page setup
@page {
size: 8.5in 11in;
margin: 0;
}
@media print {
body {
-webkit-print-color-adjust: exact !important;
print-color-adjust: exact !important;
}
.page {
page-break-after: always;
page-break-inside: avoid;
}
}
What ships with it
17 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- agents/openai.yaml 113 B
- brands/ccm.yaml 1.6 KB
- brands/default.yaml 1.2 KB
- brands/example-newsroom.yaml 1.7 KB
- controls/control-panel.css 12 KB
- controls/control-panel.js 23 KB runs code
- controls/playground-wrapper.html 1.6 KB
- controls/prompt-generator.js 5.4 KB runs code
- controls/template-maps/proposal.js 7.5 KB runs code
- controls/template-maps/README.md 1.9 KB
- references/css-patterns.md 4.2 KB
- templates/event-template.html 9.4 KB
- templates/newsletter-template.html 10 KB
- templates/onepager-template.html 9.2 KB
- templates/proposal-template.html 29 KB
- templates/report-template.html 11 KB
- templates/slides-template.html 34 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago Changed · +21 lines 8347a42fb06f
- 10d ago First seen · 272 lines · 31 tokens per session scan A 059108e0ba79
document-design is a skill published in the GitHub repository jamditis/claude-skills-journalism (389 stars, last pushed 2d ago), licensed MIT. It adds 31 tokens to every session and 1,902 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
design-export-repair
Fixes broken decks/PDFs exported from Claude's "Design" feature (or similar AI deck generators) — cut-off or clipped text, wrong/substituted fonts, and corrupted .pptx package structure that shows up only once you export to PDF, not while looking at it in the app. Use this skill whenever the user uploads a zip, .pptx…
pdf-table-extractor-brief
Produces a structured extraction plan and clean spreadsheet template for pulling tabular data out of a PDF document — identifying the table structure, defining column headers, flagging extraction pitfalls, and providing a ready-to-use template that ensures the data lands in a consistent, analysable format.
tikz-figure-review
Review and fix alignment, label collision, clipping, legend-over-data, overlap, and layout issues in TikZ and pgfplots figures inside LaTeX documents. Use when the user wants to review figures in a paper, tutorial, lecture notes, or thesis before submission; when a reviewer flags figure problems; when a rendered…
pdf-html
Exports design- HTML artifacts to single-page PDFs using headless Chromium. Targets the same .canvas / [class="canvas-"] conventions as screenshot-html, but outputs vector PDFs sized to each canvas's exact pixel dimensions rather than PNG rasters. Use when the desired output is a shareable PDF — audit reports, client…
latex-engine
Activate when the user wants to export a completed paper draft to production-ready LaTeX (.tex) and PDF. Converts draft.md + references.bib + figures/ into a complete arxiv-style LaTeX project with properly resolved \citep/\citet citations, booktabs tables, figure environments, and compiled PDF output.
deck-design-pdf
Create presentation decks as high-fidelity PDF files using web technology (HTML, CSS, Tailwind, Font Awesome). Use when the user wants a polished, pixel-perfect deck with responsive layouts, rich typography, icons, and modern design. For editable PPTX output, use deck-design-ppt instead.