KnowledgeQuery
kqs — Git-native платформа для управления знаниями и документацией. Документация, задачи, спецификации данных и связи между ними — обычные Markdown-файлы в Git-репозитории, а один бинарник kqs добавляет к ним поиск, AI-ассистента, трекинг задач и трассировку требований до кода. Без серверов, без внешних баз данных, без vendor lock.
Зачем это нужно
Obsidian и любой markdown-редактор отлично подходят для чтения и редактирования заметок. Но за пределами одной папки начинаются проблемы: нет синхронизации между репозиториями, нет кросс-репозиторного поиска, документация живёт отдельно от кода, и никто не знает, покрыты ли требования реализацией.
kqs не заменяет Obsidian — он дополняет его тем, чего там нет: multi-repo sync, полнотекстовый и семантический поиск, AI-ассистент в CLI, задачи в Git и глубокая трассировка цепочки «требование → дизайн → код».
Возможности
- Двойной режим —
--devдля разработчика (сканирование кода, проверки) и--docдля knowledge-репозитория (полный доступ, создание документов). - Цепочка документов — от идеи до данных:
idea → bft → brd/frd/nfr → adr → rfc → tz → typespec → code. - Поиск — полнотекстовый (SQLite FTS5) и векторный (sqlite-vec + Candle, полностью офлайн).
- AI-ассистент —
kqs askчерез Ollama, OpenAI или Anthropic любой llm etc.. - Задачи в Git — один файл = одна задача, CRDT-события вместо перезаписи, никаких merge-конфликтов.
- Watcher — авто-коммит изменений; push — только по команде
kqs push. - README на автопилоте — канбан-доска задач и оглавление документов обновляются автоматически.
- Трассировка — аннотации
@doc-anchorв коде, проверка цепочек требований, поиск сирот и устаревших связей. - llm-help - контекст для llm для правильного использования kqs.
Цепочка документов
Каждый тип документа отвечает на свой вопрос:
| Тип | Вопрос |
|---|---|
idea | Стоит ли думать об этом? |
bft | Чего хочет бизнес и зачем? |
brd / frd / nfr | Что должна делать система? |
adr | Какое решение принято и почему? |
rfc | Что предлагается обсудить? |
tz | Как это устроено технически? |
typespec | Какие данные реализует код? |
code | Реализация, связанная с документацией |
Трассировка документации и кода
Разработчик помечает код аннотацией:
// @doc-anchor SecureTokenStorage
// @see docs://architecture/ADR-001.md
class KeychainStorage: TokenStorable { }
kqs check scan находит такие аннотации по всем проектам из конфига и строит граф BFT-001 → ADR-001 → TZ-001 → TypeSpec → @doc-anchor → код. kqs check traceability-deep проверяет полноту цепочек требований, kqs check orphans находит документы без связей, а сироты-анкоры превращаются в задачи автоматически.
Установка
cargo install kqs
Или скачай бинарник из GitHub Releases.
Быстрый старт
kqs init --path ~/knowledge --remote https://github.com/user/knowledge.git
kqs doc new adr "Database Choice" # → docs/03-architecture/adr-001-*.md
kqs search "system architecture" # полнотекстовый + векторный
kqs task new --title "Implement search" --priority high
kqs check traceability-deep --deep # полнота цепочек требований
kqs push # readme-gen → push
Ссылки
- Репозиторий: bimawa/KnowledgeQuery
- crates.io:
kqs