Track and update action item status from natural language updates like 'Seanのメールには返信しておいた' or 'Lu対応予定'. Integrates with daily-comms-ops workflow. Use when managing action items across communication channels.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Convert Markdown documents to PDF. Two modes available — (1) Playwright-based conversion with Mermaid diagram support for technical documentation, and (2) fpdf2-based professional PDF generation with cover pages, themed styling, and business-quality table formatting for estimates, proposals, and reports. Use this skill when converting Markdown to PDF, generating business documents from Markdown, or converting Mermaid diagrams to images. Triggers on short phrases like "PDFに変換して", "markdownをpdfにして", "PDFにして", "PDF化して", "PDF出力して", "convert to PDF", "make a PDF", or any request involving converting content to PDF format.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Convert Markdown documents into PDF with two rendering engines:
markdown_to_pdf.py) — HTML/CSS-based rendering with Mermaid diagram support. Best for technical documentation with custom CSS styling.markdown_to_fpdf.py) — Professional PDF generation with cover pages, themed headers/footers, styled tables, and CJK font support. Best for business documents (estimates, proposals, reports).Use this skill when:
Decision Matrix — Which mode to use:
| Need | Mode | Script |
|---|---|---|
| Cover page, professional styling | fpdf2 | markdown_to_fpdf.py |
| Business documents (estimates, reports) | fpdf2 | markdown_to_fpdf.py |
| Themed headers/footers | fpdf2 | markdown_to_fpdf.py |
| Styled tables (alternating rows, header colors) | fpdf2 | markdown_to_fpdf.py |
| Technical docs with custom CSS | Playwright | markdown_to_pdf.py |
| Mermaid diagrams as primary content | Playwright | markdown_to_pdf.py |
| General Markdown to PDF | Either | Choose by needs |
Typical user requests:
For fpdf2 mode (professional PDFs):
pip install fpdf2 mistune pyyaml
For Playwright mode (Mermaid + CSS):
pip install markdown2 playwright
playwright install chromium
# For Mermaid conversion:
npm install -g @mermaid-js/mermaid-cli
Optional (for layout verification):
pip install PyMuPDF
| Mode | Output | Description |
|---|---|---|
| fpdf2 | .pdf | Professional PDF with optional cover page, themed styling, headers/footers |
| Playwright | .pdf | HTML/CSS-rendered PDF with embedded Mermaid diagrams |
| mermaid_to_image | .png or .svg | Standalone Mermaid diagram image |
Default paper size: US Letter (8.5 × 11 in / 215.9 × 279.4 mm), portrait orientation. Use --paper-size a4 or set paper_size: a4 in YAML frontmatter for A4 (210 × 297 mm).
fpdf2 mode produces:
--paper-size a4)Playwright mode produces:
--paper-size a4)python scripts/markdown_to_pdf.py <input.md> <output.pdf>
Theme options: --theme default|forest|dark|neutral
Image format: --image-format png|svg (SVG recommended)
Background color: --background white|transparent|"#f0f0f0"
Paper size: --paper-size letter|a4 (default: letter)
Custom styling: --css styles.css
Mermaid control: --no-strict-mermaid (allow fallback), --debug-mermaid (verbose output)
Debugging: --keep-temp
python scripts/mermaid_to_image.py <input.mmd> <output.png>
python scripts/mermaid_to_image.py --code "graph TD; A-->B" output.png
--format png|svg--theme default|forest|dark|neutral--width <pixels> / --height <pixels> (PNG only)--background white|transparent|<color>--use-playwright — Force Playwright backend--debug — Print detailed debug outputpython scripts/markdown_to_fpdf.py input.md output.pdf
python scripts/markdown_to_fpdf.py input.md output.pdf --theme navy
python scripts/markdown_to_fpdf.py input.md output.pdf --theme gray --confidential
python scripts/markdown_to_fpdf.py input.md output.pdf --no-cover
Add frontmatter at the top of the Markdown file to control cover page, theme, and metadata:
---
title: 御見積書
subtitle: AI プラットフォーム PoC サポート
theme: navy
paper_size: letter # letter (default) | a4
document_number: FSAI-2026-0001
date: 2026年2月17日
author: 山田 太郎
company: FujiSoft America, Inc.
recipient: Client Inc.
confidential: false
cover: true
header_text: "FSAI-2026-0001 | FujiSoft America, Inc."
---
For detailed field reference, see references/fpdf_styling_guide.md.
| Markdown | Rendered As |
|---|---|
# H1 | Section title (bold, underlined, theme color) |
## H2 | Subsection title (bold, theme color) |
### H3 | Sub-subsection title |
**bold** / *italic* | Inline formatting via multi_cell(markdown=True) |
- item | Bulleted list |
| table | | Styled table (data_table by default) |
```code``` | Code block (gray background) |
```mermaid``` | Mermaid → PNG image (strict: fail on error, --no-strict-mermaid: fallback to code block) |
> quote | Block quote (left accent bar, light fill, italic text) |
<!-- pagebreak --> | Page break |
--- | Horizontal rule |
<!-- info-table --> | Override next table to info_table style |
<!-- col-widths: 10,45,45 --> | Override next table's column widths (ratios, %, or mm) |
Data Table (default): Multi-column table with colored header row and alternating row colors.
Info Table: Use <!-- info-table --> comment before a table for key-value style rendering:
<!-- info-table -->
| Key | Value |
|-----|-------|
| Phase 1 | $5,000 |
| Phase 2 | TBD |
Column Widths Override: Use <!-- col-widths: ... --> comment to control the next table's column widths. Accepts bare numbers (ratios), percentages, or mm units; values are normalized to the page content width. Applies to both data and info tables, and resets after the next table.
<!-- col-widths: 10,45,45 -->
| # | 項目 | 金額 |
|---|------|------|
| 1 | 初期費用 | $5,000 |
| 2 | 月額費用 | $1,200 |
If the number of values differs from the column count, extra values are truncated and missing values are padded with the average of the provided ones.
navy — Client-facing documents (deep navy primary, blue-gray accents)gray — Internal documents (dark gray primary, light gray accents)python scripts/markdown_to_fpdf.py input.md output.pdf [options]
| Option | Description |
|---|---|
--theme navy|gray | Color theme (default: from frontmatter or navy) |
--paper-size letter|a4 | Paper size (default: letter; also honors paper_size in YAML frontmatter) |
--confidential | Mark as confidential |
--no-cover | Suppress cover page |
--font-regular PATH | Custom regular font |
--font-bold PATH | Custom bold font |
--no-strict-mermaid | Allow Mermaid fallback to code block on failure (default: strict) |
--debug-mermaid | Print detailed Mermaid conversion debug output |
--verify | Verify PDF layout after generation (detect overflow/clipping via PyMuPDF) |
--verify-save-images | Save page images to /tmp during verification (for debugging) |
Fonts are auto-discovered per platform with TrueType outline preference (best fpdf2 compatibility):
~/Library/Fonts/
brew install --cask font-udev-gothic or download Noto Sans JP TTFsudo apt install fonts-noto-cjk)Manual override: --font-regular /path/to/font.ttc --font-bold /path/to/bold.ttc
CFF compatibility note: Fonts with CFF outlines (e.g., Hiragino Sans on macOS) may produce garbled CJK text in fpdf2-generated PDFs. The tool warns on stderr when CFF fonts are detected. Install a TrueType CJK font to resolve.
The fpdf2 renderer includes automatic protection against content overflow:
multi_cell wrapping if still too long.Use --verify to automatically check all content pages for overflow after PDF generation. Requires PyMuPDF (pip install PyMuPDF).
python scripts/markdown_to_fpdf.py input.md output.pdf --verify
The verifier renders each page as an image and checks edge margins (15px) for non-background content. Cover pages (page 1) are skipped since they have intentional edge-to-edge design bars.
Standalone verification:
python scripts/verify_pdf_layout.py output.pdf [--margin 15] [--threshold 50] [--save-images]
IMPORTANT: Always use --verify when generating PDFs to catch overflow issues before delivery.
scripts/markdown_to_fpdf.pyProfessional PDF generation from Markdown with fpdf2. Supports YAML frontmatter, cover pages, themed styling, data/info tables, and CJK fonts.
scripts/markdown_to_pdf.pyHTML/CSS-based Markdown to PDF with Mermaid diagram support via Playwright.
scripts/mermaid_renderer.pyUnified Mermaid rendering engine with mmdc/Playwright backends, SHA256 caching, error categorization, and strict/permissive mode support.
scripts/mermaid_to_image.pyCLI wrapper for mermaid_renderer.py. Converts Mermaid diagram code to PNG/SVG images.
scripts/themes.pyTheme definitions (navy, gray) and cross-platform CJK font discovery.
references/mermaid_guide.mdComprehensive Mermaid diagram syntax reference.
references/fpdf_styling_guide.mdfpdf2 professional PDF styling guide — frontmatter fields, theme options, table modes, font requirements.
assets/sample_frontmatter.yamlSample YAML frontmatter templates for estimates, internal documents, and simple reports.
Key fact: CFF-outline fonts can produce PDFs where text extraction is correct but visual rendering is garbled. Do NOT rely on text extraction alone to judge PDF correctness.
Warning: Using CFF-outline font or Warning: CFF outlines detected.glyf table):
brew install --cask font-udev-gothic) or Noto Sans JP TTFsudo apt install fonts-noto-cjk (if CFF variant, use Noto Sans JP TTF instead)fsSelection bit 5 (bold) warning is cosmetic and does not affect output.Tables inside list items are NOT supported. The mistune parser cannot recognize Markdown tables that are indented inside list items (- item followed by indented | table |). Tables must be placed at the top level (no leading spaces/indentation) to be parsed and rendered correctly.
<br> tags are NOT rendered as line breaks. fpdf2 mode does not interpret HTML <br> tags. They will appear as literal text in the PDF output. Convert <br>-separated fields to <!-- info-table --> tables or separate lines before conversion.
Before conversion, check for and fix:
<br> tags used for line breaks → Replace with <!-- info-table --> table format or separate paragraphs- list items → Move to top level> blockquotes → Move to top levelAfter conversion, verify:
<br> text visible in the generated PDFIf automatic font discovery fails, specify fonts manually:
python scripts/markdown_to_fpdf.py input.md output.pdf \
--font-regular /path/to/regular.ttc \
--font-bold /path/to/bold.ttc
By default, Mermaid conversion failures halt PDF generation. Error messages include diagnostic information and fix suggestions.
Common errors and fixes:
| Error Category | Fix |
|---|---|
mmdc_not_found | npm install -g @mermaid-js/mermaid-cli |
browser_launch_failed | pip install playwright && playwright install chromium |
syntax_error | Check syntax at mermaid.live |
timeout | Simplify diagram or increase --timeout |
To allow graceful fallback (renders code block instead of failing):
python scripts/markdown_to_fpdf.py input.md output.pdf --no-strict-mermaid
Install mermaid-cli: npm install -g @mermaid-js/mermaid-cli
Or install Playwright: pip install playwright && playwright install chromium
Note: The Playwright Mermaid backend requires CDN access (cdn.jsdelivr.net) to load the Mermaid library.
Use SVG format: --image-format svg (recommended)
<!-- pagebreak --> for clean section transitions in fpdf2 mode<!-- info-table --> for key-value tables in fpdf2 modefontSize: 16 or larger in the %%{init: ...}%% block. Recommended settings for Gantt charts:
'gantt': { 'fontSize': 18, 'sectionFontSize': 20, 'barHeight': 30, 'leftPadding': 180 }
아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Track and update action item status from natural language updates like 'Seanのメールには返信しておいた' or 'Lu対応予定'. Integrates with daily-comms-ops workflow. Use when managing action items across communication channels.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
AI活用提案の専門コンサルタントスキル。LLM・AIエージェントの活用事例知識を基に、業界別、部門別、シーン別に最適なAI導入提案を行います。システム化、業務改善、効率化を得意とし、具体的な活用事例、期待効果、導入ステップを含む実践的な提案を提供します。Use when proposing AI/LLM adoption strategies for specific industries, departments, or business scenarios.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Generate AI-powered BPO service proposals for Japanese companies in the US market. Use when creating outsourcing proposals with AI service menus, ROI estimation, implementation roadmaps, and bilingual (JA/EN) proposal documents for 在米日系企業向けAI実装.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
AI(LLM)が生成した日本語テキストの「AI臭」を検出・診断し、人間らしい文章にリライトするスキル。 Use when: 「AIっぽい文章を直して」「人間らしくリライトして」「AI臭を消して」「この文章をもっと自然にして」 「テキストのAI感を減らして」「機械っぽさを取りたい」 "make this sound more human", "remove AI tone", "humanize this text", "detect if this is AI-generated". 6つのAI特有パターン(視覚的マーカー、単調なリズム、マニュアル的構成、非コミット姿勢、抽象語の濫用、 定型メタファー)を正規表現ベースで検出し、0-100のAI臭スコアを算出。3つの人間化技法 (バランスを崩す・客観を崩す・論理を崩す)でリライトを実行する。 Note: 検出スクリプトは日本語テキスト専用。英語テキストの場合はClaude自身がreferences/を参照して分析・リライトする。
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Generate audit-ready internal control design documents from As-Is business process inventories. Produces control IDs, assertion mappings, procedures, SoD analysis, KPIs, materiality thresholds, and implementation roadmaps. Use when building internal controls for new audit engagements, SOX/J-SOX compliance, or process improvement initiatives.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Review audit-related documents (control design documents, bottleneck analyses, requirements definitions, etc.) for quality, scoring them 0-100 with a severity-rated findings list. Use when reviewing audit documents, checking control design quality, or verifying cross-document consistency. Supports documents governed by US GAAP, IFRS, or J-GAAP.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.