agentsclimarketplace

Markitdown

Skill anyideaz/pptx-skills/.claude/skills/markitdown

AI Skills that create PowerPoint from your templates. Preserves brand design, fonts, colors, layouts. For Claude Code & Copilot.

Install
npx -y skills add anyideaz/pptx-skills --skill markitdown

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Convert documents (Excel, PDF, Word, PPTX, HTML, CSV, images...) to Markdown using markitdown, ready as input for slide-generate.

SKILL.md

4.2 KB, as published. Nobody here has run it

Skill: markitdown

Convert documents of various formats into clean Markdown text using the markitdown library. The resulting Markdown can be used as content input for slide-generate.

Supported formats: PDF, Word (.docx), Excel (.xlsx/.xls), PowerPoint (.pptx), HTML, CSV, JSON, XML, images (JPEG/PNG/GIF/WebP), audio (MP3/WAV — requires optional deps), ZIP archives, EPub, and more.

Workflow

Step 1 — Accept Input

Ask the user for the input file path if not provided. Confirm the file exists.

Optionally ask:

  • Output name (optional): name for the source workspace (default: derived from filename)

Step 2 — Derive Source Name

Derive a filesystem-safe source name from the filename:

  • Take the filename without extension (e.g., Q4-Sales-Report.xlsxq4-sales-report)
  • Replace spaces and special characters with hyphens
  • Convert to lowercase

Step 3 — Create Workspace

Create the source workspace directory:

slide-workspace/sources/{source-name}/

Step 4 — Check Dependencies

Check that markitdown is available:

python -c "import markitdown" 2>/dev/null || python3 -c "import markitdown" 2>/dev/null

If the check fails, run the appropriate setup script:

  • Unix/macOS: bash shared/scripts/setup_deps.sh
  • Windows: powershell -ExecutionPolicy Bypass -File shared/scripts/setup_deps.ps1

Step 5 — Run Conversion

Run the conversion script:

python shared/scripts/convert_to_markdown.py \
  "{input_file_path}" \
  "slide-workspace/sources/{source-name}/content.md"

On Windows (single line):

python shared/scripts/convert_to_markdown.py "{input_file_path}" "slide-workspace/sources/{source-name}/content.md"

If the exit code is non-zero, report the error and stop:

  • Exit code 2 — input file not found
  • Exit code 3 — conversion error (unsupported format or corrupted file)

Step 6 — Read and Summarize Output

Read the first 100 lines of slide-workspace/sources/{source-name}/content.md.

Provide the user with a brief summary:

  • File type converted
  • Approximate content length (lines / characters)
  • Key sections or headings detected in the Markdown
  • Output file path

Step 7 — Suggest Next Steps

Suggest the user can now run /slide-generate using this Markdown as the topic/content input:

The converted content is saved at slide-workspace/sources/{source-name}/content.md. You can use it as input for /slide-generate — just reference this file or paste relevant sections as the presentation topic.

Output Structure

slide-workspace/
  sources/
    {source-name}/
      content.md     ← Converted Markdown content

Error Handling

  • File not found: Ask user to verify the path
  • Unsupported format: markitdown supports most common formats; report the extension and suggest converting to a supported format
  • Exit code 3 (conversion error): File may be password-protected, corrupted, or require optional dependencies (e.g., for audio transcription, markitdown[audio] is needed)
  • Empty output: File may contain only images or non-extractable content; inform the user

Notes

  • markitdown preserves tables from Excel/Word as Markdown tables — these work well as slide content
  • For PPTX files, markitdown extracts text from all slides including speaker notes
  • For PDF files, text extraction quality depends on whether the PDF is text-based (not scanned images)
  • Scanned PDFs (image-only) will produce minimal output; consider using an OCR tool first
  • The output content.md can be directly referenced when prompting /slide-generate

Gives 0 of the 12 instructions most pdf office docs skills give

Counted across 635 of the 690 authors here whose files we hold, read 2026-08-06

  • extract text using pdfplumberin 92 of 635, across 25 files
  • create PDFs using reportlabin 83 of 635, across 16 files
  • read FORMS.md to fill out PDF formsin 80 of 635, across 13 files
  • OCR scanned PDFs using pytesseractin 77 of 635, across 10 files
  • merge or split PDFs using qpdfin 70 of 635, across 3 files
  • use Excel formulas instead of hardcoded calculated valuesin 68 of 635, across 12 files
  • unpack edit xml and repack existing documentsin 63 of 635, across 8 files
  • document sources for hardcoded valuesin 61 of 635, across 9 files
  • write minimal python code without unnecessary commentsin 59 of 635, across 7 files
  • run the recalculation script after adding or modifying formulasin 58 of 635, across 6 files
  • fix all identified formula errors and recalculatein 58 of 635, across 6 files
  • format years as text stringsin 57 of 635, across 5 files

Said here and by no other author read

  • derive a filesystem-safe source name from the filename
  • create a source workspace directory
  • stop if the conversion script exits non-zero
  • read the first 100 lines of the output markdown
  • provide a brief summary of the converted content
  • suggest running slide-generate with the output file

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.