AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Cli Pandoc

skill-ryankolean-summit-claude-skills-cli-pandoc · by ryankolean

>

No reviews yet
0 installs
16 views
0.0% view→install

Install

$ agentstack add skill-ryankolean-summit-claude-skills-cli-pandoc

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-ryankolean-summit-claude-skills-cli-pandoc)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Cli Pandoc? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Pandoc — Universal Document Converter

Repo: https://github.com/jgm/pandoc

Convert between Markdown, HTML, DOCX, PDF, EPUB, LaTeX, reStructuredText, and 40+ other formats. The definitive tool for document format conversion.

When to Activate

Manual triggers:

  • "Convert Markdown to PDF/DOCX/HTML"
  • "Generate a PDF from my notes"
  • "Create slides from Markdown"
  • "Convert between document formats"
  • "Add a table of contents to this doc"

Auto-detect triggers:

  • User has a .md file and needs a different format for sharing
  • User is writing documentation and needs it in multiple output formats
  • User mentions citations, bibliographies, or academic writing
  • User wants to convert wiki/Confluence/Notion exports to another format

Key Commands

Basic Conversion

pandoc input.md -o output.pdf          # Markdown to PDF (via LaTeX)
pandoc input.md -o output.docx         # Markdown to Word
pandoc input.md -o output.html         # Markdown to HTML
pandoc input.html -o output.md         # HTML to Markdown
pandoc input.docx -o output.md         # Word to Markdown (extract content)
pandoc input.md -o output.epub         # Markdown to EPUB
pandoc input.md -o output.tex          # Markdown to LaTeX source

Specify Formats Explicitly (-f / -t)

pandoc -f markdown -t html input.md -o output.html
pandoc -f docx -t markdown input.docx -o output.md
pandoc -f rst -t markdown input.rst -o output.md
pandoc -f mediawiki -t markdown input.wiki -o output.md
pandoc -f org -t markdown input.org -o output.md

List All Supported Formats

pandoc --list-input-formats   # All formats Pandoc can read
pandoc --list-output-formats  # All formats Pandoc can write

HTML Output

# Standalone HTML (includes  tags)
pandoc input.md -o output.html --standalone

# With custom CSS
pandoc input.md -o output.html --standalone --css=style.css

# Embed CSS inline
pandoc input.md -o output.html --standalone \
  --variable=css:"body { font-family: sans-serif; max-width: 800px; margin: auto; }"

# Self-contained HTML (embeds images, CSS, JS)
pandoc input.md -o output.html --standalone --self-contained

PDF Output

PDF generation requires a PDF engine. Pandoc supports several:

# Via LaTeX (best quality, requires TeX Live or MacTeX)
pandoc input.md -o output.pdf --pdf-engine=pdflatex
pandoc input.md -o output.pdf --pdf-engine=xelatex  # Unicode/font support
pandoc input.md -o output.pdf --pdf-engine=lualatex

# Via wkhtmltopdf (HTML-based, no LaTeX needed)
pandoc input.md -o output.pdf --pdf-engine=wkhtmltopdf

# Via weasyprint (CSS-based)
pandoc input.md -o output.pdf --pdf-engine=weasyprint

PDF Page and Margin Settings

pandoc input.md -o output.pdf \
  -V geometry:margin=1in \
  -V geometry:papersize=letter \
  -V fontsize=12pt \
  -V mainfont="Georgia"

DOCX Output

# Basic Word output
pandoc input.md -o output.docx

# Apply a reference document for styles
pandoc input.md -o output.docx --reference-doc=template.docx

# Generate a default reference doc to customize
pandoc --print-default-data-file reference.docx > template.docx

Table of Contents

pandoc input.md -o output.pdf --toc                        # Add TOC
pandoc input.md -o output.pdf --toc --toc-depth=2          # TOC up to H2
pandoc input.md -o output.html --toc --standalone          # TOC in HTML
pandoc input.md -o output.docx --toc                       # TOC in Word

Metadata

Command-line Metadata

pandoc input.md -o output.pdf \
  --metadata title="My Document" \
  --metadata author="Jane Smith" \
  --metadata date="2024-03-28"

YAML Metadata Block (in Markdown file)

---
title: "My Document"
author: "Jane Smith"
date: "2024-03-28"
abstract: "This document covers..."
lang: "en"
---

# Introduction
...

Metadata File

# Store metadata separately
pandoc input.md --metadata-file=meta.yaml -o output.pdf

Templates

Use a Custom Template

pandoc input.md -o output.pdf --template=mytemplate.tex
pandoc input.md -o output.html --template=mytemplate.html

Print Default Template (to customize)

pandoc --print-default-template=latex > template.tex
pandoc --print-default-template=html5 > template.html

Template Variables

pandoc input.md -o output.pdf \
  --variable=documentclass:article \
  --variable=classoption:twocolumn \
  --variable=fontfamily:palatino

Slide Decks

reveal.js (HTML slides)

pandoc input.md -o slides.html -t revealjs --standalone
pandoc input.md -o slides.html -t revealjs \
  --variable=theme:moon \
  --variable=transition:slide \
  --standalone

# Self-contained (embed reveal.js)
pandoc input.md -o slides.html -t revealjs --self-contained

Beamer (PDF slides via LaTeX)

pandoc input.md -o slides.pdf -t beamer
pandoc input.md -o slides.pdf -t beamer \
  --variable=theme:metropolis \
  --variable=colortheme:crane

Slide Structure in Markdown

# Section Title (becomes a section divider)

## Slide Title

Content for this slide.

- Bullet one
- Bullet two

## Next Slide

---

(Horizontal rule creates a new slide without a title)

Citations and Bibliographies

# Add citations (BibTeX, CSL JSON, etc.)
pandoc input.md -o output.pdf \
  --bibliography=references.bib \
  --csl=apa.csl \
  --citeproc

# Popular CSL styles (download from https://github.com/citation-style-language/styles)
# chicago-author-date.csl, ieee.csl, nature.csl, apa.csl

# Inline citation syntax in Markdown
# [@smith2024] — author-date
# [-@smith2024] — suppress author
# [@smith2024, p. 42] — page number

Lua Filters

Filters let you transform the document AST programmatically.

pandoc input.md -o output.html --lua-filter=my-filter.lua

Example Lua Filter (make all links open in new tab)

-- newwindow.lua
function Link(el)
  el.attributes.target = "_blank"
  return el
end
pandoc input.md -o output.html --lua-filter=newwindow.lua --standalone

Advanced Patterns

Batch Conversion with fd

# Convert all Markdown files in a project to HTML
fd -e md | while read f; do
  pandoc "$f" -o "${f%.md}.html" --standalone
done

# Markdown to PDF for all files in docs/
fd -e md . docs/ | while read f; do
  pandoc "$f" -o "pdf/$(basename ${f%.md}).pdf" --pdf-engine=xelatex
done

Concatenate Multiple Files

# Single PDF from multiple Markdown files (ordered)
pandoc chapter1.md chapter2.md chapter3.md -o book.pdf --toc

# Combine all Markdown files in a directory
cat *.md | pandoc -f markdown -o combined.pdf

Include Files (Markdown Extension)

!include chapter1.md
!include chapter2.md
pandoc --lua-filter=include-files.lua input.md -o output.pdf
# (requires https://github.com/pandoc/lua-filters/tree/master/include-files)

Convert Confluence / MediaWiki

# Confluence storage format to Markdown
pandoc -f html -t markdown confluence-export.html -o output.md

# MediaWiki to Markdown
pandoc -f mediawiki -t gfm input.wiki -o output.md  # GitHub-flavored Markdown

# Org-mode to Markdown
pandoc -f org -t markdown input.org -o output.md

Professional PDF with Custom LaTeX Template

# Minimal LaTeX template variables for clean PDFs
pandoc input.md -o output.pdf \
  --pdf-engine=xelatex \
  -V geometry:margin=1in \
  -V fontsize=11pt \
  -V mainfont="Palatino" \
  -V monofont="JetBrains Mono" \
  -V colorlinks=true \
  -V linkcolor=blue \
  --highlight-style=tango \
  --toc

HTML to Clean Markdown (web scraping aid)

# Fetch a web page and convert to Markdown
curl -s https://example.com/article | pandoc -f html -t markdown -o article.md

# Remove extra blank lines
pandoc -f html -t markdown --wrap=none input.html -o output.md

Supported Formats Reference

| Direction | Formats | |---|---| | Read (input) | Markdown (CommonMark, GFM, MMD, Pandoc), HTML, DOCX, ODT, LaTeX, EPUB, RST, Org, MediaWiki, Textile, JATS, OPML, CSV | | Write (output) | All of above + PDF, reveal.js, Beamer, DokuWiki, Jira, ICML (InDesign), Jupyter, man page, PowerPoint (PPTX) |

Markdown Flavor Options

pandoc -f commonmark     # CommonMark spec
pandoc -f gfm            # GitHub-Flavored Markdown
pandoc -f markdown       # Pandoc's extended Markdown (default, most features)
pandoc -f markdown-smart # Disable smart punctuation

Chaining with Other Skills

  • cli-imagemagick: Use ImageMagick to resize or optimize images before embedding them in Pandoc documents; convert PDF output pages to PNG with ImageMagick
  • fd: Use fd -e md to find all Markdown files in a project, then pipe into a batch Pandoc conversion loop
  • cli-fzf (fzf): Use fd -e md | fzf to interactively select a document before running pandoc on it
  • jq/yq: Use yq to manipulate YAML metadata blocks before passing documents to Pandoc; use jq to work with Pandoc's JSON AST format (pandoc -t json)

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.