From gerdsenai
This skill should be used when the user asks to create a PDF, write a report, build a professional document, generate formatted documentation, author a technical spec for PDF output, or mentions GerdsenAI Document Builder. Covers trigger phrases like 'make me a PDF', 'write a report', 'create a document', 'format this for PDF', 'build a PDF from markdown', and 'generate a formatted report'. Provides rules for YAML front matter, heading hierarchy, code blocks, Mermaid diagrams, tables, and page layout.
How this skill is triggered — by the user, by Claude, or both
Slash command
/gerdsenai:pdf-document-authoringThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Follow these rules when writing markdown intended for the GerdsenAI Document Builder.
references/config-options.mdreferences/formatting-guide.mdreferences/frontmatter-reference.mdreferences/local-infrastructure-reference.mdreferences/mermaid-diagrams.mdreferences/red-team-reference.mdreferences/research-report-reference.mdreferences/software-architecture-reference.mdreferences/vector-db-reference.mdFollow these rules when writing markdown intended for the GerdsenAI Document Builder.
Every document MUST begin with YAML front matter enclosed in --- delimiters. The first # heading becomes the document title if title is not set in front matter.
Use heading hierarchy strictly:
# H1 - Document title only (one per document, on the cover page)## H2 - Major sections (appear in Table of Contents)### H3 - Subsections (appear in Table of Contents)#### H4 - Minor subsectionsDo NOT skip heading levels (e.g., jumping from H2 to H4).
Required fields:
---
title: "Document Title"
subtitle: "Optional Subtitle"
author: "Author Name"
date: "January 15, 2026" # Always use the current date
version: "1.0.0"
---
Optional fields:
confidential: true - Marks document as confidentialwatermark: true - Adds watermark overlaycompany: "Company Name" - Company attributionsubject: "Subject line" - PDF metadata subject fieldIf title is omitted, the builder extracts it from the first # H1 heading. If date is omitted, the current date is used. If author is omitted, the default from config.yaml is used.
See references/frontmatter-reference.md for complete field documentation.
When writing assessment or maturity ratings for components, technologies, or features, use proper headings for scannability and TOC inclusion.
WRONG (hard to scan, no TOC entry):
**Maturity: Solid.** The math is correct. DAS is production-ready.
RIGHT (scannable, appears in TOC):
#### Beamforming: Solid (Production-Ready)
The math is correct. DAS is production-ready; MVDR and MUSIC are research-grade.
Rules for assessment sections:
#### H4 or ##### H5 headings for each assessed item### H3 parent sectionUse fenced code blocks with language identifiers for styled output. The builder applies distinct styling per language:
diff - Dark background with green (added), red (removed), blue (hunk headers)tree - Dark background with blue tree characters, yellow directories, gray filesshell / bash - Black terminal background with green prompt/commandspython, yaml, json, javascript - Light background with syntax highlighting (GitHub theme by default)Always specify the language. A bare ``` block gets generic styling with no highlighting.
Mermaid diagrams are rendered locally via Playwright + Chromium. Wrap diagrams in ```mermaid fences. Standalone .mermaid and .mmd files can also be built directly to PDF.
Include diagrams without being asked when the content benefits from visual representation. If you are describing a process, architecture, data model, timeline, comparison, or flow, create the appropriate diagram. Do NOT ask the user if they want a diagram — just include it where it adds clarity.
When conducting research or writing reports, proactively create diagrams for:
| Type | Keyword | Best For |
|---|---|---|
| Flowchart | flowchart TD | Processes, decisions, workflows |
| Sequence | sequenceDiagram | API flows, system interactions |
| State | stateDiagram-v2 | Lifecycles, status transitions |
| Class | classDiagram | OOP design, type hierarchies |
| ER | erDiagram | Database schemas, data models |
| Gantt | gantt | Project schedules, sprint plans |
| Pie | pie | Proportional breakdowns |
| Git Graph | gitGraph | Branching strategies |
| Mindmap | mindmap | Brainstorming, concept maps |
| Timeline | timeline | Roadmaps, milestones |
| Journey | journey | UX flows, satisfaction mapping |
| Quadrant | quadrantChart | Prioritization, 2-axis comparison |
| C4 Context | C4Context | High-level system architecture |
| XY Chart | xychart | Line/bar charts, metrics |
| Requirement | requirementDiagram | Requirements traceability |
| Sankey | sankey | Resource/data flow volumes |
| Block | block-beta | Component layouts, hardware |
max_label_length in config.yaml)", <, >, {, } - use parentheses or brackets instead<br> for line breaks within nodes%%{init:...}%% theme directives — theming is handled by config.yamlSee references/mermaid-diagrams.md for complete syntax templates and choosing the right diagram type.
See references/formatting-guide.md for examples of each diagram type.
Use standard markdown tables. Keep columns reasonable in width - the builder flows text within cells.
| Column A | Column B | Column C |
|----------|----------|----------|
| Value 1 | Value 2 | Value 3 |
#f6f8fa by default)#e1e4e8 by default)Both ordered and unordered lists are supported with nesting:
- Item one
- Nested item
- Deeply nested
1. First step
2. Second step
1. Sub-step
Include images with standard markdown syntax. Images should be placed in the Document Builder's Assets/ directory or referenced by absolute path.

The builder scales images to fit within page margins while preserving aspect ratio.
Force a page break with an HTML comment:
<!-- pagebreak -->
Or use a horizontal rule as a visual section separator (does not force a page break):
---
Use these commands to build PDFs:
/gerdsenai:build <file> - Build a single file into a PDF/gerdsenai:build --recursive [dir] - Build all .md files in a directory tree (PDFs placed alongside source files)PDFs can be saved to different locations based on your settings:
Override for a single build: /gerdsenai:build file.md --output-dir /path/to/dir
Override the output filename: /gerdsenai:build file.md --output-name MyReport
Cover and footer logos are configured via /gerdsenai:setup (choose "Configure settings"). The setup command lets you browse available logos in the Assets/ directory and add new ones.
Before building, verify:
title, author, and date# H1 heading (used as cover page title)---)See references/config-options.md for all config.yaml options.
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub gerdsenai/gerdsenai-agentic-devtools --plugin gerdsenai