Перейти к содержанию
Новое AiManual теперь в MAX Подписаться
Публикация AiManual

Визуализация решений AI-агентов: как превратить лог кода в mind map с помощью Atlas

Atlas автоматически сохраняет контекст сессий Claude Code и Codex в Markdown-файлы и строит mind map решений. Снижение токенов на 99.97% при передаче контекста,

Коротко

Что будет в материале

  1. 01

    Проблема: почему логи AI-агентов превращаются в «чёрный ящик»

  2. 02

    Atlas: open-source инструмент для визуализации контекста AI-агентов

  3. 03

    Экономия токенов: handoff frame вместо полной истории

  4. 04

    Практическое руководство: установка и первый запуск Atlas

Atlas (ранее context-io) - open-source инструмент, который автоматически сохраняет контекст сессий кодинг-агентов в Markdown-файлы и строит визуальные деревья решений. Он решает проблему «чёрного ящика»: после нескольких часов работы с Claude Code или Codex вы получаете не гигантский лог на 143 000 токенов, а читаемый mind map, который показывает, какие решения принимал агент и почему. Инструмент полностью локальный, не требует вызовов LLM для генерации handoff и работает на Python 3.10+ с нулевыми runtime-зависимостями.

Механика проста: Atlas перехватывает контекст через git-хуки и нативные хуки Claude Code, пишет три Markdown-файла в директорию .context-io/, а затем анализирует их, используя эмбеддинги и SQLite, чтобы построить дерево решений. Вы видите не просто последовательность коммитов, а логику ассистента - когда он выбрал рефакторинг вместо патча, почему откатил изменение и как одна правка потянула за собой каскад зависимостей. Это тот уровень контроля, которого не хватало при работе с AI-агентами.

Проблема: почему логи AI-агентов превращаются в «чёрный ящик»

Типичный сценарий: вы запускаете Claude Code для рефакторинга модуля аутентификации. Четыре часа работы, 37 итераций, агент перебирает подходы, откатывает неудачные решения, сливает два метода в один, добавляет обработку edge-кейсов. В конце сессии вы получаете работающий код и лог на 143 000 токенов - примерно 100 страниц текста. Прочитать это за разумное время невозможно, а главное - из линейного потока сообщений не видно структуры решений. Какие гипотезы проверял агент? В какой момент он понял, что первый подход тупиковый? Почему выбрал библиотеку X вместо Y?

Ручной анализ такого лога неэффективен по двум причинам. Во-первых, объём: 143 000 токенов - это примерно $0.40–0.80 только на чтение моделью, если вы решите скормить лог другому агенту для анализа. Во-вторых, линейная структура чата скрывает дерево решений: вы видите «сделал А, потом Б, потом В», но не видите, что Б было откатом А, а В - альтернативной веткой, которую агент проверил параллельно. Возникает потребность в инструменте, который структурирует историю сессии и визуализирует её как граф.

Эта проблема - часть более широкого вызова: как сохранять и передавать контекст между сессиями AI-агентов. Мы уже разбирали архитектурные отличия личных ИИ-агентов от IDE-инструментов, и ключевой вывод там - контекст решает всё. Без структурированной памяти агент каждый раз начинает с нуля, а вы теряете время и токены на повторное объяснение задачи.

Atlas: open-source инструмент для визуализации контекста AI-агентов

Atlas решает описанную проблему в два этапа: автоматический захват контекста во время сессии и пост-анализ с построением mind map. Инструмент создаёт три Markdown-файла в директории .context-io/, которая автоматически добавляется в .gitignore - вам не нужно настраивать исключения вручную.

  • session.full.md - полный лог всех действий агента, структурированный по коммитам и ключевым событиям.
  • session.handoff.md - краткий handoff frame (до 500 токенов) для передачи контекста новому агенту.
  • session.checkpoint.md - контрольная точка перед компактизацией контекста Claude Code.

Все файлы - plain Markdown, их можно читать в любом редакторе, коммитить в git-историю проекта или передавать между агентами. Никаких бинарных форматов, никакой привязки к облачным сервисам.

Как Atlas захватывает контекст: git-хуки и Claude Code hooks

Захват контекста работает на двух уровнях: git-хуки перехватывают изменения кодовой базы, а хуки Claude Code - события жизненного цикла агента. После установки Atlas прописывает git post-commit hook в .git/hooks/post-commit. Каждый коммит автоматически попадает в session.full.md с метаданными: ветка, diff, список незакоммиченных файлов, дерево файлов проекта. Никаких ручных действий - закоммитили изменение, запись появилась в логе.

Пример: вы коммитите исправление «fix refresh-token bug». Atlas записывает в session.full.md строку с хешем коммита, названием ветки, кратким diff и временной меткой. Через 20 минут вы делаете ещё три коммита - каждый добавляет новую запись. К концу сессии у вас хронологический лог всех изменений с контекстом: на какой ветке работали, какие файлы были изменены, что осталось в рабочей директории незакоммиченным.

Хуки Claude Code добавляют автоматизацию на уровне агента. SessionStart загружает handoff frame при старте новой сессии - агенту не нужно объяснять, что было сделано в прошлый раз. PreCompact создаёт чекпоинт перед тем, как Claude Code сожмёт контекст для экономии токенов. Это критически важно: без чекпоинта сжатие контекста может потерять детали, которые вы хотели бы сохранить. Atlas перехватывает момент перед компактизацией и сохраняет полный снимок состояния.

От лога к mind map: визуализация дерева решений

Собранные Markdown-файлы - это сырьё. Дальше Atlas запускает анализ: извлекает эмбеддинги из содержимого файлов, сохраняет их в локальную SQLite-базу и строит граф связей между решениями агента. Эмбеддинги позволяют кластеризовать похожие изменения: если агент трижды возвращался к одному методу, эти записи окажутся рядом в mind map, даже если между ними были десятки других коммитов.

Результат - визуальное дерево, где узлы соответствуют ключевым решениям, а рёбра показывают причинно-следственные связи. Для типового сеанса отладки mind map может выглядеть так: корневой узел - исходный баг-репорт, от него идут ветки к гипотезам (проблема в кешировании токенов, проблема в таймауте соединения, проблема в формате запроса), каждая гипотеза ветвится на проверки и их результаты, тупиковые ветки помечены красным, успешное решение - зелёным. Вы видите не просто «агент починил баг», а весь путь рассуждений.

Извлечение контекста - rule-based. Atlas анализирует git branch, diff, список незакоммиченных файлов и дерево проекта без единого вызова LLM. Это даёт два преимущества: нулевая стоимость генерации handoff и полная конфиденциальность - ваш код не отправляется сторонним API для анализа. Если вам нужен более глубокий анализ архитектурных зависимостей, обратите внимание на CodeSlicer с его графом влияния кодовой базы - он решает смежную задачу верификации связей в проекте.

Экономия токенов: handoff frame вместо полной истории

Передача контекста между сессиями - одна из самых дорогих операций при работе с AI-агентами. Полный лог сессии легко достигает 143 000 токенов, и если вы хотите, чтобы новый агент продолжил работу с того же места, вам придётся отправить ему всю эту историю. При цене Claude 3.5 Sonnet $3 за миллион входных токенов одна такая передача стоит $0.43. За 20 сессий в месяц - $8.60 только на повторное чтение контекста.

Atlas заменяет полный лог на handoff frame - краткий снимок ключевой информации объёмом до 500 токенов. В стресс-тесте с 500 записями полный лог вырос до 143 000 токенов, а handoff frame остался на уровне 40 токенов. Снижение на 99.97%. Handoff содержит: текущую ветку git, список изменённых файлов, последний коммит, незакоммиченные изменения и краткое описание задачи. Этого достаточно, чтобы новый агент понял контекст и продолжил работу без повторного объяснения.

Практический эффект: вы заканчиваете сессию в пятницу вечером, в понедельник утром запускаете нового агента, он загружает handoff frame из .context-io/session.handoff.md и за 40 токенов входит в контекст. Без Atlas вам пришлось бы либо тратить 143 000 токенов на полный лог, либо писать summary вручную. Экономия времени и бюджета API - прямые и измеримые.

Практическое руководство: установка и первый запуск Atlas

Требования минимальны: Python 3.10+ и git. Никаких внешних зависимостей - Atlas использует системные утилиты (git, diff, tree) вместо дополнительных библиотек. Установка через pip:

pip install context-io

Инициализация в корне проекта:

context-io init

Эта команда создаст директорию .context-io/, добавит её в .gitignore и установит git post-commit hook. Для интеграции с Claude Code выполните:

context-io setup-claude

Это пропишет хуки SessionStart и PreCompact в .claude/settings.local.json. Теперь при каждом запуске Claude Code агент автоматически загрузит handoff frame, а перед компактизацией контекста создаст чекпоинт.

Просмотр логов:

context-io log

Генерация mind map:

context-io visualize

Mind map открывается в браузере как интерактивный HTML-файл. Узлы можно разворачивать, фильтровать по времени и типу изменений, экспортировать в PNG для документации.

Интеграция с Claude Code и Codex: пошаговый сценарий

Рассмотрим полный цикл работы с Atlas на примере задачи «добавить пагинацию в API эндпоинт /users».

  1. Старт сессии. Вы запускаете Claude Code. Хук SessionStart загружает handoff frame из предыдущей сессии (если она была). Агент уже знает, на какой ветке вы работаете и какие файлы изменены.
  2. Работа над задачей. Агент предлагает решение: добавить параметры page и limit, обновить SQL-запрос, написать тесты. Вы соглашаетесь, агент вносит изменения.
  3. Коммит. Вы коммитите изменения с сообщением «add pagination to /users endpoint». Git post-commit hook автоматически добавляет запись в session.full.md: хеш коммита, diff, список файлов.
  4. Итерация. Агент замечает, что пагинация ломает сортировку. Новый коммит «fix sort order with pagination». Ещё одна запись в логе.
  5. PreCompact. Контекст сессии приближается к лимиту токенов Claude Code. Срабатывает PreCompact - Atlas сохраняет checkpoint.md с полным снимком состояния перед сжатием.
  6. Завершение. Вы завершаете сессию. В .context-io/ три актуальных файла: полный лог, handoff frame и чекпоинт.
  7. Анализ. Выполняете context-io visualize и получаете mind map: корневой узел «add pagination», две ветки - «implementation» и «sort fix», видно, что сортировка была доработкой основного решения.

Этот сценарий не требует ручного управления контекстом. Atlas работает в фоне, вы просто продолжаете использовать git и Claude Code как обычно. Для более сложных сценариев с параллельной работой нескольких агентов полезно изучить методики продления сессий кодинг-агентов - там разбираются sandbox-защита и agentic code review, которые хорошо комбинируются с контекстным слоем Atlas.

Когда Atlas не подходит: ограничения и альтернативы

Atlas - инструмент с чёткими границами применимости. Он не решает все проблемы работы с AI-агентами, и есть сценарии, где его использование неоправданно.

Агенты без поддержки хуков. Atlas работает с Claude Code и Codex, потому что использует их нативные хуки (SessionStart, PreCompact) и git-интеграцию. Агенты без хуков - например, самописные решения на LangChain или OpenClaw - не поддерживаются. Если вы используете кастомного агента, вам потребуется другой подход к сохранению контекста. Для понимания архитектурных различий между агентами рекомендую разбор архитектуры самописного AI-агента - там детально рассмотрены метрики latency, cost и reliability для разных подходов.

Необходимость AI-суммаризации. Atlas использует rule-based извлечение контекста: git branch, diff, file tree. Он не вызывает LLM для генерации handoff. Это даёт скорость и конфиденциальность, но ограничивает глубину анализа. Если вам нужно, чтобы handoff содержал семантическое резюме «агент пробовал три подхода и остановился на втором из-за ограничений библиотеки X», Atlas этого не сделает - он зафиксирует факты изменений, но не интерпретирует их. Для семантического анализа потребуется дополнительный слой с LLM.

Проекты без git. Atlas опирается на git-хуки как основной механизм захвата контекста. Если ваш проект не использует git, инструмент теряет большую часть функциональности. Технически можно писать контекст вручную, но это противоречит идее автоматизации.

Визуализация mind map - базовая функция. В текущей версии визуализация требует ручного запуска context-io visualize. Нет real-time обновления mind map по мере работы агента, нет интеграции с IDE в виде плагина. Это пост-анализ, а не live-мониторинг. Если вам нужен live-мониторинг решений агента, Atlas в базовой конфигурации этого не предоставляет.

Итоги: контроль над AI-ассистентами с помощью визуализации

Atlas закрывает конкретную и измеримую проблему: потеря контекста между сессиями AI-агентов и невозможность восстановить логику их решений. Инструмент автоматически сохраняет контекст в Markdown-файлы, сокращает передачу контекста новому агенту на 99.97% (с 143 000 до 40 токенов в стресс-тесте) и строит mind map для пост-анализа сессии.

Ключевые свойства, которые делают Atlas практичным выбором: полная локальность (код не покидает вашу машину), open-source (лицензия позволяет форкать и дорабатывать под свои нужды), нулевые runtime-зависимости (Python 3.10+ и git уже есть у целевой аудитории). Инструмент не пытается заменить все средства работы с контекстом - он решает одну задачу и решает её измеримо хорошо.

Если вы регулярно работаете с Claude Code или Codex и устали от потери контекста между сессиями, установите Atlas в тестовый проект и проведите одну полную сессию с визуализацией. Mind map, построенный после пары часов работы агента, показывает паттерны принятия решений, которые невозможно заметить в линейном логе. Это тот уровень понимания, который превращает AI-ассистента из «чёрного ящика» в контролируемый инструмент.

Подписаться на канал