Первый коммит: рождение Legion
4 мая 2026 года — день, когда Legion начал своё существование.
Идея
Legion родился из потребности в более умной, гибкой и масштабируемой системе управления агентами. К тому моменту стало очевидно, что существующие инструменты не покрывают всех потребностей: нужна была собственная платформа, объединяющая мощь мультиагентных систем с простотой развёртывания.
Проект задумывался как инфраструктура нового поколения — Somemaru Hub v2. Не просто очередной фреймворк, а полноценная экосистема для построения, координации и управления программными агентами.
Что было в первом коммите
Первый коммит заложил фундамент всего проекта. Всего было добавлено 111 889 строк кода — и это только начало!
Основные компоненты:
🏗 Инфраструктура проекта
.gitignore— стандартные игнорируемые файлы для Go-проектаREADME.md— описание проекта, его целей и философииARCHITECTURE.md— документ архитектуры, описывающий структуру системы на высоком уровнеCRUSH_INTEGRATION_PLAN.mdиSOMEMARU_CRUSH_PLAN.md— стратегические планы интеграции
🤖 Ядро агентной системы (agent/)
Самая объёмная часть коммита — директория agent/, содержащая полноценную реализацию агентной системы на Go:
agent/internal/agent/agent.go(1 343 строки) — главный файл агента. Именно здесь реализована основная логика работы агента: обработка входящих запросов, управление состояниями, взаимодействие с инструментами.agent/internal/agent/coordinator.go(1 214 строк) — координатор агентов. Отвечает за распределение задач между агентами, синхронизацию и сбор результатов.agent/internal/agent/agent.go— определение структуры агента и его базовых методов.agent/internal/agent/agentic_fetch_tool.go— инструмент для агентного получения данных из внешних источников.agent/Taskfile.yaml— собственный build-инструментарий, заменяющий Makefile.
🧪 Тестирование
Качественная разработка невозможна без тестов, и первый коммит это подтверждает:
- agent_test.go (827 строк) — тесты основного функционала агента
- coordinator_test.go (385 строк) — тесты координации
- common_test.go (205 строк) — общие тестовые утилиты
- convert_test.go (94 строки) — тесты конвертации данных
📚 Документация
AGENTS.md— подробное руководство по агентамREADME.md(854 строки) — исчерпывающая документация по установке и использованиюdocs/hooks/— документация системы хуков с примерами
⚙️ Инструментарий
.golangci.yml— конфигурация линтераinstall.sh— скрипт установкиgo.modиgo.sum— зависимости Go-модулей (220 + 624 строки)
Концептуальные решения
Первый коммит задал несколько ключевых архитектурных направлений:
- Go как основной язык — выбор в пользу производительности и простоты развёртывания (один бинарник).
- Модульная архитектура — агентная система разделена на чёткие компоненты: ядро агента, координатор, инструменты.
- Документация с первого дня — архитектурные решения фиксируются сразу, а не постфактум.
- Тестирование как часть ДНК проекта — внушительная тестовая база с первого коммита.
- Расширяемость через хуки и API — система спроектирована так, чтобы её можно было расширять без изменения ядра.
Заключение
Этот коммит — точка отсчёта. С него начался путь, который превратил идею в реальность. Legion вырос из этих 111 889 строк в нечто гораздо большее, но фундамент, заложенный в тот день, остаётся неизменным.
Первый коммит — это всегда волнительно. Это как первый кирпич в фундаменте здания: ты знаешь, что будет ещё тысячи, но именно этот — самый важный.