Skip to content
Automation
Skill

/markdown-to-pdf

Output PDF path. Defaults to same directory and basename as the input file.

From plugin
staskh-trading-skills
36429 skills
Install
$ npx -y skills add staskh/trading_skills --skill markdown-to-pdf --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/markdown-to-pdf

Context preview

The summary Claude sees to decide when to auto-load this skill.

Output PDF path. Defaults to same directory and basename as the input file.

SKILL.md

markdown-to-pdf.SKILL.md
name: markdown-to-pdf
description: Convert a markdown file to PDF using mistune + reportlab. Use when the user wants to convert a .md file to PDF, or when another skill needs to produce a PDF from markdown output.
user_invocable: true
arguments:
  - name: file
    description: Path to the input markdown file
    required: true
  - name: output
    description: Output PDF path. Defaults to same directory and basename as the input file.
    required: false
dependencies: ["trading-skills"]

Markdown to PDF Converter

Converts a markdown file to a professionally formatted PDF. Pure Python — no system tools required.

Dependencies

Requires two Python packages (already in `pyproject.toml`):

mistune>=3.2
reportlab>=4.0

Install with: `uv sync` (or `pip install mistune reportlab`)

Instructions

uv run python .claude/skills/markdown-to-pdf/scripts/markdown_to_pdf.py <input.md> [output.pdf]
  • `input.md` — path to the markdown file (required)
  • `output.pdf` — output path (optional; defaults to same directory and basename as input)

Output

The script returns JSON with:

  • `success` — `true` or `false`
  • `input` — resolved absolute path of the input file
  • `output` — resolved absolute path of the generated PDF
  • `error` — error message if `success` is `false`
  • `generated_at` — NY timezone timestamp
  • `data_delay` — always `"real-time"`

After conversion, tell the user the output PDF path.

Examples

# Convert sandbox/report.md → sandbox/report.pdf (default output)
uv run python .claude/skills/markdown-to-pdf/scripts/markdown_to_pdf.py sandbox/report.md

# Explicit output path
uv run python .claude/skills/markdown-to-pdf/scripts/markdown_to_pdf.py sandbox/report.md sandbox/AAPL_Report_2026-05-20_1430.pdf

Supported Markdown

  • Headings (H1–H3)
  • Paragraphs, bold, italic
  • Tables (pipe syntax)
  • Fenced code blocks
  • Unordered and ordered lists
Read more
Ships withstaskh-trading-skills

Most retail traders juggle 5+ tabs — broker, charting platform, screener, news feed, spreadsheet — just to decide whether to enter a trade. This project collapses all of that into a single conversational interface powered by Claude.

Get the whole plugin
Stats
364
Stars
82
Forks
Active
Maintenance
Python
Language
MIT
License
1d ago
Last commit
6mo ago
Created

Repo: staskh/trading_skills

Other skills on staskh-trading-skills.