qmd
- title
- qmd
- type
- toolbox
- summary
- Local-first поиск по markdown-заметкам, объединяющий BM25, векторный поиск и переранжирование через LLM
- tags
- typescript, search, markdown, llm, mcp, knowledge-management
- language
- TypeScript
- license
- MIT
- created
- 2026-04-06
- updated
- 2026-04-06
- lang
- ru
- translation_of
- qmd
- source_updated
- 2026-04-06
- translated
- 2026-09-01
- translator
- lllm/antigravity/gemini-3.7-flash-medium
Local-first поисковый движок для markdown-заметок, документации и баз знаний. Объединяет поиск по ключевым словам через BM25, векторный семантический поиск и переранжирование через LLM - всё работает локально через node-llama-cpp с GGUF-моделями. Никаких API-ключей, никакого облака. Автор - Тоби Лютке (CEO Shopify).
Три режима поиска:
qmd search "query"- поиск по ключевым словам через BM25 (быстрый, модель не требуется)qmd vsearch "query"- векторный семантический поиск по локальным эмбеддингамqmd query "query"- гибридный: BM25 + векторный поиск, затем LLM переранжирует результаты (лучшее качество)
Базовая настройка:
npm install -g @tobilu/qmd
qmd collection add ~/notes --name notes
qmd collection add ~/Documents/meetings --name meetings
qmd embed # generate embeddings
qmd query "quarterly planning"
Варианты интеграции:
- CLI для прямого использования
- MCP-сервер - работает с Claude Desktop и Claude Code из коробки
- SDK для Node.js/Bun для встраивания в другие инструменты
- HTTP-транспорт для общих экземпляров сервера (
qmd mcp --http --daemon)
Архитектура: трёхзвенный конвейер. Лексический (BM25) и векторный поиск выполняются параллельно, затем LLM-реранкер оценивает объединённые результаты. Поддерживается расширение запросов на естественном языке - перед поиском LLM переписывает запрос в более удачные ключевые и семантические варианты. Коллекциям можно задавать описательный контекст для повышения релевантности.
Главное в SDK: createStore() даёт программный доступ к поиску, построению эмбеддингов, управлению коллекциями и получению документов. Поддерживаются glob-шаблоны, диапазоны строк, пакетное извлечение и callback'и прогресса.
Применимость к этой вики: qmd мог бы индексировать каталоги wiki/ и sources/, обеспечивая семантический поиск по базе знаний. Сейчас рабочий процесс запросов читает index.md и переходит по ссылкам вручную. qmd позволил бы находить релевантные страницы, даже если граф wikilink'ов их не связывает, что особенно актуально по мере роста вики. Интеграция с MCP означает, что Claude Code сможет использовать его напрямую.
Репозиторий: https://github.com/tobi/qmd - 18.2k звёзд, лицензия MIT.