Один AGENTS.md на все инструменты: как автор Dev.to перестал размножать CLAUDE.md между ИИ‑ассистентами

Несколько ИИ‑ассистентов в одном репозитории тянут каждый свой файл правил и свой путь — и инструкции расходятся. Автор snapsynapse на Dev.to описывает свой ход: взял небольшой CLI на Go и довёл его до agentlink — утилиты, которая связывает копии инструкций симлинками, умеет находить установленные инструменты, обходить репозитории, вешать авто‑хуки и держать глобальную конфигурацию.
Почему «один ассистент — один путь» ломает единые правила
По первоисточнику, экосистема coding‑ассистентов давит на то, чтобы у каждого инструмента был свой контекстный файл в своём месте. Там же перечислены ожидаемые расхождения имён и путей: для одних сценариев фигурирует CLAUDE.md, для других — GEMINI.md, отдельно фигурируют AGENTS.md в духе Cursor и OpenCode, инструкции GitHub Copilot в .github/copilot-instructions.md и вариант для Junie в .junie/AGENTS.md. Число таких инструментов в том же тексте оценивается порядка семнадцати — с оговоркой «плюс-минус», то есть речь о порядке величины, а не о точном реестре. На этом фоне копирование одного и того же текста в несколько файлов выглядит не столько ленью, сколько источником расхождений: правку внесли в одном месте — в другом забыли.
От форка к agentlink: репозиторий, лицензия и происхождение
Инструмент в первоисточнике назван agentlink; исходники ведут на вилку github.com/snapsynapse/agentlink. Там же заявлена идея в духе «синхронизировать один AGENTS.md со всеми ИИ‑инструментами на машине — через симлинки, без генерации кода». Базой послужил проект martinmose/agentlink; сохранена атрибуция (включая ссылку на файл NOTICE) и отмечена связь с upstream‑pull request в репозитории апстрима. Лицензия вилки — MIT. Фигурирует лендинг https://agentlink.run/. В качестве хронологической оговорки внутри повествования фигурирует август 2025 как период «минимального» существования ядра апстрима до волны интереса к агентным сценариям — это формулировка из того же материала, а не внешняя дата релиза для календаря новостей.
Detect, scan и хуки: как CLI экономит ручную работу
По первоисточнику, утилита собрана как один бинарник на Go 1.23+; для YAML используется gopkg.in/yaml.v3, интерфейс команд — на базе Cobra. Пример установки: go install github.com/snapsynapse/agentlink/cmd/agentlink@v0.2.0.
Команда agentlink detect обходит окружение и проверяет порядка два десятка инструментов — с типичными путями вроде ~/.claude, ~/.codex, ~/.gemini и наличием соответствующих команд в $PATH (claude, codex, cursor, aider и др.). Опция --generate создаёт стартовый файл .agentlink.yaml.
agentlink scan [dir] по умолчанию смотрит каталог ~/Git, находит репозитории с AGENTS.md и настраивает симлинки; есть режим --dry-run.
agentlink hooks install автоматизирует вызовы синхронизации: описаны git‑хуки post-checkout и post-merge, смена каталога в zsh (chpwd), а на macOS — задание launchd с «пульсом» раз в 60 минут. Вставляемые фрагменты помечаются комментариями # >>> agentlink >>> и # <<< agentlink <<<, чтобы их можно было безопасно удалить.
Глобальный конфиг и аккуратность при замене файлов
Для синхронизации между домашними путями во втором файле ~/.config/agentlink/config.yaml приводится пример: несколько разных целей вроде ~/.claude/CLAUDE.md, ~/.codex/AGENTS.md и ~/.config/opencode/AGENTS.md сходятся к одному ~/AGENTS.md. Перед тем как подменить существующий файл симлинком, утилита делает резервную копию с суффиксом *.bak (и вариантом ..bak, если *.bak уже занят); пустые файлы пропускаются с предупреждением.
По открытым данным Dev.to у поста не было публичных комментариев и суммарных реакций; оценочное время чтения в интерфейсе указано как 5 минут. Поле с числом просмотров было пустым — поэтому про охват по просмотрам здесь не говорим.
Источники
- Snapsynapse. One AGENTS.md, every tool: how I stopped copy-pasting CLAUDE.md everywhere — Dev.to. URL: Dev.to — дата доступа (UTC): 2026-04-25T10:00:00Z (факты об agentlink, путях инструментов, командах, версии Go, установке
@v0.2.0, хуках,detect/scan, конфиге, бэкапах, лицензии MIT, лендинге, отсылке к августу 2025 и происхождении от martinmose/agentlink). - Метаданные и метрики карточки публикации на Dev.to, согласованные с первичным источником при подборе материала:
published_at= 2026-04-23T15:00:00Z,reading_time_minutes= 5, нулевые комментарии и реакции, отсутствие числа просмотров в полеpage_views_count.