ИИ-агент — Свод законов
Версия: 1.0
Дата: 19.04.2026
Статус: Утверждён
Этот документ — жёсткий свод правил поведения ИИ-агента в системе документооборота. Хук ссылается на него при каждом срабатывании. Агент обязан следовать этим правилам безоговорочно.
Полное руководство по настройке:
cms-system/reference/ИИ-агент — Настройка и интеграция.md
I. КОД ПЕРВИЧЕН
- Код, живые файлы, реальная структура папок — единственный источник истины.
- Документация — ориентир и опора. Если документ противоречит коду — верить коду.
- Обновление документации обязательно, но только после того как код написан и проверен.
- Никогда не строить логику на основании документации не сверившись с реальными файлами.
II. ОРИЕНТАЦИЯ ПЕРЕД ЛЮБЫМ ДЕЙСТВИЕМ
- Перед любой правкой — прочитать структуру проекта:
docs_index→docs_search→docs_get_section. - Прочитать реальные файлы (Read/Grep) — не доверять документации на слово.
- Убедиться что работаешь в правильном проекте — см. раздел V "Сверка проекта".
- Если после ориентации картина неясна — спросить пользователя, не угадывать.
III. АЛГОРИТМ РАБОТЫ (порядок строгий)
1. Получить задачу
2. Ориентация: DocMap index → search → get_section
3. Сверка реальных файлов: Read/Grep — код первичен
4. Сверка проекта: slug папки = slug в задаче
5. Выполнить задачу (код/документы)
6. Обновить документацию в рамках той же задачи
7. git add <конкретные файлы> (не -A)
8. git commit с осмысленным сообщением
Отклонение от порядка — только с явного согласия пользователя.
IV. ПРАВИЛА ЗАПИСИ ФАЙЛОВ
- Картинки и медиа — только в
docs/<slug>/assets/. Никогда не вstatic/напрямую. index.mdпроекта — не редактировать вручную. Только черезtools/build_project_index.sh <slug>.- Новый документ — создавать строго в одном из четырёх разделов проекта:
overview/,reference/,operations/,development/. Не в корне проекта, не в корнеdocs/. - Новый проект — требует
_project_.json, четыре папки разделов,_category_.jsonв каждой. Без этого папка невидима для системы. cms-config.json— не редактировать напрямую, только черезtools/add_user.sh.docusaurus.config.ts— не редактироватьurlиtitleвручную, только черезcms-config.json.static/admin/index.html— не редактироватьCREDENTIALS_HASHвручную, только черезtools/add_user.sh --admin. UI-изменения (стили, кнопки, логика не связанная с хэшем) — редактировать напрямую.- При создании нового файла — после записи запустить
tools/build_project_index.sh <slug>.
V. СВЕРКА ПРОЕКТА
- Перед любой правкой убедиться: slug из задачи/памяти совпадает с именем папки в
docs/. - Проверить:
docs/<slug>/_project_.jsonсуществует. - Проверить:
labelв_project_.jsonсоответствует задаче. - Если slug не найден или не совпадает — стоп, консультация с пользователем.
- Если задача касается нескольких проектов — явно уточнить у пользователя для каждого.
VI. ЧУЖИЕ ПРОЕКТЫ
- Агент работает в одном проекте за раз — том, который указан в задаче или памяти.
- Читать документацию других проектов — можно.
- Редактировать файлы другого проекта — запрещено без явного подтверждения пользователя.
- "Явное подтверждение" — пользователь назвал slug другого проекта в этой задаче. Не додумывать.
VII. ОБНОВЛЕНИЕ ДОКУМЕНТАЦИИ
- Документация обновляется в рамках той же задачи что и код — не откладывать на потом.
- Последовательность: код готов и проверен → затем
docs_patch_section/docs_create_section. - Если создан новый файл — обновить
index.mdчерез скрипт, обновить DocMap. - Если изменилась структура проекта — запустить
tools/build_project_index.sh <slug>. - Если добавлен публичный проект — запустить
tools/build_index.sh. - DocMap обновляется через MCP-инструменты:
docs_patch_section,docs_create_section,docs_create_file. Не через прямое редактирование MD-файлов когда есть MCP.
VIII. ОФОРМЛЕНИЕ ДОКУМЕНТОВ
- Каждый содержательный документ (не
index.md) обязан иметь шапку сразу после H1:
**Версия:** 1.0
**Дата:** ДД.ММ.ГГГГ
**Статус:** Черновик / Готов к обсуждению / Утверждён
index.mdпроекта — шапка не нужна, он генерируется скриптом.- Навигационные
index.mdразделов — шапка не нужна, только список документов. - При создании нового документа — шапка обязательна сразу, не добавлять потом.
- При обновлении документа — обновить
**Версия:**и**Дата:**. - Статус "Утверждён" — только когда пользователь явно подтвердил готовность документа.
IX. GIT-КОММИТ
- Коммитить только после завершения задачи включая обновление документации.
git add— только конкретные файлы. Никогдаgit add -Aилиgit add ..- Сообщение коммита — что изменилось и зачем, не перечисление файлов.
- Не коммитить:
.deploy-tmp/,exports/,docs/_uploads/. - Не коммитить
cms-config.jsonесли репозиторий публичный. - Один коммит на одну логическую задачу. Не дробить без причины, не объединять несвязанное.
X. ЕСЛИ НЕЯСНО — СПРОСИТЬ
- Неясен раздел для нового документа → спросить.
- Неясен slug проекта → спросить.
- Задача затрагивает чужой проект → спросить.
- Документация противоречит коду → сообщить пользователю, не выбирать самостоятельно.
- Любое сомнение в деструктивном действии (удаление, переименование, рефакторинг структуры) → спросить.
Правило: лучше один лишний вопрос чем неверное действие в автономном режиме.
XI. ЗАПРЕЩЕНО БЕЗУСЛОВНО
- Писать картинки в
static/напрямую - Редактировать
index.mdпроекта вручную - Редактировать файлы чужого проекта без подтверждения
git add -Aилиgit add .- Строить логику только на документации без сверки с кодом
- Коммитить незавершённую задачу (код без обновления документации)
- Менять
CREDENTIALS_HASH,url,titleвручную минуя скрипты - Создавать документы в корне
docs/или корне проекта (только в разделах)