본문으로 건너뛰기
cccskills
무료GitHub에 공개

pandoc

Universal document conversion with Pandoc. Use when converting between document formats (Markdown, DOCX, HTML, LaTeX, PDF, EPUB, PPTX, reveal.js, CSV, RST, Org), generating polished deliverables from plain text, batch-converting files, applying custom templates or Lua filters, or producing slide decks from Markdown.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

연동 도구WordPowerPoint
설치 방법 보기

포함된 파일(1)

  • SKILL.md5.9 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Pandoc Skill

Universal document converter — transforms content between 40+ formats while preserving structure, metadata, and styling.

When to Use

  • Convert Markdown → DOCX, PDF, HTML, EPUB, PPTX, or slides
  • Convert DOCX/HTML → Markdown (for ingestion into repos or KBs)
  • Batch-convert multiple files in one pass
  • Generate professional reports with custom templates
  • Build reveal.js slide decks from Markdown
  • Extract structured content from HTML or EPUB
  • Apply Lua filters for custom transformations (citation rewriting, heading renumbering, metadata injection)
  • Produce camera-ready LaTeX or PDF from Markdown drafts

Core Commands

# Markdown → Word
pandoc input.md -o output.docx

# Markdown → PDF (requires LaTeX engine)
pandoc input.md -o output.pdf --pdf-engine=lualatex

# Markdown → PDF (no LaTeX — use HTML intermediate)
pandoc input.md -t html5 -o output.pdf --pdf-engine=wkhtmltopdf

# Markdown → reveal.js slides
pandoc slides.md -t revealjs -s -o slides.html

# Markdown → PowerPoint
pandoc input.md -o output.pptx

# Markdown → EPUB
pandoc input.md --metadata title="My Book" -o output.epub

# Word → Markdown (for repo ingestion)
pandoc input.docx -t markdown -o output.md

# HTML → Markdown
pandoc input.html -t markdown -o output.md

# CSV → HTML table
pandoc input.csv -f csv -t html -o table.html

# With custom template
pandoc input.md --template=template.tex -o output.pdf

# With Lua filter
pandoc input.md --lua-filter=filter.lua -o output.docx

# Batch convert (all .md in directory)
for f in *.md; do pandoc "$f" -o "${f%.md}.docx"; done

Workflow

  1. Identify source and target formats — determine the conversion path.
  2. Check if extras are needed:
    • PDF output → needs a LaTeX engine (lualatex, xelatex) or wkhtmltopdf
    • Styled DOCX → use --reference-doc=reference.docx
    • Slides → choose revealjs (HTML) or pptx (PowerPoint)
    • Citations → use --citeproc with a .bib file
  3. Run the conversion — use the simplest command that achieves the goal.
  4. Verify output:
    • For DOCX/PPTX: open or use the doc/pptx skill for visual QA
    • For PDF: use the pdf skill to render pages and inspect
    • For HTML: open in browser or use agent-browser skill
  5. Iterate — adjust metadata, templates, or filters as needed.
  6. Clean up — remove intermediate files.

Key Options

FlagPurpose
-f FORMATInput format (auto-detected from extension if omitted)
-t FORMATOutput format (auto-detected from extension if omitted)
-s / --standaloneProduce complete document (not fragment)
--template=FILECustom template for output
--reference-doc=FILEStyle reference for DOCX/PPTX output
--pdf-engine=ENGINEPDF engine: lualatex, xelatex, wkhtmltopdf, weasyprint
--tocGenerate table of contents
--number-sectionsNumber headings
--metadata KEY=VALSet metadata (title, author, date)
--lua-filter=FILEApply Lua filter for custom transforms
--citeprocProcess citations from bibliography
--bibliography=FILEBibTeX/CSL JSON bibliography
--highlight-style=STYLECode syntax highlighting theme
--columns=NLine wrap width for plain text output
--wrap=noneNo line wrapping (useful for Markdown output)
--extract-media=DIRExtract images to directory

YAML Metadata Block

Place at the top of Markdown files for rich output:

---
title: "Document Title"
author: "Author Name"
date: 2026-05-16
abstract: "Brief summary"
lang: en
toc: true
number-sections: true
geometry: margin=1in
fontsize: 12pt
---

Lua Filters (Advanced)

Pandoc supports Lua scripting for custom transformations. Save as .lua:

-- uppercase-headings.lua — capitalize all headings
function Header(el)
  el.content = pandoc.walk_inline(el.content, {
    Str = function(s) return pandoc.Str(s.text:upper()) end
  })
  return el
end

Use with: pandoc input.md --lua-filter=uppercase-headings.lua -o output.docx

Temp and Output Conventions

  • Intermediate files: tmp/pandoc/ — delete when done
  • Final deliverables: output/pandoc/ or alongside source file
  • Templates: store in ~/.pandoc/templates/ or project-local templates/
  • Lua filters: store in ~/.pandoc/filters/ or project-local filters/

Dependencies

Pandoc is installed via the system package manager (brew install pandoc on macOS, apt install pandoc on Linux).

For PDF output, one of:

# LaTeX (full — large install ~4GB)
brew install --cask mactex

# LaTeX (minimal — recommended)
brew install basictex
# then: sudo tlmgr install collection-fontsrecommended

# No LaTeX alternative
brew install wkhtmltopdf
# or: pip install weasyprint

Format Quick Reference

InputBest Output Targets
Markdowndocx, pdf, html, epub, pptx, revealjs, latex
DOCXmarkdown, html, plain
HTMLmarkdown, docx, epub, pdf
LaTeXpdf, html, docx
CSVhtml (tables), markdown
EPUBmarkdown, html, docx
Org-modemarkdown, html, docx, pdf
RSTmarkdown, html, docx, pdf

Integration with Other Skills

  • doc/docx skill — use pandoc to generate DOCX, then doc skill for visual QA
  • pdf skill — use pandoc for PDF generation, then pdf skill to render and verify
  • pptx skill — use pandoc for slide generation, then pptx skill for refinement
  • deep-research — convert research outputs to polished deliverables
  • hyperframes — convert Markdown scripts to HTML for video compositions

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

ai-sdk

무료

Vercel AI SDK expert guidance. Use when building AI-powered features — chat interfaces, text generation, structured output, tool calling, agents, MCP integration, streaming, embeddings, reranking, image generation, or working with any LLM provider.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

garochee33/DSH42026년 10월 12일 업데이트

Algorithm design and analysis skill for DSH; use when working on optimization, data structures, or computational procedures.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

garochee33/DSH42026년 10월 12일 업데이트

Design and implement scalable API gateways, RESTful APIs, GraphQL endpoints, WebSocket handlers, and microservice communication patterns. Use when creating API routes, designing endpoints, implementing middleware, or setting up service mesh architectures.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

garochee33/DSH42026년 10월 12일 업데이트

best-of-n

무료

Implement a task N ways in parallel and pick the best. Spawns multiple subagents in isolated worktrees, evaluates all candidates, and applies the winner. Use when asked to "best of n", "try multiple approaches", "parallel implementations", "/best-of-n", or "/bon".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

garochee33/DSH42026년 10월 12일 업데이트

check

무료

Check your work with a verification subagent. Spawns a verifier that reviews diffs, runs builds and tests, and evaluates correctness. Use when asked to "check work", "verify changes", "self-verify", "/check", "/verify", "/check-work", or "/self-verify".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

garochee33/DSH42026년 10월 12일 업데이트

CI/CD pipeline design, GitHub Actions workflows, deployment automation, infrastructure as code, and release management. Use when setting up CI/CD, automating deployments, configuring build pipelines, or managing releases.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

garochee33/DSH42026년 10월 12일 업데이트

garochee33의 스킬 모두 보기

이 스킬의 문제 신고