Добавить в корзинуПозвонить
Найти в Дзене
ContentRun

Epiq: трекер задач в терминале на основе Git

Представьте: вы пишете код, находитесь в состоянии потока, и нужно создать задачу или посмотреть статус спринта. Открываете браузер, логинитесь в трекер, ждёте загрузки — и поток потерян. Это не мелочь: исследования показывают, что возврат к глубокой концентрации после переключения контекста занимает до 23 минут. Epiq — это попытка решить именно эту проблему. Трекер задач, который живёт в терминале и хранит данные там, где уже хранится код — в Git. TUI (Terminal User Interface) — это приложение с интерфейсом в терминале. Не просто команды в строке, а полноценный визуальный интерфейс: доски, колонки, карточки задач — только в ASCII вместо пикселей. В отличие от CLI-инструментов, где нужно помнить синтаксис каждой команды, TUI показывает состояние визуально и позволяет навигировать с клавиатуры. Epiq использует vim-подобную навигацию (hjkl для перемещения) или обычные стрелки — кому как удобнее. Это не ностальгия по 90-м. TUI-инструменты переживают ренессанс именно потому, что работают б
Оглавление

Задачи прямо в Git: как работает трекер без браузера и подписки

Представьте: вы пишете код, находитесь в состоянии потока, и нужно создать задачу или посмотреть статус спринта. Открываете браузер, логинитесь в трекер, ждёте загрузки — и поток потерян. Это не мелочь: исследования показывают, что возврат к глубокой концентрации после переключения контекста занимает до 23 минут.

Epiq — это попытка решить именно эту проблему. Трекер задач, который живёт в терминале и хранит данные там, где уже хранится код — в Git.

Что такое TUI и почему это не «ретро»

TUI (Terminal User Interface) — это приложение с интерфейсом в терминале. Не просто команды в строке, а полноценный визуальный интерфейс: доски, колонки, карточки задач — только в ASCII вместо пикселей.

В отличие от CLI-инструментов, где нужно помнить синтаксис каждой команды, TUI показывает состояние визуально и позволяет навигировать с клавиатуры. Epiq использует vim-подобную навигацию (hjkl для перемещения) или обычные стрелки — кому как удобнее.

Это не ностальгия по 90-м. TUI-инструменты переживают ренессанс именно потому, что работают быстро, не требуют интернета и не засоряют стек зависимостями.

Как Epiq хранит данные: Event Sourcing в трекере задач

Здесь самое интересное с технической точки зрения.

Большинство трекеров хранят текущее состояние задачи: «задача X сейчас в статусе Y». Epiq работает иначе — по модели Event Sourcing. Каждое действие записывается как отдельное событие:

  • «Задача создана» — событие
  • «Задача перемещена в колонку In Progress» — событие
  • «Задача закрыта» — событие

Текущее состояние доски — это результат воспроизведения всех событий по порядку. Это детерминированный процесс: одни и те же события всегда дадут одно и то же состояние.

Что это даёт на практике:

  • История без усилий — можно посмотреть состояние доски на любую дату. Что было в спринте две недели назад? Воспроизводится точно.
  • Конфликты разрешаются предсказуемо — события сходятся к единому состоянию, потому что у каждого события есть временная метка и порядок
  • Аудит из коробки — кто и когда изменил задачу видно без специальных настроек

Синхронизация через Git: как это работает в команде

Epiq не требует отдельного сервера. Синхронизация между участниками команды идёт через Git — тот же remote-репозиторий, где хранится код.

Технически используются изолированные Git worktree и отдельные ветки состояния для данных Epiq. Это значит, что данные задач не смешиваются с кодом в рабочих ветках, но синхронизируются через тот же remote.

Сценарий для команды из 4 человек:

  1. Все клонируют репозиторий — Epiq-данные идут вместе с кодом
  2. Каждый работает локально, задачи обновляются мгновенно без сетевого запроса
  3. Синхронизация явная: команда :sync или автоматический режим
  4. Конфликты разрешаются детерминированно через механизм событий

Для open source проектов это особенно удобно: контрибьютор клонирует репозиторий и сразу получает доску с задачами — без регистрации в отдельном сервисе.

Базовые команды для начала работы

Установка одной командой:

При первом запуске — интерактивный мастер настройки. После этого:

Фильтры, автодополнение команд, история — всё доступно без документации рядом.

Для кого это подходит, а для кого — нет

Подходит: - Разработчики, которые работают преимущественно в терминале - Команды до 10 человек, где все технические специалисты - Фрилансеры с несколькими проектами, которые не хотят платить за трекер отдельно по каждому - Open source проекты, где задачи логично хранить вместе с кодом Не подходит: - Команды с нетехническими участниками, которым нужен браузерный доступ - Организации с требованиями к ролям и правам доступа - Проекты, где нужна интеграция с CI/CD, CRM или отчётность для менеджмента

Главный аргумент за Epiq

Мы настолько привыкли к тому, что код и задачи хранятся отдельно, что перестали задавать вопрос: а зачем?

Git уже решает проблему версионирования и синхронизации. Git уже хранит историю изменений. Git уже обеспечивает распределённую работу без центрального сервера. Epiq просто распространяет эти принципы на управление задачами.

Если ваша команда уже доверяет Git своему коду, логично спросить — почему задачи должны лежать на серверах третьей компании, которой вы платите подписку?

-

Хочешь использовать AI на полную? Бот @contentrunbot - 50+ бесплатных инструментов прямо в Telegram. Разборы и гайды - в базе знаний ContentRun Club.