agentleFS
xingfanxiaxingfanxia/AX-skills/apple-pdf/SKILL.md

apple-pdf

Skill4 starsChanged 54 days agoMITView on GitHub

Default PDF generator. Render markdown, notes, or reports as professionally formatted PDFs with SF typography and clean layout. Use this whenever the user asks to "generate a PDF", "create a PDF", "make a PDF", or "convert to PDF" from any text or markdown source.

The file

We split this skill into the rules it gives an agent

5 rules. About 0 are common, 4 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈4

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this skill when the user wants to generate, create, or convert text/markdown to PDF.

    line 15
  2. Distinctive:

    Ask about preferences if not specified: theme (light/dark), font size, watermark

    line 26
  3. Distinctive:

    Run the renderer script via Bash

    line 27
  4. Very specific:

    Run the renderer script with uv run:

    line 32
  5. Distinctive:

    All styles are inline (no external CSS) — output is self-contained and paste-friendly

    line 95

≈ “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

Apple Style PDF Renderer

Convert markdown documents into beautifully formatted PDFs with Apple's design language — SF font stack, 8px-based spacing, 1.8 line height, and restrained gray palette.

When to Use

Trigger phrases: "generate pdf", "create pdf", "make pdf", "convert to pdf", "生成PDF", "apple pdf", "apple style", "render pdf", "styled pdf", "export as pdf", "pretty pdf", "格式化PDF", "苹果风格"

Use this skill when the user wants to generate, create, or convert text/markdown to PDF. This is the DEFAULT pdf generation skill. This includes:

  • Any "generate a PDF from X" request
  • Rendering notes, docs, or reports as styled PDFs
  • Exporting markdown for WeChat/clipboard as self-contained HTML
  • Batch converting markdown files to styled PDFs

Note: For manipulating existing PDFs (extract text, merge, split, fill forms), use the pdf skill instead.

Workflow

  1. Identify the markdown file(s) the user wants to render
  2. Ask about preferences if not specified: theme (light/dark), font size, watermark
  3. Run the renderer script via Bash
  4. Report the output path to the user

Usage

Run the renderer script with uv run:

uv run ~/.claude/skills/apple-pdf/apple_pdf.py <input.md> [options]

All Options

OptionDefaultDescription
--output, -o<input_stem>.pdfOutput PDF path
--themelightTheme mode: light or dark
--font-sizemediumFont size preset: small (14px), medium (16px), large (18px)
--watermark-text(none)Add document watermark with this text
--watermark-stylestampWatermark style: stamp, pattern, diamond
--watermark-opacity0.15Watermark opacity (0.1 to 0.5)
--avatar-url(none)URL for image avatar watermark (small circle above images)
--page-sizeA4Page size: A4, Letter, Legal
--margin20mmPage margins (CSS value)
--title(auto from H1)Document title for PDF metadata
--html-onlyfalseOutput styled HTML instead of PDF
--no-page-breaksfalseDisable automatic page breaks before H1

Examples

# Basic — markdown to Apple-styled PDF
uv run ~/.claude/skills/apple-pdf/apple_pdf.py doc.md

# Dark mode, large font
uv run ~/.claude/skills/apple-pdf/apple_pdf.py doc.md --theme dark --font-size large

# With confidential watermark
uv run ~/.claude/skills/apple-pdf/apple_pdf.py doc.md --watermark-text "CONFIDENTIAL" --watermark-style pattern

# Custom output path
uv run ~/.claude/skills/apple-pdf/apple_pdf.py doc.md -o ~/Downloads/styled-report.pdf

# HTML output (for clipboard/WeChat)
uv run ~/.claude/skills/apple-pdf/apple_pdf.py doc.md --html-only -o styled.html

# Batch: render all .md files in a directory
for f in docs/*.md; do uv run ~/.claude/skills/apple-pdf/apple_pdf.py "$f"; done

Design System

The renderer faithfully ports the Apple design language:

  • Fonts: SF Pro Text/Display → system fallback stack with PingFang SC for CJK
  • Colors: Light (#1d1d1f primary, #f5f5f7 surface) / Dark (#dcddde primary, #202020 bg)
  • Accent: Obsidian purple #7f6df2
  • Spacing: 8px base grid (4/8/16/24/32/48)
  • Headings: 3-level hierarchy — H1 full underline, H2 short underline, H3 plain
  • Line height: 1.8 with 0.02em letter spacing
  • Code: SF Mono with pink/purple inline, surface-bg blocks
  • Tables: Alternating row colors, subtle borders
  • Blockquotes: 3px left border, secondary text color
  • HR: Invisible spacer (24px margin, no line)

Implementation Notes

  • Uses markdown library with fenced_code, tables, codehilite, toc, footnotes extensions
  • All styles are inline (no external CSS) — output is self-contained and paste-friendly
  • PDF generation uses WeasyPrint for accurate CSS rendering
  • Page breaks: H1 forces break (except first), avoid break inside paragraphs/lists/code
  • Images referenced by relative path are resolved relative to the input markdown file

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.