|
| 1 | +# AGENT.md — постоянные инструкции для AI-агентов (Codex-first) |
| 2 | + |
| 3 | +Этот файл хранит **долгоживущие правила проекта**. Любой агент, работающий в репозитории, должен читать его перед изменениями. |
| 4 | + |
| 5 | +## 1) Приоритеты |
| 6 | + |
| 7 | +1. Корректность и воспроизводимость. |
| 8 | +2. Понятная документация для начинающих. |
| 9 | +3. Минимальные и аккуратные изменения без «лишнего шума» в diff. |
| 10 | + |
| 11 | +## 2) Обязательные правила при любом изменении |
| 12 | + |
| 13 | +- Всегда обновляй `README.md`, если меняется поведение, структура, workflow, команды запуска или документы, на которые должен ориентироваться пользователь. |
| 14 | +- Перед коммитом обязательно переисполняй все `*.ipynb`, которые относятся к изменению, и коммить обновлённые outputs. |
| 15 | +- Если есть tutorial-файлы, обновляй шаги/описания при любом изменении, влияющем на обучение пользователя. |
| 16 | + |
| 17 | +## 3) Правила markdown и отображения формул |
| 18 | + |
| 19 | +Цель: одинаковая читаемость на GitHub и локально (в т.ч. без MathJax/KaTeX). |
| 20 | + |
| 21 | +- Предпочитай plain-text формулы в блоках ` ```text `, если есть риск, что рендерер не поддерживает LaTeX. |
| 22 | +- Для математических обозначений в тексте предпочитай `code spans` (`pi_B`, `mu_hat`, `p_A(a|x)`). |
| 23 | +- Не полагайся только на `$$...$$` как на единственный способ донести формулу. |
| 24 | +- Если используешь LaTeX, обязательно добавляй рядом plain-text эквивалент. |
| 25 | + |
| 26 | +## 4) Стиль документации |
| 27 | + |
| 28 | +- Пиши кратко, структурно, на понятном русском. |
| 29 | +- У каждого сложного метода должны быть: |
| 30 | + - интуиция, |
| 31 | + - формула, |
| 32 | + - ограничения/допущения, |
| 33 | + - ссылка(и) на первоисточник. |
| 34 | +- Для ссылок на научные материалы предпочитай первичные источники: arXiv, PMLR, JMLR, официальные docs. |
| 35 | + |
| 36 | +## 5) Технический workflow для Codex |
| 37 | + |
| 38 | +- Перед работой: `git status` + просмотр затронутых файлов. |
| 39 | +- После изменений: локальные проверки (минимум — тесты и/или запуск релевантных скриптов). |
| 40 | +- Для ноутбуков: `jupyter nbconvert --to notebook --execute <path> --inplace`. |
| 41 | +- Перед коммитом проверяй, что в индексе нет временных файлов (`__pycache__`, служебные артефакты и т.п.). |
| 42 | + |
| 43 | +## 6) Коммиты и PR |
| 44 | + |
| 45 | +- Один логический коммит = одна цель. |
| 46 | +- Заголовок коммита: коротко и по сути. |
| 47 | +- В PR описании обязательно: |
| 48 | + - что изменено, |
| 49 | + - зачем, |
| 50 | + - какие проверки выполнены, |
| 51 | + - есть ли ограничения окружения. |
| 52 | + |
| 53 | +## 7) Границы изменений |
| 54 | + |
| 55 | +- Не менять API/поведение без явного описания в README и tutorial. |
| 56 | +- Не добавлять тяжёлые зависимости без необходимости. |
| 57 | +- Не удалять пользовательские инструкции из документации без явного запроса. |
| 58 | + |
| 59 | +## 8) Быстрый checklist перед финалом |
| 60 | + |
| 61 | +- [ ] README обновлён. |
| 62 | +- [ ] Tutorial/ноутбуки переисполнены и сохранены с outputs. |
| 63 | +- [ ] Markdown читается и на GitHub, и локально. |
| 64 | +- [ ] Тесты/проверки выполнены. |
| 65 | +- [ ] Diff чистый, без временных файлов. |
0 commit comments