Перейти к основному содержанию

Обзор

Web2MD CLI позволяет конвертировать любой URL в чистый Markdown прямо из терминала. Передавайте вывод в LLM, обрабатывайте списки URL пакетно или загружайте контент в свой Obsidian-хранилище — и всё это без открытия браузера.
Для работы CLI требуется Node.js 18+. Выполните node -v, чтобы проверить версию.

Установка

Устанавливать ничего не нужно — просто запустите через npx:
Или установите глобально для более быстрого запуска:

Режимы

Web2MD CLI работает в трёх режимах в зависимости от конфигурации:

Локальный

Режим по умолчанию. API-ключ не требуется. Загружает страницы и конвертирует их локально. Работает для большинства публичных сайтов.

Серверный

С API-ключом. Задайте WEB2MD_API_KEY, чтобы получить доступ к Reddit, Fandom/Wikia и другим ограниченным сайтам, требующим серверной обработки.

Bridge

С флагом --bridge. Использует ваше расширение Chrome для загрузки страниц с JS-рендерингом или защищённых авторизацией, которые статическая загрузка обработать не может.

Флаги

Переменные окружения

Добавьте их в профиль вашей оболочки (~/.zshrc или ~/.bashrc), чтобы они сохранялись между сессиями:

Примеры использования

Базовая конвертация

Выводит Markdown в stdout.

Передача в LLM

Сохранение в файл

Флаг --meta добавляет в начало YAML-фронтматтер с заголовком, исходным URL, количеством слов, количеством токенов, временем чтения и датой.

Пакетная обработка из файла

Создайте файл urls.txt:
Затем выполните:
Каждый URL сохраняется как отдельный файл .md в директории ./research.

Загрузка в хранилище Obsidian

Это сохраняет каждую страницу в ~/Documents/MyVault/raw/ и обновляет ~/Documents/MyVault/INDEX.md ссылками на все конвертированные страницы.

Reddit с API-ключом

Для Reddit требуется действующий API-ключ. Без него URL Reddit не будут обработаны из-за ограничений Reddit на ботов.

Режим Bridge

Используйте расширение Chrome для обработки страниц с JS-рендерингом или защищённых авторизацией:
Для режима Bridge требуется установленное расширение Web2MD для Chrome и запущенный Chrome. CLI взаимодействует с расширением через протокол нативных сообщений (native messaging) Chrome.

Вывод в JSON

Возвращает структурированный результат:
Полезно для программной обработки или передачи в jq:

Оптимизированные сайты

Web2MD включает встроенные адаптеры для следующих сайтов, обеспечивая более чистый результат по сравнению с обычной конвертацией:
  • Wikipedia — чистое извлечение статей, обработка инфобоксов
  • arXiv — аннотации статей и метаданные
  • Hacker News — треды с комментариями
  • GitHub — Issues и Pull Requests
  • Stack Overflow — вопросы и ответы
  • dev.to — записи блога
  • Medium — статьи (обходит превью пейвола)
  • Substack — рассылки
  • OpenAI Docs — страницы документации
  • Mintlify-based docs — сайты документации на базе Mintlify
  • Reddit — посты и комментарии (требуется API-ключ)

Типовые сценарии

Укажите директорию ./context в качестве контекста для вашего AI-агента, чтобы получать обоснованные ответы.
Создаёт индексированное, доступное для поиска исследовательское хранилище в Obsidian.
Удаляет изображения и ссылки, чтобы сократить расход токенов при передаче в LLM.