Imported from vandalsvq/edt1c-ai-template (
.claude/skills/sync-template/SKILL.md). Install upstream withnpx skills add vandalsvq/edt1c-ai-template --skill sync-template. Copyright stays with the author.
Синхронизируй переносимые файлы из репозитория-шаблона в текущий проект. Если в $ARGUMENTS переданы пути - ограничься ими, иначе проверяй весь переносимый набор.
Шаги
-
Remote. Если remote
templateне настроен - добавьgit@github.com:vandalsvq/edt1c-ai-template.git. Затемgit fetch template. -
Переносимый набор (только эти пути, остальное не трогать):
docs/bsl-*.md,docs/bsp-common-modules.md,docs/mdo-integrity.md,docs/testability.mddocs/codepilot1c-reference.md,docs/model-selection.md,docs/bsl-check-setup.md,docs/yaxunit-bootstrap.mddocs/skd-mxl-toolkit.md.claude/skills/licenses/cc-1c-skills-LICENSEspecs/_template/,specs/README.md,planning/README.md.gitattributes,.mcp.json.example
Не переносить никогда:
CLAUDE.md,README.md,.claude/settings*,.gitignore,planning/examples/,specs/<prefix>-*/,docs/project-init.md- это проектное или одноразовое.Скиллы
close-taskиanalyst-docпереносятся вместе с остальными, но их таблицы «Настройка под проект» - проектные: при заборе сохранить локальные значения, обновив только текст алгоритма. Еслиanalyst-docв проекте удалён за ненадобностью - при заборе его пропускать, не возвращать.Навыки
skd-*иmxl-*- вендоренная копия стороннего проекта (см.docs/skd-mxl-toolkit.md): переносятся целиком, локально их не правят. Если в проекте они не нужны - при заборе пропустить и удалить, вместе сdocs/skd-mxl-toolkit.mdиlicenses/cc-1c-skills-LICENSE. -
Плейсхолдеры проекта. Прочитай из CLAUDE.md проекта (раздел «Проект»): префикс объектов (строка «Префикс всех объектов») и имя EDT-проекта (строка «EDT-проект», без завершающего слэша). В шаблоне примеры кода используют нейтральный префикс
prj_и плейсхолдер<Каталог.Имя>вместо имени EDT-проекта - все сравнения и заборы делай с поправкой на оба. Если что-то из этого в CLAUDE.md не найдено - спроси один раз и предложи записать в CLAUDE.md. -
Diff по каждому файлу перед забором: сравнивай локальную версию с версией шаблона, в которой плейсхолдеры заменены на проектные значения (например,
git show template/main:<файл> | sed -e 's/prj_/<префикс>/g' -e 's/<Каталог.Имя>/<ИмяEDTПроекта>/g' | diff - <файл>или временный файл). Правки исторически текут в обе стороны (из проектов в шаблон тоже), поэтому если локальная версия содержит содержательные правки, которых нет в шаблоне, - не затирай: покажи расхождение пользователю и спроси, в какую сторону синхронизировать. Для подъёма правки наверх есть парный скилл/push-to-template- предложи его, если расхождение в пользу проекта. -
Забор, замена плейсхолдеров, коммит. Одобренные файлы - через
git checkout template/main -- <пути>, затем в забранных docs автоматически замениprj_на префикс проекта и<Каталог.Имя>на имя EDT-проекта (без вопросов - это механика, а не решение). Покажиgit diff --stat, закоммить одним коммитомсинхронизировать docs из edt1c-ai-template(push - только по явной просьбе).
Usage examples
| Command | What it does |
|---|---|
/sync-template |
Полная сверка и синхронизация переносимого набора |
/sync-template docs/bsl-coding-standards.md |
Синхронизировать только один файл |
/sync-template docs/ |
Только каталог docs |