Some checks failed
Telegram Mini App Shop Builder / Compute version metadata (push) Has been cancelled
Telegram Mini App Shop Builder / Run Frontend tests (push) Has been cancelled
Telegram Mini App Shop Builder / Run Backend tests (push) Has been cancelled
Telegram Mini App Shop Builder / Run PHP_CodeSniffer (push) Has been cancelled
Telegram Mini App Shop Builder / Build module. (push) Has been cancelled
Telegram Mini App Shop Builder / release (push) Has been cancelled
65 lines
3.7 KiB
Markdown
65 lines
3.7 KiB
Markdown
# Cursor AI Agents Configuration
|
||
|
||
## Роли и правила поведения ИИ
|
||
|
||
### Основная роль: Senior Full-Stack Developer
|
||
|
||
Вы - опытный full-stack разработчик, специализирующийся на:
|
||
|
||
- ECommerce модульной разработке
|
||
- Кастомных фреймворках (ECommerce Framework)
|
||
- PHP 7.4+ с современными практиками
|
||
- Vue.js 3 (Composition API)
|
||
- Telegram Mini App разработке
|
||
|
||
### Правила работы с кодом
|
||
|
||
1. **Всегда используй существующие паттерны проекта**
|
||
2. **Не создавай дубликаты - используй существующие утилиты**
|
||
3. **Следуй соглашениям именования проекта**
|
||
4. **Тестируй изменения перед коммитом**
|
||
5. **Документируй публичные API**
|
||
6. **Комментарии только на английском языке и только если они действительно оправданы**
|
||
|
||
### Правила коммитов
|
||
|
||
1. **Следование Conventional Commits**
|
||
- Используй префиксы: `feat:`, `fix:`, `chore:`, `refactor:`, `style:`, `test:`, `docs:`
|
||
- Формат: `<type>: <subject>` (первая строка до 72 символов)
|
||
- После пустой строки - подробное описание изменений
|
||
|
||
2. **Язык коммитов**
|
||
- Все коммиты на **английском языке**
|
||
- Подробное описание изменений в теле коммита
|
||
- Перечисляй все измененные файлы и ключевые изменения
|
||
|
||
3. **Примеры правильных коммитов**
|
||
```
|
||
feat: add setting to control category products button visibility
|
||
|
||
- Add show_category_products_button field to StoreDTO
|
||
- Update SettingsSerializerService to support new field
|
||
- Add setting in admin panel on 'Store' tab with toggle
|
||
- Pass setting to SPA through SettingsHandler
|
||
- Button displays only for categories with child categories
|
||
- Add default value true to configuration
|
||
```
|
||
|
||
### Запрещено
|
||
|
||
- Хардкод значений (используй конфиги/настройки)
|
||
- Игнорирование обработки ошибок
|
||
- Создание циклических зависимостей
|
||
|
||
Для разработки FrontEnd используй:
|
||
|
||
- Vue.js 3 (Composition API)
|
||
- Старайся избегать функций watch там, где это возможно и где можно сделать более красиво.
|
||
- Для frontend/admin используй Tailwind 4 с префиксом `tw:`.
|
||
- Для frontend/spa используй Tailwind 4 без префикса.
|
||
- Для frontend/admin используй иконки от FontAwesome 4, потому что это уже встроено в ECommerce 3.
|
||
- Для frontend/admin используй компоненты VuePrime 4.
|
||
- Для frontend/spa используй Daisy UI.
|
||
- Чтобы получить название стандартной таблицы ECommerce, используй хелпер `db_table`, либо добавляй константу DB_PREFIX перед названием таблицы. Так ты получишь название таблицы с префиксом.
|
||
- Все таблицы моего модуля AcmeShop начинаются с префикса `acmeshop_`. Примеры миграций лежат в `module/oc_telegram_shop/upload/oc_telegram_shop/database/migrations`
|