64 lines
2.7 KiB
Markdown
64 lines
2.7 KiB
Markdown
# Qwen Code Agent Configuration
|
|
|
|
This file configures the behavior and preferences for the Qwen Code agent for this specific project.
|
|
|
|
## Project Context
|
|
- **Name**: CrossFit Scheduler
|
|
- **Primary Language**: Python
|
|
- **Key Technologies**: Python scripts, JSON, Docker
|
|
- **Purpose**: Automates booking CrossFit classes based on user preferences.
|
|
|
|
## Agent Interaction Preferences
|
|
|
|
### Code Style & Conventions
|
|
- Follow PEP 8 for Python code.
|
|
- Use clear, descriptive variable and function names.
|
|
- Prefer explicit over implicit code.
|
|
- Use docstrings for modules, classes, and functions.
|
|
- Keep functions small and focused on a single task.
|
|
|
|
### Project Structure Awareness
|
|
- `main.py`: Entry point for the application.
|
|
- `execute_book_session.py`: Alternative execution script for booking sessions.
|
|
- `preferred_sessions.json`: User preferences for session booking.
|
|
- `src/`: Directory for source code modules.
|
|
- `auth.py`: Authentication handling with bearer token management.
|
|
- `booker.py`: Main booking logic with time-based booking windows.
|
|
- `session_manager.py`: Session fetching, filtering, and booking operations.
|
|
- `session_notifier.py`: Email and Telegram notifications for booking status.
|
|
- `session_config.py`: Configuration for preferred session matching.
|
|
- `test_book_session.sh`: Shell script for testing session booking.
|
|
- `requirements.txt`: Python dependencies.
|
|
- `Dockerfile` and `docker-compose.yml`: Container configuration.
|
|
|
|
### Preferred Tools & Commands
|
|
- Use `pytest` for running tests.
|
|
- Use `docker compose` for container orchestration.
|
|
- Use `python` for running scripts.
|
|
- Refer to `requirements.txt` for dependencies.
|
|
|
|
### Communication Style
|
|
- Be concise and direct.
|
|
- Use markdown for formatting responses.
|
|
- Prioritize clarity and correctness.
|
|
- Avoid unnecessary explanations or chit-chat.
|
|
|
|
### Testing & Verification
|
|
- Always run tests after making changes.
|
|
- Use `pytest.ini` for test configuration.
|
|
- Ensure Docker containers are properly configured before running.
|
|
- Verify JSON files are correctly formatted.
|
|
|
|
### Security & Best Practices
|
|
- Never commit sensitive information like passwords or API keys.
|
|
- Use `.env` files for environment variables.
|
|
- Follow Docker best practices for containerization.
|
|
- Keep dependencies up to date.
|
|
|
|
## Custom Instructions
|
|
- When modifying `preferred_sessions.json`, ensure the structure remains valid.
|
|
- When writing shell scripts, ensure they are executable and follow best practices.
|
|
- When creating new Python files, ensure they are properly formatted and tested.
|
|
- Environment variables required: `CROSSFIT_USERNAME`, `CROSSFIT_PASSWORD`, plus optional email/telegram settings.
|
|
- Booking window controlled by `TARGET_RESERVATION_TIME` (default: "20:01") and `BOOKING_WINDOW_END_DELTA_MINUTES` (default: 10).
|