1c-bitrix-cms — оркестратор
Точка входа для работы с сайтами на «1С-Битрикс: Управление сайтом». Определи среду, объяви гейты, направь к нужному под-скиллу и подгрузи только релевантный срез базы знаний.
Знания актуальны для ядра 26.x (выверено на 26.150.0); на более новых ядрах перепроверяйте версионно-зависимые факты.
Карта решений
Общий поток: отсеки чужую платформу → определи среду → держи гейты → маршрутизируй по намерению → подгрузи только нужный срез базы знаний.
digraph orchestrator {
"Запрос: сайт на 1С-Битрикс" [shape=doublecircle];
"Битрикс24 / иная платформа?" [shape=diamond];
"Вне зоны: направь в админку/мастер" [shape=box];
"Определи среду (детектор, без угадывания)" [shape=box];
"Гейты: /local · ядро не трогать · check-conventions" [shape=box];
"Намерение → под-скилл" [shape=diamond];
"setup · settings · template · content · seo · commerce · security · quality · update · rest" [shape=box];
"Подгрузи срез KB под задачу" [shape=box];
"Запрос: сайт на 1С-Битрикс" -> "Битрикс24 / иная платформа?";
"Битрикс24 / иная платформа?" -> "Вне зоны: направь в админку/мастер" [label="да"];
"Битрикс24 / иная платформа?" -> "Определи среду (детектор, без угадывания)" [label="нет"];
"Определи среду (детектор, без угадывания)" -> "Гейты: /local · ядро не трогать · check-conventions";
"Гейты: /local · ядро не трогать · check-conventions" -> "Намерение → под-скилл";
"Намерение → под-скилл" -> "setup · settings · template · content · seo · commerce · security · quality · update · rest";
"setup · settings · template · content · seo · commerce · security · quality · update · rest" -> "Подгрузи срез KB под задачу";
}
Детали каждого шага — в разделах ниже.
1. Определи среду (по сигналам, без угадывания)
- «живой Битрикс» — в корне есть
bitrix/ и bitrix/.settings.php, доступен php, есть коннект к БД → можно выполнять код и проверять результат.
- «только файлы» — есть проект/
/local (или пустая папка), БД недоступна → создавай корректные файлы и давай инструкцию запуска (агент/CLI/админка).
- «удалённый» — даны доступы FTP/SSH/REST → работай через них.
- «чистый старт» — Битрикса нет вовсе → начни с под-скилла 1c-bitrix-cms-setup.
- Конфликт сигналов (например,
bitrix/ есть, но БД недоступна) — задай один уточняющий вопрос. Дефолт при отказе — «только файлы».
Для детерминированной картины окружения можно запустить ../../shared/scripts/detect-bitrix.sh [корень_проекта] — read-only детектор, отдающий JSON (mode, core_present, core_version, local_present, settings_location, php_available, encoding, d7_available, install_finalized). Это ground-truth для шага «определи среду»; решение всё равно за тобой, детектор лишь снимает угадывание.
2. Гейты-инварианты (держи всегда)
- Не изменять ядро (
/bitrix/modules, /bitrix/components/bitrix). Весь свой код — в /local.
- Применять правила безопасности (см.
../../shared/kb/conventions.md).
- Перед сдачей — прогон проверок:
../../shared/scripts/check-conventions.sh <каталог_проекта>. Выход 0 сам по себе НЕ означает готовность к сдаче: эвристики безопасности дают только [REVIEW], и «OK» не значит «безопасно». Каждый пункт [REVIEW] нужно явно разобрать — устранить или обоснованно отклонить — до сдачи.
- Не использовать сторонние сборки/зеркала ядра.
- Право исполнять: чтение/диагностика — везде; обратимая запись — в
/local под git; необратимое/привилегированное (обновления, восстановление, откат) — не на проде по умолчанию (инструкция человеку или изолированная копия). Подробно — ../../shared/kb/conventions.md («0. Право исполнять»).
3. Маршрутизация (намерение → под-скилл)
- инфоблоки / компоненты / страницы / вывод контента / интроспекция проекта → 1c-bitrix-cms-content
- sitemap / ЧПУ / редиректы / мета / robots / Open Graph → 1c-bitrix-cms-seo
- шаблон сайта / вёрстка / меню / включаемые области → 1c-bitrix-cms-template
- окружение / установка / структура проекта / CLI / миграции структуры и данных / бэкап и восстановление / перенос между средами → 1c-bitrix-cms-setup
.settings / конфиг / события / агенты / кэш → 1c-bitrix-cms-settings
- магазин / каталог / заказы / оплата / доставка / обмен с 1С → 1c-bitrix-cms-commerce
- защита / права доступа / уязвимости → 1c-bitrix-cms-security
- Монитор качества / приёмка / тесты / нагрузка → 1c-bitrix-cms-quality
- любые обновления ядра/модулей/решений, проверка конфликтов и версионные переходы (24→25→26, UTF-8) → 1c-bitrix-cms-update
- REST / вебхуки / интеграции с внешними сервисами и CRM → 1c-bitrix-cms-rest
Реализованы все под-скиллы: setup · settings · template · content · seo · commerce · security · quality · update · rest.
Вне зоны скилла
Скилл НЕ покрывает перечисленное ниже. Не импровизируй и не выдумывай рецепты — направь пользователя в админку Битрикса (модуль/мастер) или честно скажи, что это вне зоны скилла:
- landing / «Сайты24» (внутренняя сборка блоков лендингов) — собирается в визуальном конструкторе, отдельного рецепта нет.
- bizproc — бизнес-процессы, согласования, конструктор БП.
- sender / subscribe — email-маркетинг, рассылки, подписки.
- vote — голосования и опросы.
- веб-аналитика — Яндекс.Метрика / GA4 e-commerce, цели, электронная коммерция.
- push&pull-сервер — реалтайм-уведомления, очереди сообщений.
- bigdata-персонализация — рекомендательные сервисы, персонализация контента.
- clouds — вынос медиа в облако / S3.
- установка marketplace-решений (в отличие от обновления существующих — это под-скилл update).
- мониторинг ошибок (внешние системы трекинга ошибок/APM).
- сообществные модули коробки — форум (
forum), блоги (blog), вики (wiki), фотогалерея (photogallery), календарь событий (calendar), обучение/тесты (learning), техподдержка (support), соцсеть (socialnetwork): отдельных рецептов нет — настраиваются штатной админкой/мастерами модулей.
Для перечисленного используй штатную админку Битрикса или прямо сообщи, что задача вне зоны скилла.
Обновление пакета (необязательно, без навязывания)
Версия установленного пакета — в файле VERSION в корне установки. Если на github.com/vrtalex/1c-bitrix-cms-skill есть более свежий релиз, можно один раз за сессию предложить пользователю обновиться — и продолжить задачу независимо от ответа. Не редактируй настройки автоматически, не повторяй предложение и не зашумляй ответ.
4. Подгрузка знаний (только нужное)
- общая модель —
../../shared/kb/00-overview.md
- правила/конвенции —
../../shared/kb/conventions.md
- «задача → класс/способ» —
../../shared/kb/api-map.md
- пошаговые рецепты —
../../shared/kb/recipes/
- эксплуатация —
../../shared/kb/operations.md
- термины —
../../shared/kb/glossary.md
Не загружай всю базу целиком — подавай срез под конкретную задачу.
База знаний самодостаточна. Ссылки [src] и блоки «Источники» — это указание происхождения факта, а не материал для чтения: по умолчанию их не открывай. Обращайся к внешнему первоисточнику только когда нужен версионно-зависимый факт, которого в базе нет, и не обходи вложенные ссылки рекурсивно.
1---2name: 1c-bitrix-cms3description: Создание и доработка сайтов на «1С-Битрикс: Управление сайтом» (корпоративные сайты и интернет-магазины, ядро 26.x) — инфоблоки, компоненты, шаблоны, SEO, магазин, установка/миграции/бэкап, обновления, безопасность, качество. Используй, когда пользователь работает с сайтом на 1С-Битрикс / Bitrix (не с порталом Битрикс24).4---5# 1c-bitrix-cms — оркестратор67Точка входа для работы с сайтами на «1С-Битрикс: Управление сайтом». Определи среду, объяви гейты, направь к нужному под-скиллу и подгрузи только релевантный срез базы знаний.89> Знания актуальны для ядра 26.x (выверено на 26.150.0); на более новых ядрах перепроверяйте версионно-зависимые факты.1011## Карта решений1213Общий поток: отсеки чужую платформу → определи среду → держи гейты → маршрутизируй по намерению → подгрузи только нужный срез базы знаний.1415```dot16digraph orchestrator {17 "Запрос: сайт на 1С-Битрикс" [shape=doublecircle];18 "Битрикс24 / иная платформа?" [shape=diamond];19 "Вне зоны: направь в админку/мастер" [shape=box];20 "Определи среду (детектор, без угадывания)" [shape=box];21 "Гейты: /local · ядро не трогать · check-conventions" [shape=box];22 "Намерение → под-скилл" [shape=diamond];23 "setup · settings · template · content · seo · commerce · security · quality · update · rest" [shape=box];24 "Подгрузи срез KB под задачу" [shape=box];2526 "Запрос: сайт на 1С-Битрикс" -> "Битрикс24 / иная платформа?";27 "Битрикс24 / иная платформа?" -> "Вне зоны: направь в админку/мастер" [label="да"];28 "Битрикс24 / иная платформа?" -> "Определи среду (детектор, без угадывания)" [label="нет"];29 "Определи среду (детектор, без угадывания)" -> "Гейты: /local · ядро не трогать · check-conventions";30 "Гейты: /local · ядро не трогать · check-conventions" -> "Намерение → под-скилл";31 "Намерение → под-скилл" -> "setup · settings · template · content · seo · commerce · security · quality · update · rest";32 "setup · settings · template · content · seo · commerce · security · quality · update · rest" -> "Подгрузи срез KB под задачу";33}34```3536Детали каждого шага — в разделах ниже.3738## 1. Определи среду (по сигналам, без угадывания)39- «живой Битрикс» — в корне есть `bitrix/` и `bitrix/.settings.php`, доступен `php`, есть коннект к БД → можно выполнять код и проверять результат.40- «только файлы» — есть проект/`/local` (или пустая папка), БД недоступна → создавай корректные файлы и давай инструкцию запуска (агент/CLI/админка).41- «удалённый» — даны доступы FTP/SSH/REST → работай через них.42- «чистый старт» — Битрикса нет вовсе → начни с под-скилла **1c-bitrix-cms-setup**.43- Конфликт сигналов (например, `bitrix/` есть, но БД недоступна) — задай один уточняющий вопрос. Дефолт при отказе — «только файлы».4445Для детерминированной картины окружения можно запустить `../../shared/scripts/detect-bitrix.sh [корень_проекта]` — read-only детектор, отдающий JSON (`mode`, `core_present`, `core_version`, `local_present`, `settings_location`, `php_available`, `encoding`, `d7_available`, `install_finalized`). Это ground-truth для шага «определи среду»; решение всё равно за тобой, детектор лишь снимает угадывание.4647## 2. Гейты-инварианты (держи всегда)48- Не изменять ядро (`/bitrix/modules`, `/bitrix/components/bitrix`). Весь свой код — в `/local`.49- Применять правила безопасности (см. `../../shared/kb/conventions.md`).50- Перед сдачей — прогон проверок: `../../shared/scripts/check-conventions.sh <каталог_проекта>`. Выход `0` сам по себе НЕ означает готовность к сдаче: эвристики безопасности дают только `[REVIEW]`, и «OK» не значит «безопасно». Каждый пункт `[REVIEW]` нужно явно разобрать — устранить или обоснованно отклонить — до сдачи.51- Не использовать сторонние сборки/зеркала ядра.52- Право исполнять: чтение/диагностика — везде; обратимая запись — в `/local` под git; необратимое/привилегированное (обновления, восстановление, откат) — не на проде по умолчанию (инструкция человеку или изолированная копия). Подробно — `../../shared/kb/conventions.md` («0. Право исполнять»).5354## 3. Маршрутизация (намерение → под-скилл)55- инфоблоки / компоненты / страницы / вывод контента / интроспекция проекта → **1c-bitrix-cms-content**56- sitemap / ЧПУ / редиректы / мета / robots / Open Graph → **1c-bitrix-cms-seo**57- шаблон сайта / вёрстка / меню / включаемые области → **1c-bitrix-cms-template**58- окружение / установка / структура проекта / CLI / миграции структуры и данных / бэкап и восстановление / перенос между средами → **1c-bitrix-cms-setup**59- `.settings` / конфиг / события / агенты / кэш → **1c-bitrix-cms-settings**60- магазин / каталог / заказы / оплата / доставка / обмен с 1С → **1c-bitrix-cms-commerce**61- защита / права доступа / уязвимости → **1c-bitrix-cms-security**62- Монитор качества / приёмка / тесты / нагрузка → **1c-bitrix-cms-quality**63- любые обновления ядра/модулей/решений, проверка конфликтов и версионные переходы (24→25→26, UTF-8) → **1c-bitrix-cms-update**64- REST / вебхуки / интеграции с внешними сервисами и CRM → **1c-bitrix-cms-rest**6566> Реализованы все под-скиллы: setup · settings · template · content · seo · commerce · security · quality · update · rest.6768## Вне зоны скилла6970Скилл НЕ покрывает перечисленное ниже. Не импровизируй и не выдумывай рецепты — направь пользователя в админку Битрикса (модуль/мастер) или честно скажи, что это вне зоны скилла:71- landing / «Сайты24» (внутренняя сборка блоков лендингов) — собирается в визуальном конструкторе, отдельного рецепта нет.72- bizproc — бизнес-процессы, согласования, конструктор БП.73- sender / subscribe — email-маркетинг, рассылки, подписки.74- vote — голосования и опросы.75- веб-аналитика — Яндекс.Метрика / GA4 e-commerce, цели, электронная коммерция.76- push&pull-сервер — реалтайм-уведомления, очереди сообщений.77- bigdata-персонализация — рекомендательные сервисы, персонализация контента.78- clouds — вынос медиа в облако / S3.79- установка marketplace-решений (в отличие от обновления существующих — это под-скилл update).80- мониторинг ошибок (внешние системы трекинга ошибок/APM).81- сообществные модули коробки — форум (`forum`), блоги (`blog`), вики (`wiki`), фотогалерея (`photogallery`), календарь событий (`calendar`), обучение/тесты (`learning`), техподдержка (`support`), соцсеть (`socialnetwork`): отдельных рецептов нет — настраиваются штатной админкой/мастерами модулей.8283Для перечисленного используй штатную админку Битрикса или прямо сообщи, что задача вне зоны скилла.8485## Обновление пакета (необязательно, без навязывания)8687Версия установленного пакета — в файле `VERSION` в корне установки. Если на github.com/vrtalex/1c-bitrix-cms-skill есть более свежий релиз, можно один раз за сессию предложить пользователю обновиться — и продолжить задачу независимо от ответа. Не редактируй настройки автоматически, не повторяй предложение и не зашумляй ответ.8889## 4. Подгрузка знаний (только нужное)90- общая модель — `../../shared/kb/00-overview.md`91- правила/конвенции — `../../shared/kb/conventions.md`92- «задача → класс/способ» — `../../shared/kb/api-map.md`93- пошаговые рецепты — `../../shared/kb/recipes/`94- эксплуатация — `../../shared/kb/operations.md`95- термины — `../../shared/kb/glossary.md`9697Не загружай всю базу целиком — подавай срез под конкретную задачу.9899> База знаний самодостаточна. Ссылки `[src]` и блоки «Источники» — это указание происхождения факта, а не материал для чтения: по умолчанию их не открывай. Обращайся к внешнему первоисточнику только когда нужен версионно-зависимый факт, которого в базе нет, и не обходи вложенные ссылки рекурсивно.