Привет всем!

Решил поделиться небольшим проектом, который изначально собирал под себя. Последнее время я много сижу в Claude Code. Со временем поймал себя на мысли, что мне не хватает наглядности. Вся история взаимодействия, контекст сессий и куча потраченного времени просто растворяются в консоли после закрытия терминала.

Вместо очередного дашборда со скучными графиками я решил превратить историю работы в своеобразный визуальный таймлайн, который наглядно показывает твой прогресс. Так получился Bonsai — локальный визуализатор для Claude Code.

Что умеет

Проект решает несколько простых задач:

  • Сканирует локальные логи Claude Code и собирает их в интерактивное дерево сессий.

  • Считает общее время работы и выводит твой текущий streak — серию дней активного кодинга с AI.

  • Показывает подробную статистику по каждой сессии прямо в браузере.

Виды деревьев
Виды деревьев

Как устроено

Под капотом всё просто. Бэкенд: Python 3.11+ с aiohttp для HTTP и SSE, сборка через hatchling, пакетный менеджер uv. Хранилище: SQLite из stdlib. Фронтенд: один HTML‑файл с vanilla JS и inline SVG, без бандлера и фреймворков.

Hook‑client (то, что Claude Code вызывает на каждом событии) написан на чистой стандартной библиотеке — без зависимостей, p99 cold‑start ~63ms, чтобы не тормозить агента.

Дизайн

Делал в эстетике тёплых бежевых и тёмных тонов с оранжевыми акцентами. Есть светлая и тёмная темы, можно переключить любую тему дерева вручную.

Главная страница (ниже все сессии)
Главная страница (ниже все сессии)

Проект полностью открытый (MIT). Если вы тоже активно используете Claude Code в повседневной разработке и хотите видеть свой реальный прогресс — заглядывайте, пробуйте.

Код репозитория