원클릭으로
markitdown
Convert files (PDF, DOCX, PPTX, XLSX, HTML, images, audio, ZIP, CSV, JSON, XML, EPUB) to Markdown using Microsoft's markitdown CLI
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Convert files (PDF, DOCX, PPTX, XLSX, HTML, images, audio, ZIP, CSV, JSON, XML, EPUB) to Markdown using Microsoft's markitdown CLI
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Create and manage projects in the Obsidian vault. Creates structured project folders (overview, conversation log, links, documents), ingests local files and URLs, maintains a projects dashboard (.base), and queries project context. Use when the user wants to create a new project, add data to a project, check project status, or manage project notes.
Ingest a source (YouTube video, web article, or PDF) into the Obsidian vault as a structured note with frontmatter, summary, key takeaways, and wikilinks to related notes. Use when the user provides a URL or file path and wants it summarized and saved to the vault.
| name | markitdown |
| description | Convert files (PDF, DOCX, PPTX, XLSX, HTML, images, audio, ZIP, CSV, JSON, XML, EPUB) to Markdown using Microsoft's markitdown CLI |
| category | conversion |
| risk | safe |
| source | custom |
| tags | [conversion, markdown, pdf, docx, pptx, xlsx, html, epub, markitdown] |
| date_added | 2026-04-11 |
Convert various file formats to clean Markdown text using Microsoft's markitdown CLI tool. Useful for extracting text content from documents, spreadsheets, presentations, and other formats for analysis, ingestion into notes, or LLM processing.
| Format | Extensions |
|---|---|
.pdf | |
| Word | .docx |
| PowerPoint | .pptx |
| Excel | .xlsx, .xls |
| HTML | .html, .htm |
| CSV | .csv |
| JSON | .json |
| XML | .xml |
| EPUB | .epub |
| Images | .jpg, .jpeg, .png, .gif, .bmp, .tiff |
| Audio | .mp3, .wav, .m4a, .ogg |
| Archives | .zip |
command -v markitdown &>/dev/null && echo "markitdown is installed" || echo "markitdown is NOT installed"
If not installed, ask the user for permission, then:
pip3 install 'markitdown[all]'
Verify the file exists and has a supported extension.
FILE_PATH="$USER_PROVIDED_PATH"
if [ ! -f "$FILE_PATH" ]; then
echo "File not found: $FILE_PATH"
exit 1
fi
echo "File found: $FILE_PATH"
echo "Size: $(ls -lh "$FILE_PATH" | awk '{print $5}')"
Run markitdown on the file.
markitdown "$FILE_PATH"
To save output to a file:
markitdown "$FILE_PATH" -o "$OUTPUT_PATH"
CLI options:
| Flag | Purpose |
|---|---|
-o FILE | Write output to file instead of stdout |
-x EXT | Hint about file extension (useful with stdin) |
-m MIME | Hint about MIME type |
-c CHARSET | Hint about charset (e.g., UTF-8) |
-p | Enable third-party plugins |
--keep-data-uris | Keep base64-encoded images in output |
After conversion, either:
When saving to the Obsidian vault, place converted files in the appropriate folder based on content type and add proper frontmatter.
Basic conversion (output to stdout):
markitdown document.pdf
Save to file:
markitdown presentation.pptx -o presentation.md
Read from stdin with extension hint:
cat data.xlsx | markitdown -x .xlsx
Convert and pipe for analysis:
markitdown report.pdf | head -100
| Error | Cause | Action |
|---|---|---|
| File not found | Invalid path | Ask user to verify path |
| Unsupported format | Unknown extension | Check supported formats list |
| Empty output | File has no extractable text (e.g., scanned PDF without OCR) | Suggest using -d flag with Azure Document Intelligence or an OCR plugin |
| Encoding issues | Non-UTF-8 file | Use -c flag to specify charset |