# doc-to-markdown

Превращает DOCX, PDF, PPTX и сохранённый HTML в аккуратный Markdown и сам чинит типовые дефекты конвертации. Пригодится, когда нужно вытащить текст из документа без ручной правки.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 872 установки · ★ 1493
- Автор: daymade
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/daymade/claude-code-skills/tree/HEAD/daymade-docs/doc-to-markdown/SKILL.md
- Обновлён: 2026-10-25
- HTML: https://affpapa.org/nevibecode/skills/doc-to-markdown

## Что делает

Скилл запускает `scripts/convert.py` и собирает результат из двух движков: Pandoc даёт извлечение, а восемь постобработок доводят файл до читаемого вида. Для DOCX автоматически правятся grid-таблицы и simple-таблицы, вложенные пути картинок `media/media/`, атрибуты Pandoc вида `{width="..."}`, отступы вокруг `**` в CJK-тексте, отступные блоки кода, экранированные и двойные скобки ссылок.

Для PDF работают три чистки: вырезаются блоки мусора от OCR на картинках, повторяющиеся колонтитулы и водяные знаки (строка считается повтором, если встречается на 60% страниц и больше), а абсолютные пути к изображениям переписываются относительно выходного файла. Отключить это можно флагом `--no-postprocess`. Есть два режима: быстрый по умолчанию и тяжёлый, где инструменты идут параллельно и лучшие сегменты выбираются по оценке качества.

Считать на честные ограничения стоит заранее. Дублированные абзацы из pymupdf4llm не правятся, таблицы через разрыв страницы не склеиваются, а оглавление с точками распознаётся как таблица. В ячейках под диагональным водяным знаком остаются обрывки символов — построчная чистка их не берёт. Плотную инфографику с текстом внутри картинки скилл вернёт картинкой: для расшифровки нужен VLM, а не он.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add daymade/claude-code-skills --skill doc-to-markdown -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/doc-to-markdown/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/doc-to-markdown/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add daymade/claude-code-skills --skill doc-to-markdown -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/doc-to-markdown/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add daymade/claude-code-skills --skill doc-to-markdown -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/doc-to-markdown/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install daymade/claude-code-skills doc-to-markdown
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/doc-to-markdown/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add daymade/claude-code-skills --skill doc-to-markdown -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/daymade/claude-code-skills --path daymade-docs/doc-to-markdown
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/doc-to-markdown/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add daymade/claude-code-skills --skill doc-to-markdown -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/daymade/claude-code-skills/tree/HEAD/daymade-docs/doc-to-markdown/SKILL.md

## Когда брать
- собрать Markdown из DOCX без ручной правки таблиц
- вытащить текст из PDF со сканами и водяными знаками
- перенести сохранённую HTML-страницу в Markdown
- починить пути к картинкам после конвертации
- привести в порядок жирный шрифт в китайском тексте

## Примеры запросов агенту
- конвертируй document.docx в Markdown, картинки сложи в ./media
- сделай Markdown из этого PDF, водяные знаки убери
- переведи сохранённый page.html в Markdown

## Похожие
- [pandoc](https://affpapa.org/nevibecode/skills/pandoc.md) — скилл · 484 установки
- [convert-documents-to-markdown](https://affpapa.org/nevibecode/skills/convert-documents-to-markdown.md) — скилл · 12500 установок
- [translate-book](https://affpapa.org/nevibecode/skills/translate-book.md) — скилл · 1800 установок
- [document-processing](https://affpapa.org/nevibecode/skills/document-processing.md) — скилл · 1300 установок
- [doc](https://affpapa.org/nevibecode/skills/doc.md) — скилл · 99 установок
- [md-to-docx](https://affpapa.org/nevibecode/skills/md-to-docx.md) — скилл · 353 установки

Из того же набора: [daymade/claude-code-skills](https://affpapa.org/nevibecode/by/daymade/claude-code-skills.md) — 64 карточки

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
