Foremerge CLI

CLI и MCP-сервер: параллельные агенты заранее заявляют, что будут менять, и видят конфликты намерений до кода

  • 521 ★ репозитория
  • Последний коммит
CLI

Расширенный доступ

Почему такой уровень

  • Установка через `curl ... | sh` запускает скрипт с сайта foremerge.com, а `foremerge setup` добавляет MCP-запись и скилл в настройки клиентов
  • Foremerge сам запускает зарегистрированные команды проверки в вашем репозитории, поэтому регистрируйте только быстрые и безопасные
Все причины и проверки

naw103/foremerge

Установка

Работает в

В терминале, через SkillFoxx CLI

npx skillfoxx add cli/foremerge

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Установка через `curl ... | sh` запускает скрипт с сайта foremerge.com, а `foremerge setup` добавляет MCP-запись и скилл в настройки клиентов
  • Foremerge сам запускает зарегистрированные команды проверки в вашем репозитории, поэтому регистрируйте только быстрые и безопасные

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Foremerge помогает нескольким кодирующим агентам работать над одним репозиторием в отдельных git worktree и не ломать работу друг друга. Git сравнивает текст и замечает, когда два агента правят одно место файла. Допустим, один агент переводит все вызовы на `StripePaymentService`, а другой добавляет PayPal в старый `PaymentService`. Строки не пересекаются, и слияние пройдет. В итоге работа с PayPal застрянет на классе, который больше никто не вызывает. Перед правкой каждый агент публикует намерение: вид области (`symbol`, `api`, `schema`, `config`, `file` и другие), ключ и операцию, например `replace` или `extend`. Намерения лежат в базе SQLite внутри каталога `.git`, поэтому их видят все агенты на компьютере: Claude Code, Codex, Cursor. Детектор конфликтов работает без модели и на одних и тех же входных данных дает один и тот же ответ. Работа идет от намерения к принятию. Агент заявляет и захватывает область, правит код и публикует набор изменений ChangeSet. Затем Foremerge сам запускает проверки, заданные командой `foremerge checks set`, и принимает изменения. В комплекте есть короткая команда `fmg`, режим `--json` и MCP-сервер `foremerge mcp`.

Для кого. Для разработчиков, которые запускают нескольких агентов параллельно в разных worktree и хотят узнавать о столкновении замыслов до слияния.

Подходит, если

  • Два или три агента работают над одним репозиторием в отдельных worktree
  • Одна задача заменяет компонент, а другая его расширяет, и git при слиянии промолчит
  • План нужно проверить до начала работы командой `foremerge conflicts check`
  • Нужен журнал принятых изменений: у каждой записи есть агент, модель, результат проверки и цепочка событий с хешами

Не подходит, если

  • Вы работаете с одним агентом: координировать некого
  • Агенты работают на разных машинах: координация между компьютерами за рамками проекта
  • Нужны жесткие блокировки файлов: Foremerge только предупреждает
  • Нужен зрелый стабильный интерфейс: проект на версии 0.5.1, публичные схемы еще могут меняться

Пример запроса к агенту

Перед правкой опубликуй намерение заменить PaymentService на StripePaymentService и проверь, не работает ли кто-то из других агентов над тем же.

Ограничения

Foremerge остается MVP до версии 1.0: публичные схемы могут измениться, опубликованных результатов бенчмарков пока нет. Координация работает на одном компьютере. База лежит в `<git-common-dir>/foremerge/state.sqlite3`, и размещение этого файла в сети не дает распределенной безопасности.

Готовые бинарники есть для macOS, Linux и Windows. Пакет npm пока выходит для macOS и Linux с glibc, а на Windows бинарник берут со страницы релизов. Для сборки из исходников нужен Rust 1.85 или новее, для примеров из инструкции нужны свежий Git и `jq`.

Foremerge не делает merge, rebase, cherry-pick и push. Он показывает пересечения, ведет журнал и запускает проверки. Цепочка событий с хешами выдает вмешательство в журнал, но личность автора записи не подтверждает.

Как отключить. Удалите MCP-запись `foremerge` и файл скилла из настроек клиентов, для которых запускали `foremerge setup`. Затем удалите бинарник `foremerge` (по умолчанию он лежит в `~/.local/bin`) и каталог `foremerge` внутри git-каталога репозитория.

Частые вопросы

Чем Foremerge отличается от git?

Git ловит пересечения строк. Foremerge сравнивает заявленные намерения: если один агент заменяет `PaymentService`, а другой его расширяет, предупреждение приходит до кода, даже когда файлы разные.

Как поставить Foremerge?

На macOS и Linux подойдет `curl -fsSL https://foremerge.com/install.sh | sh` или `npm install -g foremerge`. Установщик кладет в `~/.local/bin` команды `foremerge` и `fmg`. Затем в репозитории выполните `foremerge init`.

Блокирует ли Foremerge файлы или агентов?

Нет. Предупреждения рекомендательны, поэтому один упавший агент не остановит остальных. Решение о конфликте вы записываете командой `foremerge assess record`.

Использует ли Foremerge модель для поиска конфликтов?

Нет. Детектор сравнивает объявленные области и операции, поэтому формулировка плана на результат не влияет. «Объединить платежи на Stripe» и «Заменить PaymentService на Stripe» дают один вердикт.

Как подключить Foremerge к Claude Code, Codex и Cursor?

Выполните `foremerge setup all` либо `foremerge setup claude`, `foremerge setup codex`, `foremerge setup cursor` для одного клиента. Команда ставит скилл и MCP-запись и не трогает чужие настройки. Проверить результат помогает `foremerge doctor --client all`.

Обсуждение

Вопросов и отзывов пока нет.

Выбор редакции

Набор скиллов, который задает агенту процесс разработки: уточнение задачи, план, TDD, субагенты и ревью кода

ПлагинРасширенный доступ304 тыс.Звезды репозитория
Выбор редакции

Небольшие компонуемые скиллы для инженерной работы с агентом: интервью по плану, TDD, диагностика багов, ревью и архитектура

СкиллМинимальный доступ301,6 тыс.Звезды репозитория

Четыре принципа в одном CLAUDE.md против типичных ошибок LLM в коде: допущения, переусложнение, лишние правки

СкиллМинимальный доступ222,9 тыс.Звезды репозитория

Плагин и скилл, который заставляет агента писать минимум кода: сначала повторное использование, stdlib и нативные возможности

ПлагинРасширенный доступ174,3 тыс.Звезды репозитория
Выбор редакции

Набор GitHub для разработки от спецификации: CLI specify ставит в проект команды и скиллы для агента, от принципов до реализации

CLIРасширенный доступ142,6 тыс.Звезды репозитория

Набор скиллов Гэрри Тана, превращающий Claude Code в виртуальную команду: продукт, архитектура, дизайн, ревью, QA и выпуск

СкиллШирокий доступ137,4 тыс.Звезды репозитория

Сравнение с похожими

Записи с тем же главным запросом: чем они отличаются.

ЗаписьОфициальныйЗвезды репозиторияГлавное отличие
Foremerge (эта запись)нет521
Weaveнет1 331драйвер слияния git, убирающий ложные конфликты уже после правок
Worktrunkнет9 420команда `wt` для создания и ведения git worktree под параллельных агентов
Claude Squadнет8 656терминальное приложение, которое запускает несколько сессий агентов

Коротко о README

Ядро проекта написано на Rust и опирается на локальное хранилище SQLite, git CLI и запуск проверок по заданному argv. В репозитории лежат сценарии бенчмарков в `benchmarks/scenarios`, записанная сессия `examples/terminal-session.txt` и записи архитектурных решений в `docs/adr`.

Бейдж для README

Сообщить о проблеме

Foxx AIForemerge
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.