### 🧠**Rules for Coding Assistant: Telegram Bot API Development in Python**
/bot
├── __init__.py
├── handlers/
├── services/
├── utils/
├── config.py
└── main.py
/start
, messages).python-telegram-bot
(latest v20+ unless specified).asyncio
(async/await) for non-blocking bot.aiogram
or telethon
based on use case.python-dotenv
or pydantic
for managing environment variables./start
, /help
) from message/text handlers.MessageHandler
for text processing.main.py
..env
file.dotenv.load_dotenv()
or os.getenv()
.print()
for production; use logging.info/debug/error
.ConversationHandler
for multi-step user flows.pytest
or unittest
.black
, flake8
, or ruff
.python main.py
Dockerfile
and docker-compose.yml
)python -m venv venv
(preferred standard)poetry
for advanced dependency + packaging managementvenv\Scripts\activate
source venv/bin/activate
pip install ...
only after activation.requirements.txt
file using:
pip freeze > requirements.txt
poetry
or pipenv
, handle lock files (poetry.lock
, Pipfile.lock
) appropriately..venv/
or venv/
in .gitignore
:
venv/
.venv/
README.md
:
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt