# CLAUDE.md — Руководство для Claude Code ## Что мы строим Telegram-бот (учебный проект НИУ ВШЭ, курс Python): принимает `.py`-файлы, коммитит их в отдельный репозиторий на SourceCraft, где автоматически запускается CI/CD. Бот сообщает статус CI, присылает алерты о падениях/перегрузке, отдаёт логи и умеет отвечать на вопросы по логам через LLM. **ТЗ:** [`docs/SPEC.md`](docs/SPEC.md) · **Архитектура:** [`docs/ARCHITECTURE.md`](docs/ARCHITECTURE.md) --- ## Процесс работы - Перед кодом — подход в 2–3 предложениях при архитектурных развилках. - Код по модулям; пользователь проверяет после каждого; комментарии — только когда WHY неочевиден. - Язык общения — русский. --- ## Карта документации > Задачи — в Issues на SourceCraft, не в файлах. | Файл | О чём | |------|-------| | [`docs/SPEC.md`](docs/SPEC.md) | ТЗ: требования, сценарии, критерии приёмки | | [`docs/ARCHITECTURE.md`](docs/ARCHITECTURE.md) | Компоненты, потоки данных, деплой | | [`docs/DECISIONS.md`](docs/DECISIONS.md) | ADR: архитектурные решения (что и почему) | | [`docs/QUESTIONS_IDEAS.md`](docs/QUESTIONS_IDEAS.md) | Открытые вопросы, бэклог идей | | [`docs/dev/WORKFLOW.md`](docs/dev/WORKFLOW.md) | Регламент: ветки, коммиты, PR, жизненный цикл задачи | | [`docs/dev/ISSUE_TEMPLATE.md`](docs/dev/ISSUE_TEMPLATE.md) | Шаблон тела issue | --- ## TL;DR — работа 1. **Задача = Issue.** Нет issue — нет кода. 2. **Ветка от `dev`:** `/-`. PR в `dev`; `dev → main` — только человек. 3. **Гейт зелёный:** lint + тесты перед PR. 4. **Завершил → push + PR** сразу. 5. **Лог выполнения** — в issue (`### YYYY-MM-DD`), архитектурные решения — в `DECISIONS.md`. 6. **Секреты** (токен бота, deploy-ключ, ключи LLM) — только в `.env`, в чат и git не попадают.