Files
dataset-tg-bot/AGENTS.md
2026-02-02 22:20:52 +03:00

46 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## О проекте
О проекте - в README.md.
## Правила кодирования
### uv
В проекте используется uv. С помощью uv add добавляем зависимости.
С помощью uv run запускаем.
### Линтер и типы
- **ruff** — линтер и форматтер, line-length 88
- **ty** — проверка типов
### Type hints
Используй современный синтаксис type hints:
- `list[]`, `dict[]`, `tuple[]`, `set[]` вместо List, Dict, etc.
- `| None` вместо Optional
- Всегда указывай типы для параметров и возвращаемых значений
### Комментари ие комментарии в коде
- Только короткие докстринги к функциям на одну-две строчки
- Код должен быть самодокументируемым
### Логирование
- Используй базовое логирование через модуль `src/logger.py`
- **INFO** уровень - основные логи для пользователя (что происходит)
- **DEBUG** уровень - детальная информация для отладки
- Не спамь логами, только важная информация
- Уровень логирования настраивается через `LOG_LEVEL` в `.env`
## Конфигурация
Все секреты и настройки хранятся в `.env`. Смотри `.env.example` для примера.
### Переменные окружения
- Не используй значения по умолчанию для переменных окружения
- Если переменная не задана — выбрасывай ошибку при старте
- Это помогает сразу обнаружить проблемы с конфигурацией
### Коммиты
- Делай коммиты только если пользователь сказал.
- Перед коммитом: `uv run ruff check --fix . && uv run ruff format . && uv run ty check .`
- Перед коммитом проверь git status и добавь ненужные файлы в `.gitignore`.
- Пиши короткие сообщения к коммитам на русском языке.