Заметки LLM-энтузиаста
516 subscribers
140 photos
17 videos
1 file
172 links
Дмитрий Жечков @djdim
архитектор в Yandex Cloud,
ex. VMware NSX specialist, ex. Cisco SE

Здесь пишу свои заметки по LLM (большим языковым моделям) и AI-разработке.

Это личное мнение и не отражает официальную позицию компании, в которой я работаю.
Download Telegram
#cursor #project #rules

Что случилось?
В версии Cursor 0.4.5 появилась одна интересная функциональность Project Rules
Теперь не обязательно при обращении к Cursor каждый раз ссылаться через @ на предварительно написанные специфичные правила (в notebook/md-файлах).

Cursor может в зависимости от фолдера/файла, с которым работает при решении поставленной вами задачи, автоматически взять дополнительный контекст из нужных rules-файлов. Что очень круто!

Можно сказать, что Cursor предоставляет гибкую систему правил (rules) с настройками для конкретных папок.
Правила проекта хранятся в директории .cursor/rules и управляют поведением "AI-программиста" в различных частях вашего проекта.

Ключевые особенности:
- Семантические описания: Правила могут внутри себя иметь пояснения, когда они применяются.
- Выбор файлов/папок: для выбора области действия правил (файлов/папок) можно использовать regexp-шаблоны.
- Автоматическое прикрепление: Правила автоматически включаются при использовании соответствующих файлов.
- Folder-specific: Можно применять разные правила (rules) к разным частям проекта.

Ниже пример использования Project Rules в проекте, который использует Next.js и Python (FastAPI):

- `.cursor/rules/`
- `nextjs-pages.mdc`
- `nextjs-components.mdc`
- `nextjs-api.mdc`
- `fastapi-routes.mdc`
- `fastapi-models.mdc`
- `fastapi-schemas.mdc`
- `testing.mdc`
- `documentation.mdc`


# .cursor/rules/fastapi.mdc
Description: FastAPI route rules Globs: backend/**/*.py
# Routing Standards
- Use Pydantic models
- Add appropriate OpenAPI documentation
- Use dependency injection

Frontend Rules (Next.js):
Next.js Pages: Use functional components, PascalCase for component names, TypeScript types, and place pages in app/ or pages/.
React Components: Use React Hooks, define Props types, follow component reuse, and use styled-components or tailwind for styling.
Next.js API: Follow RESTful principles, standardize error handling, validate requests, and use uniform API response formats.
Backend Rules (FastAPI):
FastAPI Routes: Use Pydantic models, version routes, add OpenAPI docs, and use dependency injection.
Data Models: Use SQLAlchemy models, define table relationships, include field validation, and document methods.
Pydantic Schemas: Use BaseModel, define request/response models, add field validation, and include example data.
Common Rules:
Testing: Use Jest for frontend, Pytest for backend, maintain coverage, and follow unit test naming conventions.


Польза от использования Project Rules:
- Одинаковый стиль написания кода
- Учет best practices по написанию кода
- Улучшенное качество кода за счет специфичности промптов
- Более быстрая разработка
1👍1🔥1