
Litho
CLI на Rust, который читает репозиторий и сам пишет архитектурную документацию по C4 — с диаграммами, разбором БД и проверкой Mermaid.
Litho (ранее известный как deepwiki-rs) - это высокопроизводительный CLI-инструмент на базе ИИ, написанный на языке Rust. Он автоматически анализирует исходный код любого репозитория и создаёт подробную архитектурную документацию по методологии C4.
Ключевые возможности
-
Автоматическая C4-документация: Избавляет от ручного написания документации. На основе анализа кода нейросеть сама строит диаграммы контекста, контейнеров, компонентов и кода.
-
Поддержка множества языков: Инструмент мультиязычен и одинаково хорошо парсит проекты на Rust, Python, Java, Go, C#, JavaScript и других популярных стеках.
-
Интеграция внешних знаний (RAG): Позволяет «подмешивать» к анализу кода внешние файлы бизнеса и архитектурных решений (PDF, Markdown, SQL, YAML/JSON) для обогащения контекста.
-
Автогенерация документации БД: Утилита способна анализировать .sql файлы и SQL-проекты, автоматически составляя схемы таблиц, описание хранимых процедур и интерактивные ER-диаграммы.
-
Интеграция в CI/CD: Легко встраивается в пайплайны автоматизации для обновления Wiki при каждом коммите.
Экосистема проекта
Проект развивается как комплексное решение и включает в себя несколько связанных утилит:
-
Litho Book: Удобное веб-приложение для отображения и чтения документации, написанное на Rust и Axum. Поддерживает синтаксис Markdown, рендеринг графиков Mermaid и интеллектуальный полнотекстовый поиск.
-
Mermaid Fixer: Дополнительный инструмент на базе LLM и песочницы JavaScript, который автоматически сканирует Markdown-файлы, находит синтаксические ошибки в диаграммах Mermaid и исправляет их для корректного отображения.
Четырехэтапный конвейер обработки:
Генерация документации происходит через цепочку специализированных ИИ-агентов:
-
Подготовка: Сканирование репозитория, извлечение метаданных, комментариев и построение дерева зависимостей.
-
Исследование: Набор агентов выявляет архитектурные паттерны, зоны ответственности модулей и бизнес-логику, формируя отчеты в памяти.
-
Композиция: Редакторы собирают отчеты в структурированные Markdown-файлы и генерируют схемы.
-
Валидация: Финальная проверка целостности ссылок и автоисправление синтаксиса Mermaid.
Структура полученных данных
После работы утилиты в директории ./litho.docs формируется логичная структура папок:
- Project Overview (Обзор проекта, стек, функции).
- Architecture Overview (Архитектура, разбиение на модули).
- Workflow Overview (Процессы и основные воркфлоу).
- Deep Dive/ (Глубокий разбор реализации отдельных технических тем).
- Boundary-Interfaces (Описание API-эндпоинтов и внешних интеграций).
- Database-Overview (Схемы БД и ER-диаграммы).